Sunteți pe pagina 1din 10

Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

MA INA DE SP LAT CU REGULI FUZZY

Metodele fuzzy sunt o alternativ de proiectare pentru procese i sisteme foarte


complexe. Variabilele fuzzy sau lingvistice (mare, fierbinte, ieftin) nu descriu datele numeric, ci
printr-o func ie de apartenen . 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.
Una dintre aplica iile cele mai importante în practic ale sistemelor cu logic fuzzy se
refer la folosirea acestora ca i sisteme de control ale proceselor.
Pentru a automatiza procesul de selec ie a duratei de sp lare, putem folosi senzori care s
detecteze parametrii pe baza c rora omul însu i selecteaz timpul necesar sp l rii (adic , senzori
de detec ie a volumului hainelor de sp lat, a gradului i tipului de murd rie). Apoi, pe baza
acestor date, se poate determina timpul de sp lare.
Din nefericire, este dificil sau aproape imposibil de formulat o rela ie matematic exact
între volumul hainelor i gradul i tipul de murd rie, pe de o parte, i timpul de sp lare necesar,
pe de alt parte.
Ca urmare, aceast problem a r mas nerezolvat pân de curând: utilizatorul trebuia pur
i simplu s seteze manual timpul de sp lare, prin încerc ri i pe baza experien ei. Aceast
problem o rezolv folosirea logicii fuzzy.
Obiectivul aplica iei din lucrare este proiectarea unui sistem de control cu logic
fuzzy pentru o ma in de sp lat, care s dea ca ie ire timpul de sp lare corect în func ie de
datele de intrare despre hainele care trebuie sp late, în condi iile în care nu avem la
dispozi ie un model precis al leg turii dintre intrarea i ie irea sistemului de control.
Schema-bloc a sistemului de control fuzzy este cea din figura 2.1.

grad de murd rie


Sistem de timp de sp lare
control fuzzy
tip de murd rie

Fig. 3.1. Schema bloc a sistemului de control fuzzy

Sistemul de control fuzzy are dou intr ri: o intrare pentru gradul de murd rie a hainelor,
i a doua intrare pentru tipul de murd rie a hainelor. Valorile numerice ale celor dou intr ri pot
fi ob inute de la un singur senzor optic:
gradul de murd rie poate fi determinat din transparen a apei în care se spal hainele; cu
cât sunt mai murdare hainele, cu atât transparen a apei va fi mai mic .
tipul de murd rie poate fi determinat din timpul necesar apei în care se înmoaie hainele
s ajung cu transparen a la satura ie. Satura ia transparen ei apei este momentul de timp
dup care modificarea transparen ei apei este aproape zero. De exemplu, hainele cu pete
de gr sime necesit un timp mai lung pân la saturarea transparen ei apei, deoarece
gr simea este mai greu solubil decât alte forme de murd rie.

Rezolvarea problemei const în parcurgerea urm torilor pa i:


1. Se deschide aplica ia Matlab.

1/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

2. Se tasteaz comanda fuzzy. Apare interfa a:

Se constat c exist o singur intrare (imput1) i o singur ie ire (output2). Problema


noastr are dou intr ri (grad de murd rire i tip de murd rire) i o ie ire (timp de sp lare).
Se mai adaug o nou intrare din meniul Edit→ →Add imput.

3. Se d click pe zona galben de la imput1 i se schimb numele din imput1 în


grd_murdarie.
4. Se d click pe zona galben de la imput2 i se schimb numele din imput2 în
tip_murdarie.
5. Se d click pe zona albastr de la output1 i se schimb numele din output1 în timp.
6. Din meniul File selecteaz Save to workspace as... i în fereastra care apare la
Workspace variable scrie în c su a alb Masina de spalat i apoi apas butonul OK.

În acest moment interfa a de lucru trebuie s arate astfel:

2/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

7. Pentru definirea func iilor de apartenen se merge în modulul View →Edit


membership functions...
8. Se selecteaz c su a galben a variabilei grd_murdarie. Se seteaz domeniul (Range
i Display Range) la valorile [0 100].
9. Din meniul Edit se selecteaz Add MFs... În fereastra care apare se selecteaz func ia
de apartenen trimf.
10. Se selecteaz curba cu numele mf1 se schimb numele în mic i se seteaz parametrii
la domeniul [0 0 50]. Se selecteaz curba cu numele mf2 se schimb numele în mediu i se
seteaz parametrii la domeniul [0 50 100]. Se selecteaz curba cu numele mf3 se schimb
numele în mare i se seteaz parametrii la domeniul [50 100 100].
Cele trei mul imi fuzzy pentru variabila de intrare grd_murdarie sunt:

