background image

Podstawy algorytmów 

ewolucyjnych 

Dariusz Badura 

background image

Ewolucyjne projektowanie 

0

1

0

1

1

0

1

0

1

1

1

1

0

0

1

0

1

0

0

1

1

1

0

1

1

1

0

1

0

0

1

1

0

1

0

0

1

1

0

0

1

1

1

0

1

0

0

1

0

1

1

1

0

0

1

0

0

1

0

0

1

1

0

1

0

0

1

1

0

0

Fitness

30

14

14

28

18

0

1

0

1

1

0

1

0

1

1

1

1

0

1

1

1

1

0

0

1

1

1

1

0

1

0

0

1

0

1

1

1

1

0

1

0

0

1

0

1

1

1

0

1

1

1

1

0

0

1

1

1

1

1

1

1

0

1

0

1

1

0

1

0

1

0

1

0

0

1

1

1

1

0

0

1

0

0

0

1

1

1

1

0

1

0

1

0

0

0

2. Evaluate Circuit

3. Select Breeding Pairs

1. Create New Population

4. Cross Over

5. Mutate

6. Insert Into New Population

Iterate until

stopping conditions

are met

background image

Ewolucyjne przeszukiwanie 

... oznaczać będzie poszukiwanie rozwiązania problemu – 
zadania poprzez wprowadzenie losowego generowania 
rozwiązań z wykorzystaniem operatorów genetycznych. 

W celu porównania skuteczności ewolucyjnego i losowego 
przeszukiwania należałoby porównać czas poszukiwania 
satysfakcjonującego rozwiązania obiema metodami.  

Aktywne przeszukiwane nazywać będziemy aktywnym, jeżeli w  
poszukiwaniu rozwiązania będzie wykorzystana wiedza o 
problemie ułatwiająca podjęcie decyzji o kierunku poszukiwań 
rozwiązania.  

background image

Metody ewolucyjne 

... algorytmy ewolucyjne obejmują następujące 

metody rozwiązywania problemów: 

• algorytmy ewolucyjne „ciągłe”, 
• algorytmy genetyczne, 
• programowanie genetyczne, 
• projektowanie ewolucyjne DNA 
• inne pokrewne, w których występuje ewoluująca 

np.. metoda sztucznej immunologii. 

background image

Kodowanie rozwiązania 

• EA – algorytmy ewolucyjne 

• GA – algorytmy genetyczne 

• GP – programowanie genetyczne 

• DNA – algorytmy oparte o mechanizmy 

biologiczno-chemiczne DNA-RNA 

background image

Rozwiązanie problemu z 

wykorzystaniem algorytmów 

ewolucyjnych  

Problem 

Kodowanie  
rozwiązania 

funkcja  

oceniająca 

operatory 

genetyczne 

wiedza 

genetyczne 
poszukiwanie 

ocena 

osobników 

Rozwiązanie 

selekcja 

replikacja 

operacje  
genetyczne 

mutacja 

background image

Algorytm ewolucyjny 

Inicjacja 
 populacji 

Ocena 
populacji 

Selekcja 
osobników 

Tworzenie  
nowej 
populacji 

Operacje  
genetyczne 

Rozwią- 

zanie 

czy spełniony 
war. term. ? 

background image

Elementy algorytmu – selekcja  

 

• proporcjonalne przypisanie wartości 

dostosowania 

• przypisanie wartości dostosowania na podstawie 

rankingu 

background image

Selekcja – ogólne zasady 

Podczas selekcji wyznaczane są osobniki biorące 

udział w tworzeniu potomstwa.  

W pierwszym kroku przypisywana zostaje wartość 

przystosowania. Każdy osobnik z puli selekcyjnej 
otrzymuje prawdopodobieństwo reprodukcji zależne od 
własnej obiektywnej  wartości oraz od obiektywnej 
wartości pozostałych osobników puli selekcyjnej.  

To przystosowanie stosowane jest do aktualnej 

selekcji następnego kroku.  

background image

Selekcja 

Osobniki rodzicielskie są wybierane na podstawie 

wartości funkcji dostosowania za pomocą 
następujących algorytmów:  

