44090502 inteligenta artificial a logica vaga fuzzy

116
Inteligenţă artificială 8. Logica vagă (fuzzy) Florin Leon Universitatea Tehnică „Gh. Asachi” Iaşi Facultatea de Automatică şi Calculatoare http://florinleon.byethost24.com/curs_ia.htm Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Upload: muntean-lucian-alin

Post on 20-Apr-2015

43 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

Inteligenţă artificială

8. Logica vagă (fuzzy) Florin Leon

Universitatea Tehnică „Gh. Asachi” Iaşi

Facultatea de Automatică şi Calculatoare

http://florinleon.byethost24.com/curs_ia.htm

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 2: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

2

Logica vagă

1. Logica clasică şi logica vagă

2. Operaţii cu mulţimi vagi

3. Tipuri de inferenţă

4. Sistem expert fuzzy

5. Controlere fuzzy

6. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 3: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

3

Logica vagă

1. Logica clasică şi logica vagă

2. Operaţii cu mulţimi vagi

3. Tipuri de inferenţă

4. Sistem expert fuzzy

5. Controlere fuzzy

6. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 4: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

4

Incompletitudinea

Logica clasică consideră valoarea de adevăr a propoziţiilor în termeni de adevărat sau fals

Legea terţului exclus

Viaţa de zi cu zi: „cerul este albastru”

Câţiva nori?

Oamenii gândesc mai flexibil, în condiţii de incompletitudine

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 5: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

5

Incertitudine şi imprecizie

Incompletitudinea unei informaţii se exprimă pe două scări:

Scara incertitudinii

Încrederea care i se acordă informaţiei (informaţie certă)

Scara impreciziei

Conţinutul informaţional (informaţie precisă, cu o singură valoare)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 6: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

6

Exemplu: opinii despre rezultatele recensământului din 2002

„Institutul Naţional de Statistică a precizat că la 18 martie 2002, populaţia stabilă a României era de 21.698.181 locuitori.” Ştire sigură şi precisă (completă)

„Populaţia României este în mod sigur sub 22 milioane de locuitori.” Informaţie certă, dar imprecisă (valoarea aparţine intervalului

0 – 22.000.000)

„Cred că populaţia României este de 21.500.000 locuitori.” Informaţie incertă, dar precisă (chiar dacă este incorectă)

„Am impresia că rezultatul era în jur de 21 de milioane.” Informaţie incertă şi imprecisă

„N-am nici cea mai vagă idee.” Non-informaţie, toate valorile sunt egal probabile Grad maxim de incertitudine şi imprecizie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 7: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

7

Logica clasică şi „bunul simţ”

Logica clasică – praguri stricte Limită de înălţime 1,80 m

Ion are 1,81 m este înalt

Vasile are 1,79 m nu este înalt

Nuanţe lingvistice – greu de reprezentat Chiar dacă transformatorul este uşor

supraîncărcat, mai putem menţine puţin această încărcare

Iaşul este un oraş destul de mare

Maşinile electrice nu sunt foarte rapide

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 8: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

8

Limitări

Filosoful cretan spune că toţi cretanii mint

Frizerul satului îi tunde pe toţi cei care nu se tund singuri

În logica clasică acestea sunt paradoxuri sau contradicţii

Ar putea fi considerate însă parţial adevărate

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 9: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

9

Scurt istoric

Jan Łukasiewicz (1930): teoria posibilităţii

De exemplu, posibilitatea ca un om de 1,81 m să fie foarte înalt este 0,86

Max Black (1937): imprecizia este o formă de probabilitate

Când un scaun nu mai este considerat scaun ci buturugă

Procentul de persoane care ar denumi obiectul „scaun”

Definirea unei mulţimi vagi simple şi a unor operaţii

Lotfi Zadeh (1965): “Fuzzy Sets” (Mulţimi vagi)

Sistem formal de logică matematică

Includerea termenilor din limbajul natural

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 10: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

10

Exemplu

Degree of Membership

Fuzzy

Mark

John

Tom

Bob

Bill

1

1

1

0

0

1.00

1.00

0.98

0.82

0.78

Peter

Steven

Mike

David

Chris

Crisp

1

0

0

0

0

0.24

0.15

0.06

0.01

0.00

Name Height, cm

205

198

181

167

155

152

158

172

179

