Mulțimi fuzzy

24
Sisteme cu logica nuantata, G. Oltean 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 în forma ei 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 aleator). 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ă?”. 1 /24

Transcript of Mulțimi fuzzy

Page 1: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

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 în forma ei 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 aleator).

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ă?”.

1 /24

Page 2: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Împărţire în clase

Multimi fuzzy

Multimi clasice

“201 este amplificare mare”

adevarat

“199 este amplificare mare”

fals

“201 este amplificare mare”

adevarat – cu grad 0,55

“199 este amplificare mare”

adevarat – cu grad 0,45

Cum impartim in 2 clase (medie, mare)

valorile amplificarilor cuprinse intre 50 si 300?

2 /24

Page 3: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

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 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’)

3 /24

Page 4: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Definire multime fuzzy- cont.

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

A = {(x, A(x))xX}.

variabila

lingvistica

valoare

lingvistica

universul

discutiei

0.55

grad de

apartenenta

functie de

apartenenta

0.3

Suportul unei multimi fuzzy A: Submultimea strictă a lui X ale cărei elemente

au grade de apartenenţă nenule în A: 0|)(supp xXxA A

4 /24

Page 5: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

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

5 /24

Page 6: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

0

0.2

0.4

0.6

0.8

1trapmf gbellmf trimf gaussmf gauss2mf smf

0

0.2

0.4

0.6

0.8

1zmf psigmf dsigmf pimf sigmfsingleton

Tipuri de mulţimi fuzzyMultimi fuzzy predefinite în Matlab

6 /20

Page 7: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy triunghiulară

restin;0

;

;

)()(

xaa

x

axa

x

xxA A

];[supp (A)

(finita) discreta multime o este

},...{ Daca ,2,1 nxxxX

n

n

xxxxA

;...;;

2

2

1

1

A – se mai numeste și numar fuzzy triunghiular

“x este apoximativ egal cu a”

Definită prin punctele de

inflexiune ),,( a

multimiicentrula

7 /20

Page 8: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy triunghiulara - exemplificare

13;5;10]15;0[ aX

Reprezentati grafic o mf triunghiulară

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

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

15

,14

,12

,11

,10

,8

,7

,5

,4

,0

)(xA

8 /20

Page 9: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy triunghiulara - implementare (cod Arduino)

9 /20

Page 10: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy trapezoidala

restin;0

;

;1

;

)()(

xbb

x

bxa

axa

x

xxA A

];[supp (A)

A – se mai numeste si numar fuzzy trapezoidal

“x este apoximativ in intervalul [a; b]”

intervalul de toleranta],[ ba

Definită prin punctele de

inflexiune ),,,( ba

10 /20

Page 11: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy trapezoidala - exemplificare

11;5];11,7[],[]15;0[ baX

Reprezentati grafic o mf triunghiulara

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

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

15

,14

,12

,11

,10

,8

,7

,5

,4

,0

)(xA

11 /20

Page 12: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy trapezoidala - implementare (cod Arduino)

12 /20

Page 13: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy gaussianac – centrul multimii

σ – abaterea standard;

controleaza forma multimii

0,

)()(2

2

2

)(

c

exxA

cx

A

X(A) supp

2;9;]15;0[ cXReprezentati grafic o mf gaussiana cu

15

,14

,12

,11

,10

,8

,7

,5

,4

,0

)(xA

Pentru cazul discret

13 /20

Page 14: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy gaussiana - implementare (cod Arduino)

14 /20

Page 15: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Multime fuzzy singleton

c – centrul multimii

restin,0

,1)()(

cxxxA A

c(A) supp

A se mai numeste si punct fuzzy

15 /20

Page 16: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

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

N

i

A

i

xXx

NiA

i

1

1)(,

,...,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?

16 /20

Page 17: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Operatii cu multimi fuzzy

Intersectia XxxBxAxBA )()()(

Ce operator putem folosi pentru conectivul logic “si” ?

XxxxxBxAxBA BA ))(),(min()()()(

demo matlab – intersectie.m

17 /24

Page 18: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Exemplificarea

intersectiei

pentru mf

discrete:

4

2.0,

3

3.0,

2

0.1,

1

0.1,

0

9.0,

1

3.0,

2

1.0

4

4.0,

3

3.0,

2

6.0,

1

0.1,

0

6.0,

1

3.0,

2

6.0

B

A

4

2.0,

3

3.0,

2

6.0,

1

0.1,

0

6.0,

1

3.0,

2

1.0BA

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)

18 /24

Page 19: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Definitie: O norma triunghiulara (t-norma) este o aplicatie

1] [0,1] [0,x]1,0[: T

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)

FACULTATIV

19 /24

Page 20: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Reuniunea XxxBxAxBA )()()(

Ce operator putem folosi pentru conectivul logic “sau” ?

XxxxxBxAxBA BA ))(),(max()()()(

demo matlab – reuniune.m

Se utilizeaza la operatia de

agregare in SLF Mamdani

20 /24

Page 21: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Exemplificarea

reuniunii

pentru mf

discrete:

4

2.0,

3

3.0,

2

0.1,

1

0.1,

0

9.0,

1

3.0,

2

1.0

4

4.0,

3

3.0,

2

6.0,

1

0.1,

0

6.0,

1

3.0,

2

6.0

B

A

4

4.0,

3

3.0,

2

0.1,

1

0.1,

0

9.0,

1

3.0,

2

6.0BA

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)

21 /24

Page 22: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Definitie: O co-norma triunghiulara (t-conorma) este o aplicatie

1] [0,1] [0,x]1,0[: S

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

)1,1(1),( baTbaS

defineste o t-conorma si spunem ca S este derivat din T

FACULTATIV

22 /24

Page 23: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

ComplementCe operator putem folosi pentru

complement (negare) ?XxxxA A ),(1)(

Sunt

satisfacute

legile din

teoria

multimilor

clasice ?

• legea tertului exclus

• legea noncontradictiei

• legile lui De Morgan BABA

OAA

XAA

• NU (Lukasiewicz -da)

• NU (Lukasiewicz -da)

• DA

demo matlab –

complement.m

23 /24

Page 24: Mulțimi fuzzy

Sisteme cu logica nuantata, G. Oltean

Exercitiu

24 /24