sztuczna inteligencja cw2 relacje rozmyte


ĆWICZENIE 2
RELACJE ROZMYTE
0. Wprowadzenie
RelacjÄ… rozmytÄ… R jest zbiór rozmyty w przestrzeni : 5!1 ×...×5!n zdefiniowany nastÄ™pujÄ…co:
R5! ×...×5!n (x1, x2,..., xn) = {((x1, x2,..., xn), µR(x1, x2,..., xn))},
1
(x1, x2,..., xn)"5!1 ×...×5!n
Przykład 2.1
Niech 5!1 = {x1, x2, x3} i 5!2 = {y1, y2, y3, y4}. Tabelka poni\sza przedstawia pewnÄ… dwuwymiarowÄ… relacjÄ™.
R y1 y2 y3 y4
0.1 0 0.2 0
x1
0.3 0 0 0.9
x2
0.4 0.7 1 1
x3
Inaczej mo\na zapisać:
R = {((x1, y1),0.1),((x1, y2),0),...,((x3, y4),1)}
Matlab: Relacje rozmyte będziemy zapisywać w postaci macierzy:
R=[0.1 0 0.2 0; 0.3 0 0 0.9; 0.4 0.7 1 1]
R =
0.1000 0 0.2000 0
0.3000 0 0 0.9000
0.4000 0.7000 1.0000 1.0000
Rzutowanie relacji. Funkcja przynale\ności
(1)
µR (x) = (" µR(x, y)
y
definiuje pierwsze rzutowanie relacji R .
Podobnie funkcja przynale\ności
(
µR2)(y) = (" µR(x, y)
x
definiuje drugie rzutowanie relacji R .
Drugie rzutowanie pierwszego rzutowania (lub vice versa) będzie nazywane rzutowaniem globalnym i
oznaczane h(R). Zatem
h(R) = (" (" µR(x, y) = (" (" µR(x, y)
x y y x
Je\eli h(R) = 1, to mówimy, \e relacja jest normalna.
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 1
Przykład 2.2
(1)
R
y1 y2 y3 y4
µR
0.1 0 0.2 0 0.2
x1
0.3 0 0 0.9 0.9
x2
0.4 0.7 1 1 1
x3
(
0.4 0.7 1 1 1
µR2)
h(R)
Pierwsze rzutowanie:
(1)
µR (x1) = (" µR(x1, y) = max[0.1,0,0.2,0]= 0.2
y
(1)
µR (x2) = (" µR(x2, y) = max[0.3,0,0,0.9]= 0.9
y
(1)
µR (x3) = (" µR(x3, y) = max[0.4,0.7,1,1]= 1
y
Podobnie liczymy drugie rzutowanie. Widać, \e relacja jest normalna.
Matlab:
[P1, P2, h]=proj(R)
P1 =
0.2000
0.9000
1.0000
P2 = 0.4000 0.7000 1.0000 1.0000
h = 1
Niech R i L bÄ™dÄ… relacjami rozmytymi z funkcjami przynale\noÅ›ci odpowiednio µR i µL .
Nośnikiem relacji rozmytej R (supp R ) jest zbiór ostry par uporządkowanych (x, y), dla których
µR(x, y) > 0 .
1 2 3 4
îÅ‚ Å‚Å‚
ïÅ‚5 śł
Matlab: Aby wyznaczyć nośnik relacji R zostanie zdefiniowana macierz X = 6 7 8 indeksująca
ïÅ‚ śł
ïÅ‚ śł
ðÅ‚9 10 11 12ûÅ‚
elementy relacji.
X=[1:4;5:8;9:12];
supp(X,R)
ans =
1
5
9
10
3
11
8
12
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 2
czyli suppR = {(x1, y1),(x1, y3),(x2, y1),(x2, y4),(x3, y1),(x3, y2),(x3, y3),(x3, y4)}.
Inkluzja relacji. Mówimy, \e relacja R zawiera się w relacji L, je\eli zachodzi:
µR(x, y)d" µL(x, y) "(x, y)"5!1 ×5!2
Przykład 2.3. Matlab:
R=[.3 .4 .2 0; .5 0 1 .9; .4 0 .1 .8]
R =
0.3000 0.4000 0.2000 0
0.5000 0 1.0000 0.9000
0.4000 0 0.1000 0.8000
L=[.4 .4 .2 0; .5 0 1 1; .5 .1 .2 .9]
L =
0.4000 0.4000 0.2000 0
0.5000 0 1.0000 1.0000
0.5000 0.1000 0.2000 0.9000
incl(R,L)
ans =
1
Suma relacji R i L jest relacją oznaczaną jako R *" L o funkcji przynale\ności danej zale\nością:
µR*"L = µR (x, y) (" µL (x, y)
Matlab: or(R,L)
Przecięcie relacji R i L jest relacją oznaczaną jako R )" L o funkcji przynale\ności danej zale\nością:
µR)"L = µR (x, y) '" µL (x, y)
Matlab: and(R,L)
Dopełnieniem relacji R jest relacja R o funkcji przynale\ności danej zale\nością:
µR = 1- µR (x, y) "(x, y)"5!1 ×5!2
Matlab: not(R)
Suma wyÅ‚Ä…czajÄ…ca relacji R i L jest relacjÄ… oznaczanÄ… R •" L danÄ… zale\noÅ›ciÄ…:
R •" L = (R )" L) *" (R )" L)
Iloczyn algebraiczny relacji R i L jest relacjÄ… oznaczanÄ… jako R Å" L o funkcji przynale\noÅ›ci danej
zale\nością:
µRÅ"L = µR (x, y) Å" µL (x, y)
Matlab: aprod(R,L)
Suma algebraiczna relacji R i L jest relacją oznaczaną jako R + L o funkcji przynale\ności danej
zale\nością:
µR+L = µR (x, y) + µL (x, y) - µR (x, y) Å" µL (x, y)
Matlab: asum(R,L)
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 3
Relacja zwykła najbli\sza relacji rozmytej R jest relacja R o funkcji przynale\ności danej zale\nością:
0 dla µR (x, y) < 0.5
Å„Å‚
ôÅ‚
µR (x, y) = dla µR (x, y) > 0.5
òÅ‚1
ôÅ‚0 lub 1 dla µR (x, y) = 0.5
ół
ą-obcięcie relacji rozmytej jest zwykłą relacją daną zale\nością:
Ä…
Ä…
Ä…
RÄ… = {(x, y)µR(x, y)e" Ä…}
Niech R1 ‚" X ×Y i R2 ‚" Y × Z .
Zło\enie typu max  min relacji R1 i R2 jest relacją oznaczaną jako R2 żR1 , której wartości funkcji
przynale\ności określa się następująco:
µR żR2 = ("[µR (x, y) '" µR ( y, z)],
1 1 2
y
gdzie x " X , y "Y , z " Z .
Przykład 2.4.
R1 y1 y2 y3
0.1 0.2 0
x1
0.3 0.5 0
x2
R2 z1 z2
0.9 0
y1
0.2 1
y2
0.8 0
y3
Wyznaczmy element (x1, z1)
min(µR (x1y1), µR (y1, z1))= min(0.1,0.9) = 0.1
1 2
min(µR (x1y2), µR (y2, z1))= min(0.2,0.2) = 0.2
1 2
min(µR (x1y3), µR (y3, z1))= min(0,0.8) = 0
1 2
max[min(µR (x1yi ), µR (yi , z1))]= max(0.1,0.2,0) = 0.2
1 2
yi
Ostatecznie:
R2 żR1 z1 z2
0.2 0.2
x1
0.3 0.5
x2
Matlab:
R1=[.1 .2 0; .3 .5 0];
R2=[.9 0; .2 1; .8 0];
R=supmin(R1,R2)
R =
0.2000 0.2000
0.3000 0.5000
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 4
Zło\enie typu max  iloczyn relacji R1 i R2 dane jest zale\nością:
µR żR2 = ("[µR (x, y) Å" µR ( y, z)]
,
1 1 2
y
gdzie x " X , y "Y , z " Z .
Matlab: R=supprod(R1,R2)
Niech X " X i Y " Y . Rozwa\my relację rozmytą R istniejącą pomiędzy X i Y . Mo\na zdefiniować
indukcję zbioru rozmytego A' poprzez relację R następująco:
je\eli X = A' , to Y = B' poprzez R .
Lub inaczej:
A' * B'
R
gdzie symbol * mo\na interpretować jako indukcjÄ™ (implikacjÄ™). Je\eli µR(x, y) jest funkcjÄ… przynale\noÅ›ci
relacji R i µ (x, y) jest funkcjÄ… przynale\noÅ›ci dla zbioru A' , to funkcja przynale\noÅ›ci µB'(y) dla zbioru B'
A'
dana jest zale\nością:
µB'(y) = (" [µA'(x)'" µR(x, y)]
x"X
Przykład 2.5.
X = {x1, x2, x3}
A'= {(x1,0.3),(x2,0.7),(x3,1)}
Y = {y1, y2, y3, y4}
Wówczas:
A'
R y1 y2 y3 y4
0.1 0 0.2 0 0.3
x1
0.3 0 0 0.9 0.7
x2
0.4 0.7 1 1 1
x3
0.4 0.7 1 1
B'
Przeprowadzmy obliczenia dla kolumny y1
A'
y1
0.3 0.1 0.1
0.7 '" 0.3 = 0.3
1 0.4 0.4
Stosując następnie operację maksimum otrzymujemy:
0.1(" 0.3 (" 0.4 = 0.4
Zatem µB'(y1) = 0.4
Matlab:
R=[.1 0 .2 0; .3 0 0 .9; .4 .7 1 1];
Ap=[.3 .7 1];
Bp=supt(Ap,R)
Bp =
0.4000 0.7000 1.0000 1.0000
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 5
t-norma jest uogólnieniem klasycznej koniunkcji, natomiast s-norma (konorma) jest uogólnieniem alternatywy.
Przykłady najczęściej stosowanych t-norm i s-norm przedstawiono w poni\szej tabeli:
Tabela 1.
t - norma s- norma
a '" b dla a (" b = 1 a (" b dla a '" b = 0
Å„Å‚ Å„Å‚
a Tob = a b =
òÅ‚0 dla a (" b `" 1 òÅ‚1 dla a '" b `" 0
4%o
ół ół
a T1 b = 0 (" (a + b -1) a b = 1'" (a + b)
4%1
a T2 b = ab a b = a + b - ab
4%2
a Tminb = a '" b a b = a (" b
4%max
Matlab:
C= tnorm(A,B,'t0');
D= snorm(A,B,'s0');
plot(X,A,'b',X,B,'g',X,C,'r',X,D,'y')
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 5 10 15 20 25 30 35 40
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 6
CEL ĆWICZENIA
Celem ćwiczenia jest zapoznanie się z relacjami i implikacjami rozmytymi oraz systemem wnioskowania
rozmytego przy pomocy Fuzzy Logic Toolbox a p. Krzysztofa Wiktorowicza.
SZCZEGÓAOWY PRZEBIEG ĆWICZENIA
I. Pojęcie relacji rozmytej: definicja, rzutowanie.
II. Działania logiczne na relacjach rozmytych. Dane są relacje:
Gr. 1
R L
y1 y2 y3 y4 y1 y2 y3 y4
0,3 0,2 1 0 0,3 0 0,7 0
x1 x1
0,8 1 0 0,2 0,1 0,8 1 1
x2 x2
0,5 0 0,4 0 0,6 0,9 0,3 0,2
x3 x3
Gr. 2
R L
y1 y2 y3 y4 y1 y2 y3 y4
0,3 0,2 1 0 0,3 0 0,7 0
x1 x1
0,8 1 0 0,5 0,1 0,8 1 1
x2 x2
0,5 0 0,4 0,2 0,6 0,9 0,3 0
x3 x3
Gr. 3
R L
y1 y2 y3 y4 y1 y2 y3 y4
0,3 0 1 0 0,3 0,2 0,7 0
x1 x1
0,8 1 0 0,2 0,1 0,8 1 1
x2 x2
0,5 0 0,4 0 0,6 0,9 0,3 0,2
x3 x3
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 7
Gr. 4
R L
y1 y2 y3 y4 y1 y2 y3 y4
0,3 0,2 1 0 0,3 0 0,7 0
x1 x1
0,8 1 0 0,2 0,1 0,8 0 0
x2 x2
0,5 0 0,4 0 0,6 0,9 0,3 0,2
x3 x3
Gr. 5
R L
y1 y2 y3 y4 y1 y2 y3 y4
0,3 0,2 0,6 0 0,3 0 0,7 0
x1 x1
0,8 1 0 0,2 0,1 0,8 1 1
x2 x2
0,5 0 0,4 0 0,6 0,9 0,5 0,2
x3 x3
Wyznaczyć ich: nośnik relacji R (supp), inkluzję (incl), sumę (or), przecięcie (and), dopełnienie
relacji R (not), sumę wyłączającą (exor). W sprawozdaniu podać odpowiednie definicje.
III. Działania algebraiczne na relacjach rozmytych
1. Dla relacji z p. II wyznaczy sumÄ™ (asum) i iloczyn algebraiczny (aprod) relacji.
2. Dla relacji p. II wyznaczy relację zwykłą najbli\szą relacji rozmytej (nset), oraz ą -obcięcie na
poziomie 0.3 i 0.7.
IV. Składanie relacji. Wyznaczyć zło\enie relacji typu max-min (supmin) i max-iloczyn (supprod) dla
następujących relacji:
Gr. 1
R1 y1 y2 y3 y4 y5 R2 z1 z2 z3 z4
0,1 0,2 0 1 0,7 0,9 0 0,3 0,4
x1 y1
0,3 0,5 0 0,2 0,1 0,2 1 0,8 0
x2 y2
0,8 0 1 0,4 0,3 0,8 0 0,7 1
x3 y3
0,4 0,2 0,3 0
y4
0 1 0 0,8
y5
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 8
Gr. 2
R1 y1 y2 y3 y4 y5 R2 z1 z2 z3 z4
0,1 0,2 0 1 0,7 0,9 0 0,3 0,4
x1 y1
0,3 0,7 0 0,2 0,1 0,2 1 0,8 0
x2 y2
0,8 0 1 0,4 0,3 0,2 0 0,7 1
x3 y3
0,4 0,2 0,3 0
y4
0 1 0 0,3
y5
Gr. 3
R1 y1 y2 y3 y4 y5 R2 z1 z2 z3 z4
0,1 0,2 0 1 0,7 0,9 0 0,3 0,7
x1 y1
0,9 0,5 0 0,2 0,1 0,2 1 0,8 0
x2 y2
0,8 0 1 0,4 0,3 0,8 0,1 0,7 1
x3 y3
0,4 0,2 0,3 0
y4
0 1 0 0,8
y5
Gr. 4
R1 y1 y2 y3 y4 y5 R2 z1 z2 z3 z4
0,1 0,2 0 1 0,7 0,9 0 0,3 0,4
x1 y1
0,8 0,5 0 0,2 0,1 0,2 0,1 0,8 0
x2 y2
0,3 0 1 0,4 0,3 0,3 0 0,7 1
x3 y3
0,4 0,2 0,3 0
y4
0 1 0 0,8
y5
Gr. 5
R1 y1 y2 y3 y4 y5 R2 z1 z2 z3 z4
0,1 0,2 0 1 0,7 0,9 0.3 0,3 0,4
x1 y1
0,3 0,5 0 0,8 0,1 0,2 1 0,8 0
x2 y2
0,8 0 1 0,4 0,3 0,8 0 0,7 1
x3 y3
0,4 0,2 0,3 0
y4
0 0,1 0 0,8
y5
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 9
V. Indukcja zbioru rozmytego. Wyznaczyć przy pomocy odpowiednich funkcji MATLAB a zbiór B
wnioskowany ze zbioru:
Gr. 1. A =[0,3 0,7 0,1]
Gr. 2. A =[0,2 0,1 0,3]
Gr. 3. A =[0,1 0,1 0,3]
Gr. 4. A =[0,2 0,1 0,2]
Gr. 5. A =[0,3 0,1 0,1]
poprzez zło\enie relacji R1oR2 z p. IV. Przyjąć, \e wnioskowanie jest typu max-min (supt).
VI. Normy trójkątne i konormy. Dane są zbiory AA i BB zadane w sposób określony w ćw. 1. Sporządzić
wykresy t-norm T0 - Tmin (tnorm) i s-norm Ä„"0 - Ä„"min (snorm) zdefiniowanych w tab. 1.
SPRAWOZDANIE Z ĆWICZENIA
Opisać szczegółowo poszczególne punkty ćwiczenia wraz z krótkim uzasadnieniem teoretycznym.
PRz, KIiA, Sztuczna inteligencja, Laboratorium, Ćw2 Relacje rozmyte, Roman Zajdel 10


Wyszukiwarka