208

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 11: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

11

Comparaţie

(a) Boolean Logic. (b) Multi-valued Logic.

0 1 10 0.2 0.4 0.6 0.8 100 1 10

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 12: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

12

Logica vagă

1. Logica clasică şi logica vagă

2. Operaţii cu mulţimi vagi

3. Tipuri de inferenţă

4. Sistem expert fuzzy

5. Controlere fuzzy

6. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 13: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

13

Noţiuni de bază

Universul de discurs

Axa X: domeniul tuturor valorilor posibile aplicabile unei variabile

În exemplul anterior: înălţimea

Gradul de apartenenţă

Axa Y

Valori în intervalul [0,1]

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 14: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

14

Formalizare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 15: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

15

Mulţimi multiple

150 210170 180 190 200160

Height, cmDegree ofMembership

Tall Men

150 210180 190 200

1.0

0.0

0.2

0.4

0.6

0.8

160

Degree ofMembership

Short Average ShortTall

170

1.0

0.0

0.2

0.4

0.6

0.8

Fuzzy Sets

Crisp Sets

Short Average

Tall

Tall

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 16: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

16

Suport

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 17: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

17

Înălţimea

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 18: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

18

Nucleu

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 19: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

19

Incluziuni. Egalitate

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 20: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

20

Numere fuzzy

De multe ori, oamenii nu pot caracteriza precis informaţiile numerice, folosind formulări precum „aproape 0”, „în jur de 100” etc.

În teoria mulţimilor fuzzy, aceste numere pot fi reprezentate ca submulţimi fuzzy ale mulţimii numerelor reale

Un număr fuzzy A este o mulţime fuzzy a mulţimii numerelor reale, cu o funcţie de apartenenţă convexă şi continuă şi suport mărginit

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 21: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

21

Număr fuzzy triunghiular

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 22: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

22

Număr fuzzy triunghiular

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 23: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

23

Număr fuzzy trapezoidal

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 24: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

24

Număr fuzzy trapezoidal

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 25: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

25

Funcţia gaussiană

„cvasi-număr fuzzy”

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 26: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

26

Funcţia Bell generalizată

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 27: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

27

Funcţia S

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 28: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

28

Funcţia Π (simetrică)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 29: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

29

Funcţia Π (asimetrică)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 30: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

30

Tăietura alfa

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 31: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

31

Funcţii aritmetice fuzzy

Pentru 2 numere interval fuzzy [a,b] şi [d,e]:

Adunarea [a,b] + [d,e] = [a+d, b+e]

Scăderea [a,b] - [d,e] = [a-e, b-d]

Înmulţirea [a,b] · [d,e] = [min(a·d,a·e,b·d,b·e), max(a·d,a·e,b·d,b·e)]

Împărţirea [a, b] / [c, d] = [a, b] · [1/d, 1/c] =

[min(a/c, a/d, b/c, b/d), max(a/c, a/d, b/c, b/d)]

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 32: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

32

Restrictori

engl. “hedge”, gard viu

Mulţimile fuzzy pot reprezenta în mod cantitativ termeni lingvistici vagi

În vorbirea curentă, oamenii folosesc o serie de adverbe pentru nuanţarea acestora, precum „foarte”, „aproape”, „oarecum” etc.

Teoria mulţimilor fuzzy face posibilă reprezentarea lor cu ajutorul unor restrictori care modifică matematic funcţia de apartenenţă a mulţimii fuzzy considerată

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 33: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

33

Concentrarea

Concentrarea („foarte”) are ca efect reducerea valorilor de apartenenţă ale elementelor cu grad de apartenenţă mici

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 34: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

34

Puterea

Puterea („foarte foarte”) este o extensie a concentraţiei

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 35: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

35

Dilatarea

Dilatarea („oarecum”) dilată elementele fuzzy prin mărirea valorilor de apartenenţă ale elementelor cu grade de apartenenţă mici

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 36: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

36

Intensificarea

Intensificarea („într-adevăr”) are ca efect mărirea gradelor de apartenenţă de peste 0,5 şi micşorarea celor sub 0,5

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 37: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

37

Operaţii cu mulţimi fuzzy

Operaţiile cu mulţimile fuzzy sunt o extindere a celor din logica clasică

