Sunteți pe pagina 1din 67

UNIVERSITATEA BABE-BOLYAI

Facultatea de Matematic i Informatic

INTELIGEN
ARTIFICIAL
Curs 6

Sisteme inteligente
Sisteme bazate pe reguli n medii certe

Laura Dioan
Sumar
A. Scurt introducere n Inteligena Artificial (IA)

B. Rezolvarea problemelor prin cutare


Definirea problemelor de cutare
Strategii de cutare
Strategii de cutare neinformate
Strategii de cutare informate
Strategii de cutare locale (Hill Climbing, Simulated Annealing, Tabu Search, Algoritmi
evolutivi, PSO, ACO)
Strategii de cutare adversial

C. Sisteme inteligente
Sisteme bazate pe reguli n medii certe
Sisteme bazate pe reguli n medii incerte (Bayes, factori de
certitudine, Fuzzy)
Sisteme care nva singure
Arbori de decizie
Reele neuronale artificiale
Maini cu suport vectorial
Algoritmi evolutivi
Sisteme hibride

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 2


Materiale de citit i legturi utile
capitolul III din S. Russell, P. Norvig, Artificial Intelligence: A
Modern Approach, Prentice Hall, 1995

capitolul 4 i 5 din H.F. Pop, G. erban, Inteligen artificial,


Cluj Napoca, 2004

capitolul 2 din Adrian A. Hopgood, Intelligent Systems for


Engineers and Scientists, CRC Press, 2001

capitolul 6 i 7 din C. Groan, A. Abraham, Intelligent


Systems: A Modern Approach, Springer, 2011

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 3


Coninut
Sisteme inteligente

Sisteme bazate pe cunotine

Sisteme bazate pe logic

Sisteme bazate pe reguli n medii certe

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 4


Sisteme inteligente

Sisteme
expert Arbori de decizie
Bayes
Fuzzy Reele neuronale artificiale
Maini cu suport vectorial
Sisteme bazate pe reguli
Algoritmi evolutivi

Obiecte,
frame-uri,
ageni

Sisteme bazate pe cunotine (SBC) Inteligen computaional

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 5


Sisteme inteligente
sisteme bazate pe cunotine (SBC)
sistemele computaionale alctuite din 2
module principale (roluri):

Domeniul de cunotine (baza de cunotine BC


knowledge base)
Informaiile specifice despre un domeniu

Modulul de control (MC inference engine)


Regulile prin care se pot obine informaii noi
Algoritmi independeni de domeniu

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 6


Sisteme inteligente SBC
Baza de cunotine (BC)

Coninut

Tipologie

Modaliti de reprezentare a cunotinelor

Modaliti de stocare a cunotinelor

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 7


Sisteme inteligente SBC
Baza de cunotine (BC)
Coninut
Informaii (exprimate ntr-o anumit reprezentare ex. propoziii) despre
mediu
informaii necesare pentru nelegerea, formularea i rezolvarea problemelor
mulime de propoziii (exprimate/reprezentate ntr-un limbaj formal) care
descriu mediul
reprezentare uor interpretabil de ctre calculator limbaj de reprezentare a cunotinelor
mecanismul de obinere a unor propoziii noi pe baza celor vechi inferen/raionare

Tipologie
cunotine exacte (perfecte)
cunotine imperfecte (nesigure, incerte)
Inexacte
Incomplete
Incomensurabile

Modaliti de reprezentare a cunotinelor


Logica formal (limbaje formale)
Reguli
Reele semantice

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 8


Sisteme inteligente SBC
Baza de cunotine (BC)
Modaliti de reprezentare a cunotinelor
Logica formal (limbaje formale)
Definiie
tiina principiilor formale de raionament
Componente
Sintax simbolurile atomice folosite de ctre limbaj i regulile de construcie a
expresiilor (structurilor/propoziiilor) limbajului
Semantic asociaz un neles simbolurilor i o valoare de adevr (Adevrat sau Fals)
regulilor (propoziiilor) limbajului
Metod de inferen sintactic regulile necesare determinrii unei submulimi de
expresii logice teoreme (folosite pentru obinerea de noi expresii)
Tipologie
n funcie de numrul valorilor de adevr:
logic dual
logic polivalent
n funcie de teipul elementelor de baz:
clasic primitivele = propoziii (predicate)
probabilistic primitivele = variabile aleatoare
n funcie de obiectul de lucru:
logica propoziional se lucreaz doar cu propoziii declarative, iar obiectele descrise sunt fixe
sau unice (Ionic este student)
logica predicatelor de ordin I se lucreaz cu propziii declarative, cu predicate i cuantificri , iar
obiectele descrise pot fi unice sau variabile asociate unui obiect unic (Toi studenii sunt prezeni)
Reguli
Reele semantice

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 9


