• Nie Znaleziono Wyników

Strategie ewolucyjne

N/A
N/A
Protected

Academic year: 2021

Share "Strategie ewolucyjne"

Copied!
6
0
0

Pełen tekst

(1)

Strategie ewolucyjne

Systemy Sztucznej Inteligencji Instrukcje do ćwiczeń laboratoryjnych

Zadania do wykonania

Szukanym rozwiązaniem jest znalezienie takiej wartości wektora dwuelementowego [x 1 , x 2 ], które maksymalizowałoby funkcję F(x 1 ,x 2 )=sin(x 1 *0.05)+sin(x 2 *0.05)+0.4*sin(x 1 *0.15)*sin(x 2 *0.15), przedział zmienności x 1 i x 2 to [0; 100]. Oto wykresy tej funkcji:

1. Optymalizacja rojem cząstek (PSO- Particle Swarm Optimization)

Algorytm polega na symulacji zachowania się stada. Każdy pojedynczy osobnik zawiera

rozwiązanie stawianemu problemowi (w tym przypadku maksymalizacja funkcji F(x 1 ,x 2 )).

(2)

Algorytm do pracy wymaga tylko 3 parametry sterujące r inercji , r glob , r lok (o wartości (0;1)) i parametry dodatkowe jak liczba osobników N i przedział zmienności każdego atrybutu. Przy wyznaczaniu ruchu pojedynczego osobnika (czyli zmian wartości x 1 ,x 2 tego osobnika) brane są pod uwagę 3 składowe:

1. bezwład,

2. kierunek do rozwiązania optymalnego globalnie, 3. kierunek do rozwiązania optymalnego lokalnie.

W każdej iteracji algorytmu PSO najpierw jest wyliczana prędkość zmiany każdej wartości , każdego osobnika, która się składa z sumy:

1. poprzedniej prędkości pomnożonej przez współczynnik inercji r inercji ,

2. różnicy w między rozwiązaniem najlepszym globalnie a aktualnym pomnożonym przez zmienną losową z przedziału (0;1) i współczynnik przyciągania do rozwiązania globalnie optymalnego r glob ,

3. różnicy w między rozwiązaniem optymalnym lokalnie a aktualnym pomnożonym przez zmienną losową z przedziału (0;1) i współczynnik przyciągania do rozwiązania lokalnie optymalnego r lok .

Optimum lokalne jest wyznaczane dla każdego osobnika oddzielnie, natomiast optimum globalne (tak naprawdę to nie optimum globalne, tylko najlepsze rozwiązanie obecnie znalezione) jest wspólne dla wszystkich osobników. W tym wariancie PSO optimum lokalne to najlepsze dotychczas osiągnięte rozwiązanie dla danego osobnika.

Pseudokod

1. Pobierz parametry N (liczba osobników), r inercji (wpływ bezwładu), r glob (przyciąganie do optimum globalnego), r lok (przyciąganie do optimum lokalnego) , x min,i , x max,i (zakresy zmienności każdego z atrybutów), iteracje_liczba (liczba iteracji)

2. Stworzenie w sposób losowy populacji składającej się z N osobników i skopiowanie tych wartości jako optima lokalne (X (lok) ) dla każdego osobnika

X (lok) j,i =X j,i - losowa wartość z przedziału [x min,i ; x max,i ] , j - to numer osobnika, i – to numer wejścia (tutaj są dwa wejścia)

3. Stworzenie tablicy dwuwymiarowej określającej prędkość o rozmiarze N x n (n - liczba atrybutów, N – liczba osobników) o początkowych wartościach równych zero,

V j,i = 0 - to prędkość j-tego osobnika, i-tego atrybutu.

4. Wykonaj algorytm w pętli przez iteracje_liczba razy.

4.1. Oceń wszystkie osobniki (za pomocą funkcji F()).

4.2. Niech x glob = osobnik z najlepszą oceną.

4.3. Wykonaj pętlę po wszystkich osobnikach, niech j to identyfikator osobnika.

(3)

4.3.1. Jeśli ocena x (lok) j jest gorsza niż ocena x j wtedy x (lok) j := x j .

4.4. Wykonaj pętlę po wszystkich osobnikach, niech j to identyfikator osobnika.

4.4.1. Wylosuj wartości rnd glob , rnd lok z przedziału (0;1).

4.4.2. Wykonaj pętle po wszystkich atrybutach, niech i to identyfikator atrybutu.

4.4.2.1. Wylicz nową prędkość dla każdego i

V j,i := V j,i *r inercji + (x glob,i – x j,i )*r glob *rnd glob + (x (lok) j , i – x j,i )*r lok *rnd lok . 4.4.2.2. Zastosuj wyznaczoną prędkość X j,i := X j,i + V j,i .

Zadanie do wykonania

Należy za pomocą algorytmu PSO znaleźć możliwie jak największą wartość funkcji

F(x 1 ,x 2 )=sin(x 1 *0.05)+sin(x 2 *0.05)+0.4*sin(x 1 *0.15)*sin(x 2 *0.15), przyjmując, że x 1 ,x 2

mieszczą się w przedziale [0; 100]. Parametry N, r inercji , r glob , r lok , iteracje_liczba należy dobrać eksperymentalnie, lecz:

N ma być > 1 (sugeruje się 4),

• r inercji , r glob , r lok ma się mieścić w przedziale (0;1) (sugeruje się odpowiednio 0,2; 0,3;

0,3),

iteracje_liczba raczej powinna być większa od 4 (sugeruje się 30).

Przykład działania:

0. iteracja:

1. iteracja:

(4)

10. iteracja:

1. Algorytm świetlików (FA- Firefly algorithm)

(nieobowiązkowy, instrukcja wymaga poprawy)

