Fuzzy logika a vezérlőrendszerekben

Fuzzification (átmenet fuzziness)

A bemeneti változók pontos értékeit a nyelvi változók értékekké konvertálják a fuzzy halmazok elméletének egyes rendelkezései alkalmazásával, nevezetesen bizonyos tagsági funkciók használatával.

Tekintsük ezt a szakaszt részletesebben. Először is bemutatjuk a "nyelvi változó" és a "tagsági funkció" fogalmát.

A fuzzy logikában bármely mennyiség értékét nem ábrázolják számok, hanem természetes nyelv szavak és THERM-ek. Így a DISTANCE nyelvi változó értéke a FAR, CLOSE, stb.

Természetesen egy nyelvi változó megvalósításához meg kell határozni feltételeinek pontos fizikai értékeit. Tegyük például, hogy a REMOTE változó 0 és 60 méter között bármilyen értéket vehet fel. Hogyan kell eljárnunk? Értelmében a az elmélet a fuzzy készletek, mindegyik távolság értéket a tartományban a 60 méter lehet társítva bizonyos számú nulla és egy közötti, amely meghatározza a mértékét tagság egy adott fizikai távolság értéket (például, 10 méter), hogy egy adott kifejezést a nyelvi változtatható távolság. Ebben az esetben a távolság 50 méter, akkor adja meg a mértékét hovatartozást távú FAR 0,85, valamint a költségek közel - 0,15. A hozzátartozás mértéke konkrét meghatározása csak akkor lehetséges, ha szakértőkkel dolgozik. A nyelvi változó feltételeinek megvitatásakor érdekes becslést adni arra vonatkozóan, hogy egy változó hány kifejezése szükséges a fizikai mennyiség kellően pontos ábrázolásához. Jelenleg úgy vélem, hogy a legtöbb alkalmazás esetében 3-7 különböző változó esetén elegendő. A kifejezések számának minimális értéke teljesen indokolt: egy ilyen definíció két szélsőséget (minimum és maximum) és középértéket tartalmaz. A legtöbb alkalmazásnál ez elég. Ami a maximális számú feltételt illeti, ez nem korlátozott, és teljes mértékben attól függ, hogy milyen alkalmazás és a rendszer pontos leírása szükséges. A 7-es szám a rövid távú emberi emlékezet kapacitásának köszönhető, amelyben a modern ötletek szerint legfeljebb hét információ tárolható.

Összefoglalva, két tippet adunk, amelyek segítenek meghatározni a kifejezések számát:

n Kezdjük a feladattal és a leírás szükséges pontosságával, ne feledjük, hogy a legtöbb alkalmazásnál elegendő, ha a változóban három kifejezés szerepel;

n a rendszer működőképes szabályainak összeállításához egyértelműnek kell lennie, nem kell jelentős nehézségeket tapasztalnia fejlődésük során; egyébként, ha nincs elég szókincs, akkor növelje a számukat.

Amint már említettük, minden egyes pontos értéknek a nyelvi változó egyik feltételhez való kötődését a tagsági függvény határozza meg. Megjelenése teljesen önkényes lehet. Most már az úgynevezett szabványos tagsági funkciók képződtek (lásd a 3. ábrát).

Fuzzy logika a vezérlőrendszerekben

A szabványos tagsági funkciók könnyen alkalmazhatók a legtöbb probléma megoldására. Ha azonban meg kell oldania egy adott problémát, kiválaszthatja a tagsági funkció megfelelőbb formáját, miközben jobb rendszerszintű teljesítményt érhet el, mint a normál nézetben.

Lássuk össze a fuzzifikáció színpadát, és adjunk egyfajta algoritmust a probléma formalizálására a fuzzy logika tekintetében.

1. lépés: A megszerzett nyelvi változó minden egyes kifejezéséhez keresse meg a kifejezés legjobban leírható számértéket vagy értéktartományt. Mivel ez az érték vagy értékek a kifejezésünk "prototípusai", a tagsági funkció egyetlen értékét választjuk ki számukra.

2. lépés: Miután meghatározta az értékeket egy tagsággal, meg kell határoznia a paraméter értékét a "0" tagsággal. Ezt az értéket az "1" tagság értékeként lehet kiválasztani egy másik kifejezésre a korábban meghatározott számtól.

3. lépés: A szélső értékek meghatározása után meg kell határoznia a köztes értékeket. Számukra az n- vagy az A-funkciókat a standard tagsági funkciók közül választják ki.