Sisteme inteligente SBC
Baza de cunotine (BC)
Modaliti de reprezentare a cunotinelor
Logica formal (limbaje formale)
Reguli
Euristici speciale care genereaz informaii (cunotine)
O modalitate de exprimare (reprezentare) a cunotinelor
Ex. dac Ionic lucreaz la Facebook, atunci el ctig muli bani i are puin timp liber
Interdependenele ntre reguli reea de inferen
Fac legtura ntre cauz i efect - memorate n calculator sub forma unor structuri de control
IF cauz THEN efect
Reele semantice
Grafuri orientate cu noduri care conin concepte i arce care reprezint relaii semantice ntre
concepte precum:
Meronymy (A este meronym al lui B dac A este o parte a lui B)
Ex. Degetul este un meronym al minii, roata este un meronym al mainii
Holonymy (A este holonym al lui B dac B este o parte a lui A)
Ex. Copacul este un holonym al scoarei
Hyponymy (A este hyponym al lui B dac A este un fel de B)
Ex. Tractorul este un hyponym al autovehiculului
Hypernymy (A este hypernym al lui B dac A este o generalizare al lui B)
Ex. Fructul este un hypernym al portocalei
Synonymy (A este sinonim al lui B dac A denot acelai lucru ca B)
Ex. A alerga este sinonim cu a fugi
Antonymy (A este antonim al lui B dac A denot lucruri opuse ca B)
Ex. Uscat este antonim cu ud

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 10


Sisteme inteligente SBC
Baza de cunotine (BC)
Modaliti de stocare a cunotinelor

Relaii
Simple baze de date
Ierarhice ierarhii de concepte (reele semantice)

Logic formal
Reguli

Logic procedural
Algoritmi

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 11


Sisteme inteligente SBC
Modulul de control (MC)
Coninut
Responsabil cu inferena
A ajunge la o concluzie plecnd de la anumite premise (cunotine) i
aplicnd anumite reguli de inferen
MC depinde de complexitate i tipul cunotinelor cu care are de-a
face

Tipologie
n funcie de direcia inferenei:
MC cu legtur nainte (forward chaining)
Pornesc de la informaia disponibil (fapte date, condiii) i ncearc s ajung la o concluzie (fapte
derivate)
Se bazeaz pe date (data driven)
MC cu legtur napoi (backward chaining)
Pornesc de la o concluzie potenial (ipotez) i caut evidene care s o suporte-contrazic (explicaii)
Se bazeaz pe scop (goal driven)

Tehnici de raionare (tehnici de inferen)


n medii certe
bazate pe logic
bazate pe reguli
n medii incerte
bazate pe teoria probabilitilor
bazate pe teoria posibilitii
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 12
Sisteme inteligente SBC
Tipologia SBC

Sisteme bazate pe logic (SBL)

Sisteme bazate pe reguli (SBR)

Case-based reasoning

Hypertext manipulating systems

Data bases and intelligent UI

Intelligent tutoring systems


5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 13
Sisteme inteligente SBC
Sisteme bazate pe logic (SBL)

Coninut i obiective

Arhitectur

Tipologie

Tool-uri

Avantaje i limite
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 14
Sisteme inteligente SBC SBL
Coninut i obiective

Coninut
exploreaz o multitudine de cunotine date pentru a obine concluzii
noi despre activiti dificil de examinat, folosind metode specifice
logicii formale
Un sistem logic este alctuit din:
limbaj (sintax + semantic)
metod de deducie (inferen)

Scopul SBL
Rezolvarea de probleme cu ajutorul programrii declarative
descriind ceea ce este adevrat sau nu n rezolvarea problemelor
permind tehnici de raionare automat
Exemple de probleme rezolvate de SBRL
demonstrarea automat a teoremelor

De ce se studiaz SBL?
Logica formal este precis i definit

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 15


Sisteme inteligente SBC SBL
Arhitectur
Baza de cunotine (BC)
Sintax
simbolurile atomice folosite de ctre limbaj i regulile de construcie a expresiilor
(structurilor/propoziiilor) limbajului
Semantic
asociaz un neles simbolurilor i o valoare de adevr (Adevrat sau Fals)
regulilor (propoziiilor) limbajului

Modulul ce control (MC)


Metod de inferen sintactic regulile necesare determinrii
unei submulimi de expresii logice teoreme (folosite pentru
obinerea de noi expresii)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 16


Sisteme inteligente SBC SBL
Tipologie
Sisteme bazate pe logica propoziional
se lucreaz doar cu propoziii declarative
obiectele descrise sunt unice i fixe (Ionic este student)

Sisteme bazate pe logica predicatelor de ordin I


se lucreaz cu propoziii declarative, cu predicate (Student(a)) i cuantificri
(variabile cuantificabile pentru orice a, Student(a) AccesWiFi(a))
obiectele descrise pot fi unice sau dinamice (variabile asociate unui obiect unic Toi
studenii sunt prezeni)
predicatele au argumente simple (Student(a))

Sisteme bazate pe logica predicatelor de ordin superior ( 2)