Algorytm polega na symulacji zachowania się stada pozbawionych płci świetlików. Każdy osobnik świeci z pewnym natężeniem, im posiada on lepszą funkcję przystosowania, tym poziom świecenia jest wyższy. Pojedynczy osobnik „przyciągany” jest przez inne osobniki o wyższym od niego poziomie jasności (lepszej wartości funkcji przystosowania), siła przyciągania nie zależy od tego jak bardzo jeden osobnik jest lepszy od drugiego. Przyciąganie jest tym mniejsze, im odległość między osobnikami rośnie.

Parametrami FA są:

• beta 0 - maksymalny poziom przyciągania do lepszego osobnika,

• gamma – określa jak bardzo przyciąganie spada wraz z odległością, ponieważ wyznaczenie dobrego gamma jest trudne, dlatego zaproponowano

gamma= gamma 0 r max ,

gdzie r max to odległość maksymalna (maksymalna możliwa odległość między osobnikami, albo maksymalna odległość między aktualnymi osobnikami, albo maksymalna odległość między początkowymi osobnikami), a gamma 0 to parametr > 0,

• mu – określa poziom losowej zmiany, w celu ułatwienia sobie zadania ustalenia tej zmiennej przyjmuje się, że mu jest różne dla każdego atrybutu i wynosi

mu i = zakres i ∗mu 0 ,

(5)

gdzie zakres i to różnica między maksymalną a minimalną wartością i-tego atrybutu, a mu o to parametr FA, mu 0 ∈(0 ;1) .

Pseudokod

1. Pobierz parametry N (liczba osobników), beta 0 (max. poziom przyciągania), gamma 0

(wpływ odległości na moc przyciągania), mu 0 (poziom mutacji) , x min,i , x max,i (zakresy zmienności każdego z atrybutów), iteracje_liczba (liczba iteracji)

2. Wyliczenie gamma ,mu i , gdzie i to identyfikator atrybutu wejściowego.

3. Stworzenie tablicy dwuwymiarowej X określającej położenie początkowe osobników o rozmiarze N x n (n - liczba atrybutów, N – liczba osobników) o początkowych wartościach wylosowanych korzystając z zakresu zmienności każdego atrybutu (x min,i , x max,i )

X j,i = wartość i-tego atrybutu, dla j-tego osobnika.

4. Wykonaj algorytm w pętli przez iteracje_liczba razy.

4.1. Oceń wszystkie osobniki (za pomocą funkcji F()), niech F i to aktualna ocena osobnika x i .

4.2. Pętla po wszystkich osobnikach, a to identyfikator osobnika. Najlepiej, aby a było iterowane w losowej kolejności (na przykład 0; 2; 1; 3).

4.2.1. Pętla po wszystkich osobnikach, b to identyfikator osobnika. Najlepiej, aby b było iterowane w losowej kolejności.

4.2.1.1. Jeśli przystosowanie b-tego osobnika jest lepsze niż a-tego osobnika, czyli F b > F a

4.2.1.1.1. Wylicz poziom przyciągania beta=beta 0 ∗e −gamma∗odległość (x

a

, x

b

)

2

. 4.2.1.1.2. Zastosuj przyciąganie X a , i = X a , i +beta∗( X b ,iX a ,i ) , dla każdego i.

4.2.1.1.3. Uaktualnij wartość F a

4.2.2. Dodaj mutację, czyli X a,i += losowa z przedziału (-mu i ; +mu i ), dla każdego i.

4.2.3. Uaktualnij wartość F a

Zadanie do wykonania

Należy za pomocą algorytmu FA znaleźć możliwie jak największą wartość funkcji

F(x 1 ,x 2 )=sin(x 1 *0.05)+sin(x 2 *0.05)+0.4*sin(x 1 *0.15)*sin(x 2 *0.15), przyjmując, że x 1 ,x 2

mieszczą się w przedziale [0; 100]. Parametry N, beta 0 , gamma 0 , mu 0 , iteracje_liczba należy dobrać eksperymentalnie, lecz

N ma być > 2 (sugeruje się 4),

beta 0 ∈( 0 ;1 ] , (sugeruje się 0.3)

gamma 0 ∈(0 ;1) , (sugeruje się 0.1)

(6)

mu 0 ∈( 0 ;1) , (sugeruje się 0.05)

iteracje_liczba raczej powinna być większa od 4 (sugeruje się 30).

Cytaty

Powiązane dokumenty

Pomijając już fakt, że w MWSH-P funkcjonuje odrębny wydział historyczny, podejmujący przecież także, a może i przede wszystkim, ogólną problematykę historii, to wiele

Legenda: MBWDI - Motyw bycia ważnym dla innych, MR - Motyw rozumności, MPS - Motyw poszukiwania sensu, wartości, MKiDS - Motyw kompetencji i doskonalenia

Кроме того проекции структурных моделей (например: языковой код // генетический код) основывались на симметрии функциональных

Artykuł umieszczony jest w kolekcji cyfrowej bazhum.muzhp.pl, gromadzącej zawartość polskich czasopism humanistycznych i społecznych, tworzonej przez Muzeum Historii Polski

[r]

Tezy na V Zjazd PZPR, zwłaszcza w tym zakresie, w jakim odnoszą • się one do życia zawodowego, organizacyjnego i politycznego w adwoka­ turze, powinny się

(Sygietyński, Niedź- wiecki, Konar, Ostoja-Sawicka), który również przed drugą wojną będzie się jeszcze tlił u Zbigniewa Uniłowskiego.. W.Ł.: Zajmuje się Pan

Таким чином, гарантований державний борг має неоднозначну природу: з одного боку, платежі щодо його обслуговування здійснюються з власних ресурсів