You are on page 1of 68

Inteligentno upravljanje

Evolucioni algoritmi u upravljanju


Dr Samim Konjicija, dipl. ing. el.

Sarajevo, 22.12.2014. godine

Sadraj predavanja
Heuristiki algoritmi optimizacije
Evolucioni algoritmi
Genetiki algoritam (GA) osnovna ideja
Osnovni elementi GA
Mehanizam selekcije
Operatori GA
GA sa realnim kodiranjem i operatori
Specifinosti GA kao algoritma optimizacije
Stepeni slobode GA i postavke parametara
Varijante GA

Klasini i heuristiki algoritmi optimizacije

Postiu vrlo visoke performanse za probleme iz domena


onih na koje se mogu primjeniti

Problemi se esto modificiraju i pojednostavljuju da bi se


omoguila primjena klasinih algoritama

Dobivena rjeenja nisu pogodna kao rjeenja realnog


problema

Heuristiki algoritmi pokuavaju u prihvatljivom vremenu


i uz prihvatljive resurse rijeiti realni problem

Ne insistira se na dokazu da je dobiveno rjeenje


optimalno ili blizu optimalnog

Primjenjuju se za rjeavanje kompleksnih problema

Primjer: Anti-virus skeneri koriste heuristike algoritme

Heuristiki algoritmi

Fokus na numerikoj performansi i jednostavnosti

Tanost i preciznost u drugom planu

Definicija:
Heuristiki algoritam je algoritam koji pronalazi rjeenje
kompleksnog problema ili pojednostavljenog modela
kompleksnog problema, stavljajui pri tome dokazivost
egzistencije, tanosti i optimalnosti rjeenja u drugi plan.
Tokom pretraivanja problemskog prostora heuristiki
algoritam se vodi neformalnim mehanizmima kao to su
iskustvo, znanje, intuicija i sl.

Heuristiki algoritmi

Metaheuristiki algoritmi kao posebna vrsta heuristikih


algoritama

Manje su ovisni o problemu

Definicija:
Metaheuristiki algoritam je heuristiki algoritam koji se moe
primjeniti za rjeavanje iroke klase problema traenja
rjeenja, a iji se mehanizam pretraivanja bazira na
heuristici apstrahovanoj od domena problema za ije se
rjeavanje metaheuristiki algoritam primjenjuje
Metaheuristiki algoritmi kao mehanizam pretraivanja
sadre heuristiki algoritam

Evolucioni algoritmi

Vrlo popularni metaheuristiki algoritmi

Najpoznatiji su:
Genetiki algoritmi

Evolucione strategije

Baziraju se na modeliranju procesa evolucije ivih bia

Charles Darwin:
"Moe se metaforino rei da prirodno odabiranje
svakodnevno i svakoga asa istrauje po cijelome svijetu i
najmanje varijacije; ono odbacuje loe, a odrava i sabire one
koje su dobre; ono radi mirno i neprimjetno, kad god i gdje
god se ukae prilika, na usavravanju svakog organskog bia
u odnosu na njegove organske i neorganske uslove ivota..."

Genetiki algoritam (GA)

John Holland (1975)

GA je stohastiki algoritam organiziranog pretraivanja

Princip opstanka najboljih jedinki

Iskoritavanjem informacije pohranjene u populaciji se


tvore nova i bolja potencijalna rjeenja

Veliki broj varijanti GA:

Modeliranje razliitih pojava i procesa (diploidnost,


ivotni vijek, migracija, ...)

Uvoenje elemenata koji ne postoje u prirodi s ciljem


poboljanja performanse algoritma

Osnovna ideja GA

Pretraivanje bazirano
na populaciji

Potencijalna rjeenja se
kodiraju u hromozome

Dobri hromozomi se
odabiraju za ukrtanje

Mutacija sluajno
modificira hromozome

Novi hromozomi
potomci (offsprings)
mijenjaju roditelje
(parents)

Standardni GA

Osnovni elementi GA

Populacija hromozoma

Pretraivanje se provodi nad hromozomima

ema kodiranja

Obostrano jednoznano preslikavanje izmeu


potencijalnih rjeenja i hromozoma