se lucreaz cu propoziii declarative, cu predicate i cuantificri (variabile cuantificabile)
permit variabilelor s reprezinte mai multe relaii ntre obiecte
predicatele pot avea argumente simple, argumente de tip predicat (StudentSenator(Student(a)))
sau argumente de tip funcie (Bursier(a are media peste 9.50))

Sisteme temporale
Reprezint valoarea de adevr a faptelor de-a lungul timpului (Ionic este uneori grbit)

Sisteme modale
Reprezint i fapte ndoielnice (Ionic poate s promoveze examenul)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 17


Sisteme inteligente SBC SBL
Sisteme bazate pe logica propoziional

Baza de cunotine
Poate fi alctuit din:
Simboluri (A, B, P, Q, ...)
Propoziii (formule)
definite astfel:
1. Un simbol
2. Dac P este o propziie, atunci i P este tot propoziie
3. Dac P i Q sunt propoziii, atunci PQ, PQ, PQ, PQ sunt tot propoziii
4. Un numr finit de aplicri ale regulilor (1) (3)
Interpretare a unei propoziii stabilirea valorii de adevr
Model interpretare a unei mulimi de propoziii astfel nct toate propoziiile s fie
adevrate

Modulul de control
realizeaz inferena
stabilirea valorii de adevr a unei propoziii obiectiv pe baza informaiilor din BC
n mai multe moduri
verificarea modelului
enumerarea tuturor combinaiilor posibile pentru valorile de adevr ale simbolurilor i
propoziiilor implicate n SBL
deducia modelului cu ajutorul regulilor de inferen

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 18


Sisteme inteligente SBC SBL
Sisteme bazate pe logica propoziional modulul de control
Problem
Se d o BC = {P1, P2, ..., Pm} format din simbolurile {X1, X2, ..., Xn} i o
propoziie obiectiv O.
Se poate deduce O din BC?

Verificarea modelului
Etape
Se construiete tabelul corespunztor tuturor combinaiilor posibile pentru valorile de
adevr ale simbolurilor
Se determin dac toate modelele BC sunt i modele ale lui O
Modelele BC acele linii n care toate propziiile din BC sunt adevrate
P Q R PQR QP Q BC R BCR
Exemplu T T T T T T T T T
P = Afar este foarte cald
T T F F T T F F T
Q = Afar este umezeal
R = Afar plou T F T T T F F T T
T F F T T F F F T
BC = {PQR, QP, Q} F T T T F T F T T
R = Va ploua?
F T F T F T F F T
F F T T T F F T T
F F F T T F F F T
Dificulti
Nr tuturor combinaiilor crete exponenial cu n timp mare de calcul
Soluia: deducerea prin folosirea regulilor de inferen
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 19
Sisteme inteligente SBC SBL
Sisteme bazate pe logica propoziional modulul de control
Problem
Se d o BC = {P1, P2, ..., Pm} format din simbolurile {X1, X2, ..., Xn} i o
propoziie obiectiv O.
Se poate deduce O din BC?

Regul de inferen Premis Propoziia derivat


Deducia modelului cu ajutorul
Modus ponens A, AB B
regulilor de inferen
Etape i introductiv A, B AB
Construirea unei demonstraii a valorii i eliminativ AB A
de adevr a propoziiei obiectiv pe baza:
propoziiilor Negaie dubl A A
originale din BC
Rezoluie unitar AB, B A
derivate
regulilor de inferen Rezoluie AB, BC AC

Exemplu
Problem Soluie

P = Afar este foarte cald 1. Q Premis


Q = Afar este umezeal 2. QP Premis
R = Afar plou 3. P Modus Ponens (1,2)
4. (PQ)R Premis
BC = {PQR, QP, Q} 5. PQ i introductiv (1,3)
R = Va ploua? 6. R Modus Ponens (4,5)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 20


Sisteme inteligente SBC
Tipologia SBC

Sisteme bazate pe logic (SBL)

Sisteme bazate pe reguli (SBR)

Case-based reasoning

Hypertext manipulating systems

Data bases and intelligent UI

Intelligent tutoring systems


5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 21
Sisteme inteligente SBC
Sisteme bazate pe reguli (SBR)

Coninut i obiective

Proiectare

Arhitectur

Tool-uri i exemple

Avantaje i limite

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 22


Sisteme inteligente SBC SBR
Coninut i obiective
Coninut
exploreaz o multitudine de cunotine date pentru a obine concluzii noi despre activiti dificil de
examinat, folosind metode asemntoare cu experii umani
pot avea succes la problemele fr soluie algoritmic deterministic
ncearc s imite un expert uman (ntr-un anumit domeniu)
SBR nu nlocuiesc experiena uman, dar i lrgesc sfera disponibilitii permind ne-experilor s
lucreze mai bine Sisteme expert (SE)

Scopul SBR
Rezolvarea acelor tipuri de probleme care, de obicei, necesit experi umani prin
Transferul expertizei de la un expert la un sistem computaional i
Apoi la ali oameni (ne-experi)
Exemple de probleme rezolvate de SBR Probleme de recomandare/consultare
Consultant medical aplicaie care nlocuiete medicul (dndu-se simptomele, SE sugereaz un diagnostic i un
tratament)
Detector al problemelor de funcionare ale unei maini
Detector de probleme n sistemele de operare - Microsoft Windows troubleshooting
Consultant financiar

