ESI 14 - Instytut Sterowania i Systemów Informatycznych

Transkrypt

ESI 14 - Instytut Sterowania i Systemów Informatycznych
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 odcinkowego. 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 dla , 3,3
1
1
10 10
5
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:
d l a , 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
czterowymiarowej funkcji opisanej równaniem:
znalezienia
maksimum
globalnego
( 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