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 1 /7
Împărţire în clase Multimi clasice Cum impartim in clase (medie mare) valorile amplificarilor cuprinse intre 50 si 300? 01 este amplificare mare adevarat 199 este amplificare mare fals Multimi fuzzy 01 este amplificare mare adevarat cu grad 055 199 este amplificare mare adevarat cu grad 045 Sisteme cu logica nuantata /7
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 [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 (01) =055; pentru amplificare de 01 ce aparţine mulţimii fuzzy amplificare mare ) Sisteme cu logica nuantata 3 /7
Definire multime fuzzy - cont. 0.55 0.3 grad de apartenenta functie de apartenenta valoare lingvistica variabila lingvistica universul discutiei Mulţimea fuzzy A este complet determinată de mulţimea perechilor ordonate: A = {(x A ()xx}. 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 x 0 A Sisteme cu logica nuantata 4 /7
Care variabile lingvistice se pretează la împărțire in mf? Ce valori lingvistice se potrivesc? 1. Calitatea servirii la restaurant. Culorile semaforului 3. Înălțimea unei persoane 4. Temperatura 5. Lunile anului Sisteme cu logica nuantata 5 /7
Multimi fuzzy predefinite în Matlab Tipuri de mulţimi fuzzy 1 0.8 0.6 0.4 0. 0 trapmf gbellmf trimf gaussmf gaussmf smf 1 0.8 0.6 0.4 0. 0 zmf singleton psigmf dsigmf pimf sigmf Sisteme cu logica nuantata 6 /7
Multime fuzzy triunghiulară Definită prin punctele de inflexiune ( a ) a centrul multimii x ; x a a x A( A( ; a x a 0; in rest supp(a) [ ; ] A se mai numeste și numar fuzzy triunghiular Daca X { x x... x x este apoximativ egal cu a 1 n este o multime discreta (finita) } A x 1 ; x1 x ;... ; n x n Sisteme cu logica nuantata 7 /7
Multime fuzzy triunghiulara - exemplificare Reprezentati grafic o mf triunghiulară X [ 0; 15] a 10; 5; 13 Care este expresia analitică a mf? Care este suportul mf? Care este centrul mf? Consideraţi că universul discuţiei este finit descris de valorile X {0 4 57 8 10 A( 0 11 4 1 5 14 7 15} 8 10 11 1 14 15 Sisteme cu logica nuantata 8 /7
MF triunghiulară: calcul grad de apartenenta - (implementare Arduino) Sisteme cu logica nuantata 9 /7
Sisteme cu logica nuantata 10 /7
Multime fuzzy trapezoidala Definită prin punctele de inflexiune ( a b ) [ a b] intervalul de toleranta A( ( A x ; a 1; x ; b 0; x a a x b b x in rest supp(a) [ ; ] A se mai numeste si numar fuzzy trapezoidal x este apoximativ in intervalul [a; b] Sisteme cu logica nuantata 11 /7
Multime fuzzy trapezoidala - exemplificare Reprezentati grafic o mf triunghiulara X [ 0; 15] [ a b] [711]; 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 57 8 10 11 1 14 15} A( 0 4 5 7 8 10 11 1 14 15 Sisteme cu logica nuantata 1 /7
Multime fuzzy trapezoidala - implementare (cod Arduino) Sisteme cu logica nuantata 13 /7
Sisteme cu logica nuantata 14 /7
Multime fuzzy gaussiana c centrul multimii σ abaterea standard; controleaza forma multimii A( A ( e ( xc) c 0 supp(a) X Reprezentati grafic o mf gaussiana cu X [ 0; 15]; c 9; Pentru cazul discret A( 0 4 5 7 8 10 11 1 14 15 Sisteme cu logica nuantata 15 /7
Multime fuzzy gaussiana - implementare (cod Arduino) Sisteme cu logica nuantata 16 /7
Multime fuzzy gaussiana - implementare (cod Arduino) Sisteme cu logica nuantata 17 /7
Multime fuzzy singleton c centrul multimii supp(a) c A( A ( 1 0 x c in rest A se mai numeste si punct fuzzy Sisteme cu logica nuantata 18 /7
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 A i x X i 1... N i1 N A i ( 1 Cum definim o partitie fuzzy formata din 5 mf pentru variabila lingvistica inaltimea unei persoane considerand X=[140 0] cm? Ce valori lingvistice pot fi utilizate? Care sunt gradele de apartenenta ale valorii de 163 cm la fiecare mf? Sisteme cu logica nuantata 19 /7
Operatii cu multimi fuzzy Intersectia A B( A( B( x X Ce operator putem folosi pentru conectivul logic si? A B( A( B( min( ( ( ) A B x X demo matlab intersectie.m Sisteme cu logica nuantata 0 /7
Exemplificarea intersectiei pentru mf discrete: 0.6 A 0.1 B A B 0.3 1 0.3 1 0.1 0.6 0 0.9 0 0.3 1 1.0 1 1.0 1 0.6 0 Pentru conectivul logic si se pot utiliza si alti operatori: 0.6 1.0 1.0 1 0.3 3 0.3 3 0.6 0.4 4 0. 4 0.3 3 0. 4 Operatorul utilizat pentru implementarea conectivului logic si trebuie sa fie o norma triunghiulara (t - norma) Sisteme cu logica nuantata 1 /7
Definitie: O norma triunghiulara (t-norma) este o aplicatie T : [01] x[01] [01] 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 T(x T(y z)) = T(T(x y) z) T(x y) T(x * y * ) daca x x* si y y * T(x 1) = x pentru orice x [0 1] FACULTATIV (simetrie) (asociativitate) (monotonie) (identitate) Sisteme cu logica nuantata /7
Reuniunea A B( A( B( Ce operator putem folosi pentru conectivul logic sau? x A B( A( B( max( ( ( ) x X A B X demo matlab reuniune.m Se utilizeaza la operatia de agregare in SLF Mamdani Sisteme cu logica nuantata 3 /7
Exemplificarea reuniunii pentru mf discrete: A B 0.6 A 0.1 B 0.6 0.3 1 0.3 1 0.3 1 0.6 0 0.9 0 0.9 0 1.0 1 1.0 1 1.0 1 0.6 1.0 1.0 Pentru conectivul logic sau se pot utiliza si alti operatori: 0.3 3 0.3 3 0.3 3 0.4 4 0. 4 0.4 4 Operatorul utilizat pentru implementarea conectivului logic sau trebuie sa fie o co-norma triunghiulara (t - conorma) Sisteme cu logica nuantata 4 /7
Definitie: O co-norma triunghiulara (t-conorma) este o aplicatie S : [01] x[01] [01] 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 S(x S(y z)) = S(S(x y) z) S(x y) S(x * y * ) daca x x* si y y * S(x 0) = x pentru orice x [0 1] FACULTATIV (simetrie) (asociativitate) (monotonie) (identitate) Daca T este o t-norma atunci egalitatea S( a b) 1T(1 a1b) defineste o t-conorma si spunem ca S este derivat din T Sisteme cu logica nuantata 5 /7
Complement Ce operator putem folosi pentru complement (negare)? A( 1 A( x X 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 6 /7
Exercitiu Sisteme cu logica nuantata 7 /7