PSI/LS/z3
From WikiZMSI
Spis treści |
Algorytmy ewolucyjne
Podczas zajęć laboratoryjnych należy wykorzystać program demonstrujący zastosowanie algorytmu genetycznego (ewolucyjny z kodowaniem binarnym) do optymalizacji funkcji dwóch zmiennych. Funkcje wykorzystane w programie należą do funkcji testowych dla algorytmów optymalizacyjnych. Listę takich funkcji można znaleźć na stronie Go test problem. Program należy uruchomić w Matlabie.
Przygotowanie (opis) programu
Pliki źródłowe należy pobrać w postaci spakowanego archiwum ESIN_gademo.zip
Cały program demonstracyjny składa się z kilku plików:
- demo.m: główny moduł programu; zawiera opis GUI.
- gademo.m: funkcja przygotowująca dane i uruchamiająca AG.
- genealg.m: algorytm genetyczny.
- fitness.m: obliczenie funkcji przystosowania.
- tselect.m: selekcja metodą turnieju.
- xover.m: krzyżowania (jednopunktowe, dwupunktowe, jednorodne).
- mutate.m: mutacja.
- decodeb.m: dekodowanie wartości chromosomu: przejście z genotypu na fenotyp.
- graph.m: tworzenie wykresów funkcji.
Program należy uruchomić wywołując w linii komend Matlaba moduł główny demo (pamiętając o zmianie katalogu bieżącego na ten zawierający pliki źródłowe).
Zadania do wykonania - obserwacja zmian zachowania algorytmu w zależności od różnych parametrów
Każde z zadań ma na celu ustalenie wybieranych arbitralnie parametrów. Jeżeli z badań wynikać będzie, iż lepsze są inne niż domyślne wartości należy je zmieniać w kolejnych badaniach.
Parametr | Zakres zmian |
---|---|
Funkcja przystosowania | Każda dostępna z listy funkcja. Uruchamianie z ustawieniami programu standardowymi. |
Długość chromosomu | mała: 2 bity; duża: 20 bitów |
Rozmiar populacji | średni: 10 osobników; duży: 100 osobników |
Liczba generacji | mała: 100; duża: 10000 |
Prawdopodobieństwo mutacji | małe: 0,001; duże: 0.5 |
Prawdopodobieństwo krzyżowania | małe: 0,1; duże: 1 |
Typ krzyżowania | Każdy dostępny z listy |
Elitaryzm | Wyłączony / Włączony |
Zadanie domowe
Do następnych zajęć należy wykonać sprawozdanie na określony dla grupy temat, który jest zadany poniżej. Sprawozdanie ma:
- zawierać ustawienia parametrów algorytmu
- dla każdej ustawionej wartości parametru badanego trzeba uruchomić algorytm kilkukrotnie; uśrednione wyniki z kilku uruchomień stanowią dopiero wymierny wskaźnik zachowania algorytmu
- zawierać jeden lub dwa wykresy/tabele wykonane samodzielnie prezentujące wyniki badań, które autor uzna za istotne do zaprezentowania (zrzuty ekranów nie są punktowane)
- zawierać wnioski z przeprowadzonych badań.
Sprawozdanie w postaci elektronicznej należy przesłać na adres prowadzącego w nieprzekraczalnym terminie dwóch tygodni od zajęć laboratoryjnych, na których temat był omawiany. Format wiadomości i pliku:
- Tytuł wiadomości: Sprawozdanie PSI nr 1.
- Sprawozdanie przesłać w formacie .pdf.
- Nazwa pliku: nazwisko_imie.pdf
Tematy sprawozdań:
Grupa | Zadanie |
---|---|
31A | Badanie wpływu rozmiaru populacji połączonego z elitaryzmem. Należy przebadać różne rozmiary populacji przy włączonym i wyłączonym elitaryzmie. Przebadać na funkcjach Rosenbrock, Schwefel i Easom. |
31B | Badanie wpływu prawdopodobieństwa mutacji i rozmiaru populacji. Należy przebadać różne rozmiary populacji z różnymi wartościami mutacji. Przebadać na funkcjach Rosenbrock, Schwefel i Easom. |
Zagadnienia na wejściówkę:
- działanie (kroki) algorytmu genetycznego
- kodowanie parametrów zadania (binarne, rzeczywiste, itp)
- przystosowanie chromosomu, funkcja (skąd pochodzi jej wzór?)
- selekcja co to jest i na czym polega selekcja turniejowa
- co to jest elitaryzm w algorytmach ewolucyjnych
- krzyżowanie
- jednopunktowe
- wielopunktowe
- jednorodne (ang. uniform)
- mutacja