Regulator rozmyty

 

Wnioskowanie (interferencja).

 

Na ten blok trafiają dane obliczone przez blok fuzyfikacji. Dzięki nim, w oparciu o bazę reguł, zostanie obliczona wynikowa funkcji przynależności.

 

Ogólnie działanie bloku wnioskowanie można przedstawić następująco:

 

 

 

Na bazę reguł składa się zbiór instrukcji warunkowych (przesłanek). Powstają one na bazie doświadczenia osoby zajmującej się danym procesem.

 

Warunki bazy reguł można ogólnie zapisać w poniższy sposób [2]:

- przesłanka prosta

JEŻELI ( x1 = A1 ) TO ( y = C1 )

- przesłanka złożona

JEŻELI ( x1 = A1 ) I ( x2 = B1 ) TO ( y = C1 )

- inna przesłanka złożona

JEŻELI ( x1 = A1 )I( x2 = B1 ) LUB ( x1 = A1 )I( x2 = B1 )

TO ( y = C1 )

 

gdzie Ai są zmiennymi lingwistycznymi pierwszej zmiennej wejściowej, Bi są zmiennymi lingwistycznymi drugiej zmiennej wejściowej, Cq są zmiennymi lingwistycznymi danej wyjściowej.

 

W wypadku stosowania przesłanek złożonych trzeba wykorzystać odpowiednie operatory. Użycie łącznika I odpowiada zastosowaniu jednego z operatorów t-normy, a użycie łącznika LUB odpowiada zastosowaniu jednego z operatorów s-normy.

 

Przesłanki bazy reguł stanowią zbiór wytycznych, według których należy postępować. Mówią nam jak ma się zachowywać obiekt sterowany w momencie zaistnienia danego przypadku na wejściu. Przypadki te mogą zostać zapisane za pomocą wzorów lub w postaci tabeli kombinacji wejściowych zbiorów rozmytych. Na przykład, jeżeli mamy dwie zmienne wejściowe, a każda z nich ma dwa zbiory rozmyte, tak jak jest to przedstawione tutaj, wzory i tabela kombinacji mogą się przedstawiać następująco.

 

1: JEŻELI ( x1 = A1 ) I ( x2 = B1 ) TO ( y = C1 )

2: JEŻELI ( x1 = A1 ) I ( x2 = B2 ) TO ( y = C2 )

3: JEŻELI ( x1 = A2 ) I ( x2 = B1 ) TO ( y = C2 )

4: JEŻELI ( x1 = A2 ) I ( x2 = B2 ) TO ( y = C3 )

 

 

A1

A2

B1

C1

C2

B2

C2

C3

 

Na podstawie danych wejściowych bloku wnioskowania wykonywane są obliczenia zawarte w warunkach bazy reguł. Wynikiem tych obliczeń są stopnie spełnienia tych przesłanek.

W celu otrzymania wynikowej funkcji przynależności stosujemy poniższy wzór:

 

mwyn(y) = MAX [ mC1(y); mC2(y); mCq-1(y); mCq(y); ]  [2]

 

Funkcja ta stanowi wyjście bloku wnioskowania i przekazywana jest na kolejny blok.

 

Aby przybliżyć działania jakie zachodzą w tym bloku posłużę się przykładem. Na wejściu naszego bloku będziemy mieli wartości obliczone w poprzednim przykładzie fuzyfikacji. Niech nasza baza reguł będzie dana tymi wzorami.

 

Do obliczenia przesłanek posłużymy się poniższym wzorem:

 

       mCq(x1*, x2* ) = mAiÇBj (x1*, x2* )   [2]

 

Jako operatora t-normy użyjemy MIN. Obliczenie stopnia spełnienia pierwszej przesłanki jest pokazane na poniższym rysunku.

 

 

W wyniku dalszych obliczeń otrzymujemy następujące stopnie aktywacji kolejnych przesłanek:

 

1:  mC1 (x1*, x2*) = 0,3

2:  mC2 (x1*, x2*) = 0,7

3:  mC2 (x1*, x2*) = 0,2

4:  mC3 (x1*, x2*) = 0,2

 

Jeżeli nasza baza reguł zawiera kilka przesłanek odnoszących się do tego samego zbioru rozmytego zmiennej wyjściowej, to należy określić która z nich jest przesłanką wygrywającą. W tym celu posługujemy się jednym ze wzorów zawartym w tabeli s-norm. Ja posłużę się tu s-norma MAX. Dzięki temu otrzymam następujące stopnie aktywacji poszczególnych zbiorów rozmytych zmiennej wyjściowej:

mC1 (x1*, x2*) = 0,3

mC2 (x1*, x2*) = 0,7

mC3 (x1*, x2*) = 0,2

 

Na podstawie tych wyników otrzymuję następującą wynikową funkcję przynależności.