80
1 Prirodom inspirirani optimizacijski algoritmi Mr.sc. Marko Čupić Zagreb, lipanj 2009. FER Umjetna inteligencija

Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

  • Upload
    vongoc

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

1

Prirodom inspirirani optimizacijski algoritmi

Mr.sc. Marko ČupićZagreb, lipanj 2009.

FERUmjetna inteligencija

Page 2: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

2

Uvod

• Izranjajuća inteligencija• Optimizacijski problemi• Genetski algoritam• Algoritam kolonije mrava• Algoritam roja čestica• Algoritmi umjetnog imunološkog

sustava

Page 3: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

3

Izranjajuća inteligencija

•Izranjajuća inteligencija•Optimizacijski problemi•Genetski algoritam•Algoritam kolonije mrava•Algoritam roja čestica•Algoritmi umjetnog imunološkog sustava

Page 4: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

4

Uvod: Evolucija

Page 5: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

5

Uvod: Evolucija

Page 6: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

6

Uvod: Jato ptica

Page 7: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

7

Uvod: Rojenje pčela

Page 8: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

8

Uvod: Mravlje kolonije

• Površina 50 m2, dubina 8 metara

Page 9: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

9

Uvod: Mravlje kolonije

• Mravinjak, put…

Page 10: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

10

Uvod: Mravlje kolonije

Page 11: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

11

Uvod: Mravlje kolonije

Page 12: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

12

Uvod: Jato riba

Page 13: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

13

Uvod: zaključci

Dumb parts, properly connected

into a swarm, yield smartresults.

Kevin KellyNew Rules for the New Economy

Sep 1997

Page 14: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

14

Uvod: zaključci

The whole is greaterthan

the sum of the parts.

Page 15: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

15

Optimizacijski problemi

•Izranjajuća inteligencija•Optimizacijski problemi•Genetski algoritam•Algoritam kolonije mrava•Algoritam roja čestica•Algoritmi umjetnog imunološkog sustava

Page 16: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

16

Optimizacijski problemi

• Optimizacija: postupak pronalaženja najboljeg rješenja problema, rješenja s najmanjom cijenom

• Tipično:– Kontinuirano područje– Kombinatorički problemi

Page 17: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

17

Optimizacijski problemi

• Pretraživanje prostora stanja:– Nađi put od S0 do SF

– Rješenje je put (npr. slagalica 3x3!)• CSP: Constraint Satisfaction Problem

– Vrsta pretraživanja prostora stanja kod kojeg put od početnog do konačnog stanja nije bitan

– Rješenje je isključivo konačno stanje

Page 18: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

18

Optimizacijski problemi

• CSP: Constraint Satisfaction Problem– Definira se niz ograničenja koja moraju biti

zadovoljena– Definira se kriterijska funkcija koja se

optimira

Page 19: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

19

Optimizacijski problemi

• Način rješavanja kombinatoričkihproblema već smo upoznali– Algoritmi pretraživanja prostora stanja

• Pretraživanje u širinu• Pretraživanje u dubinu• A*• …

• Nažalost, u praksi često neiskoristivi

Page 20: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

20

Optimizacijski problemi

• Problem trgovačkog putnika– Poznate koordinate n gradova na karti– Pronaći najkraću turu kroz sve gradove– Matematičkim žargonom: pronaći

Hamiltonov ciklus u grafu– NP težak problem

(faktorijelna složenost)

Page 21: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

21

Optimizacijski problemi

• Problem trgovačkog putnika

Page 22: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

22

Optimizacijski problemi

• Problem trgovačkog putnika– 12 gradova, 12 sekundi– 13 gradova, 2,5 minute– 14 gradova, pola sata– 15 gradova, 7,6 sati– 16 gradova, 4,7 dana– …– 500 gradova, ????

Page 23: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

23

Optimizacijski problemi

• Drugi problemi– Raspoređivanje neraspoređenih

studenata u grupe za predavanja– Izrada rasporeda međuispita– Izrada rasporeda laboratorijskih vježbi

• Iscrpnom pretragom– Puno, puno više vremena no što je svemir

star!

Page 24: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

24

