Algorytmy ewolucyjne - algorytmy genetyczne. I. Karcz-Dulęba

Podobne dokumenty
Algorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia stacjonarne i niestacjonarne

ALGORYTMY GENETYCZNE ćwiczenia

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

6. Klasyczny algorytm genetyczny. 1

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Algorytm genetyczny (genetic algorithm)-

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

Obliczenia ewolucyjne - plan wykładu

Algorytmy genetyczne

Algorytmy ewolucyjne NAZEWNICTWO

Algorytmy genetyczne w optymalizacji

Algorytmy genetyczne. Paweł Cieśla. 8 stycznia 2009

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA HISTORIA NA CZYM BAZUJĄ AG

Inspiracje soft computing. Soft computing. Terminy genetyczne i ich odpowiedniki w algorytmach genetycznych. Elementarny algorytm genetyczny

SZTUCZNA INTELIGENCJA

Równoważność algorytmów optymalizacji

BIOCYBERNETYKA ALGORYTMY GENETYCZNE I METODY EWOLUCYJNE. Adrian Horzyk. Akademia Górniczo-Hutnicza

Algorytmy ewolucyjne. Łukasz Przybyłek Studenckie Koło Naukowe BRAINS

ALHE Z11 Jarosław Arabas wykład 11

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytmy genetyczne. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

LABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania i mutacji na skuteczność poszukiwań AE

ALGORYTMY GENETYCZNE

Algorytmy genetyczne

Algorytmy genetyczne (AG)

Standardowy algorytm genetyczny

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

METODY HEURYSTYCZNE wykład 3

Algorytmy genetyczne

Metody Rozmyte i Algorytmy Ewolucyjne

Algorytmy ewolucyjne 1

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

METODY HEURYSTYCZNE wykład 3

Generowanie i optymalizacja harmonogramu za pomoca

Algorytmy ewolucyjne. wprowadzenie

LABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność poszukiwań AE

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Algorytmy genetyczne służą głównie do tego, żeby rozwiązywać zadania optymalizacji

Algorytmy genetyczne

Strategie ewolucyjne (ang. evolu4on strategies)

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Algorytmy genetyczne Michał Bereta Paweł Jarosz (część teoretyczna)

Wstęp do Sztucznej Inteligencji

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Obliczenia Naturalne - Algorytmy genetyczne

Techniki optymalizacji

Systemy Inteligentnego Przetwarzania wykład 4: algorytmy genetyczne, logika rozmyta

LABORATORIUM 5: Wpływ reprodukcji na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek

Metody przeszukiwania

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Fizyka w symulacji komputerowej i modelowaniu komputerowym Metody Monte Carlo Algorytmy Genetyczne. Łukasz Pepłowski

SZTUCZNA INTELIGENCJA

ALGORYTMY GENETYCZNE I EWOLUCYJNE

Techniki ewolucyjne - algorytm genetyczny i nie tylko

