Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Algorytmy stochastyczne, wykład 01Podstawowy algorytm genetyczny
J. Piersa
Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika
2014-02-21
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
In memoriam
prof. dr hab. Tomasz Schreiber (1975-2010)
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
1 Organizacja przedmiotuOrganizacja przedmiotu
2 Podstawowy algorytm genetycznyMotywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
3 „Mutacje” algorytmu genetycznegoRóżne
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Orientacyjny program
1 Algorytmy genetyczne i ewolucyjne2 (??) Optymalizacja mrowiskowa3 Systemy Liendenmayera4 Sieci bayesowskie5 (??) Sieci qussowskie
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Literatura
Z. Michalewicz Algorytmy genetyczne + struktury danych =programy ewolucyjne,
P. Prusinkiewicz, A. Liendenmayer The algorithmic beauty ofplants
P. Judea, Probabilistic reasoniings in intelligent systems:Networks of plausible inference
R. Neapolitan, Learning Bayesian Networks
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Wymagania
programowanie, algorytmy i struktury danych
język programowania wysokiego poziomu (C / C++ / C# /Java / Python ...) + biblioteki GUI
podstawy rachunku prawdopodobieństwa i statystyki (rozkładydyskretne, prawdopodobieństwo warunkowe)
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Zaliczenie
Zaliczenie wykładu:
egzamin pisemny — pytania opisowe
egzamin ustny — pytania otwarte
wymagane jest laboratoriów przed podejściem do egzaminu
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Zaliczenie
Zaliczenie laboratoriów:
projekty programistyczne (ok. 3 – 6 programów)
ocena BDB+ z laboratorium zwalnia z egzaminu
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
1 Organizacja przedmiotuOrganizacja przedmiotu
2 Podstawowy algorytm genetycznyMotywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
3 „Mutacje” algorytmu genetycznegoRóżne
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Motywacje biologiczne
Darwin, The origin of thespecies
Dla zainteresowanych —pełen tekst na wikisource:http://en.wikisource.org/wiki/The_Origin_of_Species_%281872%29
Źródło:
http://en.wikipedia.org/wiki/Charles_Darwin
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Chromosomy
geny — nośniki informacjibiologicznej
geny łączą się wchromosomy
geny w chromosomieustalają cechy osobnika
Źródło:
http://en.wikipedia.org/wiki/File:Gene.png
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Dobór naturalny
osobniki walczą o przetrwanie w naturalnych warunkach
zagrożenia zewnętrzne i wewnętrzne
osobniki słabe giną
osobniki najsilniejsze przeżywają i mają potomstwo
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Dziedziczenie i zmienność genetyczna
crossover (krzyżowanie) — wymiana fragmentów materiaługenetycznego
potomek otrzymuje (częściowo) cechy rodziców
mutacje — losowa zmiana małych fragmentów łańcucha
„gdzie wszyscy myślą tak samo, nikt nie myśli zbyt wiele”
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Nowa populacja
osobniki, które przeżyły i potomstwo tworzą nową populację
wróć do kroku 1...
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Poskładajmy klocki razem
Dany mamy... problem
osobnik → pewne rozwiązanie problemu
środowisko → mechanizm weryfikujący czy osobnik się nadaje
krzyżowanie → łączymy dobre osobniki, być może ich potomekbędzie jeszcze lepszy
mutacje → nie chcemy aby rozwiązania skupiły się na jednymfragmencie przestrzeni
selekcja → odrzucamy słabe i nie rokujące rozwiązania
następne pokolenie → powinno być lepiej dostosowane niżpoprzednie
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Poskładajmy klocki razem
Rozpocznij ze startową populacją Pi=1do następnej populacji wybierz osobników zprawdopodobieństwem
P(X ∈ Pi+1) = F (X )/∑Y∈Pi
F (Y )
oceń każdego osobnika
z prawdopodobieństwem pc wybierz osobników do krzyżowania iutwórz ich potomków
z prawdopodobieństwem pm wybierz osobników do mutacji izmutuj ich genotyp
jeżeli zachodzi warunek stopu to zakończ
i:= i+1; wróć do 2
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Reprezentacja
osobnik → rozwiązanie problemu
np osobnik = [a1, a2, a3, ..., aN ] — binarnie zakodowanerozwiązanie
z osobników {o1, o2, ...oP} — składamy populację (w epocet=0)
dla t = 0 populacja losowa
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Krzyżowanie
krzyżowanie → łączymy dobre osobniki, być może ich potomekbędzie jeszcze lepszy
krzyżowanie — dwuargumentowy operator genetyczny (tzn.bierze dwa zestawy genów i zwraca trzeci)
jak? zamiana ogonów w łańcuchach:
O o1...oi oi+1...on
Q q1...qi qi+1...qn
S := o1...oi qi+1...qn
T := q1...qi oi+1...on
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Krzyżowanie
implementacja krzyżowania:
ustal punkt cięcia i ∈ {1...N − 1}rozetnij Q i O na i-tym genie
sklej głowę O z ogonem Q, zwróć potomka
podobnie można otrzymać drugiego potomka sklejając głowę Q iogon O
pc = prawdopodobieństwo krzyżowania — duże
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Mutacje
mutacje — zmienność genetyczna
dla każdego bitu z prawdopodobieństwem pm zamień bit naprzeciwny
implementacja głupia: for po wszystkich bitach wszystkichosobników
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Mutacje
implementacja lepsza: K = liczba bitów · liczba osobników wpopulacji,
wylosuj L ∼ Binom(pm,K ), tj.
P(L = l) =
(Kl
)pl(1− p)K−l
gdzie p = pm,
wylosuj L liczb z przedziału 1..K — pozycje bitów do mutowania
zamień wylosowane bity na przeciwne (licząc od początkupopulacji)
pm — małe, ok 1 zmiany na cały chromosom, np.pm ' 1/dlugosc lancucha
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Dostosowanie
środowisko → mechanizm weryfikujący czy osobnik się nadaje
np. funkcja dostosowania jak dobry jest osobnik
F : [0, 1]N → R
jeżeli F (o1 = [0, 1, 0]) > F (o2 = [0, 1, 1]), to osobnik o1 jestlepszy
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Motywacje BiologiczneAlgorytm genetycznyPoszczególne kroki
Selekcja
koło ruletki:
tworzymy niesymetrycznąruletkę z osobnikamipopulacji
osobnik oi maprawdopodobieństwo byciawylosowanym
P(oi ) =F (oi )∑q∈Pt F (q)
utwórz nową populacjęPt+1 poprzez kolejnelosowania kołem
x1x2
x3
x4
x5
x6x7
x8
x9
x10
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Różne
Warunki stopu
liczba pokoleń
dostatecznie dobre rozwiązanie
jednolita populacja
limit czasu
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Różne
Przetrwanie najlepszego
wymuszamy przeżycie najlepiej dostosowanego osobnika
pierwszy slot w nowej populacji jest dla najlepszego
reszta — według ruletki
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Różne
Niebinarne geny
zamiast ciągu bitów jako można przyjąć ciąg liczb,
mutacja — zmiana liczby na inną z dopuszczonego zakresu,
J. Piersa WSN 2013/2014 Wykład 01
Organizacja przedmiotuPodstawowy algorytm genetyczny„Mutacje” algorytmu genetycznego
Różne
Presja genetyczna
F funkcja dostosowania (im większe F tym lepiej) i F (O) > 0
Φ(O) zależy od F (O) i C1, gdzie C1 — presja genetyczna(utrudnia wygranie słabym osobnikom)
Φ(O) = (F (O))C1 — C1 > 1 — większa presja
Φ(O) = (F (O))C1 — 0 < C1 < 1 — mała presja
J. Piersa WSN 2013/2014 Wykład 01