Optimizacijski problemi

• Heuristike– Algoritmi koji pronalaze dovoljno dobra

rješenja, tipično ne nude garanciju optimalnosti, te imaju nisku računsku složenost (polinomijalnu)

– Dijelimo ih na• Konstrukcijske• Algoritmi lokalne pretrage

Page 25: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

25

Optimizacijski problemi

• Heuristike– Konstrukcijske

• Grade rješenje segment po segment– Algoritmi lokalne pretrage

• Kreću od nekog početnog rješenja i pokušavaju ga inkrementalno poboljšavati

Page 26: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

26

Optimizacijski problemi

• Metaheuristike– Skup algoritamskih koncepata koji

koristimo za definiranje heurističkih metoda primjenjivih na širok skup problema

– heuristika koja vodi problemski specifične heuristike

Page 27: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

27

Optimizacijski problemi

• Metaheuristike– Simulirano kaljenje– Tabu pretraživanje– Evolucijski algoritmi– Mravlji algoritmi– Algoritmi rojeva– Algoritmi umjetnih imunoloških sustava– …

Page 28: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

28

Genetski algoritam

•Izranjajuća inteligencija•Optimizacijski problemi•Genetski algoritam•Algoritam kolonije mrava•Algoritam roja čestica•Algoritmi umjetnog imunološkog sustava

Page 29: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

29

Genetski algoritam

• Evolucija kao inspiracija

• Populacijski algoritmi• Darwinova teorija o

postanku vrsta

Page 30: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

30

Genetski algoritam

• Temeljne postavke: Darwin– plodnost vrsta – potomaka uvijek ima više

no što je potrebno– veličina populacije je približno stalna– količina hrane je ograničena– kod vrsta koje se seksualno razmnožavaju,

nema identičnih jedinki već postojevarijacije, te

– najveći dio varijacija prenosi se nasljeđem

Page 31: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

31

Genetski algoritam

• Primjer problema– Naći x za koji je f(x) minimalna

)2cos(1010)( 2 xxxf ⋅⋅⋅−+= π

Page 32: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

32

Genetski algoritam

• Kako radi GA?– Radimo s populacijom kromosoma– Svaki kromosom je jedno rješenje

problema– Svako rješenje ima svoju dobrotu

(engl. fitness)– U našem primjeru dobrota i f(x) su suprotni

veći f(x), manja dobrota

Page 33: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

33

Genetski algoritam

• Implementacija– Iterativno iz trenutne generacije stvaramo

sljedeću– Potomke imaju veću šansu stvoriti bolja

rješenja– Rješenja se kombiniraju operatorom

križanja– Operator mutacije

Page 34: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

34

Genetski algoritam

• Dijagram toka

Nova populacija Mutacija Križanje

Evaluacija Provjera uvjeta Selekcija

Kraj

Stvaranje slučajne

populacije

Page 35: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

35

Genetski algoritam

• Uloga– Selekcija selekcijski pritisak brzina

konvergencije– Križanje pretraživanje okoline roditelja– Mutacija bijeg iz lokalnih ekstrema,

veliki skokovi u prostoru pretraživanja

Page 36: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

36

Genetski algoritam

• Binarni kromosom– Niz nula i jedinica koji se interpretira kao

rješenje problema (vrijednost varijable)– Npr. Trobitni kromosom: 000, 001, …, 111– Ako predstavlja realnu varijablu iz

područja [-2, 2], tada: 000≡-2, 001≡-1.43, …, 111≡2

– Broj bitova za određenu preciznost?

Page 37: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

37

Genetski algoritam

• Binarni kromosom– Složeniji primjer

• rješenje za funkciju od tri varijable x, y, z

Page 38: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

38

Genetski algoritam

• Križanje s jednom točkom prijeloma– Odabiru se dva roditelja– Slučajno se odabire točka prijeloma– Obavlja se križanje

Page 39: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

39

Genetski algoritam

• Više vrsta križanja– Križanje s jednom točkom prijeloma– Križanje s n točaka prijeloma– Uniformno križanje– …

Page 40: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

40

Genetski algoritam

• Operator mutacije– Zadana vjerojatnost mutacije bita– Operator okreće vrijednost bita

– Može generirati veliku promjenu!

Page 41: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

41

Genetski algoritam

• Izbor roditelja – više tehnika– Proporcionalna selekcija

(engl. Roulette-wheel selection)– Što je jedinka bolja, to ima veću šansu biti

izabrana

∑=

= n

jjfit

ifitiprobSel

1)(

)()(

Page 42: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

42

Genetski algoritam

• Izbor roditelja – proporcionalna selekcija

∑=

= n

jjfit

ifitilen

1)(

)()(

Page 43: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

43

Genetski algoritamP = stvori_početnu_populaciju(VEL_POP)evaluiraj(P)ponavljaj_dok_nije_kraj

nova_populacija P' = ∅ponavljaj_dok_je veličina(P')<VEL_POPodaberi R1 i R2 iz P{D1, D2} = krizaj(R1, R2)mutiraj D1, mutiraj D2dodaj D1 i D2 u P'