De ce se studiaz SBR?
Pentru a nelege metodele umane de raionare
Experii umani au nevoie de vacane, pot pleca la alte companii, se pot mbolnvi, cer mriri de
salar, etc.
Au foarte mare succes comercial

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 23


Sisteme inteligente SBC SBR
Proiectare

Achiziionarea informaiilor (cunotinelor)

Reprezentarea cunotinelor

Inferena cunotinelor

Transmiterea ctre utilizator a cunotinelor

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 24


Sisteme inteligente SBC SBR
Arhitectur
Baza de cunotine (BC)
Informaiile specifice despre un domeniu

Modulul de control (MC)


Regulile prin care se pot obine informaii noi

Interfaa cu utilizatorul
permite dialogul cu utilizatorii n timpul sesiunilor
de consultare, precum i accesul acestora la faptele i
cunotinele din BC pentru adugare sau actualizare

Modulul de mbogire a cunoaterii


ajut utilizatorul expert s introduc n baz noi cunotine
ntr-o form acceptat de sistem sau s actualizeze baza de cunotine.

Modulul explicativ
are rolul de a explica utilizatorilor att cunotinele de care dispune sistemul, ct i
raionamentele sale pentru obinerea soluiilor n cadrul sesiunilor de consultare. Explicaiile
ntr-un astfel de sistem, atunci cnd sunt proiectate corespunztor, mbuntesc la rndul
lor modul n care utilizatorul percepe i accept sistemul

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 25


Sisteme inteligente SBC SBR
Arhitectur baza de cunotine
Conine
Informaiile specifice despre un domeniu sub forma
unor
fapte afirmaii corecte
reguli - euristici speciale care genereaz informaii
(cunotine)

Rol
stocarea tuturor elementelor cunoaterii (fapte, reguli,
metode de rezolvare, euristici) specifice domeniului de
aplicaie, preluate de la experii umani sau din alte
surse
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 26
Sisteme inteligente SBC SBR
Arhitectur baza de cunotine
Fapte
Definiie
Afirmaii necondiionate corecte (propoziii)
Memorate n calculator sub forma unor structuri de date

Exemplu
Ionic lucreaz la Facebook

Tipologie
n funcie de persisten (ritmul de modificare)
Fapte statice aprox. permanente (Ionic lucreaz la Facebook)
Fapte tranzitive specifice unei instane/rulri (Ionic este n pauza de
mas)
n funcie de modul de generare
Fapte date (Ionic particip la edin)
Fapte derivate rezultate prin aplicarea unor reguli (Dac Ionic este PM,
atunci el trebuie s conduc edina)
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 27
Sisteme inteligente SBC SBR
Arhitectur baza de cunotine
Reguli
Definiie
Euristici speciale care genereaz informaii (cunotine)
O modalitate de exprimare (reprezentare) a cunotinelor
Interdependenele ntre reguli reea de inferen
Fac legtura ntre cauz i efect - memorate n calculator sub forma unor structuri de control
IF cauz THEN efect
Deducie cauz + regul efect
Abducie efect + regul cauz
Inducie cauz + efect regul

Exemplu
O cauz i mai multe consecine (combinate cu I)
DAC Ionic lucreaz la Facebook, ATUNCI el ctig muli bani I are puin timp liber
O cauz i mai multe consecine (combinate cu SAU)
DAC anotimpul este iarn ATUNCI vremea este rece SAU este zpad
Mai multe cauze/antecedente (combinate cu I) i un efect/o consecin
DAC anotimpul este iarn I temperatura este sub 0 grade I bate vntul ATUNCI nu mergem la
plimbare
Mai multe cauze/antecedente (combinate cu SAU) i un efect/o consecin
DAC anotimpul este iarn SAU temperatura este sub 0 grade SAU bate vntul ATUNCI vremea este rece
Mai multe cauze/antecedente (combinate cu I i SAU) i un efect/o consecin
DAC anotimpul este iarn I temperatura este sub 0 grade SAU bate vntul ATUNCI avioanele nu pot
ateriza

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 28


Sisteme inteligente SBC SBR
Arhitectur baza de cunotine
Reguli
Tipologie
n funcie de gradul de incertitudine
Reguli sigure Dac eti angajat, atunci primeti salar
Reguli nesigure Dac este iarn, temperatura este sub 0 grade
n funcie de ceea ce exprim
Relaii ex. Dac studentul are media peste 9.50, atunci el primete burs
Recomandri ex. Dac plou, atunci s lum umbrela
Directive ex. Dac bateria telefonului este gata, atunci trebuie pus la ncrcat
Euristici ex. Dac lumina telefonului este stins, atunci bateria este plin

Avantajul lucrului cu reguli


Uor de neles (o form natural a cunotinelor)
Simplu de explicat
Simplu de modificat i ntreinut

