Sunteți pe pagina 1din 20

Departamentul de Automatic i Ingineria Sistemelor

Universitatea Politehnica din Bucureti


Facultatea de Automatic i Calculatoare
acse.pub.ro

WHAT IS FUZZY

Elemente de logica fuzzy


n 1965, Zadeh a introdus mulimile fuzzy ca o metod matematic de reprezentare a
incertitudinilor, informaiilor vagi, datelor neclare i imprecise, prezente n viaa de zi cu zi, care
sunt dificil de modelat prin tehnici convenionale. Aplicaiile care utilizeaz aceste metode
variaz de la aproximarea deciziilor pe baza experienei operatorilor pn la conducerea
euristic de mare complexitate.
Sistemele bazate pe tehnici fuzzy utilizeaz o serie de noiuni, precum mulimi i logica
fuzzy, funcii de apartenen, tabele de reguli, care vor fi discutate n cele ce urmeaz.

Mulimi fuzzy
Cea mai eficient modalitate de a reprezenta variabilele lingvistice este utiliznd teoria
mulimilor fuzzy, deoarece cunotintele experilor i operatorilor umani sunt n general vagi
(fuzzy). Pentru a rezolva reprezentarea incertitudinilor i a informatiilor subiective, Zadeh a
introdus gradul de apartenen al unui element la o mulime. Acest grad spune ct de posibil
este ca acel element s aparin mulimii considerate.
Fie X o colecie de obiecte i fie x un elemente generic al mulimii X. O mulime n sens

What is fuzzy

1/20

clasic, A, inclus n X, se definete ca fiind o colecie de elemente x ale lui X astfel nct fiecare
element x poate fie s aparin, fie s nu aparin mulimii A. n contrast cu mulimea n sens
clasic, o mulime fuzzy exprim gradul n care un element aparine unei anumite colecii de obiecte.
Definitie. Fie X o colecie de obiecte x. O mulime fuzzy A peste mulimea X se
definete printr-un set de perechi ordonate de forma:
A = {(x,A (x)) / xX},
unde A (x) se numete funcie de apartenen a mulimii fuzzy A
iar mulimea X se numete univers de discurs i ea poate fi discret sau continu
Construirea unei mulimi fuzzy depinde de stabilirea universului de discurs i a funciei
de apartenen. Alegerea funciei de apartenen este subiectiv, n sensul c persoane diferite
pot alege funcii de apartenen diferite pentru a exprima acelai concept. Acest subiectivism
decurge din diferenele care exist ntre indivizi relativ la modul de a percepe i exprima
concepte abstracte.

Suportul (support) unei mulimi fuzzy A este dat de mulimea elementelor xX


pentru care A (x) > 0 :
support(A) = {xX/A (x) > 0}

What is fuzzy

2/20

Nucleul (limba englez: core) unei mulimi fuzzy A este dat de mulimea elementelor
xA pentru care A (x) =1:
core(A) = {xX/A (x) =1}
Mulimea fuzzy A este normal dac nucleul su este o mulime nevid (existcel puin
un element xA astfel nct A (x) =1).
Un punct de ncruciare (crossover point) al unei mulimi fuzzy A este reprezentat de
un element x X pentru care A (x) = 0.5:
crossover(A) = {xX/A (x) = 0.5}
Mulimea fuzzy A al crei suport este format dintr-un singur element x X
pentru care A (x) =1 se numete singleton.
Tietura- a unei mulimi fuzzy A este mulimea n sens clasic format din
elementele xX pentru care A (x) :
A = {xX/A (x) }
Tietura- puternic a mulimii fuzzy A este dat de:
A' = {xX/A (x) > }
O mulime fuzzy A este simetric dac funcia sa de apartenen este simetric n jurul
unui punct cX:
A (c+x) = A (c-x), xX
O mulime fuzzy A este:
- deschis la stnga dac:
lim A x=1
x

si

lim A x=0
x

- deschis la dreapta dac:


lim A x=0
x

