• Nie Znaleziono Wyników

Algorytm ewolucyjny.

N/A
N/A
Protected

Academic year: 2021

Share "Algorytm ewolucyjny."

Copied!
21
0
0

Pełen tekst

(1)

ALHE

Jarosław Arabas Algorytm ewolucyjny

(2)

Stochastyczny algorytm

wspinaczkowy (bez modelu)

Losowy sąsiad Wybór najlepszego punktu

(3)

Losowy sąsiad

Nieklasyczne błądzenie

przypadkowe

Wybór dowolnego punktu

(4)

Wariant pośredni

protoplasta algorytmu ewolucyjnego

Losowy sąsiad

Wybór punktu

z prawdopodobieństwem zależnym od jakości

(5)

Algorytm ewolucyjny

algorytm ewolucyjny inicjuj P 0  {x1, x2... x} t  0 while ! stop for i ∈1: if a pcO t ,i   mutationcrossover  select  P t  , k  else O t ,i   mutationselect  P t  ,1 P t1  replacement  P t  ,O t t  t1

a jest zmienną losową

(6)

Krzyżowanie Mutacja

Algorytm ewolucyjny

sposób przetwarzania punktów

Reprodukcja

(7)

Algorytm ewolucyjny (z elitą)

sposób przetwarzania punktów

(8)

Algorytm ewolucyjny

sposób przetwarzania punktów

R(t) O(t) P(t+1)

`

Krzyżowanie Mutacja Zastępowanie (sukcesja)

P(t)

(9)

Algorytm ewolucyjny

selekcja (reprodukcja, selection)

wybrać lepsze punkty z P(t) z większym prawdopodobieństwem niż gorsze

krzyżowanie (crossover)

wygenerować punkt “pośredni”, typowo k=2

mutacja (mutation)

wygenerować punkt z otoczenia

sukcesja (zastępowanie, replacement)

(10)

Typy selekcji (najczęstsze)

● proporcjonalna (ruletkowa) ● turniejowa

● progowa

(populacja posortowana dla turniejowej i progowej)

ps(P(t ,i))= q (P(t ,i))+a

j (q (P(t , j))+a) ps(P(t ,i))=

{

1 θμ i≤θμ 0 w p.p.

}

ps(P(t ,i))= 1 μs ((μ−i+1) s −(μ−i)s)

(11)

Selekcja turniejowa

psP t , i= 1 s −i1 s−−is  P(t) 1 5 7 Szranki s miejsc 5

Losowanie ze zwracaniem s numerów z zakresu 1..8 z rozkładem jednostajnym

Reprodukcji podlega punkt ze szranek, dla którego wartość f. celu jest największa

(12)

Rangowe metody selekcji

0 20 40 60 80 100 120 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 Progowa(1/7) Turniej(2) Turniej(5) ranga punktu p-st w o se le kc ji

(13)

y=krzyżowanie(x1, x2)

(14)

Typy krzyżowania (przykłady)

● Ogólny zapis metody krzyżowania

● jednopunktowe

zmiana 0->1 w losowo wybranym miejscu

● równomierne

p-stwo zera i jedynki jednakowe

● Arytmetyczne

ważone uśrednianie z losowymi współczynnikami

y=w⋅x1+(1−w)⋅x2

gdzie a⋅b=c , ci=aibi w=[0,..,0,1,.. ,1]

w=[0,1,0,1,1,0,0,0,1,1,...]

(15)

Gd GdOl GdSz GdBy GdWa GdByWa GdByL GdWaOl GdWaBi GdWaLu GdWaKi GdWaBy GdWaL GdByLWr GdByLKa GdByLPo GdByLKaKr GdByLKaWr GdWaKiKr GdWaLPo GdWaLWr GdWaLKa GdWaLKaWr GdWaLKaKr

Typy krzyżowania

(przykłady)

(16)

Idea mutacji

Po mutacji

y=mutacja(x)

(17)

Typy mutacji (przykłady)

● Mutacja rozkładem normalnym z macierzą

kowariancji C

● Mutacja rozkładem alfa-stabilnym

● Mutacja bitowa (zamiana wartości bitu na

(18)

Gd GdOl GdSz GdBy GdWa GdByWa GdByL GdWaOl GdWaBi GdWaLu GdWaKi GdWaBy GdWaL GdByLWr GdByLKa GdByLPo GdByLKaKr GdByLKaWr GdWaKiKr GdWaLPo GdWaLWr GdWaLKa GdWaLKaWr GdWaLKaKr

Typy mutacji

(przykłady)

(19)

Typy zastępowania

● generacyjne ● elitarne ● steady-state P t1=O t  P t1={k najlepszych z P t }∪O t  =1 P t1=P t ∖ {P t , b}∪O t 

(20)

Algorytm ewolucyjny

(sukcesja nieelitarna)

● Poinformowanie T ● Determinizm N

● Typ modelu brak

● Lokalność wariacji N/T (zależy od mutacji) ● Miękkość selekcji T/N (zależy od jej typu) ● Rozmiar okna historii liczność populacji ● Zupełność asymptotyczna/brak

(21)

Algorytm ewolucyjny

(sukcesja elitarna)

● Poinformowanie T ● Determinizm N

● Typ modelu pamięciowy ● Wielkość modelu 1 lub więcej

● Lokalność wariacji N/T (zależy od mutacji) ● Miękkość selekcji T/N (zależy od jej typu) ● Rozmiar okna historii nieskończony

Cytaty

Powiązane dokumenty

1 Elementy sztucznego kodu genetycznego zapisane w postaci wartości (np. liczb) mogą być traktowane jak pierwotne sztuczne geny, a elementy sztucznego kodu

Element systemowego ujęcia krzyżowania wynikał z uporządkowania par rodzicielskich po każdej generacji algorytmu SAE w układzie od max do min oraz wyliczaniu ich

KAE wykorzystano m.in. do poprawy parametrów ruchu końca ramienia ro- bota PR-02 wzorując się na podstawowych założeniach algorytmu ewolucyjne- go [6-7,18-27], który uzupełniono

pobieranie wektorów czteroelementowych [Θ 1 , λ 2 , λ 3 , Θ 4 ] określających jeden punkt pierwotnego przebiegu trajektorii z puli 30 punktów, losowanie

• Algorytmy populacyjne: algorytm genetyczny, algorytm ewolucyjny, ewolucja różnicowa, optymalizacja rojem cząstek →.. • Algorytmy inteligencji rojowej: boidy Reynoldsa,

Zagadnienia: pojęcie algorytmu, przejście od algorytmu do programu, za- pis składni programu, typy danych, stałe, zmienne, operatory, wy- rażenia, drzewa wyliczania wartości

Napisz program, który sprawdzi, czy wczytana liczba całkowita jest większa od zera, a na- stępnie czy jest ona równa 7. Na ile różnych sposobów można skonstruować

Wpro- wadzanie do szkół metody odkrywania przez rozumowanie w nauczaniu przedmiotów przyrodniczych jest wykonalne jedynie metodą małych, acz- kolwiek konsekwentnych