Limitri ale regulilor


Cunotinele complexe necesit exprimarea prin foarte multe reguli
Cutarea n sistemele cu numeroase reguli devine greoaie

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 29


Sisteme inteligente SBC SBR
Arhitectur
Baza de cunotine (BC)
Informaiile specifice despre un domeniu

Modulul de control (MC)


Regulile prin care se pot obine informaii noi

Interfaa cu utilizatorul
permite dialogul cu utilizatorii n timpul sesiunilor
de consultare, precum i accesul acestora la faptele i
cunotinele din BC pentru adugare sau actualizare

Modulul de mbogire a cunoaterii


ajut utilizatorul expert s introduc n baz noi cunotine
ntr-o form acceptat de sistem sau s actualizeze baza de cunotine.

Modulul explicativ
are rolul de a explica utilizatorilor att cunotinele de care dispune sistemul, ct i
raionamentele sale pentru obinerea soluiilor n cadrul sesiunilor de consultare. Explicaiile
ntr-un astfel de sistem, atunci cnd sunt proiectate corespunztor, mbuntesc la rndul
lor modul n care utilizatorul percepe i accept sistemul

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 30


Sisteme inteligente SBC SBR
Arhitectur modulul de control
Coninut
Regulile prin care se pot obine informaii noi
Algoritmi independeni de domeniu
Creierul SBR un algoritm de deducere bazat pe BC i specific metodei de
raionare
un program n care s-a implementat cunoaterea de control, procedural sau
operatorie, cu ajutorul cruia se exploateaz baza de cunotine pentru efectuarea de
raionamente n vederea obinerii de soluii, recomandri sau concluzii.
depinde de complexitate i tipul cunotinelor cu care are de-a face

Rol
cu ajutorul lui se exploateaz baza de cunotine pentru efectuarea de
raionamente n vederea obinerii de soluii, recomandri sau concluzii

Tipologie n funcie de direcia inferenei:


MC cu legtur nainte (forward chaining)
MC cu legtur napoi (backward chaining)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 31


Sisteme inteligente SBC SBR
Arhitectur modulul de control cu legtur nainte (forward
chaining)

Ideea de baz
Se pornete de la informaia disponibil (fapte date, condiii) i se ncearc
ajungerea la o concluzie (fapte derivate) folosind regulile disponibile
Regulile sunt de forma:
partea stng (PS) =>partea dreapt (PD)
partea de condiii =>partea de consecine (efecte)
Se bazeaz pe date (data driven)

Exemplu
ntrebare (problem): Angajatul Popescu are telefon?

Regul: Dac Popescu este angajat, atunci el are telefon.


Fapt curent: Popescu este angajat.
Concluzie: Popescu are telefon.

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 32


Sisteme inteligente SBC SBR
Arhitectur modulul de control cu legtur nainte
(forward chaining)
Algoritm
Ciclul de execuie
Repet
Se selecteaz o regul a crei condiii din PS sunt satisfcute de starea curent a
faptelor stocat n memoria curent
Se execut PD a regulii anterior selectate (schimbnd starea curent)
Pn cnd nu se mai poate aplica nici o regul

Observaii
Faptele sunt reprezentate n memoria curent (de lucru) care este continuu
actualizat
Regulile reprezint aciuni care pot fi executate atunci cnd condiiile specificate
sunt satisfcute de elementele stocate n memoria curent
Condiiile sunt, de obicei, abloane care se potrivesc cu elementele din memoria
curent
Aciunile implic, de obicei, adugarea sau eliminarea unor elemente n memoria
curent

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 33


Sisteme inteligente SBC SBR
Arhitectur modulul de control cu legtur napoi
(backward chaining)
Ideea de baz
Se pornete de la o concluzie potenial (ipotez) i se caut evidene care s o
suporte/contrazic (explicaii)
Regulile sunt de forma:
partea stng (PS) ==>partea dreapt (PD)
Se bazeaz pe scop (goal driven)

Exemplu
ntrebare (problem): Angajatul Popescu are calculator?

Afirmaie: Popescu are calculator.


Fapt curent: Popescu este programator
Regul: Dac Popescu este programator, atunci el are calculator

Se verific setul de reguli i se caut ce trebuie s fie Adevrat (n PS)


pentru ca Popescu s aib calculator: un programator. Popescu este
programator este un fapt, deci atunci el are calculator.
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 34
Sisteme inteligente SBC SBR
Arhitectur modulul de control cu legtur
napoi (backward chaining)
Algoritm
Ciclul de execuie
Se ncepe cu starea obiectiv
Se verific dac obiectivul nu se potrivete cu unul din faptele
iniiale. Dac da, atunci STOP. Altfel, se caut acele reguli a
cror concluzie se potrivete cu starea obiectiv.
Se alege una dintre reguli i se ncearc demonstrarea faptelor
din precondiie (folosind acelai mecanism), care devin noi
obiective.

