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

Podobne dokumenty
SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

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

ALGORYTMY GENETYCZNE ćwiczenia

Algorytmy genetyczne w optymalizacji

METODY HEURYSTYCZNE wykład 3

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

6. Klasyczny algorytm genetyczny. 1

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

METODY HEURYSTYCZNE wykład 3

Algorytmy genetyczne

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

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

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

Algorytm genetyczny (genetic algorithm)-

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

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

Obliczenia ewolucyjne - plan wykładu

Metody Rozmyte i Algorytmy Ewolucyjne

Algorytmy ewolucyjne NAZEWNICTWO

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Algorytmy genetyczne

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

Algorytmy genetyczne

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

Algorytmy genetyczne

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

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Standardowy algorytm genetyczny

Algorytmy ewolucyjne. wprowadzenie

Dobór parametrów algorytmu ewolucyjnego

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

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

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Równoważność algorytmów optymalizacji

Kodowanie informacji. Kody liczbowe

Algorytmy genetyczne (AG)

METODY HEURYSTYCZNE 3

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Techniki ewolucyjne - algorytm genetyczny i nie tylko

ALHE Z11 Jarosław Arabas wykład 11

SZTUCZNA INTELIGENCJA

Testy De Jonga. Problemy. 1 Optymalizacja dyskretna i ciągła

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

Algorytmy genetyczne w interpolacji wielomianowej

Temat 7. Dekodery, enkodery

ALGORYTMY GENETYCZNE

Techniki optymalizacji

Algorytmy ewolucyjne 1

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Algorytmy genetyczne jako metoda wyszukiwania wzorców. Seminarium Metod Inteligencji Obliczeniowej Warszawa 26 X 2005 mgr inż.

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

Automatyczny dobór parametrów algorytmu genetycznego

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

SZTUCZNA INTELIGENCJA

ALGORYTMY GENETYCZNE I EWOLUCYJNE

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Algorytmy ewolucyjne Część II

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

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

przetworzonego sygnału

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

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

Program "FLiNN-GA" wersja 2.10.β

Zadania laboratoryjne i projektowe - wersja β

Programowanie genetyczne, gra SNAKE

OBLICZENIA EWOLUCYJNE

Obliczenia Naturalne - Algorytmy genetyczne

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

Kompresja danych DKDA (7)

Algorytmy genetyczne i wielomiany w zagadnieniu interpolacji