Mehanizam evaluacije fitnessa

Fitness predstavlja mjeru kvaliteta potencijalnog


rjeenja

Bazira se na kriteriju

Mehanizam selekcije

Vea vjerovatnoa odabira boljih hromozoma

Razliiti mehanizmi selekcije razliito rasporeuju


vjerovatnou

Osnovni elementi GA

Operator ukrtanja/rekombinacije (crossover)

Razmjenjuje dijelove hromozoma-roditelja

Omoguava iskoritavanje informacije o problemskom


prostoru pohranjene u populaciji (exploitation)

Operator mutacije (mutation)

Sluajno modificira hromozome sa malom


vjerovatnoom

Omoguava istraivanje problemskog prostora


(exploration)

Mehanizam smjene generacija

Odreuje nain smjene hromozoma populacije


hromozomima-potomcima

Elitizam

Populacija hromozoma

Hromozom kodirana
problemskog prostora)

Za predstavljanje hromozoma se koristi neki alfabet A

a = <a1a2...al> aiA

Jednostavni GA (SGA-Simple GA) koristi alfabet


A ={0, 1}

Hromozom je osnovni objekat na koji se primjenjuju


operatori GA

vjetaka

jedinka

(taka

Populacija hromozoma

Populaciju ini odreen broj hromozoma

P={a1, a2, ..., am}

m veliina populacije

Veliina populacije je kod veine varijanti GA konstantna

Postoje i varijante sa promjenljivim brojem hromozom u


populaciji

Primjenom
mehanizama
i
operatora
se
vri
transformacija populacije od generacije do generacije
P k P k+1

ema kodiranja

Obostrano jednoznano preslikavanje izmeu taaka


problemskog prostora i hromozoma

C:xa

x = [x1,x2,...,xn ]T

Take problemskog prostora - fenotip

Hromozomi - genotip

ema kodiranja

Dekodiranje binarno kodiranih hromozoma:


l i

I i = aij2 j 1
j =1

x i= xi

x i xi
2

l i

I i

Duina binarnog stringa za kodiranje elementa xi


x i x i
l i = log 2

Kodiranje binarno kodiranih hromozoma:


I i=2l i 1

x i x i

x i x i

ema kodiranja

Primjer:

x i =1

l i = log 2

x i= 2

x i x i

=0,1
= log 2

2 1
= log 2 10 = 4
0,1

Kodiranje vrijednosti 1,7 u string 1010:


x i x i
1,71
0,7
l i
4
I i=2 1
= 2 1
=15 =150,7=10,5=10
x i x i
21
1
Dekodiranje stringa 0111:

x i x i

21
7
x i = x i l i I i =1 4 7= 1 = 1 0,4667=1,46671,5
15
2 1
2 1

ema kodiranja

Binarno kodiranje moe imati i slobodniju formu


Primjer: A Game of Genetic Creatures
(http://www.ee.cityu.edu.hk/~kfman/)

ema kodiranja

Evaluacija fitnessa

Fitness je mjera kvaliteta jedinke

Ako se GA primjenjuje za optimizaciju, fitness predstavlja


pogodno transformiran kriterij
f (a) = c1 y (x) + c2

Evaluacija fitnessa se vri u problemskom prostoru

Pretraivanje se provodi nad hromozomima

Razdvajanje genotipa i fenotipa je jedan od razloga


zato je GA vrlo malo ovistan o problemu za ije
rjeavanje se koristi

Mehanizam selekcije

Bolje jedinke imaju veu ansu da uestvuju u formiranju


populacije naredne generacije

Mehanizam selekcije odreuje vezu izmeu fitnessa


hromozoma i vjerovatnoe njegovog uea u
reprodukciji

Postoje razliiti mehanizmi selekcije koji modeliraju


razliite pojave iz prirode

Neki od osnovnih mehanizama selekcije:

Selekcija skraivanjem

Selekcija proporcionalno fitnessu

Selekcija na bazi rangiranja

Turnirska selekcija

Selekcija skraivanjem
(Truncation Selection)

Vjetaki metod

Jednostavan, ali manje sofisticiran od ostalih

Rijetko se koristi u praktinim problemima, osim u


uzgajivakom GA (Breeder Genetic Algorithm-BGA)

Selekcija skraivanjem se provodi na sljedei nain:


Populacija se sortira po opadajuem fitnessu
Odreeni dio najboljih jedinki populacije se odabira
za reprodukciju (prag - truncation threshold se
obino bira u opsegu 10%-50%)
Roditelji se zatim sluajno biraju iz ovog dijela
populacije

Selekcija proporcionalno fitnessu

Modelira prirodnu selekciju

Koritena u izvornom Hollandovom GA

Zove se i selekcija ruletskog toka (Roullete Wheel


Selection - RWS)

f a

p s a =

f a k
k =1

RWS pop
j1
suma p s a j
u rand 0,1
while sumau do
j j1
suma suma p s a j
end
return j

Selekcija proporcionalno fitnessu

Isti efekat se dobiva i direktnim koritenjem fitnessa


hromozoma:

Selekcija proporcionalno fitnessu

Toak se zavrti onoliko puta


SUS pop , m sel
koliko hromozoma treba odabrati
1
Vjerovatnoa
da
najbolji
hromozom nee biti odabran
Stohastiko
univerzalno
uzorkovanje
(Stohastic
Universal Sampling SUS) kao
varijanta
koja
ima
vie
pokazivaa
Potreban broj hromozoma se
odabire jednim pozivom

u rand 0,

m sel

suma 0
for j =1 to m do
c j 0
j

suma suma p s a
repeat
c j c j 1
1
u u
msel
while usuma
end
return c

Selekcija na bazi ranga hromozoma

Selekcija proporcionalno fitnessu prenaglaava ansu


dobrih hromozoma da budu odabrani

To dovodi do smanjenja raznolikosti populacije

Raznolikost populacije je pokretaka sila GA kao


algoritma pretraivanja

Selekcija na bazi ranga ravnomjernije rasporeuje


vjerovatnoe selekcije

Moe biti:
linearna (najee u upotrebi)
nelinearna

Selekcija na bazi ranga hromozoma

Kod linearne selekcije na bazi ranga se umjesto fitnessa


hromozoma koristi modificirana vrijednost fitnessa prema
izrazu:
j

rank (a )1
f mod (a )=(2SP )+ 2( SP1)
m1
j

Parametar SP se naziva selekcijski pritisak i oblino se


uzima iz opsega [1,2]

Vei selekcijski pritisak poveava vjerovatnou boljih


hromozoma da budu odabrani

Manji selekcijski pritisak ujednaava


hromozoma populacije da budu izabrani

Implementacija identina kao kod RWS

vjerovatnou

Selekcija na bazi ranga hromozoma

Poreenje selekcije proporcionalno fitnessu


i selekcije na bazi ranga
Chromosome
A
B
C
D
E
F
G
H
I
J

Fitness
100
35
25
20
18
17
10
5
3
1

Fitnessmod
1,80
1,62
1,44
1,27
1,09
0,91
0,73
0,56
0,38
0,20

Rank
10
9
8
7
6
5
4
3
2
1

ps (RWS)
0,43
0,15
0,11
0,09
0,08
0,07
0,04
0,02
0,01
0,00

ps (ranking)
0,18
0,16
0,14
0,13
0,11
0,09
0,07
0,06
0,04
0,02

Ranking

RWS
A
B
C
D
E
F
G
H
I
J

A
B
C
D
E
F
G
H
I
J

SP=1,8

Poreenje selekcije proporcionalno fitnessu


i selekcije na bazi ranga
Chromosome
A
B
C
D
E
F
G
H
I
J

Fitness
100
35
25
20
18
17
10
5
3
1

Fitnessmod
1,80
1,62
1,44
1,27
1,09
0,91
0,73
0,56
0,38
0,20

Rank
10
9
8
7
6
5
4
3
2
1

ps (RWS)
0,43
0,15
0,11
0,09
0,08
0,07
0,04
0,02
0,01
0,00

RWS

ps (ranking)
0,18
0,16
0,14
0,13
0,11
0,09
0,07
0,06
0,04
0,02

Ranking

0,45

0,20
0,18
0,16
0,14
0,12

0,40
0,35
0,30
0,25

SP=1,8

0,10
0,08

0,20
0,15

0,06
0,04
0,02
0,00

0,10
0,05
0,00
A

Selekcija na bazi ranga hromozoma

Koritenje nelinearne selekcije na bazi ranga


omoguava postizanje eljenog stepena naglaavanja
znaaja fitnessa za odabir hromozoma

Turnirska selekcija

Nedostatak selekcije na bazi ranga je u potrebi da se


populacija sortira

Nepraktino za vee populacije

Turnirska selekcija je vrlo jednostavna

Sluajno se odabiraju dva hromozoma iz populacije

Sa vjerovatnoom pt se odabire bolji od njih

U turniru moe uestvovati i vie od dva hromozoma

Turnir se ponavlja onoliko puta koliko je hromozoma


potrebno odabrati

Operator ukrtanja/rekombinacije

Osnovni operator GA, po kome se izvorno razlikuje od


ostalih evolucionih algoritama
p
q
r
s

a
,
a
a
,
a

To je binarni operator:

Konkretna realizacija ovisi o nainu reprezentacije

Mogua je i generalizacija na n-arni operator

Operator ukrtanja razmjenjuje


hromozoma odabranih selekcijom

Vjerovatnoa da e se formirati novi hromozom koji


sadri dobre gradivne blokove oba roditelja (hipoteza
gradivnih blokova Building Block Hypothesis)

Ukrtanje se provodi sa vjerovatnoom pc bliskom 1

gradivne

blokove

Operator ukrtanja/rekombinacije

Osnovni operatori ukrtanja za GA sa binarno kodiranim


hromozomima:

Ukrtanje u jednoj taki (single point crossover)

Ukrtanje u dvije take (two point crossover)

Uniformno ukrtanje (uniform crossover)


Hromozomi
roditelji

Ukrtanje u jednoj taki


Ukrtanje u dvije take
Uniformno ukrtanje

Operator ukrtanja/rekombinacije

Hromozomi - roditelji:

a p = a 1p a 2p .. . a lp
a q = a q1 a q2 . . . a ql

Ukrtanje u jednoj taki:

a r = a1p a 2p . . . a kp a qk 1 a qk 2 .. . a ql
a s = a q1 a q2 .. . a qk a kp1 a kp2 . . . a lp

Ukrtanje u dvije take:

p
p
a r = a1p a 2p . . . a kp a qk 1 a qk 2 .. . a qh a h1
a h2
.. . a lp

Uniformno ukrtanje:

a ri = aipz i aq
i 1 z i

a s = a q1 a q2 .. . a qk a kp1 a kp2 . . . a hp a qh1 a qh2 . .. a ql

a si = a ip 1 z i a q
i z i
z i { 0,1}
i { 1,2, .. . , l }

Operator ukrtanja/rekombinacije

Operator mutacije

Operator
ukrtanja
razmjenjuje
vrijednosti
hromozoma koji su ve prisutni u populaciji

Ukoliko neke vrijednosti bita


populaciji, nee se ni pojaviti

Operator mutacije sluajno modificira hromozom

nisu

zastupljene

r
ap
a

To je unarni operator:

Najee koritena je binarna mutacija


r

bita

a i = ai z i ai 1 z i
z i { 0,1} vrijednost izabrana u skladu sa p m
i { 1,2, .. . , l }

Operator mutacije

Operator mutacije

Operator mutacije je dugo smatran sekundarnim operatorom


u GA sa stanovita pretraivanja

Danas mu se pridaje vea vanost

Jedna od uloga operatora mutacije je odravanje raznolikosti


populacije i uvoenje u populaciju vrijednosti bita koje u njoj
nisu zastupljene

Svaki bit se mutira sa malom vjerovatnoom pm

U populaciji od m hromozoma svaki bit e biti mutiran sa


vjerovatnoom mpm

Nakon N generacija, vjerovatnoa mutiranja svakog bita e


biti Nmpm

Da bi svaki bit bio mutiran za pm=0,001

m>10

N>100

Mehanizam smjene

Odreuje na koji nain e hromozomi potomci biti uvrteni u


populaciju

GA je obino generacijskog tipa

Ukoliko se svi hromozomi stare populacije zamijene novim,


populacija e oscilirati oko taaka optimuma

Mala je vjerovatnoa da e hromozom koji odgovara dovoljno


dobrom potencijalnom rjeenju biti zadran u populaciji

Da bi se sauvali najbolji hromozomi, uvodi se elitizam

Elitizam predstavlja bezuslovno zadravanje jednog ili vie


najboljih hromozoma stare populacije

Primjer

Populacija se sastoji od 4 binarna stringa. Fitness svakog


hromozoma se odreuje prema izrazu:

y = 192 x 64

gdje je x cijeli broj kodiran binarnim stringom. Provesti jednu


generaciju jednostavnog genetikog algoritma uz koritenje:
a) selekcije proporcionalno fitnessu, ukrtanja u jednoj
taki, binarne mutacije i elitizma od jedne jedinke
b) selekcije na bazi ranga, ukrtanja u dvije take i
binarne mutacije
Hromozom
A
B
C
D