Observaii
este necesar memorarea obiectivelor urmrite

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 35


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Baza de cunotine
Fapte
A secreii nazale
B sinuzit
C dureri de cap
D - ameeli
E febr
F probleme cu tensiunea
X infecie
Y antibiotic
Z repaus la pat

Reguli
R1: dac A este adevrat i C este adevrat atunci B este adevrat
R2: dac C este adevrat i D este adevrat atunci F este adevrat
R3: dac C este adevrat i D este adevrat i E este adevrat atunci X este
adevrat
R4: dac A este adevrat i B este adevrat i X este adevrat atunci Y este
adevrat
R5: dac D este adevrat i Y este adevrat atunci Z este adevrat

Scop
faptul Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 36


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Algoritm forward chaining

Se repet
Se selecteaz regulile aplicabile pentru faptele existente
n BC
Regulile care conin n PS a lor doar fapte deja
existente n BC
Dac pentru un fapt se pot aplica mai multe reguli, se
alege doar una dintre ele (care nu a mai fost folosit)
Se aplic regulile selectate, iar faptele noi obinute se
adaug n BC
Pn cnd se ajunge la concluzie sau la o regul
care indic oprirea procesului
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 37
Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 1

B F X
A,B,C,D,E A,B,C,D,E,F A,B,C,D,E,F,X

activare activare activare

R1: if A & C then B R1: if A & C then B R1: if A & C then B


R2: if C & D then F R2: if C & D then F R2: if C & D then F
R3: if C & D & E then X R3: if C & D & E then X R3: if C & D & E then X
R4: if A & B & X then Y R4: if A & B & X then Y R4: if A & B & X then Y
R5: if D & Y then Z R5: if D & Y then Z R5: if D & Y then Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 38


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 2

Y
A,B,C,D,E,F,X, Y

activare

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 39


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 3

Z
A,B,C,D,E,F,X,Y,Z

activare

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 40


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Algoritm backward chaining

Se repet
Se selecteaz regulile care se potrivesc cu scopul
Regulile care conin n PD a lor scopul urmrit
Dac pentru un scop se pot aplica mai multe reguli, se alege doar una
dintre ele
Se verific regulile selectate
Se nlocuiete scopul cu premisele (cauzele) regulii selectate, acestea
devenind sub-scopuri
Pn cnd toate sub-scopurile sunt adevrate
Sunt fapte cunoscute (existente iniial n BC)
sunt informaii oferite de utilizator

Se repet
Se aplic regulile anterior verificate n ordine invers
Pn la aplicarea tuturor regulilor i obinerea scopului
urmrit (ca fapt in BC)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 41


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 1.1

A,B,C,D,E

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

scop
Z
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 42
Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 1.1

A,B,C,D,E

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

YBC Y scop
Z,Y
= sub-scop
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 43
Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 1.2

A,B,C,D,E

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

scop
XBC X Z,Y,X
= sub-scop
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 44
Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 1.2

A,B,C,D,E

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

scop
XBC X Z,Y,X
= sub-scop
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 45
Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 2.1

A,B,C,D,E,X X

aplicare

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 46


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 2.1

A,B,C,D,E,X,Y Y

aplicare

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 47


Sisteme inteligente SBC SBR
Arhitectur modulul de control exemplu
Iteraia 2.1

A,B,C,D,E,X,Y,Z Z

aplicare

R1: if A & C then B


R2: if C & D then F
R3: if C & D & E then X
R4: if A & B & X then Y
R5: if D & Y then Z

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 48


Sisteme inteligente SBC SBR
Arhitectur modulul de control
Dificulti

Forward Chaining (FC) sau Backward chaining (BC)?

Rezolvarea conflictelor

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 49


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Forward Chaining (FC) sau Backward chaining (BC)?

FC se recomand a fi folosit atunci cnd:


Toate (sau aproape toate) informaiile se dau de la nceput n
problem
Exist un numr mare de scopuri poteniale, dar doar o parte din ele
sunt realizabile pentru o instan dat a problemei
Este dificil formularea unui scop sau a unor ipoteze

BC se recomand a fi folosit atunci cnd:


Scopul sau ipotezele se dau n problem sau sunt uor de formulat
Exist numeroase reguli care se potrivesc cu faptele din BC, producnd
numeroase concluzii
Datele problemei nu se dau (sau nu sunt uor accesibile), dar trebuie
achiziionate (n anumite sisteme)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 50


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Rezolvarea conflictelor
Dac se pot aplica mai multe reguli, care regul este aleas?
De ex.
R1: dac culoarea este galben atunci fructul este mr
R2: dac culoarea este galben i forma este lunguia atunci fructul este banan
R3: dac forma este rotund atunci fructul este mr

Strategii de alegere a regulii care se aplic


prima regul
o regul aleatoare
regula cea mai specific
cea mai veche regul
cea mai bun regul

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 51


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Rezolvarea conflictelor

Alegerea primei reguli care se potrivete (First in first serve)

Exemplu
R1: dac culoarea este galben atunci fructul este mr
R2: dac culoarea este galben i forma este lunguia atunci fructul este
banan
R3: dac forma este rotund atunci fructul este mr