• selekcja koła ruletki,  

• stochastycznego uniwersalnego próbkowania, 

• selekcja lokalna,  

• selekcji odcięcia lub 

• selekcji turniejowej.  

background image

Selekcja – parametry  

Presja selekcji – selective pressure:  

Prawdopodobieństwo najlepszego osobnika będącego w selekcji 
porównane do średniego prawdopodobieństwa selekcji 
wszystkich osobników.    

Skłonność – bias:  

Wartość absolutna różnicy pomiędzy znormalizowaną wartością 
przystosowania osobnika i jego oczekiwanego 
prawdopodobieństwa reprodukcji.
  

Rozpostarcie – spread:  

Zakres możliwych wartości liczby potomstwa pochodzących od 
osobników.  

background image

Selekcja – parametry 

Utrata różnorodności – loss of diversity:  
Proporcja osobników populacji, które nie zostały 
wyselekcjonowane w fazie selekcji.  
Intensywność selekcji – selection intensity:  
Oczekiwana średnia wartość dostosowania populacji po 
zastosowaniu metody selekcji do znormalizowanego rozkładu 
Gaussa.  
Wariancja selekcji – selection variance:  
Oczekiwana wariancja rozkładu dostosowania populacji po 
zastosowaniu metody selekcji do znormalizowanego rozkładu 
Gaussa.  

background image

Metoda rankingu 

N

ind

 – liczba osobników w populacji,  

Pos – pozycja osobnika w rozpatrywanej populacji. (najmniej 
dostosowany osobnik ma wartość Pos=1, a najlepiej 
dostosowany osobnik wartość Pos=Nind)  
SP – presja selekcji.  
Ranking liniowy: 
Wartość funkcji dostosowania dla dowolnego osobnika jest 
wyznaczana wzorem:  

Wartość SP (presji selekcji) mieści się w zakresie [1.0, 2.0].  

1

)

1

(

*

)

1

(

*

2

2

)

(

Nind

Pos

SP

SP

Pos

Fitness

background image

Ranking nieliniowy 

Dopuszcza większe wartości presji selekcji, przy funkcji 
dostosowania określonej wzorem:
  

X jest pierwiastkiem wielomianu:  

lub w innej postaci: 

Ranking nieliniowy pozwala kształtować wartości presji selekcji 
(SP) w zakresie [1.0, N

ind

 - 2.0].  

Nind

i

i

Pos

X

X

Nind

Pos

Fitness

1

1

)

1

(

*

)

(

SP

X

SP

X

SP

X

Nind

SP

Nind

Nind

*

*

*

)

(

0

2

1

1

*

1

1

*

0

Nind

Nind

X

Nind

X

X

SP

background image

Funkcja dostosowania  

liniowego i nieliniowego rankingu 

Wartość oceny 

wartość dostosowania (param.: presja selekcji) 

ranking liniowy 

bez rank. 

ranking nieliniowy 

2,0 

1,1 

1,0 

3,0 

2,0 

2,0 

1,10 

1.0 

3,00 

2,00 

1,8 

1,08 

1.0 

2,21 

1,69 

1,6 

1,06 

1.0 

1,62 

1,43 

1,4 

1,04 

1.0 

1,16 

1,21 

1,2 

1,02 

1.0 

0,88 

1,03 

1,0 

1,00 

1.0 

0,65 

0,87 

10 

0,8 

0,98 

1.0 

0,48 

0,74 

15 

0,6 

0,96 

1.0 

0,35 

0,62 

20 

0,4 

0,94 

1.0 

0,26 

0,53 

30 

0,2 

0,92 

1.0 

0,19 

0,45 

95 

0,0 

0,90 

1.0 

0,14 

0,38 

background image

Funkcja dostosowania  

liniowego i nieliniowego rankingu 

0,0 

0,5 

1,0 

1,5 

2,0 

2,5 

10 

11 

Serie1 

Serie2 

background image

Funkcja dostosowania  

liniowego i nieliniowego rankingu 

0,00 

0,50 

1,00 

1,50 

2,00 

2,50 

3,00 

3,50 

1.0 

1.0 

1.0 

1.0 

1.0 

1.0 

1.0 

1.0 

1.0 

1.0 

1.0 

1,10 

1,08 

1,06 

1,04 

1,02 

1,00 

0,98 

0,96 

0,94 

0,92 

0,90 

2,0 

1,8 

1,6 

1,4 

1,2 

1,0 

0,8 

0,6 

0,4 

0,2 

0,0 

f.

 d

os

to

so

w

ania

 

Ranking nieliniowy 

Serie1 

Serie2 

background image

Właściwości selekcji 

rankingowej 

1

*

)