String
10100011
00111010
01011110
11011001

Primjer

Kodirani cijeli brojevi, vrijednost fitnessa i vjerovatnoe selekcije


su dati u tabeli:
p s a j =

f a
m

f a k
k =1

Hromozom
A
B
C
D

String
10100011
00111010
01011110
11011001

x
163
58
94
217

Fitness
93
186
162
39

ps (RWS)
0.19
0.39
0.34
0.08

Neka su za ukrtanje kao prvi par odabrani hromozomi B i C,


a kao drugi hromozomi B i D:
B

00111010

00111010

01011110

11011001

00111110

00111001

01011010

11011010

Primjer

Neka je hromozom E mutiran na 3. lokusu s lijeve strane:


E00111110
E' 00011110
Sada su fitnessi hromozoma-potomaka:
Hromozom
E'
F
G
H

String
00011110
01011010
00111001
11011010

x
30
90
57
218

Fitness
158
166
185
38

Radi elitizma se hromozom H odbacuje a u populaciju


naredne generacije se prenose hromozomi:
Hromozom
E'
F
G
B

String
00011110
01011010
00111001
00111010

x
30
90
57
58

Fitness
158
166
185
186

Primjer

Fitness najboljeg hromozoma je ostao nepromijenjen u


odnosu na populaciju poetne generacije. Srednji fitness
poetne populacije je bio 120, a srednji fitness nove
populacije je 173,75.
m

