Sunteți pe pagina 1din 28

Logica fuzzy si aplicatii

Capitolul 1. Introducere
Doru Todinca
Departamentul Calculatoare
UPT

Cuprins

Aspecte administrative
Logica fuzzy: istoric
Exemple de multimi fuzzy
Aplicatii ale logicii fuzzy
Structura cursului

Cuprins

Aspecte administrative
Logica fuzzy: istoric
Exemple de multimi fuzzy
Aplicatii ale logicii fuzzy
Structura cursului

Aspecte administrative

curs si laborator: Doru Todinca, sala B622

e-mail: doru.todinca@cs.upt.ro

web page: www.cs.upt.ro/~todinca in Teaching, Logica


fuzzy si aplicatii

sau direct: www.cs.upt.ro/~todinca/curs_fl.html

Username: fl ; Parola: fl 2007

Examen scris, avind o pondere de 50% in nota finala

In afara de prezentarile oficiale, va mai fi un examen, la


ultimul curs de LFA

Se pot obtine puncte bonus atit la laborator, cit si la examen

Laboratorul 50% din nota finala.

Teme de laborator
1. Pentru nota 10 cu puncte bonus: un program in OMNeT++
sau VHDL, ca exemplu de aplicare a inferentei fuzzy

Pe pagina cursului sunt date temele


Se da de asemenea codul in VHDL, respectiv OMNeT++, al
unui controller fuzzy (FLC Fuzzy Logic Controller)
OMNeT++ e un simulator de retele open source, bazat pe
C++

2. Pentru nota 10 cu un punct bonus: un referat de 4-5 pagini si


o prezentare, din doua articole de pe pagina de web a cursului
de LFA

Articolele trebuie sa aiba legatura intre ele


Se poate alege un articol ca fiind principal, iar celalalt sa fie
doar un suport (element ajutator)

Teme de laborator
3. Pentru nota 9 sau 10 (fara puncte bonus): prezentarea unui
articol de pe pagina cursului

Un articol poate fi ales de un singur student


Pentru nota 10 prezentarea trebuie sa fie foarte buna si
studentul sa poata raspunde la intrebarile legate de logica fuzzy
Daca studentul nu stie sa raspunda la intrebari, nota va fi
maximum 7 (sapte).

4. Pentru nota 5 sau maximum 6: . . .

In toate cazurile se interzice categoric copierea de cod, text,


prezentari, de la colegi sau din alte surse.

Cei care vor fi prinsi copiind NU VOR PROMOVA


LABORATORUL DE LFA !!!

Cuprins

Aspecte administrative
Logica fuzzy: istoric
Exemple de multimi fuzzy
Aplicatii ale logicii fuzzy
Structura cursului

Logica fuzzy: istoric (dupa [Wan99])

Creata in 1965, de Lotfi A. Zadeh


Printre precursori se afla si Grogore Moisil: logici multivalente
Tot Zadeh are contributii esentiale in domeniu: algoritmi
fuzzy (1968), fuzzy decision making (1970), dar mai ales
1973: conceptul de variabila lingvistica, utilizarea regulilor de
tip IF-THEN pentru a formula cunostintele umane (human
knowledge), acestea fiind bazele pt fuzzy control (conducerea
fuzzy a proceselor)
Principiul extensiei (tot Zadeh, 1973): permite fuzzificarea
altor domenii matematice sau nematice (extinderea lor prin
cadrul teoriei fuzzy): functii fuzzy, numere fuzzy, aritmetica
fuzzy, bistabile fuzzy, etc
1975: Mamdani si Assilian: prima aplicatie practica a logicii
fuzzy, in conducerea proceselor: controlul unui motor cu aburi
1978: prima aplicatie industriala a unui controller fuzzy
(Holmblad and stergaard): fuzzy cement kiln controller

Logica fuzzy: istoric

La inceputul anilor 1980 domeniul fuzzy a devenit nepopular


mai ales in SUA, dar si Europa Occidentala (multi cercetatori
au schimbat domeniul, din lipsa de finantare)

Salvarea a venit de la savantii japonezi, care au utilizat cu


succes controllerele fuzzy in multe probleme practice:

1980: Sugeno: controlul unei instlatii de purificarea apei (la


Fuji Electric)
1983: tot Sugeno: un robot cu fuzzy si un sistem de parcare
automata
1989: Yamakawa: pendulul invers reglat cu fuzzy
la inceputul anilor 80: Yasunobu si Miyamoto de la Hitachi au
inceput sa lucreze la un metrou fuzzy automat (fara driver)
In 1987 metroul fuzzy automat din Sendai devine operational
Acesta a fost o aplicatie foarte spectaculoasa, care a dat un
impuls sentimentului pro-fuzzy
Logica fuzzy a fost incorporata in aplicatii de larg consum:
masina de spalat cu fuzzy, camera video cu fuzzy, la diverse
sisteme in automobile, etc

Cuprins

Aspecte administrative
Logica fuzzy: istoric
Exemple de multimi fuzzy
Aplicatii ale logicii fuzzy
Structura cursului

Exemple de multimi fuzzy

Cuvintul fuzzy inseamna cu contururi neclare, vag, pufos

Opusul lui fuzzy este crisp.

Pentru a da exemple de multimi fuzzy, ne referim la virsta


unei persoane

Consideram ca o persoana poate apartine urmatoarelor


categorii de virsta: tinar, de virsta medie si batrin

Cum definim aceste categorii de virsta ?

Putem considera ca in mod clar la 20 de ani cineva e tinar, la


40 de ani e clar de virsta medie, iar la 60 de ani e batrin

Totusi, cum se face trecerea de la o categorie de virsta la alta


?

Exemplu: categorii de virsta

1. Metoda pragurilor (thresholds in engleza):

Presupune existenta unor separatori clari intre aceste categorii


de virsta
De exemplu, pina la 30 de ani cineva e tinar, intre 30 si 50 e
de virsta medie, iar peste 50 de ani e batrin
Inseamna ca inainte de aniversarea virstei de 30 de ani cineva e
tinar, iar a doua zi nu mai e tinar, ci de virsta medie !
Similar, cu o zi inainte de a implini 50 de ani cineva nu e
batrin, dar imediat ce implineste 50 de ani devine batrin !
Aceasta trecere brusca dintr-o categorie in alta nu e in
concordanta cu modul nostru de a gindi !

Exemplu: categorii de virsta

2. Metoda unor regiuni care se suprapun

Exista o regiune, de exemplu intre 25 si 35 de ani, in care


gradul in care cineva e tinar scade de la 100% la 0%
Intre 25 de ani si 35 de ani gradul in care cineva e de virsta
medie creste de la 0% la 100%, iar intre 45 de ani si 55 de ani,
acest grad scade de la 100% la 0%
Intre 45 si 55 de ani, gradul in care cineva e batrin creste de la
0% la 100%
Desigur, delimitarea regiunilor este subiectiva :-) !
Aceasta metoda e mult mai aproape de modul de gindire uman

Exemple de multimi fuzzy

Notiunile: tinar, de virsta medie si batrin sint multimi fuzzy

Daca reprezentam grafic aceste multimi utilizind metoda


regiunilor care se suprapun, obtinem un grafic ce are pe
abscisa virsta in ani, iar pe ordonata gradul in care o persoana
de o anumita virsta apartine multimii respective

Acesta se numeste grad de apartenenta sau functie de


apartenenta si are valori in intervalul de numere reale [0, 1]

La metoda cu valori de prag, gradul de apartenenta are doar


doua valori: fie 0, cind un element nu apartine multimii, fie 1,
cind apartine

La multimi fuzzy, un element apartine unei multimi intr-un


anumit grad.

In acest exemplu multimile fuzzy tinar, de virsta medie si


batrin sint continue, dar multimile fuzzy pot fi si discrete (se
va vedea in capitolul urmator).

Grafic !

Incertitudine fuzzy versus incertitudine probabilistica

Atit logica fuzzy cit si teoria probabilitatilor studiaza


imprecizia sau incertitudinea

Cum ambele lucreaza cu valori reale intre 0 si 1, multa lume


le confunda

Vom incerca sa clarificam distinctia dintre fuzzy si probabilitati

Incertitudinea probabilistica sau stochastica, se refera la


situatia in care nu se cunoaste starea viitoare a unui sistem,
deoarece determinarea ei ar fi prea complicata

De exemplu daca dam cu zarul ar fi prea complicat sa calculam


ce numar (ce fata a zarului) va iesi
Similar, daca tragem la tinta, extragem o bila dintr-o urna, etc

Incertitudine fuzzy versus incertitudine probabilistica

Incertitudinea fuzzy tine de aprecierea subiectiva a gradului in


care un element apartine unei anumite categorii.

