Dunaújvárosi Főiskola Informatikai Intézet Bizonytalanságkezelés Dr. Seebauer Márta főiskolai tanár seebauer.marta@szgti.bmf.hu
Bizonytalan tudás forrása A klasszikus logikában a kijelentések vagy igazak vagy hamisak. A természetes nyelvekben az állítások nem világosan megfogalmazottak homályos tudás Ha az étel túl forró, akkor várj. az adott pillanatban nem meghatározottak bizonytalan kijelentések A hallgatók legalább 50%-a jó jegyet kap.
Holnap esni fog. Az Euro árfolyama emelkedni fog. Bizonytalan tudás A kijelentések igazak vagy hamisak ugyan, de az adott pillanatban még nem lehet ezt eldönteni. A klasszikus logikát valószínűségértékekkel kell kiegészíteni. A valószínűségértékek statisztikai adatokon alapulnak. Legyen Ω egy véges eseménytér. P=[0,1] függvényt valószínűségfüggvénynek nevezünk, ha teljesül a következő feltétel: P(Ω) =1 P(X Y) = P(X) +P(Y) X, Y Ω, ahol X Y= Kielégíthetetlen esemény Monotónia Szubtraktivitás Szubadditivitás Additivitás Komplemens P( )=0 X Y P(X) P(Y) X Y P(Y X C ) = P(Y) - P(X) P(X Y) P(X) + P(Y) P(X Y) = P(X) + P(Y) - P(X Y) P(X C ) = 1 - P(X)
Dr. Seebauer Márta: Me
Példa feltételes valószínűségre X kijelentés: A kocsi motorja furcsán zörög. P(X)= 0,08 Y kijelentés: Olajat kellett cserélni. P(Y)= 0,06 Az esetek 60%-ban, amikor olajcserét végeztek, az ok a motor furcsa zöreje volt P(X Y)=0,6 Annak a valószínűsége, hogy a furcsa motorzaj esetén olajat kell cserélni: 0,6*0,06 P(Y X) = = 0,08 0,45
Bizonytalansági tényező Certainty Factors, CF egy kijelentés erősségének numerikus értéke, amely tapasztalaton vagy háttértudáson alapul. CF(H E)=[-1,1] H Hipotézis (Esemény) E Evidencia (Feltétel) 1. szabály: Esik 0,9 Rossz idő van. 2. szabály: Fúj a szél 0,7 Rossz idő van. 3. szabály: Süt a Nap -0,9 Rossz idő van. Modus ponens: A B A B CF(Rossz idő van Esik) = 0,9. CF(Esik E)=1. CF(Rossz idő van)= CF(Esik E)* CF(Rossz idő van Esik) = 1*0,9 = 0,9 a = CF(Rossz idő van Esik) = 0,9. b = CF(Rossz idő van Fúj a szél) = 0,7. CF(Esik E)=1. CF(Fúj a szél E)=1. CF(Rossz idő van Esik Fúj a szél)= a+b-a*b= 0,9+0,7-0,7*0,9 = 0,97
A Mycin bizonytalanságkezelése Kapcsolat CFkiszámítása Feltétel ÉS CF(a b E) min (CF(a E),CF(b E) VAGY CF(a b E) max (CF(a E),CF(b E) Nem CF( P E) -CF(P E) Szabály CF(H E) CF(P E)*CF(H P) Két CF H-ra CF(H E 1, E 2 ) CF 1 +CF 2 -CF 1 *CF 2 CF 1 és CF 2 pozitív CF 1 +CF 2 +CF 1 *CF 2 CF 1 és CF 2 negatív (CF 1 +CF 2 )/1-min( CF 1, CF 2 ) CF 1 *CF 2 <0 nem meghatározott CF 1 *CF 2 = -1-1,0-0,8-0,6-0,2 0 0,2 0,6 0,8 1,0 Biztosan hamis Lehet, hogy hamis Valószínűleg hamis Majdnem bizonyosan hamis Dr. Seebauer Márta: Mesterséges intelligencia. Ismeretlen Lehet, hogy igaz Valószínűleg igaz Majdnem Biztosan igaz bizonyosan igaz
Fuzzy modell Klasszikus logika: fiatal(x), fiatal(x) fiatal X=35 éves Adatbanki besorolás X=35 éves fiatal fiatal középkorú idős öreg Fuzzy logika µ életkor (X) µ középkorú (35)=0,7 1 µ fiatal (35)=0,35 fiatal középkorú idős öreg 0 35 Dr. Seebauer Márta: Mesterséges intelligencia. 50 100 X [évek]
Fuzzy halmazok A halmazelmélet Latfi Zadeh által javasolt kiterjesztése. Jelölje X az alaphalmazt (Életkor). Legyen Z egy Fuzzy halmaz, amelyet X-en értelmezünk és elemei X egy részhalmazát alkotják (Fiatal, Középkorú, Idős, Öreg). x legyen X halmaz egy eleme és z legyen Z halmaz egy eleme. X et tagságfüggvénnyel jellemezzük: µ Z : X [0,1] Z és X halmaz minden elemére érvényes µ z (x) = s Legyen Z und Z két X halmazon értelmezett Fuzzy halmaz. Z nevezhető Z részhalmazának, Z Z akkor, ha minden x X-re érvényes, hogy µ (x) µ (x)
Fuzzy halmazokkal végzett műveletek Dr. Seebauer Márta: Mesterséges intelligencia.
Fuzzy logika Kapcsolat Halmazon értelmezett művelet Konjunkció min(µ A (u), µ B (u)) Diszjunkció max(µ A (u), µ B (u)) Komplemens 1-µ A (u) Implikáció min(1,1-µ A (u) + µ B (u)) Lukasiewicz max(1-µ A (u), µ B (u)) Kleen-Dienes max(1-µ A (u), min(µ A (u), µ B (u)) Zadeh 1-µ A (u) + µ A (u)* µ B (u) Reichenbach
Nyaralás feltételei A nyaralásnak lehetőleg az igényelt szabadság idejére - június 20 és augusztus 10 közé kell esnie. Vízpartra szeretnénk menni. Az utazás legyen olcsó vagy garantált legyen a napsütés. Nyaralás tervezése Uticél Balaton Ajánlatok Időtartam 06.19. 07.12. Ár (Ft) 100000 µ ár (X) 1 0,9 Horvátország Mallorca 07.01. 07.14. 07.30. 08.12. 200000 180000 0,5 0,4 Időtartam Vízpart (Napsütés Ár) 0 100000 200000 300000 X [Ft] Uticél µ időtartam µ ár µ napsütés µ vízpart 1.modell 2.modell 3.modell Balaton 0,93 0,9 0,8 0,95 0,9 0,88 0,86 Horvátország 1 0,4 0,9 0,8 0,8 0,8 0,75 Mallorca 0,86 0,5 0,95 0,99 0,86 0,85 0,83
Fuzzy vezérlő felépítése Mért értékek Folyamat Vezérlőjelek Életlenítés Fuzzy vezérlő Fuzzy következtetés Élesítés Tudásbázis
Tudásbázis Ha X értéke kicsi pozitív és Y értéke kicsi pozitív, akkor Z értéke kicsi pozitív. Ha X értéke nagy pozitív és Y értéke kicsi pozitív, akkor Z értéke nagy pozitív. Fuzzy vezérlő működése Életlenítés konkrét bemenő értékek alapján a hozzájuk tartozó tagságfüggvény értékének meghatározása Fuzzy következtetés a tudásbázisban tárolt szabályok alapján a végkövetkeztetés tagságfüggvény értékének kiszámítása Élesítés - a tagságfüggvénye alapján a kimenet értékének megállapítása. Lehet: terület, súlypont, stb. Fuzzy vezérlő
Konténerrakodó robot vezérlése Teher szöge Távolság Teher szöge nagy kicsi nulla Távolság Bemenő értékek a teher szöge és a céltól mért távolsága. Kimenő érték a motorra adott vezérlő jel. pozitív nagy pozitív kicsi nulla lassan lassan lassan vissza lassan vissza állj negatív kicsi lassan lassan negatív nagy lassan vissza
Konténerrakodó robot vezérlése µ szög (β) nulla µ távolság (l) nulla µ teljesítmény (P) állj negatív kicsi pozitív kicsi kicsi lassan vissza lassan 1 1 1 egatív nagy pozitív nagy nagy vissza -30-20 -10 0 10 20 30 β [º] 0 10 20 30 l [m] -300-200 -100 0 P 100 200 300 [W] 1. IF távolság = nagy THEN teljesítmény = _. 2. IF távolság = kicsi AND szög = pozitív_nagy THEN teljesítmény = _vissza. 3. IF távolság = kicsi AND szög = negatív_nagy THEN teljesítmény = _. 4. IF távolság = nulla AND szög = pozitív_kicsi THEN teljesítmény = lassan_vissza. 5. IF távolság = nulla AND szög = negatív_kicsi THEN teljesítmény = lassan_. 6. IF távolság = nulla AND szög = nulla THEN teljesítmény = állj. Teher szöge: β = -20º Távolság: l = 5m Motorteljesítmény: P = 170W