f = j =1

f a j
m

Drugi naini kodiranja u GA

GA sa realnim kodiranjem

Razlozi koritenja drugih naina kodiranja

Predstavljanje hromozoma vektorom realnih brojeva

Operatori ukrtanja za GA sa realnim kodiranjem

Operatori mutacije za GA sa realnim kodiranjem

Drugi naini reprezentacije hromozoma

Realno kodiranje

GA sa binarnim kodiranjem je vrlo jednostavan

Njegova performansa u veini praktinih primjena nije


zadovoljavajua

Postoje mnogi drugi naini kodiranja:

Problemski specifini

Sa ciljem poveanja efikasnosti GA

Za svako kodiranje je potrebno definirati odgovarajue


operatore

Najee se koristi kodiranje realnim brojevima: A =R

Preslikavanje C : x a

Kada se koristi identitet, tada je x = a

Operator ukrtanja/rekombinacije

Mogu se koristiti definicije operatora ukrtanja kao kod


binarnog kodiranja

Zbog manje duine hromozoma, njihov efekat je


umanjen

Neki od ee koritenih operatora ukrtanja za GA sa


realnim kodiranjem:

Diskretna rekombinacija

Meurekombinacija (Intermediate Recombination)

Linearna rekombinacija (Line Recombination)

Produena linearna rekombinacija (Extended Line


Recombination)