1

(

)

(

 SP

SP

SelInt

Rank

4

1

)

(

SP

SP

LossDiv

Rank

2

2

))

(

(

1

)

1

(

1

)

(

SP

SelInt

SP

SP

SelVar

Rank

Rank

Intensywność selekcji: 
 
 
 
Utrata różnorodności: 
 
 
 
Wariancja selekcji: 

background image

Właściwości selekcji rankingowej 

background image

Selekcja koła ruletki 

Number of 
individual 

1  

2  

3  

4  

5  

6  

7  

8  

9  

10  

11  

fitness value 

2.0  

1.8  

1.6  

1.4  

1.2  

1.0  

0.8  

0.6  

0.4  

0.2   0.0  

selection 
probability 

0.18   0.16   0.15   0.13   0.11   0.09   0.07   0.06   0.03   0.02   0.0  

Próbka 6 wylosowanych liczb:  
0.81, 0.32, 0.96, 0.01, 0.65, 0.42.  

Po selekcji tworzona populacja rodzicielska obejmuje 
osobników:
 1, 2, 3, 5, 6, 9.  

background image

Stochastyczne uniwersalne 

próbkowanie 

Dla wyselekcjonowania 6 osobników odległość pomiędzy 
wskaźnikami wynosi 1/6=0.167.  
Zatem próbka jednej liczby w zakresie [0, 0.167]:  

0.1.  

Po selekcji populacja rodzicielska zawiera następujące 
osobniki:
  

1, 2, 3, 4, 6, 8.  

background image

Selekcja lokalna 

background image

Selekcja odcięcia 

truncation 
threshold 

1%  

10
%  

20
%  

40
%  

50
%  

80
%  

Selection 
intensity 

2.66   1.76   1.2   0.97   0.8   0.34  

Zależność pomiędzy 
pomiędzy poziomem 
odcięcia a 
intensywnością 
selekcji 

2

fc

-

2

e

*

 

*

2

*

1

 

c(Trunc)

SelIntTrun

Trunc

Utrata różnorodności:  

LossDiv

Trunc

(Trunc) = 1-Trunc.  

Wariancja selekcji:  

SelVar

Trunc

(Trunc) = 1-SelInt

Trunc

(Trunc)·(SelInt

Trunc

(Trunc)-f

c

).  

background image

Selekcja turniejowa 

W selekcji turniejowej pewna liczba Tour osobników zostaje 
losowo wybrana z populacji, a następnie wybieramy najlepszego 
osobnika do populacji rodzicielskiej. Proces może być powtarzany 
do momentu wypełnienia populacji rodzicielskiej. Osobniki 
rodzicielskie wytwarzają losowo w sposób jednolity 
osobnikipotomne.  

Parametry: wielkość turnieju TourTour przyjmuje wartość z 
zakresu 2 - N

ind

.  

Tournament size 

1  

2  

3  

5  

10  

30  

selection intensity 

0  

0.56  

0.85  

1.15  

1.53  

2.04  

background image

Selekcja turniejowa 

background image

Rekombinacja 

• Rekombinacja wartości rzeczywistych:  

rekombinacja dyskretna,  
rekombinacja pośrednia,  
rekombinacja liniowa,  
poszerzona rekombinacja liniowa.  

• Rekombinacja binarna/dyskretna (krzyżowanie):  

krzyżowanie jednopunktowe,  
krzyżowanie wielopunktowe,  
krzyżowanie unormowane,  
krzyżowanie typu tasowanie,  
krzyżowanie ze zredukowanym surogatem.  

background image

Rekombinacja wartości rzeczywistych

 

– rekombinacja dyskretna 

Rekombinacja dyskretna dokonuje wymiany wartości zmiennych 
pomiędzy osobnikami.  
Przykład: dwa osobniki z trzema zmiennymi (3 wymiary):  
osobnik 1      12     25      5  
osobnik 2     123      4     34  
Dla każdej zmiennej wybór wartości jednego z rodziców jest 
dokonywana w sposób losowy z równym pradopodobieństwem 
dla każdego z rodziców.  
próbka 1           2      2      1  
próbka 2           1      2      1  
Po rekombinacji tworzone są nowe osobniki:  
potomek 1      123      4      5  
potomek 2        12      4      5  

background image

Rekombinacja dyskretna 

background image

Rekombinacja pośrednia 

Potomne osobniki są zgodnie z następującą regułą:  
potomek = rodzic 1 + 

 (rodzic 2 – rodzic 1),  

gdzie  jest  współczynnikiem skalującym wybieranym w sposób 
losowy z równym prawdopodobieństwem z zakresu [-d, 1 + d]. 
Dla rekombinacji pośredniej d = 0, dla rozszerzonej rekombinacji 
pośredniej d > 0. Dobrą wartością jest d = 0.25. Dla każdej 
zmiennej współczynnik  jest losowany oddzielnie.  

background image

Rekombinacja pośrednia 

Przykład: Dwa osobniki, trzy zmienne:  
osobnik 1      12     25      5  
osobnik 2     123      4     34  
Przykładowy wybór  :  
próbka 1         0.5    1.1   -0.1  
próbka 2         0.1    0.8    0.5  

Nowe osobniki – potomne :  
potomek 1     67.5    1.9    2.1  
potomek 2     23.1    8.2   19.5  

background image

Rekombinacja liniowa 

Współczynnik  dla wszystkich zmiennych taki sam 

Rekombinacja liniowa rozszerzona jest poszerzeniem 
podprzestrzeni osobników potomnych wokół linii 
osobników rodzicielskich. 

background image

Krzyżowanie jednopunktowe 

Dwa osobniki z 11 wartościami binarnymi:  
 

individual 1     0  1  1  1  0  0  1  1  0  1  0  

 

individual 2     1  0  1  0  1  1  0  0  1  0  1  

Wybrany zostaje punkt krzyżowania:  

 

punkt krzyżowania            5  

Po krzyżowaniu otrzymamy następujące osobniki potomne:  
 

offspring 1      0  1  1  1  0| 1  0  0  1  0  1  

 

offspring 2      1  0  1  0  1| 0  1  1  0  1  0  

background image

Krzyżowanie wielopunktowe 

Osobniki z 11 binarnymi zmiennymi:  
 

individual 1     0  1  1  1  0  0  1  1  0  1  0  

 

individual 2     1  0  1  0  1  1  0  0  1  0  1  

Wybieramy 3 punkty krzyżowania:  
 

cross pos. (m=3)     2           6          10  

Po krzyżowaniu otrzymujemy osobniki: 
 

offspring 1      0  1| 1  0  1  1| 0  1  1  1| 1  

 

offspring 2      1  0| 1  1  0  0| 0  0  1  0| 0  

background image

Krzyżowanie unormowane 

Osobniki z 11 binarnymi zmiennymi: 
 

individual 1     0  1  1  1  0  0  1  1  0  1  0  

 

individual 2     1  0  1  0  1  1  0  0  1  0  1  

Dla każdej zmiennej losujemy osobnika rodzicielskiego z 

którego potomek otrzyma wartość binarną. W rezultacie 
otrzumujemy dwa słowa binarne o długości 11 dla każdego 
osobnika potomnego.  

 

sample 1         0  1  1  0  0  0  1  1  0  1  0  

 

sample 2         1  0  0  1  1  1  0  0  1  0  1  

Po krzyżowaniu otrzymamy: 
 

offspring 1      1  1  1  0  1  1  1  1  1  1  1  

 

offspring 2      0  0  1  1  0  0  0  0  0  0  0  

background image

Inne metody krzyżowania 

krzyżowanie typu tasowanie, 
krzyżowanie ze zredukowanym surogatem.  

background image

Mutacja 

Mutacja zmiennej rzeczywistej 

background image

Mutacja binarna/dyskretna 

przed 

mutacją  

0   1   1  

1

   0   0   1   1   0   1   0  

po mutacji  

0   1   1  

0

   0   0   1   1   0   1   0  

background image

Tworzenie nowej populacji 

• strategia globalna 
• strategia lokalna 

background image

Strategia globalna 

• wytworzenie takiej samej liczby potomków co osobników 

rodzicielskich i zastąpienie osobników rodzicielskich przez 
osobniki potomne (uboga strategia).  

• wytworzenie mniejszej liczby potomków niż osobników 

rodzicielskich i zastąpienie tych osobników w sposób losowy 
jednolity (jednolita strategia).  

• wytworzenie mniejszej liczby potomków niż osobników 

rodzicielskich i zastąpienie najgorszych osobników osobnikami 
potomnymi (elitarna strategia).  

• wytworzenie większej liczby potomków niż potrzeba do 

zastąpienia osobników rodzicielskich i zastąpienie  osobnikami 
najlepszymi (strategia oparta na dostosowaniu).  

background image

Strategia lokalna 

W selekcji lokalnej osobniki są dobierane w granicach sąsiedztwa. Strategia 

wymiany osobników odbywa się dokładnie w tym samym sąsiedztwie. 
Występują następujące schematy: 

• podmiana wszystkich osobników na osobniki potomne w sposób jednolity 

losowy,  

• podmiana osobników słabszych sąsiedztwa osobnikami potomnymi,  
• wstawienie osobników potomnych lepiej dostosowanych niż najsłabsze 

osobniki sąsiedztwa,  

• wstawienie osobników potomnych lepiej dostosowanych niż najgorsze 

osobniki i podmiana osobników rodzicielskich,  

• wstawienie osobników potomnych lepiej dostosowanych niż najgorsze 

osobniki i podmiana osobników w sposób jednolity losowy,  

• wstawienie osobników potomnych lepiej dostosowanych niż rodzicielskie 

oraz ich podmiana.  

background image

Algorytmy genetyczne 

Szczególny przypadek algorytmów 

ewolucyjnych 

background image

Podstawy 

Przetwarzane populacje: 

• P

t

 - populacja bazowa 

• O

t

 - populacja potomna 

• T

t

  - populacja tymczasowa 

W populacjach jest jednakowa liczba osobników. 

Populacja początkowa powstaje przez losowe 
wygenerowanie odpowiedniej liczby osobników. 

background image

Schematy 

• Schematem jest dowolne słowo nad alfabetem {0, 1, *}. Przykład: 

010*1, *110*, ***** , 10101, ... 

• Znak * jest symbolem uniwersalnym oznaczającym dowolny znak. 

• Schemat jest wzorcem opisującym wiele ciągów bitowych. np. 

• *10*1 reprezentuje 01001, 01011, 11001, 11011 

• o(H) – rząd schematu H = liczba pozycji ustalonych (nie “*”) w 

schemacie H. 

• (H) – rozpiętość schematu H = Odległość między skrajnymi 

pozycjami ustalonymi (nie-gwiazdkowymi) w schemacie H 

background image

Algorytm genetyczny- schemat 

begin 
  t := 0 
  inicjalizacja P

0 

  ocena P

0 

  while (not warunek stopu) do 
   begin 
    

T

t

 := reprodukcja P

t 

    

O

t

 := krzyżowanie i mutacja T

t 

    

ocena O

t

  

    

P

t+1

 := O

t

  

    

t:=t+

    end 
end 
 

background image

Kodowanie osobników 

Kodowanie binarne - chromosom jest n-

elementowym wektorem genów, z których 
każdy jest zerem lub jedynką. 

0 1 0 0 0 1 0 1 1 0

gen

chromosom:

background image

Operacje genetyczne: 

• Mutacja jest operatorem wykonywanym dla 

każdego genu osobno (z prawdo-
podobieństwem p

m

 wartość genu zmienia się 

na przeciwną). 

0 1 1 0 0 0 0 1 1 0

osobnik potomny:

0 1 0 0 0 1 0 1 1 0

osobnik rodzicielski:

background image

Operacje genetyczne: 

• W krzyżowaniu biorą udział dwa osobniki 

rodzicielskie. Jest ono jednopunktowe, a 
miejsce rozcięcia jest wybierane losowo z 
rozkładem równomiernym.  

0 1 0 0  0 1 0 1 1 0

osobniki rodzicielskie:

1 1 0 1  0 1 1 1 0 0

0 1 0 0 0 1 1 1 0 0

osobniki potomne:

1 1 0 1 0 1 0 1 1 0

miejsce rozcinania

background image

Reprodukcja 

• Populacja T

t

 jest tworzona przy użyciu reprodukcji 

proporcjonalnej (ruletkowej). 

• Prawdopodobieństwo skopiowania (reprodukcji) osobnika 

X ze zbioru P

t

 do zbioru T

t

 wynosi: 

  gdzie: X , Y – osobniki, 

 – funkcja przystosowania  

 

 

 

t

P

Y

r

Y

X

X

p

background image

Strategie ewolucyjne 

Strategia ewolucyjna polega na mutowaniu 

pewnego początkowego rozwiązania. 

background image

strategia (1+1) 

• W algorytmie strategii (1+1) występuje mechanizm 

adaptacji zasięgu mutacji zwany regułą 1/5 sukcesów. 

• Chromosomy: bazowy X

t

 oraz tymczasowy Y

t

  

• Gen w chromosomie jest liczbą rzeczywistą. 

background image

Strategia ewolucyjna (1+1) - 

schemat 

begin 
  t := 0 
  inicjacja X

t

  

  ocena X

t

  

  while (not warunek stopu) do 
   begin 
    

Y

t

 := mutacja X

t 

    

ocena Y

t

  

    

if ((Y

t

) > (X

t

)) than X

t+1

 := Y

t

  

     

 

 

 

 

   else X

t+1

 := X

t

  

    

t:=t+

  end 
end 

background image

Strategia ewolucyjna (1+1) - mutacja 

gdzie:  - zasięg mutacji 
    - wartość zmiennej losowej o rozkładzie normalnym  

Chromosom Y

t

 jest generowany przez dodanie losowej 

modyfikacji do każdego genu chromosomu X

t

 :  

 

i

N

t

i

t

i

X

Y

,

1

,

0



background image

Reguła 1/5 sukcesów 

• Jeżeli przez kolejnych generacji liczba mutacji zakończonych sukcesem 

jest większa niż 1/5, to należy zwiększyć zasięg mutacji (



:=  c

i

 

). 

• Gdy dokładnie 1/5 mutacji kończy się sukcesem, wartość 

 nie wymaga 

modyfikacji. 

• W przeciwnym przypadku należy zawęzić zasięg mutacji (



:=  c

d

 

). 

• Wartości parametrów modyfikujących:  
  c

d

 = 0.82, c

i

 = 1/0.82. 

Strategia (1+1) ma niewielką odporność na minima lokalne, w związku z tym 

powstały nowe schematy: 

– strategia (1+) 
– strategia ( + )  
– strategia (, ) 

background image

Strategia ( +  

Każdy osobnik składa się z dwóch chromosomów: 

1. wektor X wartości zmiennych niezależnych 

2. wektor 

 zawierający wartości odchyleń 

standardowych wykorzystywanych podczas 
mutacji 

background image

Strategia ( + ) – operacje 

genetyczne  

Mutacja 

• Podczas mutacji najpierw modyfikowane są elementy 

wektora 

, a następnie na podstawie tego wektora 

mutowany jest chromosom X.  

• Dokonuje się samoczynna adaptacja zasięgu mutacji. 

Krzyżowanie (rekombinacja) 

• Najczęściej używa się operatora polegającego na 

uśrednianiu lub na wymianie wartości wektorów 

 

chromosomów macierzystych. 

background image

Strategia ( + ) – schemat 

begin 
  t 
:= 0 
  inicjacja P

t

  

  ocena P

t

  

  while (not warunek stopu) do 
   

begin 

   

T

t

 := reprodukcja P

t

 

   

O

t

 := krzyżowanie i mutacja T

t

 

   

ocena O

t

  

   

P

t+1

 :=  najlepszych osobników z P

 

O

t

 

   

t:=t+

   

end 

end 

background image

Strategia ( , ) 

• ... zachowuje mechanizm ewolucyjny i strukturę kodowania 

osobników strategii ( + ) , z wyjątkiem etapu tworzenia nowej 
populacji bazowej P

t+1

• W przeciwieństwie do strategii ( + ) , nowa populacja bazowa P

t+1

 

tworzona jest wyłącznie z doboru najlepiej przystosowanych 
osobników populacji tymczasowej O

t

 (bez udziału poprzedniej 

populacji bazowej P

t

).  

• Zmiana mechanizmu tworzenia kolejnej populacji bazowej P

t

 eliminuje 

problem osobliwości dominującego osobnika, występującego w 
strategii ( + ) . Ten rodzaj strategii powinien być bardziej odporny 
na oddziaływanie zbioru przyciągania lokalnego ekstremum. 

background image

Równoległość w algorytmach 

ewolucyjnych 

background image

Dlaczego równoległość ? 

• Współbieżność obliczeń –  

– Przyspieszenie algorytmu 
– Poszerzenie obszaru przeszukiwań 

• Poszukiwanie wielu rozwiązań – wiele 

minimów lokalnych 

• Zwiększenie efektywności poszukiwania 

background image

Migracja 

Topologia nieograniczonej migracji (topologia 

pełnej sieci) 

Topologia migracji pierścieniowej 

Topologia migracji sąsiedztwa 
  (implementacja 2-D) 

background image

Topologia pełnej sieci

Topologia pełnej sieci  

background image

Schemat migracji osobników pomiędzy 

subpopulacjami 

Migration 

background image

Topologia migracji pierścieniowej

Topologia migracji pierścieniowej  

background image

Topologia migracji sąsiedztwa

Topologia migracji sąsiedztwa  

background image

Worker / Farmer genetic algorithm 

Migracja osobników 

background image

Algorytm dyfuzyjno – genetyczny 

background image

Programowanie 

genetyczne 

background image

Programowanie genetyczne 

 

 

 genetycznych 

 różnica pomiędzy GP GA

 – reprezentacja rozwiązania. 

Programowanie genetyczne 

Tworzenie rozwiązań jako 
programy lub schematy w 
językach programowania 

Algorytmy genetyczne 

Tworzenie rozwiązań jako 
łańcuchy liczb 
 

background image

Postacie osobników 

• Osobnik jako sekwencja rozkazów 

(instrukcji); 

• Osobnik jako graf – drzewo (strukturalny 

program, wyrażenie arytmetyczne / 
algebraiczne) 
 

background image

4. Najlepszy utworzony w dowolnej populacji program,  najlepsze 
z możliwych rozwiązań, traktowane jest jako rezultat 
programowania genetycznego [Koza 1992] 

GP – cztery kroki tworzące algorytm 

1. Tworzenie populacji początkowej jako losowej konstrukcji funkcji 
i terminałów dla zadanego problemu (program komputerowy) 

2. Wykonanie każdego z programów i przyznanie wartości 
dostosowania stosownie do stopnia zdolności do rozwiązania 
problemu 

3. Tworzenie nowej populacji programów 

- kopiowanie najlepszych programów populacji 
- tworzenie nowych programów poprzez mutację  

- tworzenie nowych programów poprzez krzyżowanie

 

(sexual reproduction). 

background image

Operacja krzyżowania różnych 

osobników  

Osobniki rodzicielskie 

Osobniki potomne 

background image

Operacja krzyżowania osobników 

identycznych 

Osobniki rodzicielskie 

Osobniki potomne 

background image

Operacja mutacji 

Osobnik źródłowy 

Osobniki zmutowane 

background image

Projektowanie układów cyfrowych z 

wykorzystaniem programowania genetycznego 

background image

Pytanie: Jak realizować układ z rozpływem 
sygnałów (fan-out)