Nu e nimic aleator in virsta unei persoane, imprecizia tine de


felul in care noi incadram o persoana de o anumita virsta la o
anumita categorie (tinar, batrin, etc)
De asemenea, nu e nimic fuzzy cind dam cu zarul: nu stim ce
numar va iesi, dar numarul iesit e crisp, nu are nimic fuzzy.

Cele doua tipuri de imprecizie se pot combina - se va discuta


mai tirziu.

Fuzzy vs probabilitati: un exemplu

Pentru a lamuri distinctia dintre multimi fuzzy si probabilitati,


prezentam un exemplu dupa Jerry Mendel [Men95]:

Daca spunem ca intr-o sticla se gaseste apa care e 90%


potabila (potabila intr-un grad de 0.9), cum interpretam acest
lucru fuzzy si probabilistic ?

Probabilistic:

Probabilitatea ca apa din sticla sa fie potabila este de 0.9


Adica, daca am avea un numar foarte mare de astfel de sticle,
de exemplu un milion, in 900 de mii de sticle ar fi apa absolut
potabila
Iar in restul de 100 de mii de sticle ar fi altceva, ne-potabil, de
exemplu otrava, acid clorhidric, etc !

Fuzzy:

In acea sticla nu e chiar ce ne-am dori sa bem, adica apa de


izvor imbuteliata, dar la nevoie putem bea ce e acolo
De exemplu e apa de la robinet sau dintr-o balta

Tipuri de imprecizie fuzzy [Zim91]


1. Imprecizie intrinseca (intrinsic fuzziness)

semnificatia unui termen (sau a unei expresii) depinde de


context si de subiectivitatea celui care face aprecierea
Exemple: barbat inalt, femeie frumoasa, student bun, masina
rapida, etc
Daca ne referim doar la termenul barbat inalt, semnificatia
depinde de cel care face aprecierea (de exemplu de inaltimea
persoanei care face aprecierea), cit si de context: daca ne
referim la un jucator de baschet termenul inalt are alta
semnificatie decit la un om obisnuit

2. Imprecizie informationala (informational fuzziness)

Ar fi posibil sa facem o descriere completa de tip crisp, dar pur


si simplu e prea multa informatie ce trebuie procesata
Exemplu (Zimmermann): client de incredere la acordarea unui
credit (creditworthy customer): aprecierea depinde atit de
situatia financiala a clientului (bunuri detinute, dar si diferenta
dintre venituri si cheltuieli), cit si de personalitatea sa
(sanatate fizica si mentala, motivatie individuala, daca
respecta regulile economice si intelegerile facute, etc)

Cuprins

Aspecte administrative
Logica fuzzy: istoric
Exemple de multimi fuzzy
Aplicatii ale logicii fuzzy
Structura cursului

Motivatii ale utilizarii logicii fuzzy [Wan99]


Dupa [Wan99]:
1. Lumea reala e prea complexa pt a putea fi descrisa precis, deci
trebuie sa introducem aproximari (imprecizie, sau fuzziness)
pentru a putea obtine un model tratabil

Ideea e corecta, dar nu caracterizeaza doar abordarile fuzzy


Pina la urma orice model (matematic sau de alta natura) al
unui sistem sau fenomen introduce aproximari si imprecizie !

2. Logica fuzzy ofera o modalitate de a formula cunoasterea


umana (human knowledge) intr-o maniera sistematica (si
matematica) si de a o include in sistemele ingineresti,
impreuna cu alte informatii, cum ar fi modelele matematice si
masuratorile efectuate de senzori

Aceasta este intr-adevar o caracteristica specifica logicii fuzzy,


ce o individualizeaza fata de alte abordari

Unde se aplica logica fuzzy ?

La aparitia logicii fuzzy, s-a crezut ca aceasta se va utiliza cu


succes in stiintele umaniste (lingvistica, sociologie), dar nu a
fost asa, in parte si fiindca acele domenii nu erau pregatite
pentru o abordare matematica, chiar si fuzzy
Pina la urma primele si cele mai mari succese au fost in
inginerie, mai exact in conducerea proceselor (control
engineering)

Domeniul de control eng era suficient de matur si de


matematizat, comparativ cu stiintele umaniste
Logica fuzzy aducea in plus posibilitatea de a incorpora
experienta umana acolo unde modelele matematice nu aveau
succes (fie nu exista un model matematic, fie modelul
matematic era prea complex)

Unde se aplica logica fuzzy ?