Dacă mulţimile fuzzy implicate au grade de apartenenţă 0 şi 1, semnificaţia operaţiilor este aceeaşi ca în teoria clasică a mulţimilor, de aceea şi simbolurile utilizate sunt aceleaşi

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 38: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

38

Norme triunghiulare

Aceste operaţii pot fi definite cu ajutorul unor funcţii numite t-normă (T) şi t-conormă (S)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 39: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

39

Exemple

Există foarte multe familii de norme !

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 40: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

40

Intersecţia

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 41: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

41

Reuniunea

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 42: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

42

Complementul

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 43: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

43

Exemple Mulţimi cu doar 2 elemente

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 44: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

44

Logica vagă

1. Logica clasică şi logica vagă

2. Operaţii cu mulţimi vagi

3. Tipuri de inferenţă

4. Sistem expert fuzzy

5. Controlere fuzzy

6. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 45: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

45

Reguli fuzzy

Lotfi Zadeh (1973)

Reprezentarea cunoştinţelor umane sub formă de reguli fuzzy

DACĂ x este A ATUNCI y este B

x şi y sunt variabile lingvistice

A şi B sunt valori lingvistice determinate de mulţimile fuzzy în universurile de discurs X şi Y

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 46: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

46

Exemplu

Regula 1 DACĂ Viteza este Rapidă

ATUNCI Distanţa-de-oprire este Mare

Regula 2 DACĂ Viteza este Înceată

ATUNCI Distanţa-de-oprire este Mică

Universuri de discurs Viteza (în km/h)

Distanţa-de-oprire (în m)

Mulţimi fuzzy Viteză Înceată, Viteză Rapidă

Distanţă Mică, Distanţă Mare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 47: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

47

Selecţia monotonă

IF Height is Tall THEN Weight is Heavy

Tall menHeavy men

180

Degree ofMembership

1.0

0.0

0.2

0.4

0.6

0.8

Height, cm

190 200 70 80 100160

Weight, kg

120

Degree ofMembership

1.0

0.0

0.2

0.4

0.6

0.8

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 48: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

48

Antecedenţi şi consecvenţi multipli

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 49: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

49

Modus Ponens generalizat

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 50: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

50

Tipuri de implicaţie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 51: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

51

Inferenţa Mamdani (max-min)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 52: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

52

Inferenţa Mamdani (II)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 53: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

53

Inferenţa Mamdani (III)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 54: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

54

Inferenţa Larsen (max-produs)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 55: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

55

Inferenţa Larsen (II)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 56: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

56

Inferenţa Larsen (III)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 57: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

57

Defuzzificarea

Reprezintă obţinerea unei valori stricte dintr-o mulţime fuzzy, ca valoare reprezentativă

Există mai multe metode: Centrul de greutate

Media maximului

Cel mai mic maxim

Cel mai mare maxim

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 58: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

58

Centrul de greutate

Numit şi centroid

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 59: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

59

Inferenţa Mamdani cu reguli multiple

Inferenţa presupune 4 paşi

Fuzzificarea variabilelor de intrare

Evaluarea regulilor

Agregarea ieşirilor regulilor

Defuzzificarea

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 60: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

60

Exemplu

O problemă cu 2 intrări şi 1 ieşire, 3 reguli

Regula 1 Regula 1 IF x is A3 IF project-funding is adequate OR y is B1 OR project-staffing is small THEN z is C1 THEN risk is low Regula 2 Regula 2 IF x is A2 IF project-funding is marginal AND y is B2 AND project-staffing is large THEN z is C2 THEN risk is normal Regula 3 Regula 3 IF x is A1 IF project-funding is inadequate THEN z is C3 THEN risk is high

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 61: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

61

Pasul 1. Fuzzificarea

Pentru intrările stricte date x1 şi y1 (project funding şi project staffing) se determină gradele de apartenenţă în mulţimile corespunzătoare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 62: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

62

Pasul 2. Evaluarea regulilor

Intrările fuzzificate se aplică antecedenţilor (premiselor) regulilor

Dacă o regulă are antecedenţi multipli, se aplică operatorii fuzzy de intersecţie sau reuniune

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 63: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

63

Evaluarea de tip Mamdani

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 64: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

64

Pasul 3. Agregarea ieşirilor

Agregarea presupune reunirea ieşirilor tuturor regulilor, rezultând câte o mulţime fuzzy pentru fiecare variabilă de ieşire

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 65: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

