Sunteți pe pagina 1din 28

Mulțimi fuzzy

 Este dificil de stabilit cu certitudine apartenenţa sau


neapartenenţa unui obiect dat la o clasă sau alta de obiecte.
 Noţiunea de mulţime clasică reprezintă mai degrabă o
idealizare a situaţiilor reale.
 Există fenomene în care gradualitatea şi ambiguitatea joacă
un rol important (imprecizie care nu este de tip probabilistic).
 Problema este de a putea aprecia în ce măsură un obiect dat
aparţine unei clase ale cărei margini nu pot fi precizate
clar (transant).
 La baza logicii fuzzy se află o întrebare care ţine de esenţa
gândirii: “Ce este o clasă?”.

Sisteme cu logica nuantata, G. Oltean 1 /27


Împărţire
Cum impartim in 2 clase (medie, mare)
în clase valorile amplificarilor cuprinse intre 50 si 300?
Multimi clasice
“201 este amplificare mare”
adevarat
“199 este amplificare mare”
fals

Multimi fuzzy
“201 este amplificare mare”
adevarat – cu grad 0,55
“199 este amplificare mare”
adevarat – cu grad 0,45

Sisteme cu logica nuantata, G. Oltean 2 /27


Definire multime fuzzy
 Clasă de obiecte cu grade de apartenenţă continue. O mulţime fuzzy este
