WYKŁAD 10 Rozmyta reprezentacja danych (modelowanie i wnioskowanie rozmyte) Motywacje:! przezwyciężenie wad tradycyjnych algorytmów komputerowych, które zawodzą zwłaszcza w sytuacjach, w których człowiek jest w stanie rozwiązać postawiony problem bez większych trudności,! oczywistym pomysłem jest próba opisywania rzeczywistości w sposób naśladujący rozumowanie człowieka! na początku uwaga została skupiona na sieciach neuronowych bliskie zasadom przetwarzania informacji w ludzkim mózgu! co jest przyczyną sukcesów człowieka (względem maszyny)? godząc się na trochę niedokładności modeli osiągamy odporność Celem modelu jest uchwycenie funkcjonowania modelowanego systemu. Model jest relacją pomiędzy zbiorem obiektów: 1. opisujących własności systemu (zmienne, parametry) 2. opisujących relacje zachodzące między nimi (spójniki, funktory) Dwa rodzaje modeli:! matematyczne (analityczne) wykorzystują reprezentację liczbową, operacje algebraiczne: dodawanie, mnożenie, różniczkowanie, itd! logiczne reprezentacja binarna lub wielowartościowa prawda fałsz, operacje (spójniki) typu logicznego: i, lub, jeżeli-to, dla-każdego, itd Rozmyta reprezentacja zmiennych i parametrów złagodzenie żądania precyzji modelu. W realnym świecie wiele zjawisk opisywanych jest w sposób bardzo nieprecyzyjny: prawie identyczny trochę większy znacznie odmienny niska temperatura zadawalający poziom wiedzy 1
Konieczne jest odejście od binarnego widzenia świata. Dwuwartościowa logika Arystotelesa oraz teoria klasycznie pojmowanych zbiorów nie są w stanie rozwiązać wielu sprzeczności i niejednoznaczności, jakie występują przy przetwarzaniu rzeczywistych danych paradoks golibrody LOGIKA ROZMYTA (ang. fuzzy logic) - wielowartościowa logika wraz z opartym na niej systemem wnioskowania. Twórcy:! początki: polski matematyk Łukasiewicz! 1964-..., Lotfi Zadeh,! później: E.Mamdani, M. Sugeno, T.Takagi, R. Yager Przykładowe zastosowania:! wszędzie tam, gdzie trudno jest utworzyć matematyczny model ale daje się opisać sytuację w sposób jakościowy,! systemem ogniskowania niektórych kamer wizyjnych (Cannon) podejmujący decyzję co jest fotografowanym obiektem,! helikopter sterowany głosem, rozumiejący polecenia postaci: leć trochę wyżej, skręć mocno w prawo,! sprzęt elektroniczny powszechnego użytku: np. AGD lodówki, pralki, mikrofalówki. Najważniejsze paradygmaty:! pojęcie zbioru rozmytego, algebra zbiorów rozmytych! powiązanie zbiorów rozmytych i miar prawdopodobieństwa,! zmienne lingwistyczne oraz wnioskowanie przybliżone,! inne: rozmyte programowanie dynamiczne, rozmyte podejmowanie decyzji, rozmyta interpretacja języka, rozmyta algebra, rozmyte procesy stochastyczne 2
POJĘCIE ZBIORU ROZMYTEGO Klasyczna teoria zbiorów: Każdy element należy albo do zbioru, albo do jego dopełnienia. Nie może należeć do obu naraz (prawo niesprzeczności, prawo wyłączonego środka) W teorii zbiorów rozmytych przyjmuje, że element może należeć częściowo do zbioru jak i do jego dopełnienia.. gdzie f(x) dowolna funkcja o wartościach z przedziału [0,1]. X - uniwersum, zbiór uniwersalny, przestrzeń elementów; x X A - zbiór rozmyty, koncepcja, zmienna lingwistyczna, µ A (x) - funkcja charakterystyczna (funkcja przynależności) określa stopień, w jakim element x należy do zbioru A. Sposoby definowania zbiorów rozmytych: o analityczna postać funkcji przynależności (np. krzywa Gaussa, trójkątna, trapezoidalna) o wyliczenie par (wartość, stopień przynależności) Funkcja przynależności to nie jest prawdopodobieństwo: o np. łysy w 80% to nie to samo, co łysy 1 na 5 razy. o prawdopodobieństwo jest unormowane do jedynki, a funkcja przynależności nie. Teoria zbiorów rozmytych jest uogólnieniem klasycznej teorii zbiorów. 3
WŁASNOŚCI ZBIORÓW ROZMYTYCH Nośnikiem zbioru rozmytego A nazywamy zbiór wartości x, dla których funkcja przynależności jest nieujemna: Support (baza) zbioru rozmytego A: supp(a) = { x X : µ A (x)>0 } Core (jądro) zbioru rozmytego A: core(a) = { x X : µ A (x)=1 } α-cut (α-cięcie) zbioru rozmytego A: A α = { x X : µ A (x)>a } singleton zbiór rozmyty, który stanowi tylko jeden punkt x z wartością µ A (x)>0 Dopełnienie zbioru A, to zbiór rozmyty A o funkcji przynależności: μ A () x = 1 - () x μ A 4
PODSTAWOWE OPERACJE NA ZBIORACH ROZMYTYCH Suma logiczna (ang. union) zbiorów A oraz B, o funkcjach przynależności µ A (x) µ B (x), to zbiór rozmyty C o funkcji przynależności stanowiącej maksimum: µ C (x) = µ A B (x) = max( µ A (x), µ B (x) ) Operację max można zastąpić S-normą S(a,b), niemalejącą dla obu argumentów, przemienną, łączną i taką że: S(a,0)=a, S(a,1)=1. Iloczyn logiczny (ang. intersection), to zbiór rozmyty C o funkcji przynależności równej minimum: µ C (x) = µ A B (x) = min( µ A (x), µ B (x) ) Operację min można zastąpić dowolną T-normą T(a,b), nierosnącą dla obu argumentów, przemienną, łączną i taką że: T(a,0)=0, T(a,1)=a 5
ZMIENNE LINGWISTYCZNE Zbiory rozmyte opisują najczęściej pojęcia lingwistyczne używane często w życiu codziennym jak np. chłodno, gorąco Możemy utworzyć zmienną lingwistyczną o nazwie temperatura, rozbudowując powyższy przykład następująco: x - temperatura - nazwa zmiennej lingwistycznej, X - przestrzeń temperatur, czyli przedział [-20, +40 ], - {Mróz, Zimno, Chłodno, Ciepło, Gorąco } - wartości zmiennej lingwistycznej, przy czym: - dla temperatur [-20, 0] zmienna lingwistyczna = mróz, - dla temperatur [-5, 10] zmienna lingwistyczna = zimno, - dla temperatur [5, 20] zmienna lingwistyczna = chłodno, - dla temperatur [15, 30] zmienna lingwistyczna = ciepło, - dla temperatur [25, 40] zmienna lingwistyczna = gorąco przykładowe wyrażenie: (temperatura=zimno or temperatura=ciepło) and not (temperatura=chłodno) 6
Przykład wyznaczania wysokości napiwku w restauracji Dane wejściowe: Jakość obsługi: o poor, o good, o excellent Jakość posiłku: o rancid, o good, o delicious Dane wyjściowe: Wysokość napiwku: o cheap o average o generous REGUŁY: IF service is poor or food is rancid THEN tip is cheap IF service is good THEN tip is average IF service is excellent or food is delicious THEN tip is generous 7
REGUŁOWY SYSTEM WNIOSKOWANIA ROZMYTEGO Praca systemu decyzyjnego opartego na logice rozmytej zależy od definicji reguł rozmytych, które są zawarte w bazie reguł. Reguły te mają postać IF...AND...THEN, np.: IF (a is A1) AND (b is B1) THEN (c is C1) IF (a is A2) AND (b is NOT B2) THEN (c is C2) gdzie a, b, c są tzw. zmiennymi lingwistycznymi, natomiast A1,..., C2 są podzbiorami rozmytymi odpowiadającymi poszczególnym wartościom tych zmiennych Moduł wnioskowania oczekuje na wejściu ciągu liczb rzeczywistych i zwraca również ciąg liczb rzeczywistych, określanych w nomenklaturze związanej z logiką rozmytą jako crisp values. Przetwarzanie wstępne (ang. preprocessing) polega na przekształceniu danych doprowadzonych do wejścia systemu do formatu akceptowanego przez moduł wnioskowania. 8
Przetwarzanie końcowe (ang. postprocessing) służy do konwersji danych wyjściowych z tego modułu do postaci zgodnej z wymogami układów zewnętrznych. Procedura fuzyfikacji (z ang. fuzzification), polega na transformacji wartości z dziedziny liczb rzeczywistych na wartości z dziedziny zbiorów rozmytych. W tym celu dokonuje się wyznaczenia wartości funkcji przynależności dla kolejnych zmiennych lingwistycznych i dla danej rzeczywistej wartości wejściowej. Interpretacja reguł rozmytych składa się z dwóch pod-etapów: W pierwszym etapie realizowany jest proces obliczania mocy reguł. W tym celu dla każdej zmiennej w przesłankach reguły wyznaczane są stopnie przynależności do odpowiedniego zbioru rozmytego. Jeśli moc reguły jest zerowa, wówczas uznaje się, że nie nastąpiła aktywacja reguły. Jednocześnie wyznaczany jest zbiór rozmyty będący rezultatem uaktywnienia reguły. Zależy on od kształtu odpowiedniej funkcji przynależności oraz obliczonej mocy reguły. W drugim etapie następuje agregacja aktywnych reguł. Polega ona na sumowaniu rozmytych zbiorów wynikowych ze wszystkich reguł. Otrzymany w ten sposób zbiór rozmyty jest zbiorem wynikowym wnioskowania rozmytego. Wynikiem wnioskowania jest zbiór rozmyty. Defuzyfikacja (ang. defuzzification), zwana również wyostrzaniem, jest przekształceniem odwrotnym do rozmywania, czyli transformacją informacji zawartej w zbiorze rozmytym do postaci pojedynczej wartości (crisp value) Etapy projektowania systemu rozmytego: 1. Określenie zmiennych lingwistycznych i odpowiadających im atrybutów rozmytych 2. Określenie funkcji przynależności w/w zbiorów 3. Zdefiniowanie bazy rozmytych reguł 4. Wybór metody defuzyfikacji 9