wykład 4 Strategie przeszukiwania lokalnego i problemy optymalizacji dr inż. Joanna Kołodziejczyk Zakład Sztucznej Inteligencji ISZiMM

Podobne dokumenty
Algorytm genetyczny (genetic algorithm)-

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

ALGORYTMY GENETYCZNE ćwiczenia

Algorytmy genetyczne

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

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

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

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

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

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

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Algorytmy genetyczne

Obliczenia ewolucyjne - plan wykładu

SID Wykład 3 Przeszukiwanie iteracyjne

6. Klasyczny algorytm genetyczny. 1

Algorytmy ewolucyjne NAZEWNICTWO

Równoważność algorytmów optymalizacji

Algorytmy genetyczne w optymalizacji

Algorytmy ewolucyjne 1

Zadania laboratoryjne i projektowe - wersja β

Algorytmy genetyczne (AG)

Optymalizacja. Przeszukiwanie lokalne

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

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

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

Strategie ewolucyjne (ang. evolu4on strategies)

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Metody Rozmyte i Algorytmy Ewolucyjne

Podstawy sztucznej inteligencji

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

Dobór parametrów algorytmu ewolucyjnego

Algorytmy ewolucyjne. wprowadzenie

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Algorytmy genetyczne

Techniki optymalizacji

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

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

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Optymalizacja. Wybrane algorytmy

Algorytmy genetyczne

SZTUCZNA INTELIGENCJA

Metody przeszukiwania

Algorytmy ewolucyjne Część II

METODY HEURYSTYCZNE wykład 3

METODY HEURYSTYCZNE wykład 3

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

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

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