si

lim A x=1
x

- nchis dac:
lim A x=0
x

What is fuzzy

si

lim A x=0
x

3/20

Incluziunea fuzzy
Mulimea fuzzy A este inclus n mulimea fuzzy B dac i numai dac:
A (x) B(x), xX
adica: A BA (x) B(x)

A
B

Intersectia fuzzy
Intersecia a dou mulimi fuzzy A i B este tot o mulime fuzzy, C:
AB(x) =min{A(x), B(x)} (SI/AND)

Reuniunea fuzzy
Reuniunea a dou mulimi fuzzy A i B este tot o mulime fuzzy, C:
AB(x) =max{A(x), B(x)} (SAU/OR)

What is fuzzy

4/20

Funcii de apartenen
Funcia care ataeaz un grad de apartenena oricrui element la o mulime se numete
funcie de apartenen. Aceasta poate fi reprezentat numeric (cvasi-continuu sau discret). n
primul caz este o funcie matematic, n cel de-al doilea caz, un vector. Funcia de apartenen
poate lua mai multe forme, dintre cele mai populare fiind funcii-s, funcii-z, funcii-, funcii
triunghiulare, funcii trapezoidale. Aadar, o mulime fuzzy este descris de gradul de
apartenen a tuturor elementelor universului de interes.

1
0 .8

0 .6

triunghi

trapez

0 .4
0 .2
0

10

curb Z

0 .8

curb S

curb

0 .6
0 .4
0 .2
0

10

What is fuzzy

5/20

Variabile fuzzy - reprezentare


Pentru a reprezenta complet o variabila fuzzy, se definesc:
- variabila lingvistica (x): o proprietate / atribut al obiectelor analizate
- valorile ligvistice ale acestei variabile (A): un adverb / adjectiv asociat care sa numele
multimii fuzzy asociate (mic, mare, mediu etc.)
- universul de discurs (X): multimea clasica pe care se definesc variabilele lingvistice
- functiile de apartenenta (A): acestea asociaza fiecarui element x gradul de apartenenta
la multimea fuzzy A
- gradul de apartenenta : masura in care un element apartine unei multimi fuzzy

Cel mai frecvent sunt utilizate valori lingvistice cum ar fi: pozitiv mare (PM), pozitiv
mic (Pm), zero (Z), negativ mic (Nm) i negativ mare (NM), definite pe domeniile normalizate
de variaie a variabilelor fizice.

What is fuzzy

6/20

Rationament fuzzy. Mecanisme de inferenta

n logica clasic, o propoziie poate sa fie ori adevarat, ori fals, nu amandou n acelai
timp. n logica fuzzy, o propoziie poate fi ori adevarat, ori fals, ori poate avea o valoare
intermediar, ca de exemplu poate adevarat. Valorile de adevr ale unei propoziii n logica
fuzzy pot fi exprimate cu ajutorul unui tabel de adevr.
Raionamentul fuzzy este o procedur de inferen care furnizeaz concluzii pe baza
unui set de reguli fuzzy "dac - atunci" ("if - then") i a unui set de fapte cunoscute

Reguli fuzzy si baze de reguli


Regulile fuzzy sunt reprezentate prin relatii fuzzy intre doua functii de apartenenta:
"daca x este A si y este B atunci z este C"
Relatia fuzzy R dintre cele doua variabile x si y poate fi scrisa sub forma matematica
astfel:
R(x) =min{A(x), B(x)} sau R(x) = A(x) B(x) (operatia SI/AND)
Rezultatul obtinut combina doua multimi fuzzy printr-un operatie de tip produs
cartezian:
R: X x Y [0, 1]
unde X si Y sunt universurile de discurs ale variabilelor lingvistice x si y.
De exemplu, rezultatul operatiei min intre x si y este reprezentat in figura urmatoare
(dreapta jos):

What is fuzzy

7/20

