projekt psi

Podstawy Sztucznej Inteligencji- PROJEKT-Logika rozmyta

Rok akademicki 2014/2015

Imię i nazwisko :

Adamski Damian

Bosak Katarzyna

Grupa ćwiczeniowa: I

III rok Informatyka Stosowana

Wstęp teoretyczny

Logika rozmyta opiera się na pojęciu zbioru rozmytego. Zbiór rozmyty różni się od klasycznego zbioru logiki dwuwartościowej tym, że nie ma ostrej, dobrze określonej granicy. W przypadku klasycznego zbioru A element x całkowicie należy do A (przynależność równa 1) albo całkowicie jest z A wyłączny (przynależność równa 0), czyli należy do zbioru nie-A (jest to tzw. zasada wyłączonego środka). W przypadku zbioru rozmytego przynależność elementu może być częściowa i przybierać dowolną wartość z przedziału [0,1]. Wartość ta jest określona przez tzw. funkcję przynależności (membership function). W przypadku pojęć nieostrych i nieprecyzyjnych logika rozmyta jest naturalnym sposobem opisu. O konkretnym kształcie i położeniu funkcji przynależności decyduje "wiedza eksperta", którym może być doświadczony operator albo np. sieć neuronowa uczona danymi doświadczalnymi z procesu. Poziomy przynależności do zbiorów rozmytych różne od 0 (false) lub 1 (true) wymagają rozszerzenia definicji operacji logicznych. I tak najprostszym rozszerzeniem operacji iloczynu logicznego A AND B, gdzie A,B c [0,1] są poziomami przynależności, jest zastosowanie funkcji min(A,B) wybierającej mniejszą z wartości funkcji przynależności do A i B, dla operacji sumy A OR B można zastosować funkcję max(A,B), a dla negacji NOT A funkcję 1-A. Tworzy się w ten sposób tablice prawdy logiki rozmytej. W ogólności, funkcje dla operatorów logiki rozmytej można wybierać w sposób bardzo dowolny przy zachowaniu ogólnych zasad, w szczególności zgodności z logiką klasyczną dla wartości 0

i 1. Alternatywą dla funkcji AND jest często iloczyn prod(A,B), a dla funkcji OR suma

probabilistyczna probor(A,B)=A+B-A*B.

Zbiory i operatory rozmyte pełnią funkcje odpowiednio podmiotu i orzeczenia zdań logiki rozmytej. Do konstruowania algorytmów rozmytych wykorzystuje się zdania warunkowe typu if-then. W

najprostszym przypadku ma ono formę if x is A then y is B, gdzie A i B są wartościami lingwstycznymi

określonymi przez zbiory rozmyte na przestrzeniach X i Y, z których pochodzą elementy x i y. Zdanie

po if nazywa się przesłanką, a zdanie po then - następstwem lub konkluzją.

Projekt wykonany został w programie MATLAB

Poleceniem >>fuzzy uruchamiamy graficzny edytor FIS (Fuzzy Logic Toolbox ).

Projekt polega na zaprojektowaniu sterownika rozmytego temperatury w chłodni.

Rys.1 Schemat chłodni, do której projektujemy sterownik temperatury

Zakładamy, że optymalna temperatura chłodni mieści się w granicach od -20 do -16 oC ; niższa temperatura jest za niska. Wyższa temperatura, w zależności od temperatury zewnętrznej, powinna być regulowana przez sterownik.

Reprezentacja zmiennych lingwistycznych w postaci zbiorów rozmytych.

  1. INPUT-Temperatura wewnątrz chłodni:

Przedział od -25 oC do 5 oC, wykresy typu: trapmf

1. zbyt niska: [-25 -24 -21 -18]

2. optymalna: [-20 -18 -16 -16]

3. niska: [-17 -14 -11 -10]

4. podwyższona: [-12 -10 -7 -5]

5. wysoka: [-6 -1 1 2]

6. zbyt wysoka: [0 2 5 5]

  1. INPUT-Temperatura na zewnątrz chłodni :

Przedział od -20 oC do 30 oC, wykresy typu: trapmf

1. mróz: [-20 -20 -13 -10]

2. bardzo zimno: [-11 -9 -5 -3]

3. zimno: [-5 -3 1 5]

4. chłodno: [3 6 11 12]

5. ciepło: [10 15 18 19]

6. bardzo ciepło: [18 22 30 30]

  1. OUTPUT- Ustawienia czujnika

Przedział od 0 do 3, wykresy typu: trimf

1.wyłącz:[-1 0 0.75]

2.słabe chłodzenie:[0 0.75 1.5]

3.chłodzenie:[0.75 1.5 2.25]

4.mocne chłodzenie:[1.5 2.25 3]

Reguły rozmyte

Reguły rozmyte tworzyliśmy za pomocą narzędzia Edit->Rule Rule Editor:

Zostały one zapisane według poniższej tabeli. Zawarte w niej są kombinacje kiedy czujnik powinien wyłączyć chłodzenie(np. gdy jest mróz na zewnątrz, a wewnątrz jest zbyt niska temperatura), włączyć słabe chłodzenie(np. gdy na zewnątrz jest chłodno a temperatura w chłodni jest optymalna), włączyć chłodzenie(np. gdy na zewnątrz jest zimno a temperatura w chłodni jest podwyższona) lub włączyć mocne chłodzenie(np. gdy na zewnątrz jest chłodno a temperatura wewnątrz chłodni jest zbyt wysoka).

