17
Kvalitativno Kvalitativno usmerjanje genetskih usmerjanje genetskih algoritmov pri algoritmov pri vodenju dinamičnih vodenju dinamičnih sistemov sistemov Gregor Leban Gregor Leban mentor: prof. dr. Ivan Bratko mentor: prof. dr. Ivan Bratko DIPLOMSKA NALOGA DIPLOMSKA NALOGA

Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

  • Upload
    gitel

  • View
    84

  • Download
    0

Embed Size (px)

DESCRIPTION

DIPLOMSKA NALOGA. Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov. Gregor Leban mentor: prof. dr. Ivan Bratko. Namen. Genetski algoritmi pri svojem delovanju običajno ne uporabljajo nobenega znanja o problemu, ki ga rešujejo. Dodatno znanje → pohitritev razvoja? - PowerPoint PPT Presentation

Citation preview

Page 1: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Kvalitativno Kvalitativno usmerjanje genetskih usmerjanje genetskih

algoritmov pri algoritmov pri vodenju dinamičnih vodenju dinamičnih

sistemovsistemovGregor LebanGregor Leban

mentor: prof. dr. Ivan Bratkomentor: prof. dr. Ivan Bratko

DIPLOMSKA NALOGADIPLOMSKA NALOGA

Page 2: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

NamenNamen

Genetski algoritmi pri svojem Genetski algoritmi pri svojem delovanju običajno ne uporabljajo delovanju običajno ne uporabljajo nobenega znanja o problemu, ki ga nobenega znanja o problemu, ki ga rešujejo.rešujejo.

Dodatno znanje → pohitritev razvoja?Dodatno znanje → pohitritev razvoja? Moja eksperimentalna domena: Moja eksperimentalna domena:

vodenje dinamičnih sistemovvodenje dinamičnih sistemov Kvalitativno znanjeKvalitativno znanje

Page 3: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Voziček z navpično Voziček z navpično postavljeno palicopostavljeno palico

NalogaNaloga: premik vozička iz začetnega : premik vozička iz začetnega stabilnegastabilnega položaja položaja XX00 do do stabilnega stabilnega ciljnega položaja X ciljnega položaja X11, ne da bi pri tem , ne da bi pri tem padla palica.padla palica.

Page 4: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Kontejnerski žerjavKontejnerski žerjav

NalogaNaloga: premik tovora iz začetnega položaja (X: premik tovora iz začetnega položaja (X00,L,L00) do ) do ciljnega položaja (Xciljnega položaja (X11,L,LGG), pri čemer tovor na cilju ne sme ), pri čemer tovor na cilju ne sme nihatinihati

Page 5: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Vodenje dinamičnega Vodenje dinamičnega sistemasistema

bang-bang način vodenja (2 vrednosti za silo)bang-bang način vodenja (2 vrednosti za silo) Kontroler je bil predstavljen v obliki kontrolne Kontroler je bil predstavljen v obliki kontrolne

tabeletabele

X [-5, X [-5, 0]0]

X’ [-2, 0, X’ [-2, 0, 2]2]

[-0.3, 0, [-0.3, 0, 0.2]0.2]

’’[-0.1, 0, [-0.1, 0, 0.2]0.2]

FF

X<-5X<-5 X’<-2X’<-2 <-0.3<-0.3 ’ ’ < -0.1< -0.1 +10+10NN

X<-5X<-5 X’<-2X’<-2 <-0.3<-0.3 -0.1<-0.1<’ < 0’ < 0 -10N-10N

X<-5X<-5 X’<-2X’<-2 <-0.3<-0.3 0 < 0 < ’ < 0.2’ < 0.2 +10+10NN

X<-5X<-5 X’<-2X’<-2 <-0.3<-0.3 ’ ’ > 0.2> 0.2 +10+10NN

X<-5X<-5 X’<-2X’<-2 -0.3<-0.3<<0<0 ’ ’ < -0.1< -0.1 -10N-10N

...... ...... ...... ...... ......

Page 6: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Kvalitativno sklepanjeKvalitativno sklepanje Posplošene vrednosti spremenljivkPosplošene vrednosti spremenljivk

O vsaki spremenljivki imamo 2 podatka:O vsaki spremenljivki imamo 2 podatka: Vrednost spremenljivkeVrednost spremenljivke Vrednost odvodaVrednost odvoda

Vrednosti spremenljivke so lahko:Vrednosti spremenljivke so lahko: Odlikovane vrednosti (npr. za X’): Odlikovane vrednosti (npr. za X’): minf, mmax, zero, minf, mmax, zero,

max, infmax, inf Interval med dvema sosednjima o.v.: Interval med dvema sosednjima o.v.: zero..maxzero..max

Smeri spreminjanja: Smeri spreminjanja: inc, std, decinc, std, dec Kvalitativne omejitveKvalitativne omejitve

Y=MY=M++(X), Y=M(X), Y=M--(X)(X) Pospešek = deriv(Hitrost)Pospešek = deriv(Hitrost) Z = sum(X,Y)Z = sum(X,Y)

Page 7: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Iskanje kvalitativne Iskanje kvalitativne rešitverešitve

QSIM za Prolog (I. Bratko)QSIM za Prolog (I. Bratko) Kvalitativna modela dinamičnih sistemovKvalitativna modela dinamičnih sistemov mLmL’’cos ’’cos + (m+M)X’’ + mL + (m+M)X’’ + mL ’sin ’sin = F = F

