Upload
noname
View
230
Download
1
Embed Size (px)
DESCRIPTION
Fuzzy produkcijski sustavi
Citation preview
FUZZY PRODUKCIJSKI SUSTAV - primjeriProf.dr.sc.Darko [email protected] 813
Fuzzy Track Inverted Pendulum Hot Shower
mailto:[email protected]
FUZZY TRACKOpis zadatka:Kamion treba iz poetnog poloaja dovesti do krajnjeg za razliite poetne orjentacije.
FUZZY TRACKSimulacijski prostor je 100 x 100, a ishodite je u donjem lijevom uglu. Kamion polazi iz toke (x,y) i treba doi u toku (100,50). Pri tome kamion moe biti zakrenut bili kako. Na prvoj slici je poetni poloaj (50,50) i zakret 90o, a na drugoj poetni poloaj (20,41) i zakret 45o.
FUZZY TRACK
Konani rezultat simulacije i za jedan i za drugi sluaj. Kako smo do toga doli pokazati emo u nastavku.
FUZZY TRACK
U voenju kamiona koriste se fuzzy produkcijska pravila oblika:
If the truck is left of the platform's x position target by a medium amount (LeftMedium) and the truck angle is below 90 degrees by a small amount (SmallBelow90) then change the angle of the truck by a negative small amount (NS)
FUZZY TRACK
Ukupna tablica produkcijskih pravila ima 35 pravila koje moemo tablino prikazati slikom desno, gdje redovi odgovaraju kutu orijentacije kamiona, a stupci relativnom poloaju x zadnjeg dijela kamiona u odnosu na konanu toku dolaska do cilja.
FUZZY TRACK
Kuteva orijentacije ima 7, a a relativnog x poloaja kamiona u odnosu na konanu toku dolaska do cilja 5:
FUZZY TRACK
Kako ih definiramo grafiki pomou pridrune funkcije
FUZZY TRACKPogledajmo sada primjer. Neka je u poetnom poloaju kamion zakrenut za kut 0, i po x osi nije pomaknut u odnosu na konanu toku.
FUZZY TRACKU prvom koraku aktiviraju se dva pravila:
1. If the truck is left of the platform's x position target by a zero amount (CE) and the truck angle is Right Below (RB) then change the angle of the truck by a positive medium amount (PM)
2. If the truck is left of the platform's x position target by a zero amount (CE) and the truck angle is Right Upper (RU) then change the angle of the truck by a positive medium amount (PM)
FUZZY TRACKDrugo je pravilo zadovoljeno s veim stupnjem zadovoljenja, pa je crvenije. Nakon primjene fuzzy produkcijskog sustava zakret volana je 15 stupnjeva pozitivno (u desno).
FUZZY TRACKU slijedeem koraku aktiviraju se druga dva pravila koja kao rezultat daju PM i PB zakret volana koji rezultira zakretom od 18.3378 stupnjeva.
FUZZY TRACK
Kako se proraunava taj zakret fuzzy produkcijskim sustavom pogledajmo na primjeru aktiviranja
FUZZY TRACK
Kamion do konanog poloaja doe nakon 52 iteracije.
Pogledajmo i samu simulaciju.
INVERTED PENDULUMOpis zadatka:Inverzno njihalo se pomakne iz poetnog poloaja i ono se treba to prije vratiti u nulti neutralni poloaj.
INVERTED PENDULUMPendulum se vodi samo sa 11 pravila koja u uvjetnom dijelu imaju varijable: Error (odstupanje u rad od vertikalne osi) i Omega (kutna brzina penduluma u rad/s), dok je izlaz struja motora (Current).
Vrijednosti svih varijabli su:
NM - negative medium , NS - negative small , ZE - zero , PS - positive small , PM - positive medium
INVERTED PENDULUM
Primjer primjene pravila:
INVERTED PENDULUM
Izlaz se dobije unijom ova dva ponderirana neizrazita skupa struje motora PS i PM
INVERTED PENDULUM
Izlaz se dobije unijom ova dva ponderirana neizrazita skupa struje motora PS i PM, a interpretacija se radi metodom teita.
FUZZY TU - poetak
FUZZY TU - cilj
FUZZY TU - cilj
Zadatak:Protok namjestiti to blie 12 lit/min i temperaturu to blie 36 C.
Fuzzy pravila napisana u posebnom jeziku za pisanje fuzzy produkcijskih sustava (FuzzyJESS):
(defrule cold_OK "if temp cold and pressure OK then change cold valve positive medium and change hot valve zero" (temp ?t&:(fuzzy-match ?t "cold")) (flow ?f&:(fuzzy-match ?f "OK")) => (assert (change_hv (new FuzzyValue ?*hotValveChangeFvar* "PM")) (change_cv (new FuzzyValue ?*coldValveChangeFvar* "Z")) )
FUZZY TU slijed primjene produkcijskih pravila
Initially ...Cold Valve: 0.0Hot Valve: 0.0ShowerTemp: 5.0Shower Flow: 0.0
Cycle 1:Rule: if Temp none and Flow none then change Hot Valve PS and change Cold Valve PM firesRule: if Temp cold and Flow low then change Hot Valve PB and change Cold Valve Z firesCold Valve Change: 0.019393939393939394Hot Valve Change: 0.05161111111111112Cold Valve: 0.019393939393939394Hot Valve: 0.05161111111111112ShowerTemp: 41.34326765772815Shower Flow: 1.775126262626263
FUZZY TU slijed primjene produkcijskih pravilaCycle 2:
Rule: if Temp hot and Flow low then change Hot Valve Z and change Cold Valve PB firesCold Valve Change: 0.06237161616308663Hot Valve Change: 0.0Cold Valve: 0.08176555555702603Hot Valve: 0.05161111111111112ShowerTemp: 24.347878605906374Shower Flow: 3.3344166667034285
Cycle 3:Rule: if Temp cold and Flow low then change Hot Valve PB and change Cold Valve Z firesCold Valve Change: 0.0Hot Valve Change: 0.06380642533114854Cold Valve: 0.08176555555702603Hot Valve: 0.11541753644225966ShowerTemp: 34.266590576305035Shower Flow: 4.929577299982142
FUZZY TU slijed primjene produkcijskih pravila
Cycle 10:Rule: if Temp OK and Flow low then change Hot Valve PS and change Cold Valve PS firesRule: if Temp OK and Flow OK then change Hot Valve Z and change Cold Valve Z firesCold Valve Change: 0.013809871825128675Hot Valve Change: 0.02084535847523144Cold Valve: 0.1828118777393236Hot Valve: 0.27594601696970317ShowerTemp: 35.07534258835214Shower Flow: 11.468947367725669
Shower now within limits: Temp between 34.0 and 38.0Flow between 11.0 and 13.0