krajP = P'evaluiraj(P)

Kraj

Page 44: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

44

Genetski algoritam

Page 45: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

45

Algoritam kolonije mrava

•Izranjajuća inteligencija•Optimizacijski problemi•Genetski algoritam•Algoritam kolonije mrava•Algoritam roja čestica•Algoritmi umjetnog imunološkog sustava

Page 46: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

46

Algoritam kolonije mrava

• Mravi iskazuju zanimljivo ponašanje– Uspješno pronalaze

najkraći put do izvora hrane

Page 47: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

47

Algoritam kolonije mrava

• Eksperimenti

Page 48: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

48

Algoritam kolonije mrava

• Objašnjenje– Mravi prilikom kretanja za sobom

ostavljaju feromonski trag– Mrav se kreće slučajno, ali s većom

vjerojatnošću u smjeru u kojem osjeti jači feromonski trag

Page 49: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

49

Algoritam kolonije mrava

• Direktna primjena na probleme prikazive grafovima

• Npr. Iz 1 može u 2, 3 i 4

1

2

83

4 7

11

9

6

5

10

Mravinjak

Izvor hrane⎪⎪⎩

⎪⎪⎨

∈= ∑

∈ki

ki

Nlil

ij

kij

Nj

Njp

ki

ako,0

ako,α

α

ττ

konst=0τ

Page 50: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

50

Algoritam kolonije mrava

• Algoritam Ant System– Uporaba heurističke informacije dodatno

poboljšava ponašanje

nnCm

=0τ

( )⎪⎪⎩

⎪⎪⎨

∈⋅

= ∑∈

ki

ki

Nlilil

ijij

kij

Nj

Njp

ki

ako,0

ako,βα

βα

ητητ

1

2

83

4 7

11

9

6

5

10

Mravinjak

Izvor hrane

Page 51: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

51

Algoritam kolonije mrava

• Algoritam Ant Systemponavljaj dok nije kraj

ponovi za svakog mravcastvori rješenjevrednuj rješenje

kraj ponoviispari feromonske tragoveponovi za sve_ili_neke mraveazuriraj feromonske tragove

kraj ponovikraj ponavljanja

Page 52: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

52

Algoritam kolonije mrava

• Procedura: Stvori rješenje– Mrav kreće iz nekog čvora– Temeljem vjerojatnosti bira sljedeći čvor,

pa sljedeći, sve dok ne dođe do zadnjeg čvora

12

3,4

3,4

=

=

ητ 9.1

1.1

6,4

6,4

=

=

ητ

32.1

7,4

7,4

=

=

ητ

Uz α=1, β=2:

p(4 3)=11,9%

p(4 6)=23,7%

p(4 7)=64,4%

Page 53: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

53

Algoritam kolonije mrava

• Procedura: Vrednuj rješenje– Funkcija računa ukupnu duljinu puta– Prelazak iz jednog čvora u drugi tipično je

povezan određenom cijenom (gradovi udaljenost)

Page 54: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

54

Algoritam kolonije mrava

• Procedura: Ispari tragove– Funkcija feromonske tragove na svim

bridovima umanji za određeni iznos