ALGORYTMY EWOLUCYJNE. INTELIGENTNE TECHNIKI KOMPUTEROWE wykład 011. Napór selekcyjny (selektywny nacisk. Superosobniki: SELEKCJA

Optymalizacja parametryczna (punkt kartezjańskim jest niewypukła).

Program "FLiNN-GA" wersja 2.10.β

Automatyczny dobór parametrów algorytmu genetycznego

Problemy optymalizacyjne Dana jest przestrzeń X. Znaleźć x X taki, że x spełnia określone warunki. Dana jest przestrzeń X i funkcja celu f: X R.

Algorytmy ewolucyjne `

Strategie ewolucyjne. Gnypowicz Damian Staniszczak Łukasz Woźniak Marek

Programowanie genetyczne, gra SNAKE

Zaawansowane programowanie

METODY HEURYSTYCZNE 3

5. Algorytm genetyczny przykład zastosowania

Teoria algorytmów ewolucyjnych

Rok akademicki: 2013/2014 Kod: JIS AD-s Punkty ECTS: 4. Kierunek: Informatyka Stosowana Specjalność: Modelowanie i analiza danych

ALGORYTMY EWOLUCYJNE W ZASTOSOWANIU DO ROZWIĄZYWANIA WYBRANYCH ZADAŃ OPTYMALIZACJI1

Zadania laboratoryjne i projektowe - wersja β

LICZEBNOŚĆ POPULACJI OBLICZENIA EWOLUCYJNE. wykład 3. Istotny parametr AG...

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

przetworzonego sygnału

OBLICZENIA EWOLUCYJNE

INTELIGENCJA OBLICZENIOWA. dr Katarzyna Grzesiak-Kopeć

Obliczenia Naturalne - Strategie ewolucyjne

ZARZĄDZANIE POPULACJAMI ZWIERZĄT

1. Analiza asocjacyjna. Cechy ciągłe. Cechy binarne. Analiza sprzężeń. Runs of homozygosity. Signatures of selection

Anna Gryko-Nikitin Politechnika Białostocka, Wydział Zarządzania, Katedra Informatyki Gospodarczej i Logistyki

6. Algorytm genetyczny przykłady zastosowań.

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Dobór parametrów algorytmu ewolucyjnego

Wykorzystanie algorytmu genetycznego do generowania twarzy ludzkiej

ZASTOSOWANIE ALGORYTMU GENETYCZNEGO DO WYZNACZANIA OPTYMALNYCH DECYZJI STERUJĄCYCH

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory

LABORATORIUM 2: Wpływ wielkości populacji i liczby pokoleń na skuteczność poszukiwań AE. opracował: dr inż. Witold Beluch

OPTYMALIZACJA KSZTAŁTU WYKRESU WÖHLERA Z WYKORZYSTANIEM ALGORYTMÓW EWOLUCYJNYCH W UJĘCIU DIAGNOSTYCZNYM

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2009, Oeconomica 275 (57), 53 58

Algorytmy ewolucyjne (2)

ALGORYTMY DECYZYJNE I TEORIA ZŁOŻONOŚCI

OBLICZENIA EWOLUCYJNE

Optymalizacja. Wybrane algorytmy

1 Genetykapopulacyjna

OBLICZENIA EWOLUCYJNE

OBLICZENIA EWOLUCYJNE

GENETYKA POPULACJI. Ćwiczenia 1 Biologia I MGR /

Obliczenia Naturalne - Algorytmy genetyczne

Selekcja cech. Wprowadzenie Metody selekcji cech. Przykład zastosowania. Miary niepodobieństwa. Algorytmy przeszukiwania

Transkrypt:

Algorytmy ewolucyjne - algorytmy genetyczne I. Karcz-Dulęba

Algorytmy klasyczne a algorytmy ewolucyjne Przeszukiwanie przestrzeni przez jeden punkt bazowy Przeszukiwanie przestrzeni przez zbiór punktów bazowych Kolejne rozwiązania generowane w oparciu o wyliczanie pewnych charakterystyk funkcji celu np. gradientu Kolejne rozwiązania generowane w oparciu o wykorzystanie mechanizmów analogicznych do reprodukcji biologicznej

Terminologia Osobnik rozwiązanie, punkt bazowy Chromosom łańcuch cech (genów) osobnika Gen - pojedynczy element chromosomu Allel wartość genu (0,1) Locus pozycja (miejsce) genu w chromosomie) Genotyp zespół genów danego organizmu warunkujących dziedziczenie (w GA chromosom) Fenotyp zbiór cech organizmu uwarunkowany przez genotyp i środowisko, służący do wyliczania przystosowania osobnika Przystosowanie wartość liczbowa określająca jakość osobnika, wyliczana na podstawie nieujemnej funkcji przystosowania (celu) Populacja - zbiór punktów bazowych, osobników Selekcja (selection), krzyżowanie (crossover), mutacja (mutation) operacje genetyczne

Algorytm genetyczny (klasyczny - SGA) Osobniki opisywane przez binarnie kodowane chromosomy o stałej długości Geny przyjmują wartości 0 lub 1 Selekcja proporcjonalna Krzyżowanie jednopunktowe Mutacja bitowa

Algorytm genetyczny 1. Populacja początkowa 2. Ocena przystosowania 3. Selekcja proporcjonalna 4. Krzyżowanie jednopunktowe 5. Mutacja procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); } }

Dane początkowe Zadanie optymalizacyjne: znaleźć maksimum danej funkcji przystosowania np. f(x)=10x 2 -x, x Є [0,10] Parametry: rozmiar populacji m, długość łańcucha binarnego (chromosomu) l, Warunek zatrzymania algorytmu (np. liczba generacji lg) Prawdopodobieństwo krzyżowania p c Prawdopodobieństwo mutacji p m

Algorytm genetyczny 1. Populacja początkowa 2. Ocena przystosowania 3. Selekcja proporcjonalna 4. Krzyżowanie jednopunktowe 5. Mutacja procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); } }

Populacja początkowa Osobnik x zakodowany w postaci ciągu binarnego o długości l x i =0110011101 (l=10) Populacja m-elementowa P 0 ={x 0 1, x 0 2,, x 0 m} Losowa populacja początkowa (macierz [m, l], randint) 0110011101 1011010100 1100001001

Algorytm genetyczny 1. Populacja początkowa 2. Ocena przystosowania 3. Selekcja proporcjonalna 4. Krzyżowanie jednopunktowe 5. Mutacja procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); } }

Ocena przystosowania Ocena osobników na podstawie fenotypów wymaga zdekodowania binarnego chromosomu do przestrzeni fenotypów Zadanie wstępne: znaleźć osobnika o największej liczbie jedynek w łańcuchu 0110011101 f(x)=6 1011010100 f(x)=5 1100001001 f(x)=4

Algorytm genetyczny 1. Populacja początkowa 2. Ocena przystosowania 3. Selekcja proporcjonalna 4. Krzyżowanie jednopunktowe 5. Mutacja procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); } }

Selekcja proporcjonalna (ruletkowa) Wybór rodzica zależny od jego jakości, zgodnie z prawdopodobieństwem: f ( xi ) p( xi ) m f ( x ) j 1 Wykonanie m losowań ruletką, na której kole przydzielono sektory proporcjonalne do wartości przystosowanie j

Koło ruletki 100000010010 f(x 1 )=3 r=25% 011001100110 f(x 2 )=6 r=50% 100001000000 f(x 3 )=2 r=16.6% 000000100000 f(x 4 )=1 r=8.4%

Metoda odwrotnej dystrybuanty p( x) { p( x ), p( x2 ),..., p( x 1 m Budujemy funkcję odwrotnej dystrybuanty zliczając sumy cząstkowe z wektora i fp( xi ) p( xk ), i 1,..., m k 1 Znajdujemy numer osobnika, dla którego: )} 1 fp(x 3 ) fp(x 2 ) rand p(x 2 ) p(x 3 ) p(x 4 ) fp(x i ) >= rand rand liczba losowa z przedziału [0,1] Wybrany osobnik zostawi potomka w kolejnej generacji fp(x 1 ) p(x 1 )

Algorytm genetyczny 1. Populacja początkowa 2. Ocena przystosowania 3. Selekcja proporcjonalna 4. Krzyżowanie jednopunktowe 5. Mutacja procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); } }

Krzyżowanie jednopunktowe Losowe kojarzenie w pary osobników wybranych w procesie selekcji Krzyżowanie z wybranym prawdopodobieństwem p c Losowo wybierany punkt krzyżowania k Wymiana odpowiednich części łańcucha pomiędzy rodzicami k=4, 0110 011101 -> 0110010100 1011 010100 -> 1011011101

Algorytm genetyczny 1. Populacja początkowa 2. Ocena przystosowania 3. Selekcja proporcjonalna 4. Krzyżowanie jednopunktowe 5. Mutacja procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); } }

Mutacja Losowa zmiana wartości genu (0 <>1) Mutacja z wybranym prawdopodobieństwem p m, które zwykle jest znacznie mniejsze niż prawdopodobieństwo krzyżowania p c k=5, 0110011101 -> 0110111101

Kryterium zatrzymania Osiągniecie optimum! Ograniczenia zasobów CPU: maksymalna liczba wyliczeń funkcji przystosowania Ograniczenie na cierpliwość użytkownika: po kilku (kilkunastu, kilkudziesięciu) generacjach bez poprawy

Inne uwagi Wykorzystywać możliwości Matlaba, szczególnie do pracy z macierzami i wektorami Program główny + podprogramy Zwięzłość kodu inicjalizacja 1 linijka mutacja 1 linijka

Algorytm genetyczny

Literatura D. Goldberg, Algorytmy Genetyczne w zastosowaniach, WNT, W-wa,1995 Z. Michalewicz, Algorytmy genetyczne+ struktury danych =programy ewolucyjne, WNT, W-wa, 1996 J. Arabas, Wykłady z algorytmów ewolucyjnych, WNT, W-wa, 2001

Algorytm genetyczny - program Parametry: rozmiar populacji - m długość łańcucha binarnego - l warunek zatrzymania algorytmu lg 1. Losowa populacja początkowa - macierz [m, l], randint 2. Ocena przystosowania - znaleźć osobnika o największej liczbie jedynek w łańcuchu 3. Selekcja proporcjonalna metoda odwrotnej dystrybuanty 4. Krzyżowanie jednopunktowe 5. Mutacja jednobitowa procedure GA; { t = 0; initialize population P(t); until (done) { t = t + 1; parent_selection P(t); recombine P(t) mutate P(t); }}