Professional Documents
Culture Documents
2
: X [0,1],
fiind evaluat prin operatorul MIN (minimum) conform relaiei:
(x) = (
1
2
)(x) = MIN(
1,
1
), x X
Proprietile conectorului I, respectiv ale operatorului de evaluare MIN sunt:
Comuntativitatea
1
2
=
2
1
Asociativitate
1
3
= (
1
2
)
3
=
Conectorul SAU este asociat cu reuniunea mulimilor fuzzy. Considernd mulimile fuzzy
1
,
2,...
definite pe mulimea X, relaia corespunztoare reuniunii este:
=
1
U
2
: X [0,1],
fiind evaluat prin operatorul MAX (maximum) conform relaiei:
(x) = (
1
U
2
)(x) = MAX(
1,
1
), x X
Proprietile conectorului SAU, respectiv ale operatorului de evaluare MAX sunt:
Comuntativitatea
1
U
2
=
2
U
1
Asociativitate
1
U
2
U
3
= (
1
U
2
) U
3
=
Operatorul de negare fuzzy (complementare)
Dac : X [0,1] este o mulime fuzzy, se definete complementul fuzzy, avnd notaia
c
,
c
: X
[0,1] i respectiv proprietatea:
c
(x)=1- (x), x X
Operatorul PRODUS (PROD)
Operatorul PROD reprezint alternativa evalurii operatorului MIN , fiind definit i evaluat conform
relaiei:
(x) = PROD(
1
(x),
2
(x)) =
1
(x)
2
(x), x X
41
Operatorul SUM (SUM)
Operatorul SUM reprezint alternativa evalurii operatorului MAX , fiind definit i evaluat conform
relaiei:
(x) = (1-m)[
1
(x) +
2
(x) +.......
m
(x)], x X
Orice operaie logic (I, SAU) poate fi transpus, n logica fuzzy sub forma unei aplicaii definit n
felul urmtor: [ 0,1] [0,1] [0,1]. Sub acest form se determin valoarea de adevr a unei formule
compuse, n funcie de valorile de adevr ale subformulelor nlnuite prin operaia logic respectiv. n
cazul sistemelor bazate pe logica fuzzy operaiile logice (I, SAU) nu mai sunt definite cu ajutorul
tabelelor de adevr.
1.5.4.2 Reprezentarea cunoaterii prin logica Fuzzy
ncercrile convenionale de reprezentare a cunoaterii prin reele semantice, cadre, calculul
predicatelor i PROLOG se bazeaz pe logica bivalent. Un impediment serios al acestor tehnici este
inabilitatea de a reprezenta incertitudinea i imprecizia. Reprezentarea convenional nu ofer un model
adecvat pentru metodele de raionament , care sunt mai degrab aproximative dect exacte. Majoritatea
metodelor raionamentului uman i toate metodele raionamentului comun se nscriu n aceast categorie .
Logica Fuzzy, care poate fi privit ca o extensie a sistemelor logice clasice , ofer un cadru
conceptual, care abordeaz problema reprezentrii cunoaterii, ntr-un mediu al incertitudini i impreciziei
.
Esena reprezentrii n logica Fuzzy se bazeaz pe semanticile test-scor, n cadrul crora o
propoziie este interpretat ca un sistem de restricii elastice, iar raionamentul este privit ca o propagare a
restriciilor elastice .
1.5.4.3 Aplicaie a inferenei Fuzzy n Management
[Pre-97] [Pro-99g ] [Pro-01b ],[Pro-01d]
Exist un numr mare de situaii n care apartenena unei anumite valori la o mulime dat nu
poate fi caracterizat prin funcii caracteristice. Astfel, lund ca exemplu anii de recuperare a investiiei
ntr-un proiect, acesta poate fi mprit calitativ prin 3 noiuni: durata de recuperare DR mic, DR
medie, DR mare. (Fig.1.31)
Fig. 1.31. mprirea calitativ a domeniului
Durat de recuperare (de la 0 la 10 ani) prin 3 noiuni
mic, medie i mare
42
Apar urmtoarele situaii: DR=3 ani, pe de-o parte mai este nc DR mic, pe de alt parte este i
DR medie. Deci DR = 3 ani aparine att mulimii MIC ct i mulimii MEDIE. Ce se poate spune
comparativ despre duratele de recuperare DR
1
=3 ani i 11 luni i DR
2
=5 ani ? Amndou valori aparin
mulimii MEDIE , dar n msuri diferite.
Termenii MIC, MEDIE, MARE, sunt variabilele lingvistice. Intervalele anilor la care se refer
sunt mulimile vagi. Apartenena unei anumite DR la o mulime se caracterizeaz prin funcia de
apartenen, care gradeaz apartenena valorilor la mulime. S-a convenit ca domeniul (mulimea care
gradeaz apartenena) s fie intervalul [0,1]. Devine astfel posibil reprezentarea din figur Fig.1.32, care
evideniaz 3 forme diferite de funcii de apartenen:
- trapezoidal
- triunghiular simetric
- triunghiular asimetric
mprirea pe ani este subiectiv, un alt expert ar putea caracteriza aceleai mulimi vagi prin
alte funcii de apartenen.
Valoarea
DR
(x) reprezint gradul de apartenen a lui x la mulimea DR.
Evaluarea investiiei ntr-un proiect bazat pe logica fuzzy, utilizeaz funciile de apartenen
corespunztoare acoperirii domeniului de variaie a diverselor mrimi, cu valori lingvistice att pentru
mrimile de intrare ct i pentru mrimile de ieire.
Domeniul total de variaie al unei mrimi este numit n general univers de discurs. De exemplu
pentru DR, universul de discurs (Fig.1.31) este de la 0 la 10 ani.
Fig. 1.32. Funcii de transfer
Aplicaie: Analiza Riscului Proiectelor de Investiie
n cele ce urmeaz se consider o aplicaie a abordrilor fuzzy ntr-o problem de Analiz a
Riscului Proiectelor de Investiii, n care se urmrete Rata de Randament (RR) posibil a unui proiect de
investiii, avnd ca date de intrare Durata de Recuperare (DR) estimat a investiiei n proiect. Universul
de discurs al celor 2 variabile DR i RR poate fi acoperit n acest caz, prin 5 valori lingvistice, fig.1.33.
1. FR foarte redus
2. R redus
3. m medie
4. M mare
5. FM foarte mare
Cazul inferenei o intrare o ieire i mai multe reguli
Se consider urmtoarea baz de reguli:
1
0
DR
mic
DR
mediu
DR
2 4 8 6 10
DR
mare
DR(ani)
43
R1: DAC (DR =FR) ATUNCI (RR=FM)
R2: DAC (DR= R) ATUNCI (RR=M)
R3: DAC (DR=m) ATUNCI (RR=m)
R4: DAC (DR=M) ATUNCI (RR=R)
R5: DAC (DR=FM) ATUNCI (RR=FR)
Durata de recuperare se consider DR=3ani i 6 luni, al crui univers de discurs este acoperit cu
2 termeni lingvistici R i m, avnd funciile de apartenen
DR
R
i
dR
m.
n acest caz
se vor activa
regulile R2 i R3.
R2: DAC (DR= R) ATUNCI (RR=M)
R3: DAC (DR=m) ATUNCI (RR=m)
Etapele inferenei
1. Fuzificarea valorii ferme DR = 3 ani i 6 luni
2. Analiza regulilor activate: R2 i R3
3. Stabilirea gradelor de apartenen H
2
, H
3
, la TL ce aparin lui
DR
R
i
DR
m
4. Stabilirea funciei de apartenen pentru TL din concluzia fiecrei reguli
RR
M
i
RR
m
5. Stabilirea funciei de apartenen pentru ieire
RR
rez.
(RR) = MAX (MIN ( H
i,
RR
i
(RR))
Fig.1.33. Funciile de apartenen pentru variabilele de intrare-ieire
DR durata de recuperare a investiiei
RR- rata de randament necesar
1. Fuzificarea valorii ferme
DR = 3 ani i 6 luni DR
*
= =
DR
FR
(t)
DR
R
(t)
DR
m
(t)
DR
M
(t)
DR
FM
(t)
0,0
0,25
0,75
0,0
0,0
44
R2: DAC (DR= R) ATUNCI (RR=M)
R3: DAC (DR=m) ATUNCI (RR=m)
3. Stabilirea gradelor de apartenen H
2
, H
3
, la TL:
DR
R
i
DR
m
, (Fig. 1.33)
4. Stabilirea funciei de apartenen pentru TL din concluzia fiecrei reguli
RR
M
i
RR
m
, (Fig. 1.33)
5. Stabilirea funciei de apartenen pentru ieire
RR
rez.
(RR) = MAX (MIN ( H
i,
RR
i
(RR)) (Fig. 1.33)
Inferena se bazeaz pe operaii cu mulimi vagi exprimate prin operaii efectuate asupra
funciilor de apartenen, aplicndu-se operatorii combinai MAX(MIN), adic haura maxim obinut
prin reunirea minimelor haurate (concluziile fiecrei reguli). ( 1.5.5.1). Inferena se soldeaz cu
determinarea caracteristicii MAX(MIN) haurate.
Defuzificarea const n a asocia o valoare concret variabilei RR, care s corespund ariei
haurate. Metoda din exemplu este cea a centrului de greutate, adic se consider c RR trebuie s ia
valoarea corespunztoare abscisei centrului de greutate al ariei haurate.
45
1.6. Implementarea tehnicilor bazate pe logica fuzzy n modulul fuzzy
toolbox al mediului de programare MATLAB 7.4.0
O posibilitate de implementare a tehnicilor bazate pe logica fuzzy este oferit de mediul de
programare MATLAB 7.4.0. Vizualizrile modulului Fuzzy toolbox sunt foarte accesibile utilizatorilor,
facilitnd introducerea, organizarea i prezentarea informaiilor sistemului bazat pe logica fuzzy, prin
proceduri de editare a intrrilor i ieirilor, de configurare a funciilor de apartenen, respectiv de editare
a bazei de cunotine. n continuare este prezentat modul de utilizare a modulului Fuzzy toolbox,
implementnd aplicaia rezolvat mai sus.
Dup lansarea programului MATLAB 7.4.0, n fereastra de comand Command Window
(fig.1.35) se tasteaz cuvntul <<fuzzy>> i se apas tasta Enter. Sistemul afieaz Editorul de tip FIS,
care proceseaz informaia corespunztoare Sistemelor bazate pe inferena Fuzzy. n partea superioar se
46
afieaz n mod grafic diagrama sistemului, care urmeaz a fi creat, avnd intrarea i ieirea etichetate.
(fig.1.36)
Sub diagram este un cmp de tip text care afieaz denumirea fiierului, avnd extensia FIS.
Fig.1.35. Fereastra de comand
n partea inferioar stng a ferestrei se afl o serie de meniuri derulante, care-i permit utilizatorului
s specifice operatorii care urmeaz s fie aplicai n cadrul procesului. n partea inferioar dreapta sunt
afiate cmpuri, care furnizeaz informaii despre ariabila selectat n partea superioar a interfeei.
Variabilele de intrare sunt afiate n caseta din partea stng a sistemului (ex. Durata_recuperare), la
mijloc este afiat caseta regulilor de inferen, respectiv n partea dreapt este afiat caseta variabilelor
de ieire (ex. Rata_randament).
47
Fig.1.36. Editorul FIS
Utilizatorul are posibilitatea definirii mai multor variabile de intrare, respectiv a mai multor
variabile de ieire.
Procedura de introducere a variabilelor de intrare (ieire)
Din meniul Edit se selecteaz Add Variable, respective Input (pentru adugarea variabilelor de
intrare) sau Output (pentru adugarea variabilelor de ieire) (Fig.1.37)
Procedura de tergere a variabilelor de intrare (ieire)
Dac se dorete tergerea unei variabile de intrare (ieire), se selecteaz caseta grafic a variabilei
respective, iar din meniul Edit se selecteaz Remove Selected Variable, sau de la tastatura se
tasteaz Ctrl+X.
48
Fig.1.37. Adugarea variabilelor
n urma introducerii variabilelor de intrare i de ieire, se stabilesc denumirile acestora.
Procedura de denumire a variabilelor de intrare (ieire)
Se selecteaz caseta grafic a unei variabile i se introduce numele acesteia n partea dreapt jos
a Editorului de tip FIS, n caseta Name.
Dup definirea numelui variabilelor de intrare i ieire se definesc funciile de apartenen i universal de
discurs pentru fiecare variabil n parte.
Procedura de definire a funciilor de apartenen i a universului de discurs
Se selecteaz variabila de intrare (ieire), care urmeaz s fie configurat
Din meniul Edit se selecteaz Membership Functions,
sau
Se face dublu clik cu mause-ul pe caseta grafic variabilei respective. (Fig.1.38)
MATLAB 7.4.0 afieaz o nou interfa grafic denumit Membership Funstion.
Fig.1.38. Adugarea funciilor de apartenen
49
Editorul funciilor de apartenen (Membership Funstion Editor)
Editorul Membership Funstion Editor (fig.1.39) se utilizeaz pentru a crea, anula sau modifica
funciile de apartenen ale sistemului fuzzy.
Fig. 1.39. Editorul Membership Funstion
Din meniul Edit al interfeei grafice Membership Function Editor se selecteaz Add MFs.
n caseta de dialog Membership Functions se deruleaz lista Number of MFs i se selecteaz
numrul de funcii de apartenen, pe care le are variabila respectiv.
Opional: n caseta Membership Functions se poate stabili forma general a funciilor de
apartenen, care poate fi triunghiular (trimf), trapezoidal (trapmf), clopot (gbellmf), gausian
(gaussmf), etc. Tipul formei stabilite se aplic tuturor funciilor de apartenen, utilizatorul
urmnd s diferenieze n paii care urmeaz definirea formelor funciilor de apartenen (dac
este cazul).
50
Fig.1.40. Incrementarea numrului de funcii de apartenen
Universul de discurs se definete n caseta Range din parte stng- jos a editorului Membership
Function.
n caseta Display Range (plasat sub Range) utilizatorul poate opta pentru afiarea ntregului
univers de discurs (caz n care se introduc aceleai cifre ca i n caseta Range), sau poate opta
pentru afiarea unei secvene din cadrul universului de discurs (caz n care se introduce cifre din
interiorul intervalului afiat n caseta Range).
Parametrii care definesc geometria funciei de apartenen se configureaz n caseta Params din
partea dreapt jos a editorului Membership Function
Lund exemplul aplicaiei Risc proiect de investiii (.1.5.4.3.),(Fig.1.40) au fost selectate 5
funcii de apartenen, care au fost denumite cu urmtoarele variabile lingvistice: Foarte_redusa, Redusa,
Medie, Mare, i Foarte_mare. Pentru definirea fiecrei variabile lingvistice, se selecteaz cte o funcie
de apartenen, urmnd a i se atribui denumirea in caseta Name din partea dreapt jos.
Pentru redefinirea formei fiecrei funcii de apartenen se selecteaz cte o funcie, dup care i se
selecteaz profilul geometric din lista derulant Type din partea dreapt jos a editorului Membership
Function. (Fig.1.41)
51
Fig. 1.41. Schimbarea formei funciei de apartenen
Forma unei funcii de apartenen poate fi de asemenea ajustat prin stabilirea parametrilor, (n
caseta Params din partea dreapt jos a editorului Membership Function) care definesc geometria
fiecrei funcii n cadrul universului de discurs. De exemplu, pentru funcia de apartenen Mare din
fig.1.42, s-au configurat urmtorii parametrii geometrici: parametrul 4 din cadrul universului de discurs
definete limita din partea stng a bazei triunghiului, parametrul 6 definete vrful triunghiului i
parametrul 8 definete limita din partea dreapt a bazei triunghiului.
n cazul n care funcia de apartene este un trapez, in caseta Params se configureaz 4 cifre,
avnd semnificaia definirii punctelor geometriei trapezului n ordinea urmtoare: limita stng a bazei
mari, limita stng a bazei mici, limita dreapt a bazei mici, respectiv limita dreapt a bazei mari.
Parametrii definitorii ai profilului geometric selectat pentru o funcie de apartenen pot fi ajustai
i cu ajutorul mouse-ului.
52
Fig. 1.42. Configurarea parametrilor pentru funciile de apartenen
Procedura de ajustare cu mose-ul a profilului geometric pentru o funcie de apartenen:
Se selecteaz funcia de apartenen (fig. 1.43)
Se selecteaz cu mose-ul vrfurile profilului geometric al funciei de apartenen i se dragheaz
n stnga sau dreapta universului de discurs. Parametrii din caseta Params din partea dreapt
jos a editorului Membership Function se reconfigureaz automat.
Procedura de definire a universului de discurs se repet pentru toate variabilele de intrare, respectiv
de ieire.
Procedura de definire a funciilor de apartenen se repet pentru toate funciile de apartenen ale
unei variabile de intrare (ieiere), respectiv pentru toate variabilele de intrare (ieiere). Fig. 1.44
Orice aciune poate fi anulat din meniul Edit prin selectarea comenzii Undo. De asemenea orice
functie de apartenen poate fi stears.
53
Fig. 1.43. Ajustarea profilului funciei de apartenen
Fig. 1.44. Definire funciilor de apartenen pentru variabila de ieire
Procedura de tergere a funciilor de apartenen
Se selecteaz funcia de apartenen, care trebuie tears, iar din meniul Edit se selecteaz
Remove Selected MF (Fig.1.39)
Dup ncheierea procesului de definire a variabilelor de intrare (ieire) urmeaz editarea bazei de reguli
pentru sistemul Fuzzy.
Procedura de afiare a editorului bazei de cunotine:
Se deschide una din ferestrele de editare FIS Editor sau Memberships Function Editor
54
Din meniul Edit se selecteaz Rules sau se tasteaz Ctr+3
Programul afieaz fereastra de editare Rule Editor, (Fig.1.44). Partea superioar a editorului de
reguli este destinat afirii bazei de reguli, pe msura editrii acesteia. n partea inferioar a
editorului sunt afiate variabilele de intrare (n partea stng) i variabilele de ieire (n parte
dreapt). Variabilele de intrare sunt plasate sub incidena condiiei If, iar variabilele de ieire sunt
plasate sub incidena concluziei Then.
Fig. 1.45. Editorul Rule
n cazul existenei mai multor variabile de intrare sau ieire utilizatorul are posibilitatea selectrii
conectorilor logici de combinare or (sau) sau and (i). De asemenea exist posibilitatea selectrii
conectorului logic de negare not att pentru variabilele de intrare ct i pentru variabilele de ieire.
55
Fig. 1.46. Editarea bazei de cunotine
Procedura de editare a bazei de cunotine:
Din lista derulant corespunztoare variabilelei de intrare se selecteaz denumirea funciei de
apartenen corespunztoare regulii, care se editeaz.
Din lista derulant corespunztoare variabilelei de ieire se selecteaz denumirea funciei de
apartenen corespunztoare regulii, care se editeaz.
Se selecteaz butonul Add rule i regula se editeaz automat n fereastra superioar a editorului
de reguli
Procesul se repet pn la finalul editrii bazei de cunotine. (Fig.1.46)
Observaie: n cazul n care o regul are o pondere mai mare dect celelalte reguli n cadrul procesului de
inferen, se va specifica cifra ponderii n caseta Weight. Ponderea este afiat ntre paranteze n partea
dreapt a fiecrei reguli.
Procedura de tergere sau modificare a bazei de cunotine
Se selecteaz regula din baza de cunotine, care trebuie tears sau modificat
Se selecteaz butonul Delete rule (pentru stergere), respective Change rule (pentru modificare).
n cazul modificrii, regula se va rescrie conform procedurii de editare.
n urma editrii, baza de conotine este conectat automat sistemului, putndu-se vizualiza grafic
inferena bazat pe logica fuzzy.
Procedura de vizualizare a inferenei fuzzy:
Opiunea 1.
Din meniul View al oricrei interfee de editare se selecteaz Rules sau Ctr+5, (Fig.1.47)
Sistemul vizualizeaz regulile n sistemul reprezentat prin funciile de apartenen (Fig.1.48)
Opiunea 2.
Din meniul View al oricrei interfee de editare se selecteaz Surface sau Ctr+6, (Fig.1.47)
56
Sistemul vizualizeaz n sistemul tridimensional suprafeele generate de inferena fuzzy n cazul
n care exist mai multe variabile de intrare i/sau de ieire.
Observaie: n cazul exemplului prezentat, exist o singura variabil de intrare i o singur variabil
de ieire, vizualizerea fiind reprezentat insistemul de axe bidimensional (Fig.1.49).
Fig. 1.47. Selectarea vizualizrii regulilor
Fig. 1.48. Vizualizarea regulilor
57
Fig. 1.49. Vizualizarea suprafeelor