Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi...

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

Transcript of Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi...

Page 1: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

1 /27

Page 2: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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 /27

Page 3: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

3 /27

Page 4: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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 /27

Page 5: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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 /27

Page 6: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

Tipuri de mulţimi fuzzyMultimi fuzzy predefinite în Matlab

6 /27

Page 7: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Mulțime fuzzy triunghiulară

==

restin;0

;

;

)()(

xcc

x

cxc

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 aproximativ egal cu a”

Definită prin punctele de

inflexiune ),,( c

multimiicentrul−c

c

Page 8: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy triunghiulara - Problema

13;5;10]15;0[ ==== cX

Reprezentati grafic o mf triunghiulară

Care este expresia analitica a mf?

Care este suportul mf?

Care este centrul 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

Page 9: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

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

9 /27

Page 10: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean 10 /27

Page 11: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy trapezoidala

];[supp =(A)

Definită prin punctele de

inflexiune

11 /27

c1 c2

==

restin;0

;

;1

;

)()(

2

2

21

1

1

xcc

x

cxc

cxc

x

xxA A

intervalul de toleranta],[ 21 cc

),,,( 21 cc

A – se mai numeste si numar fuzzy trapezoidal

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

Page 12: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy trapezoidala - exemplificare

11;5];11,7[],[]15;0[ 21 ==== ccX

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

Page 13: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy trapezoidala - implementare (cod Arduino)

13 /27

Page 14: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean 14 /27

Page 15: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy gaussiana c – centrul multimii

σ – abaterea standard;

controleaza forma multimii

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

0,

)()(2

2

2

)(

==

−−

c

exxA

cx

A

15 /27

Page 16: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy gaussiana - implementare (cod Arduino)

16 /27

Page 17: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

➢Multime fuzzy gaussiana - implementare (cod Arduino)

17 /27

Page 18: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

18 /27

Page 19: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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?

19 /27

Page 20: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

20 /27

Page 21: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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)

21 /27

Page 22: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

22 /27

Page 23: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

23 /27

Page 24: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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)

24 /27

Page 25: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

25 /27

Page 26: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

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

26 /27

Page 27: Mul imi fuzzy - UTClujSisteme cu logica nuantata, G. Oltean Complement Ce operator putem folosi pentru complement (negare) ? A( x) 1 P A ( x), x X Sunt satisfacute legile din teoria

Sisteme cu logica nuantata, G. Oltean

Exercitiu

27 /27