Obliczenia Naturalne - Strategie ewolucyjne

Podobne dokumenty
Strategie ewolucyjne (ang. evolu4on strategies)

Metody Rozmyte i Algorytmy Ewolucyjne

Algorytmy genetyczne

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

Algorytm genetyczny (genetic algorithm)-

OBLICZENIA EWOLUCYJNE

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

Strategie ewolucyjne (ang. evolution strategies)

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

Algorytmy ewolucyjne. wprowadzenie

SZTUCZNA INTELIGENCJA

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

Algorytmy ewolucyjne NAZEWNICTWO

Algorytmy genetyczne w optymalizacji

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

Algorytmy genetyczne

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

OBLICZENIA EWOLUCYJNE

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

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Obliczenia ewolucyjne - plan wykładu

WAE Jarosław Arabas Adaptacja i samoczynna adaptacja parametrów AE Algorytm CMA-ES

Generowanie i optymalizacja harmonogramu za pomoca

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

METODY HEURYSTYCZNE wykład 3

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

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

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

Algorytmy ewolucyjne `

Obliczenia Naturalne - Algorytmy genetyczne

Programowanie genetyczne

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

METODY HEURYSTYCZNE wykład 3

ALGORYTMY GENETYCZNE ćwiczenia

Dobór parametrów algorytmu ewolucyjnego

Algorytmy ewolucyjne 1

Algorytmy genetyczne

Aproksymacja funkcji a regresja symboliczna

Równoważność algorytmów optymalizacji

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Algorytmy genetyczne

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

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

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

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

Algorytmy genetyczne (AG)

ALHE Z11 Jarosław Arabas wykład 11

Algorytmy ewolucyjne (3)

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

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

Wstęp do Sztucznej Inteligencji

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

Techniki optymalizacji

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Programowanie genetyczne, gra SNAKE

6. Klasyczny algorytm genetyczny. 1

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

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

Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania

Optymalizacja. Wybrane algorytmy

Obliczenia Naturalne - Algorytmy genetyczne

Algorytmy ewolucyjne

CMAES. Zapis algorytmu. Generacja populacji oraz selekcja Populacja q i (t) w kroku t generowana jest w następujący sposób:

Algorytmy ewolucyjne (2)

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Automatyczny dobór parametrów algorytmu genetycznego

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

przetworzonego sygnału

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Wykład 6. Drzewa poszukiwań binarnych (BST)

0-0000, , , itd

Poprawność semantyczna

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Metody przeszukiwania

Spacery losowe generowanie realizacji procesu losowego

Prawdopodobieństwo i statystyka

SZTUCZNA INTELIGENCJA

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

Obliczenia inspirowane Naturą

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

Metody Kompilacji Wykład 3

SZTUCZNA INTELIGENCJA

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

ROZWÓJ ALGORYTMU EWOLUCJI RÓŻNICOWEJ. Konrad Wypchło

Algorytm indukcji klasyfikatora za pomocą EA z automatycznym przełączaniem ukierunkowań

Standardowy algorytm genetyczny

Programowanie genetyczne - gra SNAKE

Matematyczne Podstawy Informatyki

Algorytmy ewolucyjne

Przepustowość kanału, odczytywanie wiadomości z kanału, poprawa wydajności kanału.

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

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

Wykład 6 Centralne Twierdzenie Graniczne. Rozkłady wielowymiarowe

5. Algorytm genetyczny przykład zastosowania

Transkrypt:

Literatura Historia Obliczenia Naturalne - Paweł Paduch Politechnika Świętokrzyska 3 kwietnia 2014 Paweł Paduch Obliczenia Naturalne - 1 z 44

Plan wykładu Literatura Historia 1 Literatura Historia 2 Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se 3 Początki Algorytm Określanie wartości rang Operatory mutacji 4 Historia Kodowanie drzewiaste Mutacja Krzyżowanie Paweł Paduch Obliczenia Naturalne - 2 z 44

Literatura Literatura Historia Mariusz Flasiński - do sztucznej inteligencji, PWN, 2011 Jarosław Arabas - Wykłady z algorytmów ewolucyjnych, WNT, 2001 David Edward Goldberg - Algorytmy genetyczne i ich zastosowania, WNT, 2009 Zbigniew Michalewicz - Algorytmy genetyczne+struktury danych=programy ewolucyjne, WNT, 2003 T. D. Gwiazda - Algorytmy Genetyczne - kompendium, Tom 1 i 2, PWN, 2007 H.P. Schwefel - A Survey of Evolution Strategies, University of Dortmund, http://rain.ifmo.ru/ buzdalov/lab-2011/books/es-survey.pdf Paweł Paduch Obliczenia Naturalne - 3 z 44

Historia Literatura Historia Po raz pierwszy zastosowano strategie ewolucyjne w 1963 roku przez dwóch studentów Politechniki Berlińskiej Ingo Rechenberga i Hans-Paula Schwefela. Brali oni udział w badaniach nad poszukiwaniem optymalnych kształtów ciał w przepływach. Pierwsze strategie można uznać za programy ewolucyjne używające reprezentacji zmiennopozycyjnej oraz mutacją (zwaną perturbacją) jako jedynym operatorem. Paweł Paduch Obliczenia Naturalne - 4 z 44

Podobieństwa Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se tylko trochę podobne są do algorytmów genetycznych: Zarówno SE jak i AG opierają się na populacji potencjalnych rozwiązań. W obu wykorzystuje się selekcję opierającą się na przeżyciu bardziej przystosowanych osobników. Paweł Paduch Obliczenia Naturalne - 5 z 44

Różnice Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se SE używają wektorów zmiennopozycyjnych, AG wektorów binarnych. SE procedura selekcji jest deterministyczna a AG probabilistyczna. SE stosuje odwrotną kolejność selekcji i rekombinacji, selekcja jest po rekombinacji. Parametry reprodukcji (prawdopodobieństwo krzyżowania i mutacji) zwykle są stałe w SE parametry są samodostrajalne Paweł Paduch Obliczenia Naturalne - 6 z 44

Strategia Ewolucyjna (1+1)-SE Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Mechanizm adaptacji zasięgu mutacji - reguła 1/5 sukcesów Przetwarzany jest tylko jeden chromosom bazowy X t W każdym kroku generowany jest nowy chromosom Y t, będący wynikiem mutacji X t Potomek jest porównywany z rodzicem i do następnego pokolenia przechodzi ten o lepszym przystosowaniu. Algorytm 1 Strategia 1+1 1: procedure SE 1 + 1 2: t 0 3: inicjalizacja X 0 4: ocena X 0 5: while (warunek stopu niespełniony) do 6: Y t mutacja X t 7: ocena Y t 8: if (f (Y t ) > f (X t )) then 9: X t+1 Y t 10: else 11: X t+1 X t 12: end if 13: t t + 1 14: end while 15: end procedure Paweł Paduch Obliczenia Naturalne - 7 z 44

Strategia Ewolucyjna (1+1)-SE Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se W strategii (1+1) kluczową rolę w działaniu odgrywa sposób mutacji. Dodajemy losową (rozkładem normalnym) modyfikację do każdego genu chromosomu X t Y t = X t + N(0, σ) Gdzie N(0, σ) jest wektorem liczb wylosowanych z rozkładu normalnego o wartości oczekiwanej 0 i odchyleniach standardowych podanych wektorem σ. Losowanie jest wykonywane niezależnie dla każdej wartości. Funkcja gęstości rozkładu prawdopodobieństwa normalnego 0.3 0.2 0.1 σ = 1 σ = 1.5 σ = 3 4 2 2 4 Paweł Paduch Obliczenia Naturalne - 8 z 44

Twierdzenie o zbieżności Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Jeżeli σ nie zmienia się w procesie ewolucyjnym a składniki jego są jednakowe (σ = (σ, σ,..., σ)), to można udowodnić poniższe twierdzenie: Dla σ > 0 i regularnego zadania optymalizacji z f opt > (przy minimalizacji) lub f opt < (przy maksymalizacji) zachodzi: { } p lim f t (xt ) = f opt = 1 Czyli globalne optimum zostanie na pewno znalezione, jeżeli będziemy przeszukiwać odpowiednio długo. Niestety nie wiemy nic o szybkości zbieżności (ilorazu odległości przebytej w kierunku optimum i liczby pokoleń, przy której uzyskano tę odległość). Paweł Paduch Obliczenia Naturalne - 9 z 44

Reguła 1/5 sukcesów Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se W celu zoptymalizowania szybkości zbieżności Rechenberg zaproponował regułę 1/5 sukcesu. Stosunek ϕ udanych mutacji do wszystkich mutacji powinien wynosić 1/5. Jeżeli ϕ jest większe od 1/5, to zwiększ wariancję operatora mutacji, w odwrotnym przypadku zmniejsz ją. c d σ t, dla ϕ(k) < 1/5, σ t+1 = c i σ t, dla ϕ(k) > 1/5, σ t, dla p s (k) = 1/5 ϕ(k) - współczynnik sukcesów operatora mutacji w poprzednich k pokoleniach, c i > 1, c d < 1 współczynniki wzrostu lub zmniejszania wariacji mutacji. Schwefel eksperymentalnie dobrał c d = 0, 82, c i = 1/c d = 1, 22. Paweł Paduch Obliczenia Naturalne - 10 z 44

Strategia (1+λ)-SE Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Jest to strategia będąca modyfikacją (1+1)-SE. Jeden rodzic tworzy λ potomków. Paweł Paduch Obliczenia Naturalne - 11 z 44

Strategia (µ+1)-se Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Jest to SE wieloelementowa w której: Pokolenie składające się z µ osobników, tworzy jednego potomka. Z pokolenia µ + 1 osobników usuwa się najsłabszego Wszystkie osobniki w populacji mają te same prawdopodobieństwa łączenia się w pary Wprowadzono możliwość rekombinacji (w dziedzinie AG zwanego jednorodnym krzyżowaniem) - omówione dalej. Odchylenie standardowe σ oraz mutacja pozostają bez zmian. Paweł Paduch Obliczenia Naturalne - 12 z 44

Strategia Ewolucyjna (µ + λ)-se Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Jest nie tylko uogólnieniem strategii (µ+1)-se, ale wprowadza nowe elementy. Oprócz krzyżowania wprowadzono mechanizm samoregulacji parametru σ zastępując regułę 1/5. Parametr σ jest teraz elementem osobnika i także podlega ewolucji. Algorytm 2 Strategia (µ + λ)-se 1: procedure (µ + λ)-se 2: t 0 3: inicjalizacja P t 4: ocena P t 5: while (warunek stopu niespełniony) do 6: T t reprodukcja P t 7: O t krzyżowanie i mutacja T t 8: ocena O t 9: P t+1 µ najlepszych z P t O t 10: t t + 1 11: end while 12: end procedure Paweł Paduch Obliczenia Naturalne - 13 z 44

Rekombinacja dyskretna Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Przy operatorze rekombinacji dyskretnej dwoje losowo wybranych rodziców (x 1, σ 1 ) = ((x 1 1,..., x 1 n), (σ 1 1,..., σ 1 n)) tworzą potomka (x 2, σ 2 ) = ((x 2 1,..., x 2 n), (σ 2 1,..., σ 2 n)) (x, σ) = ((x q 1 qn 1,..., x n ), (σ q 1 1,..., σqn n )) gdzie q i = 1 lub q i = 2 z jednakowym prawdopodobieństwem dla wszystkich i = 1,..., n Paweł Paduch Obliczenia Naturalne - 14 z 44

Rekombinacja przez uśrednienie Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Przy operatorze rekombinacji przez uśrednienie dwoje losowo wybranych rodziców tworzą potomka (x, σ) = (x 1, σ 1 ) = ((x 1 1,..., x 1 n), (σ 1 1,..., σ 1 n)) (x 2, σ 2 ) = ((x 2 1,..., x 2 n), (σ 2 1,..., σ 2 n)) (( x 1 1 + x 2 1 2,..., x 1 n + x 2 n 2 ), ( σ 1 1 + σ 2 1 2,..., σ1 n + σ 2 n 2 )) Czyli wybieramy wektory będące średnią wektorów σ 1 i σ 2 oraz x 1 i x 2. Paweł Paduch Obliczenia Naturalne - 15 z 44

Rekombinacja przez uśrednienie Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Uogólniona metoda rekombinacji przez uśrednianie dla dwoje losowo wybranych rodziców uwzględnia losowy współczynnik a = ξ U(0,1) wylosowany z rozkładu jednostajnego. Potomkowie powstają z sumowania części rodziców. x 1 = ax 1 + (1 a)x 2 x 2 = ax 2 + (1 a)x 1 σ 1 = aσ 1 + (1 a)σ 2 σ 2 = aσ 2 + (1 a)σ 1 W AG takie krzyżowanie nazywa się gwarantowanym średnim krzyżowaniem zaś w SE natychmiastowym krzyżowaniem Paweł Paduch Obliczenia Naturalne - 16 z 44

Mutacja Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se Na nowo otrzymanym potomku (x, σ) stosujemy mutację i powstaje (x, σ ) gdzie: σ = σ e N(0, σ) x = x + N(0, σ ) gdzie σ jest parametrem metody. Paweł Paduch Obliczenia Naturalne - 17 z 44

Mutacja Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se W celu poprawienia szybkości zbieżności SE Schwefel wprowadził dodatkowy parametr sterujący Θ, związany ze skorelowaniem mutacji. Teraz jeden osobnik jest reprezentowany przez 3 wektory: (x, σ, Θ) Rekombinacja jest podobna do już omawianej, mutacja tworzy potomka (x, σ, Θ ) gdzie: σ = σ e N(0, σ) Θ = Θ + N(0, Θ) x = x + C(0, σ, Θ ) Gdzie Θ jest dodatkowym parametrem metody, a C(o, σ, Θ ) oznacza wektor niezależnych losowych liczb gaussowskich z zerową średnią. Paweł Paduch Obliczenia Naturalne - 18 z 44

Strategia (µ, λ)-se Strategia (1+1)-SE Strategia (µ+1)-se Strategia (µ + λ)-se Strategia (µ, λ)-se W strategii (µ + λ)-se osobnik o wyróżniającej się wartości funkcji przystosowania ale ze złym parametrem σ mógł zalegać zbyt długo. Modyfikacja w strategii (µ, λ)-se polega na tym, że nowa populacja tworzona jest wyłącznie z λ osobników potomnych populacji O t, a więc stare pokolenie jest usuwane. Algorytm 3 Strategia (µ, λ)-se 1: procedure (µ, λ)-se 2: t 0 3: inicjalizacja P t 4: ocena P t 5: while (warunek stopu niespełniony) do 6: T t reprodukcja P t 7: O t krzyżowanie i mutacja T t 8: ocena O t 9: P t+1 µ najlepszych z O t 10: t t + 1 11: end while 12: end procedure Paweł Paduch Obliczenia Naturalne - 19 z 44

Różnice Początki Algorytm Określanie wartości rang Operatory mutacji Różnica pomiędzy AG i SE a programowaniem genetycznym jest taka, że w tych pierwszych punkty poszukiwania przestrzeni rozwiązań odpowiadają osobnikom populacji. W programowaniu ewolucyjnym osobniki pochodzą jakby z osobnych gatunków, stad stosowanie operatora krzyżowania jest bezsensowne (nie krzyżujemy różnych gatunków). Paweł Paduch Obliczenia Naturalne - 20 z 44

Początki Początki Algorytm Określanie wartości rang Operatory mutacji Lawrence Fogel w 1966 opracował pierwsze metody programowania ewolucyjnego do rozwoju sztucznej inteligencji. Rozważał problem odkrywania gramatyki nieznanego języka. Zestaw jego symboli i przykłady wyrażeń syntaktycznie poprawnych były znane. Gramatyka była modelowana za pomocą automatu skończonego. Zbiór stanów, funkcja przejść i funkcja wyjść były przedmiotem poszukiwań. Liczba prawidłowych klasyfikacji (poprawnych syntaktycznie) wyrażeń poznawanego języka była funkcją przystosowania osobnika (automatu). Paweł Paduch Obliczenia Naturalne - 21 z 44

Automat skończony Początki Algorytm Określanie wartości rang Operatory mutacji 0/a Stany to węzły Krawędzie to przejścia Przy przejściach podane są dwa symbole x/y gdzie: x symbol wejściowy wprowadzany do automatu y symbol wyjściowy wygenerowany przez automat 1 0/a 4 0/b 1/a 2 0/a 1/b 1/a 3 1/a Paweł Paduch Obliczenia Naturalne - 22 z 44

Ewolucja Automatu Początki Algorytm Określanie wartości rang Operatory mutacji Automat podlega ewolucji polegającej jedynie na mutacji. Fogel rozważał 5 rodzajów mutacji: dodanie stanu, usunięcie stanu, zmiana stanu początkowego, zmiana funkcji wyjść, zmiana funkcji przejść. Pomimo obiecujących wyników prac programowanie ewolucyjne w pierwotnej formie nie stało się zbyt popularne aż do... następnego pokolenia. Paweł Paduch Obliczenia Naturalne - 23 z 44

Nowe podejście Początki Algorytm Określanie wartości rang Operatory mutacji Ponad 20 lat później, syn Fogela, David rozwinął programowanie ewolucyjne dzięki pewnym zmianom upodabniając PE do strategii ewolucyjnych. zmiana dziedziny zastosowań - optymalizacja numeryczna wprowadzenie reprezentacji rzeczywistoliczbowej dostosowanie do niej operatora mutacji wzbogacenie genotypu osobnika o chromosom, zawierający wektor σ standardowych odchyleń wprowadzenie mechanizmu modyfikacji zasięgu σ. zamiana selekcji rankingowej na selekcje turniejową Paweł Paduch Obliczenia Naturalne - 24 z 44

Algorytm Początki Algorytm Określanie wartości rang Operatory mutacji Algorytm 4 1: procedure Programowanie Ewolucyjne 2: t 0 3: inicjalizacja P t 4: ocena P t 5: while (warunek stopu niespełniony) do 6: O t 0 7: for all (X P t ) do 8: Y mutacja X 9: O t O t {Y} 10: end for 11: ocena O t 12: for all (X P t O t ) do 13: wyznacz r(x) 14: end for 15: P t+1 wybór najlepszych z O t P t 16: t t + 1 17: end while 18: end procedure Paweł Paduch Obliczenia Naturalne - 25 z 44

Algorytm Początki Algorytm Określanie wartości rang Operatory mutacji Każdy osobnik tworzy jednego potomka Każdy potomek jest poddawany mutacji Obliczana jest wartość przystosowania nowych osobników Tworzona jest nowa populacja bazowa dla każdego osobnika (z obu populacji) określana jest ranga wybieramy do nowej populacji te z najwyższą rangą Paweł Paduch Obliczenia Naturalne - 26 z 44

Określanie wartości rang Początki Algorytm Określanie wartości rang Operatory mutacji Dla każdego osobnika X losujemy q osobników o populacji Q (P t O t \ {X}) Ranga osobnika r(x) jest równa liczbie osobników z Q o przystosowaniu mniejszym od niego. r(x) = {Y Q f (X) > f (Y)} Osobniki o największej wartości przystosowania w P t O t z definicji mają rangę równą q Paweł Paduch Obliczenia Naturalne - 27 z 44

Brak adaptacji Początki Algorytm Określanie wartości rang Operatory mutacji Mutacja polega na dodaniu do genotypu osobnika wartości zmiennej losowej o wielowymiarowym nieskorelowanym rozkładzie normalnym X i = X i + σ i ξ N(0,1),i gdzie współczynniki σ i są parametrami algorytmu dla każdego genu z osobna lub σ i = σ dla każdego i. Paweł Paduch Obliczenia Naturalne - 28 z 44

Początki Algorytm Określanie wartości rang Operatory mutacji Adaptacja przez śledzenie wartości funkcji przystosowania Uzależniamy stopień mutacji osobnika od wartości funkcji przystosowania. Nowy gen jest tworzony w następujący sposób: X i = X i + β(f max f (X)) + γ ξ N(0,1),i β jest współczynnikiem szybkości zmian, γ jest parametrem ograniczającym od dołu wartość wariancji zmiennej losowej wykorzystywanej podczas mutacji, f max jest oszacowaniem wartości funkcji przystosowania w maksimum globalnym. Im osobnik bardziej zbliża się do szacowanej wartości maksimum globalnego tym stopień jego mutacji jest mniejszy. Paweł Paduch Obliczenia Naturalne - 29 z 44

Samoczynna adaptacja zasięgu Początki Algorytm Określanie wartości rang Operatory mutacji Samoczynna adaptacja wartości odchyleń standardowych σ jest podobna do tej w strategiach ewolucyjnych. Wartości σ i zapisane są w osobniku i też podlegają ewolucji. Modyfikujemy wartości genów odpowiadających przystosowaniu osobnika Następnie wartości odchyleń: σ i = X i = X i + σ i ξ N(0,1),1 ( ) min σmin 2, (σ2 i + ζξ N(0,1),i ) ζ jest współczynnikiem sterującym intensywnością zmian σ i. Paweł Paduch Obliczenia Naturalne - 30 z 44

Historia Historia Kodowanie drzewiaste Mutacja Krzyżowanie powstało jako szczególna odmiana algorytmów genetycznych o mocno rozwiniętych strukturach danych. Chciano by kody programów same się generowały gdy znane były kryteria oceny prawidłowości działania. Używano języka LISP, w którym program i dane reprezentowane są w postaci drzewa. Kodowanie binarne zastąpiono drzewiastym. W węzłach znajdują się symbole pewnego alfabetu lub wartości liczbowe ciągłe jak i dyskretne, a także, stałe, zmienne i funkcje. Paweł Paduch Obliczenia Naturalne - 31 z 44

Kodowanie drzewiaste Historia Kodowanie drzewiaste Mutacja Krzyżowanie Chromosom jest w formie drzewa składającego się z węzłów z zapisaną informacją i krawędzi opisujących wzajemne relacje. Jeżeli krawędź jest skierowana od węzła A do B to A jest nadrzędnym, zaś B podrzędnym. Liście drzewa to węzły terminalne reszta to węzły pośrednie. Węzeł bez nadrzędnego to korzeń drzewa. W węzłach terminalnych znajdują się elementy atomiczne - o niepodzielnej strukturze wewnętrznej. Paweł Paduch Obliczenia Naturalne - 32 z 44

Kodowanie drzewiaste Historia Kodowanie drzewiaste Mutacja Krzyżowanie Węzły atomiczne zawierają, stałe, zmienne lub funkcje bezparametrowe Węzły pośrednie to odpowiedniki funkcji lub operatorów przyjmujących jeden lub więcej argumentów i zwracających dokładnie jedną wartość. Argumenty mogą pochodzić jako wartości z węzłów terminalnych albo z innych funkcji. Paweł Paduch Obliczenia Naturalne - 33 z 44

Przykład Historia Kodowanie drzewiaste Mutacja Krzyżowanie (defun pierwiastki (a b c) setq ( (setq (delta -( *(b b) *(4 * (a c))))) (if<(delta 0) (setq n 0) ) (if=(delta 0) delta - ( (setq n 1) (setq x1 ( /(-b)(* (2 a)))) ) ) * (if>(delta 0) ( (setq n0) (setq x1 (x /((-( -b sqrt(delta) )(* (2 a)))))) (setq x2 (x /((+( -b sqrt(delta) )(* (2 a)))))) ) ) b b ) ) * 4 * a c Paweł Paduch Obliczenia Naturalne - 34 z 44

Mutacje Historia Kodowanie drzewiaste Mutacja Krzyżowanie Drzewa mogą podlegać mutacjom np: zmiana zawartości węzła terminalnego, zamiana węzła terminalnego na pośredni z losowo wygenerowanym poddrzewem, zamiana węzła pośredniego na terminalny, zamiana węzeł pośredni ze swoim poddrzewem na inny z losowo wygenerowanym poddrzewem, reorganizacja poddrzew węzła pośredniego. Drzewa mogą się rozrastać, zmniejszać lub zmieniać kształt. Paweł Paduch Obliczenia Naturalne - 35 z 44

Mutacja 1 Historia Kodowanie drzewiaste Mutacja Krzyżowanie + + x y x 25 zmiana zawartości węzła terminalnego Paweł Paduch Obliczenia Naturalne - 36 z 44

Mutacja 2 Historia Kodowanie drzewiaste Mutacja Krzyżowanie * * x y x + y x Zamiana węzła terminalnego na korzeń losowego poddrzewa Paweł Paduch Obliczenia Naturalne - 37 z 44

Mutacja 3 Historia Kodowanie drzewiaste Mutacja Krzyżowanie + + x * x 4 y 22 Zamiana korzenia poddrzewa na węzeł terminalny Paweł Paduch Obliczenia Naturalne - 38 z 44

Mutacja 4 Historia Kodowanie drzewiaste Mutacja Krzyżowanie * * x + x cos y x / x 4 Zmiana poddrzewa na inne Paweł Paduch Obliczenia Naturalne - 39 z 44

Mutacja 5 Historia Kodowanie drzewiaste Mutacja Krzyżowanie / / sin cos cos sin y / / y x 4 x 4 Reorganizacja poddrzew Paweł Paduch Obliczenia Naturalne - 40 z 44

Krzyżowanie Historia Kodowanie drzewiaste Mutacja Krzyżowanie / / + + - * a b - - 2 a b a Krzyżowanie struktur drzewiastych polega na losowym wybraniu po jednym węźle u każdego z 2 rodziców... Paweł Paduch Obliczenia Naturalne - 41 z 44

Krzyżowanie Historia Kodowanie drzewiaste Mutacja Krzyżowanie / / + - + * a b - - 2 a a b... oraz zamienieniu miejscami tych węzłów wraz całymi poddrzewami tak jak widać to na rysunku powyżej. Paweł Paduch Obliczenia Naturalne - 42 z 44

Pytania Historia Kodowanie drzewiaste Mutacja Krzyżowanie? Paweł Paduch Obliczenia Naturalne - 43 z 44

koniec Historia Kodowanie drzewiaste Mutacja Krzyżowanie Dziękuję Państwu za uwagę. Paweł Paduch Obliczenia Naturalne - 44 z 44