Diskretna rekombinacija

Koristi se neovisno o emi kodiranja u stvari se radi o


uniformnom ukrtanju
x ri =x ipz i x iq 1z i
z i { 0,1}
i { 1,2, .. . , l }

Hromozomi potomci se mogu nai u bilo kojem vrhu


hiperkocke

Meurekombinacija

Nedostatak diskretne rekombinacije je to se hromozomi


potomci nalaze samo u vrhovima hiperkocke

Meurekombinacija omoguava da se osim u vrhovima,


potomci mogu kreirati oko i izmeu hromozoma roditelja
x ri =x ipz i x iq 1z i
z i [d , 1d ]
i { 1,2, .. . , l }

Parametar d odreuje podruje izvan hiperkocke u kome se


mogu kreirati potomci

Obino je d=0,25

Ovim se izbjegava smanjivanje hiperkocke

Meurekombinacija

Linearna rekombinacija

Kod linearne rekombinacije se hromozomi potomci mogu


nai na pravcu koji prolazi kroz hromozome roditelje,
izmeu ili oko njih

Izraz je vrlo slian kao kod meurekombinacije, ali se za


sve varijable koristi isti parametar z:
x ri =x ipz x qi 1z
z [ d , 1d ]
i { 1,2, .. . , l }

Produena linearna rekombinacija

