Sunteți pe pagina 1din 23

BAZE DE CUNOŞTINŢE

SISTEME DE DEDUCȚIE BAZATE PE REGULI


ISTORIE

Jaynes [1976] descrie o colectie de 20 00030 000 de


tablite babiloniene, dintre care aproximativ 20% contin o
multime de reguli de productie, numite omenuri, pentru
indrumarea activitatii de zi cu zi. Aceste reguli au fost
catalogate inca din anul 650 I.C. si aveau o forma
asemanatoare celei din sistemele bazate pe reguli din
inteligenta artificiala, de exemplu:
•"Daca un cal intra in casa unui om si musca acel om, atunci
proprietarul casei va muri si casa lui se va prabusi."
•"Daca un om calca, din neatentie, o sopirla si o omoara,
atunci el va triumfa asupra unui adversar al sau."
INTRODUCEREA INCERTITUDINII

Până în acest moment am operat


cu domenii categorice pentru care raspunsul la orice întrebare este
fie adevărat, fie fals. Tipurile de reguli studiate până acum au fost
de același timp, folosind implicații categorice.
Totuși, atât datele referitoare la o anumită problemă cît și regulile
generale pot să nu fie certe. Incertitudinea poate fi modelată prin
atribuirea unei calificări, alta decât adevărat sau fals majorității
aserțiunilor.
În literatură această calificare poate fi întalnită cu denumirea factor
de certitudine, măsură a încrederii sau certitudine subiectivă.
FACTOR DE CERTITUDINE

Vom extinde reprezentarea clasică bazată pe reguli prin atașarea


unei informații numerice fiecărei propoziții utilizate în descrirea
regulilor.
Factorul de certitudine este un număr, de obicei se ia din
intervalul [0, 1] (sau [0, 100]) și reprezintă încrederea utilizatorului
în afirmația conținută.
Propoziție: Certitudine
Această notație se aplică și regulilor și definește gradul de
certitudine până la care acea regulă este validă:
If Condiție then Concluzie: Certitudine
FACTORI DE CERTITUDINE.
METODE DE COMBINARE
Când se lucrează cu reguli de producție care au atașate factori de
certitiudine este necesar să se specifice modul în care se combină
certitudinile propozițiilor și ale regulilor.
De exemplu, să considerăm două propoziții P1 și P2 care au factorii
de certitudine c(P1) respectiv c(P2). Avem:
c(P1 and P2) = min(c(P1), c(P2))
c(P1 or P2) = max(c(P1), c(P2))
Pentru regula
IF P1 THEN P2: C
vom avea:
c(P2) = c(P1) * C
FACTORI DE CERTITUDINE
METODE DE COMBINARE

y true false
x and

true True False


min(CF(x),CF(y)) Cf y

false False False


Cf x max(CF(x),CF(y)
)
FACTORI DE CERTITUDINE
METODE DE COMBINARE

y true false
x or

true True True


max(CF(x),CF(y)) Cf x

false True False


Cf y min(CF(x),CF(y))
FACTORI DE CERTITUDINE.
EXEMPLIFICARE
Considerăm următoarea situație:
holul este ud, baia este uscată,
bucatăria nu este uscată, fereastra
nu este închisă și credem (dar nu
suntem siguri) că afară nu plouă.

data(hol_ud, 1).
data(baie_uscat, 1).
data(bucatarie_uscat, 0).
data(fara_ploaie, 0.8).
data(fereastra_inchisa, 0).
FACTORI DE CERTITUDINE.
EXEMPLIFICARE
data(hol_ud, 1).
Pentru următoarele reguli: data(baie_uscat, 1).
IF hol_ud AND baie_uscata THEN data(bucatarie_uscat, 0).
data(fara_ploaie, 0.8).
problema_bucatarie: 0.9 data(fereastra_inchisa, 0).
problema_bucatarie cu FC: min(FC_premisa,FC_Regula)=
min(min(1,1),0.9)=0.9
rezulta: problema_bucatarie FC=0.9
IF problema_bucatarie AND fara_ploaie THEN
scurgere_bucatarie
scurgere_bucatarie, min(FC_premisa, FC_Regula) =
min(min(0.9,08),1)=min(0.8, 1)=0.8
rezulta: scurgere_bucatarie FC=0.8
SISTEMUL MYCIN

