A F u z z y C L I P S a l a p j a i A CLIPS rendszer bovítése a bizonytalan információk hatékony kezelése céljából. K é t f é l e b i z o n y t a l a n s á g t á m o g a t á s a : Pontosan nem megfogalmazható elemek leírása: fuzzy technika Állítások határozottsága: bizonyossági faktor (CF) hozzárendelése a tényekhez és szabályokhoz Fuzzy változók definiálása: tagsági függvény megadással. A FuzzyCLIPS szinte minden szokásos diszkrét és folytonos tagsági függvény definiálását lehetové teszi.
Fuzzy változók definiálása A f u z z y v á l t o z ó k a t s a b l o n o k o s e g í t s é g é v e l a d h a t j u k meg, amelyekben meg kell határozni a változó értéktartományát és tagsági függvényét: (deftemplate fuzzy-változónév m i n m a x e g y s é g ((nyelvi-érték (érték tagsági-függvény-érték) ) Vagy (nyelvi-érték (primitív függvény)) )
Fuzzy változók definiálása (deftemplate age ; Az age fuzzy változó definiálása 0 120 years ( (young (25 1) (50 0)) (old (50 0) (65 1)) ) ) (deffacts fuzzy-fact (age young) ; egy fuzzy tény ) (defrule one ; fuzzy szabály (Speed_error big) => (assert (Throttle_change small)) )
Fuzzy következtetési eljárások Ha A akkor C CF r A` C F A C` CF C A szabály feltétel része A`- illeszkedo tény C szabály következmény része C`- létrehozott következmény CF bizonyossági faktorok Megkülönböztetheto következtetési lépések: Éles fuzzy szabály (éles feltétel, fuzzy következmény rész) Fuzzy éles szabály Fuzzy fuzzy szabály
Éles fuzzy szabály alkalmazása Mivel éles a feltétel rész (egyértelmu a kiértékelés), ezért a következmény állítás beíródik a tények közé. A kik ö vetkeztetett tény bizonyossági faktorát a következoképpen számolja a rendszer: CF C = CF R * CF A
Éles fuzzy szabály alkalmazása Adott egy szabály (defrule crisp-simple-rule (declare (CF 0.7)) (light_switch off) => (assert (illumination_level dark))) Ismert tény: (light_switch off) CF 0.8 Következtetés eredménye: (illumination_level dark) CF 0.56
Fuzzy éles szabály alkalmazása A bizonytalanságot tartalmazó feltétel rész miatt a következtetés bizonyosságát befolyásolja az illesztés erossége : hasonlósági faktor (S). A hasonlósági faktor az illesztett tény tagsági függvényének és a szabály feltétel részében szereplo változó tagsági f ü g g v é n y é n e k i l l e s z k e d é s é r e a d m é r t é k e t A k i k ö v e t k e z t e t e t t t é n y b i z o n y o s s á g i f a k t o r á t a következoképpen számolja a rendszer: C F C = CF R * CF A * S
Fuzzy éles szabály alkalmazása S számítása: ahol:
Fuzzy éles szabály alkalmazása Szabály: (defrule simple-fuzzy-crisp-rule (declare (CF 0.7)) ;rule has a certainty factor of 0.7 (fuzzy-fact fact2) ;fuzzy antecedent => (assert (crisp-fact fact3))) Ismert tény: ( fuzzy-fact fact1) CF 0.8
C F c = ( 0. 7 ) * ( 0. 8 ) * ( 0. 6 6 6 7 ) = 0. 3 7 3 3 BME Méréstechnika és Információs Rendszerek Tanszék Fuzzy éles szabály alkalmazása N számítása: S számítása:
Fejlesztés és integrálás eszközei BME Méréstechnika és Információs Rendszerek Tanszék Fuzzy fuzzy szabály alkalmazása A bizonytalanságot tartalmazó feltétel rész miatt a következtetésben található fuzzy kifejezés tagsági f ü g g v é n y é t s z á m o l n i k e l l. A következmény tagsági függvényének számítását a szabály és az illeszkedo tény relációja alapján végezzük (kompozíciós szabály). A FuzzyCLIPS által támogatott következtetés algoritmusok: max-min max-prod A k i k ö v e t k e z t e t e t t t é n y b i z o n y o s s á g i f a k t o r á t a f u z z y - é l e s szabályoknál látott módon számolja a rendszer: C F C = CF R * CF A * S
Fuzzy fuzzy szabály alkalmazása Az illesztendo fuzzy tény és a fuzzy következmény relációban vannak: A reláció tagsági függvénye: A következmény kalkulálása a reláció alapján:
Fuzzy fuzzy szabály alkalmazása A következmény tagásgi függvényének számítása átalakítható:
Fuzzy fuzzy szabály alkalmazása (defrule fuzzy-fuzzy-rule (temperature hot) => (assert (temp_change little))) (temperature warm); tény a munkamemóriában 2004 április
Fuzzy fuzzy szabály alkalmazása (Ha a max-min módszer helyett a max-prod módszert v á l a s s z u k :
Összetett szabály alkalmazása Több következmény esete: if A then C1 and C2 and... and Cn Széttagolható: if A then C1 if A then C2... if A then Cn prilis
Fuzzy tény hozzáadása Ha létezik már tény a fuzzy változóról:
Összetett szabály alkalmazása Több feltétel esete: Ha A1 és A2 akkor C CF r A 1 ` A 2 ` C` CF A1 CF A2 CF C
Összetett szabály alkalmazása
Defuzifikáció A f u z z y k ö v e t k e z t e t é s v é g é n g y a k r a n s z ü k s é g v a n a fuzzy következmény éles értéké történo transzformálására (pl. szabályozási feladatoknál a beavatkozás számítása). Ezt defuzifikációnak nevezzük. A F u z z y C L I P S a k ö v e t k e z o d e f u z i f i k á c i ó s eljárásokat támogatja: Tömegközéppont algorimus Maximumok átlaga algoritmus
Defuzifikáció Tömegközéppont algorimus 2004 április