Hromozomi roditelji definiraju pravac na kome lee


potencijalni hromozomi potomci

Podruje na kome se mogu nalaziti hromozomi potomci


je mnogo ire

Vjerovatnoa formiranja potomaka blie roditeljima je


vea

Vjerovatnoa formiranja potomaka u smjeru ka boljem


roditelju je vea

Produena linearna rekombinacija


q
p
x
x
r
p
x i = x i bic ie i p i q ,
x x
e=2ku , u[0, 1]
c i =c x i max x i min
b i {1,1}

i=1, 2, , n

bi odreuje smjer

ci odreuje maksimalnu veliinu pomaka

e odreuje relativnu veliinu pomaka

u je sluajni broj sa uniformnom raspodjelom

k je koeficijent sa vrijednou izmeu 4 i 20

Ako se za smjer sa veom vjerovatnoom biraju 1,


djelovanje operatora je usmjereno

Produena linearna rekombinacija

Operator mutacije

Najee koriteni su:

Dodjeljivanje sluajne vrijednosti elementu hromozoma


x i mut [ x i min , x i max ]

x i mut = x i
Sluajno modificiranje elementa hromozoma
[d , d ]

Problem je odabrati vrijednost parametra d

Poeljno je da se izbjegne potreba za podeavanjem


parametara
x qi = x ip b ic ie
e=2ku , u[0, 1]
c i =c x i max x i min
b i {1,1}

Drugi naini reprezentacije

Osim do sada pomenutih naina reprezentacije se koriste


i drugi sloeniji ili problemski specifini

Neki od ovih naina reprezentacije su:

Permutacije

Konani automati

Parsiranje

Diploidna reprezentacija

Hijerarhijska reprezentacija

Lista simbola i sl.

Za svaki nain reprezentacije je neophodno definirati:

emu kodiranja

Mehanizme i operatore

Nain evaluacije fitnessa

Drugi naini reprezentacije

Specifinosti GA kao algoritma optimizacije

GA je heuristiki algoritam sa usmjerenim sluajnim


pretraivanjem problemskog prostora
p y x *k y * 1
za k
0

GA bez elitizma nije globalno konvergentan

Pokazano je (Rappl) da pod odreenim uvjetima GA


ispoljava eksponencijalnu konvergenciju ka globalnom
optimumu
E f a *k f * =k

Ovakvi algoritmi nisu efikasni

m1

Mjere performanse

Mjere performanse mogu biti:

Lokalne (za jednu generaciju)

Globalne (za vie generacija)

Lokalne mjere performanse mogu biti:

U prostoru vrijednosti (fitnessa) dobitak na kvalitetu


Q = E f a

f a k 1 P k

U problemskom prostoru brzina napredovanja


=E a k a *a k1a *P k

Najee koritene lokalne mjere performanse su najbolji


fitness populacije i srednji
fitness populacije
m
k

f =

k
f a

k=1

ema teorem

Pokuaj teorijske analize i verifikacije ponaanja SGA

ema string sastavljen od elemenata alfabeta {0, 1, *}

Postoji 3 l razliitih ema, gdje je l duina binarnog stringa

Red eme O(H) broj fiksiranih lokusa

Duina eme (H) udaljenost izmeu krajnjih fiksiranih


