Inteligencja Obliczeniowa Systemy rozmyte. Wykład 18 Włodzisław Duch Uniwersytet Mikołaja Kopernika
Co było Zbiory rozmyte Funkcje rozmyte Relacje rozmyte
Co będzie Wnioskowanie rozmyte Uczenie się reguł rozmytych Rozmywanie danych wejściowych Rozmyta klasteryzacja Zastosowania
Reguły rozmyte Wiedzę potoczną można często zapisać w naturalny sposób za pomocą reguł rozmytych. Jeśli zm. lingw-1 = term-1 i zm. lingw-2 = term-2 to zm. lingw-3 = term-3 Jeśli Temperatura = zimno i cena ogrzewania = niska to grzanie = mocno Co oznacza reguła rozmyta: Jeśli x jest A to y jest B ?
Interpretacja Jeśli x jest A to y jest B: korelacja lub implikacja. A B y x A B x y A=>B not A or B
Rozmyta implikacja Jeśli korelacja to wystarczy T-norma T(A,B). P=>Q ma wiele realizacji, np.
Pojedyncza reguła Jeśli x jest A to y jest B. Fakt: x jest A’, konkluzja: y jest B’ A X w A’ B Y x is A’ B’ y is B’ Łatwo uogólnić dla wielu warunków: Jeśli x jest A i y jest B to z jest C
Reguły FMR i FIR FMR, Fuzzy Mapping Rules. Zależność funkcjonalna, rozmyte grafy, aproksymacja. Model rozmyty: zbiór reguł FMR. FIR, Fuzzy Implication Rules. logika implikacji pomiędzy rozmytymi stwierdzeniami. Obydwa typy reguł: rozmyte relacje pomiędzy przesłankami a konkluzją, jeśli przesłanki spełnione to podobnie działają. Składają przesłanki, ale mogą stosować różne operatory, jest różna semantyka.
Rozmyta aproksymacja Model singletonowy: Ri: IF x jest Ai TO y jest bi Systemy rozmyte F: n p używają m reguł by odwzorować wektor x na wyjście F(x), wektorowe lub skalarne. Model singletonowy: Ri: IF x jest Ai TO y jest bi
Implikacje Kleen-Dienes, Goguen, Sharp, ograniczonej sumy, probabilistyczna ... Relacje można wyprowadzić z logiki wielowartościowej Łukasiewicza.
Baza reguł Temperatura Ogrzewanie mróz zimno chłodno Cena tanio średnio drogo IF Temperatura=mróz i Cena-ogrzewania=tanio THEN Grzać=mocno mocno mocno średnio mocno średnio słabo średnio słabo wcale IF Temperatura=chłodno i Cena-ogrzewania=drogo THEN Grzać=wcale
1. Rozmywanie Fuzzyfikacja, rozmywanie: od pomiarów do f. przynależności: Określ stopnie przynależności zmiennych lingwistycznych do każdego ze zbiorów rozmytych: Temperatura: T=15 C Cena-ciepła: p=48zł/MBtu chłodno(T)=0.5 tanio(p)=0.3 1 1 0.5 0.3 p 15C t 48zł/MBtu IF Temperatura=chłodno i Cena-ciepła=tanio ...
2. Łączenie termów t 1 chłodno(t)=0.5 15 C p tanio(p)=0.3 48zł/MBtu Oblicz stopień spełnienia reguły dla wszystkich przesłanek łącząc ze sobą termy za pomocą rozmytego AND, np. operatora MIN. t 1 chłodno(t)=0.5 IF Temperatura=chłodno 15 C p tanio(p)=0.3 i Cena-ciepła=tanio ... 48zł/MBtu 0.5 0.3 A(X) = A1(X1) A2(X2) AN(XN) dla reguły RA całe(X) = min{chłodno(t), tanio(p)} = min{0.5,0.3} = 0.3
3. Wnioskowanie Oblicz stopień prawdziwości konkluzji: zastosuj wartość przynależności przesłanek do konkluzji reguły używając T-norm: MIN lub iloczynu. high(h) konkluzja(h) h 1 przesł=0.3 ... Wnioskowanie MIN konkl=min{przesł, mocno} THEN Grzać=mocno mocno(h) konkl(h) 1 ... przesł =0.3 Wnioskowanie • konkl. = przesł • mocno h
4. Agregacja Dokonaj agregacji wszystkich przesłanek reguł używając operatora MAX by obliczyć sumę. THEN Grzać=mocno THEN Grzać=średnio THEN Grzać=słabo 1 h
5. Wyostrzanie Oblicz ostrą wartość lub decyzję używając np. metody środka ciężkości “Center of Gravity” (COG) konkl(h) COG 1 h 73 Dla zbiorów dyskretnych „centrum singletonów”, dla ciągłych: Center of singletons is computationally easier mi = stopień przynależności do zbioru i Ai = powierzchnia zbioru i ci = środek ciężkości zbioru i. h = Si mi • Ai • ci Si mi • Ai
Schemat rozmytego systemu Rozmywanie Wnioskowanie Wyostrzanie baza reguł if temp=mróz then zawór=otwarty mróz zimno ciepło otw pół zamk mróz =0.7 0.7 0.7 if temp=zimno then zawór=półotwarty 0.2 0.2 zimno =0.2 t v Zmierzona temperatura if temp=ciepło then zawór=zamknięty Wyjście określające położenie zaworu hot =0.0
Reguły Takagi-Sugeno Reguły Mamdani: wynikiem jest zbiór rozmyty B IF X1 = A1 i X2 =A2 … Xn = An Then Y = B Reguły TS: wynikiem jest funkcja f(xi) IF X1 = A1 i X2 = A2 …. Xn = An Then Y=f(x1,x2,..xn) Zwykle w regułach TS są to liniowe funkcje (aproksymacja f. sklejanymi liniowymi): IF X1 = A1 i X2 = A2…Xn = An Then Y=a0 + a1x1 … +anxn
Rozmyty system w Matlabie 1. If (temperature is cold) and (oilprice is normal) then (heating is high) (1) 2. If (temperature is cold) and (oilprice is expensive) then (heating is medium) (1) 3. If (temperature is warm) and (oilprice is cheap) then (heating is high) (1) 4. If (temperature is warm) and (oilprice is normal) then (heating is medium) (1) 5. If (temperature is cold) and (oilprice is cheap) then (heating is high) (1) 6. If (temperature is warm) and (oilprice is expensive) then (heating is low) (1) 7. If (temperature is hot) and (oilprice is cheap) then (heating is medium) (1) 8. If (temperature is hot) and (oilprice is normal) then (heating is low) (1) 9. If (temperature is hot) and (oilprice is expensive) then (heating is low) (1) rulelist=[ 1 1 3 1 1 1 2 3 1 1 1 3 2 1 1 2 1 3 1 1 2 2 2 1 1 2 3 1 1 1 3 1 2 1 1 3 2 3 1 1 3 3 3 1 1]; fis=addrule(fis,rulelist); showrule(fis) gensurf(fis); Surfview(fis); first input second input output rule weight operator (1=AND, 2=OR)
Fuzzy Inference System (FIS) IF szybkość jest niska to hamowanie = 2 IF szybkość jest średnia to hamowanie = 4* szybkość IF szybkość jest wysoka to hamowanie = 8* szybkość FP niska średnia wysoka .8 .3 .1 A single fuzzy rule is not very interesting. But if we have a collection of fuzzy rules, we can use them to describe a system behavior. This leads to a fuzzy inference system. For instance, we can describe the resistance experienced by a moving object by the following three rules: .... Then given a crisp speed value, how do we find the resistance value from these three rules? It quite simple and can be done in three steps. In the first step, we find the membership grades for ow? edium? and igh? For instance, if speed is 2, the membership grades for ow? edium?and igh?are .3, .8, and .1, respectively. These numbers also represent how the given input condition peed = 2?satisfies the IF part of the rules. Sometimes these numbers are called the firing strengths of the rules. In the second step, we find the output of each rule, given speed is 2. In the third step, we apply a weighted average method to find the overall resistance, where the weighting factors are equal to the firing strengths of the rules. The whole process to derive the output from a given input condition is called fuzzy reasoning. For a two-input FIS, the process of fuzzy reasoning is better represented by the following diagram. 2 Szybkość R1: w1 = .3; r1 = 2 R2: w2 = .8; r2 = 4*2 R3: w3 = .1; r3 = 8*2 Hamowanie = S(wi*ri) / Swi = 7.12
FIS Sugeno 1-go rzędu Reguły Rozmyte wnioskowanie IF X jest A1 i Y jest B1 to Z = p1*x + q1*y + r1 IF X jest A2 i Y jest B2 to Z = p2*x + q2*y + r2 Rozmyte wnioskowanie A1 B1 A2 B2 x=3 X Y y=2 w1 w2 z1 = p1*x+q1*y+r1 z = z2 = p2*x+q2*y+r2 w1+w2 w1*z1+w2*z2 P In this talk, we are going to use first-order Sugeno fuzzy inference system exclusively, where the output equation of each rule is a linear equation. For example, if we have two fuzzy rules ... We can express the process of fuzzy reasoning by this diagram. First we find the membership grades of the IF parts of the rules; the heights of the dashed line represent these values. Since the pre-conditions in the IF part are connected by AND, so we use multiplication to find the firing strength of each rule. For instance, firing strength w1 for rule 1 is the product of the heights of these two dashed lines. Similar for w2. Once we have w1 and w2, the overall output is again derived by weighted average.
Indukcja reguł rozmytych Parametry adaptacyjne w regułach rozmytych: Liczba reguł. Liczba termów dla każdego atrybutu. Położenie f. przynależności (FP). Kształt FP dla każdego atrybutu. Postać konkluzji. Wybór operatorów. Indukcja: konstruktywna lub adaptacja.
Dzielenie przestrzeni cech Siatka Indywidualne funkcje
Siatki Zalety: najprostsze podejście Regularna siatka: przypisz do każdego obszaru średnią wartość wszystkich przykładów, które do niego należą. Nieregularna siatka: podziel siatkę w miejscu największego błędu na mniejsze (dodaj FP). Metoda mieszana: zacznij od regularnej siatki, przeprowadź adaptację parametrów. Wady: Nk obszarów dla k wymiarów i N funkcji! Często słaba aproksymacja. Propozycja Combsa: linearyzacja, tyle samo klas co zbiorów dla każdej z cech.
Indywidualne FP Zalety: dokładniejsze, lepsza aproksymacja, mniej funkcji. Systemy neurorozmyte - równoważne sieci RBF z funkcjami Gaussowskimi lub sieci FSM z trójkątnymi, trapezami, bicentralnymi, zmodyfikowane sieci MLP. Systemy oparte na drzewach decyzji. Systemy indukcji reguł z danych w rozmytej wersji. Wady: trudniejsze w realizacji? Ekstrakcja reguł nie jest prosta.
Dostrajanie zbiorów reguł. Jak poprawić dany zbiór reguł? Użyj metod minimalizacji by zoptymalizować parametry reguł rozmytych: zwykle metod niegradientowych; najczęściej stosowane są algorytmy genetyczne. Zamień reguły na sieć neuronową, naucz sieć i dokonaj ponownej ekstrakcji. Stosuj metody heurystyczne do lokalnej adaptacji parametrów poszczególnych reguł. Logika rozmyta - dobra do modelowania wiedzy ale ... Jak wyglądają granice decyzji systemów wnioskowania rozmytego? Czy warto rozmywać/wyostrzać? Czy nie ma lepszych metod sklejania do aproksymacji?
ANFIS Wnioskowanie ANFIS (Adaptive Neuro-Fuzzy Inference System) A1 B1 p1*x+q1*y+r1 z2 = p2*x+q2*y+r2 z = w1+w2 w1*z1+w2*z2 x y ANFIS (Adaptive Neuro-Fuzzy Inference System) A1 A2 B1 B2 P S / x y w1 w2 w1*z1 w2*z2 Swi*zi Swi z This slide explains the basic architecture of an ANFIS. In the upper part, we have to graphical representation of the process of fuzzy reasoning. For each operation of fuzzy reasoning, we can put it into a node in an adaptive network. For instance, given two input x and y, first we need to find the membership grades; this is represented by the four blocks in the first layer and each of them generates a membership grades. The firing strengths are computed by nodes in the second layer;
ANFIS z 4 regułami Podział p. wejściowej B1 A2 B2 x y ANFIS (Adaptive Neuro-Fuzzy Inference System) A1 A2 B1 B2 S / x y w1 w4 w1*z1 w4*z4 Swi*zi Swi z P
ANFIS: identyfikacja param. Hybrydowe metody trenowania: BP + LMS nieliniowe parametry liniowe parametry w1 A1 P w1*z1 x A2 P S Swi*zi B1 P / z y B2 P w4*z4 Swi w4 S wprzód wstecz Param. FP (nieliniowe) stałe gradientowe Współczynniki (liniowe) LMS stałe
Zastosowania Wszystko fuzzy, szczególnie w Japonii od 1987! Kontrolery rozmyte: jak się przewraca to pchaj! W pralkach, opiekaczach, kamerach (autofokus), klimatyzacji, samochodach (hamulce, wtryski), automatyce przemysłowej, sterowaniu robotów ... Języki AI, np. FuzzyCLIPS. FuzzyJESS (Expert System Shell z Sandia National Lab.) Fuzzy Java Toolkit ... Fuzzyfikacja sieci neuronowych: systemy neurrozmyte i rozmyto-neuronowe.
Koniec wykładu 18 Dobranoc !