Wiedza niepewna i wnioskowanie

advertisement
Wiedza niepewna
i wnioskowanie
Dariusz Banasiak
Katedra Informatyki Technicznej
Wydział Elektroniki
Wiedza niepewna
Wnioskowanie oparte na logice predykatów zakłada, że
wiedza ma charakter dwuwartościowy: fakty zawarte w
bazie wiedzy oraz uzyskane na ich podstawie konkluzje
mogą być albo prawdziwe, albo fałszywe.
W życiu codziennym występują jednak pojęcia i zjawiska,
które mają charakter wieloznaczny i nieprecyzyjny.
Opisanie ich za pomocą klasycznej teorii zbiorów oraz
logiki dwuwartościowej jest niemożliwe.
W przypadku przetwarzania wiedzy niepewnej lub niepełnej
stosowana jest teoria zbiorów rozmytych i oparte na niej
metody wnioskowania np. wnioskowanie przybliżone,
logika rozmyta itd.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
2
Wiedza niepewna
Rodzaje „niedoskonałości” wiedzy:
niepewność – nie można jednoznacznie stwierdzić, czy
dane fakty są prawdziwe, czy fałszywe
niepełność – brak wystarczającej wiedzy, aby stwierdzić
prawdziwość pewnych faktów (nie oznacza to jednak, że
są one fałszywe)
niedokładność – nie można precyzyjnie odróżnić (dla
danej dziedziny wiedzy) obiektów należących do pewnej
relacji od obiektów do niej nienależących
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
3
Wiedza niepewna
Podstawowe pojęcia teorii zbiorów rozmytych
Za pomocą zbiorów rozmytych możemy formalnie określić
pojęcia nieprecyzyjne i wieloznaczne np. „średni wzrost”,
„wysoka temperatura”, „duże miasto”.
Zbiorem rozmytym A w pewnej niepustej przestrzeni X
(A ⊆ X) nazywamy zbiór par:
A = {(x, µA(x); x ∈ X},
w którym µA : X → [0, 1] jest funkcją przynależności zbioru
rozmytego A.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
4
Wiedza niepewna
Funkcja przynależności każdemu elementowi x ∈ X
przypisuje jego stopień przynależności do zbioru
rozmytego A. Możemy rozróżnić trzy przypadki:
µA(x) = 1 – pełna przynależność elementu x do zbioru A
(x ∈ A),
µA(x) = 0 – brak przynależność elementu x do zbioru A
(x ∉ A),
0<µA(x)<1 – częściowa przynależność elementu x do
zbioru A
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
5
Wiedza niepewna
Popularną notacją zbiorów rozmytych jest zapisywanie par
(stopień przynależności, element zbioru) w postaci
ułamków z kreską poziomą, ukośną lub pionową.
Jeżeli X jest przestrzenią o skończonej liczbie elementów
X = {x1, x2, ... , xn}, to zbiór rozmyty A ⊆ X zapiszemy jako:
n
A = µA(x1)|x1 + µA(x2)|x2 + ... + µA(xn)|xn = ∑ µA(xi)|xi
i=1
Elementami xi ∈ X mogą być liczby, osoby, przedmioty lub
inne pojęcia.
Jeżeli X jest przestrzenią o nieskończonej liczbie
elementów, to zbiór rozmyty A ⊆ X zapisujemy jako:
A = ∫ X µA(x)|x = ∑ µA(x)|x
X
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
6
Wiedza niepewna
Przykład 1
Niech X jest zbiorem liczb naturalnych. Pojęcie zbioru liczb
naturalnych „bliskich liczby 7” opisuje definicja zbioru A:
A = 0,2|4 + 0,5|5 + 0,8|6 + 1|7 + 0,8|8 + 0,5|9 + 0,2|10
Przykład 2
Niech X jest zbiorem liczb rzeczywistych. Pojęcie zbioru
liczb rzeczywistych „bliskich liczby 7” opisuje definicja
zbioru B:
B = ∫ X (1+(x-7)2)-1 | x
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
7
Wiedza niepewna
1.0
1.0
0.5
0.5
0.0
0.0
4
5
6
7
8
9
10
x
Liczba naturalna „około 7”
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
5
7
5
x
Liczba rzeczywista „około 7”
8
Wiedza niepewna
Klasy funkcji przynależności
W praktycznych zastosowaniach teorii zbiorów rozmytych
często korzysta się z kilku rodzajów funkcji przynależności
w dziedzinie liczb rzeczywistych R.
Podstawowe klasy funkcji przynależności:
funkcja klasy Γ (gamma)
1.0
Γa,b =
0.5
0.0
a
b
0
.
x
0
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
0
dla x≤a
(x-a)/(b-a) dla a<x≤b
1
dla x>b
9
Wiedza niepewna
funkcja klasy L
1.0
0.5
La,b =
1
dla x≤a
(b-x)/(b-a) dla a<x≤b
0
dla x>b
0.0
a
b
x
funkcja klasy Λ (lambda)
1.0
0
dla x≤a ∨ x≥c
Λa,b,c= (x-a)/(b-a) dla a<x≤b
(c-x)/(c-b) dla b<x<c
0.5
0.0
a
b
c
x
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
10
Wiedza niepewna
funkcja klasy Π (Pi)
1.0
0
(x-a)/(b-a)
1
(d-x)/(d-c)
Πa,b,c,d =
0.5
0.0
a
b
c
d
dla x≤a ∨ x≥d
dla a<x≤b
dla b<x ≤c
dla c<x<d
x
funkcja typu s
1.0
sa,b =
0.5
0.0
a (a+b)/2 b
0
2*((x-a)/(b-a))2
1-2*((x-b)/(b-a))2
1
dla x≤a
dla a<x≤(a+b)/2
dla (a+b)/2<x<b
dla x≥b
x
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
11
Wiedza niepewna
funkcja klasy π
1.0
b
0.5
πb,c =
sc-b,c(x)
1- sc,c+b(x)
dla x<c
dla x≥c
0.0
c-b
c
c+b
x
Przedstawione definicje klas funkcji przynależności wykorzystują
bardzo proste kształty funkcji: składają się z fragmentów funkcji liniowej
oraz fragmentów funkcji kwadratowej.
Wiele zjawisk rzeczywistych można lepiej scharakteryzować przy
użyciu innych krzywych np. wielomianów wyższych stopni, funkcji
wymiernych lub wykładniczych.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
12
Wiedza niepewna
Przedstawiony powyżej zestaw funkcji przynależności jest
niespójny. Klasa funkcji Γ jest przeciwieństwem klasy funkcji L:
La,b(x) = 1 - Γa,b(x)
Γa,b(x) = 1 - La,b(x)
Zestaw funkcji przynależności można więc rozszerzyć przez
zdefiniowanie funkcji przeciwnych (w powyższym sensie) dla
pozostałych funkcji np. dla funkcji Λ otrzymamy funkcję V:
1.0
Va,b,c= 1 - Λa,b,c=
0.5
1
dla x≤a ∨ x≥c
(b-x)/(b-a) dla a<x≤b
(x-b)/(c-b) dla b<x<c
0.0
a
b
c
x
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
13
Wiedza niepewna
W literaturze można spotkać wiele innych przykładów
definiowania funkcji przynależności (np. przez łączenie
funkcji monotonicznych należących do różnych klas).
Powyższy zestaw należy więc traktować jako otwarty.
W zastosowaniach praktycznych występują dwa przypadki
definiowania zbioru rozmytego:
przez eksperta, który wybiera najlepszą funkcję
przynależności dla danego problemu
w wyniku aproksymacji zbioru wartości liczbowych
(użytkownik decyduje tylko o wyborze rodzaju
aproksymacji)
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
14
Wiedza niepewna
Przykład 1
Na obwodnicy miejskiej obowiązuje ograniczenie prędkości
do 70 km/h. Należy za pomocą zbiorów rozmytych określić
znaczenie następujących terminów: „mała prędkość”,
„średnia prędkość” oraz „duża prędkość” (terminy te
dotyczą prędkości samochodów jadących obwodnicą).
1.0
mała prędkość
średnia prędkość
duża prędkość
0.5
0.0
20
40
60
80
100 V [km/h]
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
15
Wiedza niepewna
Przykład 2
Rozpatrzmy system ułatwiający wyszukiwanie kandydatów
w biurze matrymonialnym. System uwzględnia następujące
dane: wiek (w latach), wzrost (w cm), zarobki (roczne brutto
w tysiącach) i inne. W systemie zdefiniowano następujące
zbiory rozmyte:
wiek:
„młody” – Π18,20,30,40(x) „stary” – Γ40,60(x)
wzrost: „niski” – L160,180(x)
„wysoki” – Γ170,190(x)
zarobki: „niskie” – z15,40(x)
„wysokie” – s30,60(x)
Uwaga! Funkcja za,b(x) = 1 – sa,b(x)
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
16
Wiedza niepewna
Własności zbiorów rozmytych
Nośnikiem zbioru rozmytego A (supp A) nazywamy zbiór
elementów przestrzeni X, dla których µA(x)>0:
supp A = {x ∈ X: µA(x)>0}
Wysokością zbioru rozmytego (h(A)) nazywamy liczbę
będącą supremum (kresem górnym) wartości funkcji
przynależności tego zbioru:
h(A) = sup µA(x), dla x ∈ X
Zbiór rozmyty A nazywamy normalnym, gdy h(A) = 1.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
17
Wiedza niepewna
α-przekrojem zbioru rozmytego A (Aα) nazywamy zbiór
ostry elementów przestrzeni X, dla których µA(x) ≥ α:
Aα = {x ∈ X: µA(x) ≥ α}, gdzie α∈[0,1].
Przykład
Niech A = 0,2|1 + 0,4|2 + 0,7|4 + 0,5|5 (dla X={1,2,3,4,5,6})
supp A = {1,2,4,5}
h(A) = 0,7
A0,5 = {4,5}
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
18
Wiedza niepewna
Operacje na zbiorach rozmytych
Iloczynem (przecięciem) zbiorów rozmytych A, B ⊆ X jest
zbiór rozmyty A∩B o funkcji przynależności:
µA∩B(x) = min(µA(x), µB(x)), dla każdego x∈X.
Sumą zbiorów rozmytych A, B ⊆ X jest zbiór rozmyty A∪B
o funkcji przynależności:
µA∪B(x) = max(µA(x), µB(x)), dla każdego x∈X.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
19
Wiedza niepewna
Dopełnieniem zbioru rozmytego A ⊆ X jest zbiór rozmyty
¬A o funkcji przynależności:
µ¬A(x) = 1 - µA(x), dla każdego x∈X.
1.0
1.0
1.0
0.0
0.0
0.0
x
A∩B
x
A∪B
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
x
¬A
20
Wiedza niepewna
Przykład
Niech X = {1,2,3,4,5,6,7} oraz:
A = 0,9|3 + 1|4 + 0,6|6
B = 0,7|3 + 1|5 + 0,4|6
Dla zbiorów rozmytych A i B otrzymujemy:
A∩B = 0,7|3 + 0,4|6
A∪B = 0,9|3 +1|4 + 1|5 + 0,6|6
¬A = 1|1 + 1|2 +0,1|3 + 1|5 + 0,4|6 + 1|7
¬B = 1|1 + 1|2 +0,3|3 + 1|4 + 0,6|6 + 1|7
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
21
Wiedza niepewna
W literaturze można spotkać próby znalezienia „lepszych”
operacji sumy i iloczynu zbiorów rozmytych. Funkcje te
powinny spełniać jednak pewne warunki.
W tym celu wprowadzono pojęcie S-normy (dla sumy) oraz
T-normy (dla iloczynu). S-normy i T-normy są funkcjami,
które powinny być łączne, przemienne, monotoniczne oraz
muszą spełniać odpowiednie warunki brzegowe.
T-normy i S-normy można zdefiniować za pomocą
operatorów algebraicznych:
iloczyn: µA∩B(x) = µA(x)*µB(x)
suma:
µA∪B(x) = µA(x)+µB(x) - µA(x)*µB(x)
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
22
Wiedza niepewna
Iloczyn kartezjański zbiorów rozmytych A i B (A x B),
przy czym A ⊆ X i B ⊆ Y, definiujemy jako:
µAxB(x,y) = min(µA(x), µB(y)), dla x∈X, y∈Y.
lub
µAxB(x,y) = µA(x) * µB(y), dla x∈X, y∈Y.
Przykład
X = {2,4},
Y = {2,4,6}
A = 0,5|2 + 0,9|4
B = 0,3|2 + 0,7|4 + 0,1|6
A x B = 0,3|(2,2) + 0,5|(2,4) + 0,1|(2,6) + 0,3|(4,2) +
0,7|(4,4) + 0,1(4,6)
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
23
Wiedza niepewna
Koncentracją zbioru rozmytego A (gdzie A ⊆ X) nazywamy
zbiór rozmyty CON(A) o wartościach funkcji przynależności
podniesionych do kwadratu:
µCON(A)(x) = [µA(x)]2, dla x∈X.
Rozcieńczeniem (rozrzedzeniem) zbioru rozmytego A
(gdzie A ⊆ X) nazywamy zbiór rozmyty DIL(A) o
wartościach funkcji przynależności będących pierwiastkami
kwadratowymi wartości funkcji przynależności zbioru A:
µDIL(A)(x) = [µA(x)]0,5, dla x∈X.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
24
Wiedza niepewna
Relacje rozmyte
Relacje rozmyte pozwalają sformalizować nieprecyzyjne
sformułowania typu „x relacja y” np. „x jest prawie równe y”.
Relacją rozmytą R określoną na niepustych, ostrych
zbiorach X i Y nazywamy zbiór rozmyty określony na
iloczynie kartezjańskim X x Y:
R=∫
XxY
µR(x,y)|(x,y)
Dla zbiorów skończonych:
X = {x1, x2, ... , xn} i Y = {y1, y2, ... , ym}
relację rozmytą można wyrazić tzw. macierzą rozmytą.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
25
Wiedza niepewna
Przykład
Niech X = {3,4,5} oraz Y = {4,5,6}. Określić relację rozmytą
odpowiadającą stwierdzeniu: „y jest mniej więcej równe x”.
y1=4
y2=5
y3=6
x1=3
0,8
0,6
0,4
x2=4
1,0
0,8
0,6
x3=5
0,8
1,0
0,8
µR(x,y) =
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
1
0,8
0,6
0,4
jeżeli x=y
jeżeli |x-y| = 1
jeżeli |x-y| = 2
jeżeli |x-y| = 3
26
Wiedza niepewna
Przykład
Zdefiniować relacje między dwoma skończonymi zbiorami
osób: instruktorów X = {a,b,c} oraz kursantów Y = {d,e,f,g}.
Każdą osobę opisują dwa argumenty: wiek (w latach) i
wzrost (w cm):
a
b
c
d
e
f
g
wiek
35
45
50
15
20
25
30
wzrost
178
182
168
188
180
182
198
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
27
Wiedza niepewna
Na zbiorach X i Y określić relacje:
R – „instruktor dużo starszy od kursanta”
S – „instruktor podobnego wzrostu co kursant”
R
d15
e20
f25
g30
S
a35
0,9
0,7
0,5
0,4
a178 0,3
0,8
0,8
0,2
b45
1,0
0,8
0,6
0,5
b182 0,3
0,8
1,0
0,2
c50
1,0
0,9
0,8
0,6
c168
0
0
0
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
d188 e180 f182 g198
0
28
Wiedza niepewna
Liczby rozmyte
W teorii zbiorów rozmytych ważną grupę stanowią zbiory
zdefiniowane w przestrzeni liczb rzeczywistych np. zbiór
liczb „bliskich wartości 7”.
Zbiór rozmyty A określony w zbiorze liczb rzeczywistych
(A ⊆ R) nazywamy liczbą rozmytą jeżeli spełnione są
następujące warunki:
zbiór A jest normalny (supx∈R µA(x)=1),
zbiór A jest wypukły (µA[λx1+(1- λ)x2]≥min{µA(x1),µA(x2)}, λ∈[0,1])
funkcja µA(x) jest funkcją przedziałami ciągłą.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
29
Wiedza niepewna
Przykłady liczb rozmytych:
1
liczba ujemna
µA(x)
liczba dodatnia
x
Liczba rozmyta A⊆R jest dodatnia, jeżeli µA(x)=0 dla x<0.
Liczba rozmyta A⊆R jest ujemna, jeżeli µA(x)=0 dla x>0.
Dla liczb rozmytych można zdefiniować podstawowe
operacje arytmetyczne.
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
30
Wiedza niepewna
Zasada rozszerzania
Zasada rozszerzania pozwala zdefiniować różne operacje
matematyczne dla zbiorów rozmytych.
Dane jest pewne nierozmyte odwzorowanie f przestrzeni X
w przestrzeń Y:
f: X→Y
Niech A będzie danym zbiorem rozmytym (A⊆X):
A = µA(x1)|x1 + µA(x2)|x2 + ... + µA(xn)|xn
Zbiór rozmyty B (B⊆Y) indukowany przez odwzorowanie f
na podstawie A ma postać:
B = f(A) = µA(x1)|f(x1) + µA(x2)|f(x2) + ... + µA(xn)|f(xn)
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
31
Wiedza niepewna
Zasadę rozszerzania można uogólnić na przypadek, gdy
X jest iloczynem kartezjańskim zbiorów nierozmytych, czyli:
f : X1 × X2 × ... × Xn → Y
W przypadku operacji arytmetycznych na liczbach
rozmytych odwzorowanie f ma postać:
y = f (x1,x2) =
x1+x2
x1 -x2
x1 *x2
x1 / x2
dla dodawania liczb rozmytych A1 i A2
dla odejmowania liczb rozmytych A1 i A2
dla mnożenia liczb rozmytych A1 i A2
dla dzielenia liczb rozmytych A1 i A2
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
32
Wiedza niepewna
Dodawanie liczb rozmytych A1 i A2 oznaczamy jako:
A1 ⊕ A2 = B ,
przy czym funkcja przynależności jest określona wzorem:
µB(y) = sup min {µA1(x1), µA2(x2)}
x1,x2
y=x1+x2
Przykład
Dodać dwie liczby rozmyte A1 i A2:
A1 = 0,7|2 + 1|3 + 0,6|4
A2 = 0,8|3 + 1|4 + 0,5|6
A1⊕A2= min(0,7;0,8)|5 + max{min(0,7;1),min(1;0,8)}|6 +
max{min(1;1),min(0,6;0,8)}|7+max{min(0,7;0,5),min(0,6;1)}|8 +
min(1;0,5)|9 + min(0,6;0,5)}|10 =
0,7|5 +0,8|6 +1|7 +0,6|8 +0,5|9 +0,5|10
Autor: Dariusz Banasiak – Katedra Informatyki Technicznej
33
Download