Logika rozmyta - projekt do realizacji
Transkrypt
Logika rozmyta - projekt do realizacji
W ramach zajęć proszę wykonać sprawozdanie z logiki rozmytej. Sprawozdanie powinno realizować zadanie wnioskowania rozmytego. Cel projektu: Student projektuje bazę wiedzy wnioskowania rozmytego (kilka, kilkanaście reguł pozwalających zamodelować rzeczywistość opisywaną przez reguły składające się z dwóch zmiennych lingwistycznych w części warunkowej reguł i jednej zmiennej lingwistycznej w części decyzyjnej. W Excelu bądź podobnym narzędziu student zapisuje reguły (formuły logiczne) projektując odpowiednie funkcje rozróżnialności dla zdefiniowanych zbiorów rozmytych. Implementuje co najmniej dowolne dwie różne metody defuzyfikacji. Następnie dla dowolnych nowych danych (wystarczy jeden zestaw danych) w formie sprawozdania krok po kroku omawia proces wnioskowania rozmytego dla stworzonej bazy wiedzy. Wymogi dotyczące sprawozdania: Bardzo proszę by ująć w sprawozdaniu: - definicję (formalną oraz wykresową) zmiennych wejściowych i wyjściowej - zapisane w języku naturalnym (if…then…) reguły wszystkie - omówienie procesu wnioskowania dla dowolnych nowych danych z pokazaniem krok po kroku wnioskowania przy dotrzymaniu warunku o użyciu przynajmniej dwóch różnych metod defuzyfikacji spośród poznanych na wykładzie. Przykłady: Przykład nr 1 Poziom ryzyka – nowy projekt z inżynierii oprogramowania Należy oszacować poziom ryzyka (w skali 0-10) związanego z nowym projektem w dziedzinie inżynierii oprogramowania. Dla uproszczenia założyć, że rozpatrywane są wyłącznie dwa wejścia: finansowanie projektu (oceniane w skali 0-100) oraz wymagana liczba osób do wykonania projektu (oceniane w skali 0-20). #zdefiniowanie zmiennej finansowanie i jej wartości, jako zbiorów rozmytych zm.finansowanie niewyst = fuzzy trapezoid gset(corners = c(0,0.1,20,40), universe=U1), srednie = fuzzy triangular gset(corners = c(20,50,80), universe=U1), odpowiednie = fuzzy trapezoid gset(corners = c(60,80,99.9,100), universe=U1)) zm.l.osob mala = fuzzy trapezoid gset(corners = c(0,0.1,6,13), universe=U2), duza = fuzzy trapezoid gset(corners = c(7,12,19.9,20), universe=U2)) zm.ryzyko niskie = fuzzy trapezoid gset(corners = c(0,0.1,2,4), universe=U3), normalne = fuzzy triangular gset(corners = c(2,5,8), universe=U3), wysokie = fuzzy trapezoid gset(corners = c(6,8,9.9,10), universe=U3)) # reguły # R1: JEŻELI finansowanie jest odpowiednie LUB wymagana liczbna osób jest mała TO ryzyko jest niskie. # R2: JEŻELI finansowanie jest srednie I wymagana liczba osób jest duża TO ryzyko jest normalne. # R3: JEŻELI finansowanie jest niewystarczające TO ryzyko jest wysokie. # wnioskowanie dla określonych wartości zmiennych ocena.finansowania - 60 ocena.l.osob - 9 Przykład nr 2 Symulacja FLC Prześledźmy działanie regulatora FLC na przykładzie zadania podjęcia decyzji o wartości przyspieszenia samochodu w sytuacji dojeżdżania do skrzyżowania, na którym światło zmieniło się z zielonego na żółte. Wielkościami wpływającymi na decyzję będą: aktualna prędkość samochodu i odległość od skrzyżowania. Pomierzone wartości tych wielkości są następnie poddawane rozmywaniu: są zamieniane na ich jakościowe odpowiedniki - „mały”, „średni” i „duży” (Formalnie rzecz ujmując, dla każdej wielkości wejściowej definiujemy trzy funkcje zdaniowe, odpowiadające wymienionym terminom lingwistycznym). Wartości funkcji zdaniowych dla wartości lingwistycznych obu wielkości wejściowych są przedstawione na poniższych rysunkach. Rozważmy trzy przypadki wielkości wejściowych: 1. odległość prędkość 30 50 odległość prędkość 100 50 odległość prędkość 30 65 2. 3. Wartości lingwistyczne są dla tych przypadków następujące (odczytujemy je z wykresów funkcji przynależności): 1. odległość prędkość mała 0,6 0,3 średnia 0,4 0,7 duża 0 0 odległość prędkość mała 0 0,3 średnia 1 0,7 duża 0 0 2. 3. odległość prędkość mała 0,6 0 średnia 0,4 1 duża 0 0 Następuje faza wnioskowania. W naszym przykładzie, wnioskowanie odbywa się zgodnie z zestawem reguł zamieszczonym poniżej. odległość prędkość przyspieszenie mała Mała duże- średnia Mała małe- duża Mała małe- mała Średnia duże+ średnia Średnia małe- duża Średnia małe- mała Duża małe+ średnia Duża duże- duża Duża małe- Poniżej wymieniono reguły wraz ze stopniem prawdziwości konkluzji (określonym na podstawie koniunkcji przesłanek) dla rozważanych przypadków; dla wygody, pominęliśmy reguły z nieprawdziwą koniunkcją przesłanek: 1. odległość prędkość przyspieszenie min(odległość, prędkość) mała Mała duże- 0,3 średnia Mała małe- 0,3 mała Średnia duże+ 0,6 średnia Średnia małe- 0,4 odległość prędkość przyspieszenie min(odległość, prędkość) mała Średnia duże+ 0,3 średnia Średnia małe- 0,7 odległość prędkość przyspieszenie min(odległość, prędkość) mała Średnia duże+ 0,6 średnia Średnia małe- 0,4 2. 3. Tak więc wynikiem wnioskowania będą następujące wartości lingwistyczne (podane wraz ze stopniem prawdziwości): 1. przyspieszenie duże- 0,3 małe- 0,3 małe+ 0 duże+ 0,6 2. przyspieszenie duże- 0 małe- 0,7 małe+ 0 duże+ 0,3 3. przyspieszenie duże- 0 małe- 0,4 małe+ 0 duże+ 0,6 Przechodzimy do wyostrzania. Załóżmy funkcje przynależności dla zmiennej wyjściowej jak na poniższym rysunku. W wyniku wnioskowania, dla każdego z rozważanych trzech przypadków, otrzymamy inne kształty funkcji przynależności, zobrazowane na rysunkach poniżej. W celu wyznaczenia wartości liczbowej przyspieszenia zastosujemy metodę środka ciężkości (CoA). Wynik wyostrzania jest podany poniżej (obok każdego rysunku). 0.150 0.140 0.305 Przykład nr 3 Ryzyko towarzystwa ubezpieczeniowego Należy oszacować poziom ryzyka towarzystwa ubezpieczeniowego związanego z ubezpieczeniem pojazdu o określonej mocy samochodu oraz wieku kierowcy. Zakładając, że dysponujemy dwiema zmiennymi wejściowymi: wiek kierowcy {młody, średni, stary} oraz moc samochodu {mała, średnia, duża} system ma wnioskować jakie będzie ryzyko finansowej towarzystwa ubezpieczeniowego zakładając że ryzyko to mierzone będzie w wartościach {niskie, średnio niskie, średnie, średnio wysokie i wysokie}. Następnie dla dowolnych danych np. wiek kierowcy = 27 lat, moc samochodu – 140 km proszę ustalić jakie będzie ryzyko finansowe.