Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare...

32
Tehnici de inteligenta computationala in electronica G. Oltean 1 /17 Sisteme cu logica fuzzy

Transcript of Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare...

Page 1: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 1 /17

Sisteme cu logica fuzzy

Page 2: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Tipuri de sisteme cu logica fuzzy

❖ SISO

❖ MISO

❖ MIMO

❖ Mamdani - iesiri: mf conventionale

❖ Takagi – Sugeno - iesiri: mf singleton

➢ de ordin zero (constant)

➢ de ordin 1 (liniar)

Page 3: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 3 /17

Structura unui sistem cu logică fuzzy - SISO

X = universul discuţiei pentru x

Y = universul discuţiei pentru y

Page 4: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 4 /17

Structura unui sistem cu logică fuzzy Mamdani

Page 5: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 5 /17

❖ Structura sistemului cu logică fuzzy

• Baza de cunoştinţe a SLF:

- mulţimile fuzzy peste universul discuţiei variabilei de intrare, X;

- mulţimile fuzzy peste universul discuţiei variabilei de intrare, Y;

- baza de reguli fuzzy, care leagă între ele valorile fuzzy ale variabilei

de intrare (x) de valorile fuzzy ale variabilei de iesire (y)

• Operatii (operatorii) SLF:

- fuzzificarea;

- inferenţa (+ agregare la Mamdani);

- defuzzificarea.

Page 6: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 6 /17

Baza de cunoştinţe a SLF

➢ Baza de cunoştinţe este specifică fiecărei aplicaţii; de calitatea ei

depinde în general calitatea SLF pentru o aplicaţie dată.

➢ Forma, numărul şi, în special, valorile numerice care definesc

suportul şi valoarea mediană a mulţimilor fuzzy afectează

calitatea aplicaţiei, şi obţinerea lor este:

❖ fie rezultatul unui proces de încercări succesive;

❖ fie rezultatul învăţării supervizate pe baza unuii set de date

(ANFIS);

❖ fie rezultatul unui proces de clasificare în mulţimi (clase) fuzzy a

unor date cunoscute (clasificare substractiva, Fuzzy C-Means).

➢ Regulile fuzzy sunt mai uşor de definit, deoarece ele trebuie doar

să asocieze datele descrise prin mulţimi fuzzy după legile de

corespondenţă dorite (în general uşor de exprimat lingvistic).

Page 7: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 7 /17

Operaţiile (operatorii) SLF

➢ Fuzzificarea

Transformarea valorii tranşante de intrare x* într-o mulţime fuzzy X*.

** Xxefuzzificar

valoare

transantamultime fuzzy

singleton

x*, x

x*, xX*(x)

0

1

Page 8: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 8 /17

Inferenţa ➢ Cea mai complexă operaţie dintr-un SLF.

➢ Are sarcina de a “rezolva” baza de reguli fuzzy pentru valoarea

fuzzy curenta de intrare X*,

➢ Utilizeaza mulţimile fuzzy de intrare şi ieşire ale SLF,

➢ La ieşire se obtine mulţimea fuzzy Y* din care se obţine prin

defuzzificare valoarea tranşantă y=y*.

Inferenţa trebuie:

• să deducă pe baza valorii fuzzy de intrare X* şi pe baza fiecărei reguli

fuzzy Ri rezultatul fuzzy Yi* al regulii Ri.

• să fuzioneze toate rezultatele parţiale fuzzy Yi*, i=1,…, M, într-o

singură mulţime fuzzy de ieşire Y* - agregarea rezultatelor partiale –

doar pentru sisteme Mamdani

Inferenţa compozitionala:

• Mamdani (max - min)

• Larsen (max – prod)

Page 9: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 9 /17

Agregarea rezultatelor partiale (doar la SLF Mamdani)

• Regulile din baza de reguli

a unui sistem cu logică fuzzy

se consideră legate între ele

prin conectivul “SAU”

• Pentru obtinerea multimii

fuzzy de iesire Y* se va

utiliza operatorul de

agregare “max” intre

multimile fuzzy partiale Yi*