( J - mL( J - mL2 2 ) ) ’’ + mLX’’ - mgL ’’ + mLX’’ - mgL = 0 = 0

XX’’’’ = = - M- M00++(() + M) + M00

++(F) (F)

’’’’ = = MM00++(()) - - M M00

++(F)(F)

Postopek:Postopek: Izgradnja prostora veljavnih stanjIzgradnja prostora veljavnih stanj Povezava med sosednjimi stanjiPovezava med sosednjimi stanji Iskanje poti v grafuIskanje poti v grafu

Velikost grafa: 300 stanj, 1000 prehodovVelikost grafa: 300 stanj, 1000 prehodov

Page 8: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Primer kvalitativne rešitve Primer kvalitativne rešitve za vozičekza voziček

Page 9: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Genetski algoritemGenetski algoritem Implementacija:Implementacija:

Reprodukcija v stabilnem stanjuReprodukcija v stabilnem stanju Linearna normalizacijaLinearna normalizacija Operatorja: mutacija, dvomestno križanjeOperatorja: mutacija, dvomestno križanje Funkcija uspešnosti:Funkcija uspešnosti:

VAL = 1000*UP + 1000*GOAL - VAL = 1000*UP + 1000*GOAL -

Eksperimenti:Eksperimenti: Različne oblike kontrolnih tabelRazlične oblike kontrolnih tabel

Dolžine osebkov:Dolžine osebkov: Do 600 bitov pri vozičkuDo 600 bitov pri vozičku Do 2300 bitov pri žerjavuDo 2300 bitov pri žerjavu

Razne verjetnosti mutacijeRazne verjetnosti mutacije

Page 10: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Uporaba kvalitativne rešitve Uporaba kvalitativne rešitve v genetskem algoritmuv genetskem algoritmu

Spremenil operator mutacije:Spremenil operator mutacije:1.1. Naključno izbiranje ene vrstice kontrolne tabele.Naključno izbiranje ene vrstice kontrolne tabele.

2.2. Preveri, ali za izbrano vrstico obstaja stanje v Preveri, ali za izbrano vrstico obstaja stanje v kvalitativni rešitvi, ki bi enolično določalo kvalitativni rešitvi, ki bi enolično določalo pravilno vrednost sile.pravilno vrednost sile.

3.3. Če tako stanje obstaja in je trenutna vrednost Če tako stanje obstaja in je trenutna vrednost sile napačna, potem spremeni vrednost sile in sile napačna, potem spremeni vrednost sile in končaj. Sicer se vrni na točko 1.končaj. Sicer se vrni na točko 1.

Če v 10 poskusih ne izvedemo prilagojene Če v 10 poskusih ne izvedemo prilagojene mutacije izvedemo običajno naključno mutacije izvedemo običajno naključno mutacijomutacijo

Page 11: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Rezultati za primer Rezultati za primer vozičkavozička

Page 12: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Rezultati za primer Rezultati za primer žerjavažerjava

Page 13: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

ZaključkiZaključki

Poskusi kažejo, da se z uporabo Poskusi kažejo, da se z uporabo kvalitativne rešitve kvalitativne rešitve znatno pohitri znatno pohitri razvojrazvoj genetskega algoritma genetskega algoritma

prednosti in slabostiprednosti in slabosti

Page 14: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Prednosti uporabe Prednosti uporabe kvalitativne rešitvekvalitativne rešitve

Opazna pohitritev razvoja osebkov. Opazna pohitritev razvoja osebkov. Tipične dosežene pohitritve:Tipične dosežene pohitritve: za voziček: za voziček: 2 – 3 kratna2 – 3 kratna za žerjav: za žerjav: 2 – 50 kratna2 – 50 kratna

Kvalitativna rešitev je Kvalitativna rešitev je robustnarobustna, , neodvisna od vrednosti parametrovneodvisna od vrednosti parametrov

Page 15: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Težave pri uporabi kvalitativne Težave pri uporabi kvalitativne rešitverešitve

Potrebne so posplošitve modelaPotrebne so posplošitve modela Časovno zahtevno iskanje Časovno zahtevno iskanje

kvalitativnih rešitevkvalitativnih rešitev Veliko število možnih vedenj. Kako Veliko število možnih vedenj. Kako

izbrati pravo vedenje?izbrati pravo vedenje? Mutacija, ki uporablja kvalitativno Mutacija, ki uporablja kvalitativno

znanje, potrebuje 10 krat več časa za znanje, potrebuje 10 krat več časa za izračun, kot običajna mutacijaizračun, kot običajna mutacija

Page 16: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Nadaljnje deloNadaljnje delo

uporaba drugih kvalitativnih rešitev, uporaba drugih kvalitativnih rešitev, ki jih kvalitativna modela ponujataki jih kvalitativna modela ponujata

indukcija kvalitativnega modela iz indukcija kvalitativnega modela iz posnetkov vodenjaposnetkov vodenja

pohitritev iskanja kvalitativne rešitvepohitritev iskanja kvalitativne rešitve spremembe v kvalitativnem modeluspremembe v kvalitativnem modelu usmerjeno preiskovanje prostora stanjusmerjeno preiskovanje prostora stanj

Page 17: Kvalitativno usmerjanje genetskih algoritmov pri vodenju dinamičnih sistemov

Vprašanja?Vprašanja?