65

Pasul 4. Defuzzificarea

Mulţimile fuzzy agregate sunt transformate în valori stricte după o metodă de defuzzificare (de exemplu metoda centrului de greutate)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 66: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

66

Inferenţa TSK

Inferenţele de tip Mamdani sau Larsen presupun integrarea funcţiilor de apartenenţă pentru defuzzificare, ceea ce nu este foarte eficient din punct de vedere computaţional

Inferenţa de tip Takagi-Sugeno-Kang este de forma:

DACĂ x este A ŞI y este B ATUNCI z este f(x,y)

f este o funcţie matematică

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 67: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

67

Inferenţa Sugeno

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 68: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

68

Exemplu

Presupunem nişte funcţii de apartenenţă oarecare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 69: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

69

Exemplu

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 70: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

70

Modelul de ordin zero

Cel mai utilizat model de inferenţă TSK este modelul Sugeno de ordin zero, în care ieşirea fiecărei reguli fuzzy este o constantă DACĂ x este A ŞI y este B ATUNCI z este k

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 71: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

71

Evaluarea de tip Sugeno de ordin zero

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 72: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

72

Agregarea ieşirilor şi defuzzificarea

Media ponderată

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 73: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

73

Mamdani sau Sugeno?

Metoda Mamdani

Utilizată pe scară largă pentru reprezentarea cunoştinţelor expert

Permite descrierea mai intuitivă a cunoştinţelor

Are însă dezavantajul unui efort de calcul mai mare

Metoda Sugeno

Eficientă computaţional

Rezultate bune în probleme de optimizare şi tehnici adaptive

Mai potrivită pentru probleme de control, în special pentru sisteme neliniare dinamice

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 74: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

74

Logica vagă

1. Logica clasică şi logica vagă

2. Operaţii cu mulţimi vagi

3. Tipuri de inferenţă

4. Sistem expert fuzzy

5. Controlere fuzzy

6. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 75: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

75

Studiu de caz

Un centru de service păstrează componente de schimb şi repară componente defecte

Clienţii aduc un component defect şi primesc o piesă de schimb de acelaşi tip

Componentele defecte sunt reparate şi repuse în circuit

Obiectivul sistemului expert este de a ajuta managerul în luarea deciziilor astfel încât clienţii să rămână mulţumiţi

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 76: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

76

Procesul de dezvoltare a unui sistem expert fuzzy

Specificarea problemei şi definirea variabilelor lingvistice

Determinarea mulţimilor fuzzy

Construirea regulilor fuzzy

Codarea mulţimilor, regulilor şi procedurilor de inferenţă

Evaluarea şi rafinarea sistemului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 77: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

77

Specificarea problemei şi definirea variabilelor lingvistice

Există 4 variabile lingvistice Timpul mediu de aşteptare (întârzierea

medie) m

Factorul de utilizare a reparaţiilor = nr. clienţi veniţi / nr. clienţi plecaţi

Numărul de angajaţi s

Numărul iniţial de piese de schimb n Aceasta este ieşirea sistemului, trebuie

determinat: n = f(m, , s)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 78: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

78 Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 79: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

79

Determinarea mulţimilor fuzzy

De obicei se utilizează numere fuzzy triunghiulare sau trapezoidale pentru cunoştinţele expert

În general sunt reprezentări adecvate şi suficiente pentru cunoştinţe

Se simplifică şi procesul de calcul: formule simple pentru determinarea gradelor de apartenenţă

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 80: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

80

Întârzierea medie m

O întârziere mai mare nu este acceptabilă

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 81: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

81

Numărul de angajaţi s

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 82: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

82

Factorul de utilizare a reparaţiilor

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 83: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

83

Numărul de piese de schimb n

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 84: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

84

Construirea regulilor fuzzy

Expertul trebuie să furnizeze cunoştinţele privind regulile

„Expertul” poate fi orice sursă de cunoaştere: cărţi, baze de date, scheme logice, comportamente umane observate etc.

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 85: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

85

Reprezentarea regulilor prin memorii asociative fuzzy

m

s

M

RL

VL

S

RS

L

VS

S

M

VS S M

L

M

S

Valorile lui n

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 86: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

86

Rule m s n Rule m s n Rule m s n

1 VS S L VS 10 VS S M S 19 VS S H VL

