sisteme cu logica fuzzy - utcluj.ro
TRANSCRIPT
![Page 1: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/1.jpg)
Sisteme cu logica nuantata, G. Oltean
Sisteme cu logica fuzzy
![Page 2: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/2.jpg)
Sisteme cu logica nuantata, G. Oltean
Structura unui sistem cu logică fuzzy
SLFx yX = universul discuţiei pentru x
Y = universul discuţiei pentru y
2
![Page 3: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/3.jpg)
Sisteme cu logica nuantata, G. Oltean
Structura unui sistem cu logică fuzzy Mamdani
3
![Page 4: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/4.jpg)
Sisteme cu logica nuantata, G. Oltean
❖ Structura sistemului cu logică fuzzy
❑ Baza de cunoştinţe a SLF:
➢ Baza de date
- 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
- baza de reguli fuzzy; conectează valorile fuzzy ale variabilei x cu valorile
fuzzy ale variabilei y
❑ Operații (operatorii) SLF:
- fuzzificarea;
- inferenţa;
- defuzzificarea.
4
![Page 5: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/5.jpg)
Sisteme cu logica nuantata, G. Oltean
Baza de cunoştinţe a SLF
➢ Baza de cunoştinţe (multimi fuzzy + reguli lingvistice) 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:
❖ definite de utilizator (proces de încercări succesive);
❖ rezultate in urma utilizarii unui algoritm automat de clasificare
(clasificare substractivă, Fuzzy C-Means) a unui set de date
numerice.
❖ rezultate în urma unui proces de instruire supervizată ce
utilizeaza un set de date numerice (anfis, AG)
5
![Page 6: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/6.jpg)
Sisteme cu logica nuantata, G. Oltean
Baza de cunoştinţe a SLF – cont.
✓ Regulile fuzzy trebuie să asocieze datele descrise prin mulţimi
fuzzy după legile de corespondenţă dorite (care sunt în general
uşor de exprimat lingvistic).
❖ definite de utilizator;
❖ generate automat în urma aplicarii unui algoritm de clasificare
(clasificare substractiva, Fuzzy C-Means) a unui set de date
numerice.
❖ generate automat în urma unui proces de instruire supervizată ce
utilizează un set de date numerice (AG)
6
![Page 7: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/7.jpg)
Sisteme cu logica nuantata, G. Oltean
Operaţiile (operatorii) SLF
➢ Fuzzificarea
Transformarea valorii tranşante de intrare x într-o mulţime fuzzy.
La un moment dat la intrare avem o singură valoare tranşantă x*
** Xxefuzzificar
⎯⎯⎯ →⎯valoare
tranșantămulțime fuzzy
singleton
==
x*, x
x*, xX*(x)
0
1
7
![Page 8: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/8.jpg)
Sisteme cu logica nuantata, G. Oltean
Inferenţa ➢ Cea mai complexă operaţie dintr-un SLF.
➢ Are sarcina de a “rezolva” baza de reguli fuzzy pentru valoarea
fuzzy 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* - multimi fuzzy partiale de iesire
• combine toate rezultatele parţiale fuzzy Yi*, i=1,…, M, într-o singură
mulţime fuzzy de ieşire Y* - agregarea rezultatelor partiale
Inferenţa compozițională:
• Mamdani (max - min)
• Larsen (max – prod)
8
![Page 9: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/9.jpg)
Sisteme cu logica nuantata, G. Oltean
Agregarea rezultatelor partiale (sisteme 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
operatia de reuniune între
multimile fuzzy partiale Yi*
date de regulile Ri.
Operator de agregare “max”
9
![Page 10: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/10.jpg)
Sisteme cu logica nuantata, G. Oltean
Defuzzificarea (sisteme Mamdani)
➢ 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
specifică aplicației.
10
-10 -8 -6 -4 -2 0 2 4 6 8 10
0
0.5
1
Y*
y
y* = ?
![Page 11: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/11.jpg)
Sisteme cu logica nuantata, G. Oltean
❖ Centrul de greutate / Centrul ariei (COG/COA)
➢ Centrul de greutate generează ca ieșire ordonata centrului ariei de sub curba ce
defineste multimea fuzzy de iesire.
➢ Daca aria este perceputa ca și o placa de densitate egala, centrul de greutate este
ordonata punctului fata de care placa sta in echilibru.
( )
( )
=
y Y
y Y
dyy
dyyyy
*
**
( )
( )
=
==N
i
iY
N
i
iYi
y
yy
y
1
1*
*
*
continuu discret
11
-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 - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/12.jpg)
Sisteme cu logica nuantata, G. Oltean
❖ Bisectoare
➢ Bisectoarea este linia verticala care imparte regiunea in
doua subregiuni de arie egala
➢ Uneori coincide cu deffuzificare COG
12
-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 - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/13.jpg)
Sisteme cu logica nuantata, G. Oltean
❖ 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)
13
-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 - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/14.jpg)
Sisteme cu logica nuantata, G. Oltean
Alegerea metodei de deffuzificare
• Care este metoda potrivita?
• Nu exista un raspuns simplu.
• Se considera in general COA
buna pentru inceput in majoritatea
aplicatiilor.
• Ulterior aceasta se poate
modifica pentru a vedea daca alta
metoda lucreaza mai bine.
• Metodele de mediere (COA, bisectoare) se utilizeaza in general in
aplicatii de control. Nu se produc salturi in suprafata de control.
• Metodele de maxim (MOM, LOM, SOM) se utilizeaza in general in
aplicatii de decizie. Se pot produce salturi in suprafata de control.
14
![Page 15: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/15.jpg)
Sisteme cu logica nuantata, G. Oltean
Construirea unui sistem cu logică fuzzy SISO
• X, Y – universurile discuţiilor a două variabile lingvistice, 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=xmax, y=y4=ymax.
SLFx y
Mai ştim că legea de variaţie a lui y în funcţie de x trebuie să fie cât mai lină
],,0[],,0[ maxmax yYxX ==
15
![Page 16: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/16.jpg)
Sisteme cu logica nuantata, G. Oltean
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=xmax.
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}.
x4=xmax
y4=ymax
16
![Page 17: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/17.jpg)
Sisteme cu logica nuantata, G. Oltean
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).
17
![Page 18: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/18.jpg)
Sisteme cu logica nuantata, G. Oltean
Exercitiu
➢ Sa se implementeze in Matlab SLF descris mai sus considerand
x[0, 12] si y[0, 20].
❖ Vizualizati modul de efectuare al operatiilor 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?
18
![Page 19: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/19.jpg)
Sisteme cu logica nuantata, G. Oltean
Structura si operatori SLF
19
![Page 20: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/20.jpg)
Sisteme cu logica nuantata, G. Oltean
Baza de cunostinte
20
![Page 21: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/21.jpg)
Sisteme cu logica nuantata, G. Oltean
Inferența și curba (suprafața) de
control
Agregare: max
Defuzzificare: centroid
21
![Page 22: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/22.jpg)
Sisteme cu logica nuantata, G. Oltean
Valorile pentru capetele de interval sunt corect determinate? Dacă nu, ce soluție propuneți?
22
![Page 23: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/23.jpg)
Sisteme cu logica nuantata, G. Oltean
Soluție pentru capetele de interval
➢ Modificarea domeniului
de definitie a mf de iesire
➢ Redefinirea mf de iesire
la capetele intervalului
23
![Page 24: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/24.jpg)
Sisteme cu logica nuantata, G. Oltean
Inferenta si curba (suprafata) de
control
Agregare: max
Defuzzificare: centroid
24
![Page 25: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/25.jpg)
Sisteme cu logica nuantata, G. Oltean
Comparatie pentru curba de control
25
![Page 26: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/26.jpg)
Sisteme cu logica nuantata, 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
26
![Page 27: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/27.jpg)
Sisteme cu logica nuantata, G. Oltean
Soluția inițială
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
27
![Page 28: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/28.jpg)
Sisteme cu logica nuantata, G. Oltean
Solutia inițială
Cum se poate imbunatati
aproximarea furnizata de SLF?
Partiții fuzzy
Fiecare punct - o regula
28
![Page 29: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/29.jpg)
Sisteme cu logica nuantata, G. Oltean
Solutia 1S-a actionat asupra multimilor fuzzy de iesire
solutia 1
solutia initiala
29
![Page 30: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/30.jpg)
Sisteme cu logica nuantata, 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
30
![Page 31: Sisteme cu logica fuzzy - utcluj.ro](https://reader031.vdocuments.pub/reader031/viewer/2022012409/616a40d511a7b741a3507c9e/html5/thumbnails/31.jpg)
Sisteme cu logica nuantata, G. Oltean
Solutia 2Se considera suplimentar inca 2 puncte pe curba
solutia 1
solutia 2
31