Documente Academic
Documente Profesional
Documente Cultură
2 SimulareaSLF - Matlab PDF
2 SimulareaSLF - Matlab PDF
A. Obiective
• Pentru construirea unui sistem cu logică fuzzy în Matlab, primul pas după
lansarea în execuŃie a programului Matlab.exe este scrierea de la tastatură, la
prompterul programului, a comenzii:
> fuzzy
urmată de apăsarea tastei Enter. Această comandă lansează în execuŃie editorul
sistemului cu logică fuzzy (FIS Editor); va apărea pe ecran fereastra grafică a
editorului de sisteme cu logică fuzzy din Figura 2.
2
C1. Editorul sistemului cu logică fuzzy
3
Figura 2. Fereastra editorului de sisteme cu logică fuzzy
Rezumat: Paşii de urmat în editorul sistemelor cu logică fuzzy, FIS Editor, pentru
crearea sistemului cu logică fuzzy dorit:
1) Dacă sistemul nostru are mai mult de o intrare, se dă din bara de meniuri
comanda Edit->Add input; fiecare comandă de acest tip adaugă o nouă intrare
sistemului cu logică fuzzy, denumită implicit: input2, input3,...
2) Se modifică numele variabilelor de intrare şi ieşire ale sistemului cu logică
fuzzy, astfel încât să fie cât mai sugestive pentru aplicaŃia dorită, selectând prin
apăsarea butonului stâng al mouse-ului căsuŃa din diagrama sistemului cu logică
fuzzy corespunzătoare variabilei respective, iar apoi modificând conŃinutul
câmpului de editare care conŃine numele variabilei, urmată de apăsarea tastei Enter.
3) OpŃional, se pot modifica valorile operatorilor AND, OR, ImplicaŃie, Agregare,
Defuzzificare din partea stângă a ferestrei editorului de sisteme cu logică fuzzy.
4) Se salvează sistemul cu logică fuzzy în spaŃiul de lucru, cu comanda File->Save
to workspace as... , cu numele dorit pentru sistemul creat. În acest moment,
diagrama bloc a sistemului cu logică fuzzy se modifică în conformitate cu opŃiunile
introduse pentru sistem.
5) Următorul pas va fi definirea mulŃimilor fuzzy care acoperă universurile
discursurilor variabilelor de intrare şi ieşire. Acest lucru se realizează în editorul
funcŃiilor de apartenenŃă, care se lansează din fereastra editorului FIS cu comanda:
View->Edit Membership Functions...
5
Figura 3. Fereastra editorului funcŃiilor de apartenenŃă
7
a formatului de scriere a regulilor, Rule Format. OpŃiunea selectată în acest câmp
poate fi:
1) Format verbal (verbose), caz în care regulile se editează sub forma if...
then; de exemplu, dacă atunci când variabila de intrare input1 aparŃine mulŃimii
fuzzy mf1, dorim ca variabila de ieşire output1 să aparŃină mulŃimii fuzzy mf3,
regula va fi: If input1 is mf1 then output1 is mf3, şi exact sub această formă este
editată în spaŃiul editorului de reguli. După terminarea scrierii tuturor regulilor din
bază sub această formă, se apasă consecutiv tastele Ctrl şi Enter, ceea ce conduce la
transformarea regulilor în formatul din Figura 5.
2) Format simbolic (symbolic), caz în care regula de mai sus devine:
(input1==mf1)=>(output1=mf3); validarea regulilor se face tot cu tastele Ctrl şi
Enter.
3) Format indexat (indexed), caz în care regula de mai sus devine: 1,3
(1):1;ultimul “1” indică folosirea operatorului AND în premiza regulii, atunci când
este cazul. Validarea regulilor se face tot cu tastele Ctrl şi Enter.
Odată scrise într-un format oarecare, regulile pot fi vizualizate în orice format
dorim. Modificarea unei reguli din baza de reguli se face ca în orice editor de texte,
dar în final trebuie să validăm noua bază de reguli prin apăsarea consecutivă a
tastelor Ctrl+Enter.
Astfel, sistemul cu logică fuzzy este complet construit. Acum este indicată
salvarea sa pe hard disc din orice fereastră de editare dorim, din meniul File->Save
to disk as.... În continuare ne rămâne ca, folosind utilitarele grafice de vizualizare a
regulilor fuzzy şi a suprafeŃei de ieşire a sistemului cu logică fuzzy, să ne
convingem că sistemul proiectat funcŃionează aşa cum dorim.
8
D. Experimentare
Una dintre aplicaŃiile importante ale sistemelor cu logică fuzzy este folosirea
lor ca aproximanŃi de funcŃii. Fiind dată o funcŃie grafică y=f(x), care poate fi
reprezentată doar aproximativ sub formă analitică, s-a demonstrat în literatura de
specialitate că se poate proiecta un sistem cu logică fuzzy având x ca intrare şi y ca
ieşire, astfel încât între valoarea estimată a lui y, ŷ, şi f(x) există o diferenŃă oricât
de mică dorim, ŷ − f ( x ) → 0 . Cu alte cuvinte, sistemul cu logică fuzzy cu
intrarea x şi ieşirea y este un aproximant universal de funcŃii grafice y=f(x), adică
aproximează f(x) cu eroarea ε oricât de mică.
În aplicaŃia prezentată în lucrare dorim să aproximăm regiunea directă a
caracteristicii statice curent-tensiune (i-v) a unei diode semiconductoare, pe baza
curbei i-v a componentei determinate experimental (sau luate din catalog). Ca şi
intrare, sistemul cu logică fuzzy va avea valorile tensiunii pe diodă la polarizare
directă, v=vAK, exprimate în mV, în domeniul [0 mV, 860 mV]. Ca şi ieşire,
sistemul cu logică fuzzy trebuie să furnizeze valoarea curentului anodic prin diodă,
i=iA, exprimat în mA, în domeniul [0 mA, 450 mA].
Sistemul cu logică fuzzy obŃinut va caracteriza complet comportamentul
electric al diodei în regiunea directă pentru v∈[0 mV, 860 mV], ignorând variaŃia
caracteristicii i-v cu temperatura, umiditatea şi abaterile de proces tehnologic de
fabricaŃie a diodei. Deci, sistemul cu logică fuzzy va putea fi folosit ca şi un model
electric al diodei.
9
D2.1. Principiul de modelare fuzzy a caracteristicii i-v a diodei
Output
variable
Exemplu
de zonă
fuzzy
Input variable
Figura 6. Acoperirea caracteristicii neliniare i-v a diodei prin zone fuzzy
= componentă
Ie-
In- µ şire
tra- µ MFO’ tran-
re Fuzzifi- InferenŃă Defuzzi- şan-
tran-
care fuzzy i ficare tă,
şan-
tă, v0 i=i0
v=v0
Intrare fuzzy: Ieşire fuzzy:
mulŃime fuzzy mulŃime fuzzy
singleton MFSV0 MFO’
11
1, v = v 0
µ MFSI 0 ( v) = , reprezentată în Figura 8.
0, v ≠ v 0
µMFSI0(v)
1
0
0 v0 860 v[mV]
12
µ .....................................
MFV1 MFV2 MFV9
0
0 660 680 700 720 740 760 800 860 v
[mV]
i[mA]
0
0 1,2 2,4 2,6 2,8 5,5 6 7 8 12 15 1724 29 33 47 55 65 150 245 390 450
13
D2.2.3. Baza de reguli a sistemului cu logică fuzzy
Fuzzificarea este de tip singleton, aşa cum a fost descrisă la punctul C2.
D2.2.5. OperaŃia de inferenŃă
• OperaŃia de inferenŃă (cunoscută în literatura de specialitate sub
numele de mecanism de inferenŃă) folosită în această aplicaŃie este de tip max-
min.
µMFIk(i)
MFIk
1
MFO’k
µMFVk(v0)
0 i
E. Întrebări
16