4. lépés: A paraméter szélső értékeinek megfelelő értékek kiválasztása esetén az S- vagy Z-tagsági funkciók kerülnek kiválasztásra.

Ha sikerül leírnod ​​ezt a feladatot előtte, akkor már a fuzziness világába merülsz. Most szükséged van valamire, ami segít megtalálni a megfelelő utat ebben a labirintusban. Ez az útmutató talán a fuzzy szabályok alapja. Az összeállításuk módszereit az alábbiakban ismertetjük.

A fuzzy szabályok kidolgozása

Ebben a szakaszban meghatározzák a nyelvi változókat összekapcsoló termelési szabályokat. Az ilyen szabályok egy csoportja leírja az ebben a feladatban alkalmazott ellenőrzési stratégiát.

A legtöbb fuzzy rendszer a termelési szabályokat használja a nyelvi változók közötti függőségek leírására. Egy tipikus gyártási szabály előzmény (rész IF ...) és következménye (részének TO ...). Az előzmény több parcellát is tartalmazhat. Ebben az esetben a logikai AND és OR kapcsolatok kombinálják őket.

A fuzzy szabály kiszámításának folyamatát fuzzy logikai következtetésnek nevezik, és két szakaszra oszlik: általánosság és következtetés.

Tegyük fel, hogy van a következő szabály:

HA REMOTE = KÖZEPES ÉS

ANGLE = kicsi. THEN POWER = átlag.

Utalva a példa a konténer daru és megvizsgálja a helyzetet, amikor a távolság a platform 20 méter, a hajlásszöge és a tartályt a daru kötél egyenlő négy fok. Miután fuzzification megkapjuk az eredeti adatokat, a mértéke a távolság 20 méter tartozó kifejezés egy nyelvi változó távolságra MEDIUM 0,9 és mértékét tagság a szög 4 fok a kifejezés egy nyelvi változó CORNER KIS 0.8.

A következtetés első lépéseként meg kell határozni a szabály előzményeihez való tartozás mértékét. Ehhez két operátor van a fuzzy logikában: MIN (...) és MAX (...). Az első számítja ki a tartozás mértékének minimális értékét, a második pedig a maximális értéket. Mikor alkalmazza ezt vagy az üzemeltetőt, attól függ, hogy mely csomagban vannak a parcellák a szabályban. Ha az AND-ot használja, használja a MIN (...) operátort. Ha a parcellákat egy VAGY karaktersorozat egyesíti, használnia kell a MAX operátort (...). Nos, ha csak egy előfeltétel található a szabályban, az üzemeltetőknek egyáltalán nincs szükségük. Példánk esetében a MIN (...) operátort alkalmazzuk, mivel az I. kapcsolatot használjuk. Az alábbiakat kapjuk:

Következésképpen az ilyen szabály előzményeihez való tartozás mértéke egyenlő 0,8-mal. A fent leírt műveleteket mindegyik szabályra feldolgozzuk a fuzzy szabályok alapján.

A következő lépés a tényleges következtetés vagy következtetés. Hasonlóképpen, a MIN / MAX operátorok segítségével számítják ki az ennek következményeit. A kezdeti adatok az előző lépésben számított szabályok előzményeihez való tartozás mértékének értékei.

Miután végrehajtotta a fuzzy kimenet összes lépését, megtaláljuk a szabályzó változó fuzzy értékét. Annak érdekében, hogy a végrehajtó eszköz ki tudja dolgozni a kapott parancsot, szükség van egy vezérlési fázisra, amelyen megszabadulunk a fuzzinesstől, és amelyet defuzzifikációnak nevezünk.

Defuzzatio (a homályosság megszüntetése)

Ebben a szakaszban az értékek fuzzy értékéről bizonyos fizikai paraméterekre történő áttérés, amelyek a végrehajtó eszközhöz parancsokként szolgálhatnak.

A fuzzy következtetés eredménye természetesen fuzzy lesz. A daru példájánál a daru villamos motorjának parancsát a MID (teljesítmény) fogalmazza meg, de a végrehajtó eszközön semmit sem jelent.

A végeredmény homályosságának kiküszöbölésére számos módszer létezik. Nézzük meg néhányat. A rövidítés, amely a módszer neve után áll, az angol megfelelője rövidítéséből származik.

Kapcsolódó cikkek