Algorytmy ewolucyjne `

Podstawy Informatyki

Teoria algorytmów ewolucyjnych

Wstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym

Pracownia Komputerowa wykład V

Generowanie i optymalizacja harmonogramu za pomoca

Metody przeszukiwania

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

Teoretyczne Podstawy Informatyki

Strategie ewolucyjne (ang. evolution strategies)

Wstęp do Sztucznej Inteligencji

Algorytmy ewolucyjne (2)

Technologie Informacyjne

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

OBLICZENIA EWOLUCYJNE

Arytmetyka binarna - wykład 6

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

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

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9,

5. Algorytm genetyczny przykład zastosowania

Obliczenia Naturalne - Algorytmy genetyczne

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Transkrypt:

PLAN WYKŁADU Operator krzyżowania Operator mutacji Operator inwersji Sukcesja Przykłady symulacji AG Kodowanie - rodzaje OPTYMALIZACJA GLOBALNA Wykład 3 dr inż. Agnieszka Bołtuć OPERATOR KRZYŻOWANIA Wymiana materiału genetycznego między dwoma osobnikami, Postaje dwóch nowych potomków, którzy zastępują rodziców, ETAPY KRZYŻOWANIA Wybór par chromosomów z puli rodzicielskiej w sposób losowy z prawdopodobieństwem krzyżowania p c (najczęściej z przedziału 0.5..), jeśli p c =0.5 to 50% osobników ulegnie krzyżowaniu, PRZED PO Losowanie punktu (lub punktów) krzyżowania jako liczby z przedziału..l-, gdzie L - to liczba genów, 00000 0000 00 000 Utworzenie potomków poprzez wymianę części genów,

ETAPY KRZYŻOWANIA - IMPLEMENTACJA Zakładamy p c, Dla każdego chromosomu losujemy liczbę r z przedziału <0,>, krzyżowaniu ulegają tylko te osobniki dla których r<p c, Jeśli zostaje nam nieparzysta liczba osobników, to jednego odrzucamy lub losowo dodajemy, Łączymy losowo w pary i wymieniamy geny względem losowo wybranego punktu krzyżowania. RODZAJE KRZYŻOWANIA Rodzice 0000000 0000 Jednopunktowe (3 gen) 00000 000000 Dwupunktowe (3,6 gen) 000000 00000 Wielopunktowe (3,6,9 gen) 000000 00000 RODZAJE KRZYŻOWANIA Równomierne gdy odbywa się zgodnie z wylosowanym wzorcem, wzorzec decyduje które geny potomek posiada od pierwszego z rodziców a które od drugiego, wzorzec 000000 0 z rodzica, z 2 rodzica, 0000 000000000 OPERATOR MUTACJI Mniej istotna rola w AG, wykazywano, że częstość mutacji potrzebna do uzyskania dobrych wyników to :000 kopiowanych bitów, Zapobiega odrzuceniu potencjalnie dobrego materiału (pozwala wyjść z minimów lokalnych), Dokonuje zmiany wartości genu na przeciwną (lub losowo wybraną) zgodnie z prawdopodobieństwem mutacji p m (z przedziału 0..0.), Implementacja: dla każdego genu losowana jest liczba r z przedziału <0,> i mutowane są te geny dla których r<p m. 2

OPERATOR INWERSJI Kolejna technika (obok krzyżowania i mutacji) mająca na celu wprowadzenie rozróżnień między rodzicami a następnym pokoleniem, Działa przeciwko wstrzymującemu przeszukiwanie brakowi różnorodności, Polega najczęściej na przecięciu chromosomu w dwóch losowo wybranych miejscach, odwrócenie kolejności genów pomiędzy wybranymi genami, ponowne połączenie ciągu bitowego, 000000 000000 SUKCESJA Tworzenie nowej populacji bazowej dla której powtarzany jest cały cykl algorytmu genetycznego, Najczęściej stosowaną i jednocześnie najbardziej trywialną metodą jest tzw. metoda klasyczna, w której nową populację bazową tworzą wyłącznie osobniki wchodzące w skład populacji uzyskanej w wyniku działania operatorów genetycznych. Nazywana jest sukcesją z całkowitym zastępowaniem. SUKCESJA - RODZAJE Inną metodą sukcesji jest tzw. metoda z częściową wymianą (zastępowaniem). W metodzie tej nową populację bazową tworzą osobniki z populacji potomnej, jak i ze starej populacji bazowej. Można założyć, że nowa populacja bazowa będzie się składać z rn osobników znajdujących się w populacji potomnej, gdzie r jest współczynnikiem wymiany i przyjmuje wartości 0 < r <. Część osobników starej populacji bazowej należy więc usunąć, aby zrobić miejsce dla potomstwa. SUKCESJA - RODZAJE Warianty mechanizmu usuwania osobników: usuwanie najgorzej przystosowanych osobników sukcesja elitarna, usuwanie osobników najbardziej podobnych" do potomnych - metoda ze ściskiem (miarą podobieństwa może być np. odległość chromosomów), aby populacja była różnorodna, usuwanie losowo wybranych osobników. 3

SUKCESJA - CECHY Sukcesja z częściowym zastępowaniem prowadzi do stabilniejszej pracy algorytmu ewolucyjnego, szybszej zbieżności, jednakże może nieco zwiększyć tendencję do osiadania w maksimach lokalnych funkcji przystosowania. Najczęściej stosowanym przypadkiem szczególnym jest sukcesja elitarna, nieco mniej popularna jest metoda ze ściskiem. Usuwanie losowo wybranych osobników jest bardzo rzadko stosowane, Wadą sukcesji klasycznej jest to, że nowa populacja bazowa może zawierać osobniki gorsze niż populacja bieżąca (której najlepsze osobniki mogą zostać wyeliminowane w wyniku działania operatorów genetycznych). SUKCESJA ELITARNA Zachowywane są najlepsze chromosomy, przynajmniej jeden najlepszy, Przechodzą one bez zmian do nowej populacji. Wady: popadanie w maksima lokalne, można zapobiec zwiększając zasięg mutacji, skala osiadania w minimach jest zależna od wielkości elity, Zalety: nie gubi się najcenniejszych osobników, poprawa zbieżności. PRZYKŁAD SYMULACJI NR WG. MICHALEWICZA f ( x) xsin( 0 x).0 Poszukujemy x z przedziału <-,2> maksymalizującego funkcję f(x). Reprezentacja dokładność rozwiązania 6 miejsc po przecinku dla przedziału zmiennośći<-,2> chromosom musi mieć 22 bity np. 0000000000 0.63797 x=.85 f(x)=2.85 Parametry rozmiar populacji =50 prawdopodobieństwo krzyżowania, p c =0.25 prawdopodobieństwo mutacji, p m =0.0 źródło: Z. Michalewicz 4

Wyniki obliczeń (50 pokolenie) Pokolenie Funkcja przystosowania.44942 6 2.250003 8 2.250283 9 2.250284 0 2.250363 2 2.328077 39 2.34425 40 2.345087 5 2.738930 99 2.849246 37 2.85027 45 2.850227 v max = 000000000000 x max =.850773 f(x max ) = 2.850227297 PRZYKŁAD SYMULACJI NR 2 WG. MICHALEWICZA Maksymalizujemy funkcję f ( x, y) 2.5 xsin( 4 x) y sin( 20 y) przy ograniczeniach 3 4. x y 2. 5.8 źródło: Z. Michalewicz Parametry rozmiar populacji =20 prawdopodobieństwo krzyżowania, p c =0.25 prawdopodobieństwo mutacji, p m =0.0 Reprezentacja dokładność rozwiązania 4 miejsca po przecinku dla przedziału zmiennośći<-3,2.> chromosom musi mieć 8 bitów dla przedziału zmiennośći<4.,5.8> chromosom musi mieć 5 bitów łącznie 33 bity Populacja początkowa przykładowe osobniki v=00000000000000 v2=00000000000000000 najgorszy v5=000000000000 najlepszy f(v)=f(6.084492,5.652242)=26.09600 f(v2)=f(0.348434,4.380264)=7.58005 f(v5)=f(.089025,5.05455)=30.060205 całkowite dopasowanie populacji= 387.776822 5

Populacja po selekcji v,v4,v7,v,v9,v4,v5,v5,v,v3,v5,v9,v6,v8,v20, v,v0,v3,v5,v6 Osobniki do krzyżowania v2,v, v3,v8 poz=9 poz=20 Mutacja 33*20=660 czyli średnio 6.6 bita ulegnie mutacji Mutacji uległo 5 bitów: 3 bit w 4 chromosomie, 9 bit w chromosomie, 22 i 33 bit w 3 chromosomie, 8 bit w 9 chromosomie Wyniki po iteracji całkowite dopasowanie populacji=447.049688 najlepszy osobnik v=000000000000000 f(v)=f(.08862,4.743434)=33.35874 Wyniki po 000 iteracji całkowite dopasowanie populacji=524.22254 najlepszy osobnik v=000000000000000000000 f(v)=f(9.623693,4.42788)=35.477938 RODZAJE KODOWANIA ROZWIĄZAŃ Binarne Kod Graya Logarytmiczne Rzeczywiste Całkowitoliczbowe KOD GRAY A Naturalny kod binarny Kod Gray a 000 000 00 00 00 0 0 00 00 0 0 0 0 00 Charakteryzuje się tym, że dwa kolejne słowa kodowe różnią się tylko stanem jednego bitu. 6

KOD GRAY A Rozszerzanie kodu Graya o bit przeprowadza się wg następującego algorytmu: dopisujemy te same słowa kodowe, ale w odwrotnej kolejności (odbicie lustrzane), do początkowych wyrazów dopisujemy bit o wartości zero, natomiast do odbitych lustrzanie bit o wartości. KOD GRAY A Przykład generacji kodu Gray a (dla dwóch bitów) kod -bitowy 0 odbicie lustrzane 0 0 dopisanie zer i jedynek 00 0 0 2 0 3 KOD GRAY A Przykład generacji kodu Gray a (dla trzech bitów) kod -bitowy 00 0 0 odbicie lustrzane 00 0 0 0 0 00 dopisanie zer i jedynek 000 0 00 0 2 00 3 0 4 5 0 6 00 7 PRZEKSZTAŁCENIE BIN -> GRAY Liczbę naturalną binarną przesuwamy o bit w prawo i uzupełniamy 0, Dokonujemy operacji XOR na wejściowym i przesuniętym ciągu, 0 0 0 0 0 0 XOR 7 3 0 00 0 00 0 7

PRZEKSZTAŁCENIE GRAY -> BIN przyjmujemy pierwszą (najbardziej znaczącą) cyfrę kodu naturalnego równą pierwszej cyfrze kodu Graya, każdą kolejną cyfrę oblicz jako różnicę symetryczną (XOR) odpowiedniej cyfry kodu Graya i poprzednio wyznaczonej cyfry kodu naturalnego. 7 3 00 0 0 KODOWANIE LOGARYTMICZNE Stosowane w celu zmniejszenia długości chromosomu, do problemów z wieloma parametrami, o dużych przestrzeniach poszukiwań, [ bin] ( ) e ( ) [ bin] 0 [bin] 0 - wartość dziesiętna zakodowanego ciągu KODOWANIE LOGARYTMICZNE ( [00]= ( ) e ( [000]= ( ) e 0 ) [0] 0 0 ) [00] 0 e e 2 6 0.002478 7.389 KODOWANIE RZECZYWISTE chromosom kodowany jest jako wektor o tej samej długości co wektor rozwiązań, geny są liczbami rzeczywistymi z danej dziedziny, Za pomocą 5 bitów można zakodować wartości od -e 7 do e 7 (~-096 do ~096) w wielowymiarowych zadaniach wymagających dużej dokładności długość chromosomu może być bardzo duża, co może powodować słabe działanie algorytmu genetycznego. 8

ZALETY KODOWANIE RZECZYWISTEGO kodowanie rzeczywiste jest bardziej naturalne w przypadku większości rozwiązywanych problemów, przy kodowaniu rzeczywistym można osiągnąć bardziej dokładne wyniki niż przy kodowaniu binarnym, zastosowanie kodowania rzeczywistego pozwala objąć duże i/lub nieznane dziedziny poszukiwań, przy kodowaniu rzeczywistym łatwiej jest uwzględnić nietrywialne ograniczenia niż przy kodowaniu binarnym. WYKŁAD PRZYGOTOWANO NA PODSTAWIE J. Arabas Wykłady z algorytmów ewolucyjnych, WNT, 200. Z. Michalewicz Algorytmy genetyczne + struktury danych = programy ewolucyjne, WNT, 992. D. E. Goldberg Algorytmy genetyczne i ich zastosowania, WNT, 998. 9