Unul dintre cele mai cunoscute și utilizate scheme cu factori de


certitudine este sistemul MYCIN, un sistem expert folosit în
diagnosticare infecțiilor bacteriene. Factorii de certitudine MYCIN
sunt însă utilizați și in alte sisteme de raționament cu informație
incertă.
Factori de certitudine / Coeficienti de incredere (CF)
În sistemul MYCIN se folosesc două funcții probabilistice pentru a
modela încrederea și neîncrederea într-o ipoteza:
• functia de masura a increderii, notata MB
• functia de masura a neincrederii, notata MD
SISTEMUL MYCIN.
FUNCȚII PROBABILISTE
• MB[h,e] - reprezintă măsura creșterii încrederii în ipoteza h pe
baza afirmației e
• MD[h,e] - reprezintă măsura creșterii neîncrederii în ipoteza h pe
baza afirmației e
Pe baza acestor funcții, factorul de certitudine se calculează astfel:

CF[h, e] = MB[h, e]  MD[h, e]


sau

MB  MD
CF 
1  min( MB, MD)
SISTEMUL MYCIN.
EXEMPLIFICARE
Să considerăm regula:
IF testul g (gram-pozitiv) este pozitiv
AND forma este rotunda AND
cresterea este in lant THEN
organismul este streptococ: 0.7
Calcularea CF pentru concluzie:
CF(H,e)= CF(E,e) * CF(H,E) unde,
H este membrul drept al producției (RHS), E este premiza (LHS)
iar e reprezintă faptele (probele) care activează regula.
SISTEMULMYCIN.
EXEMPLIFICARE
Pentru următorii factori de încredere:
"testul g este pozitiv " : 0.5
"forma este rotundă " : 0.6
"creșterea este în lanț " : 0.8
obținem 0.35 factor de incredere
pentru concluzia "organismul este streptococ"
Observație: Activarea unei reguli în sistemul MYCIN se face
doar daca CF atașat premizei (LHS) este mai mare decât pragul
de 0.2
FACTORI DE CERTITUDINE
INTĂRIREA ÎNCREDERII
Dacă o proprietate P a fost deja deja dedusă cu un coeficient de
certitudine CF1 și stocată în memoria de lucru, și pe o ramura de
deducție alternativă, se obține aceeași proprietate P cu un coeficient
de certitudine CF2, memoria de lucru este actualizată, proprietatea
P având un coeficient de certitudine asociat CF pe baza formulei.
De exemplu, există cazuri în care mai multe reguli conduc la
aceeași concluzie. În aceste cazuri este de dorit ca fiecare dintre ele
să contribuie la factorul de certitudine final al faptului rezultat.
FACTORI DE CERTITUDINE
INTĂRIREA ÎNCREDERII
Dacă o regulă R conduce la o concluzie F cu un FC= X, iar faptul F
este deja stocat în memorie cu FC= Y atunci noul factor de
certitudine nou_FC(X,Y) poate fi calculat cu una din următoarele
formule:
Y (100  X )
nou _ FC ( X , Y )  X  , daca X , Y  0
100
(X Y)
nou _ FC ( X , Y )  100  , daca X  0, Y  0
(100  min( X , Y ))
(X Y)
nou _ FC ( X , Y )  100  , daca X  0, Y  0
(100  min( X , Y ))
nou _ FC ( X , Y )  nou _ FC ( X ,Y ), daca X , Y  0
Y  (100  X )
nou _ FC ( X , Y )  X 
100
SISTEME BAZATE PE AGENDĂ

Structura de control a anumitor sisteme bazate pe reguli nu