caracterizată de o funcţie de apartenenţă ce atribuie fiecărui obiect un
grad de apartenenţă între 0 şi 1.
i. Variabila lingvistică x =: o proprietate, un atribut al obiectului (obiectelor)
în discuţie (pentru un amplificator: amplificarea);
ii. Valoarea lingvistică A =: un adverb, adjectiv asociat variabilei lingvistice,
care dă numele (eticheta) mulţimii fuzzy asociate (medie, mare);
iii. Universul discuţiei X =: o mulţime clasică, tranşantă, pe care se definesc
mulţimile fuzzy (intervalul considerat pentru amplificare X = [50; 300];
iv. Funcţia de apartenenţă A =: asociază fiecărui element x gradul de
apartenenţă la mulţimea fuzzy A
A(x) : X  [0; 1] (exemplu: medie(amplificare) : [50; 300][0; 1].
v. Gradul de apartenenţă  =: măsura în care un element aparţine unei
mulţimi fuzzy, [0; 1] (mare(201) =0,55; pentru amplificare de 201 ce
aparţine mulţimii fuzzy ‘amplificare mare’)
Sisteme cu logica nuantata, G. Oltean 3 /27
Definire functie de
valoare
lingvistica
multime fuzzy apartenenta
- cont.
grad de
apartenenta
variabila
0.55 lingvistica
0.3

universul
discutiei

Mulţimea fuzzy A este complet determinată de mulţimea perechilor ordonate:


A = {(x, A(x))xX}.
Suportul unei multimi fuzzy A: Submultimea strictă a lui X ale cărei elemente
au grade de apartenenţă nenule în A:
supp ( A)  x  X |  A  x   0
Sisteme cu logica nuantata, G. Oltean 4 /27
 Care variabile lingvistice se pretează la împărțire in mf?
Ce valori lingvistice se potrivesc?

1. Calitatea servirii la restaurant


2. Culorile semaforului
3. Înălțimea unei persoane
4. Temperatura
5. Lunile anului
6. Venitul personal

Sisteme cu logica nuantata, G. Oltean 5 /27


Tipuri de mulţimi fuzzy
Multimi fuzzy predefinite în Matlab

Sisteme cu logica nuantata, G. Oltean 6 /27


 Mulțime fuzzy triunghiulară Definită prin punctele de
inflexiune ( , c ,  )

c  centrul multimii
 x 
c  ;   x  c

  x
A( x)   A ( x)   ; cx
   c
0; in rest

c 
supp( A)  [ ;  ]
A – se mai numeste și numar fuzzy triunghiular
“x este aproximativ egal cu a”
Daca X  {x1, x2, ..., xn }  1 2 n 
Ax    ; ; ... ; 
este o multime discreta (finita)  x1 x2 xn 
Sisteme cu logica nuantata, G. Oltean
 Multime fuzzy triunghiulara - Problema
Reprezentati grafic o mf triunghiulară

X  [0; 15] c  10;   5;   13

Care este expresia analitica a mf?


Care este suportul mf?
Care este centrul mf?

Considerati ca universul discutiei este finit, descris de valorile


X  {0, 4, 5, 7, 8, 10, 11, 12, 14, 15}
 
A(x)   , , , , , , , , , 
 0 4 5 7 8 10 11 12 14 15 

Sisteme cu logica nuantata, G. Oltean


 MF triunghiulară: calcul grad de apartenenta - (implementare Arduino)

Sisteme cu logica nuantata, G. Oltean 9 /27


Sisteme cu logica nuantata, G. Oltean 10 /27
 Multime fuzzy trapezoidala Definită prin punctele de
inflexiune ( , c1 , c2 ,  )

[c1 , c2 ] intervalul de toleranta


 x 
 c   ;   x  c1
 1
1; c1  x  c2
A( x)   A ( x)  
 x ; c x
   c2 2

0; in rest
c1 c2
supp(A)  [;  ]

A – se mai numeste si numar fuzzy trapezoidal


“x este apoximativ in intervalul [c1; c2]”

Sisteme cu logica nuantata, G. Oltean 11 /27


 Multime fuzzy trapezoidala - exemplificare

Reprezentati grafic o mf triunghiulara


X  [0; 15] [c1 , c2 ]  [7 ,11];   5;   11
Care este expresia analitica a mf?
Care este suportul mf?
Care este intervalul de toleranta al mf?

Considerati ca universul discutiei este finit descris de valorile

X  {0, 4, 5, 7, 8, 10, 11, 12, 14, 15}


 
A(x)   , , , , , , , , , 
 0 4 5 7 8 10 11 12 14 15 

Sisteme cu logica nuantata, G. Oltean


 Multime fuzzy trapezoidala - implementare (cod Arduino)

Sisteme cu logica nuantata, G. Oltean 13 /27


Sisteme cu logica nuantata, G. Oltean 14 /27
c – centrul multimii
 Multime fuzzy gaussiana
σ – abaterea standard;
controleaza forma multimii

( x c ) 2

A( x)   A ( x)  e 2 2

c,   0

supp (A)  X

Reprezentati grafic o mf gaussiana cu X  [0; 15] ; c  9;   2

Pentru cazul discret


 
A(x)   , , , , , , , , , 
 0 4 5 7 8 10 11 12 14 15 
Sisteme cu logica nuantata, G. Oltean 15 /27
 Multime fuzzy gaussiana - implementare (cod Arduino)

Sisteme cu logica nuantata, G. Oltean 16 /27


 Multime fuzzy gaussiana - implementare (cod Arduino)

Sisteme cu logica nuantata, G. Oltean 17 /27


Exemplificare
 Pe universal discutiei x=[10;30] se defineste o mf gaussiana, MF
avand parametri:
– centrul multimii c = 20
– abaterea standard σ = 2

Sisteme cu logica nuantata, G. Oltean 18 /27


 Multime fuzzy singleton

c – centrul multimii

supp (A)  c

1, x  c
A( x)   A ( x)  
0, in rest
A se mai numeste si punct fuzzy

Sisteme cu logica nuantata, G. Oltean 19 /27


 Partitie fuzzy
Pentru fiecare element din universul discutiei X, suma gradelor de
apartenenta la toate multimile fuzzy definite peste X este egala cu 1.

N mf definite peste X
Ai , i  1, ... , N
N
x  X , 
i 1
Ai ( x)  1

Cum definim o partitie fuzzy formata din 5 mf pentru variabila


lingvistica “inaltimea unei persoane” considerand X=[140, 220] cm?
Ce valori lingvistice pot fi utilizate?

Care sunt
gradele de
apartenenta ale
valorii de 163
cm, la fiecare
mf?

Sisteme cu logica nuantata, G. Oltean 20 /27


Operatii cu multimi fuzzy
 Intersectia A  B ( x)  A( x )  B ( x) x  X
Ce operator putem folosi pentru conectivul logic “si” ?
A  B ( x)  A( x)  B( x)  min(  A ( x),  B ( x)) x  X

demo matlab – intersectie.m

Sisteme cu logica nuantata, G. Oltean 21 /27


 0.6 0.3 0.6 1.0 0.6 0.3 0.4 
A , , , , , , 
Exemplificarea  2 1 0 1 2 3 4 
intersectiei  0.1 0.3 0.9 1.0 1.0 0.3 0.2 
B , , , , , , 
pentru mf  2 1 0 1 2 3 4 

discrete:  0.1 0.3 0.6 1.0 0.6 0.3 0.2 


A B   , , , , , , 
  2 1 0 1 2 3 4 
Pentru conectivul logic “si” se pot utiliza si alti operatori:

Operatorul utilizat pentru implementarea conectivului logic “si” trebuie sa


fie o norma triunghiulara (t - norma)
Sisteme cu logica nuantata, G. Oltean 22 /27
FACULTATIV
Definitie: O norma triunghiulara (t-norma) este o aplicatie
T : [0,1] x [0, 1]  [0, 1]
simetrica, asociativa, nedescrescatoare in raport cu oricare argument si
T(a, 1) = a, pentru orice a[0, 1]. Cu alte cuvinte satisface proprietatile:
T(x, y) = T(y, x) (simetrie)
T(x, T(y, z)) = T(T(x, y), z) (asociativitate)
T(x, y) ≤ T(x*, y*) daca x ≤ x* si y ≤ y* (monotonie)
T(x, 1) = x, pentru orice x  [0, 1] (identitate)

Sisteme cu logica nuantata, G. Oltean 23 /27


 Reuniunea A  B ( x)  A( x )  B ( x) x  X
Ce operator putem folosi pentru conectivul logic “sau” ?

A  B ( x)  A( x)  B ( x)  max( A ( x),  B ( x)) x  X

demo matlab – reuniune.m

Se utilizeaza la operatia de
agregare in SLF Mamdani

Sisteme cu logica nuantata, G. Oltean 24 /27


 0.6 0.3 0.6 1.0 0.6 0.3 0.4 
A , , , , , , 
Exemplificarea  2 1 0 1 2 3 4 
reuniunii  0.1 0.3 0.9 1.0 1.0 0.3 0.2 
B , , , , , , 
pentru mf  2 1 0 1 2 3 4 

discrete:  0.6 0.3 0.9 1.0 1.0 0.3 0.4 


A B   , , , , , , 
  2  1 0 1 2 3 4 
Pentru conectivul logic “sau” se pot utiliza si alti operatori:

Operatorul utilizat pentru implementarea conectivului logic “sau” trebuie


sa fie o co-norma triunghiulara (t - conorma)
Sisteme cu logica nuantata, G. Oltean 25 /27
FACULTATIV
Definitie: O co-norma triunghiulara (t-conorma) este o aplicatie
S : [0,1] x [0, 1]  [0, 1]
simetrica, asociativa, nedescrescatoare in raport cu oricare argument si
S(a, 0) = a, pentru orice a[0, 1]. Cu alte cuvinte satisface proprietatile:
S(x, y) = S(y, x) (simetrie)
S(x, S(y, z)) = S(S(x, y), z) (asociativitate)
S(x, y) ≤ S(x*, y*) daca x ≤ x* si y ≤ y* (monotonie)
S(x, 0) = x, pentru orice x  [0, 1] (identitate)

Daca T este o t-norma atunci egalitatea


S (a, b)  1  T (1  a,1  b)
defineste o t-conorma si spunem ca S este derivat din T

Sisteme cu logica nuantata, G. Oltean 26 /27


 Complement
A ( x)  1   A ( x), x  X
Ce operator putem folosi pentru
complement (negare) ?

demo matlab –
complement.m

Sunt
satisfacute
legile din
teoria
multimilor
clasice ?
• legea tertului exclus A A  X • NU (Lukasiewicz -da)
• legea noncontradictiei A  A  O • NU (Lukasiewicz -da)
• legile lui De Morgan A B  A  B • DA
Sisteme cu logica nuantata, G. Oltean 27 /27
Exercitiu

Sisteme cu logica nuantata, G. Oltean 28 /27

S-ar putea să vă placă și