lokusa

ema teorem daje donju granicu oekivanja broja stringova


koji pripadaju emi H u narednoj generaciji:
f H
H
E [ m H , k 1 ] m H , k
1 p c
o H p m

l 1

Iako je Goldberg pokuao dati ocjenu globalnog ponaanja


SGA, izraz vrijedi samo za jednu generaciju

m H , k m H ,0 1 c

Stepeni slobode GA
Veliina populacije
Odreuje uzorkovanje prostora koji se pretrauje
Neophodno je da broj hromozoma u populaciji bude dovoljan
Procesiranje vee populacije je zahtjevnije
Duina binarnog stringa hromozoma
Odreuje preciznost predstavljanja take prostora stanja
Dui binarni string znai poveanje binarnog prostora
Vrsta i parametri mehanizma selekcije
Bitno odreuju raspodjelu vjerovatnoe selekcije hromozoma
Broj najboljih jedinki koje se prenose (elitizam)
Za probleme optimizacije neophodno prenoenje barem najboljeg
hromozoma
Vrsta i parametri operatora ukrtanja
Vrsta i parametri operatora mutacije

Standardne postavke parametara GA

Postoje za GA sa binarnim kodiranjem

Do vrijednosti se dolo viestrukim ponavljanjem


izvoenja GA na skupovima testnih funkcija
Postavka
Veliina populacije
Vjerovatnoa

De Jong

Grefenstette

Schaffer et al.

50 100

30

20 30

0,6

0,95

0,75 0,95

0,001

0,01

0,005 0,01

ukrtanja
Vjerovatnoa
mutacije

Empirijski izrazi za adaptaciju vrijednosti parametara:


Smith, Fogarty:

1,75
pm
m l

Mhlenbein:

pm

1
l

Varijante GA

Standardni GA je generacijskog tipa

Nema preklapanja populacija

Populacija nove generacije


populaciju stare generacije

Radi poboljanja performanse GA kao algoritma


optimizacije se uvodi elitizam (1-2 hromozoma)

Nekada je efikasniji GA kod koga e se zadravati


cjelokupna stara populacija izuzev nekoliko najloijih
hromozoma koji se mijenjaju novim

Ovo je stabilni GA (Steady-state GA)

potpunosti

mijenja

Varijante GA

Stabilni GA daje dobre rezultate kada je veliki broj


potomaka lo u poreenju sa hromozomima stare
populacije

Ovo je esto sluaj ako je prostor koji se pretrauje jako


kompleksan, ili je zbog postojanja ogranienja teko
pronai nova dozvoljena rjeenja

Nedostatak stabilnog GA je to e u veini sluajeva


populacija jako brzo izgubiti raznolikost

Raznolikost populacije je
problemskog prostora kod GA

Gubitak raznolikosti se moe nadomjestiti poveanjem


intenziteta djelovanja operatora mutacije

osnova

pretraivanja

Varijante GA

DAAD BiHSP Project 2002/2003


Friedrich-Alexander Universitt
Erlangen-Nrnberg
Elektrotehniki fakultet u Sarajevu
Prof. Dr-Ing Wolfgang Br
Vanr. prof. dr Zikrija Avdagi
Bakir Laevi
Samim Konjicija

Varijante GA

Postoji veliki broj varijanti GA ija organizacija odstupa


od standardne

Varijante GA

Uzgajivaki GA oponaa efekat voenja populacije pri


uzgoju ivih bia

Osnovni koraci BGA su:

Populacija se sortira po opadajuem fitnessu

Odreen procenat najboljih hromozoma se bira za


roditelje

Provodi se sluajno ukrtanje izmeu odabranih


roditelja

Nova populacija se formira od najboljih potomaka i


roditelja

Varijante GA

BGA ispoljava veliki selekcijski pritisak

Selekcijski pritisak odraava tenju da se favoriziraju


bolje jedinke

Prevelik
selekcijski
pritisak
konvergenciju populacije

Tzv. jednaine genetiara vrlo dobro opisuju ponaanje


populacije kod BGA
R k = f k 1 f k

uzrokuje

S k = f s k f k

R k = b k S k = Ib k k

prebrzu

You might also like