Metahevristike [email_address] AI urice III
Metahevristike <ul><li>Splošni prijemi </li></ul><ul><li>Rešeavnje optimizacijskih problemov </li></ul><ul><li>Črna škatlj...
Evolucijski algoritmi
Evolucija <ul><li>Populacija  </li></ul><ul><ul><li>več vzporednih rešitev </li></ul></ul><ul><li>Preživetje najmočnejšega...
Gen <ul><li>Niz simbolov </li></ul><ul><li>Vektor </li></ul><ul><li>Koda </li></ul>
Evolucijski algoritem <ul><li>Vsako generacijo: </li></ul><ul><li>Odberemo prvake </li></ul><ul><li>Jih razplodimo </li></...
Kako izbrati <ul><li>Turnir </li></ul><ul><li>Ruleta </li></ul><ul><li>Stochastic universal sampling </li></ul><ul><li>Sos...
Turnir <ul><li>Za vsakega preživelega </li></ul><ul><ul><li>Izrebamo n osebkov </li></ul></ul><ul><ul><li>Najboljši se uvr...
Ruleta <ul><li>Fitness določa verjetnost </li></ul>
Stochastic universal sampling <ul><li>Pravičnejša ruleta (vsi pridejo na vrsto) </li></ul>
<ul><li>Populacijo razbijemo na več podpopulacij </li></ul><ul><ul><li>Fiksno ali kontekstualno </li></ul></ul><ul><li>Kri...
Razplajanje
Mutacija <ul><li>Naključna sprememba gena </li></ul><ul><li>Enako verjetna širom populacije </li></ul>
Križanje <ul><li>Rekombiniranje 2+ osebkov v novega </li></ul><ul><li>Boljši se pogosteje križajo </li></ul><ul><li>Otrok ...
Roji
Roj delcev <ul><li>Vsako epoho za vsak delec posodobimo </li></ul><ul><li>Hitrost </li></ul><ul><li>Položaj </li></ul><ul>...
Posodobitev hitrosti <ul><li>r1, r2 = (random-vector d) </li></ul><ul><li>v =  (vector+ </li></ul><ul><li>(scale v w) </li...
Posodobitev položaja <ul><li>(vector+ x v) </li></ul>
Simulirano ohlajanje
Simulirano ohlajanje <ul><li>Vsako epoho se verjetnostno odločimo za prehod v eno izmed sosednjih stanj (difuzija) </li></...
Režimi ohlajanja <ul><li>Linearno vsakih k-korakov  </li></ul><ul><li>(incf T dT) </li></ul><ul><li>Eksponetno  </li></ul>...
Meta-metahevristike
Kaj uporabiti?
Upcoming SlideShare
Loading in …5
×

Metahevristike

840 views

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
840
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Metahevristike

  1. 1. Metahevristike [email_address] AI urice III
  2. 2. Metahevristike <ul><li>Splošni prijemi </li></ul><ul><li>Rešeavnje optimizacijskih problemov </li></ul><ul><li>Črna škatljica </li></ul><ul><li>Kombiniranje preprostih hevristik </li></ul><ul><li>Ponavljanje </li></ul>
  3. 3. Evolucijski algoritmi
  4. 4. Evolucija <ul><li>Populacija </li></ul><ul><ul><li>več vzporednih rešitev </li></ul></ul><ul><li>Preživetje najmočnejšega (fitness) </li></ul><ul><ul><li>Prilagajanje na okolje </li></ul></ul><ul><ul><li>Odmiranje </li></ul></ul><ul><li>Samoreplikacija genov </li></ul><ul><ul><li>Razmnoževanje </li></ul></ul>
  5. 5. Gen <ul><li>Niz simbolov </li></ul><ul><li>Vektor </li></ul><ul><li>Koda </li></ul>
  6. 6. Evolucijski algoritem <ul><li>Vsako generacijo: </li></ul><ul><li>Odberemo prvake </li></ul><ul><li>Jih razplodimo </li></ul><ul><ul><li>Mutacije </li></ul></ul><ul><ul><li>križanje </li></ul></ul>
  7. 7. Kako izbrati <ul><li>Turnir </li></ul><ul><li>Ruleta </li></ul><ul><li>Stochastic universal sampling </li></ul><ul><li>Soseščine </li></ul>
  8. 8. Turnir <ul><li>Za vsakega preživelega </li></ul><ul><ul><li>Izrebamo n osebkov </li></ul></ul><ul><ul><li>Najboljši se uvrsti v naslednjo generacijo </li></ul></ul>
  9. 9. Ruleta <ul><li>Fitness določa verjetnost </li></ul>
  10. 10. Stochastic universal sampling <ul><li>Pravičnejša ruleta (vsi pridejo na vrsto) </li></ul>
  11. 11. <ul><li>Populacijo razbijemo na več podpopulacij </li></ul><ul><ul><li>Fiksno ali kontekstualno </li></ul></ul><ul><li>Križaje znotraj soseščine bolj verjetno </li></ul><ul><li>Evolucijski pritisk je v vsaki soseščini drugačen </li></ul><ul><li>Večja raznolikost </li></ul>Soseščine
  12. 12. Razplajanje
  13. 13. Mutacija <ul><li>Naključna sprememba gena </li></ul><ul><li>Enako verjetna širom populacije </li></ul>
  14. 14. Križanje <ul><li>Rekombiniranje 2+ osebkov v novega </li></ul><ul><li>Boljši se pogosteje križajo </li></ul><ul><li>Otrok dobi od vsakega starša del genov </li></ul><ul><ul><li>Naključna izbira genov </li></ul></ul><ul><ul><li>Sekvenca genov kot enota </li></ul></ul><ul><ul><li>Alele </li></ul></ul>
  15. 15. Roji
  16. 16. Roj delcev <ul><li>Vsako epoho za vsak delec posodobimo </li></ul><ul><li>Hitrost </li></ul><ul><li>Položaj </li></ul><ul><li>Lokalno in globalno najboljšo rešitev </li></ul>
  17. 17. Posodobitev hitrosti <ul><li>r1, r2 = (random-vector d) </li></ul><ul><li>v = (vector+ </li></ul><ul><li>(scale v w) </li></ul><ul><li>(vector* (scale r1 c1) </li></ul><ul><li> (vector- local-best x)) </li></ul><ul><li> (vector* (scale r2 c2) </li></ul><ul><li> (vector- global-best x))) </li></ul><ul><li>Dušenje </li></ul><ul><li>Repulzija </li></ul>
  18. 18. Posodobitev položaja <ul><li>(vector+ x v) </li></ul>
  19. 19. Simulirano ohlajanje
  20. 20. Simulirano ohlajanje <ul><li>Vsako epoho se verjetnostno odločimo za prehod v eno izmed sosednjih stanj (difuzija) </li></ul><ul><li>Verjetnost prehoda na slabše upada s časom </li></ul><ul><ul><li>(exp (/ (- (E state1) (E state2)) T)) </li></ul></ul><ul><li>Hranimo doslej najboljšo rešitev </li></ul><ul><li>Reset </li></ul>
  21. 21. Režimi ohlajanja <ul><li>Linearno vsakih k-korakov </li></ul><ul><li>(incf T dT) </li></ul><ul><li>Eksponetno </li></ul><ul><li>(T (1+t)) = (/ a (T t)) </li></ul><ul><li>(T (1+t)) = (* (expt a t) (T t)) </li></ul><ul><li>Adaptivno </li></ul>
  22. 22. Meta-metahevristike
  23. 23. Kaj uporabiti?

×