Algorytmy ewolucyjne `

Automatyczny dobór parametrów algorytmu genetycznego

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Algorytmy genetyczne w interpolacji wielomianowej

Wstęp do Sztucznej Inteligencji

Optymalizacja ciągła

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

Standardowy algorytm genetyczny

Generowanie i optymalizacja harmonogramu za pomoca

Techniki optymalizacji

Obliczenia z wykorzystaniem sztucznej inteligencji

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

Wybrane podstawowe rodzaje algorytmów

SZTUCZNA INTELIGENCJA

Algorytmy ewolucyjne (3)

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Program "FLiNN-GA" wersja 2.10.β

Heurystyczne metody przeszukiwania

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

Techniki optymalizacji

ALHE Z11 Jarosław Arabas wykład 11

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Optymalizacja. Symulowane wyżarzanie

Techniki ewolucyjne - algorytm genetyczny i nie tylko

Strategie ewolucyjne (ang. evolution strategies)

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

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

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

Algorytmy metaheurystyczne podsumowanie

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Wstęp do Sztucznej Inteligencji

Aproksymacja funkcji a regresja symboliczna

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Problem Komiwojażera - algorytmy metaheurystyczne

Heurystyki. Strategie poszukiwań

Problemy metody gradientowej

Metody Optymalizacji: Przeszukiwanie z listą tabu

ZASTOSOWANIE ALGORYTMU GENETYCZNEGO DO WYZNACZANIA OPTYMALNYCH DECYZJI STERUJĄCYCH

Programowanie genetyczne

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

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

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

Wielokryterialne harmonogramowanie portfela projektów. Bogumiła Krzeszowska Katedra Badań Operacyjnych

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD V: Agent wciąż szuka rozwiązania (choć już nie na ślepo)

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

Podstawy sztucznej inteligencji

Mrówka Pachycondyla apicalis

Ewolucjonizm NEODARWINIZM. Dr Jacek Francikowski Uniwersyteckie Towarzystwo Naukowe Uniwersytet Śląski w Katowicach

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

MIO - LABORATORIUM. Imię i nazwisko Rok ak. Gr. Sem. Komputer Data / EC3 VIII LAB...

ALGORYTMY GENETYCZNE

Transkrypt:

Strategie przeszukiwania lokalnego i problemy optymalizacji wykład 4 dr inż. Joanna Kołodziejczyk jkolodziejczyk@wi.ps.pl Zakład Sztucznej Inteligencji ISZiMM ESI - wykład 4 p. 1

Plan wykładu Przeszukiwanie lokalne: Algorytm największego wzrostu Symulowane wyżarzanie Szukanie wiazk a Algrytmy genetyczne ESI - wykład 4 p. 2

Lokalne przeszukiwanie Metody dotychczas omawiane systematycznie eksplorowały przestrzeń zachowujac w pamięci alternatywne ścieżki do momentu odnalezienia rozwiazania. W wielu problemach takich jak: projektowanie układów cyfrowych, harmonogramowanie, wyznaczanie drogi pojazdu, optymalizacja sieci telekomunikacyjnych itd. ścieżka nie jest istotna. Natomiast ważne jest rozwiazanie (o jak najlepszych walorach). Lokalne metody przeszukiwania operuja na pojedynczym stanie i generuja krok do stanu sasiedniego. Algorytmy nie sa systematyczne, ale maja następujace zalety: Małe wymagania pamięciowe: zazwyczaj stała wielkość Często znajduja akceptowalne rozwiazania w dużej i nieskończonej przestrzeni rozwiazań, gdy metody systematyczne zawodza. Metody lokalne sa dedykowane do zadań optymalizacji w których celem jest znalezienie najlepszego stanu według funkcji celu. ESI - wykład 4 p. 3

Krajobraz przestrzeni stanów Krajobraz posiada: położenie definiowane przez stan wzniesienia zdefiniowane prze wartość funkcji celu (funkcji heurystycznej) Jeżeli wzniesienia odpowiadaja kosztowi, to oczywiście poszukujemy najniższej doliny (poszukiwanie globalnego minimum), w przeciwnym przypadku szukamy najwyższego wzniesienia w krajobrazie (globalne maksimum). objective function global maximum shoulder local maximum "flat" local maximum current state state space Przestrzeń stanów jest równa pełnym konfiguracjom, a zadanie polega na poszukiwaniu optymalnej konfiguracji. ESI - wykład 4 p. 4

Przykład komiwojażer Rozpocznij z dowolnej pełnej trasy. Wymieniaj miasta parami. Prezentowane podejście lub jego warianty bardzo szybko znajduja do 1% optimów, nawet dla problemów z tysiacem miast. ESI - wykład 4 p. 5

Przykład n hetmanów Zadanie: Ustaw n hetmanów na szachownicy n n z hetmanami ustawionymi w różnych wierszach, kolumnach lub przekatnych. Poruszaj hetmanem by zredukować liczbę konfliktów. h = 5 h = 2 h = 0 Podejście prawie zawsze w krótkim czasie rozwiazuje problem n-hetmanów, nawet dla dużego n (np, n = 1,000,000). ESI - wykład 4 p. 6

Metoda największego wzrostu (hill-climbing) W pętli, nieustannie przesuwamy się w kierunku rosnacych wartości funkcji celu. Kończy swoje działanie kiedy osiagnie szczyt, tj. wszyscy sasiedzi maja mniejsze wartości funkcji celu. Metoda nie wymaga zastosowani drzewa. Bieżacy stan jako struktura danych musi zapamiętywać stan i wartość funkcji celu. Nie wybiega w przód ani nie patrzy za siebie. Metoda największego wzrostu wybiera losowo ze zbioru stanów potomnych, jeżeli kilka z nich ma taka sama wartość funkcji celu. W języku angielskim metoda znana również jako: greedy local search. ESI - wykład 4 p. 7

Metoda największego wzrostu 1 function HILL-CLIMBING( problem) return a state 2 that is a local maximum 3 input: problem, a problem 4 local variables: current, a node. 5 neighbor, a node. 6 7 current = MAKE-NODE(INITIAL-STATE[problem]) 8 loop do 9 neighbor = a highest valued successor of current 10 if VALUE [neighbor] <= VALUE[current] then 11 return STATE[current] 12 current = neighbor W każdym kroku bieżacy węzeł jest zastępowany sasiadem z największa wartościa VALUE. Jednak jeżeli funkcja heurystyczna jest oszacowanie, to sasiad może nie być bezwzględnie lepszy. ESI - wykład 4 p. 8

Przykład dla n hetmanów Założenia: Funkcja generujaca potomka przesuń pojedynczego hetmana w tej samej kolumnie. Funkcja heurystyczna h(x): liczba par hetmanów, które się atakuja. Rys. lewy: stan h = 17 i wartości h dla każdego możliwego potomka. Rys. prawy: minimum lokalne o wartości h = 1. ESI - wykład 4 p. 9

Wady Lokalne maksima jest to szczyt w krajobrazie przystosowawczym, który jest niższy niż globalne optimum. Algorytm lubi utykać w takich miejscach. Grzbiet sekwencja lokalnych maksimów. Trudno poruszać się w takich krajobrazach. Obszary płaskie obszary przestrzeni przystosowawczej, gdzie na dużym obszarze wartość funkcji celu jest stała. Może nie znaleźć drogi wyjściowej z obszaru. objective function global maximum shoulder local maximum "flat" local maximum current state state space Dla 8-hetmanów utyka w 86% przypadków, gdy stan poczatkowy jest losowany. ESI - wykład 4 p. 10

Warianty metody największego wzrostu Stochastyczna metoda największego wzrostu: losowy wybór pomiędzy ścieżkami wzrastajacymi. Prawdopodobieństwo wyboru zależy od nachylenia zbocza. Metoda największego wzrostu pierwszego wyboru: generuje losowo potomków dopóki nie zajdzie lepszego od bieżacego stanu. Losowo restartowana metoda największego wzrostu: próbuje pokonać problem utykania w lokalnych minimach. Losowe przemieszczenia: ucieczka z płaskich obszarów prowadzacych do zbocza narastajacego, ale zapętli się na płaskim lokalnym maksimum. ESI - wykład 4 p. 11

Symulowane wyżarzanie (simulated annealing) Unika lokalnych maksimów poprzez zezwalanie na kroki w kierunku malejacej wartości funkcji heurystycznej. Częstotliwość i wielkość takich skoków maleje z czasem. Zazwyczaj funkcja celu (heurystyczna) jest minimalizowana. Symulacja procesu studzenia kryształów do osiagnięcia stanu minimalnej energii. Jeżeli T zmniejsza się dostatecznie wolno, to osiagnie się najlepszy stan. ESI - wykład 4 p. 12

Symulowane wyżarzanie 1 function SIMULATED-ANNEALING( problem, schedule) return 2 a solution state 3 input: problem- a problem 4 schedule- a mapping from time to temperature 5 local variables: current - a node. 6 next - a node. 7 T - a "temperature" controlling the probability 8 of downward steps 9 10 current = MAKE-NODE(INITIAL-STATE[problem]) 11 for t = 1 to inf do 12 T = schedule[t] 13 if T = 0 then return current 14 next = a randomly selected successor of current 15 deltae = VALUE[next] - VALUE[current] 16 if deltae > 0 then current = next 17 else current = next only with probability e^(deltae/t) ESI - wykład 4 p. 13

Lokalne szukanie wiazk a (local beam search) Jednocześnie śledzi k ścieżek (stanów) zamiast jednego: 1. Wylosuj k stanów poczatkowych. 2. Określ wszystkich potomków k stanów z kroku poprzedniego. 3. Jeżeli którykolwiek potomek jest celem, to zatrzymaj. W przeciwnym przypadku wybierz k najlepszych potomków i powtarzaj od kroku 2. Algorytm cechuje losowo wygenerowany stan poczatkowy. Korzysta się z k niezależnych rozwiazań i wybiera lepsze z nich. Jeżeli jakiś stan wygeneruje tylko dobrych potomków, a inny złych to na drodze wyboru tylko potomkowie dobrego będa się dalej rozwijać. Oznacza to znalezienie obiecujacego ukształtowania płaszczyzny przystosowawczej i przyciagnięcie do niej. Jest podatny na brak różnorodności. Wariant stochastyczny: wybiera k potomków losowo z prawdopodobieństwem proporcjonalnym do ich funkcji celu. ESI - wykład 4 p. 14

Algorytmy genetyczne (genetic algorithms) AG jest wariantem szukania wiazk a z rozmnażaniem. Oparty jest na darwinowskiej teorii doboru naturalnego: przeżywaja i rozmnażaja się osobniki najlepiej przystosowane do warunków środowiska. Darwin zauważył, że na świat przychodzi dużo więcej potomstwa, niż może pomieścić środowisko zatem większość musi zginać. Przeżywaja tylko nieliczni, ale za to najlepsi. I to jest mechanizm zmian: selekcja - nieustajaca, powolna, powszechna. W procesie rozrodu osobniki przekazuja potomstwu swoje własne cechy, jednocześnie w procesie krzyżowania cechy najsilniejszych osobników mieszaja się, dajac kombinacje dotad nie występujace. Ewolucja: Każdy organizm rozwija się w środowisku i w populacji osobników tego samego gatunku. Osobniki różnia się między soba. Lepsze sa w stanie się rozmnażać. Środowisko ocenia osobniki na postawie ich cech zewnętrznych (fenotypu), które to zależa od zestawu genów osobnika. ESI - wykład 4 p. 15

Algorytm genetyczny - zalety Rozpoczynajac poszukiwanie w różnych (poczatkowo losowo wybranych punktach przestrzeni) daje większe szanse znalezienia globalnego optimum. Generowanie nowych stanów nie odbywa się na podstawie określonych dla danego zdania funkcji generowania potomków, tylko za pomoca operatorów genetycznych. ESI - wykład 4 p. 16

Algorytm genetyczny - pojęcia chromosom: ciag kodowy, reprezentuje stan z przestrzeni gen: cecha rozwiazania, stanu np. zmienna x allel: wariant cechy (przy kodowaniu binarnym 0 lub 1) locus: pozycja genu w chromosomie genotyp: struktura stan złożony z kilu chromosomów fenotyp: zbiór parametrów, rozwiazanie alternatywne, zdekodowana struktura genotypu funkcja przystosowania: miernik zysku ocena przydatności danego osobnika na podstawie jego chromosomu mutacja: zmiana allelu w chromosomie osobnika krzyżowanie: operacja rozmnażania selekcja: wybór osobników do następnej populacji ESI - wykład 4 p. 17

Algorytm genetyczny 1 function GENETIC_ALGORITHM( population, FITNESS-FN) return an individual 2 input: population, a set of individuals 3 FITNESS-FN, a function which determines the quality of the 4 individual 5 6 repeat 7 new_population = empty set 8 loop for i from 1 to SIZE(population) do 9 x = RANDOM_SELECTION(population,FITNESS_FN) 10 y = RANDOM_SELECTION(population,FITNESS_FN) 11 child = REPRODUCE(x,y) 12 if (small random probability) then child = MUTATE(child) 13 add child to new_population 14 population = new_population 15 until some individual is fit enough or enough time has elapsed 16 return the best individual ESI - wykład 4 p. 18

Algorytm genetyczny funkcja reproduce 1 function REPRODUCE(x,y) return an individual 2 input: x, y --- parent individuals 3 4 n = LENGTH(x) 5 c = random number from 1 to n 6 return APPEND(SUBSTRING(x,1,c),SUBSTRING(y,c+1,n)) Przykład krzyżowania jednopunktowego chromosomów według powyższej procedury: ESI - wykład 4 p. 19

Co należy ustalić przed wykorzystaniem AG Ustalenie kodowania: ustalenie genomu jako reprezentanta wyniku Ustalenie funkcji przystosowania: jak oceniać osobniki? Wybranie operatorów genetycznych: jakie krzyżowanie, mutacja i selekcja Ustalenie wartości współczynników stałych: np. liczność populacji, prawdopodobieństwo krzyżowania, prawdopodobieństwo mutacji, itp. Warunek zatrzymania AG. ESI - wykład 4 p. 20

Rodzaje Kodowania Kodowanie reprezentacja danych zbiór stanów przestrzeni zadania przedstawiony w postaci skończonego alfabetu znaków. Podział ze względu na przyjmowane wartości kodowe: binarne całkowitoliczbowe zmiennoprzecinkowe ciagi znaków Podział ze względu na strukturę: standardowe permutacyjne drzewiaste ESI - wykład 4 p. 21

Kodowanie heterogeniczne Geny sa heterogeniczne, tzn. geny na różnych pozycjach w chromosomie przechowuja informacje różnego typu. Każda kodowana cecha fenotypu ma ściśle przypisana na stałe pozycję w chromosomie. W wyniku krzyżowania i mutacji geny nie przemieszczają się, tylko zmieniaja wartości Przykłady: Przykład problemu: Problem plecakowy Kodowanie: Każdy gen ma wartość 0 lub 1 i określa, czy element jest, czy go nie ma w plecaku. Długość chromosomu zależy od liczby elementów w zbiorze. Przykład problemu: Optymalizacja funkcji n zmiennych danej wzorem Kodwanie: Każdy gen jest liczba rzeczywista i jest jedna z n zmiennych. Zazwyczaj kolejność jest zachowana x 1, x 2,..., x n. Wartości x-ów zależa od dziedziny Przykład problemu: n-hetmanów Kodwanie: Gen jest liczba całkowita od 1 do n i wskazuje wiersz położenia hetmana. Kolejne geny, to kolejne kolumny. ESI - wykład 4 p. 22

Kodowanie permutacyjne Geny sa homogeniczne, tzn. przechowuja podobne informacje, sa wymienialne. W wyniku krzyżowania i mutacji geny nie zmieniaja wartości, natomiast zmieniaja pozycje. Przykład problemu: Problem komiwojażera Kodowanie: Chromosom podaje numery miast (kolejność) w jakiej komiwojażer przejechał trasę. Chromosom A 1 5 3 2 6 4 7 9 8 Chromosom B 8 5 6 7 2 3 1 4 9 ESI - wykład 4 p. 23

Poprawność kodowania Kodowanie jest bardzo istotnym etapem projektowania algorytmu. Sposób kodowania wydatnie wpływa na szybkość i jakość znajdywanych wyników, na sposób w jaki przeszukiwana jest przestrzeń rozwiazań. Złe kodowanie może spowodować, że nigdy nie zostanie przeszukany fragment przestrzeni, w którym znajduja się najlepsze rozwiazania. D - zbiór fenotypów G - zbiór genotypów c : D G - funkcja kodujaca Kodowanie powinno zapewnić: d D g G c(d) = g Każde rozwiazanie zadania można przedstawić jako genotyp i kodowanie nie wprowadza dodatkowych ekstremów lokalnych. ESI - wykład 4 p. 24

Funkcja przystosowania Funkcja przystosowania (ang. FF fitness function) przypisuje każdemu chromosomowi pewna wartość liczbowa, która mówi jak daleko od rozwiazania jest badany osobnik (f. heurystyczna) f(ch i ), gdzie ch i jest i-tym chromosomem w populacji. FF podaje kryteria oceny osobników. FF jest zawsze zależna od rozwiazywanego problemu! Wartość f(ch) jest zazwyczaj maksymalizowana. Można zadanie minimalizacji przekształcić na zadanie szukania maksimum. Wyższa wartość funkcji oznacza lepsze cechy i osobnik (rozwiazanie) ma większe szanse przejścia do następnego pokolenia. (Darwinowska przeżywalność najlepiej przystosowanych). Przykłady: Problem komiwojażera: f(chi ) = 1/ P n 1 j=1 dist(ch ij, ch ij+1 ) Problem plecakowy: f(chi ) = P n j=1 value(ch ij) dla f(ch i ) < Capasity, lub f(ch i ) = 0 Funkcja zadana wzorem: f(chi ) = funkcja ESI - wykład 4 p. 25

Krajobraz przystosowawczy Topografia adaptacyjna (krajobraz przystosowawczy - fitness landscape) to odwzorowanie fenotypu na płaszczyznę przystosowania (zależy od wymiarowości zadania). Ewolucja przesuwa populację w kierunku szczytu krajobrazu. ESI - wykład 4 p. 26

Metody selekcji Jak wybierać chromosomy z istniejacej populacji, by zapewnić Darwinowska ewolucję? Selekcja metoda ruletki Metoda rankingowa Turniej Elitaryzm: jako dodatkowy element do wymienionych selekcji. Chromosom o największej wartości funkcji przystosowania jest zawsze kopiowany do następnej generacji. ESI - wykład 4 p. 27

Selekcja metoda ruletki Powtarzaj wielkość populacji razy: 1. Oblicz sumę (S = P N i=1 f(x i)) przystosowania wszystkich osobników w populacji, gdzie N - liczność populacji. 2. Wygeneruj losowa liczbę (R) z przedziału 0 do S 3. Sumuj kolejno po S c = P j f(x j) kolejnych chromosomów. Gdy S c > R, to chromosom j przepisz do nowej populacji. Wady: Gdy wartości funkcji przystosowania sa bardzo różne, to może się zdarzyć, że jeden chromosom zajmie duża przestrzeń z koła. Inne będa miały mała szanse przejścia reprodukcji. Nadaje się dla FF maksymalizowanej. Image:en.wikipedia.org ESI - wykład 4 p. 28

Selekcja rankingowa Selekcja rankingowa nadaje rangi chromosomom w populacji na podstawie ich przystosowania. Najgorszy dostaje rangę 1, przedostani 2 a najlepszy N jeżeli N jest licznościa populacji. W korku następnym traktuje się ranking jako wartości oszacowania użyteczności chromosomów i uruchamia się metodę ruletki. Cechy: Rozwiazuje problem ruletki, czyli daje szansę chromosomom o małej FF na wylosowanie. Ma jednak słaba zbieżność, bo najlepszy chromosom różni się od innych chromosomów nieznacznie. ESI - wykład 4 p. 29

Selekcja: turniej Powtarzaj wielkość populacji razy: 1. wybierz losowo k (rozmiar turnieju) osobników z populacji 2. wybierz najlepszego osobnika z grupy turniejowej z prawdopodobieństwem p 3. wybierz drugiego osobnika z grupy turniejowej z prawdopodobieństwem p(1 p) 4. wybierz trzeciego osobnika z grupy turniejowej z prawdopodobieństwem p(1 p) 2 itd. Deterministyczny turniej następuje, gdy wybiera się najlepszego osobnika z p = 1. Jeżeli k = 1, to wybór nowej populacji jest losowy. Wybrany do nowej populacji osobnik zazwyczaj pozostaje w populacji, co daje mu szanse ponownego wylosowania. Zalety: Sprawdza się w implementacjach równoległych, łatwo może manipulować presja selekcyjna (skłonność algorytmu do częstszego wybierania lepiej przystosowanych osobników). ESI - wykład 4 p. 30

Metody krzyżowania (reprodukcji) Dla chromosomów heterogenicznych. Jednopunktowe: Losowo wybierz z populacji 2 rodziców. Wylosuj punkt krzyżowania. Rozmnóż osobniki poprzez zamianę ciagów od punktu krzyżowania. Dwupunktowe: Wylosuj dwóch rodziców z populacji. Wylosuj dwa punkty krzyżowania. Rozmnóż osobniki poprzez zamianę ciagów pomiędzy punktami krzyżowania. Jednorodne: Wylosuj dwóch rodziców do krzyżowania. Dla każdego genu losowo określ czy nastapi zamiana genów w chromosomach czy też nie. Krzyżowanie uśredniajace: (dla chromosomów o wartościach rzeczywistych). Dla rodziców x 1 oraz x 2, z rozkładem jednostajnym losujemy liczbę α. Wartości potomków: y 1 = x 1 + α(x 2 x 1 ) i y 2 = x 2 + (x 1 y 1 ). ESI - wykład 4 p. 31

Metody mutacji Dla chromosomów heterogenicznych. Jednopunktowa: Wylosuj osobnika do mutacji. Wylosuj punkt mutacji. Zmień wartość genu na dozwolona wartość z alfabetu Na określonej długości: Wylosuj osobnika do mutacji. Wylosuj punkt mutacji i długość zmutowanego fragmentu. Zmień wartości genów na dozwolone wartości z alfabetu. Dla chromosomów o wartościach rzeczywistych. Losujemy liczbę α. Wartość po mutacji: y = x 1 + αx 1. ESI - wykład 4 p. 32

Metody mutacji Dla chromosomów homogenicznych. Fitness zależy od kolejności elementów osobnika. Neighborhood liczba stanów możliwych do osiagnięcia ze stanu rodzicielskiego w jednym kroku. Ten parametr jest siła mutacji w przestrzeni permutacyjnej. Sasiedztwo zazwyczaj stałe stad zmiennym paramentrem jest liczba mutacji przeprowadzana w pojedynczym kroku. 1 < s < const N ESI - wykład 4 p. 33

Przykład 24748552 24 31% 32752411 32748552 32748152 32752411 23 29% 24748552 24752411 24752411 24415124 20 26% 32752411 32752124 32252124 32543213 11 14% 24415124 24415411 24415417 Fitness Selection Pairs Cross Over Mutation + = FF = liczba nie atakujacych się par. Najlepsze rozwiazanie FF=28. ESI - wykład 4 p. 34

Warunki zakończenia AG Generowanie nowych populacji odbywa się w cyklu, który może się zakończyć, gdy spełniony zostanie warunek zakończenia. Warunek ten może być pojedynczy lub złożony. Do najczęściej stosowanych należa: Znaleziono rozwiazanie optymalne lub suboptymalne Osiagnięto założona liczbę generacji Przekroczono założony budżet (czas obliczeniowy/zysk) W kolejnych iteracjach nie uzyskuje się polepszenia najlepszego osobnika lub średniego przystosowania populacji Kontrola manualna ESI - wykład 4 p. 35

Parametry od których zależy efektywność AG Pewne wartości sterujace zachowaniem metod selekcji, krzyżowania i mutacji sa określane przed uruchomieniem AG i zazwyczaj pozostaja niezmienne. Do nich zaliczyć można np.: Liczność populacji Prawdopodobieństwo krzyżowania Prawdopodobieństwo mutacji Liczność grupy turniejowej Wielkości wymienionych parametrów sa najczęściej dobierane empirycznie. Ponadto rezultaty działania AG zależa od stosowanych selekcji i operatorów zmian kodu. ESI - wykład 4 p. 36

Ocena AG Zalety: Szerokie zastosowanie w rozwiazywaniu problemów, dla których nie zawsze znane sa dobre inne techniki. Może być uruchamiany interaktywnie (zmiana parametrów). Niewielki (pozornie) koszt adaptacji algorytmu dla nowego problemu czy nowej przestrzeni stanów. Rozwiazania sa łatwo interpretowane. Dobre wyniki w poszukiwaniu lokalnych optimów dzięki operowaniu na genotypie, a nie fenotypie. Trudności z AG: Znalezienie odpowiedniej reprezentacji rozwiazania. Odpowiedni dobór parametrów i operatorów (liczność populacji, prawdopodobieństwa krzyżowania i mutacji). Czas uzyskania satysfakcjonującego rozwiazania. ESI - wykład 4 p. 37