temp na zewnątrz chłodni
mróz
temp wewnątrz chłodni zbyt niska wyłącz
optymalna wyłącz
niska wyłącz
podwyższona wyłącz
wysoka słabe chłodzenie
zbyt wysoka chłodzenie

Wnioskowanie rozmyte

Przeprowadzane za pomocą narzędzia View->Rules Rule Viewer

Jest to narzędzie, które nam wizualizuje poszczególne reguły. Pierwsza i druga kolumna to reguły dotyczące danych wejściowych. Trzecia kolumna(niebieskie wykresy), ilustruje dane wyjściowe. W naszym przypadku, reguły opierają się na zasadzie logicznej AND, więc wykres niebieski pojawia się tylko wtedy, gdy zarówno pierwsza jak i druga dana wejściowa spełnia jakąś zależność. Na powyższym wykresie jest to zależność: temperatura_wewnątz=-10 AND temperatura_na_zewnątrz=5 chlodnia =1.5

-10 mieści się w przedziale PODWYŻSZONA, 5 zawiera się w przedziale CHŁODNO;

Chlodnia = 1,5 to tryb chłodzenia

Tak więc te warunki spełnia reguła 22:

IF( temperatura_wewnatrz is PODWYŻSZONA) and (temperatura_na zewnatrz is CHLODNO) then (chlodnia is CHLODZENIE)

W tym przypadku temperatura_wewnątrz=-24.8(zakres temperatur: zbyt zimno), temperatura_na_zewnatrz=5(zakres temperatur: chłodno), chlodnia=0.75(zakres działania chłodni: wyłącz)

Niebieski wykres widnieje tylko w wierszu 19, ilustrującym regułę 19:

If (temperatura_wewnatrz is ZBYT ZIMNO) and (temperatura_na_zewnatrz is CHLODNO)then(chlodnia is WYLACZ)

Dane wejściowe:

temperatura_wewnątrz= 4.16(zbyt wysoka)

temperatura_na_zewnatrz=9.56 (chłodno)

Dane wyjściowe:

Chlodnia=2.25(mocne chłodzenie)

Niebieski wykres przy regule 24:

If(temperatura_wewnatrz is ZBYT_WYSOKA)and(temperatura_na_zewnatr is CHLODNO)then (chlodnia is MOCNE_CHLODZENIE)

W ostatnim przykładzie, dane wejściowe to :

Temperatura_wewnątrz=-13.8(niska)

Temperatura_na_zewnatrz=-7.71(bardzo_zimno)

Dane wyjściowe:

Chłodnia=0.75(slabe_chlodzenie)

Wykres niebieski przy regule nr 9:

If(temperatura_wewnatrz is NISKA) and(temperatura_na_zewnatrz is BARDZO_ZIMNO)then(chlodnia is SLABE_CHLODZENIE)

Wizualizacje zależności wybranych parametrów

View->Surface: Surface Viewer

Za pomocą tego narzędzia otrzymujemy wizualizację zależności poszczególnych parametrów danych wejściowych i wyjściowych.

  1. Zależność wartości systemu chłodnia od temperatury wewnątrz

Widzimy, iż im wyższa temperatura wewnątrz chłodni, tym większa wartość wskazywana przez czujnik. Wynika to z tego, że wyższe wskazania czujnika, to większa wartość chłodzenia

  1. Zależność temperatury chłodzenia od temperatury na zewnątrz

Jak w poprzednim przypadku, możemy zaobserwować wzrost wartości czujnika chłodzenia wraz ze wzrostem temperatury.

  1. Zależność wartości czujnika chłodzenia od temperatury wewnątrz chłodni i na zewnątrz chłodni

Im wyższa wartość temperatury na zewnątrz i wewnątrz, tym wyższe wskazanie czujnika temperatury chłodni.

Im niższa temperatura na zewnątrz i wewnątrz, tym niższe wskazanie czujnika.


Wyszukiwarka

Podobne podstrony:
Projekt PSI 2010-2011(bez MB), Informatyka, SEMESTR IV, Projektowanie
szablon projektu psi v1 0
Projekt PSI 2010-2011, Informatyka, SEMESTR IV, Projektowanie
Projekt PSI dudek
PSI - wszystkie wykłady, politechnika infa 2 st, Projektowanie Systemów Informatycznych
PSI - wszystkie wykłady2, politechnika infa 2 st, Projektowanie Systemów Informatycznych
PSI - wszystkie wykłady3, politechnika infa 2 st, Projektowanie Systemów Informatycznych
02 PSI, politechnika infa 2 st, Projektowanie Systemów Informatycznych
PSI, Projekt dla studentów KSW, Projekt dla studentów KSW
projekt o narkomanii(1)
!!! ETAPY CYKLU PROJEKTU !!!id 455 ppt
Wykład 3 Dokumentacja projektowa i STWiOR
PSI 5
Projekt nr 1piątek
Projet metoda projektu

więcej podobnych podstron