Podział meod przeszukiwania Algorymy geneyczne - selekcja Algorymy geneyczne - krzyŝowanie Algorymy geneyczne - muacja Algorymy geneyczne - algorym działania
Opymalizacja dla funkcji jednej zmiennej Opymalizacja dla funkcji dwóch zmiennych pokolenie począkowe Funkcja dopasowania Po 0 pokoleniach Po 0 pokoleniach Jak przybliŝyć AG do przesrzeni zadania Zgodnie z hipoezą cegiełek - Algorym geneyczny dazy do osiagniecia rezulau bliskiego opimum poprzez zesawianie dobrych schemaów (o przysosowaniu powyzej sredniej) malego rzedu i malej rozpieosci. Chcemy ak dobrać sposób kodowania, by umoŝliwić efekywne znajdywanie rozwiązań Zwykłe kodowanie binarne Dwa punky leŝące blisko siebie w przesrzeni reprezenacji powinny leŝeć blisko siebie w przesrzeni zadania Tradycyjnie sosowane jes kodowanie binarnenauralny kod binarny - nie spełnia ego warunku dla wyszukiwania numerycznego: 0000-70 00 - > 0 000-34 000 -> 000-7 0 -> 4 000 -> 8 0 ->
Kod Graya Kod binarny niepozycyjny Sąsiednie liczby róŝnią się ylko na jednej pozycji 0-0000 8-00 00 -> - 000 9-0 000 -> 3 *** - 00 0-0 -> 3-000 - 0 000 -> 5 4-00 - 00 0-> 3 5-0 3-0 6-00 4-00 7-000 5-000 Binarnie czy zmiennopozycyjnie Tradycyjnie sosowane jes kodowanie binarne Gdy wymagana jes duŝa dokładność konieczne jes sosowanie długich wekorów binarnych Na przykład: obszar <-500, 500>, dokładność 0-5, wymagane kodowanie kaŝdej zmiennej za pomocą: n>log (0 8 ) = 7 biów Geneyczne operaory zmiennopozycyjne Reprezenacja: kaŝdy genoyp (rozwiązanie) reprezenowany jes jako: s=<v v... v m > gdzie v i odpowiada kolejnej zmiennej z badanego przedziału <LB, UB> Podobnie jak sposób kodowania akŝe operaory geneyczne powinny zosać dososowane do wymagań zadania Operaory muacji Muacja losowa - zmiana jednej cyfry wybranej składowej liczby zmiennopozycyjnej - wyniki niezadowalające Muacja równomierna - losowanie elemenu wekora v i a nasępnie wybór nowego v i z całej dziedziny s =<v v... v i... v m > Muacja nierównomierna - zaleŝna od liczby pokoleń Muacja nierównomierna vi + (, UB LB) dla x = 0 vi = vi (, UB LB) dla x = Muacja nierównomierna (, y) = y( r ( / T ) b ) - nr pokolenia, T- ilość pokoleń b - paramer (sopień niejednorodności) r - liczba losowa (0..) 3
Operaory krzyŝowania KrzyŜowanie prose - zdefiniowane jak dla reprezenacji binarnej, ale dozwolone punky krzyŝowania znajdują się ylko pomiędzy warościami v KrzyŜowanie arymeyczne - liniowa kombinacja wekorów. a moŝe być sałe lub zaleŝne od numeru pokolenia + s = a * s + ( a)* s x + y = a * s x y s y + ( a) * s x Przykład esowy Zadanie serowania opymalnego: N = + Takie uiŝe J min xn k= ( x + u ) Dla obieku opisanego równaniem: x k+ =x k +u k Rozwiązanie moŝna znaleźć analiycznie: J * =K o x o gdzie K o jes rozwiązaniem równania Riccaiego 0 k k Przykład esowy ZałoŜono sałą dziedzinę <LB,UB>=<-00,00> Przyjęo x o =00 i N=45, czyli kaŝdy chromosom o u=<u o,u... u 44 > Warość opymalna J * =680,4 Porównano rozwiązania z reprezenacją binarną i reprezenacją zmiennoprzecinkową Obliczenia Kodowanie binarne - 30 biów na kaŝdy elemen u i, co daje łącznie 350 biów Liczebność populacji - sała, I=60 Warunek zakończenia - liczba ieracji n=0 000 Wyniki dla operaorów zmodyfikowanych: Warość średnia w populacji: Binarne - J=934 Zmiennoprzecinkowe - J=6798 Odchylenie sandardowe: Binarne - S=6078 Zmiennoprzecinkowe - J=54 Rozwiązanie najlepsze Binarne - J=688 Zmiennoprzecinkowe - J=68 Efekywność obliczeń - liczba osobników Dla N=30 biów na elemen wekora rozwiązania Liczba Binarne Zmiennoprzecinkowe 5 080 84 5 33 398 5 537 6 35 777 83 45 9 07 4
Efekywność obliczeń - długość reprezenacji binarnej Dla I=45 osobników w populacji Liczba Binarne Zmiennoprzecinkowe 5 446 0 5355 0 7438 07 (sałe) 30 99 40 098 50 734 Wnioski Zaley reprezenacji zmiennoprzecinkowej: Wygoda jednoznacznej zaleŝności między genem a zmienną Lepsza dokładność - zwłaszcza, gdy są duŝe dziedziny Operaory dososowane do właściwości przesrzeni zadania Szybsze obliczenia Inne operaory zmiennoprzecinkowe Gdy w zadaniu wysępują ograniczenia, celowe jes uŝycie specjalnych operaorów. Przykład ograniczeń worzących dziedzinę wypukłą Muacja brzegowa - dla zadań opymalizacji, gdy rozwiązanie opymalne leŝy blisko brzegu (ograniczenia) przesrzeni rozwiązań Jes o warian muacji równomiernej, ale: s =<v v... v i... v m > v i =lef(i) lub righ(i) Przykład: max f(x,x )=4x +3x gdy: x +3x <=6-3x +x <=3 x +x <=4 0<=x <= 0<=x <= Opimum globalne (x,x )=(.5, ) Zasosowanie operaora muacji brzegowej uławia (umoŝliwia) znalezienie opimum globalnego KrzyŜowanie heurysyczne Operaor worzy jednego poomka z dwojga rodziców: x 3 =r*(x -x )+x, gdy f(x )>=f(x ) r jes losowane z zakresu 0... Poomek jes worzony w kierunku rozwiązania. Gdy wykracza poza obszar dziedziny - jes anulowany Inne meody dla zadań z ograniczeniami Kara za rozwiązanie niedopuszczalne - eval(x)=f(x)+penaly(x) penaly(x)>0 gdy ograniczenia są naruszone RóŜne sposoby liczenia kary: kara zaleŝy od sopnia naruszenia ograniczenia kary dynamiczne - rosnące ze wzrosem numeru pokolenia osobnik spoza dziedziny jes gorszy od wszyskich z dziedziny osobnik spoza dziedziny jes usuwany -kara śmierci - sraegia ewolucyjna 5
Sraegia ewolucyjna W roku 963 sudenci Uniwersyeu Berlińskiego prowadzili doświadczenia w unelu aerodynamicznym, szukając opymalnych kszałów. Tradycyjne meody opymalizacji nie dawały rezulaów. Pomysł - losowe zmiany w paramerach zgodnie z zasadami muacji nauralnej. Jes o program ewolucyjny z reprezenacją zmiennoprzecinkową i ylko operaorem muacji Klasyczna sraegia ewolucyjna Populacja składa się z osobnika Tylko jeden operaor - muacja Osobnik jes reprezenowany jako para wekorów: v=(x,d) x - punk w przesrzeni poszukiwań d - wekor odchyleń sandardowych Muacja: x + =x +N(0,d) d nie ulega zmianie N - wekor liczb gausowskich o średniej 0 i odchyleniu sandardowym d Zmuowany poomek zasępuje rodzica, ylko wedy gdy jes w dziedzinie i gdy lepiej spełnia funkcję przysosowania Jes o sraegia dwuelemenowa ( w momencie porównania rodzica i poomka) Wekor d jes modyfikowany według zasady: Sosunek p udanych muacji do wszyskich muacji powinien wynosić /5. Gdy p>/5 o zwiększ d, gdy p</5 o zmniejsz d Gdy poszukiwanie przynosi sukces - sosuj większe kroki, gdy nie ma sukcesu - zagęść poszukiwania Reguła /5 sukcesu (po k pokoleniach): d + cd * d dla p( k) < / 5 = ci * d dla p( k) > / 5 d dla p( k) = / 5 c i > c d < na przykład. i 0.8 MoŜe prowadzić do eksremum lokalnego - ulepszenie poprzez zwiększenie liczebności populacji W większej populacji moŝna wykorzysać operaor krzyŝowania - ak jak krzyŝowanie prose Zawsze worzony jes poomek, kóry rywalizuje z pozosałymi, a najsłabszy jes usuwany. (+)-SE - sraegia dwuelemenowa (µ+)-se - sraegia wieloelemenowa Paramery serujące określone są deerminisycznie Sraegie ewolucyjne samoadapacyjne (µ+λ)-se Z µ osobników worzone jes λ poomków, z kórych łącznie worzy się ponownie pokolenie µ osobników. Deerminisycznie wybierane są najlepsze osobniki (µ,λ)-se Z µ osobników worzone jes λ poomków (µ>λ), z kórych worzy się ponownie pokolenie µ osobników. KaŜdy osobnik Ŝyje ylko w jednym pokoleniu. Zalea - gdy opimum zmienia się lub jes zaszumione 6
Sosowane są operaory uczące się. Paramer d (wekor odchyleń sandardowych) nie jes sały, ani zmienny według zasad deerminisycznych lecz akŝe podlega ewolucji. Wybrane osobniki : (x, d ) = ((x... x n ) (d... d n )) (x, d ) = ((x... x n ) (d... d n )) Operaor krzyŝowania: (x, d) = ((x q... x n qn ) (d q... d n qn )) qi= lub kaŝdy elemen od wybranego rodzica lub: (x, d) = (((x + x )/... (x n + x n )/ )) ((d + d )/... (d n + d n )/))) Operaor muacji: d =d*exp(n(0,par d )) x =x+n(0, d ) Muacja skorelowana Dodakowy paramer θ związany ze skorelowaniem muacji - wybór kierunku poszukiwań KaŜdy osobnik jes reprezenowany przez (x, d, θ ) Operaory krzyŝowania - podobne jak poprzednio Operaor muacji: z (x, d, θ ) worzy (x, d, θ ) d =d*exp(n(0,par d )) θ = θ +N(0, par θ ) x =x+c(0, d, θ ) Porównanie: AG i SE Meody adapacyjnego przeszukiwania ogólnego przeznaczenia, uŝywane w róŝnych zasosowaniach. Opymalizacja parameryczna jes ylko jedną z dziedzin zasosowania Reprezenacja binarna lub zmiennoprzecinkowa Meody opymalizacji numerycznej, sosujące specjalne procedury wzrosu funkcji z samo adopującymi się paramerami d i θ Były przeznaczone do zadań opymalizacji funkcji rzeczywisych Obliczenia na zmiennych zmiennoprzecinkowych Są o programy ewolucyjne. Jes populacja moŝliwych rozwiązań, a zasada selekcji opiera się na przeŝyciu bardziej dopasowanych osobników AG i SE - proces selekcji Z populacji N osobników wybierana jes losowo z powórzeniami populacja pośrednia N osobników. Osobniki lepiej przysosowane mogą pojawić się wielokronie, szansę mają akŝe osobniki najsłabsze Selekcja zachowująca Z pokolenia µ rodziców worzy się poprzez operaory muacji i krzyŝowania pokolenie pośrednie z λ poomków. Nasępnie z (µ+ λ) lub λ wybiera się ponownie populację µ osobników poprzez deerminisyczne odrzucenie najsłabszych Selekcja wygaszająca lub pokoleniowa AG i SE - kolejność operacji Najpierw selekcja puli rodzicielskiej, poem rekombinacja (krzyŝowanie, muacja) Sałe paramery reprodukcji (prawdopodobieńswa krzyŝowania i muacji) Najpierw rekombinacja poem selekcja Paramery reprodukcji d i θ ulegają ewolucji razem z wekorem rozwiązań x. Ta samoadapacja umoŝliwia dokładne lokalne dosrojenie się sysemu AG i SE - posępowanie z ograniczeniami Na osobniki naruszające ograniczenia nakłada się karę. Nie moŝna ych osobników bezwarunkowo wyeliminować, bo wedy AG nie worzył by nowych osobników (paramery są sałe) JeŜeli poomek nie spełnia ograniczeń o jes eliminowany - nie włączany do nowej populacji. Gdy akich przypadków jes duŝo, o modyfikacji ulegają paramery rekombinacji - na przykład zmniejszenie d RóŜnice pomiędzy algorymami geneycznymi a sraegią ewolucyjną zmniejszają się. 7