date de regulile Ri.

Page 10: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 10 /17

Defuzzificarea ➢ Rezultatul inferenţei este mulţimea fuzzy de ieşire Y*.

➢ Mărimea de ieşire a SLF trebuie să fie o valoare tranşantă,la fel ca şi intrările SLF.

➢ Selectarea unei valori tranşante y* din suportul lui Y* ca valoare de ieşire a SLF

y* = defuzzificare(Y*)

Exista mai multe metode de deffuzificare, selectarea uneia dintre ele fiind

specifica aplicatiei

-10 -8 -6 -4 -2 0 2 4 6 8 10

0

0.5

1

Y*

y

y* = ?

Page 11: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 11 /17

❖ Centrul de greutate / Centrul ariei (COG/COA)

➢ Centrul de greutate genereaza ca iesire ordonata centrului ariei de sub curba ce

defineste multimea fuzzy de iesire.

➢ Daca aria este perceputa ca si o placa de densitate egala, centrul de greutate este

punctul fata de care placa sta in echilibru.

y Y

y Y

dyy

dyyyy

*

**

N

i

iY

N

i

iYi

y

yy

y

1

1*

*

*

Domeniul

continuu Domeniul

discret

-10 -8 -6 -4 -2 0 2 4 6 8 10

0

0.5

1

y*=-3.2281

Y*

y

Page 12: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 12 /17

❖ Bisectoare

➢ Bisectoarea este linia verticala care imparte regiunea in

doua subregiuni de arie egala

➢ Uneori coincide cu deffuzificarea COG

-10 -8 -6 -4 -2 0 2 4 6 8 10

0

0.5

1

y*=-3.7

Y*

y

Page 13: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 13 /17

❖ Maxim➢ Media maximelor (MOM)

➢ Cel mai mic maxim in valoare absoluta (Smallest of Maximum - SOM)

➢ Cel mai mare maxim in valoare absoluta (Largest of Maximum - LOM)

• In acest exemplu, deoarece exista un platou la valoarea maxima, cele trei

metode furnizeaza valori diferite.

• Daca Y* are un maxim unic cele trei metode vor furniza aceeasi valoare

(ordonata maximului)

-10 -8 -6 -4 -2 0 2 4 6 8 10

0

0.5

1

MOM

y*=-5 SOM

y*=-2 LOM

y*=-8

Y*

y

Page 14: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 14 /17

Alegerea metodei de deffuzificare

• Care dintre metode este cea potrivita? - Nu exista un raspuns simplu.

• Se considera in general COA buna pentru inceput in majoritatea aplicatiilor

de control. Ulterior aceasta se poate modifica pentru a vedea daca alta metoda

lucreaza mai bine.

• Metodele de maxim se pot utiliza in cazul unor sisteme de decizie (sisteme

expert)

Page 15: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 15 /17

Construirea unui sistem cu logică fuzzy SISO

• X, Y – universurile discuţiilor a două variabile, x şi respectiv y.

• Dorim un SLF care să aibă pe x ca intrare şi y ca ieşire.

• Se ştie că y este determinată de către x, dar nu se ştie (din măsurători ale

unui proces real) decât că:

pentru x=x1=0 y=y1=0;

pentru x=x2 y=y2;

pentru x=x3 y=y3;

pentru x=x4=X, y=y4=Y.

SLFx y

Mai ştim că legea de variaţie a lui y în funcţie de x trebuie să fie cât mai lină

Page 16: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 16 /17

Definirea mulţimilor fuzzyDefinim patru mulţimi fuzzy peste X:

X1, cu vârful în x1=0;

X2, cu vârful în x2;

X3, cu vârful în x3;

X4, cu vârful în x4=X.

Cea mai simplă alegere este definirea

X1…X4 sub formă de mulţimi fuzzy

triunghiulare. Ştim că xi aparţine complet

lui Xi , deci este logic să nu aparţină

deloc lui Xj, ji, i,j = {1,2,3,4}.

Page 17: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 17 /17

Definirea regulilor fuzzy din baza de reguli

Fiecare regulă trebuie să

