Wykład 9. Programowanie genetyczne. Modele probabilistyczne algorytmów ewolucyjnych. Kazimierz Grygiel. Home Page. Title Page. Page 1 of 31.

Podobne dokumenty
Metody Rozmyte i Algorytmy Ewolucyjne

Wstęp do Sztucznej Inteligencji

Strategie ewolucyjne (ang. evolu4on strategies)

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

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

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

WAE Jarosław Arabas Pełny schemat algorytmu ewolucyjnego

Programowanie genetyczne

ALGORYTMY GENETYCZNE ćwiczenia

Algorytm genetyczny (genetic algorithm)-

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

Algorytmy ewolucyjne NAZEWNICTWO

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

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

Algorytmy ewolucyjne `

Aproksymacja funkcji a regresja symboliczna

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

Algorytmy genetyczne

Algorytmy genetyczne w optymalizacji

Programowanie genetyczne (ang. genetic programming)

Dobór parametrów algorytmu ewolucyjnego

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Strategie ewolucyjne (ang. evolution strategies)

METODY SZTUCZNEJ INTELIGENCJI algorytmy ewolucyjne

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

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Obliczenia ewolucyjne - plan wykładu

Algorytmy genetyczne

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

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

Spacery losowe generowanie realizacji procesu losowego

Techniki optymalizacji

Algorytmy stochastyczne, wykład 02 Algorytmy genetyczne

Standardowy algorytm genetyczny

Algorytmy ewolucyjne (3)

Generowanie i optymalizacja harmonogramu za pomoca

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

Algorytmy genetyczne (AG)

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

Algorytmy genetyczne

Teoria algorytmów ewolucyjnych

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

Algorytmy ewolucyjne 1

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Programowanie genetyczne, gra SNAKE

Równoważność algorytmów optymalizacji

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

SZTUCZNA INTELIGENCJA

Metody klasyfikacji danych - część 1 p.1/24

Metody Kompilacji Wykład 3

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

6. Klasyczny algorytm genetyczny. 1

Automatyczny dobór parametrów algorytmu genetycznego

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Obliczenia inspirowane Naturą

Wykorzystanie metod ewolucyjnych w projektowaniu algorytmów kwantowych

Optymalizacja optymalizacji

Modyfikacje i ulepszenia standardowego algorytmu genetycznego

Optymalizacja. Wybrane algorytmy

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

METODY HEURYSTYCZNE wykład 3

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

Poprawność semantyczna

Prawa wielkich liczb, centralne twierdzenia graniczne

Metody przeszukiwania

Prawdopodobieństwo i statystyka

METODY HEURYSTYCZNE wykład 3

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

ALHE Z11 Jarosław Arabas wykład 11

Algorytmy ewolucyjne. wprowadzenie

ZASTOSOWANIE ALGORYTMU GENETYCZNEGO DO WYZNACZANIA OPTYMALNYCH DECYZJI STERUJĄCYCH

1 Genetykapopulacyjna

Problemy z ograniczeniami

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

LABORATORIUM 8 WERYFIKACJA HIPOTEZ STATYSTYCZNYCH PARAMETRYCZNE TESTY ISTOTNOŚCI

Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Języki programowania zasady ich tworzenia

Optymalizacja ciągła

ECDL Podstawy programowania Sylabus - wersja 1.0

Elementy rachunku prawdopodobieństwa (M. Skośkiewicz, A. Siejka, K. Walczak, A. Szpakowska)

Gramatyki atrybutywne

Analiza Algorytmów 2018/2019 (zadania na laboratorium)

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

Badania operacyjne egzamin

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

Algorytmy ewolucyjne

Wstęp do programowania

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

IV WYKŁAD STATYSTYKA. 26/03/2014 B8 sala 0.10B Godz. 15:15

Programowanie genetyczne - gra SNAKE

SZTUCZNA INTELIGENCJA

Temat: Algorytm kompresji plików metodą Huffmana

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

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

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

Transkrypt:

Wykład 9 Programowanie genetyczne Modele probabilistyczne algorytmów ewolucyjnych Page 1 of 31 Kazimierz Grygiel

Geneza Główny pomysłodawca: John R. Koza (Stanford University) Istota pomysłu: zastosowanie algorytmów ewolucyjnych do automatycznego tworzenia programów na podstawie ich specyfikacji Monografie: Genetic Programming: On the Programming of Computers by Means of Natural Selection (1992) Genetic Programming II: Automatic Discovery of Reusable Programs (1994) Genetic Programming III: Darwinian Invention and Problem Solving (1999) Genetic Programming IV: Routine Human-Competitive Machine Intelligence (2003) Page 2 of 31

Motywacja Żywe organizmy są ekspertami w rozwiązywaniu problemów i wykazują wszechstronność, której nie mają nawet najlepsze programy komputerowe. Zasada doboru naturalnego usuwa jedną z największych przeszkód w projektowaniu oprogramowania: konieczność uprzedniej specyfikacji wszystkich szczegółów problemu i wszystkich działań, które powinien podjąć program. Wykorzystując mechanizmy ewolucyjne badacze będą mogli «wyhodować» programy potrafiące rozwiązywać problemy o strukturze tak złożonej, że nikt ich w pełni nie rozumie. 1 Page 3 of 31 1 J. Holland, Algorytmy genetyczne. Świat Nauki, wrzesień 1992

Metodologia Definicje robocze: Algorytm: przepis na obliczanie funkcji (realizację przekształcenia), wyrażony w pewnym języku formalnym Program: zapis algorytmu w języku programowania, wyrażającym działania wykonywane przez komputer Specyfikacja: opis zależności między wejściem a wyjściem algorytmu (argumentem funkcji, a jej wartością) Postawienie problemu: Dana jest specyfikacja funkcji f. Przestrzeń rozwiązań składa się z algorytmów, obliczających funkcje należące do pewnej klasy F. Poszukujemy algorytmu, który minimalizuje błąd względem zadanej specyfikacji. ( Idealne rozwiązanie to algorytm, dla którego błąd jest równy 0.) Ale jak określić i mierzyć ten błąd? Page 4 of 31

Metoda zestawów testowych Zestaw testowy: ciąg par < x i, y i >, i = 1,..., p, gdzie x i wejścia, a y i wyjścia, spełniające zadaną specyfikację Przykłady użycia: Testowanie programów: Jeśli program przejdzie wszystkie przepisane testy, to jest uznawany za poprawny Uczenie sieci neuronowych: Jeśli sieć daje poprawne odpowiedzi na zestawie uczącym, to jest uznawana za wytrenowaną Funkcja jakości dla przekształcenia h: surowa (raw fitness): r(h) = p i=1 zmodyfikowana (adjusted fitness): a(h) = (h(x i ) y i ) 2 1 1 + r(h) Page 5 of 31

Wyrażenia symboliczne Przykład: funkcja logiczna f(p, q) zapis infiksowy: ( p q) (p q) zapis prefiksowy: p q pq zapis postfiksowy: p q pq Programy w językach wysokiego poziomu mają określoną strukturę gramatyczną, mogą być więc traktowane jako uogólnione wyrażenia W oryginalnym podejściu Koza oparł się na języku funkcyjnym LISP (reprezentacja listowa, prefiksowa), wprowadzając tzw. S- wyrażenia S-wyrażenie dla powyższego przykładu wygląda następująco: (OR (AND (NOT P) (NOT Q)) (AND P Q)) Page 6 of 31

Język termów Alfabet: A = F T, gdzie F zbiór symboli funkcyjnych; każdemu symbolowi f F odpowiada krotność (liczba argumentów) m(f) T zbiór terminali (symbole zmiennych i stałych o wartościach z określonej dziedziny) Zależnie od notacji, mogą być potrzebne dodatkowe symbole pomocnicze, takie jak (, ) i, Klasa termów L(A) (definicja rekurencyjna): jeśli x T, to x L(A) jeśli f F, m(f)=k i τ 1,..., τ k L(A), to f(τ 1,..., τ k ) L(A) Konkretyzacje: Symbole funkcyjne: operatory arytmetyczne, logiczne, symbole relacyjne, instrukcje przypisania, warunkowe (if-then-else), iteracyjne (whiledo) itp. Terminale: x, y, p, q, 0, 1 itp. Page 7 of 31

Drzewo syntaktyczne termu Różnym reprezentacjom linearnym termów odpowiada wspólna struktura: drzewo rozbioru gramatycznego (drzewo syntaktyczne) Dla przykładowej funkcji f(p, q) wygląda ono następująco: Page 8 of 31

Krzyżowanie termów Krzyżowanie polega na wymianie losowych poddrzew w drzewach syntaktycznych dwóch termów Przykład: Page 9 of 31

Mutowanie termów Mikromutacja (a) polega na losowej zmianie pojedynczego węzła (symb. funkcyjnego lub terminala) w drzewie syntaktycznym termu Makromutacja (b) polega na zastąpieniu losowo wybranego poddrzewa w drzewie syntaktycznym termu losowo wygenerowanym drzewem Przykład: Page 10 of 31

Dyskusja Linearna reprezentacja termów: chromosomy o zmiennej długości (struktury listowe) Złożone operatory genetyczne na strukturach listowych, problem dopuszczalności (poprawności) potomków Dylemat: prostota reprezentacji vs. funkcjonalna różnorodność (GA/GP) Próba kompromisu: Gene Expression Programming (Cândida Ferreira) chromosomy o stałej długości (koszt: pozycje niekodujące) naturalne operatory genetyczne (np. krzyżowanie jednopunktowe) gwarancja poprawności potomków Page 11 of 31

Gene Expression Programming K-wyrażenia: linearyzacja drzewa syntaktycznego (tu: expression tree) metodą przeszukiwania wszerz Przykład: funkcja f(p, q) pqpq Struktura genu: głowa + ogon W obrębie głowy mogą występować dowolne symbole, a w obrębie ogona tylko terminale Długość głowy : h (parametr reprezentacji); określa maks. liczbę symboli funkcyjnych w termie Długość ogona : t = (n 1) h+1, gdzie n największa krotność symbolu funkcyjnego (w drzewie liczba krawędzi = liczba wierzchołków - 1; stąd nh = h + t 1) Dla naszego przykładu n = 2, więc przy h = 5 gen mógłby wyglądać następująco (t = 6) pqpqpq, pqpqpp, pqpqqq, itp. Ostatnie dwie pozycje to pozycje niekodujące Page 12 of 31

Dekodowanie genów Zakładamy, że dla każdego symbolu funkcyjnego znana jest jego krotność (krotność terminala jest równa 0) Algorytm wczytujemy pierwszy symbol z wejścia i tworzymy korzeń drzewa; wstawiamy go do kolejki pobieramy pierwszy element z kolejki i wczytujemy tyle symboli z wejścia, ile wynosi krotność elementu; tworzymy dla nich węzły potomne i wstawiamy je na koniec kolejki jeśli kolejka jest pusta to koniec, w p.p. wracamy do poprzedniego punktu Niewczytane symbole to symbole niekodujące W ten sposób każdy gen wyznacza jednoznacznie swoją interpretację w postaci drzewa. Ciąg wczytanych symboli to pewne K-wyrażenie Symbole niekodujące odgrywają zasadniczą rolę przy wykonywaniu operacji genetycznych Page 13 of 31

Operatory genetyczne dla GEP Mutacja: uogólnienie mutacji binarnej; ograniczenie strukturalne: symbole w głowie mogą mutować dowolnie (na funkcyjne i terminale) symbole w ogonie tylko na terminale Krzyżowanie: jednopunktowe dwupunktowe zachowujące geny Ponadto: trzy rodzaje transpozycji genów Wszystkie te operacje gwarantują poprawność potomka Dalsze udoskonalenia chromosomy multigeniczne funkcje scalające (linking functions) Page 14 of 31

Mutacja przykład Drzewo syntaktyczne dla genu pqpqpq: Przypuśćmy, że w wyniku mutacji piąty symbol ( ) zmienił się na : pqpqpq. Drzewo syntaktyczne wygląda teraz następująco: Page 15 of 31

Krzyżowanie przykłady Rozważmy dwa chromosomy multigeniczne: 012345678012345678 -b+qbbabb/aqbbbaab /-a/ababb-ba-abaaa Krzyżowanie jednopunktowe z punktem podziału 2-3 w genie 1 da potomków: 012 345678012345678 -b+ /ababb-ba-abaaa /-a Qbbabb/aQbbbaab Krzyżowanie dwupunktowe z punktami podziału 2-3 w genie 1 oraz 4-5 w genie 2 da potomków: 012 34567801234 5678 -b+ /ababb-ba-a baab /-a Qbbabb/aQbb baaa Page 16 of 31

Modele probabilistyczne algorytmów ewolucyjnych Page 17 of 31

Przestrzeń populacji Sympleksem jednostkowym w R n nazywamy zbiór punktów Λ n = {(x 1,..., x n ) : x i 0, n j=1 x j = 1} Każda populacja P wielkości N (przy ustalonym N) jest jednoznacznie wyznaczona przez swój wektor częstości: r P = (k 1 /N, k 2 /N,... k n /N) W ten sposób możemy utożsamić populacje wielkości N z pewnymi punktami sympleksu Λ n, a losowanie populacji z losowaniem punktów na Λ n Z drugiej strony, wektory prawdopodobieństw wyboru (p 1, p 2,..., p n ) są również punktami sympleksu Λ n Page 18 of 31

Model RHS RHS: Random Heuristic Search Vose, M.D., Wright, A.H.: Simple genetic algorithms with linear fitness. Evolutionary Computation 2 (1993) Jest to abstrakcyjna heurystyka populacyjna, oparta na funkcji heurystycznej G : Λ n Λ n Funkcję G interpretujemy następująco: jeśli r P jest wektorem częstości populacji P, to G(r P ) jest wektorem prawdopodobieństw wyboru wyznaczonym przez tę populację (p i = G i (r P )) Mając funkcję G, możemy określić schemat iteracyjny, w którym populacja P k+1 jest tworzona poprzez pobranie próby N- elementowej z S przy użyciu wektora prawdopodobieństw G(r Pk ) Page 19 of 31

Model RHS, cd. Krok iteracyjny RHS obejmuje tylko N-krotną selekcję uogólnioną (G-selekcję): dla populacji bieżącej P k wylosuj populację potomną P k+1 przy użyciu ruletki wykalibrowanej za pomocą wektora prawdopodobieństw wyboru G(r Pk ); k := k + 1 Taki schemat odpowiada jednorodnemu łańcuchowi Markowa (o stanach należących do sympleksu Λ n ) r 0, r 1,..., r t,... z prawdopodobieństwami przejść q r,r = N! (Nr 1)!(Nr 2)! (Nr n)! G 1(r) Nr 1 G2 (r) Nr 2 Gn (r) Nr n Page 20 of 31

RHS jako model algorytmu genetycznego Pojedynczy krok (kanonicznego) algorytmu genetycznego jest stochastycznie równoważny G-selekcji przy czym funkcja heurystyczna G jest jednoznacznie wyznaczona przez parametry algorytmu i funkcję oceny f Podobnie jest dla innych AG-podobnych algorytmów ewolucyjnych Wynika stąd następujący schemat koncepcyjny ewolucji populacji: Page 21 of 31 G P 0 S π 0 P 1 G S π 1 P 2 G S π 2

Wartości oczekiwane Jeżeli π i (t) = G i (r(t)) jest prawdopodobieństwem wytworzenia elementu x i S w pojedynczej próbie, to średnia liczba kopii tego elementu w populacji P t+1 wyniesie NG i (r(t)) Zatem średnia częstość wystąpień elementu x i w populacji P t+1 jest równa E{r i (t + 1) r(t)} = G i (r(t)) Wzór powyższy zastosowany do modelu kanonicznego algorytmu genetycznego stanowi odpowiednik twierdzenia o algorytmach genetycznych w wersji dokładnej Page 22 of 31

Funkcja heurystyczna dla kanonicznego AG Niech r będzie wektorem częstości pewnej populacji elementów B m wielkości N. Mamy tu n = 2 m. Obliczymy G i (r) Oznaczenia: p s (i; r): prawdopodobieństwo wylosowania elementu i B m z populacji o wektorze częstości r wg schematu selekcji proporcjonalnej, równe r i f i n 1 r j f j j=0 p r (i, j k): prawdopodobieństwo, że element k jest wynikiem zastosowania operatora krzyżowania (prostego) do elementów i, j (nie zależy od r; można efektywnie wyznaczyć) p m (k l): prawdopodobieństwo, że element l jest wynikiem zastosowania operatora mutacji Bernoulliego do elementu k (nie zależy od r; kiedyś już policzyliśmy) Page 23 of 31

Funkcja heurystyczna dla kanonicznego AG, cd. Obliczenia: p sr (k; r): prawdopodobieństwo, że element k jest wynikiem krzyżowania dwóch osobników wylosowanych z populacji o wektorze częstości r p sr (k; r) = n 1 n 1 i=0 j=0 p s (i; r)p s (j; r)p r (i, j k) p srm (l; r): prawdopodobieństwo, że element l jest wynikiem mutacji elementu otrzymanego w wyniku krzyżowania dwóch osobników wylosowanych z populacji o wektorze częstości r (zauważmy, że p srm (i; r) = G i (r)) Ostatecznie p srm (l; r) = p srm (l; r) = n 1 n 1 n 1 k=0 i=0 j=0 n 1 k=0 p sr (k; r)p m (k l) p s (i; r)p s (j; r)p r (i, j k)p m (k l) Page 24 of 31

Algorytmy EDA Ciekawostka: w ostatnich latach zaproponowano nowy typ heurystyk populacyjnych, zwanych ogólnie Estimation of Distribution Algorithms, które można uznać za bezpośrednią realizację modelu typu RHS Ogólna charakterystyka: brak operacji genetycznych uogólniona selekcja zgodna z pewnym (zmieniającym się) rozkładem prawdopodobieństwa na S, aproksymowanym na podstawie populacji bieżącej Podejście to wymaga skonstruowania zwartego modelu rozkładu prawdopodobieństwa uprzywilejowującego dobre rozwiązania oraz mechanizmu adaptacji parametrów tego modelu Page 25 of 31

Przykład: Compact Genetic Algorithm (cga) Harik, Lobo, Goldberg Zwarty model stacjonarnego AG bez mutacji, z krzyżowaniem jednostajnym Populacja P reprezentowana przez wektor częstości alleli (w postaci jawnej nie występuje) Model rozkładu prawdopodobieństwa osobników: niezależne allele P {X 1 = x 1, X 2 = x 2,..., X m = x m } = m Krok iteracyjny: i=1 P {X i = x i } generujemy dwa osobniki wg rozkładu wyznaczonego przez wektor częstości alleli rozgrywamy turniej dwuosobowy modyfikujemy wektor częstości alleli symulując zastąpienie pokonanego przez zwycięzcę Page 26 of 31

cga szczegóły struktury danych: p[1..m] -- tablica częstości alleli równych 1 winner[1..m], loser[1..m] -- osobniki n -- symulowany rozmiar populacji inicjacja: for i := 1 to m do p[i] := 0.5; generowanie osobnika x: for i := 1 to m do x[i] := (random < p[i]); aktualizacja tablicy p: for i := 1 to m do if winner[i] <> loser[i] then if winner[i] = 1 then p[i] := p[i] + 1/n else p[i] := p[i] - 1/n warunek zatrzymania: fiksacja wszystkich alleli (p[i] = 0 lub p[i] = 1) (końcowa wartość reprezentuje wynik) Page 27 of 31

Poprawność i jakość algorytmu ewolucyjnego Czy dla zadanej funkcji oceny algorytm znajduje kiedyś rozwiązanie optymalne? (zbieżność) jeśli tak, to po jakim czasie? (efektywność) jak zależy błąd znalezionego rozwiązania od liczby iteracji? (tempo zbieżności) W przypadku algorytmu ewolucyjnego zbieżność jest namiastką poprawności Pozostałe dwie kwestie dotyczą jego jakości Page 28 of 31

Zbieżność do optimum globalnego Prawo wielkich liczb (mocne) dla nieskończonego ciągu doświadczeń Bernoulliego: P { lim n r n = p} = 1 Słownie: częstość sukcesów po n próbach (r n ) dąży do prawdopodobieństwa sukcesu (p) prawie na pewno, tj. z prawdopodobieństwem 1 Definicja: algorytm ewolucyjny jest zbieżny do optimum globalnego funkcji oceny f, jeżeli gdzie: f = opt x S f(x) f (P ) = opt x P f(x) P { lim t f (P t ) = f } = 1 Powyższa własność jest interesująca głównie z teoretycznego punktu widzenia Page 29 of 31

Kryteria zbieżności do optimum globalnego Definicje: Populacja P jest ε-optymalna, jeżeli f (P ) f ε (ε > 0) Zbiór populacji ε-optymalnych: Π ε Algorytm ewolucyjny jest zachowawczy, jeżeli P {P t+1 Π ε P t Π ε } = 1 Algorytm ewolucyjny jest progresywny, jeżeli dla każdego ε > 0 istnieje stała δ > 0, taka że P {P t+1 Π ε P t Π ε } δ Twierdzenie (Rudolph): Jeżeli algorytm ewolucyjny jest zachowawczy i progresywny, to jest zbieżny do optimum globalnego funkcji oceny Page 30 of 31

Wnioski Algorytm ewolucyjny z operatorem mutacji Bernoulliego i zachowujący najlepsze znalezione rozwiązanie jest zbieżny do optimum globalnego f dla dowolnej funkcji f : B n R Dowód: algorytm jest zachowawczy (elitaryzm) algorytm jest progresywny ze stałą δ = p n dla każdego ε: p m (k l) p n dla dowolnej pary chromosomów k, l, zatem w każdym kroku algorytm może z prawdopodobieństwem co najmniej p n wytworzyć optimum globalne (gdzie p: punktowe prawdopodobieństwo mutacji) Podobny wynik można uzyskać w przypadku strategii ewolucyjnych z selekcją typu µ + λ dla tzw. regularnych problemów optymalizacji parametrycznej Page 31 of 31