foloseste nici înlănțuirea înainte nici înlanțuirea înapoi a regulilor,
ci o strategie de control de tip agenda. Aceasta strategie este în
special utilă în cazul în care se foloseste un criteriu de selectie a
regulilor bazat pe preferința stărilor, deci o funcție euristică de
evaluare.
Strategia de control de tip agenda selctează la fiecare ciclu de
execuție regula cea mai interesantă, adică cu prioritatea cea mai
mare. Aceasta este executata și, ca urmare, noi sarcini pot fi
generate și introduse în agendă. Acest mecanism corespunde
selecției nodului celui mai promițător într-o strategie de control de
tip "best-first".
CUNOSTINTE DECLARATIVE VS.
CUNOSTINTE PROCEDURALE
Cunoştinţele procedurale, implementate în forme algoritmice
prin motorul de inferenţe, sunt, în mod formal, compatibile cu
datele (cunoştinţele declarative) pe care le prelucrează.
O abordare bazata pe reguli separă cunoştinţele declarative
(baza de cunoştinţe) de cunoştinţele procedurale (motorul de
inferenţe).
SISTEME BAZATE PE REGULI.
IMPLEMENTARE
Inițial, în memoria de lucru ML nu avem niciun fapt cunoscut ci
numai reguli și alte informații relative la întrebările pe care le poate
pune utilizatorul. Principalul predicat al unui astfel de sistem care
reprezintă motorul de inferențe este
realizare_scop(Scop, FC, Istoric)
•Scopul poate să fie ori o propoziție care reprezintă concluzia finală
sau o pereche de genul (Atribut, Valoare) unde Valoarea este
informația dedusă din raționament
•FC reprezintă factorul de certitudine final
•Istoria retine diverse informații necesare pentru raspunsuri
ulterioare la întrebarea „de ce"
SISTEME BAZATE PE REGULI.
INFERENȚĂ
Inferența in sistemele bazate pe reguli trebuie să trateze trei cazuri pentru propoziția
care se dorește a fi verificată (Prop) sau atributul a cărui valoare se dorește a se
calcula (Attr):
•Prop (Attr) există deja în baza de cunoștințe (în memoria de lucru); înseamnă că
problema este rezolvată și alte posibilități de inferență (reguli, informații de la
utilizator) sunt eliminate
•altfel, se determină toate regulile care au în concluzie Prop sau Attr și se încercă
demonstrarea premizelor din regulile respective (combinarea factorilor de
certitudine)
•altfel, dacă nu e vorba de o cunoștință finală, se solicită utilizatorului informații
ajutătoare
RATIONAMENT BAZAT PE REGULI
ALGORITM
1. ML  datele de intrare
2. repeta
2.1. Activeaza regulile din BC in functie de faptele din ML si
creeaza multimea de conflicte a regulilor aplicabile
2.2. Selecteaza o regula dupa un criteriu de selectie
2.3. repeta
Aplica regula prin executia partii drepte a regulii
pina cand nu mai sint reguli aplicabile sau memoria de lucru
satisface conditia de stare scop
sfirsit.
CRITERII DE SELECTIE A REGULILOR
A. Selectia primei reguli aplicabile
Aceasta strategie este aplicata de exemplu, de Prolog si corespunde unei strategii de
tip "backtracking".
B. Alegerea unei reguli din multimea de conflicte
B1. Preferinte bazate pe natura regulilor
exemplu: Se considera ca o regula R1 are o specificitate mai mare decit o alta regula
R2 daca multimea de conditii ale regulii R1 include multimea de conditii ale regulii
R2, deci este un superset al acesteia;
B2. Preferinte bazate pe obiectele identificate
Se pot atasa factori de merit faptelor din memoria de lucru si a celor din baza de
cunostinte si se vor prefera regulile care identifica faptele cu factori de merit maxim.
B3. Preferinte bazate pe stari
B4. Utilizarea metaregulilor
CRITERII DE SELECTIE A REGULILOR
B3. Preferinte bazate pe stari
Daca exista mai multe reguli in multimea de conflicte, se pot aplica temporar toate
aceste reguli, generindu-se astfel in memoria de lucru diverse stari urmatoare.
Apoi, pe baza unei functii euristice de evaluare a starilor rezultate, se alege ca
regula preferata acea regula care genereaza o stare preferata functiei euristice.
Aceasta abordare este identica cu strategia de control euristica de tip "best-first”.
B4. Utilizarea metaregulilor. Cunostintele de control pot lua diverse forme, de
exemplu:
•cunostinte despre ce stari sint preferate fata de altele
•cunostinte despre ce reguli trebuie preferate in anumite situatii
•cunostinte despre ordinea in care trebuie realizate scopurile
•cunostinte despre secvente utile de reguli care pot fi aplicate.
C. Aplicarea tuturor regulilor din multimea de conflicte
Vă mulţumesc!

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