• asocieze xi cu yi pentru fiecare din punctele: (xi, yi), i=1...4

• asigure interpolarea fuzzy între aceste puncte.

R1: Dacă x este X1 atunci y este Y1.

R2: Dacă x este X2 atunci y este Y2.

R3: Dacă x este X3 atunci y este Y3.

R4: Dacă x este X4 atunci y este Y4.

Operatori utilizati in SLF

fuzzificare (singleton);

inferenţă (de ex., max-min);

defuzzificare (de ex., COA).

Page 18: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Exercitiu

➢ Sa se implementaeze in Matlab SLF descris mai sus

considerand x[0, 12] si y[0, 20].

❖ Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

❖ Vizualizati curba intrare-iesire (View-Surface)

❖ Analizati influenta operatorilor asupra rezultatului obtinut

▪ Implicatie

▪ Agregare

▪ Deffuzificare

❖ Valorile pentru capetele de interval sunt corect determinate?

Daca nu, ce solutie propuneti?

Page 19: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Structura si operatori SLF

Page 20: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Baza de cunostinte

Page 21: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Inferenta si curba (suprafata) de

control

Agregare: max

Defuzzificare: centroid

Page 22: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Valorile pentru capetele de interval sunt corect determinate? Daca nu, ce solutie propuneti?

Page 23: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Solutie pentru capetele de interval

➢ Modificarea domeniului de definitie a mf de iesire

➢ Redefinirea mf de iesire la capetele intervalului

Page 24: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Inferenta si curba (suprafata) de

control

Agregare: max

Defuzzificare: centroid

Page 25: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Comparatie pentru curba de control

Page 26: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Sa se implementeze un sistem fuzzy care sa implementeze

caracteristica de transfer (curba de control) din figura:

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

x

y

Studiu de caz

Page 27: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean 27 /17

Modeling a function

❖ Curve fitting by using fuzzy sets and fuzzy rules (fuzzy patches)

• Small number of rules - large patches (rough approximation)

• Large number of rules – small patches (fine approximation)

The overlapping of the

input fuzzy sets leads to a

smooth approximation of

the function

If there is no overlapping

of the input fuzzy sets, a

stepwise function

approximation results

Page 28: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

Solutia initiala

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

X: 0

Y: 0

x

y

X: 1.5

Y: 0.225

X: 2.5

Y: 0.625

X: 5

Y: 2.5

X: 7.5

Y: 4.375

X: 8.5

Y: 4.775

X: 10

Y: 5

Se aleg 7 puncte de pe curba, pentru care se vor defini multimile

fuzzy si regulile fuzzy corespunzatoare

Page 29: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

x

y

referinta

sol.initiala

Solutia initiala

Cum se poate imbunatati aproximarea furnizata de SLF?

Page 30: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

0 1 2 3 4 5 6 7 8 9 10-1

0

1

2

3

4

5

6

x

y

referinta

sol.initiala

sol 1

Solutia 1S-a actionat asupra multimilor fuzzy de iesire

solutia 1

solutia initiala

Page 31: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

0 1 2 3 4 5 6 7 8 9 100

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

X: 0

Y: 0

x

y

X: 1.5

Y: 0.225

X: 2.5

Y: 0.625

X: 4

Y: 1.6

X: 5

Y: 2.5

X: 6

Y: 3.4

X: 7.5

Y: 4.375X: 8.5

Y: 4.775

X: 10

Y: 5

Solutia 2Se considera suplimentar inca 2 puncte pe curba

Page 32: Sisteme cu logica fuzzy - bel. · PDF file(ANFIS); fie rezultatul unui proces de clasificare în mulţimi(clase) fuzzy a ... Vizualizati modul de efectuare al opertiilor in SLF (View-Rules)

Tehnici de inteligenta computationala in electronica G. Oltean

0 1 2 3 4 5 6 7 8 9 10-1

0

1

2

3

4

5

6

x

y

referinta

sol.initiala

sol 1

sol 2

Solutia 2Se considera suplimentar inca 2 puncte pe curba

solutia 1

solutia 2