Observaii
Regulile sunt ordonate doar n sistemele mici

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 52


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Rezolvarea conflictelor

Alegerea aleatoare a unei reguli care se potrivete

Exemplu
R1: dac culoarea este galben atunci fructul este mr
R2: dac culoarea este galben i forma este lunguia atunci fructul este
banan
R3: dac forma este rotund atunci fructul este mr

Observaii
Alegerea poate fi bun sau mai puin bun

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 53


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Rezolvarea conflictelor

Alegerea celei mai specifice reguli (Specificity)


Cea cu cele mai multe condiii, fiind cea mai relevant pentru datele
existente

Exemplu
R1: dac culoarea este galben atunci fructul este mr
R2: dac culoarea este galben i forma este lunguia atunci fructul este
banan
R3: dac forma este rotund atunci fructul este mr

Observaii
O regul specific proceseaz mai mult informaie dect o regul general
longest matching strategy

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 54


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Rezolvarea conflictelor

Alegerea celei mai vechi reguli utilizate (Recency):


Fiecare regul are asociat o marc temporal ultima dat cnd a
fost folosit

Exemplu
R1: dac culoarea este galben atunci fructul este mr [12.01.2012 13.45]
R2: dac culoarea este galben i forma este lunguia atunci fructul este
banan [7.02.2012 21.10]
R3: dac forma este rotund atunci fructul este mr [10.01.2012 10.25]

Observaii
Noile reguli au fost adugate de experi mai puin pregtii dect vechile
reguli (adugate de experi mai bine pregtii cu mai multe cunotine n
domeniu)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 55


Sisteme inteligente SBC SBR
Arhitectur modulul de control dificulti
Rezolvarea conflictelor

Alegerea celei mai bune reguli (Prioritization)


Fiecare regul are asociat o pondere care specific importana ei
(relativ la alte reguli)

Exemplu
R1: dac culoarea este galben atunci fructul este mr [30%]
R2: dac culoarea este galben i forma este lunguia atunci fructul este
banan [30%]
R3: dac forma este rotund atunci fructul este mr [40%]

Observaii
Necesit expertiz uman pentru stabilirea importanei

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 56


Sisteme inteligente SBC SBR
Arhitectur
Baza de cunotine (BC)
Informaiile specifice despre un domeniu

Modulul de control (MC)


Regulile prin care se pot obine informaii noi

Interfaa cu utilizatorul
permite dialogul cu utilizatorii n timpul sesiunilor de
consultare, precum i accesul acestora la faptele i cunotinele
din baz pentru adugarea sau actualizarea bazei.

Modulul de mbogire a cunoaterii


ajut utilizatorul expert s introduc n baz noi cunotine
ntr-o form acceptat de sistem sau s actualizeze baza de cunotine.

Modulul explicativ
are rolul de a explica utilizatorilor att cunotinele de care dispune sistemul, ct i
raionamentele sale pentru obinerea soluiilor n cadrul sesiunilor de consultare. Explicaiile
ntr-un astfel de sistem, atunci cnd sunt proiectate corespunztor, mbuntesc la rndul
lor modul n care utilizatorul percepe i accept sistemul

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 57


Sisteme inteligente SBC SBR
Arhitectur

Interfaa cu utilizatorul
Procesarea limbajului de dialog
Tehnici de procesare a limbajului
Meniuri
Elemente grafice, etc

Modulul de mbogire a cunoaterii


ajut utilizatorul expert s introduc n baz noi cunotine ntr-o form
acceptat de sistem sau s actualizeze baza de cunotine

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 58


Sisteme inteligente SBC SBR
Arhitectur
Modulul explicativ
are rolul de a explica utilizatorilor
cunotinele de care dispune sistemul,
raionamentele sale pentru obinerea soluiilor n cadrul sesiunilor de consultare.

explicaiile ntr-un astfel de sistem, atunci cnd sunt proiectate


corespunztor, mbuntesc la rndul lor modul n care
utilizatorul percepe i accept sistemul

Exemplu
Un expert medical care prescrie un tratament unui pacient trebuie s explice
motivele pentru care a ajuns la acea recomandare
riscurile unui astfel de tratament
alternative la acest tratament

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 59


Sisteme inteligente SBC SBR

Coninut i obiective

Proiectare

Arhitectur

Tool-uri i exemple

Avantaje i limite
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 60
Sisteme inteligente SBC SBR
Tool-uri existente
PROLOG
Limbaj de programare care utilizeaz backward chaining

ART (Inference Corporation)


n 1984, Inference Corporation a dezvoltat Automated Reasoning Tool (ART), un sistem expert
bazat pe forward chaining

CLIPS
NASA preia abilitile de forward chaining ale sintaxei ART i dezvolt C Language Integrated
Production System" (CLIPS)

ART-IM (Inference Corporation)


Inference Corporation implementeaz o versiunea forward-chaining a ART/CLIPS, numit ART-IM.