2 S S L VS 11 S S M VS 20 S S H L

3 M S L VS 12 M S M VS 21 M S H M

4 VS M L VS 13 VS M M RS 22 VS M H M

5 S M L VS 14 S M M S 23 S M H M

6 M M L VS 15 M M M VS 24 M M H S

7 VS L L S 16 VS L M M 25 VS L H RL

8 S L L S 17 S L M RS 26 S L H M

9 M L L VS 18 M L M S 27 M L H RS

Tabela de reguli

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 87: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

87

1. If (utilisation_factor is L) then (number_of_spares is S)

2. If (utilisation_factor is M) then (number_of_spares is M)

3. If (utilisation_factor is H) then (number_of_spares is L)

4. If (mean_delay is VS) and (number_of_servers is S) then (number_of_spares is VL)

5. If (mean_delay is S) and (number_of_servers is S) then (number_of_spares is L)

6. If (mean_delay is M) and (number_of_servers is S) then (number_of_spares is M)

7. If (mean_delay is VS) and (number_of_servers is M) then (number_of_spares is RL)

8. If (mean_delay is S) and (number_of_servers is M) then (number_of_spares is RS)

9. If (mean_delay is M) and (number_of_servers is M) then (number_of_spares is S)

10.If (mean_delay is VS) and (number_of_servers is L) then (number_of_spares is M)

11.If (mean_delay is S) and (number_of_servers is L) then (number_of_spares is S)

12.If (mean_delay is M) and (number_of_servers is L) then (number_of_spares is VS)

Baza de reguli 1

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 88: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

88

VS VS VSVS VS VS

VS VS VS

VL L M

HS

VS VS VSVS VS VS

VS VS VSM

VS VS VSVS VS VS

S S VSL

s

LVS S M

m

MH

VS VS VS

LVS S M

S

m

VS VS VSM

S S VSL

s

S VS VS

MVS S M

m

VS S M

m

S

RS S VSM

M RS SL

s

S

M M SM

RL M RSL

s

Baza de reguli 2: memoria asociativă fuzzy

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 89: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

89

Implementarea sistemului

Folosind un limbaj de programare

De exemplu: C#, Java, C++ etc.

Folosind un instrument de dezvoltare specializat

De exemplu: Matlab Fuzzy Toolbox, Fuzzy Knowledge Builder etc.

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 90: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

90

Evaluare şi rafinare

Este cea mai laborioasă fază

Reprezintă validarea sistemului în raport cu cerinţele specificate

Unele instrumente pot genera suprafeţe de decizie care ajută la analizarea performanţelor sistemului

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 91: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

91

Baza de reguli 1

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.2

0.3

0.4

0.5

0.6

number_of_serversmean_delay

nu

mb

er_

of_

sp

are

s

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 92: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

92

Baza de reguli 1

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.2

0.3

0.4

0.5

0.6

utilisation_factormean_delay

nu

mb

er_

of_

sp

are

s

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 93: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

93

Baza de reguli 2

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.15

0.2

0.25

0.3

0.35

number_of_serversmean_delay

nu

mbe

r_o

f_spa

res

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 94: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

94

Baza de reguli 2

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.2

0.3

0.4

utilisation_factormean_delay

nu

mb

er_

of_

sp

are

s

0.5

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 95: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

95

Rafinarea

Dacă performanţele nu sunt satisfăcătoare, se pot include în model mulţimi suplimentare

De exemplu Rather Small şi Rather Large pe universul de discurs al numărului de angajaţi s

Se extinde şi baza de reguli

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 96: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

96

Mulţimile modificate pentru s

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 97: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

97

Baza de reguli 3: memoria asociativă fuzzy

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

S S VS

S S VS

VL L M

VL RL RS

M M S

RL M RS

L M RS

HS

M

RL

L

RS

s

LVS S M

m

MH

VS VS VS

VS VS VS

VS VS VS

S S VS

S S VS

LVS S M

S

M

RL

L

RS

m

s

S VS VS

S VS VS

RS S VS

M RS S

M RS S

MVS S M

m

VS S M

m

S

M

RL

L

RS

s

S

M

RL

L

RS

s

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 98: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

98

Baza de reguli 3

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.15

0.2

0.25

0.3

0.35

number_of_serversmean_delay

nu

