Fordított inga
Fordított inga
Fordított inga
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Fordított</strong> <strong>inga</strong><br />
Feladat:<br />
Egy fordított <strong>inga</strong> egyensúlyban tartása egy mozgó kocsin, amely csak előre és<br />
hátra mozoghat „v” sebességgel, ami a kimenete lesz a vezérlőnek.<br />
A bemenő jelek az „α” szög illetve a „szögsebesség”<br />
Definiáljuk a mozgásokat = fuzzifikáció<br />
Hátra gyors (cián) Előre gyors (magenta) Áll (piros)<br />
Hátra lassú (zöld) Előre lassú (kék)<br />
α
Felállítjuk a Fuzzy halmazokat (fuzzifikáció) a bemenetekre is: az α<br />
szögre és a szögsebességre is:<br />
α Szögek Fuzzy halmazai:<br />
Szögsebességek Fuzzy halmazai
Felállítjuk a Fuzzy szabályokat:<br />
Példaként kettőt leírok, a többit táblázatban, (ezek a klasszikus HA,.. Akkor<br />
szabályok, ÉS kapcsolatban)<br />
1. HA a bezárt szög „0” ÉS a szögsebesség is „0”, AKKOR a sebesség is legyen „0”<br />
2. HA a bezárt szög „0” ÉS a szögsebesség „előre lassú”, AKKOR a sebesség is legyen „előre lassú”.<br />
Táblázatban (szabálybázis)<br />
összefoglalva a lehetőségek:<br />
ANTECEDENSEK KONZEKVENSEK<br />
Sebességek<br />
S<br />
Z<br />
Ö<br />
g<br />
S<br />
E<br />
B<br />
E<br />
S<br />
S<br />
É<br />
G<br />
Hátra<br />
gyors<br />
Hátra<br />
lassú<br />
nulla<br />
Előre<br />
lassú<br />
Előre<br />
gyors<br />
Hátra<br />
nagy<br />
Hátra<br />
gyors<br />
Hátra<br />
kicsi<br />
Hátra<br />
lassú<br />
nulla<br />
Bezárt szögek<br />
nulla<br />
Hátra<br />
gyors<br />
Hátra<br />
lassú<br />
nulla<br />
Előre<br />
lassú<br />
Előre<br />
gyors<br />
Előre<br />
kicsi<br />
nulla<br />
Előre<br />
lassú<br />
Előre<br />
nagy<br />
Előre<br />
gyors
A folyamat leírása egy konkrét érték segítségével:<br />
Egy konkrét érték ábrázolása a<br />
szögsebességre:<br />
0,75<br />
0,25<br />
Egy konkrét érték ábrázolása a<br />
bezárt α szögre<br />
0,6<br />
0,4
Nézzük a konkrét szabályt:<br />
1. HA a bezárt szög „0” ÉS a szögsebesség is „0”, AKKOR a sebesség is legyen „0”<br />
Megállapítottuk, hogy a valóságban bezárt szögünk (lásd<br />
ábra), a 0,75-ös tagsági értéknek felel meg. (vagyis annak az<br />
igazságtartalma, hogy a bezárt szögünk „0” = 0,75 – vagyis elég kicsi<br />
szögről van szó.)<br />
Nézzük mi a Fuzzy „0” - ba tartozó bezárt szögek halmaza.<br />
Látunk az ábrán egy 0-hoz közel álló értéket.
Ugyanezt megnézzük a szögsebességre:<br />
A majdnem „0”<br />
szöghöz, 0,75 értékű<br />
tagsági függvény<br />
tartozik.<br />
A majdnem „0”<br />
szögsebességhez, 0,4<br />
értékű tagsági függvény<br />
tartozik.
(1.) A két halmaz közti ÉS kapcsolat és az 1. variációra<br />
{(min(0,75;0,4)} vonatkozó kimeneti sebesség-érték:<br />
Mivel a szabályban a két halmaz ÉS kapcsolattal kapcsolódik (t=min(a,b) ami a konkrét adatokkal:<br />
min(0.75,0.4) = 0,4. Vagyis a függvény kimenete a „Fuzzy-s nulla” sebesség tagsági f. értéke =0,4.
(2.) A két halmaz közti ÉS kapcsolat és a 2. variációra<br />
{(min(0,75;0,6)} vonatkozó kimeneti sebesség-érték:<br />
0,6<br />
0,75<br />
min
(3.) A két halmaz közti ÉS kapcsolat és a 3. variációra<br />
{(min(0,25;0,4)} vonatkozó kimeneti sebesség-érték:<br />
0,4<br />
0,25<br />
min
(4.) A két halmaz közti ÉS kapcsolat és a 4. variációra<br />
{(min(0,25;0,6)} vonatkozó kimeneti sebesség-érték:<br />
0,6<br />
0,25<br />
min
Az eredmények összefoglalva:<br />
min(0,75;0,4)=0,4<br />
(1.) HA a bezárt szög „0” ÉS a<br />
szögsebesség is „0”, AKKOR a<br />
sebesség is legyen „0”<br />
min(0,25;0,4)=0,25<br />
(3.) HA a bezárt szög „előre kicsi” ÉS a<br />
szögsebesség „0”, AKKOR a<br />
sebesség is legyen „előre lassú”<br />
min(0,75;0,6)=0,6<br />
(2.) HA a bezárt szög „0” ÉS a<br />
szögsebesség „hátra lassú”,<br />
AKKOR a sebesség is legyen „<br />
hátra lassú”<br />
min(0,25;0,6)=0,25<br />
(4.) HA a bezárt szög „előre kicsi” ÉS a<br />
szögsebesség „hátra lassú”,<br />
AKKOR a sebesség is legyen „0”
A négy kimenet ábrázolva egy halmazba (Mamdami halmaz):<br />
0,6<br />
0,4 (és 0,2 is de a nagyobb „letakarja” a kisebbet)<br />
0,25<br />
A végeredmény egy összetett Fuzzy halmaz (Mamdani féle<br />
eljárás – Mamdani féle Fuzzy halmaz – Mamdani féle szabályzás).<br />
Amennyiben a végeredményt egy számmal szeretnénk<br />
kifejezni, defuzzifikáció-t kell alkalmaznunk, melynek<br />
egyik lehetséges módszere a az ún. súlypontmegadás.
Defuzzifikáció:<br />
Defuzzifikációs eljárások:<br />
Maximális tagsági értékű elem<br />
Maximumok átlagolásának módszere<br />
Súlypont keresésének módszere<br />
Egyszerűsített súlypontkeresés<br />
Defuzzifikálás korlátozással<br />
Defuzzifikálás egyenlő területfelosztással (Jager)
Maximális tagsági értékű elem:<br />
µµµµ(x)<br />
x M<br />
X<br />
A maximális tagsági értékhez tartozó alaphalmazbeli érték (x M ).<br />
x M =hgt(X)=supµ x (x), ahol x∈X<br />
Amennyiben több maximális értéket is tartalmaz az alaphalmaz, akkor a megoldásra több stratégia is<br />
létezik (xM ):<br />
µµµµ(x)<br />
Véletlenszerűen választunk a maximumok között<br />
Mindjárt az első maximumot választjuk<br />
Az utolsó maximumot választjuk, …<br />
(Az első és utolsó időbeli sorrendben is lehet)<br />
Sajnos ilyen esetekben van mikor a megoldás<br />
nem teljesen egyértelmű!<br />
Trapéz alakú tagsági függvénynél az intervallum<br />
közepét vesszük megoldásnak.<br />
µµµµ(x)<br />
x első<br />
x M<br />
x M<br />
X<br />
x utolsó<br />
X
Maximumok átlagolása:<br />
Legyen:<br />
µµµµ(x)<br />
xM (1) xM (2) …. xM (n)<br />
x M (1)=15, x M (2)=17, x M (3)=21;<br />
X<br />
M<br />
15 + 17 + 21<br />
=<br />
=<br />
3<br />
17,<br />
66<br />
A maximális tagsági értékű elemek helyett, azok átlagát választja (x M ).<br />
X<br />
X<br />
M<br />
n<br />
∑<br />
i=<br />
= 1<br />
x<br />
n<br />
M<br />
( i)<br />
Sajnos itt olyan érték is kijöhet, melynek kevés köze van a<br />
legjellemzőbb Fuzzy halmazra, vagy olyan is, ahol az<br />
X M =µ(x) minimum
Súlypont kiválasztás: Egyszerűsített<br />
súlypontkiválasztás:<br />
Diszkrét alakban:<br />
x M<br />
µµµµ(x)<br />
1<br />
(Amennyiben „x” csak diszkrét<br />
értékeket vehet fel.)<br />
Folytonos alakban:<br />
x<br />
M<br />
x<br />
=<br />
M<br />
∫<br />
X<br />
=<br />
∫<br />
X<br />
∑x<br />
∑<br />
∈X<br />
x∈X<br />
µ ( x).<br />
x dx<br />
µ ( x).<br />
dx<br />
µ ( x).<br />
x<br />
µ ( x)<br />
Amennyiben a kimenő Fuzzy halmaz az összetevő<br />
halmazok uniójából tevődik össze és ismeretesek az<br />
összetevő halmazok legfőbb jellemzői, akkor az<br />
összetevőket a jellemzők függvényében<br />
súlyozhatjuk.<br />
x = x ∪ x ∪...<br />
w<br />
x<br />
x<br />
i<br />
i<br />
M<br />
=<br />
=<br />
∑<br />
∑x<br />
∑<br />
=<br />
1<br />
2<br />
x∈X<br />
∈X<br />
x∈X<br />
∑i∈[<br />
∑<br />
µ ( x)<br />
µ ( x).<br />
x<br />
xi<br />
µ ( x)<br />
1,<br />
n]<br />
xi<br />
xi<br />
i∈[<br />
1,<br />
n]<br />
w . x<br />
i<br />
w<br />
i<br />
i<br />
x<br />
n<br />
………. : összetevők<br />
………. : súlyozások<br />
………. : legjellemzőbb elemek<br />
………. : súlyozott súlypont
Defuzzifikálás korlátozással:<br />
Amennyiben a kimenő Fuzzy halmazaink diszkrét halmazok, előfordulhat, hogy az előző módszerek<br />
olyan eredményt adnak, hogy az érték nem is lesz része a halmaznak (x M’ ). Ilyen esetekben<br />
korlátozhatjuk (behatárolhatjuk) a kimenő „script” értékünket.<br />
µµµµ(x)<br />
x (1)<br />
x M<br />
x M’<br />
Ilyenkor letiltunk bizonyos tartományokat, és amennyiben elemünk ebbe a tartományba esne, akkor<br />
eredményként a hozzá legközelebb eső tartományon kívüli elemet kell választani (x M ).<br />
x (2)<br />
X
Defuzzifikálás egyenlő területfelosztással:<br />
A módszer lényege, hogy két egyenlő nagyságú területre osztjuk fel a kimenő alakzatunkat, és a<br />
középvonal megadja a kimenő „crisp” értékünket.<br />
µµµµ<br />
(A szürke és fehér területek egyforma nagyságúak.)<br />
x<br />
x<br />
M<br />
∫<br />
min<br />
max<br />
µ ( x ) dx = µ ( x)<br />
dx<br />
x<br />
x<br />
x<br />
∫<br />
M<br />
x<br />
Az eddigi eljárások síkbeli defuzzifikációt (1 típusú Fuzzy logikai rendszer) feltételeztek. Természetesen<br />
mindezeket az eljárásokat 2 típusú Fuzzy logikai rendszerekre is kibővíthetjük (térbeli). Lásd erre az<br />
esetre:<br />
∫∫ µ ∫∫<br />
x,<br />
y ( x , y)<br />
dxdy = µ x,<br />
y ( x,<br />
y)<br />
dxdy<br />
xmin<br />
→xM<br />
xM<br />
→xmax<br />
y →y<br />
y → y<br />
min<br />
M<br />
M<br />
1<br />
y<br />
x min<br />
max<br />
x M<br />
x max
Fuzzy szabályzás és környezete:<br />
Fuzzy Fuzzy szabályzó<br />
szabályzó<br />
Fuzzy<br />
„aritmetiai”<br />
i(t) e(t) u(t)<br />
egység<br />
Szabálybázis<br />
Egy Fuzzy szabályzó tervezésének lépései:<br />
Irányított<br />
folyamat<br />
Érzékelők<br />
1. A rendszer bemeneteinek/kimeneteinek meghatározása 2. Bemeneti Fuzzy halmazok felállítása (Fuzzifikáció)<br />
3. Szabálybázis felállítása 4. Defuzzifikációs módszer kiválasztása<br />
5. Rendszer futtatása egy szimulációs környezetben 6. Rendszer végleges dokumentálása<br />
o(t)
Fuzzy szabályzás összefoglalása:<br />
A legszembetűnőbb különbség a Fuzzy és konzervatív irányítás között a bemenetekben és a<br />
döntéshozó mechanizmusokban van. Míg a klasszikus szabályzásnál egy bemenő változó alapján<br />
hozzuk meg a döntést, a Fuzzy vezérlésnél több bemenetet (szög, szögsebesség) veszünk figyelembe,<br />
melyek átfedésben vannak (átfedés→únió/metszet) és mindegyik bemenet valamely módon (lásd kimeneti<br />
halmaz=bemenetek uniója/metszete) „részt vesz” a kimeneti „crisp” érték meghatározásában. Így a<br />
szabályzás átmenetei „lágyabbak” lehet, mint a klasszikus esetben.<br />
A Fuzzy szabályzással a nyelvi meghatározásokat tudjuk modellezni, és ezek alapján tudunk egy<br />
vezérlőt építeni, míg a klasszikus szabályzókhoz matematikai modellek, meghatározások (általában<br />
differenciális egyenletek formájában) kellenek.<br />
A Fuzzy szabályzásnál a döntéshozatal egy szabálybázis alapján történik (a szabálybázis módosítható – sőt<br />
folyamat közben is módosítható ⇒ öntanuló „adaptív” rendszerek).<br />
Költség szempontjából a klasszikus vezérlésnél a matematikai modell felállítása komoly számítási<br />
igényeket támaszthat (magas számítási költség), míg a Fuzzy modell az olcsóbb megoldásokra kínál<br />
lehetőséget.<br />
A Fuzzy vezérlőknél a bemenetekre illetve kimenetekre leggyakrabban a 7 változós modell alkalmazott:<br />
Kicsit negatív közepesen negatív nagyon negatív<br />
Nulla<br />
Kicsit pozitív közepesen pozitív nagyon pozitív<br />
Utána ezekkel az értékekkel van felállítva a szabálybázis.
Gyakorlásra szolgáló feladatok:<br />
1. Példa (Otthoni gyakorlásra – Házi feladat!)<br />
Építsen egy Fuzzy szabályzót amely a fékezés nyomóerejét a fékbetétek hőmérséklete és a<br />
sebesség alapján szabályozza.<br />
Bemenetek: hőmérséklet, sebesség<br />
Kimenet: nyomóerő<br />
Fuzzifikáció: Bemenetek:<br />
A bemenő hőmérséklet „Fuzzifikálása”<br />
hőmérsékletre: hideg, langyos, névleges, meleg, forró<br />
sebességre: áll (nulla), lassú, közepes, gyors, nagyon gyors<br />
Kimenetre: nagyon csökkent, kicsit csökkent, 0 (nem változik), kicsit növel,<br />
nagyon növel
Szabályrendszer felállítása:<br />
A szabályrendszert a felállított „fuzzifikált” bemenetekből és kimenetekből állapítjuk meg.<br />
A fuzzifikálást úgy végezzük, hogy maximum kettő halmazbeli (tagsági függvénybeli) átfedések legyenek<br />
(lásd előző példa: hőmérsékletek fuzzifikálása)<br />
Példa a szabályrendszer felállítására:<br />
1. HA a hőmérséklet hideg, ÉS a sebesség nulla, AKKOR a nyomóerő legyen nulla.<br />
2. HA a hőmérséklet hideg, ÉS a sebesség lassú, AKKOR a nyomóerő legyen kicsit növel.<br />
3.<br />
4.<br />
Ha végigvisszük az összes lehetséges variációt, akkor 5x5 szabályt állíthatunk fel (ezeket érdemes<br />
táblázatban összefoglalni!).<br />
Defuzzifikáció megállapítása:<br />
Válasszuk a súlypontkereséses defuzzifikációs módszert a kimeneti érték megállapítására!
Gyakorlásra szolgáló feladatok:<br />
2. Példa – Otthoni feladatok – Házi feladat!<br />
Készítsük el egy gőzturbina Fuzzy szabályzását, ahol a bemenő változóink legyenek a nyomás<br />
és hőmérséklet, a kimenő változó pedig a turbina sebessége. A sebesség lehet negatív is<br />
(fékező üzem), így a kimenő változó a következőképpen „fuzzifikálható”:<br />
Nagyon negatív (N3) közepesen negatív (N2) kicsit negatív (N1)<br />
Nulla (0)<br />
Kicsit pozitív (P1) közepesen pozitív (P2) nagyon pozitív (P3)<br />
A működés blokkábrája:<br />
A blokkábrából látható a bemenő<br />
változók „fuzzifikálása”!
Szabályrendszer felállítása:<br />
1. HA a hőmérséklet langyos (cood), ÉS a nyomás gyenge (weak), AKKOR a sebesség legyen P3.<br />
2. HA a hőmérséklet langyos (cood), ÉS a nyomás alacsony (low), AKKOR a sebesség legyen P2.<br />
3. HA a hőmérséklet langyos (cood), ÉS a nyomás o.k., AKKOR a sebesség legyen Z.<br />
4. HA a hőmérséklet langyos (cood), ÉS a nyomás erős (strong), AKKOR a sebesség legyen N2.<br />
5. …<br />
6. ..<br />
.<br />
.<br />
Példaként nézzük meg a kimeneteket, ha a hőmérsékletünk langyos (cool) és a nyomásunk<br />
alacsony (low), illetve o.k. (rendben) állapotokban vannak.
Kimenetek felállítása:<br />
Ezekben az esetekben csak a 2. illetve a 3. szabály<br />
érvényes<br />
1. ….<br />
2. HA a hőmérséklet langyos (cood), ÉS a nyomás<br />
alacsony (low), AKKOR a sebesség legyen P2.<br />
3. HA a hőmérséklet langyos (cood), ÉS a nyomás<br />
o.k., AKKOR a sebesség legyen Z.<br />
4. …
Kimenő halmaz a 2. szabályra:
Kimenő halmaz a 3. szabályra:
A végleges kimenő halmaz<br />
és a kimeneti érték:<br />
A „defuzzifikálást” (a végleges „crisp”<br />
eredményt) ebben az esetben is a<br />
súlypontkereséses módszer segítségével<br />
végeztük.