INTELIGENCJA OBLICZENIOWA dr Katarzyna Grzesiak-Kopeć
obliczenia ewolucyjne 2
Plan wykładu Wprowadzenie Algorytmy genetyczne Programowanie genetyczne Programowanie ewolucyjne Strategie ewolucyjne Inne modele obliczeń ewolucyjnych Podsumowanie 3
Algorytmy genetyczne John Holland 1975 Reprezentacja za pomocą ciągu bitów Selekcja proporcjonalna KrzyŜowanie jako główna metoda reprodukcji 4
Reprezentacja chromosomu Wektor binarny ustalonej długości Kodowanie Wartości dyskretne D-wymiarowy wektor, gdzie 2 D jest liczbą wszystkich moŝliwych wartości Wartości ciągłe ciągłe z [z min,z max ] chcemy zakodować na 30 bitach (2 30 1) z z z z max min min φ: φ α β D D R {0,1}, :[, ] {0,1} 5
Odległość Hamminga Liczba bitów, którymi ciągi się róŝnią 0 1 2 3 4 5 6 7 Binarny 000 001 010 011 100 101 110 111 Gray a 000 001 011 010 110 111 101 100 bb 1 g g 1 k 2 = Kb = b 1 b K k 1bk + Binarny do Gray a b k 1 b k Operatory logiczne: NOT, AND, OR 6
Cel: utworzenie potomka z dwóch rodziców wybranych dowolną metodą selekcji KrzyŜowanie ma miejsce z ustalonym prawdopodobieństwem p c KrzyŜowanie KrzyŜowanie osobników 1. Wylosuj ξ ~U(0,1) 2. Ifξ> p c to nie ma krzyŝowania i zwracamy rodziców r r 3., r r α = C n β = C 1 n 2 4. Oblicz maskę m r 5. For i=1,,i if(m i =1) dokonaj wymiany materiału genetycznego αi =, β = 2 C n i i Cn, i, 1 C r, n C r 1 n 2 6. Zwróć potomków: α i, β i 7
Maska Wskazuje, które bity mają zostać wymienione KrzyŜowanie Równomierne Jednopunktowe Wielopunktowe 8
KrzyŜowanie równomierne Maska tworzona losowo dla kaŝdej pary rodziców Bit 1 dany gen ma zostać wymieniony pomiędzy rodzicami m i =0 dla i=1,,i Dla kaŝdego i wylosuj ξ ~U(0,1) Jeśli (ξ p x ) m i =1 Zwróć maskę 9
KrzyŜowanie jednopunktowe Losujemy jeden locus (pozycję genu) i wymieniamy ciągi za tym punktem Wylosuj ξ ~U(1,I-1) m i =0 dla i=1,,i Dla kaŝdego i= ξ+1,,i m i =1 Zwróć maskę 10
KrzyŜowanie dwupunktowe Losujemy dwie pozycje i wymieniamy ciągi pomiędzy tymi punktami Wylosuj ξ 1, ξ 2 ~U(1,I-1) ξ 1 ξ 2 m i =0 dla i=1,,i Dla kaŝdego i= ξ 1,, ξ 2 m i =1 Zwróć maskę 11
Mutacja Losowa zmiana wartości genów w chromosomie Cel to zróŝnicowanie materiału genetycznego w populacji zwiększenie przestrzeni poszukiwań Zazwyczaj zachodzi rzadko (małe p-wo) Malejące eksponencjonalnie w czasie polepsza szybkość zbieŝności i dokładność Mutacja Losowa Inorder 12
Mutacja losowa Losujemy pozycje i negujemy bity Dla kaŝdego i i=1,,i Wylosuj ξ ~U(0,1) Jeśli (ξ p m ) zaneguj i- ty bit 13
Mutacja inorder Losujemy dwie pozycje i mutujemy geny pomiędzy nimi Wylosuj ξ 1, ξ 2 ~U(1,I) ξ 1 ξ 2 Dla kaŝdego i= ξ 1,, ξ 2 m i =1 Wylosuj ξ ~U(0,1) Jeśli (ξ p m ) zaneguj i-ty bit 14
Przykład 1 J. Wróblewski, Niekonwencjonalne metody obliczeniowe Wytwórca lodów dąŝy do maksymalizacji zysków Decyduje o smaku i wielkości lodów oraz o zestawie dostępnych dodatków Przyjmijmy 4 smaki lodów: waniliowe, czekoladowe, truskawkowe, karmelowe Lody mogą mieć lub nie dodatki Lody mogą być duŝe bądź małe Jakie lody powinien produkować wytwórca by jego zysk (iloczyn ceny i popytu) był maksymalny? Koszt wyprodukowania lodów nie zaleŝy od smaku i jest stały Dla małych wynosi 10 Dla duŝych wynosi 2x10 Koszt dodatków teŝ jest stały Dla małych wynosi 5 Dla duŝych wynosi 2x5 Lody duŝe cieszą się dwukrotnie mniejszym zainteresowaniem ze względu na cenę 15
Przykład 1 J. Wróblewski, Niekonwencjonalne metody obliczeniowe Mamy dane określające zaleŝność popytu od rodzaju lodów Waniliowe Truskawkowe Czekoladowe Karmelowe Dodatki 6 6 12 12 Bez 6 10 8 10 Osobniki lody Fenotyp rodzaj lodów Genotyp zespół opisujących cech Smak (4 wartości) Wielkość (2 wartości) Dodatki (2 wartości) Lody waniliowe w polewie czekoladowej duŝe 0011 Małe Waniliowe Truskawkowe Czekoladowe Karmelowe Bez dodatków 0 0 00 01 10 11 Z dodatkami DuŜe 1 1 16
Przykład 1 J. Wróblewski, Niekonwencjonalne metody obliczeniowe Funkcja przystosowania KaŜdemu osobnikowi przypisuje nieujemną wartość Zysk ze sprzedaŝy Iloczyn popytu i ceny Selekcja koło ruletki Mutacja Losowa zmiana jednego bitu P-wo 5% (dla kaŝdego bitu) KrzyŜowanie jednopunktowe Losujemy rodziców P-wo 50% Potomek Początkowy fragment 1go rodzica, końcowy 2go Wielkość populacji ustalamy 4 17
Przykład 1 J. Wróblewski, Niekonwencjonalne metody obliczeniowe Populacja początkowa 0111 (truskawka duŝe z dodatkami) 1000, 1000, 0100 Ocena osobników FP(0111) = 30x3=90, udział = 90/350=25% Cena 30 (duŝe+) Popyt 6/2=3 (bo duŝe) 18
Selekcja Przykład 1 Losujemy cztery liczby z zakresu [0,1) 0.22, 0.01, 0.15, 0.88 Odpowiadają osobnikom: 1, 1, 1 i 4 Nowa populacja: 0111, 0111, 0111, 0100 KrzyŜowanie J. Wróblewski, Niekonwencjonalne metody obliczeniowe Wylosowaliśmy do krzyŝowania 1 i 4 (p-wo 50%) Losujemy im pary 2, 1 odpowiednio Osobnik1 011 1, osobnik2 011 1 potomek 0111 Osobnik4 010 0, osobnik1 011 1 potomek 0101 19
Przykład 1 J. Wróblewski, Niekonwencjonalne metody obliczeniowe Zastępując rodziców potomkami otrzymujemy nową populację 0111, 0111, 0111, 0101 Mutacja p-wo 5% - średnio mniej niŝ 1 gen zostanie zmutowany (cała populacja to 16 genów) Wylosowaliśmy, Ŝe zostanie zmutowany 3 gen 2go osobnika 0111, 0101, 0111, 0101 FP(0111)=90, FP(0101)=100 Średnio wyŝsze niŝ początkowe idziemy w dobrym kierunku 20
Pytania do przykładu 1 J. Wróblewski, Niekonwencjonalne metody obliczeniowe Jaka jest moc przestrzeni poszukiwań? Dodajmy do parametrów kolor opakowania (8 wartości). Ile mamy rodzajów lodów? Jak długi będzie chromosom? Czy moŝliwe jest by po fazie reprodukcji całą populację opanował osobnik najgorzej przystosowany? 21
Przykład 2 Mamy sieć z M switchami, switch startowy i switch docelowy Cel: znalezienie najlepszej trasy dla połączenia Reprezentacja chromosomu RóŜnej długości (max M) Gen switch Allele wartości całkowite (1 3 6 10) (1 5 2 5 10)=(1 5 2 10) Inicjalizacja populacji Losowa z ustaleniem pierwszego i ostatniego genu Wartości losowane [1,M], rozkład p-wa jednostajny 22
Przykład 2 Funkcja przystosowania wielokryterialna Najmniej obciąŝona trasa Minimalny koszt F = af + bf + cf + j Switch j Block j Util j df Cost j Najkrótsza trasa Maksymalna eksploatacja 23
Funkcja przystosowania Najkrótsza trasa r j trasa r j liczba switchów na trasie Maksymalna eksploatacja F U xy stopień wykorzystania połączenia Util F j min{1 U xy r Switch j = = } +α j xy r j M xy Najmniej obciąŝona trasa B xy p-wo blokady połączenia F α Block j xy j = 1 (1 B 1 = 0 xy r xy r wpp Minimalny koszt nie istniej C xy koszt połączenia F Cost j = rj xy r j j C xy xy + α + α ) xy xy 24
Przykład 2 Dowolna selekcja i krzyŝowanie Mutacja Zmian wartości wybranego genu [1,M] jednostajny rozkład p-wa AG Numeryczna reprezentacja Zmienna długość chromosomu Ograniczenie struktury osobników 25
Równoległość Obliczenia równoległe Natura AG Zrównoleglenie AG Model globalny (single-walk model) Model rozproszony (diffusion model) Model wyspowy (island model) 26
Równoległość Model globalny Kilka procesorów wspólna pamięć Centralny procesor: Populacja (jest jedna) Selekcja, krzyŝowanie i mutacja Procesory podrzędne Obliczanie FP Ewentualnie lokalne poszukiwanie przy algorytmach hybrydowych 27
Równoległość Model rozproszony (asynchroniczny) Identyczne procesory niezaleŝne KaŜdy procesor ma swoją podpopulację Zazwyczaj 1 osobnik Selekcja i krzyŝowanie w małym otoczeniu Wyznaczonym przez topologię sieci połączeń procesorów Po selekcji i krzyŝowaniu następuje rozproszenie nowych osobników Przydzielenie odpowiednim procesorom 28
Model wyspowy Wyspa reprezentuje populację Selekcja, krzyŝowanie i mutacja zachodzą na wyspie niezaleŝnie od innych populacji Komunikacja Migracja Wizytacja Odstrzał słabych 29
Model wyspowy Jak inicjalizować populacje? Tak, by były rozłączne (róŝne części przestrzeni poszukiwań) Optymalizacja wielokryterialna Losowo KaŜda populacja optymalizuje inne kryterium Kiedy i gdzie migrować? Losowo Turniej: zarówno kto, jak i gdzie 30
Model wyspowy Jak inicjalizować populacje? Losowo Tak, by były rozłączne (róŝne części przestrzeni poszukiwań) Optymalizacja wielokryterialna KaŜda populacja optymalizuje inne kryterium Kiedy i gdzie migrować? Losowo Turniej: zarówno kto, jak i gdzie 31
Model wyspowy Jak inicjalizować populacje? Losowo Tak, by były rozłączne (róŝne części przestrzeni poszukiwań) Optymalizacja wielokryterialna KaŜda populacja optymalizuje inne kryterium Kiedy i gdzie migrować? Losowo Turniej: zarówno kto, jak i gdzie 32
Migracja Intuicja Lepsi z gorszej wyspy chcą przejść na lepszą Przyjęcie imigranta Z pewnym prawdopodobieństwem Wartość FP w porównaniu z wartością FP na wyspie Jeśli zróŝnicuje materiał genetyczny Jest maksymalnie odmienny 33
Wizytacja Osobnik o wysokiej wartości FP z dobrze prosperującej wyspy odwiedza inne wyspy Bierze udział w reprodukcji 34
Odstrzał słabych Usunięcie najsłabszego Zastąpienie imigrantem 35
Uwagi Model wyspowy moŝe być stosowany dla innych AE Koewolucja kooperatywna KaŜda wyspa optymalizuje jeden parametr (gen) 36
Co jeszcze? Jak wybrać operatory? ZaleŜy od problemu Liczne symulacje Meta-ewolucja 37
Twierdzenie o schematach Podstawowe twierdzenie AG Wyjaśnia dlaczego i tłumaczy jak działają Potrzebne pojęcia Schemat Rząd schematu Rozpiętość schematu Przystosowanie schematu 38
Schemat SCHEMATEM nazywamy wzorzec opisujący podzbiór wszystkich ciągów podobnych do siebie ze względu na ustalone pozycje. JeŜeli mamy alfabet E, to schematy są słowami nad alfabetem E {*} * moŝe być dowolną literą alfabetu E {* R * A} {O R K A} {A R K A} #E k 39
Rząd i rozpiętość RZĘDEM SCHEMATU o(s) nazywamy liczbę genów o ustalonych wartościach. ROZPIĘTOŚCIĄ SCHEMATU δ(s) nazywamy odległość między skrajnymi ustalonymi w schemacie genami. {* R * A} {* I * * I * N *} o(s)=2 o(s)=3 δ(s)=4-2=2 δ(s)=7-2=5 40
Przystosowanie schematu PRZYSTOSOWANIEM SCHEMATU f(s) nazywamy średnie przystosowanie wszystkich jego reprezentantów. Reprezentanci najlepiej przystosowanych schematów To najlepsze osobniki Nie są osobnikami najgorszymi 41
Twierdzenie o schematach Wąskie, niskiego rzędu i dobrze przystosowane schematy rozprzestrzeniają się w kolejnych pokoleniach zgodnie z wykładniczym prawem wzrostu. 42
Hipoteza cegiełek AG dochodzi do niemal optymalnej wydajności zestawiając schematy cegiełki. UWAGA na Sposób kodowania Funkcję przystosowania 43
Uwag kilka Czy problem nadaje się do rozwiązania przy pomocy AG? Transformacje Walsha Problemy AG-trudne Izolowane punkty optymalne = igły w stogu siana 44
Techniki zaawansowane Dominacja Inwersja Dymorfizm płciowy Gatunki i inne 45
Dylemat więźnia Teoria Gier, Melvin Dreshera i Merril Food (1950) Więzień B milczy Więzień B donosi Więzień A milczy Obaj dostają po 6 miesięcy A dostaje 10 lat B wychodzi na wolność Więzień A donosi A wychodzi na wolność B dostaje 10 lat Obaj dostają po 2 lata 46
Iterowany dylemat więźnia Rozgrywanie dylematu więźnia między tymi samymi graczami Opłaca się współpracować! Skuteczne strategie Przyjazność Mściwość Skłonność do przebaczania Brak zazdrości 47
koniec 48