Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i
Telekomunikacji
Instytut Sterowania i Systemów Informatycznych
ELEMENTY SZTUCZNEJ INTELIGENCJI Semestr letni 2010
Laboratorium nr 14
WSTĘP DO ALGORYTMÓW GENETYCZNYCH
Prowadzący: ………..
Cele ćwiczeń:
1. Poznanie zasady działania algorytmów genetycznych
1. Zapoznać się z przybornikiem Matlaba OptimTool. Przybornik zawiera szereg funkcji umożliwiających implementację komputerową algorytmu genetycznego.
2. Przebieg ćwiczenia
2.1. Kodowanie i dekodowanie
Zapisać liczbę dziesiętną —5.645 w zapisie dwójkowym z dokładnością eps = 5*10-4. Przeanalizować tryb postępowania zapisany w pliku ZAD1A.m. Dokonać operacji odwrotnej (plik ZAD1B.m), otrzymaną liczbę w zapisie dwójkowym przekonwertować na liczbę dziesiętną. Czy otrzymana w ten sposób liczba jest równa -5.645. Co powoduje rozbieżność wyników?
2.2. Przebadać mechanizmy selekcji prostej i turniejowej. W badaniach wykorzystać plik ZAD2.m. Jak wpływa liczba uczestników turnieju na działanie selekcji turniejowej?
2.3. Przebadać mechanizmy krzyżowania jednopunktowego, wielopunktowego i od- cinkowego. Symulacje przeprowadzić wykorzystując plik ZAD3.m. Porównując chromosomy osobników przed krzyżowaniem i po krzyżowaniu, określić miejsca cięcia chromosomów. Czy operacja krzyżowania jest przeprowadzana zawsze?
2.4. Przebadać mechanizmy mutacji punktowej i mutacji wymiennej. Czym się różnią te operacje. Jak wpływa parametr prawdopodobieństwo mutacji na proces mutacji?
Wykorzystać plik ZAD4.m.
2.5. Wykorzystując plik ZAD5.m sprawdzić działanie operatora inwersji. Czym ta operacja różni się od operacji mutacji? Użyć pliku ZAD5.m
2.6. Implementacja algorytmu genetycznego
2.6.1. Znaleźć maksimum globalne funkcji opisanej następującym równaniem:
3 1 10 1
5 1
3 10 dla , 3,3
Funkcja posiada maksimum globalne o wartości ymax = 18.106. Do obliczeń wykorzystać plik 0BLICZ1 .m. Sprawdzić wpływ następujących wartości parametrów algorytmu na jego efektywność:
• liczebność populacji: 10, 50, 100, 500
• prawdopodobieństwo krzyżowania: 0.1, 0.4, 0.6, 0.8
• prawdopodobieństwo mutacji: 0.01, 0.05, 0.1, 0.5
• dokładność obliczeń: 0.1, 0.01, 0.001
2.6.2. Znaleźć maksimum globalne funkcji opisanej następującym równaniem:
dla , 5.12, 5.12
Funkcja posiada maksimum globalne o wartości ymax = 10. Do obliczeń wykorzystać plik 0BLICZ2.m
2.6.3. Znaleźć maksimum globalne funkcji opisanej następującym równaniem:
21.5 "#$4& "#$20& dla 3, 12.1, 4.1, 5.8
Jaką wartość przyjmuje funkcja w maksimum globalnym? Do obliczeń wykorzystać plik 0BLICZ3.m
2.6.4. Zastosować algorytm genetyczny do znalezienia maksimum globalnego czterowymiarowej funkcji opisanej równaniem:
( 800 dla , , ( 5.12, 5.12
Funkcja posiada maksimum globalne o wartości ymax = 800. Napisać odpowiedni program wykorzystując pakiet OptimTool.
3. Sprawozdanie powinno zawierać wyniki przeprowadzonych eksperymentów w postaci tabel i wykresów oraz wnioski i spostrzeżenia z ćwiczenia.
Literatura:
Goldberg, D.E., „Algorytmy genetyczne i ich zastosowania”. WNT 2003