mb

er_

of_

sp

are

s

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 99: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

99

Baza de reguli 3

0

0.2

0.4

0.6

0.8

1

0

0.2

0.4

0.6

0.2

0.3

0.4

utilisation_factormean_delay

nu

mbe

r_o

f_spa

res

0.5

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 100: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

100

Rafinarea sistemelor fuzzy (I)

Se analizează variabilele de intrare şi ieşire şi dacă este nevoie se redefinesc domeniile de definiţie

Se analizează mulţimile fuzzy şi dacă este nevoie se adaugă mulţimi suplimentare pe universul de discurs Mulţimile „mari” conduc la un comportament nenuanţat al

sistemului

Trebuie să existe o suprapunere suficientă în mulţimile vecine Se recomandă o suprapunere de 25%-50% din baze

(pentru numerele triunghiulare şi trapezoidale)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 101: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

101

Rafinarea sistemelor fuzzy (II)

Se analizează regulile existente şi dacă este nevoie se adaugă noi reguli în baza de reguli

Se examinează baza de reguli în vederea aplicării de restrictori pentru anumite cazuri

Se pot modifica formele unor mulţimi

De obicei, sistemele fuzzy sunt tolerante la aproximările de formă

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 102: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

102

Logica vagă

1. Logica clasică şi logica vagă

2. Operaţii cu mulţimi vagi

3. Tipuri de inferenţă

4. Sistem expert fuzzy

5. Controlere fuzzy

6. Concluzii

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 103: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

103

Exemple

Sistem de control fuzzy pentru stabilizarea pendulului inversat

Sistem de control fuzzy pentru simularea funcţionării unei macarale

Sistem de control fuzzy pentru conducerea unei maşinuţe de golf

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 104: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

104

Pendulul inversat

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 105: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

Intrări

Unghiul θ

Viteza unghiulară dθ/dt

Ieşire

Viteza bazei u

Pendulul inversat

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 106: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

Mulţimile fuzzy

θ dθ/dt

u

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 107: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

θ = 1 (x1)

dθ/dt = -4 (x2)

Exemplu: fuzzificare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 108: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

Consecvenţii fuzzy şi reuniunea lor Centroidul reuniunii (-2) este ieşirea strictă

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 109: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

109 Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 110: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

110

Alt exemplu de implementare

http://www.erudit.de/erudit/demos/cartball/index.htm

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 111: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

111

Macaraua

http://www.intelligent-systems.info/neural_fuzzy/loadsway/LoadSway.htm

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 112: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

112

Macaraua - reguli

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 113: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

113

Maşinuţa de golf

vezi suportul de curs

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 114: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

114

Alte aplicaţii din „lumea reală”

Subsisteme de autovehicule, transmisie automată, ABS

Control automat al trenului monorail din Tokyo

Aparate de aer condiţionat Motorul de animaţie

Massive Aparate de fotografiat Prelucrarea imaginilor

(de ex. detecţia muchiilor) Recunoaşterea modelelor

Lifturi

Maşini de spălat vase

Maşini de spălat, alte electrocasnice

Filtre de limbaj pe forumuri şi camere de discuţii

Jocuri video

Microcontrolere şi microprocesoare (de ex. Freescale 68HC12)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 115: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

115

Mulţimile fuzzy şi probabilităţile

Probabilităţile se ocupă de situaţii care ar putea să apară

Mulţimile fuzzy modelează situaţii care există sigur, însă nu pot fi încadrate exact într-o categorie

O sticlă conţine o otravă mortală cu probabilitatea 10%

Altă sticlă are otravă cu o concentraţie de 10%

Concentraţia maximă admisă de otravă, care poate fi băută fără probleme, este de 20%

Din care sticlă aţi bea?

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

Page 116: 44090502 Inteligenta Artificial A Logica Vaga Fuzzy

116

Concluzii

Logica fuzzy oferă posibilitatea de a reprezenta şi raţiona cu cunoştinţe comune, formulate în mod obişnuit şi de aceea şi-a găsit aplicabilitatea în numeroase domenii

Logica fuzzy are o valoare deosebită şi în aplicaţiile de control automat unde este dificil sau imposibil de dezvoltat un sistem de control tradiţional

Dificultăţile apar la determinarea funcţiilor de apartenenţă şi la reglarea parametrilor

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm