Algorytmy genetyczne i memetyczne Strategie ewolucyjne

Podobne dokumenty
Wstęp do Sztucznej Inteligencji

Strategie ewolucyjne (ang. evolution strategies)

Strategie ewolucyjne (ang. evolu4on strategies)

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Metody Rozmyte i Algorytmy Ewolucyjne

Równoważność algorytmów optymalizacji

Dobór parametrów algorytmu ewolucyjnego

Algorytmy ewolucyjne NAZEWNICTWO

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

Algorytm genetyczny (genetic algorithm)-

Algorytmy genetyczne (AG)

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

Algorytmy ewolucyjne `

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

SZTUCZNA INTELIGENCJA

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

ALHE Z11 Jarosław Arabas wykład 11

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

Algorytmy genetyczne w optymalizacji

Algorytmy ewolucyjne

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Algorytmy genetyczne

Standardowy algorytm genetyczny

Techniki optymalizacji

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

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Algorytmy ewolucyjne (2)

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

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

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

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

Algorytmy ewolucyjne 1

Algorytmy genetyczne

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Algorytm memetyczny w grach wielokryterialnych z odroczoną preferencją celów. Adam Żychowski

Obliczenia ewolucyjne - plan wykładu

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

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

Algorytmy ewolucyjne Część II

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Stochastyczne dynamiki z opóźnieniami czasowymi w grach ewolucyjnych

Algorytmy metaheurystyczne podsumowanie

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

Algorytmy ewolucyjne

Generowanie i optymalizacja harmonogramu za pomoca

Optymalizacja. Wybrane algorytmy

Programowanie genetyczne, gra SNAKE

Automatyczny dobór parametrów algorytmu genetycznego

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

ALHE Jarosław Arabas Metaheurystyki w Rn Ewolucja różnicowa EDA CMAES Rój cząstek

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

STATYSTYKA MATEMATYCZNA

Stochastyczna dynamika z opóźnieniem czasowym w grach ewolucyjnych oraz modelach ekspresji i regulacji genów

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

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

Spis treści 3 SPIS TREŚCI

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

6. Klasyczny algorytm genetyczny. 1

Wybrane podstawowe rodzaje algorytmów

Algorytmy genetyczne

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

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

GRA Przykład. 1) Zbiór graczy. 2) Zbiór strategii. 3) Wypłaty. n = 2 myśliwych. I= {1,,n} S = {polować na jelenia, gonić zająca} S = {1,,m} 10 utils

Tablica Wzorów Rachunek Prawdopodobieństwa i Statystyki

METODY HEURYSTYCZNE wykład 3

Analiza składowych głównych. Wprowadzenie

Algorytmy genetyczne

Prawdopodobieństwo i statystyka

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

zadania z rachunku prawdopodobieństwa zapożyczone z egzaminów aktuarialnych

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

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

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Optymalizacja. Przeszukiwanie lokalne

Zestaw 2: Zmienne losowe. 0, x < 1, 2, 2 x, 1 1 x, 1 x, F 9 (x) =

ALGORYTMY GENETYCZNE ćwiczenia

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

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

ALGORYTMY GENETYCZNE

Spis treści Wstęp Estymacja Testowanie. Efekty losowe. Bogumiła Koprowska, Elżbieta Kukla

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

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

Statystyka i eksploracja danych

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

CECHY ILOŚCIOWE PARAMETRY GENETYCZNE

REGRESJA LINIOWA Z UOGÓLNIONĄ MACIERZĄ KOWARIANCJI SKŁADNIKA LOSOWEGO. Aleksander Nosarzewski Ekonometria bayesowska, prowadzący: dr Andrzej Torój

Ważne rozkłady i twierdzenia c.d.

Testowanie hipotez statystycznych

Wykład 1 Próba i populacja. Estymacja parametrów z wykorzystaniem metody bootstrap

Algorytmy ewolucyjne optymalizacji wielokryterialnej sterowane preferencjami decydenta

Weryfikacja hipotez statystycznych

Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

Własności eksploatacyjne i eksploracyjne algorytmów ewolucyjnych z mutacja. α stabilna. Andrzej Obuchowicz i Przemysław Prętki

Algorytmy ewolucyjne. wprowadzenie

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.

Tomasz Pawlak. Zastosowania Metod Inteligencji Obliczeniowej

Metody przeszukiwania

Transkrypt:

Wykład 8 Algorytmy genetyczne i memetyczne Strategie ewolucyjne Kazimierz Grygiel Page 1 of 25

Geneza algorytmów genetycznych Koncepcja teoretyczna: John H. Holland (ur. 1929) Professor of psychology Professor of computer science and engineering (University of Michigan at Ann Arbor) External professor, Santa Fe Institute Page 2 of 25 Idea planów reprodukcyjnych (Adaptation in Natural and Artificial Systems, 1975)

Geneza algorytmów genetycznych Pierwsze wdrożenia i zastosowania praktyczne Kenneth A. De Jong Professor of Computer Science, George Mason University, Fairfax, Virginia (An Analysis of the Behavior of a Class of Genetic Adaptive Systems, 1975) David E. Goldberg Professor of of General Engineering, University of Illinois at Urbana- Champaign (Genetic Algorithms in Search, Optimization and Machine Learning, 1989) Page 3 of 25

Prosty algorytm genetyczny (SGA) Inaczej: kanoniczny algorytm genetyczny (CGA) Cechy charakterystyczne: reprezentacja: kodowanie genetyczne (chromosom zerojedynkowy) wielkość populacji: stała selekcja wstępna: proporcjonalna rekombinacja: krzyżowanie proste (mechanizm podstawowy), w wersji 2 2 lub 2 1 mutacja: Bernoulliego (mechanizm wtórny) wymiana pokoleń: pełna warunek zatrzymania: limit liczby pokoleń Szczegółowy opis: D.E. Goldberg, Algorytmy genetyczne i ich zastosowania Page 4 of 25

Implementacja SGA (opis) Parametry: N: wielkość populacji maxiter: limit liczby pokoleń pc: prawdopodobieństwo krzyżowania pm: punktowe prawdopodobieństwo mutacji Struktury danych: P[1..N]: populacja bieżąca, Q[1..N]: populacja potomna Operatory i funkcje: select (P, x): operator selekcji jednokrotnej (proporcjonalnej) cross1 (x, y, z), cross2 (x, y, z): operatory krzyżowania prostego mutate (pm, x): operator mutacji Bernoulliego z prawd. pm flip (p): funkcja symulująca próbę losową (p: prawd. sukcesu) Page 5 of 25

Implementacja SGA (2 2) główna pętla for iter := 1 to maxiter do begin for i := 1 to N div 2 do begin select(p, x); select(p, y); if flip(pc) then begin cross1(x, y, z1); cross2(x, y, z2) end else begin z1 := x; z2 := y end; mutate(pm, z1); mutate(pm, z2); Q[2*i-1] := z1; Q[2*i] := z2; end; P := Q end; Page 6 of 25

Wariant stacjonarny (2 1) główna pętla // replace (P, x): operator selekcji końcowej // (wybiera kandydata do usunięcia z populacji P // i decyduje, czy go zastąpić elementem x) for iter := 1 to maxiter do begin if flip(pc) then begin select(p, x); select(p, y); cross1(x, y, z) end else select(p, z); mutate(pm, z); replace(p, z); end; Page 7 of 25

Udoskonalenia, techniki eksperymentalne Mieszanie pokoleń: w jednym pokoleniu wymienia się K N osobników Kryteria selekcji negatywnej: najgorszy wskaźnik dostosowania (typowe) puste kryterium (losowa pozycja w populacji) największe podobieństwo (min. odległość Hamminga) Elitaryzm: zachowanie podpopulacji najlepszych osobników (gwarancja przeżycia najlepiej dostosowanych) Metody niszowe (utrzymywanie różnorodności, formowanie gatunków ) funkcja współudziału (Goldberg, Richardson) bariery reprodukcyjne (kojarzenie wg linii, kojarzenie krewniacze, wzorce kojarzeniowe) Model diploidalny, dominacja i maskowanie alleli Page 8 of 25

Automatyczne tworzenie nisz Page 9 of 25

Analiza modelu Założenia: populacja 100 graczy, każdy może zagrać raz w jednej rundzie ; początkowo nie wiadomo, które ramię zapewnia większą wygraną Wersja bez podziału wygranej: indywidualna średnia wygrana dla lewego/prawego ramienia: $25/$75 zachowanie: ostatecznie wszyscy ustawią się w jednej kolejce (do prawego ramienia) Wersja z podziałem wygranej: łączna średnia wygrana dla lewego/prawego ramienia: $25/$75 zachowanie: ostatecznie 25 graczy ustawi się w kolejce do lewego ramienia, a 75 w kolejce do prawego ramienia (każdy wygrywa średnio $1 na rundę) Page 10 of 25

Metoda współudziału Miara podobieństwa osobników x, y: odległość d(x, y) w przestrzeni genotypów/fenotypów Funkcja współudziału s : R R (malejąca) Przykład: s(d) = 1 d d max (liniowa funkcja współudziału) Zmodyfikowana funkcja oceny (dla selekcji wstępnej) Jak to działa? f(x i ) = f(x i ) N j=1 s(d(x i, x j )) Osobniki w bliskim sąsiedztwie x i wnoszą duży wkład do mianownika; w dalekim mały Im więcej osobników podobnych, tym gorsze ich wskaźniki dostosowania Mogą tworzyć się stabilne gatunki osobników, związane z różnymi maksimami funkcji dostosowania Page 11 of 25

Optymalizacja wielokryterialna Problem wielu sprzecznych kryteriów (np. koszt produkcji vs. wypadkowość) Każdemu kryterium odpowiada pewna funkcja oceny f i : S R, którą chcemy zminimalizować Porządek częściowy w S: x < y ( i)(f i (x) f i (y)) ( i)(f i (x) < f i (y)) Rozwiązania niezdominowane: minimalne wg tego porządku Cel optymalizacji: wyznaczenie zbioru rozwiązań niezdominowanych (frontu Pareto); ostateczny wybór rozwiązania należy do decydenta Zastosowanie algorytmów genetycznych: VEGA (Schaffer); istotny problem - zachowanie różnorodności populacji; pomocne metody niszowe Page 12 of 25

Algorytmy memetyczne (hybrydowe) Mem (R. Dawkins): hipotetyczna jednostka naśladownictwa (przekazu kulturowego) Memy propagują się przeskakując z mózgu do mózgu Nie podlegają ograniczeniom ewolucji biologicznej (darwinowskiej): memy nabyte w okresie życia osobniczego mogą być bezpośrednio przekazywane potomstwu Pewne podobieństwo do ewolucji lamarkowskiej (dziedziczenie cech nabytych) Efekt: znacznie szybsze tempo ewolucji Idea: połączenie algorytmu genetycznego z heurystyką lokalnej optymalizacji (hybrydyzacja); lokalna optymalizacja rozumiana jako uczenie się osobników Termin ukuty przez P. Moscato; wcześniej: hybrydowe algorytmy genetyczne Page 13 of 25

Ogólna charakterystyka Krok ewolucyjny obejmuje: fazę interakcji osobników (współzawodnictwo / kooperacja) ( selekcja / rekombinacja) fazę naprawy / ulepszania osobników ( lokalna optymalizacja) Algorytm lokalnej optymalizacji może wykorzystywać wiedzę o problemie (specjalizacja) zastępuje lub uzupełnia mechanizm mutacji Interakcja może uwzględniać rozmieszczenie geograficzne osobników ( lokalne podpopulacje) Implementacje hierarchiczne i współbieżne Znacząca przewaga pod względem skuteczności w stosunku do zwykłych algorytmów genetycznych Przykłady: CCA, SAGA, ASPARAGOS, GLS Page 14 of 25

Przykład: CCA CCA: Competitive-Cooperative Approach (P. Moscato, M. Norman) Zadanie: problem komiwojażera Populacja 16-elementowa, rozmieszczona na okręgu Operatory: lokalnej optymalizacji (algorytm Metropolisa z operacjami: odwrócenie segmentu, przestawianie wierzchołka, przestawianie pary wierzchołków połączonych krawędzią) selekcji ( pojedynki rozstrzygane wg reguły akceptacji Metropolisa między bezpośrednimi sąsiadami na okręgu) mieszania (krzyżowanie porządkowe OX, między sąsiadami odległymi o 4 pozycje na okręgu) Cykl podstawowy: optymalizacja lokalna, współzawodnictwo, optymalizacja lokalna, kooperacja Zmiana temperatury wg schematu geometrycznego Page 15 of 25

CCA: diagram Page 16 of 25

Lamarkizm vs. efekt Baldwina Hipoteza Baldwina: plastyczność fenotypów wpływa na kierunek ewolucji (osobniki zdolne do uczenia się uzyskują przewagę selekcyjną) Symulacja efektu Baldwina: wykonujemy lokalną optymalizację na boku w celu wyznaczenia wskaźnika dostosowania; kod genetyczny pozostaje bez zmian Podsumowanie: lamarkizm : lokalna optymalizacja prowadzi do zmiany osobnika (redukcja przestrzeni poszukiwań) efekt Baldwina : lokalna optymalizacja prowadzi do zmiany wskaźnika dostosowania (spłaszczenie krajobrazu przystosowawczego w obrębie basenów przyciągania) Nowe kierunki badań: analiza krajobrazu przystosowawczego, korelacje między lokalnymi optimami dla konkretnych typów zadań optymalizacyjnych i algorytmów lokalnej optymalizacji Page 17 of 25

Geneza strategii ewolucyjnych Ingo Rechenberg (ur. 1934) Professor, Technical University of Berlin, Department for Bionics and Evolutiontechnique (Evolutionsstrategie, Optimierung technischer Systeme nach Prinzipien der biologischen Evolution, 1973) Hans-Paul Schwefel (ur. 1940) Professor of Computer Science, University of Dortmund, Dept. of Comp. Sci. (Systems Analysis) Obydwaj studiowali na Politechnice Berlińskiej, gdzie opracowali koncepcję strategii ewolucyjnych (1964) Page 18 of 25

Mechanizm adaptacji Dwa podejścia do problemu kalibracji parametrów: statyczne: parametry operatorów są dobierane w eksperymentach pilotażowych, stałe w każdym przebiegu algorytmu (typowe dla algorytmów genetycznych) dynamiczne (adaptacyjne): parametry operatorów zmieniają się w trakcie procesu ewolucyjnego Typy adaptacji: adaptacja centralna (zewnętrzny mechanizm sterujący) adaptacja autonomiczna, samoadaptacja (parametry ewoluują wraz z rozwiązaniami) Podstawa mechanizmu samoadaptacji: genotyp rozszerzony X S C, gdzie C przestrzeń parametrów sterujących Page 19 of 25

Ogólna charakterystyka ES Przestrzeń rozwiązań: S R m (zastosowania w optymalizacji parametrycznej) Parametry populacyjne: µ: liczebność populacji bieżącej (stała) λ: liczba potomków wytwarzanych w kroku ewolucyjnym (stała) Schematy wymiany pokoleń: pełna wymiana: (µ, λ), gdzie λ µ konkurencja: (µ + λ), gdzie λ 1 Selekcja: wstępna beztendencyjna; końcowa obcinająca Mutacja: gaussowska (addytywna, rozkład normalny zaburzenia) Page 20 of 25

Rozkład normalny wielowymiarowy Notacja: ξ N(0, C) zmienna losowa ξ ma rozkład normalny ze średnią zero i macierzą kowariancji C = C i,j gdzie C i,j = Cov(ξ i, ξ j ), i j oraz C i,i = Var(ξ i ) Funkcja gęstości wektora ξ: g(x) = exp( 1 2 xt C 1 x) (2π)m det(c) Najczęściej stosowane w praktyce przypadki to: C = σ 2 I (zaburzenia niezależne o tej samej wariancji) C = diag(σ 2 1,..., σ 2 m) (zaburzenia niezależne o różnych wariancjach) Page 21 of 25

Rozwój strategii ewolucyjnych Początki: Strategia (1 + 1)-ES z regułą Rechenberga Wady: częste występowanie przedwczesnej stagnacji (pułapki lokalnych optimów) Próba podejścia populacyjnego: trudności z realizacją zewnętrznego mechanizmu adaptacyjnego Inspiracja biologiczna: mutatory geny kontrolujące tempo mutowania innych genów Zasada samoadaptacji: parametry sterujące propagują się wraz z rozwiązaniami, które zostały otrzymane przy ich użyciu ocena parametrów na podstawie skutków zastosowania ( po ich owocach poznacie ich ) Nomenklatura: (µ + λ)-es, (µ, λ)-es Page 22 of 25

Wersje współczesne Reprezentacja (wariant uproszczony): X = ((x 1, x 2,..., x m ), (σ 1, σ 2,..., σ m )) Ogólny schemat jak w algorytmach genetycznych Operator selekcji wstępnej: ρ-krotny wybór beztendencyjny spośród µ elementów populacji (1 ρ µ; ρ liczba argumentów operatora mieszającego) Operatory mieszające (parametr ω) 0: brak rekombinacji 1: krzyżowanie uśredniające (tu: global intermediary recombination) 2: zmodyfikowane krzyżowanie arytmetyczne (tu: local intermediary recombination) każdą parę współrzędnych losujemy spośród ρ rodziców 3: rekombinacja dyskretna (discrete recombination, uniform crossover) Page 23 of 25

Algorytm mutacji (samoadaptacja) Parametry operatora mutacji odchyleń standardowych: τ 0 = K 2m, τ = K 4 4m, gdzie K pewna stała Faza 1: mutacja wektora odchyleń standardowych σ i = σ i e z i+z 0, i = 1,..., m gdzie z 0 N(0, τ 0 ), z i N(0, τ) (niezależne zmienne losowe) Faza 2: mutacja wektora rozwiązań x i = x i + σ iξ i, gdzie ξ i N(0, 1), i = 1,..., m niezależne zmienne losowe Page 24 of 25

Uzupełnienia Wprowadzono dolny próg ε σ dla odchyleń standardowych σ i, by zapobiec degeneracji procesu Pełna wersja strategii uwzględnia skorelowane mutacje, tj. wielowymiarowy rozkład normalny wektora zaburzeń (z ogólną macierzą kowariancji), aby gęstość wektora zaburzeń była stała na poziomicach wykresu funkcji oceny Macierz kowariancji jest reprezentowana przez dodatkowy zestaw parametrów sterujących (wektor kątów nachylenia) i również podlega ewolucji Pełna postać rozszerzonego chromosomu: X = ((x 1,..., x m ), (σ 1,..., σ nσ ), (α 1,..., α nα )) Page 25 of 25 Opis algorytmu mutacji kątów nachylenia w pracy G. Rudolpha On Correlated Mutations in Evolution Strategies, PPSN-2 (1992)