Premise: Intr-o regula fuzzy, premisele sunt propozitiile fuzzy cuprinse intre "daca" si
"atunci". Acestea se mai numesc si antecedente. Premisele sunt utilizare in inferenta (reasoning)
prin combinare (utilizand relatii fuzzy intre acestea).
Concluzii: Intr-o regula fuzzy, concluziile sunt propozitiile fuzzy care urmeaza dupa
"atunci". Acestea se mai numesc si consecinte. Consecintele sunt utilizare in inferenta
(reasoning) prin agregarea regulilor.
Baze de reguli: Regulile fuzzy sunt incluse, de obicei, in tabele de reguli, care poarta
numele de baze de reguli. Acestea descriu functionarea sistemlului.

Fuzzificare
Fuzzificarea reprezinta operatia de transformare a variabilelor numerice (ferme) in
variabile lingvistice (vagi).

What is fuzzy

8/20

De exemplu, pentru fuzzificarea variabilei viteza in punctul x0=70km/h, se considera cele


doua functii de apartenenta A si B, care codifica instantele lingvistice low si medium. In
punctul x0, valorile functiilor de apartenenta sunt A(x0)=0.75 si B(x0)=0.25, ceea ce inseamna o
apartenenta a vitezei de 70km/h de 75% la valoarea lingvistica low, si 25% la valoarea
lingvistica medium.

Mecanismul de inferenta Mamdani


