Algorytmy stochastyczne, wyklad 01 Podstawowy algorytm genetyczny

Transkrypt

Algorytmy stochastyczne, wyklad 01 Podstawowy algorytm genetyczny
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Algorytmy stochastyczne, wykład 01
Podstawowy algorytm genetyczny
J. Piersa
Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika
2014-02-21
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
In memoriam
prof. dr hab. Tomasz Schreiber (1975-2010)
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
1
Organizacja przedmiotu
Organizacja przedmiotu
2
Podstawowy algorytm genetyczny
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
3
„Mutacje” algorytmu genetycznego
Różne
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Orientacyjny program
1
Algorytmy genetyczne i ewolucyjne
2
(??) Optymalizacja mrowiskowa
3
Systemy Liendenmayera
4
Sieci bayesowskie
5
(??) Sieci qussowskie
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Organizacja przedmiotu
Literatura
Z. Michalewicz Algorytmy genetyczne + struktury danych =
programy ewolucyjne,
P. Prusinkiewicz, A. Liendenmayer The algorithmic beauty of
plants
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 przedmiotu
Podstawowy 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łady
dyskretne, prawdopodobieństwo warunkowe)
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy 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 przedmiotu
Podstawowy 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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
1
Organizacja przedmiotu
Organizacja przedmiotu
2
Podstawowy algorytm genetyczny
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
3
„Mutacje” algorytmu genetycznego
Różne
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Motywacje biologiczne
Darwin, The origin of the
species
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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Chromosomy
geny — nośniki informacji
biologicznej
geny łączą się w
chromosomy
geny w chromosomie
ustalają cechy osobnika
Źródło:
http://en.wikipedia.org/wiki/File:Gene.png
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczegó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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Dziedziczenie i zmienność genetyczna
crossover (krzyżowanie) — wymiana fragmentów materiału
genetycznego
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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczegó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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczegó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 potomek
będzie jeszcze lepszy
mutacje → nie chcemy aby rozwiązania skupiły się na jednym
fragmencie 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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Poskładajmy klocki razem
Rozpocznij ze startową populacją Pi=1
do następnej populacji wybierz osobników z
prawdopodobieństwem
X
P(X ∈ Pi+1 ) = F (X )/
F (Y )
Y ∈Pi
oceń każdego osobnika
z prawdopodobieństwem pc wybierz osobników do krzyżowania i
utwórz ich potomków
z prawdopodobieństwem pm wybierz osobników do mutacji i
zmutuj 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 przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Reprezentacja
osobnik → rozwiązanie problemu
np osobnik = [a1 , a2 , a3 , ..., aN ] — binarnie zakodowane
rozwiązanie
z osobników {o1 , o2 , ...oP } — składamy populację (w epoce
t=0)
dla t = 0 populacja losowa
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Krzyżowanie
krzyżowanie → łączymy dobre osobniki, być może ich potomek
będzie jeszcze lepszy
krzyżowanie — dwuargumentowy operator genetyczny (tzn.
bierze dwa zestawy genów i zwraca trzeci)
jak? zamiana ogonów w łańcuchach:
oi+1 ...on
S := o1 ...oi
qi+1 ...qn
Q q1 ...qi qi+1 ...qn
T := q1 ...qi
oi+1 ...on
O o1 ...oi
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczegó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 i
ogon O
pc = prawdopodobieństwo krzyżowania — duże
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Mutacje
mutacje — zmienność genetyczna
dla każdego bitu z prawdopodobieństwem pm zamień bit na
przeciwny
implementacja głupia: for po wszystkich bitach wszystkich
osobników
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Mutacje
implementacja lepsza: K = liczba bitów · liczba osobników w
populacji,
wylosuj L ∼ Binom(pm , K ), tj.
K l
P(L = l) =
p (1 − p)K −l
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ątku
populacji)
pm — małe, ok 1 zmiany na cały chromosom, np.
pm ' 1/dlugosc lancucha
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczegó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 jest
lepszy
J. Piersa
WSN 2013/2014 Wykład 01
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Motywacje Biologiczne
Algorytm genetyczny
Poszczególne kroki
Selekcja
koło ruletki:
tworzymy niesymetryczną
ruletkę z osobnikami
populacji
osobnik oi ma
prawdopodobieństwo bycia
wylosowanym
F (oi )
q∈P t F (q)
P(oi ) = P
x2
x1
x3
x9
x4
x5
x8
x6
utwórz nową populację
P t+1 poprzez kolejne
losowania kołem
J. Piersa
x10
WSN 2013/2014 Wykład 01
x7
Organizacja przedmiotu
Podstawowy 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 przedmiotu
Podstawowy 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 przedmiotu
Podstawowy 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 przedmiotu
Podstawowy 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
Organizacja przedmiotu
Podstawowy algorytm genetyczny
„Mutacje” algorytmu genetycznego
Różne
Zrównoleglenie
obliczenie funkcji oceny F
mutacje osobników
krzyżowania osobników
selekcja
J. Piersa
WSN 2013/2014 Wykład 01

Podobne dokumenty