Intelligens Rendszerek I. Tudásábrázolás Fuzzy logikával 2007/2008. tanév, I. félév Dr. Kovács Szilveszter E-mail:
[email protected] Miskolci Egyetem Informatikai Intézet 106. sz. szoba Tel: (46) 565-111 / 21-06 mellék
A tudásábrázolás elvárt jellemzői Patrick Winston szerint 1. A fontos dolgokat világosan adja meg. 2. Fedje fel a természetes korlátokat, megkönnyítve a számítások néhány fajtáját. 3. Legyen teljes. 4. Legyen tömör. 5. Legyen átlátható számunkra. 6. Legyen alkalmas gyors feldolgozásra. 7. Rejtse el a részleteket, de tegye elérhetővé azokat szükség esetén. 8. Létezzen rá számítógépi eljárás. A jó tudásábrázolás az MI feladatok megoldásánál fél siker. Dr. Kovács Szilveszter ©
M.I. 11. / 2.
Tudástípusok • Deklaratív • Strukturált • Procedurális
Dr. Kovács Szilveszter ©
M.I. 11. / 3.
Deklaratív tudás • Csak ismeretek, összefüggések és alkalmazási utasítások nélkül • Leírása: – logikai kifejezések – fogalmak – objektumok • Technikák: – formális logika – Fuzzy logika – O-T-É hármas Dr. Kovács Szilveszter ©
M.I. 11. / 4.
Tudásábrázolás Fuzzy logikával A logikáról: • A logika a bölcselés tudománya, a helyes gondolkodás művészetének tana. A logika osztályozása: Logika Arisztotelészi (hagyományos)
Szimbolikus (formális)
Propozíciós Logika (Ítéletkalkulus)
Predikátum logika (Elsőrendű logika)
Dr. Kovács Szilveszter ©
Nem klasszikus szimbolikus logika: - modális - temporális - többértékű - intuicionista - valószínűségi - Fuzzy logika M.I. 11. / 5.
An application example • • • •
One of the most interesting applications of fuzzy computing: “FOREX” system. 1989-1992, Laboratory for International Fuzzy Engineering Research (Yokohama, Japan) (Engineering – Financial Engineering) To predict the change of exchange rates (FOReign EXchange) ~5600 rules like: “IF the USA achieved military successes on the past day [E.G. in the Gulf War] THEN ¥/$ will slightly rise.”
Inputs
FOREX
(Observations)
Prediction
Fuzzy Inference Engine Dr. Kovács Szilveszter ©
M.I. 11. / 6.
¥/$
Another Example
100
1993 • •
• •
1994
1995
Time
What is fuzzy here? What is the tendency of the ¥/$ exchange rate? “It’s MORE OR LESS falling” (The general tendency is “falling”, there’s no big interval of rising, etc.) What is the current rate? Approximately 88 ¥/$ → Fuzzy number When did it first cross the magic 100 ¥/$ rate? SOMEWHEN in mid 1995 Dr. Kovács Szilveszter ©
M.I. 11. / 7.
A complex problem
• • •
Many components, very complex system. Can AI system solve it? Not, as far as we know. But WE can.
Our car, save fuel, save time, etc. Dr. Kovács Szilveszter ©
M.I. 11. / 8.
Fuzzy halmaz, fuzzy logika • Fuzzy: életlen, homályos, bizonytalan módon körülhatárolt • Lotfi A. Zadeh (1964/1965): fuzzy halmazelmélet és logika a nyelvi fogalmakban levő pontatlanság matematikai kifejezésére • Fuzzy algorithm: Zadeh 1968-(1973)• Fuzzy control by linguistic rules: Mamdani & Al. ~1975• http://www.cs.berkeley.edu/~zadeh
Dr. Kovács Szilveszter ©
M.I. 11. / 9.
History of fuzzy theory • • • •
•
Fuzzy sets & logic: Zadeh 1964/1965Fuzzy algorithm: Zadeh 1968-(1973)Fuzzy control by linguistic rules: Mamdani & Al. ~1975Industrial applications: Japan 1987- (Fuzzy boom), Korea Home electronics Vehicle control Process control Pattern recognition & image processing Expert systems Military systems (USA ~1990-) Space research Applications to very complex control problems: Japan 1991E.G. helicopter autopilot
Dr. Kovács Szilveszter ©
M.I. 11. / 10.
Fuzzy halmaz - alapfogalmak • Bizonytalanul definiált halmazok: „kövér emberek” – mennyire eleme egy ismert súllyal rendelkező személy a halmaznak? • Részleges tagság [0,1]: van aki jobban beletartozik, van aki kevésbé • Milyen mértékben tartozik X a halmazba? Æ Fuzzy tagsági függvény
Dr. Kovács Szilveszter ©
M.I. 11. / 11.
Fuzzy halmaz •
A class of students (E.g. M.Sc. Students taking „Fuzzy Theory”)
Értelmezési tartomány: X
1
0.7
0
0
1
1.0
1
0.8
0
0
1
0.4
•
“Who does have a driver’s licence?” A subset of X = A (Crisp) Set χ(X) = Karakterisztikus függvény
•
“Who can drive very well?” µ(X) = Tagsági függvény
1
0.2
Dr. Kovács Szilveszter ©
M.I. 11. / 12.
Fuzzy halmaz - fogalmak
Pl: • D – az értelmezési tartomány (emberek) • A,B,.. – nyelvi értékek, D részhalmazai, pl. A=sovány, B=normál súlyú, C=molett, D=kövér • a,b,.. – elemek, ezek a mért értékek • pl. a=40 kg, b=140 kg • µA(a) – Fuzzy tagsági függvény: milyen mértékben tartozik valamely „a” érték az „A” halmazba • egy adott elem (érték) több halmazba is tartozhat azonos vagy eltérő tagsági értékkel • µA(a): D → [0,1] • ha µA(a)=1, akkor „a” teljesen az „A” eleme • ha µA(a)=0, akkor „a” egyáltalán nem az „A” eleme • ha µA(a1)>µA(a2) , akkor „a1” jobban eleme „A”-nak mint „a2” Dr. Kovács Szilveszter ©
M.I. 11. / 13.
Fuzzy halmaz • példák az „ember” alaphalmaz részhalmazokra történő osztására: – sovány, normál súlyú, molett, kövér – alacsony, középmagas, magas
• A részhalmazok részben átfedhetik egymást ⇒ egy érték több halmazba is besorolható
Dr. Kovács Szilveszter ©
M.I. 11. / 14.
Hozzátartozás foka
Egy elem egyszerre több halmazhoz is tartozhat
1 0,6 0,25
sovány
normál
molett
kövér
x
Dr. Kovács Szilveszter ©
Súly [kg] M.I. 11. / 15.
Jellegzetes tagsági függvények • Háromszög • Trapéz • Gauss
x−a c− x hsz( x; a, b, c) = max min , ,0 b−a c −b
x−a d −x tr ( x; a, b, c, d ) = max min ,1, ,0 b−a d −c
• Általánosított
gauss ( x; a, b, c) = e
alt ( x ; a , b , c ) =
Dr. Kovács Szilveszter ©
1 x −c − 2 σ
1 x−c 1+ b M.I. 11. / 16.
2b
2
Grafikusan
Dr. Kovács Szilveszter ©
M.I. 11. / 17.
Tagsági függvény
µA =
Crisp halmaz
Fuzzy halmaz
Karakterisztikus függvény
Tagsági függvény
µA:X→{0, 1}
µA:X→[0, 1]
1 1 + 5 (x −10)2
0 x ≤ 5 ∨ x > 17 µ B = 0.2(x − 5) 5 < x ≤ 10 1 − 7 (x − 17 ) 10 < x ≤ 17 Dr. Kovács Szilveszter ©
µ C = µ2A
M.I. 11. / 18.
Fuzzy halmaz • Formális definíció: A fuzzy set A in X is expressed as a set of ordered pairs:
A = {(x, µA(x))| x ∈X} Fuzzy halmaz
Tagsági függvény (MF)
Értelmezési tartomány
• A fuzzy halmazt teljesen meghatározza a tagsági érték függvénye (MF) Dr. Kovács Szilveszter ©
M.I. 11. / 19.
Fuzzy halmaz diszkrét univerzumon • Fuzzy set C = “desirable city to live in” X = {SF, Boston, LA} (discrete and nonordered) C = {(SF, 0.9), (Boston, 0.8), (LA, 0.6)}
• Fuzzy set A = “sensible number of children” X = {0, 1, 2, 3, 4, 5, 6} (discrete universe) A = {(0, .1), (1, .3), (2, .7), (3, 1), (4, .6), (5, .2), (6, .1)}
Dr. Kovács Szilveszter ©
M.I. 11. / 20.
Fuzzy halmaz folytonos univerzumon • Fuzzy set B = “about 50 years old” X = Set of positive real numbers (continuous) B = {(x, mB(x)) | x in X}
µ B(x) =
1 x − 50 1+ 10
2
Dr. Kovács Szilveszter ©
M.I. 11. / 21.
Fuzzy halmaz alapfogalmak Elements
Infant
Adult
Young
Old
5
0
0
1
0
10
0
0
1
0
20
0
.8
.8
.1
30
0
1
.5
.2
40
0
1
.2
.4
50
0
1
.1
.6
60
0
1
0
.8
70
0
1
0
1
80
0
1
0
1
Dr. Kovács Szilveszter ©
M.I. 11. / 22.
Fuzzy halmaz alapfogalmak • Hordozó (support): supp(A)={x | µA(x)>0}. µInfant=0, so supp: ~
P (x ) → P (x )
supp(Infant)=0
• If |supp(A)|<∞, A can be defined A=µ1/x1+ µ2/x2+…+ µn/xn. n
A = ∑ µ i / x i A = ∫ µ A (x ) / x i =1
x
• Mag (kernel, Nucleus, Core): Kernel(A)={x | µA(x)=1}. Dr. Kovács Szilveszter ©
M.I. 11. / 23.
• Magasság (height): – – – –
Definíciók Height (A ) = max (µ A ( x )) ⇒ sup(µ A ( x ))
x A normális Fuzzy halmaz A nem normális Fuzzy halmaz
If height(A)=1 If height(A)<1 height(0)=0 (If height(A)=0 then supp(A)=0)
• α-metszet (α-cut): A α = {x | µ A ( x ) ≥ α} A α = {x | µ A ( x ) > α} Strong α- Cut: – Kernel: – Support:
x
height(Old)=1 height(Infant)=0
Young 0.8 = {5,10, 20} Young 0.8 = {5,10}
A1 = {x | µ A ( x ) = 1} A 0 = {x | µ A ( x ) > 0} µ 1
A0.8
.8
A
– If A is subnormal, Kernel(A)=0
A α ≤ A β IF α ≥ β
.5
A0.5 A0.3
.3
0
Dr. Kovács Szilveszter ©
M.I. 11. / 24.
X
Definíciók µ(x) 1 .5 α 0
Core
X
Crossover points α - cut Support
Dr. Kovács Szilveszter ©
M.I. 11. / 25.
Definíciók • Konvex fuzzy halmaz: X=ℜ
n
– A is convex if for every x1,x2∈X and λ ∈[0,1]:
µ A (λx1 + (1 − λ ) x2 ) ≥ min( µ A ( x1 ), µ A ( x2 )) µ
µ
1
0
x
1
x
2
X
1
0
x
1
Dr. Kovács Szilveszter ©
x
2
X
M.I. 11. / 26.
Definíciók • Nonconvex fuzzy set:
• Convex fuzzy set over R 2 x2
Kernel
α=0.2 α=0.4 α=0.8
α=0.6
Dr. Kovács Szilveszter ©
x1
M.I. 11. / 27.
Definíciók • Fuzzy szám: Konvex és normális fuzzy halmaz ℜ-en – Example 1: N 1 0
r1 r* r2 height(µN(r))=1 ℜ for any r1, r2: µN(r*)= µN(λr1+(1- λ)r2) ≥ min(µN(r1), µN(r2)) – Example 2: “Approximately equal to 6”
r−6 1 − if r ∈ [3, 9] µ N (r ) = 3 1 0 otherwise
µN(r)
µ
0 3 Dr. Kovács Szilveszter ©
6
9 M.I. 11. / 28.
ℜ
Definíciók • Lapos fuzzy szám: There is a,b (a≠b, a,b∈ℜ) µN(r)=1 IFF r∈[a,b] (Extension of ‘interval’) • Tartalmazás (inclusion) of fuzzy set A⊆B IFF µA(x)≤ µB(x) – Example:
Old ⊆Adult
• Egyenlő fuzzy halmazok A=B IFF A⊆B and A⊇B If it is not the case: A≠B • Valódi részhalmaz (Proper subset) A⊆B IFF A⊆B and A ≠ B Dr. Kovács Szilveszter ©
M.I. 11. / 29.
Nyelvi értékek (Linguistic Values)
Dr. Kovács Szilveszter ©
M.I. 11. / 30.
Műveletek közvetlenül a nyelvi értékeken – pl. • Concentration: • Dilation: • Contrast intensification:
CON ( A) = A2
D IL ( A ) = A 0 .5 0 ≤ µ A( x) ≤ 05 . 2 A2 , INT( A) = 2 ¬ 2 ¬ ( A ) , 05 . ≤ µ A( x) ≤ 1
Dr. Kovács Szilveszter ©
M.I. 11. / 31.
Műveletek közvetlenül a nyelvi értékeken – pl. pl. • µnagyon öreg(x)= con (x)=µ2(x) • µtöbbé-kevésbé öreg(x)=dil(x) =µA0,5(x) µi(x)
µtöbbé-kevésbé öreg(x) 1
µöreg(x) µnagyon öreg(x) 60
80 Dr. Kovács Szilveszter ©
x [év]
M.I. 11. / 32.
Fuzzy Partíció • A Fuzzy partíciót nyelvi értékek alkotják pl.: “young”, “middle aged”, and “old”:
Dr. Kovács Szilveszter ©
M.I. 11. / 33.
Fuzzy halmazműveletek - Zadeh L.A. Zadeh (1964/1965): • Komplemens: µ A (x ) = 1 − µ A (x ) µ A ∩ B (x ) = min (µ A (x ), µ B (x )) • Metszet: µ A ∪ B (x ) = max (µ A (x ), µ B (x )) • Unió:
Dr. Kovács Szilveszter ©
M.I. 11. / 34.
Fuzzy halmazműveletek - Zadeh Fuzzy set operations defined by L.A. Zadeh in 1964/1965 µ A ∩ B (x ) = min (µ A (x ), µ B (x )) µ A ∪ B (x ) = max (µ A (x ), µ B (x )) µ A (x ) = 1 − µ A (x )
Dr. Kovács Szilveszter ©
M.I. 11. / 35.
Fuzzy halmazműveletek - Zadeh This is really a generalization of crisp set op’s! A
B
¬A
A∩B
A∪B
1-µA
min
max
0 0 1 1
0 1 0 1
1 1 0 0
0 0 0 1
0 1 1 1
1 1 0 0
0 0 0 1
0 1 1 1
µ A (x ) = 1 − µ A (x )
µ A ∩ B (x ) = min (µ A (x ), µ B (x )) µ A ∪ B (x ) = max (µ A (x ), µ B (x )) Dr. Kovács Szilveszter ©
M.I. 11. / 36.
Kétértékű logika – logikai függvények v2 v1
1100 1010
Adopted name
Symbol
Other names used
w1
0000
Zero fn.
0
Falsum
w2
0001
Nor fn.
v1↓v2
Pierce fn.
w3
0010
Inhibition
v1>v2
Proper inequality
w4
0011
Negation
¬v2
Complement
w5
0100
Inhibition
v1
Proper inequality
w6
0101
Negation
¬v1
Complement
w7
0110
Exclusive or function
v1⊕v2
Antivalence
w8
0111
Nand function
v1↑v2
Sheffer Stroke
w9
1000
Conjunction
v1∧v2
And function
w10
1001
Biconditional
v1⊗v2
Equivalence
w11
1010
Assertion
v1
Identity
w12
1011
Implication
v1⇐v2
Conditional, inequality
w13
1100
Assertion
v2
Identity
w14
1101
Implication
v1⇒v2
Conditional, inequality
w15
1110
Disjunction
v1∨v2
Or function
w16
1111
One fn.
1
Verum
Dr. Kovács Szilveszter ©
M.I. 11. / 37.
Kétértékű logika – tulajdonságok B1. Idempotence B2. Commutativity B3. Associativity
a+a=a, a·a=a a+b=b+a (a+b)+c=a+(b+c), (a·b)·c=a·(b·c)
B4. Absorption
a+(a·b)=a, a·(a+b)=a
B5. Distributivity
a·(b+c)=(a·b)+(a·c), a+(b·c)=(a+b)·(a+c)
B6. Universal bounds
a+0=a, a+1=1 a·1=a, a·0=0
B7. Complementarity
a+¬a=1, a·¬a=0, ¬1=0
B8. Involution
¬(a+b)= ¬a · ¬b
B9.Dualization
¬(a·b)= ¬a +¬b Dr. Kovács Szilveszter ©
Lattice
M.I. 11. / 38.
•
•
Többértékű (háromértékű) logikák
Two valued logic questioned since B.C. Three valued logic includes indeterminate value: ½ Negation: 1-a, ∧∨⇒⇔ differ in these logics. Examples:
ab
Łukasiewicz
Bochvar
Kleene
Heyting
Reichenbach
∧∨⇒⇔
∧∨⇒⇔
∧∨⇒⇔
∧∨⇒⇔
∧∨⇒⇔
00
0011
0011
0011
0011
0011
0½
0½1½
½½½½
0½1½
0½10
0½1½
01
0110
0110
0110
0110
0110
½0
0½½½
½½½½
0½½½
0½00
0½½½
½½
½½11
½½½½
½½½½
½½11
½½11
½1
½11½
½½½½
½11½
½11½
½11½
10
0100
0100
0100
0100
0100
1½
½1½½
½½½½
½1½½
½1½½
½1½½
11
1111
1111
1111
1111
1111
Dr. Kovács Szilveszter ©
M.I. 11. / 39.
Többértékű (n) logikák • N-valued logic:
n−2 1 ,1 Tn = 0 , , ... , n −1 n −1 Degrees of truth (Lukasiewicz, ~1933)
a =1- a a ∧ b = min (a, b ) a ∨ b = max (a, b ) a → b = min(1,1 + b - a) a ↔ b =1- a - b Dr. Kovács Szilveszter ©
LOGIC PRIMITIVES
M.I. 11. / 40.
Többértékű logikák – tulajdonságok • No difference from classical logic for 0 and 1. But:
a ⋅ a = 0, a + a = 1
are not true! (excluded middle)
• Quasi tautology: doesn’t assume 1. Quasi contradiction: doesn’t assume 0.
• Next step? Dr. Kovács Szilveszter ©
M.I. 11. / 41.
Fuzzy halmazműveletek • Komplemensképzés • Metszetképzés • Únióképzés
Dr. Kovács Szilveszter ©
M.I. 11. / 42.
Fuzzy komplemensképzés általánosan • A komplemens egy függvény, aminek minden értéke egy olyan fuzzy halmazhoz való tartozás mértékét fejezi ki, amit az eredeti halmaz (nyelvi érték) negáltjának tekintünk. Ha például A az idős emberek fuzzy halmaza, akkor komplemense azon személyek sokasága, akiket nem tekintünk idősnek. Fuzzy halmazokról lévén szó a klasszikus halmazoktól eltérően az esetek többségében sok olyan elemet találhatunk, amelyek úgy az A, mint annak komplemensében nullánál nagyobb tagsági értékkel bírnak. A komplemens jelölése: c : [0,1] → [0,1]
Egy művelet akkor felel meg a komplemensképzés céljára, ha teljesíti az alábbi két feltételt: • határfeltétel: c(0)=1 és c(1)=0 • monoton csökkenés: ha b≥a, akkor c(b)≤c(a) Dr. Kovács Szilveszter ©
M.I. 11. / 43.
Fuzzy halmazműveletek - Komplemens c : [0,1] → [0,1] • Usually µ A (x ) ∈ (0,1) and µ A (x ) ∈ (0,1) µ A ( x ) = c(µ A ( x )) • Axioms (skeleton):
c1 c(0) = 1 ∧ c(1) = 0 (boundary conditions) c2 ∀a, b ∈ [0,1] a < b ⇒ c(a ) ≥ c(b ) (monotonicity) • A family of functions C satisfy c1,c2 ~ ~ C : P (x ) → P (x )
c(µ A ( x )) = µ C ( A )
• Practical additions to the axioms: c3. c is a continuous function c4. c is involutive (c[c(a )] = a, ∀a ∈ [0,1]) + c3 + c4
c1, c 2 Dr. Kovács Szilveszter ©
M.I. 11. / 44.
Fuzzy halmazműveletek – Komplemens – pl. Some examples • 1., Zadeh: c(a ) = 1 − a • 2., c(a ) = 1 for a ≤ t a ∈ [0,1] 0 for a > t 1 • 3., c(a ) = (1 + cos aπ ) 2 1
c(a )
0
a
t ∈ [0,1)
satisfies c1, c2, c3 satisfies c1, c2 t = threshold satisfies c1, c2, c3
1 .9 .8 .7 .6 c(a ).5 .4 .3 .2 .1 0 0 © .1 .2 .3 .4 .5 .6M.I. .7 .8 1 Dr.1Kovács Szilveszter 11..9/ 45. a
Fuzzy halmazműveletek – Komplemens – pl. More examples • 3., c (a ) = 1 − a λ
1 + λa
• 2., cw (a ) = (1− a 1 .9 .8 .7 .6 .5 .4 .3 .2 .1 0
)
1 w w
λ = −.9 λ = −.5 λ =0 λ=2 λ = 10
0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1
λ ∈ (− 1, ∞ )
(M. Sugeno)
w ∈ (0, ∞ )
(R. Yager)
Classical complement (Zadeh)
1 .9 .8 .7 .6 .5 .4 .3 .2 .1 0
w=5 w=2 w =1 w = .5
0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1 Dr. Kovács Szilveszter ©
M.I. 11. / 46.
Fuzzy metszetképzés általánosan • Két fuzzy halmaz metszetét megvalósító műveletet t-normának (t=triangular=háromszög) nevezzük. Jelölése: t : [0,1]× [0,1] → [0,1]
Egy fuzzy halmazokon értelmezett kétoperandusú művelet akkor nevezhető metszetnek, ha megfelel az alábbi feltételeknek: • határfeltétel: t(a,1)=a • monotonitás: ha b≤c, akkor t(a,b) ≤t(a,c) • kommutativitás: t(a,b)=t(b,a) • asszociativitás: t(a,t(b,c))=t(t(a,b),c) Dr. Kovács Szilveszter ©
M.I. 11. / 47.
Fuzzy halmazműveletek – Metszet (t-norm) t : [0,1]× [0,1] → [0,1]
µ A∩ B (x ) = t [µ A (x ), µ B (x )]
• Axiomatic skeleton: t1 t (a,1) = a ∀a ∈ [0,1] (boundary conditions) t2 t (a, b ) = t (b, a ) ∀a, b ∈ [0,1] (commutativity) t3 b ≤ c ⇒ t (a, b ) ≤ t (a, c ) ∀a, b, c ∈ [0,1] (monotonicity) t4 t [t (a, b ), c ] = t [a, t (b, c )] ∀a, b, c ∈ [0,1] (associativity) • Some usual restrictions (practical motivation) t5 t is a continuous function t6a t (a, a ) = a (idempotence) t6b t (a, a ) < a (subidempotence) t7 a < a '∧ b < b' ⇒ t (a, b ) < t (a ' , b') ∀a, b, a' , b'∈ [0,1] (szigorú monotonitás) Dr. Kovács Szilveszter ©
M.I. 11. / 48.
Fuzzy unióképzés általánosan • Két fuzzy halmaz unióját megvalósító műveletet s-normának (t-konormának) nevezzük. Jelölése: s : [0,1]× [0,1] → [0,1]
Egy fuzzy halmazokon értelmezett kétoperandusú művelet akkor nevezhető uniónak, ha megfelel az alábbi feltételeknek : • határfeltétel: t(a,0)=a • monotonitás: ha b≤c, akkor t(a,b) ≤t(a,c) • kommutativitás: t(a,b)=t(b,a) • asszociativitás: t(a,t(b,c))=t(t(a,b),c) Dr. Kovács Szilveszter ©
M.I. 11. / 49.
Fuzzy halmazműveletek – Unó (t-conorm, s-norm) s : [0,1]× [0,1] → [0,1]
µ A∪ B (x ) = s[µ A ( x ), µ B (x )]
• Axiomatic skeleton: s1 s(a,0 ) = a ∀a ∈ [0,1] (boundary conditions) s2 s(a, b ) = s(b, a ) ∀a, b ∈ [0,1] (commutativity) s3 b ≤ c ⇒ s(a, b ) ≤ s(a, c ) ∀a, b, c ∈ [0,1] (monotonicity) s4 s[s(a, b ), c ] = s[a, s(b, c )] ∀a, b, c ∈ [0,1] (associativity) • Some usual restrictions (practical motivation) s5 s is a continuous function s6a s(a, a ) = a (idempotence) s6b s(a, a ) > a (superidempotence) s7 a < a'∧ b < b' ⇒ s(a, b ) < s(a ' , b') ∀a, b, a' , b'∈ [0,1] (szigorú monotonitás) Dr. Kovács Szilveszter ©
M.I. 11. / 50.
Fuzzy halmazműveletek – t-norm, s-norm – pl. • Intersection 1., t (a, b ) = min( a, b) 2., t (a, b ) = ab 3., t (a, b ) = max(0, a + b − 1) a, if b = 1 4.,
(Minimum) (Algebraic product) (Bounded product) (Drastic product)
• Union 1., s(a, b ) = max(a, b) 2., s(a, b ) = a + b − ab 3., s(a, b ) = min(1, a + b) a, if b = 0 4.,
(Maximum) (Algebraic sum) (Bounded sum) (Drastic sum)
t min (a, b ) = b, if a = 1 0, otherwise
smax (a, b ) = b, if a = 0 1, otherwise
Dr. Kovács Szilveszter ©
M.I. 11. / 51.
Fuzzy halmazműveletek – t-norm – pl. Minimum
Algebraic prod. Bounded prod. Drastic prod.
Dr. Kovács Szilveszter ©
M.I. 11. / 52.
Fuzzy halmazműveletek – t-conorm, s-norm – pl. Maximum
Algebraic sum Bounded sum Drastic sum
Dr. Kovács Szilveszter ©
M.I. 11. / 53.
Fuzzy t-norm, s-norm – some classes Fuzzy Unions s-norm
Reference Schweizer & Sklar [1961]
[
Fuzzy Intersections t-norm
]
1 − max 0, (1 − a ) + (1 − b ) − 1 −p
−p
1 p
Hamacher [1978]
a + b − (2 − γ )ab 1 − (1 − γ )ab
Frank [1979]
s1− a − 1 s1−b − 1 1 − log s 1 + s −1
Yager [1980] Dubois & Prade [1980]
Dombi [1982]
(
(
)
)
1 w
−p
+b
−p
− 1]
(
)(
γ ∈ (0, ∞ )
)
(
w w 1 − min 1, (1 − a ) + (1 − b )
ab max(a, b,α )
1
1
1 1 + − 1 a
p ∈ (− ∞ , ∞ )
1 p
s a −1 sb −1 log s 1 + s − 1
a + b − ab − min(a, b,1 − α ) max(1 − a,1 − b,α ) −λ
−
ab γ − (1 − γ )(a + b − ab )
)(
min 1, a w + b w
max[0, a
Range of Parameter
−λ
1 + − 1 b
−
1
λ
λ
1 1 1 + − 1 + − 1 a b
Include algebraic norms: a + b − ab and ab p→0 and Lukasiewicz/Zadeh max(a,b) and min(a,b) p→-∞, Dr. Kovács Szilveszter ©
s ∈ (0, ∞ )
)
1 w
w ∈ (0, ∞ )
α ∈ (0,1)
λ
1
λ
λ ∈ (0, ∞ )
w→∞ M.I. 11. / 54.
Fuzzy halmazműveletek – Aggregáció operátor n h : [0,1] → [0,1] n ≥ 2 µ A ( x ) = h(µ A ( x ), µ A ( x ),..., µ A ( x )) 1
• Axiomatic skeleton: h1 h(0,0,...,0 ) = 0
2
n
(boundary conditions)
h(1,1,...,1) = 1
h2 for arbitrary ai and bi i ∈ N n
(monotonicity) ∀i ai ≥ bi ⇒ h(ai i ∈ N n ) ≥ h(bi i ∈ N n )
• Some usual restrictions (practical motivation) h3 h is a continuous function h4 h is symmetric for all the arguments h(ai i ∈ N h ) = h(a p (i ) i ∈ N h )
p (i ) arbitrary permutation
Dr. Kovács Szilveszter ©
s
t M.I. 11. / 55.
Fuzzy halmazműveletek – Aggregáció operátor • Union & intersection can be extended to n-ary operations because of associativity: a ∪ b ∪ c ∪ d = (a ∪ b ) ∪ (c ∪ d ) = ((a ∪ b ) ∪ c ) ∪ d = ...
• For given a1 , a2 ,..., an : t min Intersections
smax
?
min (a1 , a2 ,..., an )
Unions
max (a1 , a2 ,..., an )
• ? is the area of averaging operations
min (a1 ,..., an ) ≤ h(a1 ,..., an ) ≤ max (a1 ,..., an ) Dr. Kovács Szilveszter ©
M.I. 11. / 56.
Fuzzy halmazműveletek – Aggregáció operátor • Generalized means: a1α + a2α + ... + anα hα (a1 ,..., an ) = n h−∞ = min (a1 , a2 ,..., an )
1
α
hα satisfies h1-h4
α ∈ R (≠ 0 )
h∞ = max (a1 , a2 ,..., an ) h0 = n a1a2 ...an
a1 + a2 + ... + an h1 = n n h−1 = 1 1 1 + + ... + a1 a2 an
1
n α n α hα = ∑ wi ai wi = 1 ∑ i =1 i =1 If h4 (symmetricity) is not necessary (different importance of arguments)
w
Dr. Kovács Szilveszter ©
M.I. 11. / 57.
Fuzzy halmazműveletek – Aggregáció operátor • Various classes of aggregation operations 0
Dombi λ Schweizer/Sklar
−∞
p
Yager 0
w
∞
∞
−∞
∞
Intersection operations
p
−∞
Yager ∞
Generalized means α
min
imin
0
Schweizer/Sklar
∞
∞
Dombi λ
w
0
∞
max
Averaging operations Dr. Kovács Szilveszter ©
umax
Union operations M.I. 11. / 58.
Kétértékű (crisp) logika – relációk A klasszikus reláció információt ad arról, hogy egy vagy több halmaz elemei között fennáll-e egy adott kapcsolat. Ennek leírása úgy történik, hogy képzik a részt vevő halmazok Descatres-i szorzatát, azaz pl. kéthalmazos esetben párosítanak minden elemet a másik halmaz minden elemével, és a párosokhoz egyenként 1-et vagy 0-t rendelnek aszerint, hogy fennáll-e vagy nem a vizsgált kapcsolat. Két halmaz esetén a relációt bináris relációnak nevezik. Dr. Kovács Szilveszter ©
M.I. 11. / 59.
Fuzzy logika – relációk A klasszikus reláció kiterjesztése Lehetőség van a kapcsolat kevésbé élesen elhatároló értékelésére, a vizsgált két vagy több objektum viszonyát (az elemek között a reláció fennállásának mértékét) a [0,1] intervallum értékeivel jelöljük.
Dr. Kovács Szilveszter ©
M.I. 11. / 60.
Kétértékű (crisp) reláció – Fuzzy reláció • Crisp relation: Some interaction or association between elements of two or more sets. • Fuzzy relation: Various degrees of association can be represented. A
B
• • • •
• • •
A
CR
FR
CRISP RELATION
• 0.8 • 1 • •
0.5
B
• • 0.9•
0.6 FUZZY RELATION
• Cartesian (direct) product of two (or more) sets X, Y X × Y = { (x,y) | x ∈ X, y ∈ Y } X × Y ≠ Y × X IF X ≠ Y !
• More generally:
× x = {(x , x ,..., x ) x ∈ X , i ∈ N } n
i =1
i
1
2
Dr. Kovács Szilveszter ©
n
i
i
n
M.I. 11. / 61.
Kétértékű (crisp) reláció IF Xi = x ∀ i ∈ Nn
X × X × … × X = Xn
Crisp relation (mathematically) Characteristic function 1 IFF ( xi ) ∈ R µ R (x1, x2, …, xn) =
{
R(X1, X2, … , Xn ) ⊂
×X
i
i ∈ Nn
0 ELSE
LANGUAGE: L = { CHINESE, KOREAN, JAPANESE, ENGLISH } COUNTRY: C = { KOREA, CHINA, TAIWAN, JAPAN, HONGKONG } GEOGRAPHY: G = { MAINLAND, ISLAND } R(L,C,G): K C T J H MAINLAND CHINESE 0 1 0 0 1 KOREAN 1 0 0 0 0 JAPANESE 0 0 0 0 0 ENGLISH 0 0 0 0 1 CHINESE KOREAN JAPANESE ENGLISH
K C T J H ISLAND 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0Dr.1Kovács Szilveszter ©
M.I. 11. / 62.
Fuzzy reláció Fuzzy relation: { 0, 1 } is extended to [ 0, 1 ] SIMILARITY OF LANGUAGES X= { JAPANESE, HUNGARIAN, ENGLISH} : R(X, X) 0.6 J H E J H J 1 0.6 0.1 0.1 1 H 0.6 1 0.2 0.2 E 1 E 0.1 0.2 1
Dr. Kovács Szilveszter ©
1
M.I. 11. / 63.
Fuzzy reláció vetítése Projection of a relation: R ↓ Y projection to Y µ R ↓ Y (y) = max ( µ R ( x) ) ypx
X = { x, y }
A = { +, ∗ }
Q = { $, £ }
R (x, a, q) = 0.1 / (x, +, $) + 0.3 / (x, +, £) + 0.4 / (x, ∗, $) + 0.8 / (y, +, £) + 1 / (y, ∗, $) RXA = R ↓ ( X × A ) RXA ( x, a ) = 0.3 / (x, +) + 0.4 / (x, ∗) + 0.8 / (y, +) + 1 / (y, ∗) RXQ = R ↓ ( X × Q ) RXQ ( x, q ) = 0.4 / (x, $) + 0.3 / (x, £) + 1 / (y, $) + 0.8 / (y, £) RX = R ↓ X RX ( x) = 0.4 / x + 1/ y
Dr. Kovács Szilveszter ©
M.I. 11. / 64.
Fuzzy reláció vetítése (projection) Two-dimensional MF
µ R ( x, y )
Projection onto X
Projection onto Y
RX = R ↓ X
RY = R ↓ Y
µ A( x) = max µ R ( x, y ) y
Dr. Kovács Szilveszter ©
µB( y) = max µ R ( x , y ) x
M.I. 11. / 65.
Fuzzy reláció hengeres kiterjesztése
Cylindric extension R ↑ (X-Y) cylindric extension to X Y ⊂ X where R(Y) was defined µ R ↑ (X -Y ) (x) = µ R (y) x fy
Y = { a, b, c } ,
µ R(y) = 0.3 / a + 0.5 / b + 0.4 / c ,
X = { a, b, c } × { x, y }
µ R ↑ (X -Y ) (x) = 0.3/(a, x) + 0.3/(a, y) + 0.5/(b, x) + 0.5/(b, y) + 0.4/(c, x) + 0.4/(c, y) Y µ R ↓ Y (y) 1 µ R (x,y) supp( R ↓ Y) = max (supp(R) ) x
0
µ R↑Y
(x,y)
X Y
1 supp (R ↑ Y) = supp (R) × Y 0 Dr. Kovács Szilveszter ©
µ R (x)
X M.I. 11. / 66.
Hengeres kiterjesztés (cylindrical extension) Base set A
Cylindrical Extension of A RX,Y = R ↑ Y
Dr. Kovács Szilveszter ©
M.I. 11. / 67.
Fuzzy reláció hengeres lezárt Cylindric closure: R(x1, x2, … , xn) is not known
Known are µ X × j∈J
Yi =
j
R ↓ Y1 ,
µ R ↓ Y2 , …
i∈I
Y × i∈I
i∈I
i
i
=
n
X × i=1
j
Then cyl(R↓Yi ) approximates R
µ cyl(R ↓ Yi ) (x) = min ( µ (R ↓ Yi ) ↑ X - Yi (x) ) i∈I
µ R(x1, x2) 1
µ
0 1
X2 1 X1
µ R ↓ X1 (x1)
0
X2
R ≠ cyl( Ri ) !
1
0
X1
µ cyl (R ↓ 0
µ R ↓ X2 (x2)
X1, R ↓ X2 ) (x1,
X2
x2)
X1 Dr. Kovács Szilveszter ©
M.I. 11. / 68.
Hengeres lezárt (cylindric closure)
Dr. Kovács Szilveszter ©
M.I. 11. / 69.
Bináris reláció Binary relation: Relation between two sets ( X, Y ) R ( X,Y )
If X ≠ Y Binary relation = Bipartite graph If X = Y Directed graph ( Digraph ) • • • •
• • •
X
Y
X
Dr. Kovács Szilveszter ©
M.I. 11. / 70.
Fuzzy bináris reláció Fuzzy binary relation: Every edge bears a membership degree 0.3
0.2
X1 • • Y1 1 .0 X2 • .3 0 X3 • • Y2 0.4
X1 0.2
X1 X2 X3
Y2 1.0 0.0 0.4
X1 X2 X3
X1 0.3 0.0 0.0
1.0 X3
( Sagittal diagram ) Y1 0.2 0.3 0.0
X2
0.2
X2 0.0 0.0 1.0
X3 0.2 0.2 0.0
Denotation: R(x,y)
xRy
(CF. x < y )
Fuzzy case: µR (x,y) α / x R y ˆ= µR (x,y) = α
Dr. Kovács Szilveszter ©
M.I. 11. / 71.
Kétértékű (crisp) reláció - kompozíció Relációk kompozíciója (crisp composition) P(X, Y), Q (Y, Z)
two crisp relations
R(X, Z) = P(X, Y) ° Q(Y, Z) R(X, Z) ⊂ X × Z (x, z) ∈ R IFF ( ∃ y | y ∈ Y)
( (x, y) ∈ P AND
(y, z) ∈ Q )
P°Q≠Q°P
(P ° Q) -1 = Q -1 ° P -1
(P ° Q) ° R = P ° (Q ° R) = P ° Q ° R
Dr. Kovács Szilveszter ©
M.I. 11. / 72.
Bináris Fuzzy relációk kompozíciója Fuzzy relációk max-min kompozíciója P(X,Y) : µ P Q(Y, Z) : µ Q µ P ° Q (x, z) = max min ( µ P(x, y), µ Q(y, z) ) y∈Y
All properties for crisp relations are satisfied X x1
P(X,Y)
0. 4
x1 x1 x2 x2 x3
z1 z2 z1 z2 z1
x3 z2
0. 5
y1 Y y2
0. 6
x2 x3
0. 7
Q(Y, Z) 0. 8
Z
0. 2
z1
0. 3 y3 1. 0 0. 2
min (0.7, 0.8) = 0.7 0.0 min (0.6, 0.8) = 0.6 min (0.5, 0.2) = 0.2 min (0.4, 0.8) = 0.4 min (1.0, 0.5) = 0.5 min (0.3, 0.2) = 0.2 min (0.2, 1.0) = 0.2
y4
z2
0. 5 1. 0
X x1
R=P°Q 0. 7
Z z1
0. 6
max = 0.5 max = 0.2
x2
0. 2
z2
0. 5
x3
Dr. Kovács Szilveszter ©
0. 2
M.I. 11. / 73.
Bináris Fuzzy relációk kompozíciója Max-product composition:
µ P ⋅ Q (x, z ) = max(µ P ( x, y ) ⋅ µ Q ( y, z )) y∈Y
General s-t composition:
µ Po
s,t Q
s = UNION,
t = INTERSECTION
(x, z ) = yS∈Y (µ P (x, y ) t µ Q ( y, z ))
Composition of membership matrices M = [ pik ] P
M = [ q kj ] Q
M
R
= [ rij ]
[ r i j ] = [ p i k ] °s,t [ q k j ] r i j = S ( p i k t q kj ) K Dr. Kovács Szilveszter ©
M.I. 11. / 74.
A max-min Fuzzy kompozíció tulajdonságai •The max-min composition of two fuzzy relations R1 (defined on X and Y) and R2 (defined on Y and Z) is
µ R o R ( x , z ) = ∨ [ µ R ( x , y ) ∧ µ R ( y , z )] 1
2
y
1
2
•Properties: • Associativity: R o (S o T ) = ( R o S ) o T • Distributivity over union:
R o (S U T ) = ( R o S ) U( R o T )
• Week distributivity over intersection: R o (S I T ) ⊆ ( R o S ) I( R o T )
• Monotonicity:
S ⊆ T ⇒ (R o S) ⊆ (R oT ) Dr. Kovács Szilveszter ©
M.I. 11. / 75.
Tudásábrázolás Fuzzy logikával • • • • • •
Fuzzy halmazok (nyelvi értékek, partíciók) Fuzzy logikai halmazműveletek Fuzzy reláció Fuzzy kompozíció Fuzzy szabályok Fuzzy logikai következtetés
Dr. Kovács Szilveszter ©
M.I. 11. / 76.
Fuzzy logikai következtetés • The most commonly used fuzzy inference technique is the so-called Mamdani method. • In 1975, Professor Ebrahim Mamdani of London University built one of the first fuzzy systems to control a steam engine and boiler combination. • He applied a set of fuzzy rules supplied by experienced human operators.
Dr. Kovács Szilveszter ©
M.I. 11. / 77.
Mamdani féle Fuzzy logikai következtetés Alapgondolat: Zadeh (1973): minél jobban illeszkedik egy megfigyelés egy szabály feltétel részére (minél nagyobb a tagsági függvény érték), az adott szabály következmény része annál nagyobb súllyal vesz részt az eredményként előálló fuzzy halmazban Mamdani (1975) • a következtetés eredményeként keletkező fuzzy halmazt a bemenő adatok fuzzy halmaza és a szabálybázist leíró fuzzy reláció kompozíciójaként állítja elő • max-min kompozíció Dr. Kovács Szilveszter ©
M.I. 11. / 78.
Mamdani féle max-min kompozíciós Fuzzy logikai következtetés • A Mamdani féle Fuzzy logikai következtetés az alábbi lépésekből tevődik össze: – A bemeneti változók fuzzifikálása, – Fuzzy következtetés – A fuzzy következmény defuzzifikálása. • Az alkalmazott következtetési módszer: Max-min compositional rule of inference (Zadeh)
Dr. Kovács Szilveszter ©
M.I. 11. / 79.
Fuzzification – Inference – Defuzzification Measured Variables (Linguistic Values)
2. Fuzzy-Inference
Command Variables (Linguistic Values)
Linguistic Level Numerical Level
3. Defuzzification
1. Fuzzification
Measured Variables
Plant
(Numerical Values) Dr. Kovács Szilveszter ©
Command Variables (Numerical Values)
M.I. 11. / 80.
Mamdani féle Fuzzy logikai következtetés Fuzzy szabályok Fuzzy halmazok Bemenő értékek: fuzzy halmazok Fuzzifikálás
Fuzzy következtetés FUZZY RENDSZER
Kimenő értékek: fuzzy halmazok Defuzzifikálás
VALÓS VILÁG Mért értékek (valós értékek)
Vezérelt folyamat
Dr. Kovács Szilveszter ©
Vezérlő értékek (valós értékek) M.I. 11. / 81.
Direkt fuzzy logikai irányítás Mamdani Modell:
Tudásbázis: •Fuzzy szabályok és •Fuzzy halmazok Dr. Kovács Szilveszter ©
M.I. 11. / 82.
Fuzzy logikai következtetés A három fő összetevő: • Fuzzy szabálybázis • Adatbázis (a tagsági érték függvények definíciói) • Fuzzy következtetési módszer (aggregation)
Dr. Kovács Szilveszter ©
M.I. 11. / 83.
Fuzzy If-Then szabályok • General format: If x is A then y is B • Examples: – – – –
If pressure is high, then volume is small. If the road is slippery, then driving is dangerous. If a tomato is red, then it is ripe. If the speed is high, then apply the brake a little.
Dr. Kovács Szilveszter ©
M.I. 11. / 84.
Nyelvi értékek •A numerical variables takes numerical values: Age = 65 •A linguistic variables takes linguistic values: Age is old •Linguistic values are fuzzy sets. •All linguistic values form a term set: T(age) = {young, not young, very young, ... middle aged, not middle aged, ... old, not old, very old, more or less old, ... not very yound and not very old, ...}
Dr. Kovács Szilveszter ©
M.I. 11. / 85.
Nyelvi értékek (Linguistic Values)
Dr. Kovács Szilveszter ©
M.I. 11. / 86.
Fuzzy partíció • Fuzzy partitions formed by the linguistic values “young”, “middle aged”, and “old”:
Dr. Kovács Szilveszter ©
M.I. 11. / 87.
ε-fedő fuzzy partíció • Egy fuzzy partíció ε-fedő az X értelmezési tartományon, ha:
∀x ∈ X , ∃i ∈ N , µ Ai ( x ) ≥ ε Dr. Kovács Szilveszter ©
X
M.I. 11. / 88.
Fuzzy partíció • Ruspini-partíció (0.5-fedő): sup(supp( Ai( x) ) ) = inf(core( Ai+1( x) ) ) sup(core( Ai( x) ) ) = inf(supp( Ai+1( x) ) )
Dr. Kovács Szilveszter ©
M.I. 11. / 89.
Boolean Partition • A induced by the fuzzy partition A:
Dr. Kovács Szilveszter ©
M.I. 11. / 90.
A Fuzzy partíciók specifikussága • Fuzzy partition A’ is more specific than A if all the elements of A’ are more specific (e.g. in terms of their specificity measure) than the elements of A. • Then, the number of elements of A’ is greater than the number of linguistic terms in A. • E.g. the fuzzy partition: A = { Negative, Zero, Positive} is less specific than the fuzzy partition A’ containing seven terms (fuzzy sets): A = {Negative Large, Negative Middle, Negative Small, Zero, Positive Small, Positive Middle, Positive Large} Dr. Kovács Szilveszter ©
M.I. 11. / 91.
A Fuzzy partíciók specifikussága • Pl.:
Specifikusabb
Dr. Kovács Szilveszter ©
M.I. 11. / 92.
Fuzzy szabályok • HA szennyezettség-mértéke=közepes ÉS olajozottság-foka=erősen-olajos AKKOR mosási-idő=közepes • HA leves-sózottság-mértéke=alig AKKOR só-hozzáadás=erősen
Dr. Kovács Szilveszter ©
M.I. 11. / 93.
Fuzzy következtetés • Hasonlít az előre láncoló (adatvezérelt) rendszerekhez • De egy végrehajtási cikluson belül minden szabály feltétel része kiértékelésre kerül (nincsenek szabályláncok) (kivéve a hierarchikus szabálybázis esetét) • A fuzzy következtetés eredménye: fuzzy halmaz
Dr. Kovács Szilveszter ©
M.I. 11. / 94.
A Fuzzy If-Then szabályok értelmezése • A Fuzzy szabályok kétféle értelmezése “If x is A then y is B”: A relációban áll B-vel
A implikálja B-t y a → b = a + b = a ⋅b
y
B
B
x
x
A
A Dr. Kovács Szilveszter ©
M.I. 11. / 95.
A Fuzzy szabályok értelmezése • Two ways to interpret “If x is A then y is B”: – A relációban áll B-vel (Fuzzy “pont”): (A and B)
Ri = Ai → Bi R i = A i → B i = A i × B i = ∫X×Y µA(x)∩µB(y) / (x,y) R = A→B =
∪ i=1 Ri r
=
∪ i=1 ( Ai → Bi )
– A implikálja B-t: (not A or B) • • • •
a→b Material implication Propositional calculus Extended propositional calculus Generalization of modus ponens Dr. Kovács Szilveszter ©
r
= a + b = a ⋅b
M.I. 11. / 96.
Fuzzy If-Then Rules (Zadeh-Mamdani method) • A relációban áll B-vel – “Fuzzy pont”:
Ri = Ai → Bi = Ai × Bi =
R =
∪ri=1 Ri
=
∫X×Y µA(x)∩µB(y) / (x,y)
∪ri=1 ( Ai → Bi ) Dr. Kovács Szilveszter ©
M.I. 11. / 97.
Fuzzy If-Then Rules • A relációban áll B-vel – “Fuzzy pont”: R i = A i → B i = ( A 1,i × A 2,i × ... × A n,i ) → B i = ( A 1,i × A 2,i × ... × A n,i ) × B i = = ∫X×Y (µA1,i(x 1)∩µA2,i(x 2)∩...∩µAn,i(x n))∩ µB(y) / (x 1,x 2,...,x n,y) = = ∫X×Y µA1,i(x 1)∩µA2,i(x 2)∩...∩µAn,i(x n)∩ µB(y) / (x 1,x 2,...,x n,y)
Dr. Kovács Szilveszter ©
M.I. 11. / 98.
Fuzzy If-Then Rules A implikálja B-t a → b = a + b = a ⋅b
Dr. Kovács Szilveszter ©
M.I. 11. / 99.
Max-min kompozíciós fuzzy következtetés (Zadeh) • Single rule with single antecedent Rule: If x is A then y is B Fact: x is A’ Conclusion: y is B’
(Generalized modus ponens)
• Graphic Representation: A’ A
B w
X
Y
A’ x is A’
B’ X
y is B’
Dr. Kovács Szilveszter ©
Y
M.I. 11. / 100.
Max-min kompozíciós fuzzy logikai következtetés • Single rule with multiple antecedent (Zadeh-Mamdani) Rule: if x is A and y is B then z is C Fact: x is A’ and y is B’ Conclusion: z is C’
• Graphic Representation: A’ A
B’ B
T-norm
C2
w
X
A’ x is A’
Y
B’ X
Z
y is B’
C’ Y Dr. Kovács Szilveszter ©
z is C’
Z
M.I. 11. / 101.
Max-min kompozíciós fuzzy logikai következtetés • Multiple rules with multiple antecedent Rule 1: if x is A1 and y is B1 then z is C1 Rule 2: if x is A2 and y is B2 then z is C2 Fact: x is A’ and y is B’ Conclusion: z is C’
A’
B’ B1
A1
(Zadeh-Mamdani)
C1 w1
X
A’ A2
Z
Y
B’ B2
C2 w2
X
A’
Y
Z T-norm
B’ C’
x is A’
X
y is B’
Y
Dr. Kovács Szilveszter ©
z is C’
Z
M.I. 11. / 102.
Max-min kompozíciós fuzzy logikai következtetés • Single antecedent, multiple rules – composition (Zadeh-Mamdani) y=x°R µx R(y) = maxx∈X min[ µx(x) , µR(x,y) ] °
Dr. Kovács Szilveszter ©
∀ y∈Y
M.I. 11. / 103.
Max-min kompozíciós fuzzy logikai következtetés • Single antecedent, multiple rules – composition y=x°R (Zadeh-Mamdani) µx R(y) = maxx∈X min[ µx(x) , µR(x,y) ] = °
= maxx∈X min[ µx(x) , ∪ri=1 µRi(x,y) ] =
= maxx∈X min[ µx(x) , ∪ri=1 min( µAi(x),µBi(y) ) ] =
= maxx∈X ∪ri=1 min[ µx(x) , min( µAi(x),µBi(y) ) ] =
= maxx∈X ∪ri=1 min[ µx(x) , µAi(x) , µBi(y) ] = = maxx∈X maxx∈X,y∈Y ( min[ µx(x) , µA1(x) , µB1(y) ] , min[ µx(x) , µA2(x) , µB2(y) ] , ... , min[ µx(x) , µAr(x) , µBr(y) ] ) = = ∪ri=1 maxx∈X min[ µx(x) , µAi(x) , µBi(y) ] = = ∪ri=1 µx Ri(y) °
Dr. Kovács Szilveszter ©
∀ y∈Y
M.I. 11. / 104.
Max-min kompozíciós fuzzy logikai következtetés • Single antecedent
(Zadeh-Mamdani) y=x°R µ x R (y) = max x∈X min[ µ x (x) , µ R (x,y) ] ∀ y∈Y °
Dr. Kovács Szilveszter ©
M.I. 11. / 105.
Max-min kompozíciós fuzzy logikai következtetés
• Multiple antecedents – composition (Zadeh-Mamdani) y = ( x1 , x2 ,..., xn ) ° R µ(x1,x2,...,xn) R(y) = maxx1,x2,...,xn min[ µx1(x1),µx2(x2),...,µxn(xn) , µR(x,y) ] = °
= maxx1,x2,...,xn min[ µx1(x1),µx2(x2),...,µxn(xn) , ∪ri=1 µRi(x1,x2,..,xn,y) ] = = maxx1,x2,...,xn min[ µx1(x1),µx2(x2),...,µxn(xn) ,
∪ri=1 min( µA1,i(x1),µA2,i(x2),...,µAn,i(xn),µBi(y) ) ] =
= maxx1,x2,...,xn ∪ri=1 min[ µx1(x1),µx2(x2),...,µxn(xn) , µA1,i(x1),µA2,i(x2),...,µAn,i(xn),µBi(y) ) ] = = ∪ri=1 maxx1,x2,...,xn min[ µx1(x1),µx2(x2),...,µxn(xn) , µA1,i(x1),µA2,i(x2),...,µAn,i(xn),µBi(y) ) ] =
= ∪ri=1 µ(x1,x2,...,xn) Ri(y) °
∀ y∈Y Dr. Kovács Szilveszter ©
M.I. 11. / 106.
Max-min kompozíciós fuzzy logikai következtetés
(Zadeh-Mamdani)
• Multiple antecedents
y = ( x1 , x2 ,..., xn ) ° R µ(x1,x2,...,xn) R(y) = ° = maxx1,x2,...,xn min[ µx1(x1),µx2(x2),...,µxn(xn) , µR(x,y) ]
∀ y∈Y
Dr. Kovács Szilveszter ©
M.I. 11. / 107.
Fuzzifikálás és defuzzifikálás • Fuzzifikálás: a bemenő adat lefordítása fuzzy halmazra, pl.: az x mért értékhez egy fuzzy halmaz rendelése (pl. a mérés bizonytalanséga alapján) • Defuzzifikálás: a fuzzy következtetések eredményeként kapott fuzzy halmazok crisp értékké alakítása – eredmény a kimeneten
Dr. Kovács Szilveszter ©
M.I. 11. / 108.
Defuzzifikálási módszerek • MCM – Max Criterion Method: a tagsági függvény valamely maximumhelye • MOM – Mean of Maximum: a tagsági függvény maximumhelyeinek átlaga • COG – Center of Gravity: a tagsági függvény alatti terület kiszámítása numerikus integrálással, majd a terület súlypontjának meghatározása
Dr. Kovács Szilveszter ©
M.I. 11. / 109.
Defuzzifikálási módszerek • The Max Criterion Method
yM :
yM ∈ Y ,
µy(yM) = maxy∈Y µy(y)
Dr. Kovács Szilveszter ©
M.I. 11. / 110.
Defuzzifikálási módszerek • The Mean of Maxima Method (MOM)
yM : { yiM ∈ Y | µy(yiM) = maxy∈Y µy(y) } n ym = ∑ i=1( yiM / n )
Dr. Kovács Szilveszter ©
M.I. 11. / 111.
Defuzzifikálási módszerek • The Center of Gravity Method (COG)
yc = ∑y∈Y( µy(y) . y ) / ∑y∈Y µy(y)
∫ µ ( y ) ⋅ y ⋅ dy
+ intuitive + smooth - computational burden
y
yc =
Y
∫ µ ( y )⋅ dy y
Y
Dr. Kovács Szilveszter ©
M.I. 11. / 112.
Defuzzifikálási módszerek • Defuzzification with additional restrictions
Dr. Kovács Szilveszter ©
M.I. 11. / 113.
Defuzzifikálási módszerek • The Center of Sums Method y = y1 ∪ y2 ∪ ... ∪ yn wi = ∑y∈Y µyi(y) yi = ∑y∈Y( µyi(y) . y ) / ∑y∈Y µyi(y) ycs = ∑i∈[1,n]( wi . yi ) / ∑i∈[1,n] wi
Dr. Kovács Szilveszter ©
M.I. 11. / 114.
Példa Feladat: a mosási idő beállítása a mosásra váró ruha szennyezettség foka és a szennyezés típusa függvényében • Bemenő változók: – szennyezettség-mértéke – olajozottság-mértéke • Kimenő változó: – mosási-idő
Dr. Kovács Szilveszter ©
M.I. 11. / 115.
A bemenő változók fuzzy partíciói (nyelvi értékek)
1
kevés közepes erős
1
nem olaj- erősen olajos foltos olajos
0
0 szennyezettség-mértéke
olajozottság-mértéke
Dr. Kovács Szilveszter ©
M.I. 11. / 116.
A kimenő változó fuzzy partíciója (nyelvi értékek)
1
igen rövid
rövid közepes hosszú meghosszabbított
0 mosási idő [perc]
Dr. Kovács Szilveszter ©
M.I. 11. / 117.
Fuzzy szabályok • HA szennyezettség-mértéke=közepes ÉS olajozottság-foka=erősen-olajos AKKOR mosási-idő=közepes • HA szennyezettség-mértéke=erős ÉS olajozottság-foka=erősen-olajos AKKOR mosási-idő=hosszú
Dr. Kovács Szilveszter ©
M.I. 11. / 118.
1
Az első szabály kiértékelése
kevés közepes erős
ÉS kapcsolat: µ[A∩B](a)=min{µA(a), µB(a)}
0,68 0
hosszú
1 szennyezettség-mértéke
1
nem olaj- erősen olajos foltos olajos
0,48 0 mosási idő [perc]
0,48
HA szennyezettség-mértéke=közepes ÉS olajozottság-foka=erősen-olajos AKKOR mosási-idő=közepe
0 olajozottság-mértéke
Dr. Kovács Szilveszter ©
M.I. 11. / 119.
1
kevés közepes erős
0,22 0
A második sz. kiértékelése közepes
1 szennyezettség-mértéke
1
nem olaj- erősen olajos foltos olajos
0,22 0 mosási idő [perc]
0,48
HA szennyezettség-mértéke=erős ÉS olajozottság-foka=erősen-olajos AKKOR mosási-idő=hosszú
0 olajozottság-mértéke
Dr. Kovács Szilveszter ©
M.I. 11. / 120.
Végeredmény 1
közepes hosszú
0,48 0,22 0
mosási idő [perc]
Dr. Kovács Szilveszter ©
M.I. 11. / 121.
Defuzzifikálás (COG) 1
közepes hosszú
0,48 0,22 0
45 mosási idő [perc]
COG – Center of Gravity: a tagsági függvény alatti terület kiszámítása numerikus integrálással, majd a terület súlypontjának meghatározása Dr. Kovács Szilveszter ©
M.I. 11. / 122.
Kompozíciós fuzzy következtetés - példa • Rule1: IF u is A1 AND y is B1 THEN z is C1 • Rule2: IF u is A2 AND y is B2 THEN z is C2 • Rule3: IF u is A3 AND y is B3 THEN z is C3 • Observations: x = A’ y = B’
Dr. Kovács Szilveszter ©
M.I. 11. / 123.
Kompozíciós fuzzy következtetés: Max-min Rule1
Rule2
Rule3
Dr. Kovács Szilveszter ©
M.I. 11. / 124.
Kompozíciós fuzzy következtetés: Max-product Larsen method
Rule1
Rule2
Rule3
Dr. Kovács Szilveszter ©
M.I. 11. / 125.
Fuzzy következtetés, párhuzamos végrehajtás
Dr. Kovács Szilveszter ©
M.I. 11. / 126.
Kompozíciós fuzzy következtetés - példa SISO: max-min composition center of gravity defuzzification • If X is small then Y is small • If X is medium then Y is medium • If X is large then Y is large
Dr. Kovács Szilveszter ©
M.I. 11. / 127.
Kompozíciós fuzzy következtetés - példa MISO: max-min composition center of gravity defuzzification • If X is small and Y is small then Z is negative large • If X is small and Y is large the Z is negative small • If X is large and Y is small the Z is positive small • If X is large and Y is large then Z is positive large
Dr. Kovács Szilveszter ©
M.I. 11. / 128.
Sugeno féle fuzzy következtetés • Sugeno (1985) - A szabályok következmény részében nem fuzzy halmaz szerepel, hanem a bemenetek függvénye • Ha x az A-hoz tartozik És y a B-hez tartozik Akkor z=f(x,y) Pl: • Ha X fagyos És Y fagyos Akkor z=-x+y+1 • Ha X fagyos És Y hideg Akkor z=-y+3 • Ha X hideg És Y fagyos Akkor z=-x+3 • Ha X hideg És Y hideg Akkor z=x+y+2 Dr. Kovács Szilveszter ©
M.I. 11. / 129.
Sugeno féle fuzzy következtetés • A következtetés eredménye közvetlenül egy valós érték (nem fuzzy halmaz) • Nincs szükség defuzzifikálásra • Több szabály aktivizálódása esetén az eredményt az egyes szabályoknál számolt következmények súlyozott átlagaként határozzák meg • A súlyokat a feltételrészben megjelenő nyelvi értékek tagsági fv. értékeire alkalmazott (ÉS/VAGY) operátorok határozzák meg
Dr. Kovács Szilveszter ©
M.I. 11. / 130.
Sugeno féle fuzzy következtetés • Az i. szabály formátuma
IF x1=A1,i AND x2=A2,i AND … AND xn=An,i THEN y i= f i(x1, x2, … , xn)
• A következmény: r
y=
r
∑ w ⋅ y ∑ w ⋅ f (x , x ,..., x ) i
i =1
i
r
∑w
=
i
i =1
i
1
n i
2
r
∑w
i
i =1 i =1 ahol w j ,i = max min µ x (x j ), µ A j ,i (x j )
j
{ (
)}
wi = min (w1,i , w2,i ,..., wn ,i ) Dr. Kovács Szilveszter ©
M.I. 11. / 131.
Pl: Nyelvi értékek
Dr. Kovács Szilveszter ©
M.I. 11. / 132.
A Sugeno féle fuzzy következtetést leíró felület
Dr. Kovács Szilveszter ©
M.I. 11. / 133.
Sugeno féle fuzzy következtetés - SISO • Combines fuzzy sets in antecedents with crisp function in output: • • •
IF x is small THEN Y=4 IF X is medium THEN Y=-0.5X+4 IF X is large THEN Y=X-1
Dr. Kovács Szilveszter ©
M.I. 11. / 134.
Sugeno féle fuzzy következtetés - MISO • • • •
IF X is small AND Y is small THEN z=-x+y+1 IF X is small AND Y is large THEN z=-y+3 IF X is large and Y is small THEN z=-x+3 IF X is large and Y is large THEN z=x+y+2
Dr. Kovács Szilveszter ©
M.I. 11. / 135.
Sugeno fuzzy következtetés rendfoka • Nulladrendű (Takagi Sugeno) – a következmény részben szereplő függvény konstans • Elsőrendű – a következmény függvény elsőfokú • Magasabb rendű: – a következmény függvény magasabb rendű
Dr. Kovács Szilveszter ©
M.I. 11. / 136.
Nulladrendű Takagi Sugeno fuzzy következtetés • The most commonly used zero-order Sugeno fuzzy model applies fuzzy rules in the following form:
IF x is A AND y is B THEN z is k where k is a constant. • In this case, the output of each fuzzy rule is constant. • All consequent membership functions are represented by singleton spikes. Dr. Kovács Szilveszter ©
M.I. 11. / 137.
Nulladrendű Takagi Sugeno fuzzy következtetés – Pl. 1
1
A3
1
B1
0.1
0.0 0
x1
0
X
Rule 1: IF x is A3 (0.0)
Y
y1
OR y is B1 (0.1)
1
1
A2 0
x1
y1
Rule 2: IF x is A2 (0.2) AND y is B2 (0.7) 1
0
A1
AND (min) Y
Z
0.2 0
k2
Z
z is k2 (0.2) 1 0.5 0
X
Rule 3: IF x is A1 (0.5)
k1
z is k1 (0.1)
THEN
0.5
x1
0
1
B2 0
0.1
THEN 0.7
0.2 X
OR (max)
THEN Dr. Kovács Szilveszter ©
k3
Z
z is k3 (0.5) M.I. 11. / 138.
Nulladrendű Takagi Sugeno fuzzy következtetés – Pl. • A következmény számítása 1
1 0.1 0
1
1
0.5
0.5
0
0.1 0
0.2 k1
Z
z is k1 (0.1)
0
k2
Z
z is k2 (0.2)
k3
Z
z is k3 (0.5)
Dr. Kovács Szilveszter ©
0.2 k1
k2
k3
∑
M.I. 11. / 139.
Z
Nulladrendű Takagi Sugeno fuzzy következtetés – Pl. • A következmény számítása súlyozott átlagként (weighted average) • Nincs szükség defuzzifikációra µ(k1) × k1 + µ(k 2) × k 2 + µ(k 3) × k 3 0.1× 20 + 0.2 × 50 + 0.5 × 80 WA = = 65 = µ(k1) + µ(k 2) + µ(k 3) 0.1 + 0.2 + 0.5
0
z1
Z
Crisp Output z1 Dr. Kovács Szilveszter ©
M.I. 11. / 140.
A fuzzy szabálybázis tervezési szempontjai Konzisztencia: • Ne legyenek olyan szabályok, melyek azonos antecedenssel, de különböző konzekvenssel rendelkeznek. Teljesség (complete): • Minden lehetséges megfigyelés esetén legyen legalább egy szabály, ami „tüzel”
Dr. Kovács Szilveszter ©
M.I. 11. / 141.
A fuzzy rendszerek alkalmazásának előnyei • Könnyű átlátni a működési elvet, a fuzzy logikai következtetési módszer matematikája igen egyszerű. • Rugalmas, a fuzzy szabályok könnyen módosíthatók, bővíthetők (egy vázlat alapján is el lehet indulni). • Jól tűri a pontatlan adatokat • Képes tetszőleges komplexitású nemlineáris függvények modellezésére. • Bármilyen függvényt képes tetszőlegesen megközelíteni (universal approximator). • Szakértői tapasztalatok alapján is kialakítható. • Közel áll a természetes nyelvhez. Dr. Kovács Szilveszter ©
M.I. 11. / 142.
A fuzzy rendszerek alkalmazásának előnyei • Gyors, valós idejű rendszereknél alkalmazható • Közel áll az emberi szemlélethez – nyelvi kifejezések. • Egyszerűbb (szabály alapú, deklaratív) rendszerleírás a többi modellhez képest • Kevesebb tudásszervezési munkára van szükség. • Részleges igazságokat és bizonytalanságot is ki lehet fejezni vele. • Hiányos és bonyolult feladatokra is alkalmazható Dr. Kovács Szilveszter ©
M.I. 11. / 143.
A fuzzy rendszerek alkalmazásának hátrányai • Nehézségekbe ütközhet a fuzzy szabálybázis és a nyelvi értékek (fuzzy partíciók) megalkotása: ha csak a be-kimeneti adatok állnak a rendelkezésre, és nem alkalmazunk semmilyen automatikus fuzzy szabálykinyerési módszert. pl. a Hitachi mérnökei több évig dolgoztak a Sendai Subway Systemet irányító 54 fuzzy szabály finomhangolásán - 1986 • A következtetés pontossága összetett probléma esetén közvetlenül az alkalmazott szabályok számától függ. • A bemenő változók számának növekedésével exponenciálisan nő a szabályok száma. A fuzzy szabályok száma = MI ahol M = a tagsági függvények (nyelvi értékek) száma I = a bemenő változók száma (Teljes (fedő) szabálybázis esetén) Dr. Kovács Szilveszter ©
M.I. 11. / 144.
Főbb alkalmazási területek • Ahol nehéz vagy lehetetlen formális rendszermodellt felállítani • pl.: – japán metróvonat vezérlése – hajó-navigációs rendszer – automata fényképezőgép – légkondicionáló berendezés vezérlése – orvosi diagnosztikai rendszer – folyamat vezérlés Dr. Kovács Szilveszter ©
M.I. 11. / 145.
Ajánlott irodalom • Jelen előadás fóliái részben az alábbi források alapján készültek: Kóczy T. László és Tikk Domonkos: Fuzzy rendszerek, Typotex Kiadó, 2000, ISBN 963-9132-55-1 J.-S. R. Jang, C.-T. Sun, E. Mizutani: Neuro-Fuzzy and Soft Computing, Prentice Hall, 1997, ISBN 0-13261066-3 Michael Negnevitsky: Artificial Intelligence: A Guide to Intelligent Systems, Addison Wesley, Pearson Education Limited, 2002, ISBN 0201-71159-1 Dr. Kovács Szilveszter ©
M.I. 11. / 146.