SISTEM EXPERT NEURONAL FUZZY
Sistemele expert care au retele neuronale pentru bazele lor de cunostinte sunt uneori denumite sisteme neuronale fuzzy sau sisteme expert conexioniste, deoarece se modeleaza solutii la unele probleme
antrenand neuroni simulati, conectati intr-o retea.
Avantajul lor este posibilitatea de prelucrare rapida (raspuns in timp real) a unor mari cantitati de date prelucrate prin senzori.
Un sistem expert neuronal utilizand intrari cu invatare fuzzy (antrenare fuzzy) este descris in lucrarea "A Neural Expert System Using Fuzzy Teaching Input" a cercetatorului japonez Yoichi Hayashi.
Autorul propune un model de sistem expert neuronal fuzzy utilizand o retea speciala numita perceptron distribuit cu un singur strat (RPDSS), care este capabila sa ofere o metoda de extragere automata a regulilor If-then dintr-o retea neuronala antrenata.
Sistemul expert neuronal are urmatoarele doua functii:
1. Generalizarea informatiei derivate din datele de antrenare prelucrate de intrarile cu invatare fuzzy si incorporarea cunostintelor in forma unei retele neuronale fuzzy.
Datele pentru intrarile fuzzy sunt subiectiv date de expertii in domeniu.
2. Extragerea regulilor fuzzy If-then cu importanta relativa lingvistica a fiecarei propozitii dintr-un antecedent (partea If) a retelei neuronale antrenate fuzzy .
Se propune de asemenea o metoda de extragere automata a regulilor fuzzy If-then din reteaua neuronala antrenata, generata de datele de antrenare din intrarile cu invatare (antrenare) fuzzy.
Asa cum stim, la reteaua neuronala antrenata cu propagare inversa configuratia consta din p noduri de intrare, q noduri ascunse si r unitati de iesire. Nodurile sunt complet conectate intre doua straturi adiacente. Reteaua Hayashi este similara retelei standard, ea avand in plus conexiuni directe intre nodurile de intrare si cele de iesire. Fiecarei conexiuni ii este asociata o pondere intreaga, wij . Ponderile conexiunilor dintre stratul de intrare si cel intermediar sunt generate utilizand un generator de numere aleatoare si sunt fixate pentru procesul de invatare. Activarea nodurilor este discreta, ea luand valorile +1, 0 sau -1.
Activarile nodurilor de intrare Ii (i = 1, 2,, p), ale nodurilor ascunse Hj (j = 1, 2,, q) si ale unitatilor de iesire Ok (k = 1, 2,, r) pot fi calculate folosind ecuatiile (1) - (4). Iesirea nodului I0 este intotdeauna +1 si este conectata la oricare alt neuron, exceptand neuronii de intrare.
(1)
(2)
(3)
(4)
O schema bloc a unui sistem expert neuronal fuzzy este reprezentata in Figura 1.
Figura 1.
Pentru a lucra cu diverse fuzzyficari in stratul de intrare si in cel de iesire al RPDSS este necesar sa interpretam datele de intrare zgomotoase si/sau subiective. In plus, vom lucra cu intrari cu invatare fuzzy si cu consecinta fuzzy asociata, care are semnificatie cantitativa sau calitativa nebooleana.
In general, multimile fuzzy definite prin functii de apartenenta monotone pot fi defuzzyficate intr-o familie de multimi deterministe utilizand reprezentarea de nivel (C.V. Negoita, Expert Systems and Fuzzy Systems, Benjamin Cummings, 1985) sau "codul termometru" (B. Widrow). Ca urmare, fuzzyficarea poate fi incorporata in datele de antrenare si in cele din consecinta folosind doar intrari booleene.
Reteaua neuronala propusa admite date fuzzy si date crisp (deterministe) in stratul de intrare si lucreaza cu invatare fuzzy si consecinte fuzzy. Topologia acestei retele, care este activa in baza de cunostinte a sistemului expert, este prezentata in Figura 2.
Figura 2. O retea neuronala cu neuroni fuzzy si crisp
Stratul de intrare consta din grupuri de neuroni fuzzy, GFi (i=1, , a) si din grupuri de neuroni crisp (non-fuzzy), GCi (i=1, , b). Stratul de iesire contine grupuri de neuroni fuzzy, GFi (i=1, , c). Un grup de neuroni fuzzy in stratul de intrare consta din m unitati de intrare pentru care reprezentarea multimii (taieturii) de nivel utilizeaza un vector m-dimensional binar (cu elemente din ). Un grup de neuroni fuzzy in stratul de iesire contine n unitati de iesire care au ca reprezentare a multimii de nivel un vector n-dimensional binar. Un grup de neuroni crisp in stratul de intrare consta din m celule de intrare care iau doar doua valori in
Reprezentarea intrarilor cu instruire fuzzy.
Presupunem ca o valoare de adevar lingvistic este subiectiv data de expertii in domeniu. Atribuind grade de adevar acestor variabile lingvistice s-ar putea utiliza urmatoarea reprezentare:
- C.T. (Completely True) (+1, +1, +1, +1, +1, +1) ;
- T. (True) (+1, +1, +1, +1, +1, -1) ;
- P.T. (Possibly True) (+1, +1, +1, +1, -1, -1) ;
- U. (Unknown) (+1, +1, +1, -1, -1, -1) ;
- P.F. (Possibly False) (+1, +1, -1, -1, -1, -1) ;
- F. (False) (+1, -1, -1, -1, -1, -1) ;
- C.F. (Completely False) ( -1, -1, -1, -1, -1, -1) .
In continuare se propune o metoda de a extrage automat reguli If-Then fuzzy folosind importanta lingvistica relativa a fiecarei propozitii intr-un antecedent, cu ajutorul unei retele neuronale antrenata fuzzy. Aceasta metoda este implementata in motorul de analiza a cunostintelor din Figura 1. Importanta lingvistica relativa, ca de exemplu VI (Very Important) sau MI (Moderately Important), definita printr-o multime fuzzy, reprezinta gradul de efect al fiecarei propozitii asupra consecintei. Furnizand importanta relativa lingvistica fiecarei propozitii, fiecare regula fuzzy If-Then are mai multa expresie flexibila decat aceea a regulilor obisnuite e acest tip. Adevarul fiecarei reguli fuzzy If-Then este dat de forma valorii de adevar lingvistic, cum ar fi V.T. (Very True) sau P.T. (Possible True), definite de catre o multime vaga.
I. Descrierea algoritmului de extragere automata a regulilor "If-Then".
Pasul 1 Extragerea cadrului regulilor fuzzy If-Then.
Selectam propozitii intr-un antecedent (partea If) al unei reguli (algoritm precizat in sectiunea II).
Pasul 2. Atribuirea valorii de adevar lingvistic fiecarei reguli extrase.
O valoare de adevar lingvistic, de exemplu V.V.T. (Very Very True) si P.T. (Possible True) este data fiecarei reguli fuzzy If-Then selectate la pasul anterior. Valoarea de adevar lingvistic atribuita fiecarei reguli arata gradul de certitudine in a trage concluzia. Ea este determinata de valoarea relativa a sumei ponderate a neuronilor de iesire.
Pasul 3. Atribuirea importantei relative lingvistice fiecarei propozitii.
Importanta relativa lingvistica este atribuita fiecarei propozitii antecedent in regulile If-Then fuzzy. Reamintim ca ea reprezinta gradul de efect al fiecarei propozitii asupra consecintei.
II. Algoritm de extragere a cadrelor regulilor fuzzy "If-Then".
Mai intai este necesara extragerea propozitiilor neesentiale din grupurile de celule dintr-un antecedent (partea "If"). De exemplu, pentru simplitate se presupune ca fiecare celula consta din trei neuroni de intrare. Ca atare, un grup de neuroni fuzzy in stratul de intrare ia trei valori (n=3) in , in timp ce un grup de neuroni crisp ia doua valori, in multimea . Un grup de neuroni fuzzy in stratul de iesire ia sase valori (n=6) in multimea
In reteaua neuronala tip perceptron cu un singur strat distribuit putem determina activari ale neuronilor utilizand informatii de intrare partiale. De exemplu, activarile neuronilor intermediari Hj sunt date de relatia
(5)
Analog, activarile nodurilor de iesire sunt determinate de relatia
(6)
Trebuie determinate activarile grupurilor de neuroni de intrare astfel incat fiecare grup de neuroni fuzzy din stratul de iesire sa ia valori in multimea . Secventele de intrare corespunzand grupurilor de neuroni de intrare determinate vor fi prinse intr-un antecedent (partea If) al fiecarei reguli.
Un posibil algoritm de extractie pentru cadrul regulilor If-Then este urmatorul.
Pasul 1. Selecteaza un model de iesire care este reprezentat de un grup de neuroni fuzzy Gfi (i = 1, , c).
Pasul 2. Selecteaza un neuron de iesire Ok din sase neuroni de iesire selectati la Pasul 1.
Pasul 3. Selecteaza un grup de neuroni.
Pasul 4. Daca grupul de neuroni selectat este unul fuzzy, se pun valorile (activarile) grupului de neuroni in (1, -1, -1), (1, 1, -1) sau (1, 1, 1); Daca grupul de neuroni este unul crisp, valorile acestuia se pun in (1, 1, 1) sau (-1, -1, -1). Valoarea grupului de neuroni neselectati se pune in (0, 0, 0.).
Pasul 5 (Cautarea inainte). Se determina toate valorile neuronilor ascunsi Hj folosind valorile grupului de neuroni date la Pasul 4 si ecuatia (5). Se determina valoarea neuronului Ok utilizand ecuatia (6). Daca aceasta valoare este 1 sau -1, se merge la Pasul 7. Daca ea este 0, se merge la Pasul 6. Desi toate grupurile de neuroni sunt prinse intr-un antecedent (partea If), daca valoarea lui Ok este 0, nu exista nici un cadru de reguli fuzzy If-Then pentru neuronul de iesire si se merge la Pasul 8.
Pasul 6 (Cautarea inapoi). Fie v = max vkj (valoarea absoluta a ponderii conexiunilor dintre neuronul de iesire Ok si neuronul ascuns Hj a carui valoare este 0. Fie apoi u = max uki (aceeasi semnificatie referitoare la Ok si neuronul de intrare Ii a carui valoare este 0). Daca u v sau valorile tuturor neuronilor ascunsi sunt determinate, se merge la Pasul 6-1; in caz contrar se merge la Pasul 6-2.
Pasul 6-1. Pentru neuronul de intrare Ii incident la uki (u uki ), daca acest neuron este inclus in grupul de neuroni fuzzy, se merge la Pasul 6-1-F. Pentru un neuron crisp se merge la Pasul 6-1-C.
Pasul 6-1-F. Daca SOk 0, selecteaza un model al grupului fuzzy care are valoarea maxima a lui SOk printre vectorii (1, 1, 1), (1, 1, -1) si (1, -1, -1). Daca SOk < 0, se selecteaza un model care are valoarea minima a lui SOk . Se merge la Pasul 7.
Pasul 6-1-C. Similar, daca SOk 0, selecteaza un model al grupului crisp care are valoarea maxima a lui SOk printre vectorii (1, 1, 1) si (-1, -1, -1). Daca SOk < 0, se selecteaza un model care are valoarea minima a lui SOk . Se merge la Pasul 7.
Pasul 6-2. Algoritmul este analog Pasului 6-1. Acum se lucreaza cu neuroni apartinand stratului ascuns, respectiv de intrare.
Pasul 7 (Extragerea cadrului regulilor If-Then). Daca valoarea lui Ok este determinata, se extrag articolele de intrare corespunzand la un grup de neuroni determinati, deoarece propozitia este un antecedent. Se determina valoarea a cinci neuroni de iesire care nu au fost selectati la Pasul 2. Daca valoarea grupului de neuroni fuzzy de iesire este una dintre (-1, -1, -1, -1, -1, -1) sau (1, -1, -1, -1, -1, -1) sau , , (1, 1, 1, 1, 1, -1) sau (1, 1, 1, 1, 1, 1), atribuie valoarea de adevar lingvistic corespunzatoare drept veridicitatea (gradul de incredere) a consecintei (partea Then). Altfel, nu exista nici un cadru de reguli If-Then. Daca sunt extrase mai multe cadre de reguli If-Then cu aceleasi antecedente si consecinte, se adopta unul dintre ele.
Pasul 8 (Conditia de terminare a algoritmului de extragere pentru fiecare neuron de iesire). Daca sunt unele grupuri de neuroni de iesire care nu sunt inca selectate la Pasul 3, se merge la Pasul 3. La fel pentru grupurile de neuroni de la Pasul 4. Altfel mergi la Pasul 9.
Pasul 9 (Conditie terminala pentru fiecare neuron de iesire). Daca exista neuroni de iesire neselectati la Pasul 2, se merge la Pasul 2. Daca nu, mergi la Pasul 10.
Pasul 10 (Conditie terminala a intregului algoritm de extragere). Se repeta pasii 2 9 pana cand este satisfacuta conditia terminala a algoritmului de extragere pentru fiecare unitate de iesire. Daca exista neuroni de iesire care nu au fost selectati la Pasul 1, mergi la Pasul 1. Daca nu, se opreste intregul algoritm de extragere.
Concluzie. Realizarea bazelor de cunostinte cu retele neuronale constituie o tehnica promitatoare si utila pentru generarea bazelor de cunostinte practice cu diverse baze de date. Marirea capacitatii de interpretare a datelor reale si includerea cunostintelor implicite si/sau subiective va ameliora capacitatea umana de achizitie de cunostinte si va influenta dezvoltarea domeniului sistemelor expert.
SISTEME FUZZY - ASPECTE GENERALE
2.1.3. Logica fuzzy
In constructia unor sisteme de I.A. cat mai apropiate de lumea reala nu putem face abstractie de incertitudinea si imprecizia discursului normal (vorbirii normale). Asa cum logica clasica formeaza baza pentru sistemele expert (SE) conventionale, logica fuzzy constituie temelia sistemelor expert fuzzy. Aceste din urma sisteme sunt capabile sa opereze nu numai cu incertitudine si imprecizie, dar ele pot modela cu succes rationamentul comun, lucru dificil de realizat in sistemele expert clasice.
Se discuta intens despre teoriile neprobabilistice ale incertitudinii. Factorii de certitudine, teoria Dempster-Shafer si teoria multimilor vagi sunt toate modalitati de lucru cu incertitudinea in sistemele expert.
Factorii de certitudine sunt simplu de implementat si au fost utilizati cu succes in sisteme expert (de exemplu MYCIN) unde lanturile de inferenta sunt scurte. Totusi, teoria factorilor de certitudine este o teorie ad-hoc ce nu este in general valabila pentru lanturi de inferenta mai lungi.
Teoria Dempster-Shafer (sau teoria evidentei, care introduce termenii de masa de incredere sI plauzibilitate) are o fundamentare riguroasa, fiind promitatoare in aplicatiile de SE. Actualmente nu exista insa un consens in legatura cu modalitatea sa generala de aplicare.
Teoria multimilor fuzzy este cea mai generala teorie de incertitudine care a fost formulata. Ea are o larga aplicabilitate datorita in special principiului extensiei. De la prima lucrare care a fundamentat-o (a lui Zadeh, 1965), teoria multimilor fuzzy (vagi, nuantate) a fost aplicata in numeroase domenii. Logica fuzzy ofera posibilitatea de a reprezenta si de a rationa cu cunostinte comune, obisnuit formulate, cu ajutorul calculatorului. Aceasta abilitate este extrem de valoroasa in ingineria bazelor de cunostinte, unde cunostintele expertului sunt formulate de obicei intr-un limbaj obisnuit. Termenii si regulile vagi pot fi reprezentate si manipulate numeric pentru a furniza rezultate consistente cu parerile expertului. Logica fuzzy are o valoare particulara in acele aplicatii de control unde este dificil sau imposibil de a dezvolta un sistem de control traditional.
Cateva din principiile de baza ale logicii fuzzy vor fi prezentate in continuare.
- Logica fuzzy ofera metode de reprezentare si rationament automat cu termeni vagi si ambigui. Ea foloseste cu precadere grade si functii de apartenenta la multimi intr-o maniera mult mai eficienta decat cea furnizata de apartenenta crisp (determinista, 0/1 sau Fals/Adevarat).
- O variabila lingvistica este un termen utilizat in limbajul natural. Ea descrie un concept care are valori vagi si in logica fuzzy este denumita variabila fuzzy.
- Valorile (adjectivele) variabilelor fuzzy sunt reprezentate folosind multimi vagi care fac corespondenta de la elementele multimii la un anumit grad de incredere ca un element apartine multimii fuzzy.
- Cele mai populare tehnici de inferenta fuzzy sunt max-min si max-produs.
- Construirea unui sistem expert fuzzy este un proces iterativ in care se formuleaza o colectie initiala de multimi si reguli fuzzy, care vor fi ajustate pentru a fi in concordanta cu specificatiile proiectului.
- Punerea de acord a unui sistem expert (pentru a fi lucrativ) implica ajustarea regulilor existente sau a multimilor fuzzy.
Teoria multimilor si a sistemelor fuzzy este o incercare de a dezvolta concepte si tehnici de lucru sistematic cu un tip de imprecizie care apare cand limitarile unei clase de obiecte nu sunt clar definite (exemple uzuale: om gras, persoana tanara, strazi inguste, glume bune etc.). Apartenenta la o astfel de clasa nu este o propozitie de tip "totul sau nimic", ci mai degraba un grad . Aceasta apartenenta conduce la notiunea de multime fuzzy, care poate fi privita ca o clasa in care exista o gradualitate in progresie de la apartenenta la neapartenenta (un obiect poate avea un grad de apartenenta intermediar respectiv intre unitate sI zero).
Observatii. (1) Notiunile matematice clasice pot fi privite -referitor la multimi- ca o degenerare a notiunii de set fuzzy la cazurile extreme (avand doar doua grade de apartenenta: 0 si 1).
(2) Cele mai multe din clasele de obiecte din lumea reala sunt multimi fuzzy, insa de obicei matematica si stiintele "hard" sunt centralizate pe clasele care sunt "multimi" in sensul traditional. Este clar ca tratarea sistemelor fuzzy are o forma particulara, deosebita de instrumentele oferite de teoria probabilitatilor, in sensul ca:
(i) Notiunea de fuzzy este total diferita de probabilitatea aparitiei unui anumit eveniment;
(ii) Marimile fuzzy joaca un rol mult mai important in cunoasterea umana decat notiunile legate de probabilitate;
(iii) In lucrul cu notiunile fuzzy sunt abandonate moduri de abordare clasice, dezvoltandu-se radical noi cadre conceptuale pentru analiza sistemelor mecaniciste si umanistice (de exemplu sociale).
Varietatile impreciziei.
Trebuie facuta distinctie intre diferite notiuni legate de imprecizie, cum sunt fuzzy si vagul. Ultima este o forma deosebita a fuzzyficarii, depinzand de context. O propozitie vaga este si fuzzy si ambigua, in sensul ca ofera insuficienta informatie pentru un anumit scop.
Distinctia intre fuzzy si probabilitate este mai clara: gradul de apartenenta intr-o multime vaga se interpreteaza ca un grad de compatibilitate sau de posibilitate. De exemplu, sa consideram propozitia "au iesit din masina lui X". Intrebare: cati pasageri au iesit din masina ? Fie n numarul respectiv. Fiecarui n ii putem asocia doua numere: mn (posibilitatea) si pn (probabilitatea), reprezentand respectiv ca n pasageri sa iasa din masina. Putem ilustra exemplul in tabelul urmator.
n | |||||||
mn | |||||||
pn |
Notatii, terminologie si operatii de baza.
O multime fuzzy se presupune a fi incadrata intr-un univers de discurs non-fuzzy, care poate fi o colectie de obiecte, concepte sau constructii matematice, uzual notate U, V sau W. Exemple de universuri de discurs sunt: multimea tuturor numerelor reale, multimea intregilor de la 0 la 1000 etc.
O multime fuzzy in U sau, echivalent, o submultime fuzzy in U este caracterizata de o functie de apartenenta, mA : U [0, 1], care asociaza fiecarui element u din U un numar mA(u) in intervalul [0, 1] (sau, mai general, un punct intr-o multime partial ordonata), ce reprezinta gradul de apartenenta a lui u la multimea fuzzy A.
Suportul lui A este setul de puncte din U pentru care mA(u) > 0. Inaltimea lui A este supremumul lui mA pe A. Punctul de incrucisare al lui A este punctul din U al carui grad de apartenenta este 0.5 . Multimea fuzzy A este normala daca inaltimea sa este 1 si subnormala daca ea este subunitara.
In multe aplicatii gradul de apartenenta mA(u) poate fi interpretat ca un grad de compatibilitate a lui u cu conceptul reprezentat de A. In alte cazuri mA(u) este considerat drept gradul de posibilitate al lui u din A. Cand mA(u) joaca rolul unui grad de compatibilitate sau posibilitate, functia mA : U [0, 1] poate fi denumita functie de compatibilitate. Termenul "functie de apartenenta" este in general utilizat in situatii in care interpretarea lui mA este nespecificata. Semnificatia atasata la o valoare numerica particulara a functiei de apartenenta este pur subiectiva.
Observatii. (i) Posibilitatea poate fi reprezentata ca un grad, nu este o proprietate de tip "totul sau nimic"; (ii) informatia posibilista este mai elementara si mai putin dependenta de context decat informatia probabilista; (iii) majoritatea rationamentelor umane se bazeaza pe informatie posibilista, mai putin pe una probabilista.
Teoria multimilor fuzzy are doua ramuri distincte:
- Teoria non-fuzzy. Multimile vagi sunt tratate ca o constructie matematica in cadrul careia facem afirmatii demonstrabile. In cadrul acestei teorii sunt dezvoltate spatii topologice fuzzy, functii de comutare fuzzy, ordonare fuzzy, aplicatii in analiza sistemelor, masurari fuzzy, clasificare fuzzy etc.
- Teoria "fuzzy" a multimilor si sistemelor vagi, in care fuzzyficarea este introdusa intr-o logica care subliniaza regulile manipularii multimilor fuzzy si a afirmatiilor despre ele. Geneza acestei ramuri a teoriei provine din introducerea asa-numitei aproximari lingvistice. Valorile de adevar, ca si regulile de inferenta, pot fi imprecise cu rezultatul ca afirmatiile despre multimile fuzzy nu sunt, in general, demonstrabile in logica bivalenta. De exemplu, propozitia "Elena este foarte inteligenta" poate fi "mai mult sau mai putin adevarata" si in schimb poate fi o consecinta aproximativa a valorilor de adevar a altor propozitii fuzzy. Desi teoria "fuzzy" a multimilor fuzzy este inca in etapele initiale ale dezvoltarii, ea este importanta pentru fundamentarea rationamentului fuzzy sau aproximativ. Acest fel de rationament sta la baza abilitatii umane remarcabile de a atinge scopuri imprecis specificate, intr-un mediu incomplet cunoscut.
Din considerentul simplificarii reprezentarii multimilor vagi se foloseste urmatoarea notatie: un set finit non-fuzzy U = este exprimat ca
U = u1 + u2 + + un , (2)
intelegand ca formula de mai sus reprezinta U ca uniunea singletonurilor constituente, in care (+) inseamna reuniune. Ca o extensie a acestei notatii, un subset finit fuzzy A al lui U se exprima liniar ca
A = m u1 + + mnun sau . (3)
Daca ui sunt numere pot fi unele ambiguitati privind componentele mi si ui in sirul mi ui. Se prefera utilizarea simbolului separator "/ " si putem scrie
A = m /u1 + + mn/un sau . (4)
Din definitia reuniunii rezulta ca daca in reprezentarea lui A avem ui = uj , atunci putem face substitutia data de
miui + mjui = (mi mj) ui ,
unde este simbolul pentru max.
De exemplu: A = 0.3 a + 0.8 a + 0.5 b = (0.3 0.8)a + 0.5 b = 0.8 a + 0.5 b .
Consistent cu reprezentarea unui set fuzzy finit ca o forma liniara in ui , o multime fuzzy arbitrara in u poate fi exprimata in forma unei integrale de tipul
Integrala de mai sus inseamna reuniunea singletonurilor mA(u)/u, uIU.
In unele cazuri presupunerea ca mA este o corespondenta de la U la [0, 1] poate fi prea restrictiva. Este de dorit ca mA sa ia valori intr-o latice sau, in particular, intr-o algebra booleana. Pentru cele mai multe scopuri este suficient sa se lucreze cu primele doua ierarhii din urmatoarele ierarhii de multimi fuzzy.
Definitie. O submultime fuzzy, A, definita pe U, este de tip 1 daca functia sa de apartenenta este o corespondenta de la U la [0, 1]; A va fi de tip n daca mA este o corespondenta de la U la multimea de submultimi fuzzy de tip (n-1). Daca nu se specifica altfel, se presupune ca A este de tip 1.
Exemplu. Presupunem ca U este multimea tuturor intregilor nenegativi si ca A este o submultime fuzzy a lui U, denumita a "intregilor mici". A este de tip 1 daca mA I [o, 1]. De exemplu,
mint. mici(u) = [1 + (u/5)2] , u = 0, 1, 2, .
A va fi de tip 2 daca, pentru u I U, mA(u) este o submultime fuzzy pe [0, 1] de tip 1. De exemplu, pentru u=10,
mint. mici(10) = low ,
unde low este o submultime fuzzy de [0, 1], a carei functie de apartenenta este definita, de exemplu, de
mlow(v) = 1 S(v; 0, 0.25, 0.5) , v I
Rezulta
In relatiile de mai sus S este o functie de apartenenta standard.
Incluziunea.
O submultime fuzzy de U poate fi o submultime a unei alte submultimi fuzzy sau nonfuzzy de U. Altfel spus, A este o submultime a lui B (sau este continuta in B) daca si numai daca mA(u) mB(u), pentru toti u din U, adica
A B mA(u) mB(u) , u IU
Multimi de nivel in multimi fuzzy.
Daca A este o submultime fuzzy de U, atunci submultimea de nivel a a -cut) a lui A este o submultime nonfuzzy, notata cu Aa , care cuprinde toate elementele lui U ale caror grad de apartenenta este superior lui a
Aa
Submultimea fuzzy A poate fi descompusa in submultimile sale de nivel prin identitatea de rezolutie
aAa este produsul unui scalar a cu submultimea Aa . Identitatea de rezolutie poate fi vazuta ca rezultatul combinarii acelor termeni care cad in aceeasi submultime de nivel. Se poate arata ca identitatea de rezolutie combinata cu principiul extensiei asigura o modalitate convenabila de a generaliza diferite concepte asociate cu multimile crisp la multimi fuzzy. De exemplu, daca U este un spatiu vectorial liniar, atunci A este convexa daca si numai daca pentru toti l I [0, 1] si toti u1, u2 in U, avem
mA lu1 + (1 - l)u2) min (mA(u1), mA(u2)) .
In termenii taieturilor a ale lui A, A este convex daca si numai daca Aa sunt convexe pentru toate aI[0, 1]. In mod dual A este concav daca si numai daca
mA lu1 + (1 - l)u2) max (mA(u1), mA(u2)) .
Logica fuzzy trateaza o multime fuzzy ca o propozitie fuzzy. O propozitie fuzzy este o constatare care atribuie o valoare pentru o variabila lingvistica data.
In general, putem reprezenta o propozitie fuzzy ca
Propozitie : X este A ,
unde A este o multime fuzzy pe universul de discurs X.
O regula fuzzy stabileste o relatie sau o asociatie intre doua propozitii fuzzy, de forma
DACA X este A ATUNCI Y este B .
Un sistem expert fuzzy stocheaza reguli ca asociatii fuzzy. De exemplu pentru regula DACA A ATUNCI B, sistemul expert stocheaza asociatia (A, B) intr-o matrice M. Matricea asociativa fuzzy M face corespondenta intre doua multimi vagi A si B. Kosko (1992) denumeste aceasta asociatie (regula) fuzzy drept memorie asociativa fuzzy (FAM).
Procesul de inferenta fuzzy.
Ca si in alte tehnici de rationament inexact utilizate in proiectarea unui sistem expert, inferenta fuzzy tinde sa stabileasca o incredere intr-o concluzie a unei reguli atunci cand este dat coeficientul de evidenta a premisei regulii. Deoarece propozitiile continute intr-o regula fuzzy sunt seturi fuzzy, logica fuzzy trebuie sa faca corespondenta intre informatiile multimilor premise si informatia din multimea concluzie. Pentru aceasta, inferenta fuzzy stabileste o multime fuzzy indusa din informatia despre o multime fuzzy cu care este in relatie. Sa consideram de exemplu seturile fuzzy A si B: A - Height is tall; B - Weight is heavy, puse in relatie de IF A THEN B. Putem reprezenta atat A cat si B ca vectori de potrivire si sa fixam relatia dintre ei in matricea asociativa fuzzy.
Cateva idei de baza in cadrul inferentei fuzzy sunt urmatoarele. Zadeh a considerat multimea fuzzy ca o functie de distributie a posibilitatii. Aceasta functie face o corespondenta intre elementele dintr-un univers de discurs si un numar cuprins intre 0 si 1 care reflecta gradul de incredere ca un element aprtine multimii fuzzy. Tot Zadeh a sesizat necesitatea inferentei informatiei intr-o multime fuzzy B din informatia continuta in alta multime (inrudita), A. Astfel, el a propus o matrice de distributie conditionala posibilistica, PB/A, astfel incat
PA PB/A PB
unde PA este un vector (1 x n), PB/A este o matrice (n x p) iar PB este un vector (1 x p).
Introducand informatii in A se pot obtine informatii asupra lui B printr-o tehnica a inferentei regulii compozitionale. Pentru formarea matricii de distributie PB/A , componentele sale se considera perechi de implicatii intre A si B. De exemplu,
M=
Aceasta matrice este matricea asociativa fuzzy (FAM).
Inferenta MAX-MIN.
In inferenta MAX-MIN operatorul de implicatie utilizat este min. Aceasta inseamna
mij = truth(ai bj) = min (ai , bj).
Date fiind doua multimi fuzzy, putem folosi formula precedenta pentru a forma matricea M. Pentru o singura valoare masurata xk putem utiliza mA(xk) direct cu reprezentarea fuzzy a lui B, anume mB(y) pentru a obtine multimea fuzzy indusa pe B:
B' mA(xk) mB(y) .
Inferenta max - product.
Acest tip de inferenta foloseste produsul standard ca operator de implicatie pentru a forma componentele lui M,
mij = ai bj .
Compunerea max-min este utilizata pentru determinarea matricii induse B' dintr-un vector A'. Cu ajutorul acestei tehnici se poate obtine o versiune instantiata a vectorului B. Astfel,
B' mA(xk) mB(y) .
Tehnica inferentei max-product produce o versiune scalata a lui B si ea pastreaza mai multa informatie decat inferenta max-min
Reguli cu premise multiple.
In practica adeseori este necesar sa lucram cu reguli de premise multiple, de tipul "DACA A SI B ATUNCI C". Kosko sugereaza modalitatea de formare a matricii asociative in acest caz. Presupunem ca sistemul fuzzy A este definit pe X, B pe Y si C pe Z. Avem
A' MAC = CA' ,
B' MBC = CB' .
Daca intre premise avem conectivul "AND", atunci
C' = [A' MAC] [B' MBC] = CA' CB' ,
in timp ce pentru disjunctie ("OR") avem
C' = [A' MAC] [B' MBC] = CA' CB' .
Presupunem ca avem o singura valoare din A, xk si o singura valoare din B, definita yj . Multimea fuzzy C' (pentru reguli cu premise multiple) se calculeaza cu relatiile:
C' Conectivul din premisa Inferenta
min (ai , bj) mC(z) AND Max - Min
max (ai , bj) mC(z) OR Max - Min
min (ai , bj) mC(z) AND Max - Product
max (ai , bj) mC(z) OR Max - Product
Defuzzyficarea.
Am vazut pana acum doua tehnici pentru determinarea multimii fuzzy B' indus dintr-o estimare A' a lui A. Uneori este insa necesar sa utilizam setul fuzzy indus si sa obtinem o valoare crisp. Acesta este subiectul defuzzyficarii. Exista mai multe tehnici de defuzzyficare, dintre care cea mai cunoscuta este metoda centroidului fuzzy. Aceasta metoda furnizeaza o singura valoare yi din B' astfel:
In general, defuzzyficarea este importanta cand reguli multiple conduc la acelasi eveniment.
Defuzzyficare in cazul regulilor fuzzy multiple.
Sectiunile anterioare au prezentat metode de descriere si reprezentare a termenilor lingvistici vagi in mod cantitativ, prin utilizarea unei multimi fuzzy. In limbajul curent se poate adauga incertitudine suplimentara unei constatari date, folosind adverbe (foarte, usor, intrucatva, oarecum etc.). Un adverb este un cuvant care codifica un verb, un adjectiv, alt adverb sau o intreaga propozitie. Aceste operatii poarta nume specifice si au o anumita corespondenta cu operatiile matematice cunoscute.
Concentrarea este operatia corespondenta termenului foarte.
mcon(A)(x) = (mA(x))2 .
Fiind dat un sez fuzzy de "persoane inalte", putem folosi aceasta operatie pentru a obtine setul fuzzy al "persoanelor foarte inalte".
Diluarea - ( "oarecum", somewhat).
mdil(A)(x) = (mA(x))0.5 .
Intensificarea - ( "intr-adevar", indeed), mareste intelesul frazei.
mint(A)(x) = 2 (mA(x))2 , pentru 0 mA(x)
= 1 - 2(1 - mA(x))2 , pentru 0.5 < mA (x)
De exmplu, dat setul fuzzy al persoanelor medii, am putea utiliza aceasta operatie pentru crearea multimii persoanelor intr-adevar medii.
Puterea - ( "foarte foarte", very very), este o extensie a operatiei de concentrare.
mpow(A)(x) = (mA(x))n .
Dat setul fuzzy al persoanelor inalte, am putea utiliza aceasta operatie cu n=3 pentru a genera o multime de persoane foarte foarte inalte.
Derivarea multimilor fuzzy aditionale.
Utilizand extreme sI operatii cu multimi fuzzy putem deriva o varietate de alte seturi fuzzy din cele existente. De exemplu, avand un set fuzzy A al persoanelor inalte, putem deriva un set B de persoane nu foarte inalte cu urmatoarea operatie:
mB(x) = 1 - (mA(x))2 .
Presupunem in continuare ca avem multimile fuzzy A de persoane inalte si B de persoane scunde. Putem deriva setul C de persoane nu foarte inalte si nu foarte scunde cu urmatoarea operatie:
mC(x) = [1 - (mA(x))2] mB(x))2] .
In general, putem folosi operatii fuzzy si extremele pentru a deriva seturi fuzzy care reprezinta descrieri lingvistice variate si combinatii de constatari utilizate in limbajul natural.
Politica de confidentialitate |
.com | Copyright ©
2024 - Toate drepturile rezervate. Toate documentele au caracter informativ cu scop educational. |
Personaje din literatura |
Baltagul – caracterizarea personajelor |
Caracterizare Alexandru Lapusneanul |
Caracterizarea lui Gavilescu |
Caracterizarea personajelor negative din basmul |
Tehnica si mecanica |
Cuplaje - definitii. notatii. exemple. repere istorice. |
Actionare macara |
Reprezentarea si cotarea filetelor |
Geografie |
Turismul pe terra |
Vulcanii Și mediul |
Padurile pe terra si industrializarea lemnului |
Termeni si conditii |
Contact |
Creeaza si tu |