OPS5 (Carnegie Mellon University)


Primul libaj de IA utilizat pentru sisteme de producie (XCON)

Eclipse (The Haley Enterprise, Inc.)


Eclipse este singurul modul de control pentru C/C++ care suport att forward chaining, ct i
backward chaining

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 61


Sisteme inteligente SBC SBR
Exemple
DENDRAL (1965-1983)
Analizeaz structura moleculelor i propune structuri plauzibile pentru compui chimici noi sau
necunoscui

MYCIN (1972-1980)
Program interactiv pentru
diagnosticarea unor boli infecioase sangvine
Recomandri terapeutice antimicrobiene

EMYCIN, HEADMED, CASNET i INTERNIST


pentru domeniul medical

PROSPECTOR (1974-1983)
Ofer recomandri pentru explorrile mineralelor

TEIRESIAS
pentru achiziia inteligent a cunoaterii

XCON (1978-1999)
Ofer recomandri pentru configurarea calculatoarelor

SBR financiare
ExpertTAX, Risk Advisor (Coopers & Lybrand), Loan Probe, Peat/1040 (KPMG), VATIA, Flow Eval
(Ernst & Young), Planet, Compas, Comet (Price Waterhouse), Rice (Arthur Andersen), Audit
Planning Advisor, World Tax Planner (Deloitte Touche)

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 62


Sisteme inteligente SBC SBR
Avantaje i limite
Avantaje
Oder recomandri celor mai puin experi n anumite domenii
Permit companiilor replicarea celor mai buni angajai
Preiua informaia i cunotinele intelectuale ale experilor i le pun la dispoziia celorlali oameni
Se reduc erorile datoarate proceselor de automatizare a sarcinilor monotone,
repetitive sau critice
Se reduce necesarul de for uman i de timp pentru testarea i analizarea datelor
Se reduc costurile prin accelerarea procesului de observare a greelilor
Se elimin munca pe care oamenii nu ar trebui s o fac (dificil, consumatoare de
timp, susceptibil de erori, care necesit antrenare lung i costisitoare)
Se elimin munca pe care oamenii nu i-o doresc s o fac (luarea unor decizii care
nu-i pot mulumi pe toi sistemele expert nu pot fi acuzate de favoritsime)

Dezavantaje
Domeniu ngust de aplicare a unui SBR
Focus limitat la anumite obiective
Lipsa capacitii de nvare i adaptare
Probleme de ntreinere
Costuri de dezvoltare mari

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 63


Recapitulare
SBC
Sisteme computaionale n care
baza de cunotine i modulul de control se suprapun
SBC pot fi
SBL
exploreaz o multitudine de cunotine date pentru a obine concluzii noi despre
activiti dificil de examinat, folosind metode specifice logicii formale
Componen
limbaj (sintax + semantic) i
metoda de deducie (inferen)

SBR
exploreaz o multitudine de cunotine date pentru a obine concluzii noi despre
activiti dificil de examinat, folosind metode asemntoare cu experii umani
pot avea succes la problemele fr soluie algoritmic deterministic
ncearc s imite un expert uman (ntr-un anumit domeniu)
Componen
Baza de cunotine fapte i reguli
Modulul de control inferen nainte sau napoi
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 64
Cursul urmtor
A. Scurt introducere n Inteligena Artificial (IA)

B. Rezolvarea problemelor prin cutare


Definirea problemelor de cutare
Strategii de cutare
Strategii de cutare neinformate
Strategii de cutare informate
Strategii de cutare locale (Hill Climbing, Simulated Annealing, Tabu Search, Algoritmi
evolutivi, PSO, ACO)
Strategii de cutare adversial

C. Sisteme inteligente
Sisteme bazate pe reguli n medii certe
Sisteme bazate pe reguli n medii incerte (Bayes, factori de
certitudine, Fuzzy)
Sisteme care nva singure
Arbori de decizie
Reele neuronale artificiale
Maini cu suport vectorial
Algoritmi evolutivi
Sisteme hibride

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 65


Cursul urmtor
Materiale de citit i legturi utile

Capitolul V din S. Russell, P. Norvig, Artificial Intelligence: A


Modern Approach, Prentice Hall, 1995

capitolul 3 din Adrian A. Hopgood, Intelligent Systems for


Engineers and Scientists, CRC Press, 2001

capitolul 8 i 9 din C. Groan, A. Abraham, Intelligent


Systems: A Modern Approach, Springer, 2011

5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 66


Informaiile prezentate au fost colectate din
diferite surse de pe internet, precum i din
cursurile de inteligen artificial inute n
anii anteriori de ctre:

Conf. Dr. Mihai Oltean


www.cs.ubbcluj.ro/~moltean

Lect. Dr. Crina Groan -


www.cs.ubbcluj.ro/~cgrosan

Prof. Dr. Horia F. Pop -


www.cs.ubbcluj.ro/~hfpop
5 aprilie 2013 Inteligen artificial - sisteme bazate pe reguli (n medii certe) 67

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