11. Se selecteaz c su a galben a variabilei tip_murdarie. Se seteaz domeniul (Range


i Display Range) la valorile [0 100].
12. Din meniul Edit se selecteaz Add MFs... În fereastra care apare se selecteaz
func ia de apartenen trimf.
13. Se selecteaz curba cu numele mf1 se schimb numele în negras i se seteaz
parametrii la domeniul [0 0 50]. Se selecteaz curba cu numele mf2 se schimb numele în mediu
i se seteaz parametrii la domeniul [0 50 100]. Se selecteaz curba cu numele mf3 se schimb
numele în gras i se seteaz parametrii la domeniul [0 100 100].
Cele trei mul imi fuzzy pentru variabila de intrare tip_murdarie sunt:

14. Se selecteaz c su a alabastr a variabilei timp. Se seteaz domeniul (Range i


Display Range) la valorile [0 60].

3/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

15. Din meniul Edit se selecteaz Add MFs... În fereastra care apare se selecteaz
func ia de apartenen trimf i un num r de 5 func ii.
16. Se selecteaz curba cu numele mf1 se schimb numele în fscurt i se seteaz
parametrii la domeniul [0 8 12]. Se selecteaz curba cu numele mf2 se schimb numele în scurt
i se seteaz parametrii la domeniul [8 12 20]. Se selecteaz curba cu numele mf3 se schimb
numele în mediu i se seteaz parametrii la domeniul [12 20 40]. Se selecteaz curba cu numele
mf4 se schimb numele în lung i se seteaz parametrii la domeniul [20 40 60]. Se selecteaz
curba cu numele mf5 se schimb numele în flung i se seteaz parametrii la domeniul
[40 60 60].
Cele cinci mul imi fuzzy pentru variabila de ie ire timp sunt:

→Edit Rules...
17. Se recurge apoi la editarea regulilor din meniul View→
Regulile sunt urm toarele:
a. If grd_murdarie este mare and tip_murdarie este gras then timpul este flung.
b. If grd_murdarie este mediu and tip_murdarie este gras then timpul este lung.
c. If grd_murdarie este mic and tip_murdarie este gras then timpul este lung.
d. If grd_murdarie este mare and tip_murdarie este mediu then timpul este lung.
e. If grd_murdarie este mediu and tip_murdarie este mediu then timpul este
mediu.
f. If grd_murdarie este mic and tip_murdarie este mediu then timpul este mediu.
g. If grd_murdarie este mare and tip_murdarie este negras then timpul este mediu.
h. If grd_murdarie este mediu and tip_murdarie este negras then timpul este scurt.
i. If grd_murdarie este mic and tip_murdarie este nrgras then timpul este fscurt.

4/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

Dup scrierea regulilor se poate alege formatul de scriere a regulilor din meniul
→ Format→
Options→ → symbolic sau indexed.

În acest moment sistemul fuzzy este complet definit. Pentru a vedea rezolvarea problemei
→View Rules...
în fereastra Rule Editor se merge la View→
Se modific cele dou intr ri (prin mi carea liniilor ro ii) i în consecin se va
modifica i valoarea timpului de sp lare.
Pentru a vedea rezolvarea grafic a problemei în fereastra Rule Editor se merge la
View→ →View Surface...

5/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

Modul de calculare a timpului de sp lare în func ie de gradul de murd rire i tipului


de murd rire

Variabilele de intrare identificate sunt: grad de murd rire i tipul de murd rire. Pentru
gradul de murd rire sunt definite 3 domenii:
Variabila lingvistic Mic Mediu Mare
Gradul de 0 0 50
murd rire 0 50 100
[%] 50 100 100
Func ia de apartenen triunghi - trimf triunghi - trimf triunghi - trimf

Func iile de apartenen pentru gradul de murd rire, sunt prezentate în figura 3.2.

Fig. 3.2. Func iile de apartenen pentru gradul de murdarire

Pentru tipul de murd rire sunt definite 3 domenii:


Variabila lingvistic Negras Mediu Gras
Tip de 0 0 50
murd rire 0 50 100
[%] 50 100 100
Func ia de apartenen triunghi - trimf triunghi - trimf triunghi - trimf

Func iile de apartenen pentru tipul de murd rire, sunt prezentate în figura 3.3.

Fig. 3.3. Func iile de apartenen pentru tipul de murd rire

6/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

Variabila de ie ire identificat timpul de sp lare. Pentru timp sunt definite 5 domenii:
Variabila lingvistic fscurt scurt mediu lung flung
0 8 12 20 40
Timpul de sp lare
8 12 20 40 60
[min]
12 20 40 60 60
triunghi - triunghi - triunghi - triunghi - triunghi -
Func ia de apartenen
trimf trimf trimf trimf trimf

Func iile de apartenen pentru timp, sunt prezentate în figura 3.4.

Fig. 3.4. Func iile de apartenen pentru timp

Baza de reguli a problemei poate fi reprezentat ca o matrice ob inut prin combinarea