Principala componenta a sistemelor fuzzy o reprezinta mecanismul de inferenta (engl.
inference machine), care combina faptele obtinute prin procesul de fuzzificare cu baza de reguli
si realizeaza rationamentul.
O modalitate de a realiza mecanismul Mamdani se numeste MAX/MIN si utilizeaza
operatorii SI (pentru MIN - adica pentru combinatia regulilor) si SAU (pentru MAX - adica
pentru agregarea concluziilor). Rezultatul unui astfel de rationament poate fi scris:
C (x.y) =max {min{A(x), B(y)}
unde C (x.y) este concluzia, iar A(x) si B(y) sunt premisele.
Exemplu: Se da un sistem fuzzy care modeleaza comportamentul de franare al unui
autovehicul, in functie de viteza acestuia. Se specifica functiile de apartenenta ale vitezei: "low"
What is fuzzy

9/20

si "medium", precum si functiile de apartenenta ale variabilei forta de franare: "moderate" si


"strong."
Baza de reguli cuprinde doua reguli:
1. DACA viteza este low ATUNCI forta de franare este moderate
2. DACA viteza este medium ATUNCI forta de franare este strong
Forma functiilor de apartenenta pentru variabila viteza se regaseste pe pagina aterioara.
Forma functiilor de apartenenta pentru variabila forta de franare este:

Premisele sunt asadar date de functiile A si B, in timp ce concluziile sunt date de


functiile C si D .
Presupunand o viteza x0=70km/h, rezultatul inferentei se poate observa in figura
urmatoare: (a) utilizarea regulii 1; (b) utilizarea regulii 2; (c) utilizarea operatiei de reuniune
pentru obtinerea concluziei finale prin agregarea celor doua rezultate.

What is fuzzy

10/20

Defuzzificare
Deffuzificarea reprezinta operatia de transformare a variabilelor lingvistice (vagi) in
variabile numerice (ferme).
Cele mai utilizate metode de defuzificare:
- centroid
- bisector
- largest of maximum (LOM)
- mean of maximum (MOM)
- smallest of maximum (SOM)
Acestea se aplica asupra suprafetei obtinute in urma inferentei fuzzy.
What is fuzzy

11/20

De exemplu:

Exemplu de evaluare a unei singure reguli:

What is fuzzy

12/20

Mecanismul de inferenta Takagi-Sugeno


In cazul sistemelor fuzzy cu mecanism de inferenta Takagi-Sugeno, compozitia regulilor
se obtine cu ajutorul unei functii, in loc de defuzzificare. Aasadar, aceste sisteme nu contin
defuzificator. Structura premiselor, in schimb, este aceeasi ca in Mamdani.
O regula fuzzy Takagi-Sugeno are forma:
"daca x este A si y este B atunci z =f(x,y)"
In acest caz nu este necesara definirea de termeni lingvistici pentru iesirea sistemului, iar
functia f() este, de cele mai multe ori, o functie neliniara. In cazul special al sistemelor liniare,
functia f() este o combinatie liniara a intrarilor sistemului fuzzy.

What is fuzzy

13/20

Sisteme de conducere cu regulatoare fuzzy


Controlul fuzzy permite rezolvarea unor probleme dificile. Cel mai des, procesele nu pot
fi descrise de modele matematice care s permit sinteza unei legi de conducere prin metode
clasice. Sistemele de conducere fuzzy sunt de preferat atunci cnd e vorba de procese complexe
sau care nu se preteaz analizei/proiectrii convenionale. Astfel, experiena uman n
conducerea procesului se poate materializa ntr-o baz de reguli ataat regulatorului fuzzy.
Principalul dezavataj al acestor sisteme de control este calitatea de obicei slab a experienei
umane utilizate pentru construcia sa.

Figura 1. Structura unui controller fuzzy

Regulatorul fuzzy va procesa variabilele fuzzy alese i va genera comenzi compatibile cu


obiectul condus. Structura standard a unui controller fuzzy este cea din figura 1.
Un regulator fuzzy este format dintr-un bloc de fuzzificare, o baz de reguli, un
mecanism de inferen i un bloc de defuzzificare. Dac se consider mecanismul de inferen
mpreun cu baza de reguli ca fiind modulul ce genereaz comenzi fuzzy, atunci acesta are
nevoie de interfee care s converteasc informaiile numerice n varianta lingvistic (fuzzy) i
invers.

What is fuzzy

14/20

Interfaa de intrare a regulatorului realizeaz o scalare a variabilelor msurate din proces


i le convertete prin fuzzificare n variabile lingvistice. Interfaa de ieire (modulul de
defuzzificare asigur conversia fuzzy - crisp i realizeaz scalarea variabilelor de comand n
form de valori compatibile cu elementele de execuie.
Structura general a unui regulator fuzzy evideniaz existena a patru module eseniale:
modulul de scalare fuzificare, modulul de defuzificare scalare, mecanismul de inferen i baza de
reguli si baza de date. Astfel, regulatoarele fuzzy sunt conectate la proces prin intermediul celor
dou interfee active care asigur conversia, dar nu numai, a informaiilor numerice n variabile
fuzzy i, respectiv, a variabilelor fuzzy n informaii numerice. n structura regulatoarelor sunt
incluse mecanismul de inferen (mecanismul de decizie logic) care proceseaz reguli,
cunotine i baza de reguli (baza de cunotine) i de date. Baza de date furnizeaz informaiile
necesare pentru funcionarea corespunztoare a modulelor de interfaare cu procesul (scalare
fuzificare, defuzificare scalare), a bazei de reguli prin interpretarea valorilor lingvistice ale
variabilelor de stare, de intrare i de comand ale procesului.

Modulul de elaborare a comenzii presupune att utilizarea unui mecanism de inferen,


ct i a unei baze de reguli. Regulatorul fuzzy genereaz comenzi pe baza intrrilor, apelnd la
un set de implicaii/relaii fuzzy. Baza de reguli conine strategia de conducere sub form de
reguli de producie obinute fie din experiena operatorului, fie din baze de date rezultate din
funcionarea anterioar:
DACA stare_proces ATUNCI comand
unde stare_proces i comand sunt variabile lingvistice care descriu proprieti ale
mrimilor din procesul considerat.
Baza de reguli poate conine mai multe variabile att n partea de condiii, ct i n
partea de concluzii. Deci un controller fuzzy poate fi folosit att n cazul sistemelor SISO, ct i
n cazul sistemelor MIMO.

What is fuzzy

15/20

Figura 2. Structura de reglare utiliznd un regulator fuzzy

Principalele etape ale proiectrii unui sistem de control fuzzy sunt urmtoarele:
- alegerea variabilelor de intrare i de iesire ale regulatorului, pentru care se impune
obinerea unor informaii apriorice despre funcionarea procesului.
- determinarea universurilor de discurs (ceea ce presupune determinarea domeniilor de
funcionare ale variabilelor msurate ale procesului) i a funciilor de apartenen pentru fiecare
variabil n parte.
- construcia bazei de reguli reprezint cea mai important etap n proiectare, regulile
putnd fi deduse din experiena operatorului uman sau prin utilizarea unui model fuzzy al
procesului condus.
- proiectarea mecanismului de inferen presupune alegerea metodei de inferen, care
poate fi bazat pe reguli individuale sau pe compoziie.
- alegerea factorilor de scal asigur normalizarea intrrii i ieirii innd seama de
diversitatea domeniilor de variaie ale intrrii i ieirii, factorii de scal jucnd un rol asemntor
cu factorii de amplificare n cazul regulatoarelor convenionale.
- alegerea metodei de defuzzificare presupune alegerea modului de conversie a
variabilelor lingvistice n variabile numerice cu valori crisp (ferme).

What is fuzzy

16/20

Domeniile de funcionare se obin din experiena anterioar de proiectare obinut pn


n prezent. Se cere atenie la alegerea domeniilor pentru comenzi, caz n care se va rula unul din
programele implementate anterior, pentru a determina necesarul de comand.
Exemplul urmtor demonstreaz distribuia unui set de funcii de apartenen
pentru o variabil lingvistic temperatura.
Fiecare funcie de apartenen primete n mod uzual un nume care i definete
poziia n universul de discurs: NL, NM, NS, ZE, PS, PM, PL (N negative, ZE zero, P positive,
L large, M medium, S small), acestora asociindu-se cte o semnificaie: frig, mai puin frig, cald,
foarte cald etc. Se observ c pe ordonat se regsete variabila lingvistic de interes, care ia
valori ntre 0 i 1, iar pe abscis se reprezint corespondentul numeric al acesteia, cu valori n
domeniul admisibil.

Figura 3. Funcii de apartenen

Tabelul de reguli conine pe fiecare dimensiune cte o variabil de intrare,


valoarea variabilei de ieire citindu-se din csua corespunztoare liniei i coloanei curente.
Exemplul urmtor demonstreaz construcia unui tabel de reguli pentru dou variabile
de intrare, o variabil de ieire, i cte trei funcii de apartenen pentru fiecare, avnd

What is fuzzy

17/20

urmtoarele valori lingvistice:


- eroare: N, Z, P (intrare)
- derivata erorii: DN, DZ, DP (intrare)
- comanda: CN, CZ, CP (ieire)
eroare
N

DN

CN

CN

CZ

DZ

CN

CZ

CP

DP

CZ

CP

CP

derivata
erorii

Dac se dorete de exemplu, controlul temperaturii ntr-o incint, avnd la dispoziie un


aparat de aer condiionat capabil s nclzeasc sau s rceasca aerul din camer (comand
negativ CN pentru rcire, CZ pentru ncetarea oricrei aciuni, comand pozitiv CP
pentru nclzire), iar ca intrri n regulator se consider eroarea de reglare i viteza de
variaie a acesteia, se poate completa tabelul de reguli n forma prezentat.
Se va ine cont de faptul c, de exemplu, o eroare negativ apare n momentul n care referina
este mai mic dect ieirea msurat, adic este necesar nclzirea camerei. De asemenea,
trebuie inut cont de viteza de variaie a erorii, care ar necesita o comand mai mare sau mai
mic: dac viteza de variaie este mare atunci comanda necesar este mai mare, dac este
pozitiv sau negativ atunci comanda trebuie s aib semnul corespunztor amd
Pentru proiectarea bazei de reguli sunt necesare:
alegerea variabilelor de stare i de comand;
alegerea coninuturilor regulilor antecedent i consecin;
alegerea domeniilor valorilor lingvistice pentru variabilele de stare i de
comand;
deducerea regulilor.
Dimensiunea setului de termeni (valori lingvistice ale variabilelor de intrare) determin

What is fuzzy

18/20

granularitatea aciunii de comand a regulatorului fuzzy. Astfel, pentru un numr de 5 variabile


lingvistice (PM, Pm, ZE, Nm, NM) se obine un numr de 25 de reguli.
Dac se dorete o rezoluie mai bun a comenzii n vecintatea referinei, atunci se poate
extinde numrul de variabile lingvistice pentru Nm, ZE, Pm (negativ zero, negativ foarte mic,
pozitiv zero, pozitiv foarte mic etc.). Aceast granularitate ridicat n realizarea fuzificrii
determin creterea numrului de reguli cu implicaii privind implementarea (dimensiunea
memoriei, timp de execuie) i performanele sistemului de reglare.
Pentru deducerea regulilor pentru un regulator fuzzy pot fi utilizate trei proceduri
importante: pe baza experienei operatorului i a expertului n automatic, pe baza unui model
lingvistic al procesului sau pe baza unui model neliniar.
Pentru eficiena calculelor, utilizarea eficient a memoriei i analiza performanelor
sistemului de reglare (conducere) fuzzy se recomand o reprezentare uniform a funciilor de
apartenen. Formele uzuale ale funciilor de apartenen includ funciile triunghiulare,
trapezoidale i de tip clopot. Aceste forme sunt uor de parametrizat, prezint eficien n
manipulare, conduc la dimensiuni reduse ale memoriilor utilizate.
Cea mai simpl i mai eficient form de reprezentare a funciilor de apartenen este
forma triunghiular.
Proiectarea regulatoarelor fuzzy se poate realiza direct sau pe baza unui model lingvistic
al procesului condus i pot fi regulatoare fuzzy PID, regulatoare bazate pe tabele, regulatoare cu
auto organizare, regulatoare fuzzy adaptive sau regulatoare neuro fuzzy.
Mecanismul de inferen (blocul de decizie logic) reprezint nucleul regulatorului i
emuleaz procesul de decizie uman pe baza conceptelor i a regulilor de inferen din logica
fuzzy. Inferena poate fi bazat pe reguli individuale sau poate fi bazat pe compoziia de reguli.
Parametrii de proiectare se reduc la:
alegerea reprezentrii unei singure reguli;

What is fuzzy

19/20

alegerea reprezentrii unui set de reguli;


alegerea mecanismului de inferen;
testarea setului de reguli din punct de vedere al consistenei i completitudinii.
Consistena: O baz de reguli este inconsistent dac dou sau mai multe reguli cu
aceleai sau foarte apropiate pri condiionale (antecedente) genereaz diferite ieiri. Aceste
ieiri diferite cauzeaz apariia unor vrfuri n cadrul reprezentrii grafice a mulimii fuzzy dat
prin mecanismul de inferen al regulatorului.
O baz de reguli consistent se caracterizeaz prin faptul c toate regulile cu diferene
mici n prile de intrare genereaz ieiri uor diferite.
Completitudinea: O baz de reguli este complet dac orice intrare diferit de zero
genereaz o ieire diferit de zero.
Exist dou cauze principale pentru apariia incompletitudinii unei baze de reguli.
Prima cauz o reprezint existena unei rupturi ntre funciile de apartenen, iar cea de a doua
cauz o reprezint omiterea uneia sau mai multor reguli.
Proiectarea regulatoarelor fuzzy ca transformri neliniare pentru procese neliniare
reprezint un demers cu un suport formal redus i o pronunat activitate euristic. Simplitatea
modului de operare generat de nsi esena modului de raionament uman n cadrul
operaiilor de conducere a proceselor reprezint principalul argument pentru clasa larg de
aplicaii a acestor regulatoare neliniare cu ridicat robustee.

What is fuzzy

20/20

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