– Geometrijska progresija!– Izuzetno skupo (graf ima puno bridova)

)1( ρττ −⋅← ijij

Page 55: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

55

Algoritam kolonije mrava

• Procedura: Ažuriraj tragove– Funkcija za odabranog mrava dodaje

nove feromonske tragove iznosa:

– Novo stanje je tada:

∑=

Δ+←m

k

kijijij

1τττ

⎩⎨⎧

=Δinačn,0

mrava tog- stazi na - brid je ako,/1 kjiCkkijτ

Page 56: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

56

Algoritam kolonije mrava

Page 57: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

57

Algoritam roja čestica

•Izranjajuća inteligencija•Optimizacijski problemi•Genetski algoritam•Algoritam kolonije mrava•Algoritam roja čestica•Algoritmi umjetnog imunološkog sustava

Page 58: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

58

Algoritam roja čestica

• Inspirirani jatima ptica: modeliranje socijalnih interakcija jedinki– Svaka jedinka ima svoje

stavove– Svaka jedinka ima

informaciju iz svoje okoline– Kombiniranje informacija

Page 59: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

59

Algoritam roja čestica

• Svaka čestica:– Ima svoju trenutnu poziciju i brzinu– Pamti svoje najbolje pronađeno rješenje

(pbest)– Ima pristup najboljem pronađenom

rješenju okoline (gbest ili lbest)• Čestice lete kroz prostor i obavljaju

pretraživanje

Page 60: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

60

Algoritam roja čestica

• Ažuriranje:

C1 – faktor individualnostiC2 – socijalna komponenta

Uobičajeno C1=C2=2

)(())(() 2,1,, xgbestrandcxpbestrandcvv ddididi −⋅⋅+−⋅⋅+=

dididi vxx ,,, +=)(2 xgbestc r

−⋅

)(1 xpbestc r−⋅

arbr

cr

Page 61: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

61

Algoritam roja čestica// inicijaliziraj_populaciju:za i = 1 do VEL_POP

za d iz 1 do DIMx[i][d] = random(xmin[d], xmax[d])v[i][d] = random(vmin[d], vmax[d])

krajkrajponavljaj dok nije kraj

Na sljedećem slide-u

kraj

Page 62: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

62

Algoritam roja čestica// evaluiraj_populaciju:za i = 1 do VEL_POP

f[i] = funkcija(x[i]);kraj// ima li čestica svoje bolje rješenje?za i = 1 do VEL_POP

ako je f[i] bolji od pbest_f[i] tadapbest_f[i] = f[i]pbest[i] = x[i]

krajkraj// ima li čestica globano najbolje rješenje?za i = 1 do VEL_POP

ako je f[i] bolji od gbest_f[i] tadagbest_f[i] = f[i]gbest[i] = x[i]

krajkraj// ažuriraj brzinu i poziciju česticeza i = 1 do VEL_POP

za d iz 1 do DIMv[i][d] = v[i][d] + c1*rand()*(pbest[i][d]-x[i][d])

+ c2*rand()*(gbest[d]-x[i][d])v[i][d] = iz_opsega(v[i][d], vmin[d], vmax[d])x[i][d] = x[i][d] + v[i][d]

krajkraj

Page 63: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

63

Algoritam roja čestica

Page 64: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

64

Algoritmi umjetnog imunološkog sustava

•Izranjajuća inteligencija•Optimizacijski problemi•Genetski algoritam•Algoritam kolonije mrava•Algoritam roja čestica•Algoritmi umjetnog imunološkog sustava

Page 65: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

65

Imunološki algoritmi

• Inspirirani imunološkim sustavom sisavaca– Imunološki sustav ima

sposobnost prilagodbe i sposobnost učenja

Page 66: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

66

Imunološki algoritmi

• Makrofag – bijela krvna zrnca koja traže uljeze (antigene) i uništavaju ih

• Sudjeluju u stvaranju antitijela specifičnih za pojedine antigene

• Antitijela se vežu s antigenima i omogućavaju T stanicama uništavanje uljeza

Page 67: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

67

Imunološki algoritmi

• Prilikom nailaska na antigen kojem s kojim je antitijelo koliko-toliko kompatibilno (mjera kompatibilnosti zove se afinitet), antitijelo započinje postupak stvaranja klonova kako bi nastalo dovoljno antitijela za suzbijanje antigena

Page 68: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

68

Imunološki algoritmi

• Intenzitet kloniranja direktno je proporcionalan afinitetu– Što je afinitet veći, antitijelo će stvoriti više

svojih klonova

Page 69: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

69

Imunološki algoritmi

• Prilikom postupka kloniranja, klonovidoživljavaju potpuno slučajne mutacije

• Dio klonova bit će manjeg afiniteta, no dio će biti većeg afiniteta

• Klonovi većeg afiniteta i sami će se klonirati (i to još većim intenzitetom)

Page 70: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

70

Imunološki algoritmi

• S vremenom će nastati antitijela vrlo visokog afiniteta koja će se efikasno boriti s antigenima

• Dio specijaliziranih antitijela ostaje permanentno u tijelu– Sekundarni odgovor imunološkog sustava

izuzetno efikasan– Stjecanje imunosti!

Page 71: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

71

Imunološki algoritmi

• Klonovi vrlo niskog afiniteta koji se nisu specijalizirali niti za jedan antigen s vremenom će biti prekrojeni!

• Proučavanja imunološkog sustava dovela su do spoznaje da evolucija (križanjem dvaju roditelja) nije jedini način razvoja!

Page 72: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

72

Imunološki algoritmi

• Primjenjeno na problem optimizacije– Antitijelo je rješenje problema; algoritam

radi s populacijom antitijela– Antigen je funkcija koja se optimira – traži

se prikladno antitijelo maksimalnog afiniteta

– Afinitet je ekvivalent dobroti rješenja, i najčešće predstavlja upravo vrijednost funkcije u promatranoj točki (antitijelu)

Page 73: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

73

Imunološki algoritmi

• Jednostavan imunološki algoritamSIA(Ag, l, d, dup)

t = 0inicijaliziraj P(0) = {x1, x2, …, xd}evaluiraj(P(0), Ag)ponavljaj dok nije zaustavi(P(t))Pclo = kloniraj(P(t), dup)Phyp = hipermutiraj(Pclo)evaluiraj(Phyp, Ag)P(t+1) = odaberi(Phyp ∪ P(t), d)t = t+1

kraj ponavljanjakraj

Page 74: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

74

Imunološki algoritmi

• Algoritam ClonAlgCLONALG(Ag, n, d, β)t = 0inicijaliziraj P(0) = {x1, x2, …, xd}ponavljaj dok nije zaustavi(P(t))evaluiraj(P(t), Ag)P(t) = odaberi(P(t), n)Pclo = kloniraj(P(t), β)Phyp = hipermutiraj(Pclo)evaluiraj(Phyp, Ag)P' = odaberi(Phyp, n)Pbirth = stvoriNove(d)P(t+1) = zamijeni(P', Pbirth)t = t+1

kraj ponavljanjaevaluiraj(P(t), Ag)

kraj

⎣ ⎦∑=

⋅=n

iC inN

1/)(β

fep ⋅−= ρ

Page 75: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

75

Imunološki algoritmi

• Kod ClonAlg– Antitijelo se klonira proporcionalno

afinitetu– Operator hipermutacije djeluje obrnuto

proporcionalno afinitetu

Page 76: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

76

Imunološki algoritmi

Page 77: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

77

Zaključak

• Prirodom inspiriani algoritmi – danas vruće područje istraživanja!

• Po prvi puta pronađen način kako se uhvatiti u koštac s prethodno nerješivim problemima

• Svakih nekoliko godina novi algoritam (primjerice Bee Colony Optimization!)

Page 79: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

79

Linkovi

• Skriptalink…

• Implementacija svih algoritamahttp://java.zemris.fer.hr/nastava/ui/evoAlg.zip

Page 80: Prirodom inspirirano optimizacijski algoritmi - FERjava.zemris.fer.hr/...PrirodomInspiriraniOptimizacijskiAlgoritmi-ppt.pdf · Trobitni kromosom: 000, 001, …, 111 – Ako predstavlja

80