mul imilor fuzzy pentru fiecare intrare.
Grd. de murd.
Tip Mic Mediu Mare
de murd.
Negras Timpul este fscurt Timpul este scurt Timpul este mediu

Mediu Timpul este mediu Timpul este mediu Timpul este lung

Gras Timpul este lung Timpul este lung Timpul este flung

Regulile sistemului fuzzy sunt:


1. If grd_murdarie este mare and tip_murdarie este gras then timpul este flung.
2. If grd_murdarie este mediu and tip_murdarie este gras then timpul este lung.
3. If grd_murdarie este mic and tip_murdarie este gras then timpul este lung.
4. If grd_murdarie este mare and tip_murdarie este mediu then timpul este lung.
5. If grd_murdarie este mediu and tip_murdarie este mediu then timpul este mediu.
6. If grd_murdarie este mic and tip_murdarie este mediu then timpul este mediu.
7. If grd_murdarie este mare and tip_murdarie este negras then timpul este mediu.
8. If grd_murdarie este mediu and tip_murdarie este negras then timpul este scurt.
9. If grd_murdarie este mic and tip_murdarie este negras then timpul este fscurt.

Pentru a pune în eviden modul de calcul a valorilor pentru gradul de murd rire i
tipul de murd rire vom considera urm toarele valori pentru intrare: gradul de
murdarire=40%; tip de murd rire = 60%.

7/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

Primul pas const în determinare func iilor de apartenen care sunt activate pentru
gradul de murd rire i tipul de murd rire de mai sus i ce valori au.
Pentru gradul de murd rire pentru valoarea de 40% se constat c se activeaz dou
func ii: Mic i Mediu.

0,75

0,25

Fig. 3.5. Pentru gradul de murd rire de 40% sunt activate 2 func ii Mic i Mediu

Matematic se poate scrie:


fmic(40%)=0,25
fmediu(40%)=0,75
Pentru tipul de murd rire pentru valoarea de 60% se constat c se activeaz dou func ii:
Mediu i Gras.

0,80

0,30

Fig. 3.6. Pentru tipul de murd rire de 60% se constat c se activeaz dou func ii: Mediu i Gras

Matematic se poate scrie:


fmediu(60%)=0,80
fgras(60%)=0,30

Rezultatele ob inute conduc la activarea a 4 reguli.


Grd. de murd.
Tip Mic Mediu Mare
de murd.
Negras Timpul este fscurt Timpul este scurt Timpul este mediu
Mediu Timpul este mediu Timpul este mediu Timpul este lung
Gras Timpul este lung Timpul este lung Timpul este flung

8/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

Regula 2: If grd_murdarie este mediu and tip_murdarie este gras then timpul este
lung.
fmediu I fgras = fmediu ∩ fgras = min(0,75;0,30)=0,30
Regula 3: If grd_murdarie este mic and tip_murdarie este gras then timpul este
lung.
fmic I fgras = fmic ∩ fgras = min(0,25;0,30)=0,25
Regula 5: If grd_murdarie este mediu and tip_murdarie este mediu then timpul este
mediu.
fmediu I fmediu = fmediu ∩ fmediu = min(0,75;0,80)=0,75
Regula 6: If grd_murdarie este mic and tip_murdarie este mediu then timpul este
mediu.
fmic I fmediu = fmic ∩ fmediu = min(0,25;0,80)=0,25

Având aceste 4 valori încerc m s afl m valoare pentru timpul de sp lare. Regula 2 i 3
este asociat cu Timp lung, iar regula 5 i 6 este asociat cu Timp Mediu.
Mul imea fuzzy denumit Timp Lung este activat de valorile 0,30 i 0,25. C utând
maximul dintre cele dou g sim valoarea 0,30.
Mul imea fuzzy denumit Timp Mediu este activat de valorile 0,75 i 0,25. C utând
maximul dintre cele dou g sim valoarea 0,75.

0,75

0,30

0,75

0,30

Fig. 3.7. Valoarea în minute pentru timpul de sp lare

9/10
Tehnici de inteligen artificial Laborator 3 - Ma ina de sp lat cu reguli fuzzy

Valoarea de ie ire pentru timp în ore se ob ine în urma defuzific rii de exemplu prin
metoda centroidului. Opera ia de selec ie a valorii la ie ire, adic , de defuzzificarea rezultatului
fuzzy al inferen ei fuzzy, este centrul ariei. Aceast opera ie este foarte cunoscut în literatur
sub numele de defuzzificare centroid. Formula dup care se calculeaz valoarea ie irii, pe baza
mul imii fuzzy de ie ire, în cazul folosirii metodei de defuzzificare centroid este urm toarea:
60 60
t ⋅ f (t ) t ⋅ f (t )
t0 = t =0
60
, sau în cazul discret t 0 = t =0
60
f (t ) f (t )
t =0 t =0

10/10

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