In esenta, logica fuzzy se aplica in mod eficient acolo unde nu


se poate stabili un model matematic precis al sistemului sau
modelul matematic rezultat e prea complex si nu poate fi
rezolvat, dar se poate utiliza experienta unui operator uman

Aceasta experienta este sub forma unor reguli IF THEN, nu


sub forma unor modele matematice complexe (de ex ecuatii
diferentiale)

Logica fuzzy vine cu aparatul matematic care transpune


regulile IF THEN in formule precise, ce se pot aplica pt
controlul unui sistem (conducerea unui proces)

Exemple de aplicatii ale logicii fuzzy

1. Un proces chimic industrial (de ex fabrica de ciment)

e posibil ca reactiile chimice respective sa fie bine intelese la un


proces de laborator, dar intr-o instalatie industriala pot
interveni factori cum ar fi impuritatile substantelor utilizate in
proces, etc, astfel incit procesul industrial sa nu mai fie la fel
de usor de inteles si de controlat
Totusi, un operator uman, care nu neaparat intelege reactiile
chimice respective, poate conduce procesul pe baza experientei
Acest operator uman poate formula reguli de genul: DACA
temperatura este prea mare SI presiunea creste ATUNCI redu
mult volumul gazului de ardere

Exemple de aplicatii ale logicii fuzzy


2. Pendulul invers: e un fel de benchmark in automatica

E vorba despre tinerea in echilibru a unui bat in palma !


Mai riguros, problema se poate formula: un carucior de masa
M ce se poate misca in plan orizontal are fixata printr-o
articulatie o tija de lungime l in capatul careia se gaseste o bila
de masa m. Asupra caruciorului se actioneaza cu o forta F
(vector) in planul orizontal, pt a mentine tija in pozitie
verticala
Sistemul de ecuatii diferentiale ce descrie miscarea pendulului
nu are solutie analitica, doar numerica
Ceea ce inseamna ca de fiecare data cind se schimba datele
problemei (masa caruciorului sau a bilei, lungimea tijei) solutia
trebuie refacuta
Totusi, chiar si un copil poate tine un bat in palma, cu putin
antrenament, si sigur nu rezolva ecuatii diferentiale !!
Yamakawa a reusit reglarea fuzzy in functie de unghiul facut
de tija cu verticala si de viteza unghiulara a tijei (d/dt)

Unde/Cind NU se aplica logica fuzzy ?


1. In primul rind, unde sau cind nu este nevoie !

Adica, daca problema se poate rezolva cu metode clasice,


precise, atunci le folosim pe acelea

2. Logica fuzzy fiind o metoda euristica, nu se poate demonstra


formal ca o solutie fuzzy va functiona !

In consecinta, logica fuzzy nu se va aplica acolo unde trebuie


sa poata fi verificat formal ca sistemul va functiona in
conditiile date
Astfel de situatii apar in safety critical domains: instalatii
nucleare, aviatie civila, etc
Totusi, in aviatia miliara se aplica !! Exista un tip de avion de
lupta care, pt a fi mai manevrabil, nu e stabil si el e stabilizat
cu fuzzy

3. Daca un sistem trebuie sa fie evolutiv, sau sa invete, logica


fuzzy nu se aplica singura, dar se poate combina cu retele
neuronale sau algoritmi genetici

Cuprins

Aspecte administrative
Logica fuzzy: istoric
Exemple de multimi fuzzy
Aplicatii ale logicii fuzzy
Structura cursului

Structura cursului de LFA


1. Introducere
2. Multimi fuzzy. Operatii cu multimi fuzzy
3. Extensii. Principiul extensiei
4. Cit de fuzzy e o multime fuzzy ?
5. Relatii fuzzy
6. Logica fuzzy. Variabile lingvistice. Inferenta fuzzy
7. Controllere fuzzy (FLC - Fuzzy Logic Controllers). Arhitecturi
de FLC digitale
8. Notiuni de aritmetica fuzzy
9. Aplicatii ale logicii fuzzy in calculatoare si telecomunicatii (si
la laborator)

Jerry M Mendel.
Fuzzy logic systems for engineering: a tutorial.
Proceedings of the IEEE, 83(3):345377, 1995.
Li-Xin Wang.
A course in fuzzy systems and control.
Prentice-Hall press, USA, 1999.
H.-J. Zimmermann.
Fuzzy Set Theory and Its Applications, Second, Revised
Edition.
Kluwer Academic Publishers, 1991.

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