ALGORYTMY EWOLUCYJNE FITNESS F. START COMPUTATION FITNESS F. COMPUTATION INITIAL SUBPOPULATION SENDING CHROM. TO COMPUTERS chromosome AND RECEIVING FITNESS F. wykład VALUE 3 fitness f. value FITNESS F. COMPUTATION communication with other subpopulations EVOLUTIONARY OPERATORS MIGRATION PHASE SELECTION YES TERMINATION CONDITION NO END 1
Na poprzednim wykładzie: AG -> AE. Metody reprodukcji, metody sukcesji. Eksploracja i eksploatacja. Ocena działania AE. Kryteria zatrzymania AE. SELEKCJA = REPRODUKCJA (preselekcja) + SUKCESJA (postselekcja) 2
OPERATORY KRZYśOWANIA 3
Para rodziców para potomków Zwykle : 2 osobniki rodzicielskie - 2 (sprzęŝ ęŝone) osobniki potomne. Pojedynczy osobnik potomny wariant dwuosobniczy para osobników w rodzicielskich; wariant globalny globalny jeden wiodący i n pomocniczych osobników w rodzicielskich (po jednym dla kaŝdego genu). KrzyŜowanie wieloosobnicze: z wieloma osobnikami potomnymi; z jednym osobnikiem potomnym. 4
OPERATORY KRZYśOWANIA WYMIENIAJĄCEGO 5
Tworzą chromosomy potomne przez składanie ich z wartości genów w chromosomów rodzicielskich. Mogą być wykorzystywane zarówno przy kodo- waniu binarnym, jak i rzeczywistoliczbowym. Nie dochodzi do modyfikacji wartości genów zawartych w chromosomach krzyŝowanych osobników w rodzicielskich (tylko ich przetasowanie). 6
KRZYśOWANIE JEDNOPUNKTOWE (proste) wybór r (z rozkładem jednostajnym) liczby c (punkt rozcięcia) cia) ze zbioru {1, 2,..., n -1} n - długość osobnika; Podział chromosomów X 1 i X 2 poddawanych krzyŝowaniu na dwie częś ęści i ich sklejanie: Y = [X[ 1 1,,..., X 1 c, X 2 c+1,, X 2 n]. W wersji z 2 osobnikami potomnymi drugi potomek: Z = [X[ 2 1,,..., X 2 c, X 1 c+1,, X 1 n] 7
X 1 X 2 3.24 2.22 Y 3.24 Z 2.22-0.22 3.14-0.22 3.14 1.32 7.72 c 1.32 7.72 3.22 1.22 1.22 3.22 1.20 2.40 2.40 1.20 7.23 4.28 4.28 7.23-2.21-2.42-2.42-2.21 8
KRZYśOWANIE DWUPUNKTOWE wybór r 2 punktów w rozcięcia cia c 1 i c 2 ; Podział chromosomów X 1 i X 2 poddawanych krzyŝo- waniu na 3 częś ęści i wymiana środkowej częś ęści: Y = [X[ 1 1,,..., X 1 c1, X 2 c1+1,, X 2 c2, X 1 c2+1,, X 1 n] W wersji z 2 osobnikami potomnymi drugi potomek: Z = [X[ 2 1,,..., X 2 c1, X 1 c1+1,, X 1 c2, X 2 c2+1,, X 2 n] c 1 = c 2 krzyŝowanie jednopunktowe 9
X 1 X 2 3.24 2.22 Y 3.24 Z 2.22-0.22 3.14-0.22 3.14 1.32 7.72 c 1 1.32 7.72 3.22 1.22 1.22 3.22 1.20 2.40 2.40 1.20 7.23 4.28 c 2 4.28 7.23-2.21-2.42-2.21-2.42 KRZYśOWANIE WIELOPUNKTOWE... 10
KRZYśOWANIE RÓWNOMIERNER Chromosom potomny: Y i X = X 1 i 2 i jeśli wylosowano liczbę <p e ; w przeciwnym razie. p e parametr krzyŝowania (typowo p e =0.5) W wersji z 2 osobnikami potomnymi drugi potomek: Z i X = X 2 i 1 i jeśli Y i = X 1 i ; w przeciwnym razie. 11
p e =0.5 X 1 X 2 wylosowano Y Z 3.24 2.22 0.092699 3.24 2.22-0.22 3.14 0.158384-0.22 3.14 1.32 7.72 0.697190 7.72 1.32 3.22 1.22 0.315814 3.22 1.22 1.20 2.40 0.821422 2.40 1.20 7.23 4.28 0.399981 7.23 4.28-2.21-2.42 0.428556-2.21-2.42 12
KRZYśOWANIE DIAGONALNE Jest krzyŝowaniem wieloosobniczym. Tworzy r potomków w z r rodziców w przy c = r - 1 punktach krzyŝowania. Osobniki potomne powstają w wyniku składania fragmentów w kodu po przekątnej. Dla 3 osobników: Y = [X[ 1 1,,..., X 1 c1, X 2 c1+1,, X 2 c2, X 3 c2+1,, X 3 n] Z = [X[ 2 1,,..., X 2 c1, X 3 c1+1,, X 3 c2, X 1 c2+1,, X 1 n] W = [X[ 3 1,,..., X 3 c1, X 1 c1+1,, X 1 c2, X 2 c2+1,, X 2 n] 13
X 1 X 2 X 3 Y Z W W wersji 1 potomkiem tylko potomek Y 14
OPERATORY KRZYśOWANIA UŚREDNIAJĄCEGO 15
Są specyficzne dla kodowania rzeczywistoliczbowego; Oddziałują na wartości genów chromosomów poddawanych krzyŝowaniu; Wartości kaŝdego genu chromosomów potomnych są liczbami zawierającymi się między największą i najmniejszą wartością genu chromosomów rodzicielskich. 16
KRZYśOWANIE ARYTMETYCZNE generowanie liczby losowej k z zakresu (0,1) lub jej arbitralny wybór; uśrednianie arytmetyczne wartości genów chromosomów w rodzicielskich: Y = X 1 + k (X 2 - X 1 ) W wersji z 2 osobnikami potomnymi drugi potomek: Z = X 2 + X 1 - Y 1 17
X 1 X 2 Y Z 4.0 2.22 3.11 3.11-0.2 3.14 1.56 1.56 1 7.72 4.36 4.36 3.22 1.28 k=0.5 2.25 2.25 1.21 2.45 1.83 1.83-3.42-5.14-4.28-4.28-2.21 2.43 0.11 0.11 18
X 2 Potomek 2 Rodzic 2 Potomek 1 Linia krzyŝowania k=0.25 Rodzic 1 X 1 19
KRZYśOWANIE HEURYSTYCZNE Nie jest krzyŝowaniem uśredniaju redniającym! Generowanie liczby losowej k z zakresu (0,1); Tworzy się (maksymalnie) jednego potomka: przy załoŝeniu, Ŝe X 2 X 1 Y = k (X 2 - X 1 ) + X 2 MoŜe e utworzyć potomka, który nie jest dopuszczalny, wówczas: wczas:» generuje się nową liczbę losową i tworzy nowego potomka;» Jeśli po załoŝonej onej liczbie prób b nie utworzono osobnika dopuszczalnego, to nie tworzy się potomka. 20
X 1 X 2 Y i 1.20 1.0 3.22 1.20 1.30 2.0 3.22 3.20 1.31 1.1 3.22 3.40 21
X 2 Potomek Rodzic 2 Linia krzyŝowania Rodzic 1 X 1 22
... 23
OPERATORY MUTACJI 24
MUTACJA RÓWNOMIERNAR Losowy wybór r genu w chromosomie. Przyjęcie przez gen wartości losowej (z rozkładem równomiernym) z zakresu dopuszczalnego dla danej zmiennej: Y = [X 1,..., X k,..., X n ], X k = left(k), right(k) Szczególnie uŝyteczna u we wczesnej fazie działania ania AE (gdy poŝą Ŝądane jest szerokie przeszukiwanie obszaru poszukiwań optimum). 25
MUTACJA NIERÓWNOMIERNA NaleŜy y do grupy tzw. mutacji ze strojeniem. Modyfikacja wartości wybranego genu o wartość pewnej funkcji (t,y): gdzie: Y = [X 1,..., X k,..., X n ], X k =X k + (t, right(k)-x k ) gdy wylosowano 0 X k =X k (t, X k - left(k) gdy wylosowano 1 26
Funkcja (t,y) przyjmuje wartości z zakresu [0,y]; Prawdopodobieństwo, Ŝe (t,y) jest bliskie zero wzrasta ze wzrostem czasu obliczeń (nie zaleŝy y jednak od zachowania się AE). (t,y) (t,y) y y 0 1 k 0 1 k Początkowa faza obliczeń Pod koniec działania ania AE 27
MUTACJA BRZEGOWA Jest odmianą mutacji równomiernej, r w której: X k = left(k) gdy wylosowano 0 X k = right(k) gdy wylosowano 1 Szczególnie uŝyteczna, u gdy rozwiązanie zanie optymalne leŝy na brzegu obszaru dopuszczalnego lub bardzo blisko tego brzegu). 28
MUTACJA GAUSSOWSKA Przyjęcie przez wylosowany gen wartości losowej (z rozkładem Gaussa) o wartości oczekiwanej równej r wartości przed zmianą: Y = [X 1,..., X k,..., X n ], X k = X k +N(0, N(0,σ) 29
... 30
ISTOTNOŚĆ OPERATORÓW W AG przyjmuje się często, Ŝe krzyŝowanie jest operatorem pierwszoplanowym,, podczas gdy mutacja ma za zadanie zapewniać dopływ świeŝej ej krwi do populacji i jest operatorem o mniejszym znaczeniu. Wśród d badaczy uprawiających programowanie ewolucyjne twierdzi się, Ŝe krzyŝowanie jest operatorem zbędnym dnym,, zaś mutacja jest jedynym mechanizmem przeszukiwania. Potrzebny jest co najmniej jeden taki operator genetyczny, który gwarantuje spójno jność przestrzeni genotypów - operatorem tym jest najczęś ęściej mutacja. 31
OPERATORY GENETYCZNE Z ADAPTUJĄ- CYMI SIĘ PRAWDOPODOBIEŃSTWAMI UŜyteczność większo kszości operatorów w genetycznych nie jest jednakowa w kaŝdej fazie działania ania algorytmu. Mechanizm adaptacji: Prawdop.. operatorów w genetycznych, które częś ęściej prowadzą do lepszych osobników w potomnych wzrasta kosztem operatorów mających gorsze wyniki. NaleŜy y zadbać,, aby nie zablokować Ŝadnego z operatorów (prawdop.. nie powinny osiąga gać zera) Skuteczność działania ania operatora - oceniana przez zewnętrzny proces monitorujący który steruje prawdop.. operatorów. NaleŜy y uwzględni dnić w algorytmie korzyści wynikające z działania ania pewnych operatorów w widoczne dopiero po kilku pokoleniach. 32
ZADANIA WIELO- KRYTERIALNE 33
SFORMUŁOWANIE OWANIE ZADANIA Wiele praktycznych problemów w podejmowania decyzji, projektowania itp. trudno jest sformułowa ować jako zadanie optymalizacji funkcji celu zwracającej cej jedną wartość ść. Zamiast jednego liczbowego kryterium oceny musi się uwzględnia dniać cały y ich zbiór. Nierzadko jednoczesna minimalizacja tych kryteriów w jest niemoŝliwa z powodu ich wzajemnej sprzeczności ci. 34
Przykład: Gra na giełdzie papierów w wartościowych Cel: kupowanie akcji charakteryzujących cych się minimalnym ryzykiem i jak maksymalnym zyskiem. Z reguły nie ma takich akcji, które spełnia niałyby oba kryteria jednocześnie. nie. NaleŜy odrzucić akcje, dla których istnieje co najmniej jedna inna charakteryzująca ca się jednocześnie nie mniejszym ryzykiem i wyŝsz szą rentowności cią. Akcje, które pozostały po takiej selekcji, sąs równoprawnymi rozwiązaniami zaniami zadania jednoczesnej minimalizacji ryzyka i współczynnika cena/zysk. 35
Cel: ryzyko Inwestowanie w akcje o jak najmniejszym ryzyku i jak najmniejszej wartości współczynnika cena/zysk. cena/zysk 36
Formalnie: Dany jest zbiór r (wektor) m funkcji: f (x) = [f[ 1 (x)...f m (x)]. Celem jest jednoczesna minimalizacja wszystkich kryteriów f j (x). Z reguły y kryteria nie sąs ze sobą zgodne (minimalizacja względem jednego z nich moŝe e powodować wzrost innych). Rozwiązanie zanie x jest zdominowane wtedy i tylko wtedy gdy istnieje dopuszczalne rozwiązanie zanie y nie gorsze od x (dla wszystkich kryteriów). Jeśli rozwiązanie zanie nie jest zdominowane przez Ŝadne inne rozwiązanie zanie dopuszczalne to nazywamy je rozwiązaniem zaniem niezdominowanym lub rozwiązaniem zaniem paretooptymalnym. 37
ryzyko zbiór akcji niezdominowanych cena/zysk 38
Zadanie optymalizacji wielokryterialnej polega na poszukiwaniu zbioru P punktów niezdominowanych. Szczególne przypadki: Poszukiwanie niezdominowanego punktu; Poszukiwanie zbioru punktów w niezdominowanych: duŝo o trudniejsze i w ogólnym przypadku niemoŝliwe do rozwiązania; zania; często spotyka się uproszczenie, polegające na znalezieniu moŝliwie największej ich liczby). 39
Metody optymalizacji wielokryterialnej A-priori: - decyzja podejmowana przed rozpoczęciem optymalizacji (pojedynczy cel uzyskany a priori). Zwykłe metody optymalizacji mogą być uŝyte... Interaktywne: - decyzja podejmowana podczas przeszukiwania. Wymagana interakcja z uŝytkownikiem... A-posteriori: - znalezienie zbioru rozwiązań niezdominowanych, następnie podjęcie decyzji co do wyboru rozwiązania. Konieczne metody optymalizacji wielokryterialnej... 40
Metody optymalizacji wielokryterialnej A-PRORI INTERAKTYWNE A-POSTERIORI Zalety niski koszt obliczeniowy proste w implementacji łatwo dostępne oprogramowanie decydent nadzoruje proces optymalizacji decydent uczy się prolemu preferencje są określane po fazie optymalizacji uzyskujemy więcej, niŝ 1 rozwiązanie Wady wymagana (nierealistycznie) duŝa wiedza o problemie wymagana analiza wraŝliwości niezbędna intensywna interakcja z decydentem wynik zaleŝny od wiedzy decydenta kosztowne obliczeniowo potrzebna druga faza dla dokonania wyboru; oprogramowanie nie jest tek powszechne. 41
SKALARYZACJA ZAD. WIELOKRYTERIALNEGO Sprowadzenie do problemu jednokryterialnego poprzez wprowadzenie dodatkowego kryterium, porządkuj dkują- cego punkty niezdominowane. 1. Określenie maksymalnych dopuszczalnych war- tości poszczególnych składnik adników Problem wielokryterialny sprowadza się do zagadnie- nia znalezienia dowolnego punktu dopuszczalnego. Jedno z kryteriów w moŝe e być uznane za wiodące ce. Rozwiązania zania poszukuje się stosując c metody właściwe w dla problemów w z ograniczeniami. 42
2. Wprowadzenie funkcji agregującej cej. Argumenty wartości poszczególnych składnik adników wektorowego wskaźnika jakości. W wyniku - zagregowany,, skalarny wskaźnik jakości f s (x),, będący b następnie przedmiotem optymalizacji: s [ ] f ( x) = ϕ f ( x),.. f ( x)] s 1 m ϕ s - funkcja agregująca ZaleŜnie od funkcji ϕ s róŝne metody skalaryzacji,, np.: 1. waŝone sumowanie kryteriów, 2. metoda punktu idealnego, 3. metoda punktu najgorszych oczekiwań. 43
WAśONE SUMOWANIE SKŁADNIK ADNIKÓW WEKTOROWEGO WSKAŹNIKA JAKOŚCI Najczęś ęściej stosowana technika skalaryzacji. Funkcja agregująca ϕ s jest liniowa w postaci sumy waŝonej składnik adników w wektorowego wskaźnika jakości. ϕ m f ( x),.. f ( x)] w f ( x) [ ] = s 1 m k k k = 1 Wycena poszczególnych elementów w wektorowego wskaźnika jakości. MoŜna zaakceptować pogorszenie jednego z kryteriów o pewną wielkość ść,, jeśli skompensują to korzyści wynikające z poprawy wartości innych kryteriów; Wzajemne proporcje korzyści i strat wynikają z przyję- tych współczynnik czynników w wagowych w k. 44
METODA PUNKTU IDEALNEGO Decydent podaje punkt, zwany idealnym,, znajdujący się poza obszarem dopuszczalnym. Punkt ten to idealne wartości wektorowego wskaźnika jakości. Zadanie optymalizacji wielokryterialnej sprowadza się do znalezienia rozwiąza zań niezdominowanych znajdujących się najbliŝej punktu idealnego. Funkcja agregująca ma postać: [ ] ϕ f1 ( x ),.. f ( x )] = f ( x ) f i s m min( ϕ ) s - f i punkt idealny - norma wektora. 45
Metryka euklidesowa: Metryka max: f 2 (x) obszar rozw. dopuszczalny niezdominowane f 2 (x) obszar dopuszczalny rozw. niezdominowane punkt idealny rozwiązanie zadania po skalaryzacji f 1 (x) punkt idealny rozwiązanie zadania po skalaryzacji f 1 (x) Kształty ty zbiorów w jednakowej wartości zagregowanej funkcji celu: 46
METODA PUNKTU NAJGORSZYCH OCZEKIWAŃ Metoda dualna do metody punktu idealnego. W W metodzie tej maksymalizuje się odległość od tzw. punktu najgorszych oczekiwań. max( ϕ ) s MINIMA LOKALNE SKALARNEJ FUNKCJI CELU Zastosowanie metody skalaryzacji moŝe e prowadzić do funkcji celu posiadającej więcej niŝ jedno minimum. Wskazane jest wówczas w wczas zastosowanie jednej z metod optymalizacji wielomodalnej. 47
OPTYMALIZACJA WIELOMODALNA 48
Cel: Znalezienie jak największej liczby jak najlepszych ekstremów lokalnych funkcji wielomodalnych. f(x) x 49
Podstawowa technika: utrzymywanie róŝnorodności populacji bazowej. Przeszkoda: globalność selekcji (kaŝdy osobnik konkuruje podczas reprodukcji i sukcesji z kaŝdym innym). Zapobieganie: Dodanie czynnika losowego, niezaleŝnego od stanu populacji (zwykle dodatkowy operator typu mutacji bądź losowe zaburzanie funkcji przystosowania), Zmniejszenie zasięgu selekcji (ograniczenie konkurencji do osobników znajdujących się blisko siebie w przestrzeni genotypów wyłanianie nisz). 50
Techniki wyłaniania nisz: Metody polegające na wyróŝnianiu podpopulacji na podstawie odległości genotypów; Metody koewolucyjne (równoczesna ewolucja wielu autonomicznych populacji z częściową wymianą mat. genet.); Metody dokonujące lokalnej deformacji funkcji przystosowania. f(x) f(x) x x 51
RÓWNOLEGŁOŚĆ W AE 52
1. Równoległość na poziomie implementacji: (schemat algorytmu nie zmienia się): Równoległe e generowanie osobników w w populacji początkowej; Równoległe e obliczanie funkcji przystosowania; Równoległe e wykonywanie operatorów w ewolucyjnych; Sekwencyjne dokonywanie wyboru nowej populacji (selekcja). 53
2. Równoległość na poziomie koncepcji (algorytmy koewolucyjne): Algorytm wyspowy Podpopulacje ewoluują (prawie) niezaleŝnie, nie, ze sporadyczną wymianą informacji. Parametry ewolucji a nawet funkcja przystosowania mogą być róŝne w róŝnych r podpopulacjach. Algorytm komórkowy (masowo równolegr wnoległy, dyfuzyjny) KaŜdy procesor zajmuje się ewolucją jednego osobnika, dla którego wyznaczane jest pewne sąsiedztwo s siedztwo w przestrzeni genotypów. Ewolucja odbywa się z uwzględnieniem sąsiedztwa s siedztwa (krzyŝowanie z losowymi sąsiadami). s siadami). 54
Rozproszony AE (W. Kuś) START... POPULACJA POCZĄTKOWA FEM FEM (F. CELU) FEM OPERATORY EWOLUCYJNE chromosom f. celu PROCES ZARZĄDZAJĄCY MIGRACJA N SELEKCJA WARUNEK ZATRZYMANIA T komunikacja z innymi podpopulacjami STOP Max liczba procesorów: (l. podpopulacji) (l. osobników) 55
POŁĄ ŁĄCZENIE AE Z METODAMI LOKALNYMI 56
IDEA: PUNKT Połączenie nieprecyzyjnego AE z nieodpornymi metodami STARTOWY lokalnymi. Takie połączenie prowadzi nierzadko do uzyskania algorytmu hybrydowego o właściwościach lepszych ALGORYTM od kaŝdej z wchodzących w jego EWOLUCYJNY skład metod. Warianty: algorytmy, w których metoda lokalna słuŝy do dokończenia obliczeń rozpoczętych przez AE; PUNKT STARTOWY OPTIMUM wprowadzeniu dodatkowego operatora genetycznego (np. mutacji gradientowej), który sprowadzałby się do wykonania metody lokalnej; Przeszukiwanie lokalne wykonywane podczas obliczania przystosowania osobnika. ALGORYTM EWOLUCYJNY ALGORYTM GRADIENTOWY (mutacja ALGORYTM gradientowa) GRADIENTOWY OPTIMUM 57
Np. metody stosowane kolejno: Funkcja celu 0.25 0.2 0.15 ALGORYTM EWOLUCYJNY ALGORYTM GRADIENTOWY 0.1 0.05 0 0 200 400 600 800 1000 Pokolenie 58
Na następnym wykładzie: strategie ewolucyjne; programowanie genetyczne; przykłady zastosowań AE algorytmy mrówkowe x * + sin p p y - 32 * p k 2 a y b 59
DZIĘKUJ KUJĘ FITNESS F. COMPUTATION FITNESS F. COMPUTATION START INITIAL SUBPOPULATION NA DZISIAJ... SENDING CHROM. TO COMPUTERS chromosome AND RECEIVING FITNESS F. EVOLUTIONARY OPERATORS VALUE fitness f. value MIGRATION PHASE FITNESS F. COMPUTATION communication with other subpopulations SELECTION YES TERMINATION CONDITION NO END 60