Sunteți pe pagina 1din 1289

Inteligen artificial

1. Introducere n inteligena artificial



Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Introducere n inteligena artificial
1. Introducere
2. Inteligena i inteligena artificial
3. Definiii ale inteligenei artificiale
4. Istoricul inteligenei artificiale
5. Principiile inteligenei artificiale
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Introducere n inteligena artificial
1. Introducere
2. Inteligena i inteligena artificial
3. Definiii ale inteligenei artificiale
4. Istoricul inteligenei artificiale
5. Principiile inteligenei artificiale
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Introducere
IA-ul ncearc s construiasc entiti
inteligente
Este posibil, trebuie doar s ne nelegem pe noi
nine
Trebuie s gsim obiectivele potrivite
Calculatoarele permit punerea n practic a ideilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Introducere n inteligena artificial
1. Introducere
2. Inteligena i inteligena artificial
3. Definiii ale inteligenei artificiale
4. Istoricul inteligenei artificiale
5. Principiile inteligenei artificiale
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Inteligena artificial
Artificial (uor de definit)
Fcut de om, ne-natural, construit
IA-ul este tiina de a construi maini care s
fac lucruri ce ar necesita inteligen dac ar
fi fcute de oameni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Inteligena ce este
Inteligena este mult mai greu de definit
Este de fapt un termen generic pentru multe
capaciti nrudite
[...] capacitatea de a raiona, a planifica, a
rezolva probleme, a gndi abstract, a nelege
idei complexe, a nva repede i a nva din
experien
nvare, perceperea relaiilor
nelegere (lat. intelligere, inter-legere)
Raionament
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Inteligene multiple (I)
Psihologul Howard Gardner a identificat 7 tipuri
distincte de inteligen i mai recent nc 2
Lingvistic
Se refer la capacitatea i plcerea de a citi, scrie, povesti
sau rezolva cuvinte ncruciate
Logico-matematic
Presupune descoperirea modelelor, categoriilor i relaiilor
Se manifest de exemplu n rezolvarea problemelor
aritmetice sau n jocurile de strategie
Spaial
Se refer la posibilitatea de a gndi n imagini i la uurina
rezolvrii unor probleme geometrice spaiale
De exemplu gsirea drumului ntr-un labirint, talentul de a
desena sau de a construi figuri din cuburi Lego
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Inteligene multiple (II)
Corporal-chinestezic
Implic o mare sensibilitate n identificarea i prelucrarea
senzaiilor fizice, de exemplu simirea" ritmului unui dans
Muzical
Presupune existena urechii muzicale", adic a posibilitii
de a percepe i distinge sunete care par la fel altor persoane
Interpersonal
Este dovedit de spiritul de conductor, de uurina
comunicrii i de existena empatiei, adic a capacitii de a
nelege sentimentele altora
Intrapersonal
Reflect o bun cunoatere a propriilor sentimente i
posibiliti
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Inteligene multiple (III)
Natural
Capacitatea de a recunoate modele n natur, de a nelege
diferite specii i de a clasifica obiecte naturale
Biologi etc.
Existenial
Capacitatea de a trata problemele filosofice ale vieii
Scriitori, filosofi, oameni crora le place s citeasc i s-i
pun ntrebri, predicatori etc.


Fiecare capacitate cognitiv ar putea avea un tip
propriu de inteligen?...
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Nou tipuri de inteligen
1. Lingvistic
2. Logico-matematic
3. Spaial
4. Corporal-chinestezic
5. Muzical
6. Interpersonal
7. Intrapersonal
8. Natural
9. Existenial

Testele de inteligen clasice cuprind de obicei
ntrebri referitoare la primele 3 tipuri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Inteligena de ce are nevoie
Percepia
Capacitatea de a face observaii complexe asupra mediului
Prelucrarea informaiilor
Capacitatea de a gestiona i transforma informaii, toate
formele de raionament
Memoria
Capacitatea de a stoca i refolosi informaiile
nvarea
Capacitatea de a dezvolta noi cunotine i abiliti i de a
folosi experiena acumulat
Adaptabilitatea
Capacitatea de a adapta n mod flexibil comportamentul la
situaiile curente
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Inteligena ce face
Capacitatea de a rezolva noi probleme sau de a rezolva
probleme existente n moduri noi, mai eficiente
Inteligen mai mare nseamn atingerea obiectivelor mai des
sau mai repede
Capacitatea de a folosi n mod optim resurse limitate, inclusiv
timpul, pentru a atinge scopuri
Capacitatea de a se adapta la mediu prin schimbarea propriei
persoane sau a mediului
Inteligena evolutiv a speciilor
Delfinii i gndacii de buctrie
Oamenii sunt mai puin adaptai fizic, au trebuit s compenseze
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Inteligena n practic
nelegerea mediului
Mari descoperiri
Focul (~800.000 .Hr.)
Pmntul se mic (~1600)
Tabelul periodic al
elementelor (~1870)
Vitaminele (~1900)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Inteligena n practic
nelegerea mediului
Mari descoperiri
Relativitatea
general (~1920)
ADN (~1960)
ADN-ul uman are
doar 23000 gene
(2003)
Teoria seleciei
naturale (~1860)
Fizica atomic
(sec. XX)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Inteligena n practic
modelarea mediului
Mari invenii
Roata
(~5000 .Hr.)
Scrisul
(~3500 .Hr.)
Motorul
cu aburi
(~1770)
Ceasul
mecanic
(~1300)
Banii
(~660 .Hr.)
Tiparul
(~1439)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Inteligena n practic
modelarea mediului
Alte invenii antice
Agricultura
Domesticirea animalelor
Mari invenii lumea modern
Vaccinurile i antibioticele
Reelele electrice (nu electricitatea)
Telefonul, televiziunea
Trenul, automobilul, avionul
Tranzistorul, microprocesorul, internetul, world wide web
Celula sintetic (JCVI-syn1.0, mai 2010)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Introducere n inteligena artificial
1. Introducere
2. Inteligena i inteligena artificial
3. Definiii ale inteligenei artificiale
4. Istoricul inteligenei artificiale
5. Principiile inteligenei artificiale
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
O conferin de IA
Trebuie s construim
sisteme care gndesc
ca oamenii
Trebuie s
construim sisteme
care acioneaz
raional
Trebuie s
construim sisteme
care acioneaz
ca oamenii
Trebuie s
construim
sisteme care
gndesc
raional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
O conferin de IA
Trebuie s construim
sisteme care gndesc
ca oamenii
Trebuie s
construim sisteme
care acioneaz
raional
Trebuie s
construim sisteme
care acioneaz
ca oamenii
Trebuie s
construim
sisteme care
gndesc
raional
Revoluie! Peste 5 ani. O nou er.
Schimbare de paradigm. Lucrul pe
care l-au omis pn acum este...
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Abordarea #1
A aciona omenete
IA-ul este: Arta de a crea maini care s
ndeplineasc funcii care ar necesita
inteligen dac ar fi ndeplinite de oameni
(Kurzweil)
Poate fi testat cu ajutorul testului Turing
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Testul Turing
Un arbitru (om) se angajeaz ntr-o
conversaie n limbaj natural cu ali 2
participani la experiment, unul om i
altul main
Dac arbitrul nu poate spune cu
siguran cine este omul i cine este
maina, aceasta se spune c a trecut
testul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
n practic
Are nevoie de:
Prelucrarea limbajului natural
Reprezentarea cunoaterii
Raionament automat
nvare automat
Este o dovad de inteligen? (Camera chinezeasc,
Searle)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Abordarea #2
A gndi omenete
IA-ul este: [Automatizarea] activitilor pe
care le asociem cu gndirea uman, activiti
precum luarea deciziilor, rezolvarea
problemelor, nvarea (Bellman)
Scopul este de a construi sisteme care
funcioneaz intern n mod similar cu mintea
omeneasc
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Modelarea cognitiv
tiinele cognitive ncearc modelarea minii umane
pe baza experimentelor
Abordarea cognitiv a IA-ului presupune aciunea inteligent
care n acelai timp imit mintea uman
Trebuie s tim cum funcioneaz mintea
Introspecie
Experimente psihologice
Programele nu trebuie doar s rezolve probleme, ci
s le rezolve n acelai mod ca oamenii
Marvin Minsky Societatea minii
Mintea este ce face creierul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Abordarea #3
A gndi raional
IA-ul este: Studiul calculelor care fac posibile
percepia, raionamentul i aciunea
(Winston)
Folosirea logicii pentru a lua decizii complexe
Aristotel silogismele
Cum poate fi cunoaterea reprezentat logic
i cum poate face deducii un sistem?
Cunotine nesigure? Cunotine informale?
Cred c te iubesc
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Abordarea #4
A aciona raional
IA-ul este: ...preocupat de automatizarea
comportamentului inteligent (Luger,
Stubblefield)
Accentul cade pe comportament
Inferenele sunt utile, dar nu ntotdeauna
necesare
Aciunile reflexe pot fi raionale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
A aciona raional
Aciunile raionale sunt studiate de majoritatea
cercetrilor actuale de IA
Ageni raionali
La rezolvarea problemelor reale, conteaz de fapt
rezultatul
Dect s imitm oamenii care ncearc s rezolve
probleme dificile, mai bine s ncercm s
rezolvm pur i simplu aceste probleme
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Diferenele de abordare
Gndire vs. comportament
Uman vs. raional

Comportamentul este observabil i mai uor
de testat tiinific dect gndirea
Raionalitatea este clar definit
n unele medii complexe, nu se pot realiza
ntotdeauna aciunile optime
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Inteligena natural i
inteligena artificial
Calculatoarele electronice au o arhitectur
diferit de sistemele biologice
Au tipuri diferite de performane
Recunoaterea limbajului vs. calcule complexe
Common sense ( bunul sim) este o
cantitate imens de cunotine implicite,
dobndite din experien
Este provocarea final pentru construirea unei
maini asemntoare cu oamenii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Introducere n inteligena artificial
1. Introducere
2. Inteligena i inteligena artificial
3. Definiii ale inteligenei artificiale
4. Istoricul inteligenei artificiale
5. Principiile inteligenei artificiale
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Fundaiile inteligenei artificiale
Filosofia
Matematica
Economia
Neurotiinele
Psihologia
Ingineria calculatoarelor
Automatica i cibernetica
Lingvistica
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
nceputurile
1943: simulri neuronale (McCulloch, Pitts)
1949: nvarea neuronal (Hebb)
1950, 1951: jocuri de ah (Shannon, Turing)
1951: SNARC, primul calculator neuronal
(Minsky, Edmonds)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Naterea IA-ului
1956: Termenul inteligen artificial: McCarthy,
workshop-ul de la Dartmouth College
Logical Theorist (Newell, Simon)
Entuziasmul timpuriu
1957: General Problem Solver
1958: Lisp, Advice Taker (McCarthy)
1959: Geometry Theorem Prover
1965: Metoda rezoluiei
Program de dame care nva din jocuri
Program pentru analiz matematic
Microworlds
Predicii c IA va putea face orice la un moment dat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Perceptronii
Rosenblatt (1957)
Teorema de convergen a perceptronilor
Clasificator liniar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
O doz de realitate
Programele care funcionau bine pentru
microworlds au euat la aplicarea pe probleme
reale
Rezolvarea n principiu nu este la fel cu rezolvarea n
practic
Explozia combinatorial
Traducerea automat din rus n englez
The spirit is willing but the flesh is weak
The vodka is good but the meat is rotten
Perceptronii (Minsky, Papert, 1969)
Probleme neseparabile liniar (de ex. XOR)
Raportul Lighthill (1973)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Sistemele bazate pe cunotine
Dendral, primul sistem expert (1965)
Spectrometrie


Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Sistemele bazate pe cunotine
Eliza, psihiatrul computerizat (1966)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Alte realizri
1965: Logica vag / fuzzy (Zadeh)
1968: Reprezentarea cunoaterii prin reele semantice
(Quillian)
1970: Prolog
1970: Sistemul expert MYCIN
Infecii sanguine, explicaii, factori de ncredere
EMYCIN, shell de sisteme expert
1973: Algoritmii genetici (Holland)
1975: Reprezentarea cunoaterii prin cadre (Minsky)
1980: Prospector, detectarea depozitelor minerale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
IA-ul devine o industrie
1978: XCON, sistem expert comercial pentru
configurarea calculatoarelor VAX
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
NetTalk
Reea neuronal care nva s citeasc texte n englez
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Succese moderne (I)
1984: Proiectul Cyc (Lenat), colecie de cunotine de
bun sim
1985: Reele bayesiene (Pearl), raionament
probabilistic
1986: Se impune algoritmul back-propagation
(Rumelhart, McClelland), descoperit de fapt n 1969
(Bryson, Ho)
1987: SOAR (Newell, Laird, Rosenbloom)
1988: Societatea minii (Minsky)
1988: HiTech (CMU) l nvinge pe marele maestru de
ah Denker
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Succese moderne (II)
1991: n timpul rzboiului din Golf, planificarea
trupelor ce implicau 50.000 de vehicule militare,
transportatoare i trupe, a fost realizat cu ajutorul
unui sistem de IA, DART
1995: TD-Gammon (Tesauro), joc de table
1995: ALVINN, autovehicul autonom
1995: A.L.I.C.E. chatterbot
1996: Conjectura lui Robbins din logica boolean,
nerezolvat timp de zeci de ani, a fost demonstrat
cu ajutorul unui demonstrator automat de teoreme
1996: HipNav, roboi asisteni pentru chirurgi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Fotbal cu roboi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Juctori de ah
1997: Deep Blue, dezvoltat de IBM, l-a nvins pe
campionul mondial Gari Kasparov
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Roboi expresivi
Cog Project
(Brooks, MIT)



Kismet
(Breazeal, MIT)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Exploratori
2000: Nomad, cutarea meteoriilor n
Antarctica
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Algoritmul Massive (2000)
Stpnul inelelor, 2001-2003
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Art computerizat
Aaron (http://www.kurzweilcyberart.com)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Rspunsuri n limbaj natural
IBM Watson (http://www.ibm.com/watson)
Jeopardy! (2011)
50
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Alte realizri
2002: Kramchik i Deep Fritz fac remiz
2007: Urban Challenge, maini fr ofer, cu premiu de 2 milioane USD
2009: Blue Brain Project model computerizat pentru pri ale
cortexului de mamifere
2009: Google introduce subtitrri automate n videoclipurile YouTube

Interfari ntre neuroni biologici i sisteme electronice
Sisteme de suport al deciziilor care i ajut pe cumprtori s aleag
produsul potrivit: www.activebuyersguide.com
Aplicaii de sumarizare a textelor: www.copernic.com
Traduceri online: translate.google.com (peste 60 de limbi)
Sistem expert n timp real pentru gestionarea sarcinilor de rutin ale
unei nave spaiale (Remote Agent pentru Deep Space 1)
Diagnoz medical de nivel expert
Camere video inteligente pentru monitorizarea traficului auto
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
n Romnia
Programe antivirus
BitDefender, Kaspersky, RAV (acum n Windows Defender)
Metode de clasificare
GECAD ePayment
Detecia fraudelor la pli online
Procter & Gamble
Data mining pentru optimizarea vnzrilor
Ropardo
Soluii pentru optimizarea produciei, business intelligence,
cutri inteligente de informaii
Institute de cercetare
Traducere automat pentru limba romn
Optimizarea traficului rutier
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Viitorul
Se estimeaz c n 2020 calculatoarele vor atinge
puterea de prelucrare i complexitatea minii umane
Vise i temeri
Case inteligente
Roboi-menajer conectai la Internet
Maini autonome
Explorarea spaiului
Educaie personalizat
Interfee neuronale
Nemurire artificial
Degradarea relaiilor sociale umane
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Introducere n inteligena artificial
1. Introducere
2. Inteligena i inteligena artificial
3. Definiii ale inteligenei artificiale
4. Istoricul inteligenei artificiale
5. Principiile inteligenei artificiale
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Principiile IA
Raionalitatea limitat implic o cutare
oportunist
Un sistem de simboluri fizice este necesar i
suficient pentru aciunea inteligent
Numrul magic 70.000 20.000
Cutarea compenseaz lipsa cunotinelor
Cunotinele compenseaz lipsa cutrii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Subdomeniile IA
Recunoaterea
vorbirii
Prelucrarea
limbajului
natural
Viziune
computerizat
Robotic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Subdomeniile IA
Reele
neuronale
Jocuri
Logic fuzzy
Algoritmi
evolutivi
Euristici de
cutare
Raionament
Sisteme
expert
Viaa
artificial (?)
nvarea
automat
Ageni
inteligeni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Concluzii
Inteligena este o colecie de strategii folosite pentru a
optimiza interaciunea cu mediul
n IA exist abordri bazate pe gndire sau
comportament, modelarea minii umane sau raionalitate
S-au fcut progrese substaniale n:
Recunoaterea modelelor i nvare
Probleme de planificare i raionament
Aplicaii ale IA
Industrie, finane, medicin, tiine
Cercetri n IA
Multe probleme sunt nc nerezolvate
IA-ul este un domeniu de cercetare interesant!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
2. Strategii de cutare
Florin Leon
Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare
http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategii de cutare
1. Rezolvarea problemelor prin cutare
2. Cutarea neinformat (oarb)
3. Cutarea informat (euristic)
2
3. Cutarea informat (euristic)
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategii de cutare
1. Rezolvarea problemelor prin cutare
2. Cutarea neinformat (oarb)
3. Cutarea informat (euristic)
3
3. Cutarea informat (euristic)
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea i IA-ul
Metodele de cutare sunt foarte des ntlnite n
sistemele de IA
Un robot autonom utilizeaz metode de cutare:
Pentru a decide ce aciuni i ce operaii de percepie s
efectueze
4
Pentru a decide ce aciuni i ce operaii de percepie s
efectueze
Pentru a anticipa coliziunile
Pentru a planifica traiectoriile
Pentru a interpreta volumul mare de date trimise de senzori
ntr-o reprezentare intern compact
Pentru a diagnostica efectele neateptate etc.
Cutrile pot avea loc secvenial sau concurent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Probleme de cutare
5
15 puzzle
Turnurile din Hanoi
Labirinturi 8 regine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Probleme de cutare reale
6
Planificare Gsirea rutelor
Programarea telescoapelor Navigarea roboilor militari
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Alte aplicaii
Gsirea rutelor
Rezervarea biletelor pentru avioane, trenuri etc.
Reele de calculatoare
Distribuia coletelor potale
7
Distribuia coletelor potale
Proiectarea instalaiilor, VLSI
Proiectarea cablurilor i evilor ntr-o cldire, ntr-o main
Conectarea pinilor circuitelor electronice
Crearea medicamentelor
Gsirea substanelor celor mai potrivite care permit
substanei active s se cupleze la zona dorit
Jocuri video
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Componentele unei probleme de
cutare
Starea iniial
Starea scop
O mulime de operatori
8
O mulime de operatori
Funcia de evaluare
Ct de departe este fiecare stare de starea
scop
Conine cunotine despre fiecare problem
n parte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Formalizarea unei probleme de
cutare
Q este o mulime finit de stri
S Q este o mulime nevid de stri iniiale
G Q este o mulime nevid de stri scop
succs : Q (Q) reprezint mulimea de stri care
9
succs : Q (Q) reprezint mulimea de stri care
pot fi atinse din starea s ntr-un singur pas
Funcia primete o singur stare ca argument i returneaz o
mulime de stri ca rezultat
cost : Q
2
R
+
reprezint costul de a ajunge din
starea s n starea s
Funcia primete 2 stri i returneaz un numr pozitiv
cost(s,s ) este definit doar cnd s succs(s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Definiii
Spaiu de cutare (Spaiul problemei)
Mulimea tuturor strilor care pot fi atinse prin aplicarea
operatorilor disponibili
10
Soluie
Seria de operatori care transform starea iniial ntr-o stare
scop
Metod de rezolvare a unei probleme
O procedur pentru gsirea unei soluii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Rezolvarea unei
probleme este o
problem de cutare
Stare
iniial
Spaiul de cutare
(spaiul problemei)
Soluie
11
Stare
scop
(spaiul problemei)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Soluia
O soluie este o cale care leag nodul iniial de
oricare din nodurile scop
G
12
I
G
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Soluia
O soluie este o cale care leag nodul iniial de
oricare din nodurile scop
Costul cii este suma costurilor arcelor care formeaz
calea
13
calea
O soluie optim este soluia de cost minim
Unele probleme
nu au soluie!
I
G
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Existena soluiei
4 3 2 1 4 3 2 1
14
12
14
11
15
10
13
9
5 6 7 8
4 3 2 1
12
15
11
14
10
13
9
5 6 7 8
4 3 2 1
?
1000 $
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Dimensiunea
spaiului de cutare
8-puzzle 9! = 362 880 stri
15-puzzle 16! 2.09 x 10
13
stri
24-puzzle 25! 10
25
stri
15
24-puzzle 25! 10 stri
Doar jumtate din aceste stri pot fi
atinse dintr-o stare dat
Dar ntr-o abordare simpl acest lucru nu
se cunoate dinainte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
Deseori construirea unei
reprezentri complete a
grafului de cutare
nu este fezabil sau
16
nu este fezabil sau
este prea costisitoare
Algoritmul de rezolvare
trebuie s construiasc
soluia prin explorarea
unei poriuni restrnse
a grafului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
17
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
18
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
19
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
20
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
21
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul problemei
22
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea
23
Care este spaiul problemei?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Abordarea 1
24
Costul unui pas orizontal / vertical = 1
Costul unui pas diagonal = 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Soluia optim
25
Aceast cale este cea mai scurt n spaiul discretizat,
dar nu i n spaiul originar continuu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Abordarea 2
26
Costul unui pas: lungimea segmentului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Abordarea 2
27
Costul unui pas: lungimea segmentului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Soluia
28
Cea mai scurt cale n acest spaiu este
cea mai scurt i n spaiul originar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Misionarii i canibalii
3 misionari, 3 canibali, 1 barc
Barca poate duce 2 persoane
Dac sunt mai muli canibali dect misionari, i
mnnc
29
mnnc
5 operatori: 1C, 1M, 2C, 2M, CM
Alternativ: persoanele individuale (27 de operatori)
Reprezentare: numrul de persoane pe primul mal i
barca
Starea iniial: (3,3,1)
Starea scop: (0,0,0)
O reprezentare mai bun reduce spaiul de cutare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Presupuneri
Mediul este static
Mediul este discretizabil
Mediul este observabil
30
Mediul este observabil
Aciunile sunt deterministe
Dar multe din aceste presupuneri pot fi
nlturate i cutarea tot rmne o metod
important de rezolvare a problemelor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Noduri i stri
Un nod este o structur de date n program
O stare este o configuraie a problemei
Un nod are:
Stare
31
Stare
Nod printe
Operatorul care a fost aplicat pentru a-l genera
Adncime
Cost (al cii parcurse din starea iniial)
Dou noduri diferite pot conine aceeai stare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Frontiera arborelui de cutare
Frontiera este mulimea tuturor nodurilor care
nu au fost nc expandate
2 8
32
1
2
3 4
5 6
7
8
1
2
3 4
5 6
7
8
1
2
3 4
5 6
7 8
1
3
5 6
8
1
3
4
5 6
7
8
2
4 7
2
1
2
3 4
5 6
7
8
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategia de cutare
Frontiera este implementat ca o list
Ordonarea nodurilor n frontier
definete strategia de cutare
33
definete strategia de cutare
De exemplu tratarea listei ca o coad sau
ca o stiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Msuri de performan
Completitudine
Un algoritm este complet dac gsete o soluie
atunci cnd exist una
Dar dac nu exist o soluie?
34
Dar dac nu exist o soluie?
Optimalitate
Un algoritm este optim dac returneaz o soluie
de cost minim cnd problema are soluii
Complexitate
Msoar timpul i volumul de memorie necesare
algoritmului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategii de cutare
1. Rezolvarea problemelor prin cutare
2. Cutarea neinformat (oarb)
3. Cutarea informat (euristic)
35
3. Cutarea informat (euristic)
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea neinformat
Raionamentul const n explorarea
alternativelor
Cutarea n lime (breadth-first search)
36
Cutarea bidirecional
Cutarea n adncime (depth-first search)
Cutarea limitat n adncime (depth-limited
search)
Cutarea iterativ n adncime (iterative
deepening search)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n lime
Nodurile noi sunt inserate la sfritul
frontierei (lista e o coad)
1
37
FRONTIERA = (1)
2 3
4 5
1
6 7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n lime
Nodurile noi sunt inserate la sfritul
frontierei
1
38
FRONTIERA = (2, 3)
2 3
4 5
1
6 7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n lime
Nodurile noi sunt inserate la sfritul
frontierei
1
39
FRONTIERA = (3, 4, 5)
2 3
4 5
1
6 7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n lime
Nodurile noi sunt inserate la sfritul
frontierei
1
40
FRONTIERA = (4, 5, 6, 7)
2 3
4 5
1
6 7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Parametri importani
Numrul maxim de succesori ai oricrei
stri
Factorul de ramificare (branching factor) b
41
Factorul de ramificare (branching factor) b
al arborelui de cutare
Lungimea minim ( cost) a cii ntre
starea iniial i o stare scop
Adncimea (depth) d a celui mai superficial
nod scop din arborele de cutare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evaluarea performanelor
Cutarea n lime este:
Complet
Optim dac un pas are costul 1
Numrul de noduri generate (cazul cel mai
defavorabil)
42
Numrul de noduri generate (cazul cel mai
defavorabil)
1 + b + b
2
+ + b
d
= (b
d+1
-1)/(b-1) = O(b
d
)
Complexitatea de timp i de spaiu este O(b
d
)
Numrul de noduri generate (cazul cel mai favorabil)
1 + b + b
2
+ + b
d-1
+ 1 = 1+(b
d
-1)/(b-1) = O(b
d-1
)
Nu este o diferen foarte mare, performanele sunt destul
de predictibile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Not
Cutarea n lime poate rula la infinit dac:
Problema nu are soluii i:
Spaiul de cutare este infinit sau
Strile pot fi revizitate de mai multe ori
43
Strile pot fi revizitate de mai multe ori
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea bidirecional
s
44
Dou frontiere: FRONT1 i FRONT2
Complexitatea de timp i spaiu este O(b
d/2
) << O(b
d
)
dac ambii arbori au acelai factori de ramificare b
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei (lista e o stiv)
1
45
1
2 3
4 5
FRONTIERA = (1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
46
1
2 3
4 5
FRONTIERA = (2, 3)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
47
1
2 3
4 5
FRONTIERA = (4, 5, 3)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
48
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
49
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
50
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
51
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
52
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
53
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
54
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n adncime
Nodurile noi sunt inserate la nceputul
frontierei
1
55
1
2 3
4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evaluarea performanelor
b: factorul de ramificare
d: adncimea celui mai superficial nod scop
m: adncimea arborelui de cutare
Cutarea n adncime:
Nu este complet
56
Nu este complet
Nu este optim
Cazul cel mai favorabil
Complexitatea de timp i de spaiu este O(d) extrem de rapid
Cazul mediu
Complexitatea de timp este similar cu a cutrii n lime: O(b
d
)
De obicei, DFS este mai rapid dect BFS
Cazul cel mai defavorabil
Complexitatea de timp este O(b
m
) cutarea este lent
Complexitatea de spaiu este O(b*m) excelent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea limitat n adncime
Cutare n adncime cu limitarea la k niveluri
Sub aceast adncime nodurile nu mai sunt
expandate
57
Situaii posibile:
Gsirea unei soluii
Eec (nu exist soluie)
Cutare incomplet (nu exist soluie pe nivelurile
considerate)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea iterativ n adncime
Combin avantajele cutrilor n lime
i adncime
Ideea de baz:
58
Ideea de baz:
Pentru k = 0, 1, 2,
Realizeaz cutare limitat n adncime pentru
limita k
Genereaz nodurile cu adncime k
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea iterativ n adncime
59
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea iterativ n adncime
60
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea iterativ n adncime
61
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evaluarea performanelor
Cutarea iterativ n adncime este:
Complet
Optim dac un pas are costul 1
Cazul cel mai defavorabil
62
Cazul cel mai defavorabil
Complexitatea de timp:
(d+1)*(1) + d*b + (d-1)*b
2
+ + (1)*b
d
= O(b
d
)
Comparabil cu a cutrii n lime, puin mai lent din
cauza repetiiilor
Complexitatea de spaiu: O(b*d)
Comparabil cu a cutrii n adncime, foarte bun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Compararea performanelor
Trei probleme (n ordine cresctoare a complexitii):
15-puzzle: b=2.13
Cubul Rubik: b=13.5
ah: b=35
Timpul i spaiul de prelucrare
63
Timpul i spaiul de prelucrare
1 milion de noduri pe secund
100 octei pe nod
Tabelele urmtoare prezint cazurile cele mai defavorabile
Pentru analiza cazurilor celor mai favorabile:
t
w
: cel mai defavorabil, t
b
: cel mai favorabil
Cutare n lime (BFS), bidirecional t
w
/ t
b
b
Cutare iterativ n adncime (IDS) t
w
/ t
b
b/2
Cutare n adncime (DFS) t
w
este exponenial, t
b
este liniar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15-puzzle, b=2.13
64
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cubul Rubik, b=13.5
65
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
ah, b=35
66
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evitarea repetrii strilor
Evitarea ntoarcerii n starea din care tocmai
s-a plecat
Starea fiului este identic cu starea printelui
67
Evitarea cilor cu bucle
Starea unui nod este identic cu starea unui nod
de pe calea din starea iniial
Evitarea strilor generate anterior
Necesit memorarea tuturor strilor generate:
complexitate de spaiu posibil O(b
d
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategii de cutare
1. Rezolvarea problemelor prin cutare
2. Cutarea neinformat (oarb)
3. Cutarea informat (euristic)
68
3. Cutarea informat (euristic)
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea informat (euristic)
Factorii de ramificare mari sunt o
problem serioas
Trebuie gsit o modalitate de a reduce
69
Trebuie gsit o modalitate de a reduce
numrul de noduri vizitate
Metodele de cutare euristic ncearc
alegerea inteligent a nodurilor care
trebuie expandate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Euristic
= a gsi, evrika = am gsit
O euristic este o metod care furnizeaz
rapid o soluie, nu neaprat optim
Este deci o metod aproximativ, spre
70
Este deci o metod aproximativ, spre
deosebire de un algoritm exact optim
Dei nu garanteaz gsirea soluiei optime,
metodele euristice funcioneaz de obicei
foarte bine
Chiar dac nu gsesc soluia optim, gsesc
de cele mai multe ori o soluie acceptabil
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategii neinformate vs.
Strategii informate
Strategiile neinformate (oarbe)
Nu exploateaz semnificaiile strilor pentru a ordona
nodurile din frontier
Exploateaz doar poziiile nodurilor n arbore
Trateaz toate problemele la fel
71
Trateaz toate problemele la fel
Strategiile informate (euristice)
Ordoneaz nodurile frontierei n funcie de semnificaiile
strilor
Cele mai promitoare noduri sunt plasate la nceputul
frontierei
Utilizeaz cunotinele specifice fiecrei probleme
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea Best-First
Evalueaz ct de bun este un nod
Utilizeaz o funcie de evaluare f care atribuie
fiecrui nod n un numr real pozitiv f(n) 0
72

f(n) este un cost estimat


Cu ct este mai mic f(n), cu att este mai bun
nodul n
Cutarea Best-First sorteaz frontiera n
ordinea cresctoare a lui f
Pentru f egale, se decide aleatoriu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Definirea lui f
Funcii utilizate n general
g(n) este costul cii de la nodul iniial la n
Este cunoscut
h(n) este estimarea costului cii de la n la un nod scop
Este o estimare euristic
73
Este o estimare euristic
Cutarea Greedy
f(n) = h(n)
Cutarea A*
f(n) = g(n) + h(n)
Folosirea numai a funciei g este echivalent cu o
cutare neinformat (cutarea de cost uniform)
Problema principal: gsirea celei mai bune funcii h
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Calitatea cutrii este dat de h
Cnd h = costul pn la scop
Sunt expandate doar nodurile de pe calea corect
Se gsete soluia optim
74
Cnd h < costul pn la scop
Sunt expandate noduri suplimentare
Se gsete soluia optim
Cnd h > costul pn la scop
Soluia optim poate fi trecut cu vederea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: cutarea Greedy
h este distana n linie dreapt
75
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea Greedy
Iai Fgra: prin Piatra Neam
Dac se permite revizitarea strilor, bucl infinit
77
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Performanele cutrii Greedy
Nu este optim
Este incomplet dac:
Nu se folosete o coad de prioriti
78
Nu se folosete o coad de prioriti
Succesorul cel mai promitor este expandat
direct
Nodurile sunt adugate la nceputul cozii
de prioriti (~ cutare n adncime) iar
euristica este constant (de ex. euristica
naiv: h = 0)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea A*
Unul din cei mai populari algoritmi din IA
f(n) = g(n) + h(n), unde:
g(n) = costul celei mai bune ci gsite pn la n
h(n) = o funcie euristic admisibil
79
h(n) = o funcie euristic admisibil (vezi slide-ul urmtor)
Presupunem c: n,n : c(n,n) > 0
ntre dou noduri diferite exist ntotdeauna un
cost pozitiv
Cile infinite au cost infinit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Fie h*(n) costul cii optime de la n la
un nod scop
Funcia euristic h(n) este admisibil
dac:
Euristici admisibile
80
Funcia euristic h(n) este admisibil
dac:
0 h(n) h*(n)
O funcie euristic admisibil este
ntotdeauna optimist (niciodat nu
supraestimeaz)
Dac G este scop,
atunci h(G) = 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: Greedy i A*
f(n) = g(n) + h(n)
81
f(B) = 15 + 20 + 30 = 65
f(C) = 15 +10 + 35 = 60
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Rezultatul 1
A* este complet i optim
Dac nodurile care reviziteaz strile
nu sunt eliminate
82
nu sunt eliminate
A* este eficient optim (engl. optimally
efficient)
Niciun alt algoritm de acelai tip nu
garanteaz expandarea unui numr mai
mic de noduri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Revizitarea strilor
Euristica h este
admisibil
c = 1
2
h = 100 1
83
100
2
1
0
90
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Revizitarea strilor
c = 1
2
h = 100 1
f = 1+100
2+1
84
100
2
1
0
90
104
4+90
?
Dac eliminm acest nod, algoritmul
expandeaz nodul scop vecin i
returneaz o soluie sub-optim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
1
2
100 1
1+100
2+1
Revizitarea strilor
85
100
2
1
0
90
104
4+90 2+90
102
Dac nu eliminm nodurile care reviziteaz
strile, cutarea se termin cu soluia optim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
1
2
100 1
Cum funcioneaz A*
B(101), C(3)
C(3), B(101) sortat dup f
B(101), D(94)
D(94), B(101) sortat dup f
B(101), E(104)
A
B C
86
100
2
1
0
90
Noduri introduse, noduri scoase
n/din coada de prioriti
B(101), E(104)
E(104), D(92)
D(92), E(104) sortat dup f
E(104), E(102)
E(102), E(104) sortat dup f
Scop: E(102)
D
E
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
O euristic h este monoton
(sau consistent) dac:
n i un fiu n al lui n:
h(n) c(n,n) + h(n)
G un nod scop
Euristici monotone
n
n
h(n)
c(n,n)
87
G un nod scop
h(G) = 0
O euristic monoton
este i admisibil
O euristic monoton devine din ce n ce mai
precis cu ct nainteaz n adncimea
arborelui de cutare
(inegalitatea n triunghi)
n
h(n)
h(n)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Crearea de euristici monotone
Ecuaia pathmax
La generarea unui nod fiu n al lui n
f(n) = max( f(n), g(n) + h(n) )
88
f(n) = max( f(n), g(n) + h(n) )
n exemplul anterior: nodul D
f(D) = max( f(B), g(D) + h(D) )
= max( 101, 92 ) = 101
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Rezultatul 2
Dac h este monoton, oricnd este
expandat un nod, A* a gsit o cale
optim ctre acesta
n multe cazuri (dar nu ntotdeauna),
89
n multe cazuri (dar nu ntotdeauna),
monotonia euristicii accelereaz gsirea
soluiei
Dar tot trebuie s se permit revizitarea
strilor pentru a asigura optimalitatea
cutrii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Complexitatea A*
Timp
Calitatea euristicii h scade timpul necesar
Cazul cel mai favorabil: h este perfect, O(d)
Cazul cel mai defavorabil: h = 0, O(b
d
) BFS
91
Cazul cel mai defavorabil: h = 0, O(b ) BFS
Spaiu
Toate nodurile sunt memorate
Cazul cel mai defavorabil: O(n
S
)
n
S
este numrul de stri
A* are n general probleme de spaiu nainte
de a avea probleme de timp
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
IDA*
Cutarea iterativ n adncime A*
(Iterative Deepening A*)
Principiu similar cu acela al cutrii
92
Principiu similar cu acela al cutrii
iterative neinformate n adncime
n loc de niveluri n arbore folosete
contururi de cost ale funciei f
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Pseudocod
93
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Crearea de euristici
O euristic admisibil poate fi vzut ca i
costul soluiei optime a unei probleme
relaxate (prin eliminarea constrngerilor)
Pentru navigarea robotului:
94
Pentru navigarea robotului:
Distana Manhattan corespunde eliminrii
obstacolelor
Distana euclidian corespunde eliminrii
obstacolelor i a constrngerilor de micare pe
grid
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Euristici pentru 8-puzzle (I)
Numrul de
csue diferite
(fr a include
spaiul)
1 2 3
4 5 6
7 8
1 2 3
4 5 6
1 2 3
4 5 6
7 8
1 2 3
4 5 6
7 8
Starea
Starea
curent
95
spaiul)
4 5 6
7 8
7 8
N N N
N N N
N D
Doar 8 este plasat diferit, deci funcia
euristic este evaluat la 1.
Euristica ne spune c o soluie ar putea fi gsit
ntr-o mutare.
Starea
scop
h(s
crt
) = 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Euristici pentru 8-puzzle (II)
Distana
Manhattan (fr
a include spaiul)
3 2 8
4 5 6
7 1
1 2 3
Starea
Starea
curent
3 3
8
2 spaii
3 spaii
96
Doar csuele 3, 8 i 1 sunt plasate
greit, deci funcia euristic ntoarce 8.
Euristica ne spune c o soluie ar putea fi gsit n
cel puin 8 mutri.
4 5 6
7 8
Starea
scop
8
1
1
3 spaii
3 spaii
Total 8
h(s
crt
) = 8
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Modaliti suplimentare de
alegere a funciei euristice
Abordarea maxim
h(n) = max( h
1
(n), , h
m
(n) )
Abordarea statistic
97
Abordarea statistic
Ex. dac n 90% din cazuri cnd h(n) = 14,
h*(n) = 18, atunci cnd valoarea lui h(n)
este 14, returnm 18
Complexitatea euristicii nu trebuie s
afecteze eficiena cutrii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
IDS vs. A*
98
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Concluzii
Metodele de cutare sunt utile cnd:
Spaiul de cutare este mic i
Nu exist alte tehnici disponibile sau
99
Nu exist alte tehnici disponibile sau
Dezvoltarea unei tehnici mai eficiente nu merit
efortul
Spaiul de cutare este mare i
Nu exist alte tehnici disponibile i
Exist euristici bune pentru problema
considerat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
3. Jocuri. Satisfacerea constrngerilor

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Cutarea i jocurile
De-a lungul timpului, jocurile care necesit
explorarea unor alternative au fost
considerate provocri pentru inteligena
uman
Dame (Mesopotamia, cc. 3000 .Hr.)
ah (India, sec. VI d.Hr.)
Go (China, sec. VI .Hr.)
IA-ul folosete deseori jocurile pentru a
proiecta i testa algoritmi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Jocuri
Unul din cele mai vechi subdomenii ale IA-ului
(Zuse, Shannon, Wiener, Turing, anii 1950)
Forme abstracte i pure de competiie care par s necesite
inteligen
Probleme dificile cu o structur iniial minim de
cunotine
Stri i aciuni uor de reprezentat
Puine cunotine necesare despre mediu
Jocurile sunt un caz particular al problemelor de
cutare
Deseori au spaii de cutare foarte mari
Jocurile sunt interesante
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Jocurile i IA-ul
Tradiional, jocurile erau vzute formal, ca o
extensie a algoritmilor de cutare
Recent, tehnicile de IA au devenit mai
importante n jocurile pe calculator
Personaje controlate de calculator
Scenarii mai sofisticate
Medii mai complexe
Aspect general superior
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Jocuri deterministe cu
informaii perfecte
ah
Dame Go
Othelo
X i 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Jocuri nedeterministe cu
informaii perfecte
Table Monopoly
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Jocuri nedeterministe cu
informaii imperfecte
Bridge
Scrabble
Poker
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Jocurile i cutarea
Cutarea clasic: un singur agent, ncearc
fr piedici s i ating obiectivul
Jocurile: cutare n prezena unui adversar
Reprezentarea jocurilor ca probleme de
cutare
Stri: configuraiile tablei de joc
Operatori: mutrile permise
Starea iniial: configuraia curent a tablei
Starea scop: configuraia ctigtoare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Dificulti
Jocurile pot fi probleme de cutare foarte
dificile
Totui uor de formalizat
Gsirea soluiei optime poate fi nefezabil
O soluie care nvinge adversarul este acceptabil
O soluie inacceptabil nu numai c induce
costuri mai mari, ci provoac nfrngerea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Exemple: dimensiunea
spaiului de cutare
ah (drosofila IA-ului)
Factor de ramificare 35
50 de mutri pe juctor
35
100
(10
154
) noduri
10
40
noduri distincte (dimensiunea grafului de cutare)
Go
Factorul de ramificare ncepe de la 361 (tabl 19 x 19)
200 de mutri pe stare, 300 de niveluri
200
300
(10
690
) noduri n arbore
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Noi tehnici necesare (I)
Spaiul de cutare este foarte mare
Nu cunoatem mutarea adversarului
Algoritmii pentru jocuri:
Caut numai pn la o anumit adncime
n arbore
Utilizeaz o funcie de evaluare la
adncimea respectiv
Propag evalurile n sus spre rdcin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Noi tehnici necesare (II)
Modalitatea de joc:
Se consider toate mutrile legale care se pot face
Fiecare mutare conduce ctre o nou configuraie (poziie)
Se evalueaz fiecare poziie rezultat i se determin care este cea
mai bun
Se face mutarea respectiv
Se ateapt mutarea adversarului i se repet algoritmul
Probleme cheie:
Reprezentarea tablei
Generarea tuturor configuraiilor urmtoare valide
Evaluarea unei poziii
Considerarea mai multor mutri n avans
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Funcia de evaluare (I)
Evalueaz valoarea unei poziii
Considernd funciile g i h de la cutarea
clasic, aici conteaz numai h ; g este
irelevant
Este o funcie euristic i cuprinde
cunotinele expert despre domeniu
Inteligena calculatorului depinde n
mare msur de funcia de evaluare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Funcia de evaluare (II)
Presupunem c jocul este de sum zero
Putem folosi o singur funcie de evaluare pentru
ambii juctori
f(n) > 0: poziia n este bun pentru calculator
i rea pentru adversar (om)
f(n) < 0: poziia n este rea pentru calculator
i bun pentru adversar
f(n) 0: poziia n este neutr
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Exemple
X i 0:
f(n) = [numrul de direcii de 3 ptrele deschise pentru calculator] - [numrul de
direcii deschise pentru adversar]
Direciile sunt linii, coloane sau diagonale complete
ah (funcia lui Alan Turing):
f(n) = w(n) / b(n)
w(n) = suma punctelor pieselor albe; b(n) - negre
Majoritatea funciilor de evaluare sunt sume ponderate ale trsturilor unei
poziii:
f(n) = w
1
* t
1
(n) + w
2
* t
2
(n) + ... + w
k
* t
k
(n)
Trsturi pentru ah sunt numrul de piese, plasarea pe tabl a pieselor, ptrele
controlate etc.
pion = 1 punct, cal/nebun = 3 puncte, turn = 5 puncte, regin = 9 puncte
Deep Blue avea 8000 de trsturi n funcia de evaluare
Pot exista combinaii neliniare de trsturi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
3. Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Minimax
Restricii:
2 juctori: MAX
(calculator) i MIN
(adversar)
Determinist,
informaii perfecte
Se selecteaz o
limit de adncime
(de ex. 2) i o
funcie de evaluare
MAX
MIN
MAX
2 5 3 1 4 4 3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
MAX
MIN
MAX
- Se construiete arborele
pn la limita de adncime
- Se calculeaz funcia de
evaluare pentru frunze
2 5 3 1 4 4 3
- Se propag evaluarea n sus
- innd minimele n MIN
2 1
3
- innd maximele n MAX
3
Alege
mutarea
Modul de funcionare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Initialize depthbound;

Minimax (board, depth) =

IF depth = depthbound
THEN return static_evaluation(board);
ELSE IF maximizing_level(depth)
THEN FOR EACH child c of board
compute Minimax(c, depth+1);
return maximum over all children;
ELSE IF minimizing_level(depth)
THEN FOR EACH child c of board
compute Minimax(c, depth+1);
return minimum over all children;
Apel: Minimax(current_board, 0)
Pseudocod
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Jocuri multiplayer
Funcia de evaluare devine vectorial i
red utilitile tuturor juctorilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Alianele
Alianele pot rezulta din aplicarea
strategiilor optime individuale
Cooperarea poate rezulta din urmrirea
comportamentului raional individual
(egoist)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Retezarea alfa-beta
Alpha-Beta Pruning, Elagajul alfa-beta
Optimizare general aplicat algoritmului minimax
Minimax
Creeaz mai nti ntregul arbore (pn la limita de
adncime)
Apoi realizeaz propagarea
Retezarea alfa-beta
ntreese generarea arborelui cu propagarea valorilor
Motivaie
Unele valori obinute n arbore furnizeaz informaii privind
redundana altor pri care nu mai trebuie generate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
MIN
MAX
MAX
2
Ideea alfa-beta
Se genereaz arborele n adncime, de la stnga la dreapta
Se propag valorile finale ale nodurilor ca estimri
iniiale pentru prinii lor
2
5
=2
2
1
1
- Valoarea MIN (1) este deja
mai mic dect valoarea MAX
a printelui (2)
- Valoarea MIN poate doar s
descreasc n continuare
- Valoarea MAX poate doar
s creasc
- Nu are sens s mergem
mai jos sub acest nod
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Terminologie
Valorile (temporare) n nodurile MAX sunt valori ALFA
Valorile (temporare) n nodurile MIN sunt valori BETA
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Principiile alfa-beta (I)
Dac valoarea alfa este mai mare sau egal dect valoarea
beta a unui nod descendent
Atunci se oprete generarea fiilor nodului descendent

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Principiile alfa-beta (II)
Dac valoarea beta este mai mic sau egal dect valoarea
alfa a unui nod descendent
Atunci se oprete generarea fiilor nodului descendent

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
8 7 3 9 1 6 2 4 1 1 3 5 3 9 2 6 5 2 1 2 3 9 7 2 8 6 4
Exemplu: minimax cu alfa-beta
1
2 8
3
5 = 8
4
6 8
7
8 9
9 11 13 17 19 21 24 26 28 32 34 36
10 2
12 4
14 = 4
15 = 4
4 16
18 1
20 3
22 = 5
30 = 5
5 23
5 31
25 3
27 9
29 6
33 1
35 2
37 = 3
3 38
39 = 5
MAX
MIN
MAX
11 evaluri evitate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Retezare n adncime
Pentru arbori cu cel
puin 4 niveluri
min/max, regulile
alfa - beta se aplic
i pentru niveluri
mai adnci
4
4
4
4
4
2
2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Cazul cel mai favorabil:
arbore perfect ordonat
MAX
MIN
MAX
21 20 19 24 23 22 27 26 25 12 11 10 15 14 13 18 17 16
3 2 1 6 5 4 9 8 7
21 24 27 12 15 18 3 6 9
21 12 3
21
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Cazul cel mai favorabil
MAX
MIN
MAX
- Cnd pe fiecare nivel cel mai bun nod este primul din stnga
Doar ramurile ngroate sunt explorate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Profitul
Pentru cazul cel mai favorabil alfa-beta
Numrul de evaluri statice =
2 b
d/2
- 1, dac d este par
b
(d+1)/2
+ b
(d-1)/2
- 1, dac d este impar
n exemplul anterior:
d=3, b=3 9+3-1=11
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Comparaie:
minimax alpha-beta
Graficul are scar logaritmic
Alfa-beta are tot complexitate exponenial
Cazul cel mai defavorabil
Pentru unii arbori alfa-beta nu are niciun efect
Pentru unii arbori este imposibil reordonarea pentru a permite
retezarea
Cazul cel mai
favorabil
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Performanele retezrii alfa-beta
Alfa-beta garanteaz calcularea aceleiai valori pentru rdcin
ca i minimax, cu o complexitate mai mic sau egal
Cazul cel mai defavorabil: nu se face nicio retezare, se
examineaz O(b
d
) noduri





Cazul mediu:





Cazul cel mai favorabil: O(b
d/2
)
Poate cuta pe o adncime de dou ori mai mare dect minimax
Cnd cea mai bun mutare este i prima alternativ generat
n cazul Deep Blue, s-a descoperit empiric c retezarea alfa-beta
a redus factorul mediu de ramificare de la 35 la 6
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Efectul orizontului
Datorit limitei de adncime, se prefer
ntrzierea dezastrelor, dei nu se previn
Soluia: continuarea euristic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Continuarea euristic
n situaii strategice cruciale (regele n
pericol, pierdere iminent de piese, pion
transformat n regin etc.), se extinde
cutarea dincolo de limita de adncime
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Cutarea secundar
Uneori este util verificarea unei mutri
De exemplu, dac se face cutarea pe
6 niveluri (engl. ply) i am gsit cea
mai bun mutare, putem expanda
numai acea poziie pentru nc 2
niveluri pentru a verifica dac rmne
bun n continuare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Retezarea nainte
Forward pruning
Un juctor uman nu ia n calcul toate mutrile
posibile, ci doar pe cele care i se par utile
Se renun la un sub-arbore
Cnd exist mai multe mutri simetrice sau
echivalente
Pentru mutri care par iraionale (care conduc n
situaii aparent defavorbile)
Numai la adncimi mari n arbore
Nerecomandate n apropierea rdcinii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Limite de timp
Chiar i cnd avem limite de adncime,
timpii pot varia mult
Soluie: cutarea iterativ n adncime
La orice moment este disponibil o mutare
Calitatea mutrii crete n timp

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Efectul euristicilor: ahul
Cu minimax putem cuta pe aproximativ 5 niveluri
Un juctor mediu analizeaz 6-8 niveluri
Cu reducerea alfa-beta putem cuta pe aproximativ 10 niveluri
(reducerea alfa-beta face diferena)
Deep Blue
Cutare n medie pe 14 niveluri, maxim 40
Evaluarea a 30 de miliarde de poziii pe mutare
Baz de date cu 700.000 de jocuri
4000 de strategii de deschidere
Toate rezolvrile pentru poziiile cu 5 piese i multe pentru poziiile
cu 6 piese
Metodele euristice recente pot scdea factorul de ramificare de
la 35 la aproximativ 3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Jocuri nedeterministe
Includ elemente
probabilistice
Zaruri, cri de joc
De exemplu: table
Albul a dat 6-5 i are 4
mutri valide:
5-10, 5-11
5-11, 19-24
5-10, apoi 10-16
5-11, apoi 11-16
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Arbori de joc cu noduri-ans
Nodurile ans (cercurile)
reprezint evenimente aleatorii
Pentru un eveniment aleatoriu cu
n rezultate posibile, fiecare nod-
ans are n fii distinci; fiecare
are asociat o probabilitate
Pentru 2 zaruri, sunt posibile 21
de rezultate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Arbori de joc cu noduri-ans
Se folosete minimax pentru a
calcula valorile nodurilor MAX i MIN
Se folosesc valorile ateptate
pentru nodurile-ans
Pentru nodurile-ans la un
nod MAX (de ex. C):
expectimax(C) =
i
(P(d
i
) * maxvalue(i))
Pentru nodurile-ans la un nod MIN:
expectimin(X) =
i
(P(d
i
) * minvalue(i))
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Exemplu
A
1
este cea
mai bun
mutare
2 rezultate
cu prob.
{0.9, 0.1}
A
2
este cea
mai bun
mutare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Funcia de evaluare
Pentru a evita acest caz, funcia de
evaluare f trebuie s fie o transformare
liniar pozitiv a utilitii ateptate a
poziiei
p(x) = probabilitatea de a ctiga din
starea x
f(x) = a * p(x) + b, cu a > 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Performane
Complexitate: O(b
m
n
m
)
n = numrul de posibiliti distincte (de exemplu, pentru un
zar, n = 6)
Pentru jocul de table, cutarea se poate face probabil
pe maximum 3 niveluri
Se poate aplica reducerea alfa-beta estimnd limitele
superioare i inferioare ale valorilor
Pentru aproximarea valorilor se poate folosi simularea
Monte Carlo
Valoarea strii este probabilitatea de a ctiga din acea stare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Satisfacerea constrngerilor
Constraint Satisfaction Problems (CSP)
O mulime de variabile {X
1
, X
2
, , X
n
}
Fiecare variabil X
i
are un domeniu D
i
de valori
posibile
De obicei, D
i
este finit
O mulime de constrngeri {C
1
, C
2
, , C
p
}
Fiecare constrngere este definit pe o submulime
de variabile i arat combinaiile valide ale valorilor
acestora
Scopul: atribuirea unei valori fiecrei variabile astfel
nct toate constrngerile s fie satisfcute
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Variabile: WA, NT, Q, NSW, V, SA, T
Domenii: D
i
= { rou, verde, albastru }
Constrngeri: regiunile adiacente trebuie s aib culori diferite
De ex. WA NT, sau (WA,NT) {(rou,verde), (rou,albastru),
(verde,rou), (verde,albastru),(albastru,rou),(albastru,verde)}
Exemplu: colorarea unei hri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Soluiile sunt atribuiri complete i consistente
De exemplu: WA = rou, NT = verde, Q = rou,
NSW = verde, V = rou, SA = albastru, T = verde
Soluie
respect toate
constrngerile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Graful constrngerilor
PSC binare: fiecare constrngere este definit pe
2 variabile
Graful constrngerilor: nodurile sunt variabile, arcele
sunt constrngeri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Tipuri de PSC
Variabile discrete
Domenii finite
Boolean satisfiability (NP-complet): problema determinrii
dac variabilele unei formule booleene date pot lua valori astfel
nct formula s fie adevrat
Domenii infinite
Planificarea sarcinilor de lucru (job shop scheduling):
variabilele sunt momentele de nceput/sfrit ale fiecrei sarcini

Variabile continue
Momentele de nceput/sfrit pentru observaiile telescopului
Hubble
Constrngeri liniare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Tipuri de constrngeri
Constrngerile unare implic o singur variabil
SA verde

Constrngerile binare implic perechi de variabile
SA WA

Constrngerile de nivel nalt implic 3 sau mai multe
variabile
Probleme criptaritmetice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Probleme criptaritmetice
Variabile: F T U W R O X
1
X
2
X
3

Domenii: {0,1,2,3,4,5,6,7,8,9 }
Constrngeri: DiferiteToate (F,T,U,W,R,O)
O + O = R + 10 X
1

X
1
+ W + W = U + 10 X
2

X
2
+ T + T = O + 10 X
3
X
3
= F, T 0, F 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Probleme reale
Probleme de atribuire
Cine pred ce obiect la ce clase
Problema orarului
Ce curs este predat cnd i unde
Planificarea transporturilor
Planificarea n mediul industrial

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Cutarea incremental
standard
Strile sunt definite de valorile atribuite pn n prezent
Starea iniial: atribuirea vid { }
Operatori: atribuirea unei valori unei variabile neatribuite care
nu intr n conflict cu atribuirea curent
Eec dac nu exist atribuiri valide
Scop: atribuirea curent s fie complet
Aceeai procedur pentru toate PSC
Fiecare soluie apare la adncimea n cu n variabile
Se folosete cutarea n adncime
Calea este irelevant
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Rezolvarea PSC
Cutare clasic: n variabile, d valori
Arbore cu n!d
n
frunze
Exist doar d
n
atribuiri complete posibile
n multe probleme, aceleai stri pot fi atinse
independent de ordinea n care se iau deciziile
Aciuni comutative
n problemele de satisfacerea constrngerilor (PSC),
strile au o structur standard iar algoritmii pot
profita de aceasta
Se pot aplica algoritmi generali, nu doar euristici specifice
unei probleme
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Cutarea backtracking
Comutativitatea atribuirilor
(WA = rou apoi NT = verde) este la fel cu
(NT = verde apoi WA = rou)
Cutarea backtracking este:
Cutare n adncime cu
Atribuirea unei singure variabile ntr-un nod
Poate rezolva problema reginelor cu n 25
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Exemplu de backtracking
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Exemplu de backtracking
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Exemplu de backtracking
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Exemplu de backtracking
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Cutarea neinformat i
backtracking-ul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Jocuri. Satisfacerea constrngerilor
1. Tipuri de jocuri
2. Algorimul minimax
3. Retezarea alfa-beta
4. Jocuri nedeterministe
5. Formalizarea problemelor de satisfacere a constrngerilor
6. Backtracking
7. Euristici de optimizare
8. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Creterea eficienei
algoritmului backtracking
Metodele de optimizare dau creteri
spectaculoase de vitez
Ce variabil s fie atribuit n pasul
urmtor?
n ce ordine s se ncerce valorile?
Se poate detecta eecul mai devreme?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Cea mai constrngtoare
variabil
Se alege variabila cu cele mai multe
constrngeri asupra variabilelor rmase



Util pentru decizii n caz de egalitate,
de exemplu n starea iniial

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Cea mai constrns variabil
Se alege variabila cu cele mai puine
valori permise


Se mai numete euristica celor mai
puine valori rmase
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Cea mai puin constrngtoare
valoare
Pentru o variabil se alege valoarea care
elimin cele mai puine valori n variabilele
rmase




Combinarea acestor euristici face posibil
rezolvarea problemei reginelor cu n 1000
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Verificarea nainte
engl. Forward Checking
La nceput, pentru fiecare variabil se
memoreaz mulimea curent de valori
permise
Cnd se atribuie o valoare n procesul de
cutare, se actualizeaz mulimile de valori
permise pentru toate variabilele
Dac o mulime devine vid, se revine
(se face backtracking)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Backtracking i
Verificarea nainte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Propagarea constrngerilor
engl. Constraint Propagation
Verificarea nainte calculeaz domeniul fiecrei
variabile independent la nceput i actualizeaz un
domeniu numai cnd se fac atribuiri ce influeneaz
direct variabila respectiv
Propagarea constrngerilor duce verificarea mai
departe:
Cnd se terge o valoare din domeniul variabilei X, se
verific toate variabilele conectate la X
Dac aceste variabile se modific, se terg toate valorile
inconsistente conectate la ele .a.m.d.
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Propagarea constrngerilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Verificarea nainte i
Propagarea constrngerilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Propagarea constrngerilor
cu euristici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Complexitatea de timp
Trebuie realizat un compromis ntre calculele
necesare rezolvrii problemei propriu-zise i
calculele necesitate de euristici
Propagarea constrngerilor reduce foarte mult
factorul de ramificare (uneori rezolvarea este aproape
liniar), ns calculele suplimentare sunt laborioase
Pentru majoritatea problemelor uzuale, este
suficient verificarea nainte cu euristicile de
ordonare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Min-Conflicts
Este o metod de cutare local
Poate rezolva problema reginelor cu 1 milion
de regine n aproximativ 50 de pai
A redus timpul de planificare al telescopului
Hubble pentru o sptmn de observaii de
la 3 sptmni la 10 minute
Funcioneaz bine mai ales cnd soluiile sunt
dens distribuite n spaiul strilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Min-Conflicts
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Concluzii
Jocurile ilustreaz faptul c perfeciunea este
deseori de neatins, ns aproximrile sunt
suficiente
Nu avem nevoie ntotdeauna de soluii optime d.p.d.v.
teoretic, ci de soluii prin care ctigm
Tehnicile de satisfacere a constrngerilor sunt
utile cnd:
Problema poate fi exprimat printr-o mulime de
variabile cu constrngeri asupra valorilor lor
Constrngerile sunt relativ simple (de ex. binare)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
4. Metode de optimizare

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Metode de optimizare
1. Algoritmi evolutivi
1.1. ntmplare i scop
1.2. Codarea problemei
1.3. Operatori: selecia, ncruciarea, mutaia
1.4. Optimizri multiobiectiv: NSGA-II
2. Gradientul descendent i clirea simulat
3. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Metode de optimizare
1. Algoritmi evolutivi
1.1. ntmplare i scop
1.2. Codarea problemei
1.3. Operatori: selecia, ncruciarea, mutaia
1.4. Optimizri multiobiectiv: NSGA-II
2. Gradientul descendent i clirea simulat
3. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
ntmplarea poate genera
lucruri interesante
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
ntmplarea poate genera
lucruri interesante
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Prezentare general
Un algoritm evolutiv este o
metod de cutare prin analogie
cu selecia natural biologic
Un AE are o populaie de soluii
poteniale care evolueaz prin
aplicarea iterativ a unor
operatori stohastici
Evoluia soluiilor mai bune se
realizeaz pe baza presiunii
evolutive (favorizarea soluiilor
mai adaptate)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Metafora evolutiv
Natur Algoritm evolutiv
Mediu Problema de optimizare
Indivizii care triesc n
mediu
Soluii poteniale
Gradul de adaptare al
individului la mediu
Calitatea soluiei (funcia
de adaptare / fitness)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Evoluia natural
Speciile nu au ca scop evoluia
Evoluia este doar un efect, o consecin
Organismele neadaptate mor sau mor fr s
se reproduc
Cele care supravieuiesc suficient ca s se
reproduc reuesc acest lucru tocmai fiindc
sunt mai adaptate la mediu
Selecia natural i selecia sexual
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Operatori genetici
Selecia (selection)
Alege un individ cu o probabilitate definit de
calitatea relativ a acestuia
ncruciarea (crossover)
Descompune dou soluii i combin aleatoriu
fragmentele rezultate pentru a forma noi soluii
Mutaia (mutation)
Modific aleatoriu o soluie potenial
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Componentele i fazele unui
algoritm evolutiv
Problema de rezolvat
Principii de codare:
gene, cromozomi
Procedura de iniializare
Selecia prinilor,
reproducere
Operatorii genetici:
ncruciare, mutaie
Funcia de adaptare
Condiia de terminare
Iniializare populaie
Selecie prini pentru reproducere
ncruciare
Introducere copil n populaie
Rezultat
Mutaie
da
nu
Stop?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Algoritmii evolutivi i
algoritmii specializai
Algoritm evolutiv Algoritm specializat
Vitez
Efort
Aplicabilitate
Performan
n general lent
n general rapid
Foarte mic
De obicei mare
General Redus la o clas de probleme
Bun,
crete n timp
De obicei foarte bun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Teorema No Free Lunch
Oricare dou euristici sunt echivalente cnd
performanele lor medii sunt considerate pe
mulimea tuturor problemelor posibile
Nicio euristic nu este mai bun n medie dect
cutarea oarb
Consecine
Performane excelente, robustee mic
Performane slabe, robustee mare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Teorema No Free Lunch
Robustee x Eficien = Constant
Generalitate x Adncime = Constant
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Tipuri de algoritmi evolutivi
Algoritmi genetici
Cea mai popular tehnic
Codarea soluiei cu iruri de numere, de
obicei binare
Strategii evolutive
Codarea soluiei cu vectori de numere reale
Programare genetic
Soluiile sunt programe (de obicei Lisp)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Metode de optimizare
1. Algoritmi evolutivi
1.1. ntmplare i scop
1.2. Codarea problemei
1.3. Operatori: selecia, ncruciarea, mutaia
1.4. Optimizri multiobiectiv: NSGA-II
2. Gradientul descendent i clirea simulat
3. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Codarea
Depinde de problem
Cele mai utilizate tipuri de codare:
Binar
Real
Cu permutri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Exemplu binar:
Problema rucsacului
Umplerea unui rucsac cu o mulime de obiecte
astfel nct valoarea total a articolelor incluse s
fie maximizat
Constrngere: capacitatea rucsacului este
limitat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Problema rucsacului
w
i
greutatea articolului i
p
i
profitul cnd articolul i este inclus
C capacitatea rucsacului
x
i
1 dac articolul i este inclus, 0 altfel

Obiectiv: maximizarea

Constrngere:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Codarea binar
De exemplu 6 articole incluse sau nu
O gen = un bit (x
i
)
Alle = valori posibile ale genei (0 i 1)
Un cromozom un ir de gene (bii)
Cromozomul este o soluie potenial
011001 articolele 2, 3 i 6 incluse
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Decodarea:
funcia de adaptare / fitness
Funcia de adaptare definete practic problema
Spune ct este de bun o soluie (ct este de adaptat
un cromozom)




Cromozom: 011001
Constrngere: w = 50 + 45 + 5 = 100 s C = 100 (ok)
Funcia de adaptare: p = 35 + 18 + 2 = 55
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Satisfacerea constrngerilor
Cromozom: 111001
Constrngere: w = 100 + 50 + 45 + 5 = 200 > C = 100
Violarea constrngerii
Modaliti posibile de rezolvare:
Respingerea soluiei: funcia de adaptare F = -1000000
Reduce diversitatea genetic
Repararea soluiei: cte o gen 1 devine 0 pn este satisfcut
constrngerea
Optimizarea hibrid: nti dup greutate (-w) apoi dup profit
Funcia de adaptare F = -200
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Reprezentarea
ntreag / real
Multe probleme de optimizare implic numere
ntregi sau reale
De exemplu minimizarea funciei f(x,y) = x
2
+ y
2
Valorile ntregi sau reale pot fi codate binar
n = 6 110
r = 3.14 n domeniul [1, 10], pe 8 bii, reprezentare n
virgul fix
1 0000 0000 (0)
10 1111 1111 (255)
r = 3.14 (3.14 - 1) * 255 / (10 - 1) = 60 0011 1100
0011 1100 3.12 (precizia crete cu numrul de bii)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Faleza Hamming
O problem a codrii binare este aa-numita
falez Hamming (engl. Hamming cliff)
01111111 127
10000000 128
Exist o bre n reprezentare care nu exist
n problema originar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Codul Gray reflectat
0 0 0 0 0
1 0 0 0 1
2 0 0 1 1
3 0 0 1 0
4 0 1 1 0
5 0 1 1 1
6 0 1 0 1
7 0 1 0 0
8 1 1 0 0
9 1 1 0 1
10 1 1 1 1
11 1 1 1 0
12 1 0 1 0
13 1 0 1 1
14 1 0 0 1
15 1 0 0 0
0 0 0
1 0 1
2 1 1
3 1 0
0 0 0 0
1 0 0 1
2 0 1 1
3 0 1 0
4 1 1 0
5 1 1 1
6 1 0 1
7 1 0 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Conversia Gray binar

unsigned short binaryToGray(unsigned short num)
{
return (num>>1) ^ num;
}



unsigned short grayToBinary(unsigned short num)
{
unsigned short temp = num ^ (num>>8);
temp ^= (temp>>4);
temp ^= (temp>>2);
temp ^= (temp>>1);
return temp;
}
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Codarea Gray
Problema falezei Hamming
01111111 127
10000000 128
Codarea Gray
01111111 devine 01000000
10000000 devine 11000000
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Reprezentarea
ntreag / real
Este mai bine s codm variabilele
numerice direct ca:
ntregi
Variabile n virgul mobil
f(x,y) = x
2
+ y
2
De exemplu un cromozom poate fi o pereche
(x, y) = (0.12, 0.51)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Reprezentarea prin permutri
Unele probleme necesit ca obiectele s fie aranjate ntr-o
anumit ordine
Exemple:
Algoritmii de sortare: ce elemente apar naintea altora
Ordinea
Problema comis-voiajorului (engl. Travelling Salesman Problem,
TSP): ce elemente apar unul lng altul
Adiacena
Aceste probleme sunt reprezentate mai bine cu ajutorul
permutrilor
Dac avem n variabile, reprezentarea este o list de n ntregi,
fiecare aprnd o singur dat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Exemplu: TSP
Problema
Se dau n orae
S se gseasc un tur
complet de lungime
minim
Codarea
Oraele sunt numerotate
1, 2, , n
Un tur complet este o
permutaie
De ex. dac n = 5, atunci
[1,2,3,4,5] i [3,4,5,2,1]
sunt valide
Spaiul de cutare este
foarte mare
Pentru 30 de orae exist
30! ~ 10
32
tururi posibile

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Codarea cu chei aleatorii
engl. random key encoding

Cromozom: 0.12, 0.65, 0.87, 0.02, 0.35
Decodare: 2, 4, 5, 1, 3
Indexul fiecrei gene n irul sortat
30
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Metode de optimizare
1. Algoritmi evolutivi
1.1. ntmplare i scop
1.2. Codarea problemei
1.3. Operatori: selecia, ncruciarea, mutaia
1.4. Optimizri multiobiectiv: NSGA-II
2. Gradientul descendent i clirea simulat
3. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Selecia
Operatorul de selecie alege un printe (cromozom)
pentru noua generaie, pe baza funciei de adaptare
Selecia acioneaz la nivel de individ
Este independent de reprezentare
Tipuri de selecie:
Rulet (engl. roulette-wheel)
Bazat pe ranguri (engl. rank)
Turnir (engl. tournament)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Ruleta (I)
Ideea de baz: indivizii mai adaptai au anse mai
mari
ansele sunt proporionale cu adaptarea
Implementare
Se atribuie fiecrui individ o parte a ruletei
Se nvrte ruleta de n ori pentru a se alege n indivizi
fitness(A) = 3
fitness(B) = 1
fitness(C) = 2
A
C
1/6 = 17%
3/6 = 50%
B
2/6 = 33%
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Ruleta (II)
Fie S suma tuturor funciilor de adaptare (ale tuturor indivizilor
din populaie)
Se genereaz un numr aleatoriu N ntre 1 i S
Se returneaz cromozomul a crui funcie de adaptare adugat
la suma parial este N


Cromozom: 1 2 3 4 5 6
Fitness: 8 2 17 7 4 11
Suma parial: 8 10 27 34 38 49
N (1 s N s 49): 23
Selectat: 3

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Domeniul funciei de adaptare
Convergen prematur
AFitness prea mare
Genele unui individ foarte adaptat cuceresc
populaia dac restul indivizilor sunt mai puin
adaptai
Algoritmul converge ntr-un optim local
Prea puin explorare, prea mult exploatare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Domeniul funciei de adaptare
Convergen lent
AFitness prea mic
Dup multe generaii, fitness-ul mediu a convers,
dar nu s-a gsit un optim global
Nu exist suficient diferen ntre
fitness-ul maxim i fitness-ul mediu
Presiune selectiv redus (necompetitivitate)
Prea mult explorare, prea puin exploatare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Transpunerea
funciei de adaptare (I)
Scalarea fitness-ului
f(i) = f(i) - |
| > 0 poate fi fitness-ul minim n generaia
curent (sau n ultimele n generaii)
Crete presiunea selectiv, favorizeaz indivizii foarte
adaptai
Pentru convergen lent
| < 0
Scade presiunea selectiv, favorizeaz indivizii cu
adaptare medie
Pentru convergen prematur
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Efectele scalrii fitness-ului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Transpunerea
funciei de adaptare (II)
Scalarea sigma:
f(i) = max( f(i) - (
f
- co
f
), 0)

f
este media valorilor funciilor de adaptare
o
f
este deviaia standard a valorilor
c este o constant, de obicei 2
Regula 3 sigma: 68 95 99.7

f
- 2o
f
reprezint fitness-ul minim acceptat
pentru ca individul s se poat reproduce
Crete presiunea selectiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Rangul funciei de adaptare
Indivizii sunt numerotai n ordinea cresctoare a
fitness-ului
Valoarea efectiv a fitness-ului este mai puin
important, conteaz rangul n populaie
Probabilitile de selecie se bazeaz pe fitness-ul
relativ, nu absolut
Numrul de start i incrementul influeneaz
rezultatele
1,2,3,4,... (presiune selectiv mai mare)
10,12,14,16,... (presiune selectiv mai mic)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Selecia bazat pe ranguri
Populaie cu N indivizi
Cel mai adaptat individ primete rangul N-1,
cel mai puin adaptat primete rangul 0
Sortarea populaiei presupune calcule
suplimentare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Ordonarea liniar
P(i) = 1 = 2 i 1 s s 2
De exemplu: = 0, = 2
determin numrul de urmai ai celui mai puin
adaptat individ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Selecia prin turnir (I)
Ruleta i rangul se bazeaz pe statisticile
globale ale populaiei
Pot aprea probleme la paralelizare
Ideea fundamental:
Se aleg aleatoriu k membri din populaie i se
determin cel mai adaptat dintre acetia
Se repet procedura pentru a selecta mai muli
prini
Mai rapid dect seleciile prin rulet i
ranguri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Selecia prin turnir (II)
Probabilitatea selectrii individului i depinde de:
Rangul lui i
Dimensiunea eantionului k
Un k mai mare crete presiunea selectiv
Participanii selectai rmn n bazinul de
mperechere (mating pool)?
Dac nu rmn, crete presiunea selectiv
Cel mai adaptat individ din turnir ctig
ntotdeauna?
Turnir determinist sau probabilistic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Turnirul probabilistic
Se alege cel mai adaptat individ cu probabilitatea p
Se alege al doilea cel mai adaptat individ cu
probabilitatea p (1 - p)
Se alege al treilea cel mai adaptat individ cu
probabilitatea p (1 - p)
2

i aa mai departe

De ex. k = 4, p = 0.7
p
1
= 70%
p
2
= 21%
p
3
= 6%
p
4
= 3%
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Elitismul
Cel mai adaptat individ este copiat direct
n noua populaie
Sau primii cei mai adaptai (mai rar)
Asigur faptul c niciodat nu se va
pierde soluia cea mai bun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
ncruciarea
ncruciarea combin 2 cromozomi prini
pentru a produce un nou cromozom fiu
Noul cromozom poate fi mai bun dect ambii
prini dac ia cele mai bune caracteristici de la
fiecare printe
ncruciarea are loc cu o probabilitate definit
de programator
De obicei n intervalul (0.75, 0.95)
Dac se folosete elitismul, poate fi 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
ncruciarea cu un punct
Se alege un punct aleatoriu n cei doi prini
Se divid prinii la punctul de ncruciare
Se creeaz unul sau doi copii prin unirea
extremelor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Operatori alternativi de
ncruciare
Performanele ncrucirii cu un punct depind
de ordinea n care sunt reprezentate variabilele
Este mai probabil s se menin mpreun
genele alturate
Nu se pot menine mpreun genele de la
capetele diferite ale irului
Subiectivitatea poziional (engl. positional
bias)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
ncruciarea cu n puncte
Generalizarea ncrucirii cu 1 punct
Se aleg aleatoriu n puncte de ncruciare
Se divid prinii conform acestor puncte
Se reunesc fragmentele, alternativ
Tot mai exist o subiectivitate poziional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
ncruciarea uniform
Se genereaz o masc uniform
Masca determin ce bii sunt copiai de la fiecare
printe
Densitatea biilor din masc determin cantitatea de
material genetic luat de la fiecare printe
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
ncruciarea cu valori reale
Discret
Valoarea fiecrei gene n copilul z vine de la un printe (x,y)
cu probabiliti egale:
z
i
= x
i
sau y
i
Se poate folosi ncruciarea cu 1 punct, n puncte sau
uniform
Aritmetic
Se creeaz copii ntre prini:
z
i
= o x
i
+ (1 - o) y
i
, cu 0 s o s 1
Parametrul o poate fi:
Constant
Aleatoriu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
ncruciarea cu permutri (I)
ncruciarea normal va crea de obicei
soluii invalide





S-au descoperit numeroi operatori care
combin informaiile de ordine sau adiacen
de la prini
1 2 3 4 5
5 4 3 2 1
1 2 3 2 1
5 4 3 4 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
ncruciarea cu permutri (II)
Ideea este pstrarea ordinii relative n care apar
elementele
Se alege un fragment arbitrar din primul printe
Se copie fragmentul n (primul) copil
Se copie numerele care nu exist n primul fragment
n (primul) copil
Se ncepe de la punctul de diviziune
Folosind ordinea din al doilea printe
Analog pentru al doilea copil, dac este cazul, cu
rolurile prinilor inversate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
ncruciarea cu permutri (III)
Se copie fragmentul selectat din primul printe:
1, 2, 3, 4



Se copie restul din al doilea printe n ordine:
9, 7, 8, 6, 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Mutaia
Se modific fiecare gen independent cu o probabilitate
p
m
numit rat de mutaie
ntre 1 / d i 1 / lc
d = dimensiunea populaiei, lc = lungimea cromozomului
De obicei 1-2%
Compromis:
Prea puine mutaii convergen prematur (optim local)
Prea multe mutaii cutare aleatorie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Mutaia real
Resetarea valorii unei gene la un
numr aleatoriu din domeniul ei de
definiie
Reglarea valorii unei gene
De obicei gaussian
Media: valoarea veche
Deviaia standard: definit de utilizator
Liniar
Valoarea veche q%
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Mutaia pentru permutri
Operatorii normali de mutaie conduc la
soluii invalide




Mutaia pentru permutri trebuie s modifice
cel puin 2 gene
Rata de mutaie reflect aici probabilitatea
modificrii ntregului ir, nu a genelor
individuale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Mutaia prin interschimbare
Se aleg aleatoriu 2 gene i li se
interschimb poziiile
Pstreaz majoritatea informaiilor de
adiacen (4 legturi rupte), afecteaz
mai mult ordinea

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Mutaia prin inversiune
Se aleg aleatoriu 2 gene i se
inverseaz subirurile dintre ele
Pstreaz majoritatea informaiilor de
adiacen (numai 2 legturi rupte),
afecteaz foarte mult ordinea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Mutaia prin distorsionare
Se alege o submulime de gene i se
rearanjeaz aleatoriu alelele din poziiile
respective

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
ncruciare sau mutaie?
Au funcii diferite
Doar ncruciarea poate combina informaiile
de la prini
Doar mutaia poate introduce noi informaii
(alele) n populaie
ncruciarea nu schimb frecvena alelelor din
populaie
Pentru a atinge optimul global, de multe ori
este nevoie de o mutaie norocoas
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Criterii de terminare
Problema final este de a decide cnd s se
termine execuia algoritmului
Mai multe soluii posibile:
Dup un numr prestabilit de generaii
Cel mai utilizat criteriu
Cnd populaia a convers
Raportul dinte cel mai mare fitness i fitness-ul mediu
(sau cel mai mic) scade sub un prag
mbuntirea fitness-ului mediu timp de dou (sau mai
multe) generaii scade sub un prag
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Alegerea parametrilor
Dimensiunea populaiei poate fi n jur de 50, dar
pentru probleme dificile poate fi mai mare
Euristic: dimensiunea populaiei trebuie s fie aproximativ
numrul de gene x 10
Prea puini cromozomi algoritmul nu are diversitatea
necesar gsirii soluiei
Prea muli cromozomi algoritmul va fi mai lent, fr a se
mbunti calitatea soluiei
Numrul maxim de generaii variaz de obicei ntre
100-1000
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Exemplu de convergen
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Metode de optimizare
1. Algoritmi evolutivi
1.1. ntmplare i scop
1.2. Codarea problemei
1.3. Operatori: selecia, ncruciarea, mutaia
1.4. Optimizri multiobiectiv: NSGA-II
2. Gradientul descendent i clirea simulat
3. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Optimizarea multiobiectiv
Multe probleme reale (sau majoritatea) implic
optimizarea mai multor obiective, de multe ori
contradictorii
De exemplu minimizarea costului unui produs i
maximizarea calitii sale (simultan)
Cost
mai bine
Compromisuri acceptabile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Abordarea convenional
Sum ponderat
f(x) = w
1
f
1
(x
1
) + w
2
f
2
(x
2
) ++ w
n
f
n
(x
n
)
w
i
= 1
Avantajul principal: simplitatea
Se poate aplica un algoritm scalar
Probleme
Determinarea ponderilor
Obiectivele diferite msoar diferite aspecte ale calitii soluiei
i deseori este greu de stabilit importana lor relativ
Returneaz o singur soluie la un moment dat
Unele soluii sunt imposibil de gsit
Detalii mai trziu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Algoritmi genetici multiobiectiv
Multi-Objective Genetic Algorithms (MOGA)
Se bazeaz pe conceptul de dominan Pareto
O soluie S
1
domin o soluie S
2
dac i numai dac:
S
1
nu este inferioar lui S
2
n raport cu toate obiectivele
S
1
este strict superioar lui S
2
n raport cu cel puin un
obiectiv
Mulimea tuturor soluiilor nedominate se numete
frontul Pareto
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Exemplu: dominana Pareto
Minimizarea costului i a numrului de
defecte ale unui produs software
Soluiile A, B, C sunt nedominate
Soluia X este dominat de A
Soluia Y este dominat de B
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Estimarea frontului Pareto
n fiecare generaie, mulimea indivizilor
nedominai este o estimare a frontului
Pareto real (necunoscut)
MOGA returneaz cea mai bun estimare a
frontului Pareto
ntruct mulimea de soluii reprezint
diferite compromisuri ntre obiective,
utilizatorul poate alege
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Ponderarea (continuare)
Prin ponderare, unele soluii sunt imposibil de gsit
Poderarea este sensibil la forma frontului Pareto
De exemplu: F = w
1
f
1
+ w
2
f
2
Front convex: fiecare punct
de pe frontul Pareto este un
minim stabil i poate fi
determinat prin schimbarea
ponderilor
Front concav: doar cele 2
capete ale frontului Pareto
sunt minime stabile i pot
fi determinate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
NSGA-II
Un algoritm rapid, elitist, cu sortare
nedominat (Deb et al., 2000)
O meta-euristic: utilizeaz un GA simplu la
care se adaug calcularea frontului Pareto
Genereaz noua populaie folosind selecia
prin turnir i ncruciri i mutaii normale
Reunete populaia veche cu populaia nou
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
NSGA II: Fronturi Pareto
Sortare nedominat a populaiei pe ranguri, astfel nct
membrii de rang n domin toi membrii de rang > n
Membrii de rang 1 constituie mulimea nedominat, adic
aproximarea curent a frontului Pareto
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
NSGA-II: Sortarea
Scopul (incluznd elitismul): selectarea celor mai buni
n cromosomi din populaia de dimensiune 2n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
NSGA-II:
Distana de aglomerare
Crowding distance
Indivizii care aparin aceluiai front sunt sortai pe baza
aglomerrii
Un individ mai bun are o distan de aglomerare mai mare
Efectul este selecia indivizilor aflai n regiuni mai puin aglomerate
Previne omogenizarea soluiilor (convergena prematur)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
NSGA-II:
Distana de aglomerare
Crowding distance
Indivizii care aparin aceluiai front sunt sortai pe baza
aglomerrii
Un individ mai bun are o distan de aglomerare mai mare
Efectul este selecia indivizilor aflai n regiuni mai puin aglomerate
Previne omogenizarea soluiilor (convergena prematur)
pentru extreme,
distana se consider
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
NGSA-II: Exemplu
Minimizare:
f
1
(x,y) = x
f
2
(x,y) = (1+y) / x

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Exemplu: Front Pareto concav
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Aplicaii ale AE
Proiectare
Design molecular
Invenii biomimetice
Hardware evolutiv
Rutare n
telecomunicaii
Rutarea mrfurilor
Analiz cinetic
chimic
Criptare
Jocuri
Generator de glume
Strategii financiare
Marketing
http://brainz.org/15-real-world-applications-genetic-algorithms
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Concluzii - AE
Concept uor de neles
Rezolv probleme complexe
Accept funcii
nedifereniabile
Gsesc optimul global
Optimizeaz funcii
multiobiectiv
Prezint robustee (cutare
paralel populaia de
soluii)
Uor de paralelizat i
distribuit
Soluia se mbuntete n
timp
Uneori sunt foarte leni, mai
leni dect algoritmii
specializai
Gsirea unei soluii bune
ntr-un interval mare de
timp nseamn lipsa unei
soluii bune ntr-un interval
de timp acceptabil
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Metode de optimizare
1. Algoritmi evolutivi
1.1. ntmplare i scop
1.2. Codarea problemei
1.3. Operatori: selecia, ncruciarea, mutaia
1.4. Optimizri multiobiectiv: NSGA-II
2. Gradientul descendent i clirea simulat
3. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Tehnici alternative de optimizare:
Gradientul descendent
engl. Hill climbing
~ gradient ascendent, dac funcia este continu i este
maximizat, gradient descendent dac este minimizat
Se pleac dintr-un punct ales aleatoriu din spaiul de
cutare p
0
Punctul curent p
c
p
0
Se genereaz unul sau mai multe puncte vecine p
v
Dac funcia obiectiv ntr-un punct vecin este mai bun
dect cea curent, p
c
p
v
Se alege primul vecin mai bun (Greedy, Simple HC)
Se alege vecinul cel mai bun (Steepest Ascent HC)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Hill climbing cu AE
Pe baza unui cromozom, se genereaz un
numr de n vecini folosind numai mutaia
Se alege vecinul cu funcia de adaptare cea
mai bun, care devine cromozomul curent
Se repet paii pn la ndeplinirea condiiei
de oprire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Probleme
Optime locale
Creste
Platouri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
HC cu puncte multiple de start
Rezultatul metodei HC depinde de
punctul de start p
0

Soluie: HC cu puncte multiple de start
(engl. multiple-point hill climbing)
Se repet procedura de m ori cu puncte de
start diferite (aleatorii) i se alege n final
soluia cea mai bun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Clirea simulat
Algoritm stohastic inspirat din clirea
metalurgic
nclzirea i apoi rcirea controlat a unui
material
nainte dup
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Clirea simulat
Cldura face ca atomii s i piard poziiile
fixe (minimul local al energiei interne) i s
viziteze aleatoriu stri cu energie mai ridicat
Rcirea lent le d mai multe anse s
gseasc o configuraie cu o energie intern
mai mic dect cea iniial (corespunztoare
minimului global al problemei de optimizare)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Descriere
Procedur asemntoare cu HC
Dar se poate trece i ntr-o stare inferioar cu o anumit
probabilitate
Dac vecinul este mai bun, p
c
p
v
Dac starea curent este mai bun dect starea
urmtoare (a vecinului)
Se calculeaz diferena funciilor obiectiv: E = E
c
- E
v
Se consider temperatura curent T, mare la nceput i care
scade n timp
Probabilitatea de a accepta tranziia n starea inferioar este:
P = exp(-E / T)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Programul de clire
Temperatura iniial este mare (teoretic
infinit) i tinde n timp la 0
Dac programul de rcire este suficient de
lung, algoritmul garanteaz gsirea optimului
global
De asemenea, trebuie s existe suficiente
iteraii la fiecare nivel de temperatur
Un numr exponenial de pai n raport cu
dimensiunea problemei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Metode practice de rcire
1. Scderea liniar a temperaturii
2. Scderea geometric: T = T *
Temperatura iniial poate fi 1000, 10000
< 1, de obicei ntre 0.8 i 0.99 (mai bine mai mare)
Un numr constant de iteraii la fiecare temperatur
3. Scderea mai lent a temperaturii: T = T / (1 + )
are o valoare foarte mic
E suficient o singur iteraie la un nivel de temperatur
4. Se ncepe cu o temperatur foarte mare i se
rcete rapid pn cnd 60% din soluiile mai
proaste sunt acceptate
Aceasta este temperatura real de start i rcirea se face
apoi mai lent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Comportament
La nceput, la temperaturi mari, exist o probabilitate
mai mare de acceptare a unor stri inferioare
Algoritmul poate iei din vecintatea unui optim local
Spre final, algoritmul devine asemntor cu HC
ncearc gsirea punctului optim din vecintate, care ar
putea fi optimul global
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Criterii de terminare
1. Cnd T se apropie de 0
Cu o scdere geometric, T nu atinge 0
niciodat
2. Cnd nu se mai fac tranziii, nici n stri mai
bune nici mai rele
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Concluzii
Algoritmul gradientului descendent este
foarte simplu de implementat
Are probleme cu optimele locale
Clirea simulat are ca obiectiv gsirea
optimului global
Performanele depind mult de alegerea
parametrilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
5. Reprezentarea cunoaterii

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Este posibil reprezentarea
cunoaterii?
Se presupune c exist o lume real
obiectiv, independent de orice observator
Simbolurile sunt entiti abstracte care pot ine
locul obiectelor din lumea real
Diferenele dintre observatori sunt de cele
mai multe ori ignorate
Set comun de semnificaii ale simbolurilor
Matematic, limbaje formale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Modelarea lumii reale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Caracteristici ale
reprezentrii cunoaterii
Abstractizarea
Reprezentarea numai a informaiilor necesare unui
anumit scop
Raportul dintre expresivitate i eficien
Unele reprezentri expresive sunt ineficiente
Reprezentare expresiv: fracii, radicali (2/3, 2)
Reprezentare eficient: virgul mobil
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Sistem cognitiv
Totalitatea pieselor de cunoatere, a
modului de stocare i a procedurilor de
acces la acestea definesc un sistem
cognitiv
7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Ierarhia cunoaterii (I)
n funcie de nivelul de
complexitate semantic,
cunoaterea poate fi
structurat pe mai multe
niveluri, sub forma unei
piramide (Ackoff, 1988)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Ierarhia cunoaterii (II)
Semnale
Fr semnificaie simbolic
De exemplu scriere hieroglific necunoscut
Date
Secvene de simboluri cu sens, valoare pur sintactic
Informaii
Date acumulate ntr-un context cu semnificaie,
au caracteristici semantice
cine, ce, unde, cnd
Cunotine
Aplicarea informaiilor
cum, ce nseamn
nelepciune
nelegerea principiilor, valorilor
de ce

informaii analitice, tendine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
nelegere i nelepciune
nelegere
D.p.d.v. cognitiv: mai multe perspective asupra unui concept
D.p.d.v. comportamental: abilitatea de a aplica
Mai multe perspective cresc ansele de aplicare n mai multe
situaii sau domenii
nelepciune
Utilizarea soluiilor din diferite zone ale cunoaterii (a
experienei) direct sau prin analogii n viaa de zi cu zi i mai
ales pentru luarea deciziilor importante
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Exemple
Date
Temperatura este de 10 grade. Plou
Informaii
Temperatura a sczut cu 10 grade i apoi a nceput s plou
Cunotine
Dac umiditatea este foarte mare i temperatura scade mult,
atmosfera nu mai poate reine vaporii de ap i deci ncepe
s plou
nelepciune
Cel mai bun lucru pe care l poi face cnd plou este s lai
ploaia s-i urmeze cursul (H. W. Longfellow, 1807-1882)
The best thing one can do when it rains is to let it rain
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Cunoaterea specializat
Cunotinele unui nespecialist
despre un fenomen sunt globale,
amorfe, nestructurate
Pentru un expert, cunotinele
despre acelai fenoment sunt
organizate, precise, punctuale i
sistematizate
Un domeniu de expertiz poate
avea ntre 50.000 i 100.000 de
piese de cunoatere specifice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Sistem expert
Un sistem expert este un program care
utilizeaz cunoatere i proceduri de inferen
pentru a rezolva probleme suficient de dificile
pentru a necesita n mod normal intervenia
unui expert uman n vederea gsirea soluiei
Pe scurt, sistemele expert sunt programe care
nmagazineaz cunotine specializate, provenite
de la experi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Sistemul esenial
Un sistem expert trebuie s conin
obligatoriu 3 module principale, care
formeaz aa-numitul sistem esenial
Baza de cunotine
Descrierea elementelor i relaiilor
Motorul de inferen
Aplic procedurile de control, construiete raionamentul
Baza de fapte
Memoria auxiliar / temporar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Structura general a unui SE
Un sistem expert mai conine o serie de module ce asigur
comunicarea cu operatorul i expertul uman
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Explicare i evoluie
Este important ca sistemele expert:
S explice raionamentul
Dac acest lucru nu este posibil, utilizatorii umani s-ar
putea s nu-l accepte
Trebuie s existe suficiente meta-cunotine pentru
explicaii iar programul trebuie s ruleze n pai inteligibili
S poat dobndi noi cunotine i s-i poat
modifica cunotinele vechi
De obicei, singurul mod de a introduce cunotine ntr-un
sistem expert este prin interaciune cu un expert uman
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Avantaje
Sunt colecii de informaii valoroase
Sunt indispensabile n lipsa expertizei umane
n unele situaii, pot fi mai ieftine i mai eficiente dect
experii umani
Pot fi mai rapide dect experii umani
Pot fi folosite pentru instruirea de noi experi umani
La cerere, pot explica premisele i linia de raionament
Trateaz incertitudinea ntr-o manier explicit care, spre
deosebire de cazul experilor umani, poate fi inspectat i
verificat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Limitri
Nu pot raiona pe baza intuiiei sau bunului sim
(engl. common sense)
Aceste cunotine nu sunt uor identificabile
Sunt limitate la un domeniu restrns
Cunotine din alte domenii nu pot fi uor integrate, nici nu pot
generaliza n mod convingtor
Procesul de nvare nu este automat
Pentru actualizrile cunotinelor este nevoie de intervenia uman
Cunotinele nmagazinate n baza de cunotine depind
foarte mult de expertul uman care le exprim i
articuleaz
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Reele semantice
Reelele semantice (Quillian, 1968) sunt o ncercare
de modelare a modului cum gndim despre concepte
Dezvoltate iniial pentru a reprezenta semnificaia
cuvintelor limbajului natural
Nodurile reelei sunt cuvinte care descriu concepte
Arcele descriu relaiile cu alte concepte
Indic semnificaia enunului
De aici vine i denumirea de reele semantice
Procesul de inferen se realizeaz prin urmrirea
arcelor i nodurilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Definiie
O reea semantic este o modalitate grafic
de reprezentare a cunoaterii n modele de
noduri, semnificnd concepte, interconectate
prin arce etichetate, sugernd relaiile dintre
concepte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Reele semantice simple
Reelele semantice simple folosesc etichete care
descriu relaiile fundamentale dintre concepte i
instane
instan
concept
(mulime)
atribut
concept concept
A-Kind-Of
(un-fel-de)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Interpretri multiple
Delimitarea dintre aceste relaii nu este foarte
strict, ea depinznd de viziunea persoanei
care construiete reeaua
De exemplu, urmtoarele reprezentri sunt
echivalente:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Exemplu
Reelele semantice permit i utilizarea de etichete mai
generale pentru arce
O proprietate important a acestui mod de reprezentare
este motenirea trsturilor
Rex are patru picioare fiindc este cine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Concepte complexe
S presupunem c dorim s definim conceptul fizic
de for i cteva noiuni asociate acestuia
Trebuie s alegem mai nti relaiile pe care le vom
reprezenta:
fora aplicat unei mase provoac accelerarea acesteia
acceleraia produs este invers proporional cu masa
acceleraia produs este direct proporional cu fora
acceleraia este schimbarea vitezei n unitatea de timp
viteza este distana parcurs n unitatea de timp
masa are greutate ntr-un cmp gravitaional
acceleraia gravitaional pe Pmnt este de 9,81 m/s
2
fora se msoar n Newtoni

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Reele semantice sortate
Utilizate pentru specificarea unor diferene de
natur structural ntre entiti, care nu pot fi
relevate numai prin etichetare
O propoziie poate fi privit i ca un eveniment
produs de instanierea predicatului care
sugereaz aciunea
Celelalte componente ale propoziiei sunt legate
de acest predicat i se identific prin eticheta
relaiei cazuale asociate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Tipuri de relaii (I)
Relaia de predicaie
O aciune sau o stare
Relaia de tip agent
O entitate care are capacitatea de a efectua aciunea
(subiectul logic al propoziiei)
Ion citete cartea Cartea este citit de Ion
Relaia de tip receptor
O entitate care beneficiaz de rezultatul aciunii
Relaia de tip obiect
O entitate care este afectat de aciunea specificat

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Tipuri de relaii (II)
Relaia de instrument
O entitate pe care agentul o folosete la efectuarea aciunii
Relaia loc
O entitate care exprim o poziie n spaiu (locul desfurrii
aciunii)
Relaia timp
Exprim timpul momentan
Pentru a specifica un interval de timp se utilizeaz:
Dou momente (iniial i final)
Relaia durat, care indic numai intervalul, fr a-l fixa pe
scara timpului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Exemplu
Dimineaa, la pia, Ion cumpr flori pentru
Maria
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Exemplu
Pescarul ine undia n ap
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Exemplu
Seara, pescarul a pescuit din apa Dunrii pete
pentru familia sa
Instrument implicit: undia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Predicaia de tip proces (I)
Nu exist un agent definit explicit, rolul acestuia
fiind ndeplinit de un instument
Exemplu: Valurile erodeaz faleza
Nu se poate spune cu precizie care valuri erodeaz
faleza; valurile sunt un instrument al naturii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Predicaia de tip proces (II)
Fora valurilor erodeaz faleza
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Enunuri complexe
Mai multe relaii de predicaie, corespunztoare frazelor cu
mai multe propoziii
Exemplu: Omul care se scoal de diminea departe ajunge
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Avantaje i dezavantaje
Reprezentarea
natural a conceptelor
Ierarhia conceptelor
poate fi urmrit uor
i este permis
motenirea
proprietilor generice
de ctre instane
Lipsa unei semantici
formale, reprezentarea
depinde de nelegerea
utilizatorului
Reprezentarea este
dependent i de
limbajul folosit pentru
descriere

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Dependena conceptual
Dependena conceptual (Schank, 1972) este o
teorie despre modul de reprezentare a diferitelor
tipuri de cunotine despre evenimentele coninute n
mod uzual n propoziii exprimate n limbaj natural
Exprim relaiile dintre concepte ntr-o manier
independent de limba n care au fost exprimate la
origine propoziiile
Nu se lucreaz direct cu cuvintele folosite n propoziie
Cuvintele sunt grupate n primitive conceptuale, care sunt
combinate pentru a forma nelesuri n orice limb
particular
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Decompoziia enunurilor
n cazuri conceptuale
Ideea pe care se bazeaz aceast reprezentare este faptul c
aciunile au aa-numitele cazuri conceptuale, de exemplu orice
aciune trebuie s aib:
o manifestare - un tip anumit de aciune
un actor - un agent responsabil de ndeplinirea aciunii
un obiect - lucrul asupra cruia se acioneaz
Reprezentarea prin dependen conceptual presupune o
abordare decompoziional, care analizeaz propoziia n limbaj
natural pentru a reine structura sa de baz, elementele
semantice fundamentale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Primitive pentru
aciuni fizice generale
PTRANS
transferul locaiei fizice a unui obiect
a trimite (un obiect undeva), a merge (undeva),
a se plimba, a fugi, a zbura, a nota
PROPEL
aplicarea unei fore fizice asupra unui obiect
a mpinge, a trage
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Primitive pentru
aciuni fizice ale lumii vii
MOVE
micarea unei pri a corpului
a da din cap, a ridica mna
INGEST
transferul unui obiect din exterior n interiorul corpului unei fiine
a mnca, a respira
EXPEL
transferul unui obiect din interior n exteriorul corpului unei fiine
a scuipa, a plnge
GRASP
apucarea, inerea unui obiect de ctre o fiin
a prinde, a ine, a apuca
SPEAK
a produce sunete
a vorbi, a ipa, a pronuna
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Primitive pentru
aciuni mentale
MTRANS
transferul unei informaii mentale
a comunica, a spune, a povesti, a uita, a-i aminti, a nva
MBUILD
construcia unei noi informaii pe baza unor informaii
deinute anterior
a decide, a rezolva, a stabili, a hotr
ATTEND
concentrarea ateniei unui organ de sim asupra unui stimul:
a asculta, a vedea, a citi
aceste aciuni pot fi grupate sub forma unor primitive de
percepie: SEE (a vedea), HEAR (a auzi), SMELL (a mirosi),
FEEL (a pipi, a simi), TASTE (a gusta)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Primitive pentru
stri mentale
MLOC
locaii mentale n general
CP
procesor contient (engl. Conscious Processor)
locul unde se afl o idee cnd cineva se gndete la ea
IM
memorie intermediar (engl. Intermediate Memory)
LTM
memorie de lung durat (engl. Long Term Memory)
de exemplu, amintirea unui lucru poate fi considerat un
transfer de informaie mental (MTRANS) din LTM n CP
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Primitive pentru
aciuni sociale
ATRANS
transferul unei relaii abstracte
a da (transfer de posesie)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Primitive pentru
categorii conceptuale
ACT
aciuni
PP
obiecte (engl. picture producers)
AA
proprieti ale aciunilor (engl. action aiders)
PA
proprieti ale obiectelor (engl. picture aiders)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Sgei. Cazuri
Notaie specific
sgeile indic direcia dependenei
sgeile duble indic o legtur bidirecional ntre
actor i aciune
Pentru a sugera cazurilor enunurilor, se
folosesc urmtoarele litere:
o indic o relaie de tip obiect
R indic o relaie de tip receptor
i indic o relaie de tip instrument
D indic o relaie de tip destinaie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Nuanele temporale
Pentru marcarea nuanelor temporale ale aciunilor,
se utilizeaz urmtoarele simboluri:
p timp trecut
f timp viitor
absena unui simbol timp prezent
t aciune de tip tranziie
t
s
nceputul tranziiei
t
f
tranziie ncheiat
k aciune de tip continuu
aciune fr limit de timp
? interogativ
/ negativ
c condiional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Dependen bidirecional
ntre un actor i evenimentul pe care acesta l
cauzeaz exist o dependen bidirecional,
de vreme ce nici actorul i nici evenimentul
nu pot fi considerai separat
Exemplu: Ion se plimb
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Relaia obiect-proprietate
Metoda permite reprezentarea relaiei dintre un
obiect i o proprietate care l descrie
Multe descrieri de stare sunt reprezentate n
dependena conceptual sub form de scri numerice
Numerele n sine nu au o semnficaie deosebit, ns
mai multe elemente de aceeai natur prezente n
aceeai structur pot diferi numai prin poziionarea
numeric pe scara corespunztoare
Exemplu: Mihai a fost bolnav
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Proprieti atributive
Relaia dintre un obiect i o proprietate n
cazul n care proprietatea are un rol sintactic
atributiv i nu predicativ este indicat mai jos
Direcia sgeii este spre conceptul descris
Exemplu: floare frumoas
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Schimbarea strii unui obiect
Exemplu: Clima este ntr-un proces de
nclzire
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Relaia concept-instan
Relaia dintre dou obiecte, primul fiind
o instan a conceptului desemnat de
cel de-al doilea
Exemplu: Maria e profesoar
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Posesie. Locaie
Un obiect furnizeaz o anumit informaie despre un
altul
Cele mai ntlnite tipuri de informaie de acest tip
sunt posesia (notat POSS-BY) i locaia (notat LOC)
Direcia sgeii este spre conceptul descris
Exemplu: cartea lui Radu
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Relaia aciune-obiect
Relaia dintre o aciune i obiectul su este
indicat mai jos
Direcia sgeii este dinspre obiect spre aciune
Exemplu: Studentul a nvat cursurile
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Aciune, surs, receptor
La reprezentarea precedent, putem
considera n plus sursa i receptorul aciunii
Exemplu: Studentul i-a dat cursurile colegului
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Instrumentul aciunii
Dac avem n vedere i instrumentul unei aciuni, acesta
trebuie s fie ntotdeauna complet conceptualizat, adic s
conin o aciune i nu numai un singur obiect fizic
Exemplu: George nu bea suc cu paiul
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Sursa i destinaia unei aciuni
Exemplu: Carmen a scos civa bani
pentru un ceretor
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Momentul unei aciuni
De asemenea, putem introduce ntr-o
reprezentare i momentul de timp la care are
loc o aciune
Exemplu: Ion va merge mine la plimbare
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Refereniere indirect
Dac momentul de timp la care are loc o aciune este
desemnat nu direct (ca n exemplul precedent), ci de
o alt conceptualizare, reprezentarea se va modifica
Exemplu: Pe cnd Ion se plimba, a vzut-o pe Geta
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Locul unei aciuni
Locul desfurrii unei aciuni se reprezint n mod
asemntor
Exemplu: Am vzut un film interesant la cinematograf
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Relaii cauzale
Prin dependen conceptual poate fi descris i
relaia cauzal ntre dou conceptualizri
n acest caz, sgeile au sensul invers celui din
implicaia logic obinuit
Exemplu: Maria a cumprat o carte de la Ioana
Reprezentare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Avantaje (I)
ncearc s ating independena fa de limbajele naturale
Reprezentarea se bazeaz pe primitive care nu depind de cuvintele
din propoziii, ci de conceptele rezultate din analiza semnificaiei
acestora
Descompunerea n primitive dezvluie structura conceptual
fundamental a enunului
n ideea c dependena conceptual ar putea fi standardizat i
c ar putea constitui un limbaj comun pentru analiza
enunurilor, traducerea automat ar deveni o problem de
codare n reprezentarea standard i apoi generare ntr-o
anumit limb
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Avantaje (II)
Notaia formalizat nlesnete construirea de parsere
Unul dintre primele parsere pentru dependen conceptual a fost
realizat de Riesbeck (1974), care ncerca transformarea propoziiei
de intrare ntr-o form canonic uor de memorat computaional i
care s faciliteze deduciile i parafrazele
Unul din motive principale pentru care se dorete n general
reprezentarea este realizarea inferenelor
n cazul de fa, multe din inferene se bazeaz numai pe
semnificaia primitivelor, ceea ce simplific foarte mult acest proces
Multe inferene sunt coninute n reprezentarea nsi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Dezavantaje (I)
Descompunerea n primitive conceptuale de nivel
sczut este dificil sau chiar imposibil n unele
situaii
Se pune problema seleciei arbitrare a tipurilor de
primitive, ntruct nu a fost prezentat niciodat o
metodologie convingtoare n acest sens
Primitivele sunt prea puine pentru reprezentarea
detaliilor i nuanelor
La un moment dat, s-a pus problema descompunerii lor n
sub-primitive, care s rezolve acest neajuns
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Dezavantaje (II)
Ierarhizarea conceptelor nu este evident, ca n cazul
reelelor semantice; este deci neclar modalitatea n
care s-ar putea defini un concept prin gen proxim i
diferene specifice
Teoria dependenei conceptuale este n primul rnd o
modalitate de reprezentare a evenimentelor, n timp
ce obiectele fizice sunt n general descrise ca uniti
atomice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Teoria cadrelor
Oamenii nu interpreteaz noile situaii construind de
fiecare dat o structur nou de cunotine, ci
folosesc structuri memorate, derivate din
experienele anterioare
Pentru a analiza o experien nou, se utilizeaz o
structur deja existent, care se particularizeaz cu
detaliile situaiei curente
Marvin Minsky (1975) a propus teoria cadrelor
(engl. frame theory), n care e cuprins att
informaie declarativ, ct i procedural
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Definiie
Un cadru este un ablon general, n care
datele noi sunt interpretate n termenii sau
conceptele experienei dobndite anterior
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Exemplu
O camer de hotel
Ne ateptm s aib: pat, baie, msu, scaun,
telefon etc.
Detaliile se completeaz cnd e nevoie: culoarea
perdelelor, localizarea ntreruptoarelor i prizelor
etc.
Toate informaiile despre o camer generic
de hotel sunt organizate ntr-o structur
conceptual
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Exemplu: camera de hotel
cadru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Informaii stereotipe
Un cadru are atribute (engl. slots,
attributes), care pot avea valori
(engl. values):
Valori primitive
Referine la alte cadre
Proceduri
De ex. dac nu e fcut patul, sunm la recepie
Valorile implicite se bazeaz pe prototipuri
Un biat are o minge
?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Valori implicite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Elementele unui cadru
Informaii de identificare
Relaiile cu alte cadre
telefon de hotel telefon mijloc de comunicare
Descriptorii cerinelor, utilizai pentru recunoatere
Un scaun are 20-40 cm nlime, 4 picioare, sptar de 60 cm
Informaii procedurale privind utilizarea structurii
Informaiile implicite
Informaii despre noile instane
Culoarea pturii nu este specificat n definirea patului
Valoarea se completeaz cnd este nevoie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Cadrele i reelele semantice
Cadrele sunt mai succinte i mai clare
Obiecte complexe pot fi reprezentate ca un singur cadru,
n locul unei reele complexe
Au capacitatea de a organiza ierarhic informaiile
Nodurile unei reele semantice sunt pe acelai nivel de
generalitate i semnficaia lor depinde de interpretarea
utilizatorului
Cadrele suport motenirea, iar la crearea unui obiect
se realizeaz umplerea (engl. filling in) atributelor
cu valorile implicite
Se pot executa i proceduri
Cadrele obiectele din POO
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Presupuneri implicite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Reprezentarea cunoaterii
1. Reprezentarea simbolic
2. Sisteme expert
3. Reele semantice
4. Dependena conceptual
5. Reprezentarea prin cadre
6. Reprezentarea prin scenarii
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Scenariile
Construite n vederea crerii de programe
care s neleag limbajul natural
Oamenii i organizeaz cunotinele n
structuri corespunztoare unor situaii
tipice
Cnd subiectul unei povestiri de schimb,
oamenii fac o scurt pauz n citit, pentru a-i
schimba structurile de cunotine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Definiie
Un scenariu (engl. script) este o modalitate
de reprezentare a cunoaterii ce descrie o
secven stereotip de evenimente ntr-un
anumit context, adic situaii care se repet,
pstrnd aceeai structur (Schank &
Abelson, 1977)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Elementele unui scenariu
Condiii de intrare
Rezultate
Proprieti
Lucrurile care sprijin desfurarea scenariului
De ex. ntr-un restaurant: mese, scaune, meniuri
Roluri
Aciunile pe care le ndeplinesc participanii
De ex. chelnerul ia comanda, clientul pltete
Scene
mprirea scenariului pe aspecte temportale
De ex. intrarea n restaurant, comanda, luarea mesei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Exemplu
pentru specificarea
aciunilor se folosete aici
dependena conceptual
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Exemplu - limbaj natural (I)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Exemplu - limbaj natural (II)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Utilitatea scenariilor
Utilitatea scenariilor rezult din faptul c, n lumea real,
exist diverse modele de apariie a evenimentelor, modele
datorate relaiilor cauzale dintre evenimente
Aceste evenimente descrise ntr-un scenariu alctuiesc un
lan cauzal, al crui punct de start l reprezint condiiile
iniiale, iar punctul final const n rezultate
n cadrul lanului, evenimentele sunt conectate att cu
evenimentele anterioare, care le determin apariia, ct i
cu evenimentele ulterioare, pe care le autorizeaz la
rndul lor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Concluzii
Inteligena n general i inteligena artificial n special necesit
cunoatere
Reprezentarea cunoaterii poate fi dificil: cunoaterea e
voluminoas, e greu de caracterizat cu precizie i e n
permanent schimbare
Modaliti tradiionale de reprezentare a cunoaterii sunt:
Reelele semantice (apropiate de limbajul natural, permind
ierarhizarea conceptelor)
Dependena conceptual (independent de limbajul natural)
Cadrele (pentru situaii stereotipe)
Scenariile (pentru secvene de evenimente stereotipe)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
6. Metode de inferen n logica
propoziional i predicativ

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Logica i limbajul natural
n limbajul natural, multe propoziii sunt
ambigue i pentru ele exist mai multe
moduri de reprezentare
Reprezentrile simple sunt preferabile, ns pot
face imposibile unele tipuri de raionament
Logica aduce formalizarea codrii
cunotinelor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Logica propoziional
Formalismul logic permite derivarea de noi
cunotine din cunotine deja existente, prin
deducie logico-matematic sau inferen
O propoziie e adevrat dac deriv din
propoziii cunoscute ca adevrate
Domeniu strns legat de demonstrarea
automat a teoremelor i inteligena artificial
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Formule bine formate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Propoziie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Deducie. Teorem
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Tautologie
Demonstrare semantic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Teorema de completitudine a
calculului propoziional
n calculul propoziional mulimea teoremelor
coincide cu mulimea tautologiilor

Noiunea de teorem este de natur sintactic, n
timp ce noiunea de tautologie are o natur
semantic
Teorema subliniaz faptul c aceste noiuni sunt
echivalente
Orice tautologie poate fi dedus pe cale sintactic
Orice propoziie adevrat n orice caz este o teorem i
poate fi folosit ulterior pentru inferene
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Metode de inferen: MP, MT
Modus ponendo ponens (prescurtat Modus Ponens)
Premise: P Q i P
Concluzie: Q
Lat. ponere = a pune, a afirma
Modalitatea care afirmnd [P] afirm [Q]
Afirmarea antecedentului
Modus tollendo tollens (prescurtat Modus Tollens)
Premise: P Q i non Q
Concluzie: non P
Lat. tollere = a lua, a nega
Modalitatea care negnd [Q] neag [P]
Negarea consecventului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Reguli de transformare a
formulelor (I)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Reguli de transformare a
formulelor (II)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Forma normal conjunctiv
engl. Conjunctive Normal Form
O conjuncie de disjuncii
un I de SAU-uri

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Transformarea n FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Transformarea eitin (I)
G.S. Tseitin - On the complexity
of derivation in propositional
calculus, Studies in Constructive
Mathematics and Mathematical
Logic, part 2, pp. 115-125, 1968
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Transformarea eitin (II)
Evit expandarea exponenial
Rezultatul este proporional cu dimensiunea formulei
originare
Noua formul poate s nu fie echivalent cu formula
originar
De exemplu dac x
i
= fals
Formula originar este (ne)satisfiabil dac i numai
dac formula nou este (ne)satisfiabil
Proprietate necesar pentru procesul de rezoluie
19
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Rezoluia propoziional (I)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Rezoluia propoziional (II)
Ideea de baz a acestei forme de
raionament este deducerea din dou
propoziii, n care unul din termeni apare cu
valori de adevr contrare, a unei concluzii din
care este eliminat termenul respectiv


Se bazeaz pe reducere la absurd
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Demonstrarea semantic
Termenii nu sunt echivaleni,
dar implicaia este adevrat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Exemplul 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Procesul de rezoluie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Rezoluia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Rezoluia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Rezoluia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Logica predicatelor
Formulele depind de variabile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Exemple

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Reducerea la inferena
propoziional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Reducerea la inferena
propoziional
Orice formul predicativ de ordinul I poate fi propoziionalizat
Mulimea de termeni ar putea fi infinit
Father(Father(Father(John)))
Teorema lui Herbrand
Dac o propoziie este implicat de o baz de cunotine de ordin I,
demonstraia implic o submulime finit a bazei de cunotine
propoziionalizate
Ordinul termenilor crete iterativ n adncime
Mai nti simbolurile constante: Richard, John
Apoi la adncimea 1: Father(Richard), Father(John)
.a.m.d. pn cnd demonstraia reuete
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Forma normal conjunctiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Exemplu: transformarea n FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Transformarea n FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Transformarea n FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Transformarea n FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Transformarea n FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Substituia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Unificarea
Unificarea returneaz o mulime de substituii
Pot exista mai multe unificri posibile
Pentru orice pereche unificabil de expresii exist
cel mai general unificator (unic)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Raionamentul nainte
Clauz Horn definit
Disjuncie n FNC cu un singur termen pozitiv
Formula este echivalent cu o implicaie


Procedur de cutare
Descoperirea unei ci n spaiul problemei care conduce de
la starea iniial la starea scop
Cnd cutarea pornete din starea iniial ctre
starea scop, avem de-a face cu un raionament
nainte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Raionamentul nainte
Dac procesul de cutare este modelat printr-un sistem de
producie, rezolvarea problemei apare drept construirea
unui arbore al operaiilor posibile
Rdcina arborelui este starea iniial
Nivelul urmtor al arborelui se completeaz prin
determinarea tuturor regulilor a cror parte stng se
potrivete nodului rdcin
Noile noduri se creeaz prin intermediul prii drepte a
regulilor considerate
Procedura se repet pentru fiecare nod, pn cnd se
genereaz o configuraie identic strii scop
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Exemplul 1
Problema cnilor cu ap
Avem la dispoziie 2 cni de capaciti diferite A i B
Scopul este ca n cana A s rmn o cantitate specificat
de ap prin aplicarea a 6 operaii posibile:
umple cana A (A)
umple cana B (B)
toarn apa din cana A n cana B (AB)
toarn apa din cana B n cana A (BA)
vars cana A (A)
vars cana B (B)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Exemplul 1
n figur se prezint
arborele rezultat prin
aplicarea celor 6 operaii
unei probleme concrete:
cana A are capacitatea de
4l, cana B are capacitatea
de 3l iar n final n cana A
trebuie s se obin un
rest de 2l
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Exemplul 1
Datorit complexitii sale,
numai primul nivel a fost
completat, n rest
urmrindu-se drumul
ctre soluia optim (calea
cea mai scurt ctre scop)
Se remarc faptul c nu
exist o soluie optim
unic, ea putnd fi atins
pe dou ci diferite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Exemplul 2
The law says that it is a crime for an American to
sell weapons to hostile nations. The country Nono,
an enemy of America, has some missiles, and all of
its missiles were sold to it by Colonel West, who is
American.

Trebuie demonstrat (scop): Col. West is a criminal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Exemplul 2
... it is a crime for an American to sell weapons to hostile nations:
1. American(x) Weapon(y) Sells(x,y,z) Hostile(z) Criminal(x)
Nono has some missiles: x Owns(Nono,x) Missile(x):
2. Owns(Nono,M
1
) and Missile(M
1
)
all of its missiles were sold to it by Colonel West
3. Missile(x) Owns(Nono,x) Sells(West,x,Nono)
Missiles are weapons:
4. Missile(x) Weapon(x)
An enemy of America counts as hostile:
5. Enemy(x,America) Hostile(x)
West, who is American
6. American(West)
The country Nono, an enemy of America
7. Enemy(Nono,America)
M
1
: funcie Skolem,
tratat ca un simbol
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Exemplul 2
6 2 2 7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Exemplul 2
4 3 5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Exemplul 2
1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Probleme (I)
Potriviri redundante de reguli
Raionament nainte incremental
Fiecare fapt nou dedus n iteraia t trebuie derivat din cel
puin un fapt nou dedus n iteraia t-1
Algoritmul Rete (Clips)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Probleme (II)
Fapte irelevante
Mulime magic: folosirea informaiilor din scop
Exemplu: scopul este Criminal(West)
Regula care are drept concluzie acest predicat: American(x)
Weapon(y) Sells(x,y,z) Hostile(z) Criminal(x)
este rescris: Magic(x) American(x) Weapon(y)
Sells(x,y,z) Hostile(z) Criminal(x)
iar faptul Magic(West) este adugat n baza de cunotine
Acum n BC pot exista milioane de americani, dar inferena
se poate face numai cu West
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Raionamentul napoi
Spaiul problemei poate fi explorat i n direcie invers
fa de cea urmat n cazul anterior
Cnd cutarea pornete din starea scop ctre starea
iniial, avem de-a face cu un raionament napoi
Aici rdcina arborelui este starea scop
Nivelul urmtor al arborelui se completeaz prin
determinarea tuturor regulilor a cror parte dreapt se
potrivete nodului rdcin
Noile noduri se creeaz prin intermediul prii stngi a
regulilor considerate
Procedura se repet pentru fiecare nod, pn cnd se
genereaz o configuraie identic strii iniiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Exemplul 1
Pentru problema cnilor cu ap, trebuie s facem
unele precizri suplimentare pentru a o rezolva prin
raionament napoi
Cnd problema este rezolvat prin raionament
nainte, n starea scop n cana B se poate gsi orice
cantitate de ap
Cnd problema este rezolvat prin raionament
napoi, starea scop trebuie fixat pentru c de aici va
ncepe raionamentul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Exemplul 1
S presupunem c dorim restul
de 2l n cana A i 0l n cana B
Nu toate cele 6 operaii se vor
putea aplica pentru orice nod
Vor exista constrngeri, de
exemplu, dac la un anumit
moment n cana A sunt 0l, este
imposibil aplicarea primei
operaii (umple A)
Ar nsemna ca dup umplerea
cnii, n ea s nu existe ap,
ceea ce este absurd
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Comparaie
Raionamentul nainte
Este dirijat de date (engl. data driven)
Recunoaterea obiectelor, decizii de rutin
CLIPS
Poate determina ncercarea multor aciuni irelevante pentru
atingerea scopului
Raionamentul napoi
Este dirijat de scop (engl. goal driven)
Unde sunt cheile de la main, cum pot gsi un serviciu bun
Prolog
Determin rezolvri cu o complexitate mult mai mic dect
raionamentul nainte, dar are mai multe constrngeri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Metode de inferen n logica
propoziional i predicativ
1. Logica propoziional
1.1. Modus Ponens
1.2. Modus Tollens
1.3. Rezoluia propoziional

2. Logica predicatelor
2.1. Raionamentul nainte
2.2. Raionamentul napoi
2.3. Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Rezoluia predicativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Exemplul 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Exemplul 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Exemplul 1
Se poate constata c a treia ipotez nu este necesar
pentru demonstrarea concluziei
Dac pe al treilea nivel al arborelui am fi utilizat-o, nu am fi
ajuns la o contradicie logic, ci am fi demonstrat c Geta nu
este tatl lui Tudor
n general, dac exist mai multe posibiliti de
substituie i unele ncercri nu dau rezultate, este
nevoie de o cutare de tip backtracking pentru
gsirea soluiei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Exemplul 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Exemplul 3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Exemplul 3: FNC
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Exemplul 3: Rezoluia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Exemplul 4
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Exemplul 4: FNC (I)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Exemplul 4: FNC (II)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Exemplul 4: FNC (III)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Exemplul 4: Rezoluia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Demonstrarea teoremelor n
logica de ordinul nti
Turing, Church: problema demonstrrii
teoremelor n logica de ordinul nti este
semidecidabil
Se poate afla dac o propoziie se poate
demonstra
Nu se poate afla dac o propoziie nu se poate
demonstra
Algoritmul de rezoluie poate rula la infinit
Problem echivalent cu determinarea opririi unei
maini Turing
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Utilizri practice
Demonstratoarele automate de teoreme sunt folosite
cu succes pentru:
Automatizarea demonstraiilor
Algebra Robbins
Prima demonstraie formal riguroas pentru teorema
incompletitudinii a lui Gdel
Verificarea i sinteza componentelor software i hardware
Algoritmul de criptare RSA
Algoritmul de string-matching Boyer-Moore
Verificare CPU
Proiectarea circuitelor
Remote Agent (NASA Deep Space 1)
84
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Concluzii
Procesul de rezoluie este o
modalitate convenabil de a
deduce noi adevruri din
premise multiple
Un alt avantaj al su este
posibilitatea aplicrii legilor
logice, care au fost studiate
intens
Metoda beneficiaz de o
formalizare strict, care asigur
consistena deduciilor,
nelsnd prea mult loc
interpretrilor subiective
Exist i unele limitri; dac
exist o demonstraie, metoda
rezoluiei garanteaz gsirea ei,
ns dac nu exist o astfel de
demonstraie, algoritmul poate
intra ntr-o bucl infinit
n general, este imposibil de
stabilit dac i cnd se va
ntmpla acest lucru

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
7. Metode de planificare
Florin Leon
Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare
http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metode de planificare
1. Analiza mijloace-scopuri
2. Reprezentri: STRIPS, ADL, PDDL
3. Planificarea prin cutare n spaiul strilor
2
3. Planificarea prin cutare n spaiul strilor
4. Planificarea cu ordine parial
5. Grafuri de planificare. Algoritmul Graphplan
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metode de planificare
1. Analiza mijloace-scopuri
2. Reprezentri: STRIPS, ADL, PDDL
3. Planificarea prin cutare n spaiul strilor
3
3. Planificarea prin cutare n spaiul strilor
4. Planificarea cu ordine parial
5. Grafuri de planificare. Algoritmul Graphplan
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metoda analizei
mijloace-scopuri
Planificarea reprezint alegerea unei succesiuni de aciuni
pentru atingerea unui scop
Una din primele metode de planificare a fost metoda analizei
mijloace-scopuri
Presupune mai nti identificarea scopurilor
4
Presupune mai nti identificarea scopurilor
Apoi identificarea mijloacelor care permit atingerea scopurilor
Acest tehnic este deseori folosit i de oameni pentru
rezolvarea problemelor
Primul program de inteligen artificial care a implementat
procedura a fost General Problem Solver, realizat de Allen
Newell i Herbert Simon n 1963 la Universitatea Carnegie
Mellon
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metoda analizei
mijloace-scopuri
O caracteristic a metodei este faptul c se bazeaz
pe un set de reguli care pot transforma o stare a
problemei n alta
Regulile se reprezint sub forma unei pri stngi,
5
Regulile se reprezint sub forma unei pri stngi,
care descrie condiiile de aplicare (precondiiile) i o
parte dreapt care descrie schimbrile din starea
problemei care se modific datorit aplicrii regulii
n acest scop se elaboreaz o aa-numit tabel de
diferene, n care se precizeaz ce operaie este
aplicabil pentru fiecare stare a problemei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
S considerm de exemplu modul n care poate
cltori cineva:
dac distana care trebuie parcurs este mai mare de 20 km,
ia trenul
dac distana este ntre 2 i 20 km, ia autobuzul
6
dac distana este ntre 2 i 20 km, ia autobuzul
dac distana este mai mic de 2 km, merge pe jos
Tabela de diferene este urmtoarea:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
S presupunem c o persoan X din Iai vrea s-i viziteze un
prieten Y din Bucureti
7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metode de planificare
1. Analiza mijloace-scopuri
2. Reprezentri: STRIPS, ADL, PDDL
3. Planificarea prin cutare n spaiul strilor
8
3. Planificarea prin cutare n spaiul strilor
4. Planificarea cu ordine parial
5. Grafuri de planificare. Algoritmul Graphplan
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea i planificarea
Planificarea are o natur similar cu
rezolvarea problemelor prin cutare
La cutare funcia succesor este o cutie neagr:
trebuie mai nti aplicat asupra unei stri pentru
9
trebuie mai nti aplicat asupra unei stri pentru
a ti ce aciuni sunt posibile n acea stare i care
sunt efectele
Planificarea este un caz particular de
raionament
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea i planificarea
Pentru probleme reale, algoritmii de cutare eueaz din cauza
complexitii; de ex. scop:
10
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea n planificare
Planificarea deschide cutia neagr folosind logica
pentru a reprezenta:
Aciunile
Strile
Scopurile
11
Scopurile
Utilizeaz stategia divide et impera pentru a
descompune problema n subscopuri
Rezolvarea problemelor Reprezentarea logic
Planificarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Limbaje de reprezentare
STRIPS (STanford Research
Institute Problem Solver)
R. Fikes, N. Nilsson, 1971
12
Robotul Shakey i blocurile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea strilor
O stare este o conjuncie de termeni pozitivi,
propoziionali i de ordin nti
Valide:
13
Invalide:
Presupunerea lumii nchise
(engl. closed-world assumption)
Orice condiie care nu este menionat ntr-o stare
este considerat fals
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea scopurilor
O conjuncie de termeni pozitivi
De exemplu
14
O stare s satisface scopul g dac va conine
toi atomii din g (i posibil alii)
Starea
satisface scopul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea aciunilor
Scheme de aciuni
Precondiii
Efecte
15
Efecte
lista de adugare lista de tergere
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
Starea curent
satisface precondiia aciunii Fly (aciunea este aplicabil):
16
satisface precondiia aciunii Fly (aciunea este aplicabil):
cu substituiile
Aciunea concret
Rezultat (starea urmtoare)
.
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Presupunerea STRIPS
Problema cadrului (engl. frame problem)
Reprezentarea logic a numrului mare de non-efecte
obinuite, implicite, ale unei aciuni
Exemplu:
17
Trebuie adugate explicit unele axiome de cadru:
Presupunerea STRIPS (engl. STRIPS assumption)
evit aceast problem
Orice termen care nu este menionat n efect rmne
neschimbat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Expresivitate i extensibilitate
18
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
STRIPS i ADL
19
10 avioane, 5 aeroporturi 10 x 5 x 5 = 250 aciuni propoziionale
Orice schem de aciune STRIPS poate fi propoziionalizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplul 1:
Transport aerian de mrfuri
20
Soluie:
Reprezentarea
STRIPS permite ca un
avion s zboare de pe
/ pe acelai aeroport
Inegalitile din ADL
previn acest lucru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplul 2:
Roata de rezerv
21
Nu este STRIPS!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplul 3:
Lumea blocurilor
On(b,x)
Move(b,x,y)
Clear(x)
Block(b)
22
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplul 3:
Lumea blocurilor
23
Nu este STRIPS!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
PDDL
Planning Domain Definition Language
Drew McDermott, 1998
Dezvoltat iniial pentru Competiiile Internaionale
de Planificare (1998/2000)
24
de Planificare (1998/2000)
Ultima versiune: PDDL 3.1 (2008)
Standardul actual de facto pentru
reprezentarea problemelor de planificare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: domeniul blocurilor
25
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: domeniul blocurilor
26
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: domeniul blocurilor
27
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metode de planificare
1. Analiza mijloace-scopuri
2. Reprezentri: STRIPS, ADL, PDDL
3. Planificarea prin cutare n spaiul strilor
28
3. Planificarea prin cutare n spaiul strilor
4. Planificarea cu ordine parial
5. Grafuri de planificare. Algoritmul Graphplan
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea n spaiul strilor
Planificarea prin progresie
Cutare nainte
Ia n calcul efectele tuturor aciunilor posibile
ntr-o stare dat
29
ntr-o stare dat
Planificarea prin regresie
Cutare napoi
Pentru atingerea unui scop, se caut ce ar fi putut
fi adevrat ntr-o stare anterioar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea nainte
30
Problema aciunilor irelevante
De exemplu: 10 aeroporturi, fiecare cu 5 avioane i cu
20 de containere
Scop: mutarea containerelor de pe aeroportul A pe aeroportul B
Factorul de ramificare: 10 x 5 x 20 b = 1000
Adncimea soluiei: 20 de ncrcri + 1 zbor + 20 de descrcri d = 41
1000
41
(10
123
) noduri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea napoi
31
20 de aciuni din starea iniial n loc de 1000
Pot exista i aici aciuni irelevante
Zborul unui avion gol cnd scopul este deja atins
Metoda este dificil de aplicat dac scopul nu este exprimat
explicit, ci ca o mulime de constrngeri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Euristici
Nici progresia nici regresia nu sunt foarte eficiente fr o euristic
potrivit
Abordri pentru gsirea unor euristici admisibile: soluii optime la
probleme relaxate
Eliminarea tuturor precondiiilor aciunilor
32
Eliminarea tuturor precondiiilor aciunilor
Presupunerea independenei subscopurilor
Costul rezolvrii unei conjuncii de subscopuri este aproximativ egal cu suma
costurilor de rezolvare independent a subproblemelor
Eliminarea efectelor negative (a listei de tergere), fr a elimina
precondiiile
empty-delete-list, una din cele mai utilizate euristici
Euristicile presupun rezolvarea efectiv a unor probleme simplificate de
planificare
n practic, aceste costuri sunt neglijabile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman (I)
Algoritmii de planificare neintercalat (engl. noninterleaved) produc
pentru dou subscopuri G
1
i G
2
un plan pentru G
1
concatenat cu un
plan pentru G
2
sau viceversa
Exist situaii n care aceti algoritmi nu pot gsi planul cel mai scurt
n exemplul de mai jos, exist dou ordonri posibile ale subscopurilor:
33
n exemplul de mai jos, exist dou ordonri posibile ale subscopurilor:
On(A,B) i On(B,C) sau On(B,C) i On(A,B)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
http://aispace.org/planning/
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman (III)
35
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metode de planificare
1. Analiza mijloace-scopuri
2. Reprezentri: STRIPS, ADL, PDDL
3. Planificarea prin cutare n spaiul strilor
36
3. Planificarea prin cutare n spaiul strilor
4. Planificarea cu ordine parial
5. Grafuri de planificare. Algoritmul Graphplan
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Planificarea cu ordine parial
Tipurile de planificare prin progresie i regresie
sunt forme de planificare cu ordine total
Nu pot profita de descompunerea problemei
Trebuie luate decizii de gsire a tuturor secvenelor de
37
Trebuie luate decizii de gsire a tuturor secvenelor de
aciuni pentru toate subproblemele simultan
Este mai eficient rezolvarea independent a
subscopurilor i apoi combinarea subplanurilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
38
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Planuri cu ordine parial i
planuri cu ordine total
39
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea POP
Aciuni + Start, Finish
Constrngeri de ordonare
A trebuie executat naintea lui B
Legturi cauzale
B Ap
40
Legturi cauzale
A ndeplinete p pentru B
Precondiii deschise
Precondiii care nu sunt ndeplinite de nicio aciune
Scopul este reducerea acestei mulimi la { }
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu de POP
41
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
42
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
43
Conflict: LeaveOverNight are efectul At(Spare,Ground),
care este n conflict cu
Remove(Spare, Trunk)
At(Spare, Ground)
PutOn(Spare,Axle)
Pentru rezolvare, se adaug constrngerea:
LeaveOverNight Remove(Spare, Trunk)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
44
Se alege o precondiie deschis: At(Spare, Trunk)
Doar Start este aplicabil
Se adaug legtura cauzal: Start
At(Spare, Trunk)
Remove(Spare, Trunk)
Conflict: legtura cauzal cu efectul At(Spare,Trunk) n
LeaveOverNight
Nu mai exist nicio soluie de reordonare
Backtracking
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
45
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman
46
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman
47
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman
48
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman
49
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Anomalia Sussman
50
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Euristici pentru POP
ntruct nu reprezint strile direct,
este greu de estimat ct de departe
este un POP de atingerea scopului este un POP de atingerea scopului
Euristici:
Numrul de precondiii deschise distincte
Cea mai constrns variabil: selectarea
condiiei deschise care poate fi satisfcut
n cele mai puine moduri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metode de planificare
1. Analiza mijloace-scopuri
2. Reprezentri: STRIPS, ADL, PDDL
3. Planificarea prin cutare n spaiul strilor
52
3. Planificarea prin cutare n spaiul strilor
4. Planificarea cu ordine parial
5. Grafuri de planificare. Algoritmul Graphplan
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Ideea de baz
Se construiete un graf care codeaz
constrngerile asupra planurilor posibile
Acest graf de planificare va restrnge spaiul
de cutare de cutare
Dac exist un plan valid, atunci acesta este
un subgraf al grafului de planificare
Un graf de planificare poate fi construit n
timp polinomial pentru orice problem
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Graf de planificare
O secven de niveluri care corespund cu paii planului
Nivelul 0 este starea iniial
Fiecare nivel conine o mulime de termeni i o mulime de
aciuni
Termenii inclui sunt cei care ar putea fi adevrai la un pas
Aciunile incluse sunt cele ale cror precondiii ar putea fi
54
Aciunile incluse sunt cele ale cror precondiii ar putea fi
satisfcute la un pas
Poate fi utilizat doar pentru planificare propoziional
explicaii n slide-urile urmtoare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentare
Aciuni de persisten: ptratele reprezint inaciuni
(axiome de cadru)
Excluziunile mutuale (mutex) apar ntre termeni i
aciuni
55
aciuni
Reprezint imposibilitatea unor combinaii
Algoritmul continu pn cnd dou niveluri
succesive sunt identice (graful se stabilizeaz)
Complexitatea generrii grafului: polinomial n
numrul de termeni
Nu se alege ordinea aciunilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Relaiile mutex
ntre 2 aciuni de pe acelai nivel exist o relaie mutex dac i
numai dac exist cel puin una din urmtoarele situaii:
Efecte inconsecvente: o aciune neag efectul alteia
Eat(Cake), Have(Cake)
Interferen: unul din efectele unei aciuni este negarea unei
precondiii a alteia
56
precondiii a alteia
Eat(Cake), Have(Cake)
Necesiti concurente: una din precondiiile unei aciuni este
mutual exclusiv cu o precondiie a alteia
Bake(Cake) i Eat(Cake) concureaz pentru valoarea precondiiei lui
Have(Cake)
ntre 2 termeni exist o relaie mutex dac i numai dac:
Unul este negarea celuilalt sau
Toate perechile de aciuni care realizeaz cei doi termeni sunt
mutual exclusive (suport inconsecvent)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: A avea o prjitur i
a mnca o prjitur
Have cake and eat cake too
57
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Estimarea euristic
Costul atingerii unui scop este estimat prin
nivelul n care apare n graful de planificare
Pentru estimarea unei conjuncii de scopuri:
Max-level: nivelul maxim al subscopurilor (admisibil)
58
Max-level: nivelul maxim al subscopurilor (admisibil)
Sum-cost: suma nivelurilor (neadmisibil)
Set-level: nivelul unde apar toate fr mutex
Grafurile de planificare sunt relaxri ale
problemei
Reprezentarea mutex-urilor pentru mai mult de
2 elemente nu se justific din punct de vedere
al costurilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Algoritmul Graphplan
A. Blum, M. Furst, 1997
Are ca scop extragerea unui plan direct din
graful de planificare
Este mult mai rapid dect algoritmii anteriori
59
Este mult mai rapid dect algoritmii anteriori
(de exemplu POP)
Ideea de baz
Verific dac toi termenii scopului sunt prezeni n
nivelul curent fr relaii mutex ntre ei
Dac da, se ncearc extragerea soluiei
Dac nu, se expandeaz graful
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
60
Toi termenii problemei,
pozitivi cei din Init i
negativi ceilali
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
Convenie de notaie pentru relaiile mutex:
ntre aciuni
EE efecte inconsecvente (E
1
= E
2
)
EP interferen (E
1
= P
2
)
61
EP interferen (E
1
= P
2
)
PP necesiti concurente (P
1
= P
2
)
ntre termeni
N negarea termenilor
S suport inconsecvent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Construirea grafului
62
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Construirea grafului
Scopul
At(Spare, Axle)
nu apare pozitiv
63
Nu s-au mai
reprezentat
relaiile N
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Construirea grafului
64
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Construirea grafului
65
Nu s-au mai reprezentat relaiile N
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Gsirea soluiei
66
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Gsirea soluiei
67
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Soluia
68
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Plan valid
Un plan valid este un subgraf al grafului de
planificare unde:
Aciunile de pe acelai nivel nu sunt mutex
Toate precondiiile aciunilor sunt adevrate Toate precondiiile aciunilor sunt adevrate
Scopurile sunt satisfcute
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Algoritmul Graphplan
function function function function GRAPHPLAN(problem) returns returns returns returns solution or failure
graph INITIAL-PLANNING-GRAPH(problem)
goals GOALS[problem]
loop do loop do loop do loop do
solution EXTRACT-SOLUTION (graph, goals, LENGTH(graph))
loop do loop do loop do loop do
if if if if goals all non-mutex in last level of graph then do then do then do then do
if if if if solution failure then return then return then return then return solution
else if else if else if else if NO-SOLUTION-POSSIBLE(graph) then return then return then return then return failure
graph EXPAND-GRAPH(graph, problem)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Extragerea soluiei
procedure procedure procedure procedure SOLUTION-EXTRACTION(goal_set, graphlevel)
for each for each for each for each goal in in in in goal_set
if if if if graphlevel = 0 we have found a solution
Nivelul
curent
din graf
choose (nondeterministically) an action
at level graphlevel1 that achieves it
if if if if any pair of chosen actions are mutex, then backtrack backtrack backtrack backtrack
SOLUTION-EXTRACTION(precondition_set, graphlevel-2)
precondition_set:= {the precondition of the chosen actions}
din graf
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Cutarea napoi n graf cu
euristici
Complexitatea problemei este exponenial, complexitatea
construirii grafului este polinomial
n timpul cutrii napoi, se folosete o euristic greedy pe
baza costurilor de nivel ale termenilor
72
baza costurilor de nivel ale termenilor
Costul de nivel al unui termen este numrul primului nivel pe
care apare acel termen
Pentru orice mulime de scopuri:
Se alege mai nti termenul cu cel mai mare cost de nivel
Pentru realizarea termenului, se alege aciunea cu cele mai
uoare precondiii, pe baza sumei sau maximului nivelurilor
termenilor din precondiie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Proprieti
Numrul de termeni crete monoton
Toi termenii de pe un nivel persist n urmtoarele niveluri
Numrul de aciuni crete monoton
De vreme ce precondiiile unei aciuni au fost satisfcute pe un nivel iar
termenii corespunztori persist, precondiiile vor fi n continuare satisfcute
73
termenii corespunztori persist, precondiiile vor fi n continuare satisfcute
Numrul de relaii mutex descrete monoton
Dac dou aciuni sunt mutual exclusive pe nivelul S
i
, ele sunt mutual
exclusive pe toate nivelurile anterioare
Figurile nu conin termenii care nu pot fi realizai i nici aciunile care nu pot
fi executate. Aceste elemente invizibile sunt mutex cu toate celelalte
Numrul de aciuni i termeni este finit
Se garanteaz stabilizarea grafului, condiia de terminare a
algoritmului
Exist un nivel unde toate scopurile sunt non-mutex
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Concluzii
Sistemele de planificare sunt algoritmi de rezolvare a
problemelor care opereaz cu reprezentri explicite
ale strilor i aciunilor
Algoritmii de planificare cu ordine parial sunt
74
Algoritmii de planificare cu ordine parial sunt
eficieni mai ales asupra problemelor care pot fi
descompuse
Grafurile de planificare pot fi utilizate att ca euristici
ct i ca suport pentru extragerea direct a soluiilor
de ctre algoritmi precum Graphplan
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
8. Logica vag (fuzzy)

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Logica vag
1. Logica clasic i logica vag
2. Operaii cu mulimi vagi
3. Tipuri de inferen
4. Sistem expert fuzzy
5. Controlere fuzzy
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Logica vag
1. Logica clasic i logica vag
2. Operaii cu mulimi vagi
3. Tipuri de inferen
4. Sistem expert fuzzy
5. Controlere fuzzy
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Incompletitudinea
Logica clasic consider valoarea de adevr a
propoziiilor n termeni de adevrat sau fals
Legea terului exclus
Viaa de zi cu zi: cerul este albastru
Civa nori?
Oamenii gndesc mai flexibil, n condiii de
incompletitudine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Incertitudine i imprecizie
Incompletitudinea unei informaii se exprim
pe dou scri:
Scara incertitudinii
ncrederea care i se acord informaiei (informaie cert)
Scara impreciziei
Coninutul informaional (informaie precis,
cu o singur valoare)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Exemplu: opinii despre rezultatele
recensmntului din 2011
Institutul Naional de Statistic a precizat c la 20 octombrie
2011, populaia stabil a Romniei era de 19.043.767 locuitori.
tire sigur i precis (complet)
Populaia Romniei este n mod sigur sub 20 milioane de
locuitori.
Informaie cert, dar imprecis (valoarea aparine intervalului
0 20.000.000)
Cred c populaia Romniei este de 19.000.000 locuitori.
Informaie incert, dar precis (chiar dac este incorect)
Am impresia c rezultatul era n jur de 19 de milioane.
Informaie incert i imprecis
N-am nici cea mai vag idee.
Non-informaie, toate valorile sunt egal probabile
Grad maxim de incertitudine i imprecizie

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Logica clasic i bunul sim
Logica clasic praguri stricte
Limit de nlime 1,80 m
Ion are 1,81 m este nalt
Vasile are 1,79 m nu este nalt
Nuane lingvistice greu de reprezentat
Chiar dac transformatorul este uor
suprancrcat, mai putem menine puin
aceast ncrcare
Iaul este un ora destul de mare
Mainile electrice nu sunt foarte rapide
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Limitri
Filosoful cretan spune c toi cretanii mint
Frizerul satului i tunde pe toi cei care nu se
tund singuri

n logica clasic acestea sunt paradoxuri sau
contradicii
Ar putea fi considerate ns parial adevrate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Scurt istoric
Jan ukasiewicz (1930): teoria posibilitii
De exemplu, posibilitatea ca un om de 1,81 m
s fie foarte nalt este 0,86
Max Black (1937): imprecizia este o form de
probabilitate
Cnd un scaun nu mai este considerat scaun ci buturug
Procentul de persoane care ar denumi obiectul scaun
Definirea unei mulimi vagi simple i a unor operaii
Lotfi Zadeh (1965): Fuzzy Sets (Mulimi vagi)
Sistem formal de logic matematic
Includerea termenilor din limbajul natural
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Exemplu
Degree of Membership
Fuzzy
Mark
John
Tom
Bob
Bill
1
1
1
0
0
1.00
1.00
0.98
0.82
0.78
Peter
Steven
Mike
David
Chris
Crisp
1
0
0
0
0
0.24
0.15
0.06
0.01
0.00
Name Height, cm
205
198
181
167
155
152
158
172
179
208
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Comparaie
(a) Boolean Logic. (b) Multi-valued Logic.
0 1 1 0 0.2 0.4 0.6 0.8 1 0 0 1 1 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Logica vag
1. Logica clasic i logica vag
2. Operaii cu mulimi vagi
3. Tipuri de inferen
4. Sistem expert fuzzy
5. Controlere fuzzy
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13

Noiuni de baz
Universul de discurs
Axa X: domeniul tuturor valorilor posibile
aplicabile unei variabile
n exemplul anterior: nlimea
Gradul de apartenen
Axa Y
Valori n intervalul [0,1]
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Formalizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Mulimi multiple
150 210 170 180 190 200 160
Height, cm
Degree of
Membership
Tall Men
150 210 180 190 200
1.0
0.0
0.2
0.4
0.6
0.8
160
Degree of
Membership
Short Average Short Tall
170
1.0
0.0
0.2
0.4
0.6
0.8
Fuzzy Sets
Crisp Sets
Short Average
Tall
Tall
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Suport
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
nlimea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Nucleu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Incluziuni. Egalitate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Numere fuzzy
De multe ori, oamenii nu pot caracteriza precis
informaiile numerice, folosind formulri precum
aproape 0, n jur de 100 etc.
n teoria mulimilor fuzzy, aceste numere pot fi
reprezentate ca submulimi fuzzy ale mulimii
numerelor reale
Un numr fuzzy A este o mulime fuzzy a
mulimii numerelor reale, cu o funcie de
apartenen convex i continu i suport
mrginit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Numr fuzzy triunghiular
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Numr fuzzy triunghiular
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Numr fuzzy trapezoidal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Numr fuzzy trapezoidal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Funcia gaussian
cvasi-numr fuzzy
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Funcia Bell generalizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Funcia S
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Funcia (simetric)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Funcia (asimetric)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Tietura alfa
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Funcii aritmetice fuzzy
Pentru 2 numere interval fuzzy [a,b] i [d,e]:
Adunarea
[a,b] + [d,e] = [a+d, b+e]
Scderea
[a,b] - [d,e] = [a-e, b-d]
nmulirea
[a,b] [d,e] = [min(ad,ae,bd,be), max(ad,ae,bd,be)]
mprirea
[a, b] / [c, d] = [a, b] [1/d, 1/c] =
[min(a/c, a/d, b/c, b/d), max(a/c, a/d, b/c, b/d)]

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Restrictori
engl. hedge, gard viu
Mulimile fuzzy pot reprezenta n mod cantitativ
termeni lingvistici vagi
n vorbirea curent, oamenii folosesc o serie de
adverbe pentru nuanarea acestora, precum
foarte, aproape, oarecum etc.
Teoria mulimilor fuzzy face posibil
reprezentarea lor cu ajutorul unor restrictori care
modific matematic funcia de apartenen a
mulimii fuzzy considerate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Concentrarea
Concentrarea (foarte) are ca efect
reducerea valorilor de apartenen ale
elementelor cu grad de apartenen mici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Puterea
Puterea (foarte foarte) este o extensie a
concentraiei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Dilatarea
Dilatarea (oarecum) dilat elementele fuzzy
prin mrirea valorilor de apartenen ale
elementelor cu grade de apartenen mici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Intensificarea
Intensificarea (ntr-adevr) are ca efect
mrirea gradelor de apartenen de peste 0,5
i micorarea celor sub 0,5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Operaii cu mulimi fuzzy
Operaiile cu mulimile fuzzy sunt o extindere
a celor din logica clasic
Dac mulimile fuzzy implicate au grade de
apartenen 0 i 1, semnificaia operaiilor
este aceeai ca n teoria clasic a mulimilor,
de aceea i simbolurile utilizate sunt aceleai
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Norme triunghiulare
Aceste operaii pot fi definite cu ajutorul unor funcii numite
t-norm (T) i t-conorm (S)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Exemple
Exist foarte multe familii de norme !
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Intersecia
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Reuniunea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Complementul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Exemple
Mulimi cu doar 2 elemente
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Logica vag
1. Logica clasic i logica vag
2. Operaii cu mulimi vagi
3. Tipuri de inferen
4. Sistem expert fuzzy
5. Controlere fuzzy
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Reguli fuzzy
Lotfi Zadeh (1973)
Reprezentarea cunotinelor umane sub form de
reguli fuzzy
DAC x este A ATUNCI y este B
x i y sunt variabile lingvistice
A i B sunt valori lingvistice determinate de
mulimile fuzzy n universurile de discurs X i Y
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Exemplu
Regula 1
DAC Viteza este Rapid
ATUNCI Distana-de-oprire este Mare
Regula 2
DAC Viteza este nceat
ATUNCI Distana-de-oprire este Mic
Universuri de discurs
Viteza (n km/h)
Distana-de-oprire (n m)
Mulimi fuzzy
Vitez nceat, Vitez Rapid
Distan Mic, Distan Mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Selecia monoton
IF Height is Tall THEN Weight is Heavy
Tall men
Heavy men
180
Degree of
Membership
1.0
0.0
0.2
0.4
0.6
0.8
Height, cm
190 200 70 80 100 160
Weight, kg
120
Degree of
Membership
1.0
0.0
0.2
0.4
0.6
0.8
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Antecedeni i consecveni
multipli
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Modus Ponens generalizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Tipuri de implicaie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Inferena Mamdani (max-min)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Inferena Mamdani (II)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Inferena Mamdani (III)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Inferena Larsen (max-produs)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Inferena Larsen (II)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Inferena Larsen (III)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Defuzzificarea
Reprezint obinerea unei valori stricte dintr-o
mulime fuzzy, ca valoare reprezentativ

Exist mai multe metode:
Centrul de greutate
Media maximului
Cel mai mic maxim
Cel mai mare maxim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Centrul de greutate
Numit i centroid
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Inferena Mamdani cu
reguli multiple
Inferena presupune 4 pai:
Fuzzificarea variabilelor de intrare
Evaluarea regulilor
Agregarea ieirilor regulilor
Defuzzificarea

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Exemplu
O problem cu 2 intrri i 1 ieire, 3 reguli
Regula 1 Regula 1
IF x is A3 IF project-funding is adequate
OR y is B1 OR project-staffing is small
THEN z is C1 THEN risk is low

Regula 2 Regula 2
IF x is A2 IF project-funding is marginal
AND y is B2 AND project-staffing is large
THEN z is C2 THEN risk is normal

Regula 3 Regula 3
IF x is A1 IF project-funding is inadequate
THEN z is C3 THEN risk is high
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Pasul 1. Fuzzificarea
Pentru intrrile stricte date x1 i y1 (project
funding i project staffing) se determin gradele
de apartenen n mulimile corespunztoare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Pasul 2. Evaluarea regulilor
Intrrile fuzzificate se aplic
antecedenilor (premiselor) regulilor
Dac o regul are antecedeni multipli,
se aplic operatorii fuzzy de intersecie
sau reuniune
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Evaluarea de tip Mamdani
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Pasul 3. Agregarea ieirilor
Agregarea presupune reunirea ieirilor tuturor
regulilor, rezultnd cte o mulime fuzzy
pentru fiecare variabil de ieire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Pasul 4. Defuzzificarea
Mulimile fuzzy agregate sunt transformate n
valori stricte dup o metod de defuzzificare
(de exemplu metoda centrului de greutate)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Inferena TSK
Inferenele de tip Mamdani sau Larsen presupun
integrarea funciilor de apartenen pentru
defuzzificare, ceea ce nu este foarte eficient din
punct de vedere computaional
Inferena de tip Takagi-Sugeno-Kang este de forma:
DAC x este A I y este B ATUNCI z este f(x,y)
f este o funcie matematic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Inferena Sugeno
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Exemplu
Presupunem nite funcii
de apartenen oarecare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Modelul de ordin zero
Cel mai utilizat model de inferen TSK
este modelul Sugeno de ordin zero, n
care ieirea fiecrei reguli fuzzy este o
constant
DAC x este A I y este B ATUNCI z este k

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Evaluarea de tip
Sugeno de ordin zero
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Agregarea ieirilor i
defuzzificarea
Media ponderat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Mamdani sau Sugeno?
Metoda Mamdani
Utilizat pe scar larg pentru reprezentarea cunotinelor
expert
Permite descrierea mai intuitiv a cunotinelor
Are ns dezavantajul unui efort de calcul mai mare
Metoda Sugeno
Eficient computaional
Rezultate bune n probleme de optimizare i tehnici adaptive
Mai potrivit pentru probleme de control, n special pentru
sisteme neliniare dinamice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Logica vag
1. Logica clasic i logica vag
2. Operaii cu mulimi vagi
3. Tipuri de inferen
4. Sistem expert fuzzy
5. Controlere fuzzy
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Studiu de caz
Un centru de service pstreaz componente de
schimb i repar componente defecte
Clienii aduc un component defect i primesc o
pies de schimb de acelai tip
Componentele defecte sunt reparate i repuse n
circuit
Obiectivul sistemului expert este de a ajuta
managerul n luarea deciziilor astfel nct clienii
s rmn mulumii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Procesul de dezvoltare al unui
sistem expert fuzzy
Specificarea problemei i definirea variabilelor
lingvistice
Determinarea mulimilor fuzzy
Construirea regulilor fuzzy
Codarea mulimilor, regulilor i procedurilor
de inferen
Evaluarea i rafinarea sistemului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Specificarea problemei i
definirea variabilelor lingvistice
Exist 4 variabile lingvistice:
Timpul mediu de ateptare (ntrzierea
medie) m
Factorul de utilizare a reparaiilor
= nr. clieni venii / nr. clieni plecai
Numrul de angajai s
Numrul iniial de piese de schimb n
Aceasta este ieirea sistemului, trebuie
determinat: n = f(m, , s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Determinarea mulimilor fuzzy
De obicei se utilizeaz numere fuzzy
triunghiulare sau trapezoidale pentru
cunotinele expert
n general sunt reprezentri adecvate i suficiente
pentru cunotine
Se simplific i procesul de calcul: formule simple
pentru determinarea gradelor de apartenen
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
ntrzierea medie m
O ntrziere mai mare nu este acceptabil
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Numrul de angajai s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Factorul de utilizare a
reparaiilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Numrul de piese de schimb n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Construirea regulilor fuzzy
Expertul trebuie s furnizeze cunotinele
privind regulile
Expertul poate fi orice surs de cunoatere:
cri, baze de date, scheme logice,
comportamente umane observate etc.
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Reprezentarea regulilor prin
memorii asociative fuzzy
m
s
M
RL
VL
S
RS
L
VS
S
M
VS S M
L
M
S
Valorile lui n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
1. If (utilisation_factor is L) then (number_of_spares is S)
2. If (utilisation_factor is M) then (number_of_spares is M)
3. If (utilisation_factor is H) then (number_of_spares is L)
4. If (mean_delay is VS) and (number_of_servers is S) then (number_of_spares is VL)
5. If (mean_delay is S) and (number_of_servers is S) then (number_of_spares is L)
6. If (mean_delay is M) and (number_of_servers is S) then (number_of_spares is M)
7. If (mean_delay is VS) and (number_of_servers is M) then (number_of_spares is RL)
8. If (mean_delay is S) and (number_of_servers is M) then (number_of_spares is RS)
9. If (mean_delay is M) and (number_of_servers is M) then (number_of_spares is S)
10.If (mean_delay is VS) and (number_of_servers is L) then (number_of_spares is M)
11.If (mean_delay is S) and (number_of_servers is L) then (number_of_spares is S)
12.If (mean_delay is M) and (number_of_servers is L) then (number_of_spares is VS)
Baza de reguli 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Rule m s n Rule m s n Rule m s n
1 VS S L VS 10 VS S M S 19 VS S H VL
2 S S L VS 11 S S M VS 20 S S H L
3 M S L VS 12 M S M VS 21 M S H M
4 VS M L VS 13 VS M M RS 22 VS M H M
5 S M L VS 14 S M M S 23 S M H M
6 M M L VS 15 M M M VS 24 M M H S
7 VS L L S 16 VS L M M 25 VS L H RL
8 S L L S 17 S L M RS 26 S L H M
9 M L L VS 18 M L M S 27 M L H RS
Baza de reguli 2: tabela de reguli
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
VS VS VS
VS VS VS
VS VS VS
VL L M
H
S
VS VS VS
VS VS VS
VS VS VS
M
VS VS VS
VS VS VS
S S VS
L
s
L
VS S M
m
M
H

VS VS VS
L
VS S M
S
m
VS VS VS M
S S VS L
s
S VS VS
M
VS S M
m
VS S M
m
S
RS S VS M
M RS S L
s
S
M M S M
RL M RS L
s
Baza de reguli 2: memoria asociativ fuzzy
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Implementarea sistemului
Folosind un limbaj de programare
De exemplu: C#, Java, C++ etc.
Folosind un instrument de dezvoltare
specializat
De exemplu: Matlab Fuzzy Toolbox,
Fuzzy Knowledge Builder etc.
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Evaluare i rafinare
Este cea mai laborioas faz
Reprezint validarea sistemului n raport cu
cerinele specificate
Unele instrumente pot genera suprafee de
decizie care ajut la analizarea
performanelor sistemului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Baza de reguli 1
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
0.5
0.6
number_of_servers mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Baza de reguli 1
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
0.5
0.6
utilisation_factor mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Baza de reguli 2
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.15
0.2
0.25
0.3
0.35
number_of_servers mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Baza de reguli 2
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
utilisation_factor mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
0.5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Rafinarea
Dac performanele nu sunt
satisfctoare, se pot include n
model mulimi suplimentare
De exemplu Rather Small i Rather Large
pe universul de discurs al numrului de
angajai s
Se extinde i baza de reguli
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
96
Mulimile modificate pentru s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
97
Baza de reguli 3: memoria asociativ fuzzy
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
VS VS VS
S S VS
S S VS
VL L M
VL RL RS
M M S
RL M RS
L M RS
H
S
M
RL
L
RS
s
L
VS S M
m
M
H

VS VS VS
VS VS VS
VS VS VS
S S VS
S S VS
L
VS S M
S
M
RL
L
RS
m
s
S VS VS
S VS VS
RS S VS
M RS S
M RS S
M
VS S M
m
VS S M
m
S
M
RL
L
RS
s
S
M
RL
L
RS
s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
98
Baza de reguli 3
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.15
0.2
0.25
0.3
0.35
number_of_servers mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
99
Baza de reguli 3
0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.2
0.3
0.4
utilisation_factor mean_delay
n
u
m
b
e
r
_
o
f
_
s
p
a
r
e
s
0.5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
100
Rafinarea sistemelor fuzzy (I)
Se analizeaz variabilele de intrare i ieire i dac
este nevoie se redefinesc domeniile de definiie
Se analizeaz mulimile fuzzy i dac este nevoie
se adaug mulimi suplimentare pe universul de
discurs
Mulimile mari conduc la un comportament nenuanat al
sistemului
Trebuie s existe o suprapunere suficient n
mulimile vecine
Se recomand o suprapunere de 25%-50% din baze
(pentru numerele triunghiulare i trapezoidale)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
101
Rafinarea sistemelor fuzzy (II)
Se analizeaz regulile existente i dac este nevoie
se adaug noi reguli n baza de reguli
Se examineaz baza de reguli n vederea aplicrii de
restrictori pentru anumite cazuri
Se pot modifica formele unor mulimi
De obicei, sistemele fuzzy sunt tolerante la aproximrile de
form
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
102
Logica vag
1. Logica clasic i logica vag
2. Operaii cu mulimi vagi
3. Tipuri de inferen
4. Sistem expert fuzzy
5. Controlere fuzzy
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
103
Exemple
Sistem de control fuzzy pentru stabilizarea
pendulului inversat
Sistem de control fuzzy pentru simularea
funcionrii unei macarale
Sistem de control fuzzy pentru conducerea
unei mainue de golf
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
104
Pendulul inversat
Pentru detalii,
vezi suportul de curs
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Intrri
Unghiul
Viteza unghiular d/dt
Ieire
Viteza bazei u

Pendulul inversat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Mulimile fuzzy

d/dt
u
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Abordarea fuzzy
Mulimea minim de reguli pentru stabilizarea
pendulului inversat (Yamakawa, 1989)
107


d/dt
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
= 1 (x
1
)
d/dt = -4 (x
2
)
Exemplu: fuzzificare
(cu o alt mulime de reguli)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Consecvenii fuzzy i
reuniunea lor

Centroidul reuniunii (-2)
este ieirea strict
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
110
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
111
Alt exemplu de implementare
http://www.erudit.de/erudit/demos/cartball/index.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
112
Macaraua
http://www.intelligent-systems.info/neural_fuzzy/loadsway/LoadSway.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
113
Macaraua - reguli
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
114
Mainua de golf
Pentru detalii,
vezi suportul de curs
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
115
Alte aplicaii din lumea real
Subsisteme de
autovehicule, transmisie
automat, ABS
Control automat al
trenului monorail din
Tokyo
Aparate de aer condiionat
Motorul de animaie
Massive
Aparate de fotografiat
Prelucrarea imaginilor
(de ex. detecia muchiilor)
Recunoaterea modelelor
Lifturi
Maini de splat vase
Maini de splat, alte
electrocasnice
Filtre de limbaj pe
forumuri i camere de
discuii
Jocuri video
Microcontrolere i
microprocesoare
(de ex. Freescale 68HC12)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
116
Mulimile fuzzy i probabilitile
Probabilitile se ocup de situaii care ar putea s
apar
Mulimile fuzzy modeleaz situaii care exist sigur,
ns nu pot fi ncadrate exact ntr-o categorie
O sticl conine o otrav mortal cu probabilitatea 10%
Alt sticl are otrav cu o concentraie de 10%
Concentraia maxim admis de otrav, care poate fi
but fr probleme, este de 20%
Din care sticl ai bea?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
117
Concluzii
Logica fuzzy ofer posibilitatea de a reprezenta i
raiona cu cunotine comune, formulate n mod
obinuit i de aceea i-a gsit aplicabilitatea n
numeroase domenii
Logica fuzzy are o valoare deosebit i n aplicaiile
de control automat unde este dificil sau imposibil de
dezvoltat un sistem de control tradiional
Dificultile apar la determinarea funciilor de
apartenen i la reglarea parametrilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
9. Raionament probabilistic.
Teoria jocurilor

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Probabiliti
P(A) fraciunea de lumi posibile n care A este adevrat






Interpretarea frecventist (numr de experimente)
Interpretarea fizic (proprieti ale obiectelor)
Interpretarea subiectivist (caracterizarea convingerilor)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Paradoxuri
Problema Monty Hall
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Paradoxuri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Eroarea juctorului de rulet
Dac a ieit rou, data urmtoare sunt mai multe
anse s ias negru
1913, Monte Carlo negrul a ieit de 26 de ori la rnd
Paradoxuri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Eroarea procurorului
Grupa de snge gsit la faa locului este o grup rar, AB cu Rh
negativ, care are 1% frecven n populaie
S-au mai gsit urme de pr blond, persoanele blonde constituind
tot 1% din populaie
Suspectul are grupa de snge respectiv i este blond, prezena
mpreun a acestor trsturi avnd mpreun probabilitatea de
0,01% vinovat cu o probabilitate de 99,99%
Oraul n care s-a petrecut crima are o populaie de 100.000 de
locuitori, deci ali 10 oameni au aceleai trsturi
vinovat cu o probabilitate de 10%
O camer video identific suspectul cu o probabilitate de 70%,
deci suspectul este nevinovat cu o probabilitate de 0,1 0,3
vinovat cu o probabilitate de 97%
Paradoxuri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Probabiliti condiionate
P(A|B) - fraciunea de lumi posibile n care B
este adevrat i atunci i A este adevrat
Probabilitatea lui A, dat fiind B

D = durere de cap, P(D) = 1/10
G = grip, P(G) = 1/40
P(D|G) = 1/2
Dac cineva are grip,
probabilitatea de a avea i dureri
de cap este de 50%
P(D|G) = P(DG) / P(G)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Teorema lui Bayes
P(A|B) = P(AB) / P(B)
P(AB) = P(A|B) * P(B)
P(AB) = P(B|A) * P(A)

P(B|A) = P(A|B) * P(B) / P(A)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Teorema lui Bayes
P(B|A) = P(A|B) * P(B) / P(A)
Thomas Bayes (1763). An essay
towards solving a problem in the
doctrine of chances. Philosophical
Transactions of the Royal Society
of London, vol. 53, pp. 370-418
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Diagnoz
Probabiliti cunoscute
Meningit: P(M) = 0.002%
Gt nepenit: P(G) = 5%
Meningita cauzeaz gt nepenit n jumtate din
cazuri: P(G|M) = 50%
Dac un pacient are gtul nepenit, care este
probabilitatea s aib meningit?
P(M|G) = P(G|M) * P(M) / P(G) = 0.02%
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Diagnoz
Greeal ntlnit uneori: P(A|B) = P(B|A)
Diagnostice pentru boli rare
Trebuie avute n vedere probabilitile testului de
a returna rezultate fals pozitive
B boal
T test
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Independen i
independen condiionat
Exemplul 1. Ion i Maria dau cu banul.
Fiecare are un ban diferit
Evenimente independente
Rezultatul unui experiment nu influeneaz
rezultatul celuilalt experiment
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Independen i
independen condiionat
Exemplul 2. Ion i Maria dau cu acelai ban
Dac banul nu este corect, evenimentul A (Ion)
poate aduce informaii asupra evenimentului
B (Maria)
Evenimentele nu sunt independente
Rezultatul unui experiment poate influena
cunotinele despre rezultatul celuilalt
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Independen i
independen condiionat
Exemplul 2 (cont.). Fie C variabila banul este
influenat n favoarea pajurei
Dac tim C, experimentul A nu mai aduce
informaii noi asupra lui B
P(B|A,C) = P(B|C)
A i B sunt independente condiional dat fiind C
Situaia cauz comun
16
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Independen i
independen condiionat
Exemplul 3. Ion i Maria locuiesc n zone diferite ale
oraului i vin la serviciu cu tramvaiul, respectiv
maina
Ion a ntrziat i Maria a ntrziat pot fi considerate
independente
Dac vatmanii sunt n grev, atunci i traficul rutier crete
Evenimentele devin condiional independente
Sunt multe situaii din viaa real n care evenimente
considerate independente sunt de fapt doar
condiional independente
17
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Independen i
independen condiionat
Exemplul 4. Att rceala ct i alergia l pot
determina pe Ion s strnute
Dac nu tim c Ion a strnutat, rceala i alergia
sunt independente
Dac tim c Ion a strnutat, rceala i alergia nu
mai sunt independente
Dac mai tim c Ion este rcit, probabil c
rceala determin strnutul iar probabilitatea
alergiei scade
Situaia revocare prin explicare (explain away)

18
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Reprezentarea cunotinelor
incerte
O situaie cu 5 variabile (exemplul urmtor)
Specific o distribuie comun de probabilitate
cu 2
5
1 = 31 parametri
Fezabil
Un sistem expert cu 37 de variabile pentru
monitorizarea pacienilor de la terapie
intensiv
2
37
1 10
11
parametri
Nefezabil
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Reea bayesian
S-a instalat un nou sistem
de alarm
Sun n cazul unei spargeri
dar i n cazul unui cutremur
Vecinii John i Mary l sun
pe proprietar la serviciu
dac aud alarma
10 parametri independeni
fa de 31
Reea bayesian (J. Pearl, 1985)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Comparaie
Sistem expert pentru
monitorizarea
pacienilor de la
terapie intensiv
37 variabile
509 parametri
n loc de 10
11

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reprezentarea distribuiei
comune de probabilitate
Este adevrat doar dac fiecare
nod este independent condiional
de predecesorii din irul ordonat al
nodurilor, dai fiind prinii nodului
chain rule
(regula de nmulire
a probabilitilor)
Dac efectele sunt considerate
independente Nave Bayes
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Interogri simple
Care este probabilitatea ca
alarma s se declaneze fr
s fi fost nicio spargere i
niciun cutremur iar John i
Mary s sune?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Validitatea unei reele bayesiene
O reea bayesian este un graf orientat aciclic
Arcele pot forma bucle, dar nu pot forma cicluri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Algoritmul Bayes-Ball
O modalitate simpl de a determina relaiile de
independen i independen condiionat ntr-o
reea bayesian
Se presupune c o minge este trimis dintr-un nod n
reea
Mingea trece n moduri diferite, n funcie de cine o
trimite (fiu sau printe) i starea nodului care o
primete (observat/eviden sau neobservat)
Nodurile la care mingea nu ajunge sunt independente
(condiional)
25
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Reguli de trimitere a mingii
26
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemple
27
noduri eviden
(gri)
noduri neobservate
(albe)
o cale activ nicio cale activ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Ordonarea nodurilor
Reelele din dreapta sunt create prin introducerea succesiv a noilor noduri,
de sus n jos
Ambele sunt echivalente cu distribuia comun de probabilitate
Nu sunt optime din punct de vedere al compactitii
Necesit mai muli parametri
Reeaua (b) necesit 31 de parametri, la fel ca distribuia comun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Inferena probabilitilor
marginale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Nodul LA
P(LA) =
P(LA|LF) * P(LF) + P(LA|~LF) * P(~LF) =
0.6 * 0.15 + 0.05 * (1- 0.15) = 0.133
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Nodul CL
P(CL) =
P(CL|LF,PD) * P(LF) * P(PD) +
P(CL|LF,~PD) * P(LF) * P(~PD) +
P(CL|~LF,PD) * P(~LF) * P(PD) +
P(CL|~LF,~PD) * P(~LF) * P(~PD) =
0.99 * 0.15 * 0.01 + 0.9 * 0.15 * (1 - 0.01) + 0.97 * (1 - 0.15) *
0.01 + 0.3 * (1 - 0.15) * (1 - 0.01) = 0.395
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Probabilitile nodurilor
P(L) = P(L|CL) * P(CL) + P(L|~CL) * P(~CL)
= 0.7 * 0.395 + 0.01 * (1 - 0.395) = 0.283

P(LF) = 0.15
P(PD) = 0.01
P(LA) = 0.133
P(CL) = 0.395
P(L) = 0.283
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Inferena prin enumerare
Interogare: Care este probabilitatea spargerii,
dac att John ct i Mary au dat telefon?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Rezolvare
Evidena observat
Variabila interogat
Variabilele neobservate
Coeficient de normalizare
Sum dup toate valorile posibile ale lui y,
de exemplu adevrat/afirmat i fals/negat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Rezolvare
acelai tip de calcule
pentru negaie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Structura de rezolvare
Se repet calculele pentru m i j
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Eliminarea variabilelor
Se fac sumri de la dreapta la stnga, stocnd
rezultatele intermediare (factori) pentru evitarea
recalculrilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Operaii de baz
engl. pointwise product
produs punct cu punct
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Operaii de baz
engl. pointwise product


Eliminarea prin sumare (engl. sum out)
a unei variabile dintr-un produs de factori:
mutarea tuturor factorilor constani n afara
sumrii, presupunnd c f
1
, ..., f
i
nu depind
de X
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Exemplu
sum out A
(eliminare
prin sumare)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Observaie
Toate variabilele care nu sunt predecesori ai
unei variabile de interogare (X) sau de
eviden (e) sunt irelevante
Pot fi ignorate n calcule
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Teoria evidenelor
Dempster-Shafer
Probabilitile evalueaz o situaie folosind un singur numr
Teoria Dempster-Shafer acord propoziiilor intervale pentru
gradele de ncredere [bel, pl]
bel = convingerea (engl. belief)
pl = plauzibilitatea: pl(A) = 1 bel(A)
Se calculeaz independent A i A
Dac nu avem informaii nici despre A nici despre A, intervalul
de ncredere este [0,1]
n loc de probabilitatea 0.5
Pe msur ce se acumuleaz informaii, intervalul se micoreaz
bel(A) P(A) pl(A)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Exemplul 1
Aruncarea unui ban, dac iese cap
Dac nu avem nicio informaie despre ban,
dac e corect sau nu, atunci:
bel(cap) =0 i bel(cap) = 0
Dac un expert este 90% sigur c banul este
corect, adic P(cap) = 0.5, atunci:
bel(cap) = 0.9 x 0.5 = 0.45
bel(cap) = 0.9 x 0.5 = 0.45 egal cu bel(cap)
Intervalul de ncredere este [0.45, 0.55]
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Exemplul 2
Sue este de ncredere cu probabilitatea 0.9
P(M) = 0.9, P(M) = 0.1
Bill este de ncredere cu probabilitatea 0.8
P(B) = 0.8, P(B) = 0.2
Cazul 1. Sue i Bill spun amndoi c lui George i-a
fost furat maina
Probabilitatea ca niciunul s nu fie de ncredere este 0.02
Probabilitatea ca mcar unul din ei este de ncredere este
1 0.02 = 0.98
Intervalul de ncredere este [0.98, 1]
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Exemplul 2
Cazul 2. Sue spune c i-a fost furat maina, Bill spune c nu
Nu pot fi simultan ambii de ncredere (mrturiile se contrazic)
Doar Sue este de ncredere (maina a fost furat)
0.9 x (1 0.8) = 0.18
Doar Bill este de ncredere (maina nu a fost furat)
0.8 x (1 0.9) = 0.08
Niciunul nu este de ncredere (nu tim nimic precis)
(1 0.8) x (1 0.9) = 0.02
Toate probabilitile nenule (pentru normalizare la 1)
0.18 + 0.08 + 0.02 = 0.28
Convingerea c maina a fost furat
0.18 / 0.28 = 0.64
Convingerea c maina nu a fost furat
0.08 / 0.28 = 0.29
Intervalul de ncredere c maina a fost furat
[0.64, 1 0.29] = [0.64, 0.71]
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Formalizare
H universul ipotezelor mutual exclusive
(se mai noteaz cu i se mai numete cadru
de discernmnt)
m o funcie numit BBA (Basic Belief
Assignement, atribuire de convingeri de baz)
sau funcie de mas
m : (H) [0,1]
(H) = mulimea prilor lui H
m(|) = 0

Ae(H)
m(A) = 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Combinarea evidenelor
Teoria Dempster-Shafer ne permite s
combinm convingerile m care apar din
surse multiple de evidene
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplul 1
Dou site-uri de tiri relateaz despre o
demonstraie
Primul site are nivelul de ncredere de 80%
iar al doilea are nivelul de ncredere de 60%
Ambele afirm c demonstraia a fost una
mare, cu peste 10000 de participani
53
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Rezolvare
54
nu exist evidene mpotriva faptului c demonstraia a fost mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplul 2
Primul site afirm c demonstraia a fost mare iar al doilea
afirm contrariul





Ar fi incorect s considerm m
2
({Mare}) = 0,4, deoarece
al doilea site a spus doar c demonstraia a fost mic,
nu a spus nimic despre o demonstraie mare
Valoarea asociat mulimii vide este 0,48 i deci numitorul
fraciei va fi 1-0,48=0,52
55
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Rezolvare
56
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Exemplul anterior
combinarea evidenelor
ntr-o nou BBA
incertitudinea rmas
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Exemplul anterior
Singurele perechi care se intersecteaz n
mulimea vid sunt:
m
1
({CarMissing}) = 0.9 i
m
2
({CarThere}) = 0.8
produsul: 0.72
numitorul: 1 0.72 = 0.28

Aceleai valori ca nainte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Alt exemplu
Un pacient poate avea rceal (Cold), grip
(Flu), Meningit sau Nimic (e sntos)
Mulimea de ipoteze H = {C,F,M,N}
Din studii anterioare:
Febra susine ipoteza {C,F} la nivelul 0.5 i
{M} la nivelul 0.2
Greurile susin ipoteza {C,F,N} la nivelul 0.7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Combinarea evidenelor
Singura combinaie care produce mulimea vid are produsul 0.14,
deci numitorul va fi 1 0.14 = 0.86
Avem un pacient cu febr i greuri (m1 i m2).
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Noua BBA
Posibilitatea de rceal sau grip: [0.581, 0.93]
Posibilitatea de meningit: [0.07, 0.175]
0.825 = 0.581 + 0.244
suma tuturor
submulimilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Alt eviden
Dac se face un test de laborator i acesta
iese pozitiv, indicnd ipoteza {M} la nivelul
0.8, cum se schimb convingerile?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Discuie
O convingere puternic atribuit mulimii vide
indic evidene conflictuale n mulimea de
convingeri
Cnd avem mulimi mari de ipoteze i mulimi
complexe de evidene, calculele devin foarte
laborioase
Complexitatea este totui inferioar abordrii
bayesiene
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evidene conflictuale
Exemplu de rezultat neplauzibil (L. Zadeh):
m1{(A)} = 0.99, m1({Z}) = 0.01
m2{(B)} = 0.99, m2({Z}) = 0.01

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Aplicaii din viaa real
Sisteme expert
Sisteme de diagnoz
Combinarea informaiilor provenite de la mai muli
senzori (sensor fusion)
65
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Teoria jocurilor
Studiaz interaciunile strategice ntre juctori
raionali care aleg diferite aciuni pentru a-i
maximiza profitul
Mai formal, reprezint studiul modelelor
matematice de conflict i cooperare ntre
decideni inteligeni i raionali
Jocurile din cursul 3 rezolvabile cu algoritmul
minimax sunt un caz particular studiat n
teoria jocurilor (jocuri secveniale)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Aplicaii
Oriunde exist interaciuni strategice ntre
juctori raionali
Economie
Strategiile nucleare ale rzboiului rece
Psihologie
Sociologie
tiina calculatoarelor (reele etc.)


Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Caracteristicile unui joc
Jocurile studiate n teoria jocurilor au
urmtoarele elemente:
Doi sau mai muli juctori
Alegerea unei aciuni implic o strategie
Unul sau mai multe rezultate
Rezultatul depinde de strategiile alese
Juctorii sunt raionali
ncearc s-i maximizeze profitul indiferent de
aciunile celorlali juctori
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Dilema inculpailor
engl. prisoners dilemma
Juctori
2 inculpai
Aciuni
Inculpatul 1: Mrturisete, Neag
Inculpatul 2: Mrturisete, Neag
Strategii
Inculpaii i aleg aciunile simultan,
fr a cunoate aciunea celuilalt
Rezultate
Numrul de ani de nchisoare
Profitul
Mai puini ani profit mai mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Reprezentarea n forma
normal (strategic)
O matrice care conine juctorii, strategiile i
profiturile
Se presupune c juctorii acioneaz simultan
Pentru dilema inculpailor:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Echilibrul Nash
Echilibru Nash pentru o strategie pur

) , ( ) , (
* * *
i i i i i i
s s u s s u

>
Profitul
(utilitatea)
juctorului i
Strategia din
echilibrul Nash
Strategia
juctorului i
Strategiile
celorlali
juctori cu
excepia lui i
Determinist,
care nu implic
probabiliti
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Echilibrul Nash
Echilibrul Nash pentru o strategie pur

Echilibrul Nash este strict dac:

Strile din care niciun juctor nu-i
poate mri profitul prin schimbarea
unilateral a strategiei
) , ( ) , (
* * *
i i i i i i
s s u s s u

>
) , ( ) , (
* * *
i i i i i i
s s u s s u

>
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Calculul echilibrelor Nash pure
Se evideniaz maximele pe linii pentru primul juctor
cu {
Se evideniaz maximele pe coloane pentru al doilea
juctor cu }
Strile ncadrate de { } sunt echilibre Nash pure
75
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Exemple
Dilema inculpailor
Btlia sexelor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Tragedia punii comunale
engl. the tragedy of the commons
Punea este folosit n comun de 6 rani,
fiecare cu cte o vac
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Tragedia punii comunale
Fiecare vac d 20 de litri de lapte pe zi
Capacitatea punii este de 8 vaci
Pentru fiecare vac peste 8, producia de
lapte scade cu 2 litri
Exist mai puin iarb de pscut pentru fiecare
vac, deci i mai puin lapte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
20 litri
20 litri
20 litri
20 litri
20 litri
20 litri
Producia zilnic total de lapte: 120 litri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
ranii vor s-i maximizeze producia de lapte
20 litri
20 litri
20 litri
20 litri
20 litri
Producia zilnic total de lapte: 140 litri (7 vaci)
40 litri
O s cumpr nc o vac
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Acum s-a atins capacitatea maxim a punii. Dar ranii nu se opresc.
20 litri
20 litri
20 litri
20 litri
Producia zilnic total de lapte: 160 litri (8 vaci)
40 litri
40 litri
Atunci i eu o s-mi cumpr
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
18 litri
18 litri
18 litri
Producia zilnic total de lapte: 162 litri (9 vaci)
36 litri
36 litri
O s-mi iau nc una
36 litri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
32 litri
16 litri
16 litri
Producia zilnic total de lapte: 160 litri (10 vaci)
32 litri
32 litri
32 litri
Vaca produc e acum mai puin,
dar 2 vaci o s rezolve problema
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
28 litri
14 litri
Producia zilnic total de lapte: 154 litri (11 vaci)
28 litri
28 litri
28 litri
O s-mi cumpr nc una
28 litri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
24 litri
Producia zilnic total de lapte: 144 litri (12 vaci)
24 litri
24 litri
24 litri
24 litri
Toat lumea i cumpr
nc o vac, deci i eu
24 litri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
20 litri
Producia zilnic total de lapte: 130 litri (10 vaci)
30 litri
20 litri
nc pot crete producia
dac iau i a treia vac
20 litri
20 litri
20 litri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
-100
-50
0
50
100
150
200
0 2 4 6 8 10 12 14 16 18 20
Total Cows
M
i
l
k

P
r
o
d
u
c
t
i
o
n

(
i
n

l
i
t
e
r
s
)
Producia maxim de lapte
pentru pune: 162 litr/zi
ranii vor continua s
cumpere vaci pn cnd sunt
15 vaci n total pe pune
Nivelul curent
Ctigul sau pierderea
pentru un ran la
cumprarea unei noi vaci
Producia total
pentru toate vacile
Numrul total de vaci
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
-100
-50
0
50
100
150
200
0 2 4 6 8 10 12 14 16 18 20
Total Cows
M
i
l
k

P
r
o
d
u
c
t
i
o
n

(
i
n

l
i
t
e
r
s
)
Producia maxim de lapte
pentru pune: 162 litri/zi
Nivelul curent
Producia total
pentru toate vacile
Optimul
social
Rezultatul
comportamentului
individual
diferena
Numrul total de vaci
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Soluii?
Acord de cooperare ntre rani
mprirea profitului pentru cele 3 vaci n plus
Consolidare
O firm gestioneaz toate vacile i devide un singur centru de
profit
Reglementri ale statului
Stabilirea unui numr maxim de vaci pe pune sau impunerea
redistribuirii profitului

Proiectarea mecanismelor (engl. mechanism design)
Stimulente i penalizri pentru juctorii individuali astfel nct s fie
tentai s ating optimul social
Problem nc deschis
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Beneficiul social i
beneficiul individual
Partajarea (sharing-ul) n reele P2P
Poluarea
... n general, managementul resurselor din
proprietatea comun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Jocul ajutorului social
Guvernul vrea s ajute un om srac doar dac acesta
vrea s munceasc
Sracul i caut de lucru doar dac nu ia ajutor de la
stat
engl. the welfare game
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Jocul ajutorului social
(Aid, Try to work) nu este EN Pauper prefer Be idle
(Aid, Be Idle) nu este EN: Govt prefer No Aid
(No Aid, Be Idle) nu este EN: Pauper prefer Try to Work
(No Aid, Try to Work) nu este EN: Govt prefer Aid
Jocul nu are echilibru Nash!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Jocul ajutorului social
(Aid, Try to work) nu este EN Pauper prefer Be idle
(Aid, Be idle) nu este EN: Govt prefer No aid
(No Aid, Be Idle) nu este EN: Pauper prefer Try to Work
(No Aid, Try to Work) nu este EN: Govt prefer Aid
Jocul nu are echilibru Nash!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Jocul ajutorului social
(Aid, Try to work) nu este EN Pauper prefer Be idle
(Aid, Be idle) nu este EN: Govt prefer No aid
(No Aid, Be idle) nu este EN: Pauper prefer Try to work
(No Aid, Try to work) nu este EN: Govt prefer Aid
Jocul nu are echilibru Nash!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Jocul ajutorului social
(Aid, Try to work) nu este EN Pauper prefer Be idle
(Aid, Be idle) nu este EN: Govt prefer No Aid
(No Aid, Be idle) nu este EN: Pauper prefer Try to work
(No Aid, Try to work) nu este EN: Govt prefer Aid
Jocul nu are echilibru Nash (pur)!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
96
Strategii pure i mixte
Strategie pur
Juctorul i alege strategia s
ij
din mulimea S
i

Strategie mixt
Juctorul i alege strategia s
ij
cu probabilitatea p
ij

p
ij
> 0,
j
p
ij
= 1
Orice strategie pur este de asemenea i o strategie
mixt
Un joc finit are ntotdeauna cel puin un echilibru
Nash pur sau mixt
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
97
Strategii mixte
Profitul n strategii mixte este profitul ateptat
Fie 1 profitul cu strategia s
1
i 4 cu strategia s
2
Strategia mixt (0,3, 0,7) d profitul ateptat
0,3 * 1 + 0,7 * 4 = 3,1
Un profit sigur de 3,1 este echivalent cu un profit
ateptat ntr-un joc cu profituri de 1 i 4 cu
probabilitile 0,3 respectiv 0,7
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
98
Strategii mixte: interpretare
Jocuri n care se pot aplica simultan strategii multiple
Pariurile pe mai muli cai
Instane multiple ale aceluiai joc
Scenariu de rzboi: q
ij
% din piloi urmeaz strategia s
ij
Acelai joc repetat la infinit
Pentru un singur joc: distribuia de probabilitate este
estimarea oponenilor asupra deciziei unui juctor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Metoda resturilor
engl. oddment method
Metod simpl pentru calculul
echilibrelor Nash mixte
Dac jocul are un echilibru Nash pur,
metoda nu se aplic
99
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategiile pentru Pauper
100
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Strategiile pentru Government
101
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
102
Echilibrul Nash n jocul ajutorului
social cu strategie mixt (I)
Dac Government alege o probabilitate de 0.5
pentru Aid, Pauper nu poate profita de pe
urma acestei decizii n alegerea uneia din
aciunile Work sau Be idle
Profitul Pauper (Work) = 0.5*2 + (1-0.5)*1 = 1.5
Profitul Pauper (Be idle) = 0.5*3 + (1-0.5)*0 = 1.5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
103
Echilibrul Nash n jocul ajutorului
social cu strategie mixt (II)
Dac Pauper alege Try to work cu
probabilitatea 0.2, Government va fi indiferent
ntre Aid i No aid
Profitul Govt (Aid) = 0.2*3 + (1-0.2)*(-1) = -0.2
Profitul Govt (No aid) = 0.2*(-1) + (1-0.2)*0 = -0.2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
104
Echilibrul Nash n jocul ajutorului
social cu strategie mixt (III)

Pentru probabilitile 0.5 i 0.2, att
Government ct i Pauper au profituri egale
pentru ambele aciuni, ceea ce permite
existena unui echilibru Nash

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
105
Stabilitatea
Dac oricare din juctori i modific probabilitatea,
echilibrul se va prbui
De exemplu dac Pauper i schimb q la 0.201 de la 0.2,
ceea ce i este indiferent dat fiind p = 0.5, echilibrul se va
prbui
De asemenea, dac Government i schimb p la 0.499 de
la 0.5, ceea ce i este indiferent dat fiind q = 0.2, echilibrul
se va prbui
Dar dac un juctor prsete strategia de echilibru,
oponentul poate profita pentru a ctiga mai mult dect
ar ctiga la echilibru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
106
Interpretare (I)
Este posibil reinterpretarea jocului ajutorului social
ntr-un mod care face echilibrul strategiei mixte mai
intuitiv
S considerm o lume cu muli indivizi sraci unde
20% muncesc i 80% nu. Guvernul ntlnete o
persoan srac i trebuie s decid dac s i dea
sau nu ajutor social
Ce va face guvernul la echilibru?
i va da ajutor cu probabilitatea p = 0.5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
107
Interpretare (II)
S mai considerm o lume cu mai multe state care
ori dau ajutor tuturor sracilor sau nu dau deloc i o
serie de indivizi sraci care ori muncesc ori nu,
indiferent dac iau sau nu ajutor. Oamenii merg din
stat n stat fr s tie dac statele dau ajutor social,
iar statele nu pot spune dac un individ va munci sau
nu nainte de a-i da ajutor
La echilibru:
50% din state vor acorda ajutor social
20% din sraci vor munci
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
108
Raionament probabilistic.
Teoria jocurilor
1. Reele bayesiene
2. Inferene cu reele bayesiene
3. Teoria Dempster-Shafer
4. Teoria jocurilor
5. Echilibrul Nash
6. Optimalitatea Pareto
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
109
Optimalitatea Pareto
Un rezultat (x
0
,y
0
) este optim Pareto
(sau dominant sau neinferior) dac
NU exist alt rezultat (x,y) unde:
Ambii juctori au un profit mai mare
x > x
0
i y > y
0

Un juctor are profit mai mare iar cellalt are
acelai profit
x > x
0
i y = y
0
, sau
x = x
0
i y > y
0

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
110
Stri optime Pareto
ntr-o stare optim Pareto, juctorii nu au motivaia
de a devia n coaliie
De exemplu: dilema inculpailor
Ambii juctori au profit mai mare mpreun dac ambii
neag
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
111
Interpretare
Optimalitatea Pareto nseamn o situaie mai bun
pentru cel puin un juctor fr a dezavantaja niciun
alt juctor
Optimalitatea Pareto nu nseamn egalitate
De exemplu mprirea unui tort ntre 3 persoane A, B, C
A ia 70%, B ia 30%, C nu ia nimic
Aceast stare este un echilibru optim Pareto, deoarece
pentru a-i da lui C ceva, A sau B ar trebui s renune la ceva
Totui, implic alocarea tuturor resurselor
O stare n care A ia 50%, B ia 30% i C nu ia nimic nu este
optim Pareto
C poate lua 20% fr a-i afecta pe A sau B
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
112
Aplicaii ale optimalitii Pareto
Probleme de optimizare
Traficul n reele de calculatoare
Planificarea task-urilor
Planificarea produciei
Proiectarea componentelor
Procesele de reacii chimice
Economie
Analiza eficienei de pia
mbuntirea sistemului de impozitare
Etc...
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
113
Concluzii
Reelele bayesiene asigur un mod concis de a
reprezenta relaiile de independen condiional
ntr-un domeniu
Teoria Dempster-Shafer este o metod util cnd
concluziile bayesiene mai puternice nu se justific.
Se face o distincie ntre probabilitatea unei propoziii
dat o eviden incert i probabilitatea unei propoziii
n lipsa oricrei evidene
Teoria jocurilor este un model abstract al interaciunilor
multipersonale. n IA, ea furnizeaz o metod de
simulare a comportamentului agenilor raionali
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
10. nvarea supervizat.
Tehnici de clasificare

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Tipuri de raionament
Raionament deductiv






Raionament inductiv







Raionament transductiv
Analogie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
nvarea automat
engl. machine learning
Capacitatea de nvare este unul din cele
mai importante componente ale
comportamentului inteligent
Un sistem clasic specializat care nu nva:
Realizeaz calcule numeroase pentru rezolvarea
unei probleme
Nu memoreaz soluia
De fiecare dat, realizeaz aceeai secven de
calcule complexe
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
nvarea
nvarea denot schimbrile adaptive dintr-un
sistem, n sensul de a realiza aceeai sarcin sau
sarcini similare
mai eficient (engl. efficient)
cu mai puine resurse (doing the things in the right manner)
msur de productivitate
mai eficace (engl. effective)
care atinge scopurile propuse (doing the right things)
msur de calitate (dup Herbert A. Simon)
Un program nva dac i mbuntete
performanele la ndeplinirea unei sarcini pe baza
experienei (Tom Mitchell)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Motivaie
nvarea este esenial pentru mediile
necunoscute
Nu se pot anticipa toate strile mediului
Proiectantul nu poate s i dea agentului toate
informaiile
nvarea este o alternativ la proiectarea
explicit
Expune agentul la mediul real n loc s i spun
despre mediu
Proiectantul nu dorete s i dea toate informaiile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Ce presupune nvarea
nvarea presupune schimbri n agent
nvarea presupune generalizri pe baza
experienei
Performanele trebuie s se mbunteasc nu
numai la repetarea aceleiai sarcini, dar i pentru
sarcini similare care nu au mai fost ntlnite
nainte
Algoritmii trebuie s generalizeze euristic: s
selecteze aspectele importante ale experienei
Aceasta este problema induciei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
nvarea supervizat
n forma cea mai simpl, reprezint nvarea
unei funcii din exemple
Fie f funcia int
Un exemplu este o pereche (x, f(x))
Problema este gsirea unei ipoteze h astfel
nct h f, pe baza unei mulimi de exemple
de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Aproximarea unei funcii
S se determine funcia care trece prin
punctele de mai jos

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Aproximarea unei funcii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Aproximarea unei funcii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Aproximarea unei funcii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Aproximarea unei funcii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Briciul lui Occam
Trebuie preferat cea mai simpl ipotez consistent
cu datele
La egalitate, modelele mai simple tind s generalizeze
mai bine dect cele complexe
Lex parsimoniae: entia non sunt
multiplicanda praeter necessitatem
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Clasificarea i regresia
Ideea de baz: nvarea unei relaii ntre
intrri (vectorul x) i ieire (y) din date
Singura diferen ntre clasificare i regresie
este tipul ieirii: discret, respectiv continuu
Clasificarea estimeaz o ieire discret y,
numit clas
Regresia estimeaz funcia h astfel nct
y h(x) cu o anumit precizie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Interpretarea cognitiv
Pentru a controla un mediu complex, agentul
trebuie s reduc numrul i diversitatea
stimulilor
Clasificarea (sau categorizarea) stabilete
clase care includ un grup de obiecte cu
atribute comune
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Problema de clasificare
Se d o mulime de instane
(obiecte)
Mulimea de antrenare
Instanele au atribute
Fiecare instan are atribute
cu anumite valori
De obicei, ultimul atribut
este clasa
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Tipuri de atribute
Nominal
Culoarea ochilor, nume, sex, CNP
Ordinal
nlime (mic, medie, mare), ranguri, calificative
Interval
Temperatura (C), date calendaristice
Raional
Temperatura (K), lungime, distan (m), preuri
Discrete: de tip nominal i ordinal
Continue: de tip interval i raional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Generalizarea
Gsirea unui model pentru determinarea valorii clasei
n funcie de valorile celorlalte atribute cu eroare ct
mai mic
Modelul trebuie s aib capacitate de generalizare
Aplicarea acestui model pe date noi
De obicei exist o mulime de antrenare, pentru
crearea modelului i o mulime de validare (sau de
test) pentru verificarea capacitii de generalizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Generarea mulimii de validare
mprirea 1/3 - 2/3
2/3 pentru antrenare, 1/3 pentru test
Validare ncruciat (engl. cross-validation)
n grupuri, n-1 pentru antrenare, al n-lea pentru
testare, se repet de n ori
Leave one out
n-1 instane pentru antrenare, a n-a pentru
testare, se repet de n ori
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Generalitatea unui model
Subpotrivirea (engl. underfitting): ipoteza este prea simpl i
nu poate nva modelul din date
Suprapotrivirea (engl. overfitting): ipoteza este prea complex
i este influenat de zgomot i date irelevante
Un model suprapotrivit are performane foarte bune pe
mulimea de antrenare, dar performane slabe pe mulimea de
validare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Exemple de aplicaii
nvarea tratamentelor optime din nregistrrile medicale
Clasificarea celulelor din tumori ca benigne sau maligne pe
baza radiografiilor
Predicia ratei de recuperare a pacienilor cu pneumonie
Clasificarea structurilor secundare a proteinelor (predicia
proprietilor pe baza componentelor structurale)
Clasificarea plilor electronice ca legitime sau frauduloase
Recunoaterea vorbirii
Clasificarea tirilor n categorii precum politic, meteo,
sport etc.
Clasificarea email-urilor n spam i ham
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Clasificarea cu arbori de decizie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Inducia arborelui de decizie
Fie D
n
mulimea instanelor de antrenare care
ajung la un nod n
Procedura general (algoritmul lui Hunt):
Dac D
n
conine instane din aceeai clas y
n
, atunci
n este o frunz etichetat y
n
Dac D
n
este o mulime vid, atunci n este o frunz
etichetat cu clasa implicit (default) y
d
Dac D
n
conine instane care aparin mai multor clase,
se utilizeaz un test de atribute pentru a partiiona datele
n mulimi mai mici
Se aplic recursiv procedura pentru fiecare submulime
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Algoritmul lui Hunt
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Inducia arborelui de decizie
Urmeaz o strategie greedy
Se partiioneaz mulimea de instane cu un test
care maximizeaz un anumit criteriu
Partiionarea datelor presupune:
Specificarea testului
Determinarea partiionrii optime
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Specificarea testului
Depinde de tipul atributului
Nominal
Ordinal
Continuu
Depinde de numrul de posibiliti de
partiionare
Binar
Multipl
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Atribute nominale
Partiionarea multipl
Numrul de partiii = numrul de valori distincte


Partiionarea binar
Se divid valorile n 2 submulimi
Trebuie descoperit partiionarea optim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Atribute ordinale
Partiionarea multipl
Numrul de partiii = numrul de valori distincte


Partiionarea binar
Se divid valorile n 2 submulimi
Trebuie descoperit partiionarea optim
?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Atribute continue
Se discretizeaz datele pentru a le transforma
n atribute ordinale
Cu interval egal (histograma)
Cu frecven egal (mulimi cu numere egale de
instane)
Clusterizare de exemplu k-medii (k-means), cursul 12
Decizie binar: (A s v) sau (A > v)
Trebuie considerate toate partiionrile posibile
Necesit un efort de calcul mai mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Discretizarea
Cu interval egal 3 intervale
[65, 75], (75, 85], (85, 95]
33
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Discretizarea
Cu frecven egal 3 intervale
34
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Discretizarea
Binar, cu o valoare de referin (de ex. 85)
35
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Partiionarea optim
Euristic: se prefer nodurile cu cele mai
omogene distribuii de clas
Necesit o msur a impuritii nodurilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Msuri de impuritate
Convenie: 0 log
2
0 = 0
Pentru o problem binar:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Msuri de impuritate
Valoarea maxim:
instanele sunt
distribuite egal ntre
clase
Valoarea minim (0):
toate instanele
aparin unei singure
clase
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Partiionarea
Cnd un nod printe p este partiionat n k fii, calitatea
partiionrii se calculeaz astfel:





unde: n
i
= numrul de instane din fiul i
n

= numrul de instane din nodul p
Formul similar pentru entropie

=
=
k
i
i
split
i GINI
n
n
GINI
1
) (
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Ctigul informaional
Calitatea unei partiionri este determinat de
creterea omogenitii submulimilor rezultate
Trebuie maximizat ctigul informaional:
= I(printe)
i
(n
i
/ n * I(fiu
i
))
Deoarece I(printe) este acelai pentru toi fiii, se
prefer valoarea minim pentru
i
(n
i
/ n * I(fiu
i
))
Funcia I() poate fi entropia, indexul Gini sau alt
msur de impuritate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Exemplu: construirea unui AD
Se calculeaz ctigul informaional pentru
fiecare atribut (Refund, Status, Income)
Refund
Refund = Yes 3 instane
Cheat = Yes 0
Cheat = No 3
Gini = 0
Refund = No 7 instane
Cheat = Yes 3
Cheat = No 4
Gini = 1 (3/7)
2
(4/7)
2
= 0.49

Gini
Refund
= (3/10) * 0 + (7/10) * 0.49 = 0.343

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Exemplu: construirea unui AD
Status
Status = Divorced 2 instane
Cheat = Yes 1
Cheat = No 1
Gini = 1 (1/2)
2
(1/2)
2
= 0.5
Status = Married 4 instane
Cheat = Yes 0
Cheat = No 4
Gini = 1 (0/4)
2
(4/4)
2
= 0
Status = Single 4 instane
Cheat = Yes 2
Cheat = No 2
Gini = 1 (2/4)
2
(2/4)
2
= 0.5
Gini
Status
= (2/10) * 0.5 + (4/10) * 0 + (4/10) * 0.5
= 0.3
Aceeai valoare dac am considera 2 clase:
{Married} i {Divorced, Single} problem de
optimizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Construirea unui AD:
atribute continue
Pentru eficientizarea calculelor, pentru fiecare atribut:
Se sorteaz valorile
Se parcurg liniar valorile, actualizndu-se numrarea
instanelor i calculndu-se indexul Gini
Se alege poziia de partiionare cu indexul Gini minim
Cheat No No No Yes Yes Yes No No No No
Taxable Income
60 70 75 85 90 95 100 120 125 220
55 65 72 80 87 92 97 110 122 172 230
<= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= >
Yes 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
Poziii de part.
Valori sortate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Construirea unui AD:
atribute continue
Optimizare: se calculeaz indexul Gini doar
pentru poziiile unde se schimb valoarea
clasei
2 partiionri candidat n loc de 11
Cheat No No No Yes Yes Yes No No No No
Taxable Income
60 70 75 85 90 95 100 120 125 220
55 65 72 80 87 92 97 110 122 172 230
<= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= >
Yes 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
Poziii de part.
Valori sortate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Prima partiionare
Gini
Refund
= 0.343
Gini
Status
= 0.3
Gini
Income
= 0.3
Partiionrile dup Status i Income
sunt egal posibile
Dar rezultatele pot fi foarte diferite...
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Procedura recursiv
S considerm Status pentru prima partiionare
MarSt
Divorced Married Single
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Al doilea nivel
Atribute rmase
Refund, Income
Status = Divorced
Refund = No Cheat = Yes
Refund = Yes Cheat = No
Gini = 0, partiionare dup Refund
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Al doilea nivel
Status = Married Cheat = No
Nu mai sunt necesare alte
partiionri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Al doilea nivel
Status = Single
Refund = Yes 1 instan
Cheat = Yes 0
Cheat = No 1
Gini = 0
Refund = No 3 instane
Cheat = Yes 2
Cheat = No 1
Gini = 1 (2/3)
2
(1/3)
2
= 0.444

Gini
Refund
= 0 + (3/4) * 0.444 = 0.333
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Al doilea nivel
Status = Single
Valoarea clasei neschimbat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Al doilea nivel
Gini
Refund
= 0.333
Gini
Income
= 0.333
Partiionrile dup Refund i Income
sunt egal posibile
S considerm Refund
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Arborele final
MarSt
Divorced Married Single
Refund
Yes
NO
No
YES
NO Refund
Yes
NO
No
Income
<80
NO
>80
YES
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Decizia alternativ
Income
>97
NO
<97
MarSt
Divorced Married Single
YES NO YES
Arborele de decizie are 1 eroare chiar pe mulimea de antrenare!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Clasificarea cu arbori de decizie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Aplicarea modelului
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10

Instana de test
Se ncepe din rdcin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10

Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10

Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10

Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10

Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10

Se clasific instana:
Cheat = No
Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Algoritmi de inducie
ID3, Iterative Dichotomiser 3 (Quinlan, 1983)
Opereaz numai pe atribute discrete
C4.5 (Quinlan, 1993)
Extensie a algoritmului ID3
Permite i atribute continue
Permite partiionarea de mai multe ori dup acelai atribut
Permite retezarea (simplificarea, engl. pruning) arborelui generat pentru
a crete capacitatea de generalizare
ID3 i C4.5 folosesc entropia pentru a descoperi arbori de dimensiuni
ct mai reduse
Arbori aleatorii (Random Tree, Random Forest)
Stabilete atributele pentru partiionare n mod aleatoriu
Nu genereaz arbori de dimensiuni mici
Eroarea pe mulimea de antrenare este foarte mic
Toi aceti algoritmi sunt euristici
Nu se garanteaz dimensiunea minim a arborelui i nici performanele
Exist mai muli arbori posibili pentru o problem dat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Clasificarea cu arbori de decizie
De obicei uor de construit
Necesit totui o serie de calcule
La implementare, dificultatea principal este partiionarea
recursiv
Rapizi la clasificarea instanelor necunoscute
Uor de interpretat
Mai ales pentru arbori mici ca dimensiune
Un arbore de decizie poate fi interpretat ca o mulime
de reguli
De exemplu Dac Marital Status este Divorced i Refund
este Yes atunci Cheat este No
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Clasificatorul bayesian
Se consider fiecare atribut i clasa ca
variabile aleatorii
Se d o instan cu atributele (A
1
, A
2
, , A
n
)
Trebuie determinat clasa C
Echivalent, trebuie gsit valoarea lui C care
maximizeaz P ( C | A
1
, A
2
, , A
n
)
Trebuie estimat P ( C | A
1
, A
2
, , A
n
) direct
din date
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Clasificatorul bayesian
Conform teoremei lui Bayes:




Se alege valoarea lui C care maximizeaz
P ( C | A
1
, A
2
, , A
n
)
Echivalent cu alegerea valorii lui C care maximizeaz
P ( A
1
, A
2
, , A
n
| C ) * P(C)
Problema se reduce la estimarea P(A
1
, A
2
, , A
n
| C)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Clasificatorul bayesian naiv
engl. Nave Bayes
Se presupune c atributele A
i
sunt
independente dat fiind clasa C
j
:
P(A
1
, A
2
, , A
n
| C
j
) = P(A
1
| C
j
) P(A
2
| C
j
) P(A
n
| C
j
)
Putem estima P(A
i
| C
j
) pentru toate A
i
i C
j
Trebuie gsit valoarea C
j
astfel nct
P(C
j
) H
i
P(A
i
| C
j
) s fie maxim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Exemplu de clasificare
x
q
= (No, Married, 80K)
Trebuie s gsim:
argmax P(C
j
) H
i
P(A
i
| C
j
)
Calculm probabilitile pentru
(Cheat = Yes) i (Cheat = No)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
C
j
= (Cheat = Yes)
P(Cheat = Yes) = 3 / 10
P(Refund = No | Cheat = Yes) = 3 / 3
P(Status = Married | Cheat = Yes) = 0 / 3

Income, Cheat = Yes

(Income|Cheat = Yes)
= 90

(Income|Cheat = Yes)
= 4.33

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Considerente practice
Dac una din probabilitile condiionate este 0, tot produsul
devine 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Considerente practice
Soluie: corecia Laplace sau estimarea-m (engl. m-estimate)
Se estimeaz probabilitile anterioare ale fiecrei valori
Iniial:


Estimarea-m:


Fie c numrul de clase, putem considera m = c i p = 1 / c
Corecia Laplace:

Foarte util mai ales la clasificarea textelor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Considerente practice
Precizia calculelor poate fi afectat de
nmulirea probabilitilor (valori mici)
Soluie: folosirea logaritmilor
Produsul de probabiliti este nlocuit cu suma
logaritmilor de probabiliti
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Atribute continue
Abordarea 1. Discretizarea
Cte un atribut ordinal pe submulime
Violeaz presupunerea de independen
Abordarea 2. Partiionarea binar:
(A s v) sau (A > v)
Se alege doar unul din teste
Valori: Da / Nu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Atribute continue
Abordarea 3. Estimarea distribuiei de
probabilitate (folosit mai rar)
Se presupune c valorile atributului respect o
distribuie (de exemplu) normal
Parametrii distribuiei se estimeaz din date
(media i deviaia standard )
Odat cunoscut distribuia de probabilitate,
poate fi utilizat pentru a calcula probabilitile
condiionate P(A
i
|C
j
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Atribute continue
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
C
j
= (Cheat = Yes)
P(Cheat = Yes) = 3 / 10
P(Refund = No | Cheat = Yes) = 3 / 3
P(Status = Married | Cheat = Yes) = 0 / 3

Income, Cheat = Yes

(Income|Cheat = Yes)
= 90

(Income|Cheat = Yes)
= 4.082

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Exemplu de clasificare
x
q
= (No, Married, 80K)
Income, Cheat = Yes

(Income|Cheat = Yes)
= 90

(Income|Cheat = Yes)
= 4.082
P(Income = 80 | Cheat = Yes) =

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
C
j
= (Cheat = Yes)
P(Cheat = Yes) = 3 / 10
P(Refund = No | Cheat = Yes) = 3 / 3
P(Status = Married | Cheat = Yes) = 0 / 3
P(Income = 80 | Cheat = Yes) = 4.862e-3

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
Analog pentru C
j
= (Cheat = No)
P(Cheat = No) = 7 / 10
P(Refund = No | Cheat = No) = 4 / 7
P(Status = Married | Cheat = No) = 4 / 7
P(Income = 80 | Cheat = No) = 6.622e-3

(Income|Cheat = No)
= 110

(Income|Cheat = No)
= 50.498 !
valorile atributului nu au de fapt o distribuie normal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
Analog pentru C
j
= (Cheat = No)
P(Cheat = No) = 7 / 10
P(Refund = No | Cheat = No) = 4 / 7
P(Status = Married | Cheat = No) = 4 / 7
P(Income = 80 | Cheat = No) = 6.622e-3

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Exemplu de clasificare
x
q
= (No, Married, 80K)
P(x
q
|C
yes
) = 0.233 * 10
-3
P(x
q
|C
no
) = 1.43 * 10
-3

argmax
j
P(x
q
|C
j
) = No
n general, discretizarea (chiar cu intervale egale) d rezultate mai bune
dect metoda estimrii distribuiei de probabilitate.
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Clasificarea Bayes naiv
Avantaje
Calcule simple
Robustee la zgomot i atribute irelevante
Aplicabilitate
Mulimi de antrenare medii sau mari
Atribute independente condiional
Presupunerea este deseori infirmat n realitate
Dar metoda funcioneaz totui surprinztor de bine!
Extensie: reele bayesiene
Aplicaii de succes
Diagnoz
Clasificarea documentelor text
Detecia spam-ului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Clasificarea bazat pe instane
Instanele memorate
Instan nou
Se memoreaz instanele
de antrenare
Se folosesc pentru a
prezice clasa instanelor
noi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Cei mai apropiai k vecini
engl. k-Nearest Neighbor (k-NN)
Se folosesc cele mai apropiate k instane pentru a
realiza clasificarea
Dac merge ca o ra i mcne ca o ra, atunci
probabil e o ra
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Clasificarea k-NN
Necesit:
Mulimea instanelor de antrenare
O metric de distan pentru a calcula distana
dintre instane
Valoarea lui k, numrul de vecini apropiai (k 1)
Pentru a clasifica o instan nou:
Se calculeaz distana fa de instanele de
antrenare
Se identific cei k vecini cei mai apropiai
Se folosesc clasele vecinilor pentru a determina
clasa noii instane (de exemplu prin vot majoritar)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Reprezentarea instanelor
Pentru n atribute, instanele pot fi vzute ca puncte ntr-un
spaiu n-dimensional
De exemplu clasificarea riscului unor pacieni
Atribute:
Indicele Masei Corporale IMC (= G/I
2
)
Vrsta V
Instane:
IMC = 18.5, V = 20
IMC = 27, V = 32
IMC = 39, V = 27
IMC = 20, V = 25

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Cei mai apropiai vecini
Cei mai apropiai k vecini ai unei instane x
sunt punctele cu cele mai mici distane fa
de x
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
1-NN
Diagrama Voronoi
n interiorul unei celule, clasificarea tuturor noilor instane
este determinat de instana de antrenare corespunztoare
Instanele noi din afara unei celule sunt mai apropiate de
alte instane de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Diagramele Voronoi i
grdina zen Ryoanji
Cercettorii au descoperit c spaiul gol al grdinii
evoc o imagine ascuns a unui arbore care este
perceput incontient
Partea de sus este similar cu diagrama Voronoi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Metrici de distan
Se folosesc n general particularizri ale
distanei Minkowski



Cele mai folosite metrici sunt:
Distana euclidian: p = 2
Distana Manhattan: p = 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Numrul de vecini
Cnd k este prea mic, clasificarea poate fi afectat de
zgomot
Cnd k este prea mare, vecintatea poate include
puncte din alte clase
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Scalarea
Se recomand scalarea atributelor pentru a
preveni dominarea msurii de distan de ctre
un anumit atribut
De exemplu:
nlimea unei persoane e [1.5, 2.1] m
Greutatea unei persoane e [50, 120] kg
Venitul unei persoane e [10000, 1000000] EUR/an
Valorile atributelor sunt normalizate:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Numrul de dimensiuni
Blestemul dimensionalitii
engl. curse of dimensionality
Datele devin mai rare n spaiile
multidimensionale
Dac numrul de atribute este mare, este
nevoie de mai multe instane de antrenare
pentru a forma un model corect
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Ponderarea instanelor
Vecinii mai apropiai au o influen mai
mare la stabilirea clasei
Fiecare dintre vecini poate fi ponderat
pe baza distanei:
w
i
= 1 / d(x
q
, x
i
)
2
Dac d(x
q
, x
i
) = 0, atunci f(x
q
) = f(x
i
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
96
Exemplu: calcularea distanelor
Noua instan: x
q
= (No, Married, 80K)
De exemplu: d(x
q
, x
4
) = ...
d
Refund
= 1 (No = Yes)
d
Status
= 0 (Married = Married)
d
Income
= ...
I
q
= 80, normalizat ntre 60 i 220 0.125
I
4
= 120, normalizat 0.375
d
Income
= 0.25
d(x
q
, x
4
) = sqrt(1
2
+ 0
2
+ 0.25
2
)= 1.031
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
97
Exemplu: calcularea distanelor
Noua instan: x
q
= (No, Married, 80K)
d(x
q
, x
1
) = 1.442
d(x
q
, x
2
) = 0.125
d(x
q
, x
3
) = 1.002
d(x
q
, x
4
) = 1.031
d(x
q
, x
5
) = 1.004
d(x
q
, x
6
) = 0.125
d(x
q
, x
7
) = 1.663
d(x
q
, x
8
) = 1.000
d(x
q
, x
9
) = 0.031
d(x
q
, x
10
) = 1.002
k = 3
Cele mai apropiate 3 instane sunt:
x
9
(Cheat=No), x
2
(No) i x
6
(No)
Deci: f(x
q
) = No
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
98
Exemplu: ponderarea
Noua instan:
x
q
= (No, Married, 80K)

w(x
1
) = 1 / 1.442
2
=
0.481 (No)

w(x
2
) = 1 / 0.125
2
=
64 (No)
w(x
3
) = 0.996 (No)
w(x
4
) = 0.941 (No)
w(x
5
) = 0.992 (Yes)
w(x
6
) = 64 (No)
w(x
7
) = 0.362 (No)
w(x
8
) = 1.000 (Yes)
w(x
9
) = 1040.583 (No)
w(x
10
) = 0.996 (Yes)
k = 10
Se pot lua n calcul toate
instanele de antrenare
Se transform dintr-o
metod local ntr-una
global
Decizia: suma
Voturi pt. No: 1171.363
Voturi pt. Yes: 2.988
Deci: f(x
q
) = No
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
99
Ponderarea atributelor
Ideea de baz: lungirea sau scurtarea axelor
n spaiul euclidian
Lungirea axelor atributelor mai relevante
Scurtarea axelor atributelor mai puin relevante
Metode:
Ponderarea pe baza ctigului informaional
Necesit calcule mai complexe
Ponderarea cu un algoritm local, precum Relief
(Kira & Rendell, 1992)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
100
Selecia atributelor
ntr-o mulime de antrenare pot exista
atribute irelevante, care complic inutil
modelul i pot afecta rezultatele clasificrii
Avantajele seleciei atributelor:
Calcule mai simple
Clasificatorul rezultat este mai rapid
Erorile la predicie pot scdea
Identificarea atributelor relevante poate ajuta la
nelegerea naturii problemei de clasificare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
101
Clasificarea bazat pe
cei mai apropiai vecini
Clasificatorii k-NN sunt lazy learners
Modelul nu este construit explicit
Efortul de calcul se face la clasificarea instanelor noi
Arborii de decizie sunt eager learners
Timpul de clasificare poate fi redus prin utilizarea
arborilor kd (engl. kd-trees, k-dimensional trees)
Rata de eroare este de obicei mic
Dac mulimea de antrenare nu este afectat de zgomot,
rata de eroare este de obicei 0%
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Weka
Colecie open-source de algoritmi de nvare automat
102
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
103
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
104
Integrarea
Pot fi integrate astfel de metode aparent
diferite ntr-o singur metod?
NNGEP, Non-Nested Generalized Exemplars
with Prototypes (Leon, 2005) combin:
Reguli
Instane
Prototipuri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
105
Clasificarea NNGEP
Instanele similare
sunt agregate n
exemplare
generalizate
(hiper-paralelipipede)
Exemplarele
generalizate nu se
suprapun

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
106
Clasificarea NNGEP
Noile instane sunt incluse n cel mai apropiat
exemplar generalizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
107
Clasificarea NNGEP
Dac o generalizare intr ulterior n conflict
cu un exemplu negativ, generalizarea este
modificat pentru meninerea consistenei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
108
Prototipuri
ntruct un exemplar
generalizat conine mai
multe instane, media
statistic a acestora nu
coincide neaprat cu
centrul geometric al
hiper-paralelipipedului
corespunztor
Prototipul poate fi diferit
de centrul geometric
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Actualizarea prototipurilor
Cnd se adaug o nou instan unui
exemplar generalizat, prototipul acestuia
se modific dup formulele:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
110
Rezultate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
111
Interpretare
Hiper-paralelipipedele pot fi interpretate ca reguli
Dac a < x < b atunci x e C
H
Hiper-paralelipipedele sunt exemplare generalizate
(instane)
n interior, o nou instan este clasificat direct n clasa C
H

n exterior, o nou instan este clasificat pe baza celui mai
apropiat exemplar generalizat
Prototipurile sunt calculate folosind distribuia
normal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
112
Concluzii
Clasificarea este o parte foarte important a
nvrii inductive
Euristicile de clasificare pot avea performane
diferite pentru aceeai problem, depinznd
de structura problemei
Dei diferite conceptual, metodele bazate pe
reguli, instane i prototipuri pot fi integrate
ntr-un model cognitiv unitar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
11. Reele neuronale (I)

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Modelul biologic
Modul n care lucreaz creierul fiinelor vii este
complet diferit de cel al calculatoarelor numerice
convenionale
O reea neuronal artificial este un model simplificat
al creierului biologic
Creierul uman dispune de 100 de miliarde de neuroni
i 100-500 de trilioane de sinapse
Calculele sunt prelucrri paralele, complexe i
neliniare
Fiecare neuron are o structur simpl (aparent...),
dar interconectarea lor asigur puterea de calcul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Interconectarea neuronilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Caracteristicile reelei
neuronale biologice
Informaiile sunt stocate i prelucrate n toat
reeaua
Sunt globale, nu locale
O caracteristic esenial este plasticitatea,
capacitatea de a se adapta de a nva
Uurina nvrii a condus la ideea emulrii
reelelor neuronale cu ajutorul calculatorului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Reele neuronale artificiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Analogii
RN biologic

Soma (corpul celulei)
Dendrite
Axon
Sinaps


RN artificial

Neuron
Intrri
Ieire
Pondere (weight)


Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Neuronul artificial
Warren McCulloch i Walter Pitts (1943) au
propus un model de neuron, care rmne pn
n prezent fundamentul structural pentru
majoritatea reelelor neuronale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Perceptronul
Frank Rosenblatt (1958) a introdus un
algoritm de antrenare pentru neuronul
numit perceptron
Perceptronul are ponderi sinaptice ajustabile
i funcia de activare semn sau prag
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
nvarea
Scopul perceptronului este s clasifice
intrrile x
1
, x
2
, . . ., x
n
cu dou clase
A
1
i A
2
Spaiul intrrilor, n-dimensional, este
mprit n dou de un hiperplan definit
de ecuaia:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Exemple: 2, respectiv 3 intrri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
nvarea
nvarea are loc prin ajustarea succesiv a ponderilor pentru a
reduce diferena dintre ieirile reale i ieirile dorite, pentru
toate datele de antrenare
Dac la iteraia p ieirea real este Y(p) iar ieirea dorit este
Y
d
(p), atunci eroarea este: e(p) = Y
d
(p) - Y(p)
Iteraia p se refer la instana/vectorul de antrenare cu numrul p
Dac eroarea este pozitiv, trebuie s cretem ieirea
perceptronului Y(p)
Dac eroarea este negativ, trebuie s micorm ieirea Y(p)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
nvarea
Dac Y = 0 iar Y
d
= 1, e = 1
Atunci: w = x = x e
x w = 0
x w
d
= 1

Dac x > 0,
w trebuie s creasc

Dac x < 0,
w trebuie s scad
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
nvarea
Dac Y = 1 iar Y
d
= 0, e = -1
Atunci: w = (-x) = x e
x w = 1
x w
d
= 0

Dac x > 0,
w trebuie s scad

Dac x < 0,
w trebuie s creasc
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Regula delta
Se bazeaz pe minimizarea erorii n raport cu
ponderile, cu ajutorul gradientului descendent
n cazul general:


Actualizarea ponderilor:


Demonstraie: http://en.wikipedia.org/wiki/Delta_rule
ieirea dorit
funcia de activare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Regula de nvare
pentru funcia de
activare liniar
(difereniabil)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Algoritmul de antrenare al
perceptronului
1. Iniializarea
Ponderile w
1
, w
2
,, w
n
i pragul sunt iniializate
cu valori aleatorii din intervalul [-0.5, 0.5]
2. Activarea
Se aplic intrrile x
1
(p), x
2
(p),, x
n
(p) i se
calculeaz ieirea real Y(p):

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Algoritmul de antrenare al
perceptronului
3. Actualizarea ponderilor




4. Se incrementeaz p i se repet procesul
de la pasul 2 pn cnd algoritmul converge
Eroarea pentru toate datele de antrenare este 0
Convergena nu este garantat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Exemplu de antrenare: funcia I
Inputs
x
1
x
2
0
0
1
1
0
1
0
1
0
0
0
Epoch
Desired
output
Y
d
1
Initial
weights
w
1
w
2
1
0.3
0.3
0.3
0.2
0.1
0.1
0.1
0.1
0
0
1
0
Actual
output
Y
Error
e
0
0
1
1
Final
weights
w
1
w
2
0.3
0.3
0.2
0.3
0.1
0.1
0.1
0.0
0
0
1
1
0
1
0
1
0
0
0
2
1
0.3
0.3
0.3
0.2
0
0
1
1
0
0
1
0
0.3
0.3
0.2
0.2
0.0
0.0
0.0
0.0
0
0
1
1
0
1
0
1
0
0
0
3
1
0.2
0.2
0.2
0.1
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0
0
1
0
0
0
1
1
0.2
0.2
0.1
0.2
0.0
0.0
0.0
0.1
0
0
1
1
0
1
0
1
0
0
0
4
1
0.2
0.2
0.2
0.1
0.1
0.1
0.1
0.1
0
0
1
1
0
0
1
0
0.2
0.2
0.1
0.1
0.1
0.1
0.1
0.1
0
0
1
1
0
1
0
1
0
0
0
5
1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0
0
0
1
0
0
0
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0
Threshold: u = 0.2; learning rate: o = 0.1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Reprezentarea grafic
Perceptronul poate reprezenta doar funcii liniar separabile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Discuie
Perceptronul poate reprezenta funcii liniar
separabile mai complexe, de exemplu funcia
majoritate
Un arbore de decizie ar avea nevoie de 2
n
noduri
Poate nva tot ce poate reprezenta, dar nu
poate reprezenta multe funcii
Neseparabile liniar, de exemplu XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Perceptronul multistrat cu
2 straturi ascunse
26
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Perceptronul multistrat
Perceptronul multistrat este o reea neuronal cu
propagare nainte (feed-forward) cu unul sau mai
multe straturi ascunse
Un strat de intrare
Unul sau mai multe straturi ascunse / intermediare
Un strat de ieire
Calculele se realizeaz numai n neuronii din straturile
ascunse i din stratul de ieire
Semnalele de intrare sunt propagate nainte succesiv
prin straturile reelei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Straturile ascunse
Un strat ascuns i ascunde ieirea dorit. Cunoscnd
corespondena intrare-ieire a reelei (cutie neagr),
nu este evident care trebuie s fie ieirea dorit a unui
neuron dintr-un strat ascuns
Reelele neuronale clasice au 1 sau 2 straturi ascunse.
Fiecare strat poate conine 10-1000 neuroni
Arhitecturi Deep Learning multe straturi ascunse
(de exemplu 10), de obicei cu o faz de pre-antrenare
nesupervizat i tehnici posibil diferite de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
1 strat ascuns
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
2 straturi ascunse
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Funcii de activare (I)
n prezent, funciile cele mai des utilizate sunt
sigmoida unipolar (sau logistic):
32
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Funcii de activare (II)
i mai ales sigmoida bipolar (tangenta hiperbolic):
33
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Discuie
Un perceptron cu un singur strat are aceleai
limitri chiar dac folosete o funcie de
activare neliniar
Un perceptron multistrat cu funcii de activare
liniare este echivalent cu un perceptron cu un
singur strat
O combinaie liniar de funcii liniare este tot o
funcie liniar
f(x) = 2x + 2; g(y) = 3y 3
g(f(x)) = 3(2x + 2) 3 = 6x + 3
34
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
nvarea
O reea multistrat nva ntr-un mod
asemntor cu perceptronul
Reeaua primete vectorii de intrare i
calculeaz vectorii de ieire
Dac exist o eroare (o diferen ntre ieirea
real i ieirea dorit), ponderile sunt ajustate
pentru a reduce eroarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Algoritmul de retro-propagare
engl. backpropagation
Bryson & Ho, 1969
Rumelhart, Hinton & Williams, 1986
Algoritmul are dou faze:
Reeaua primete vectorul de intrare i propag
semnalul nainte, strat cu strat, pn se genereaz
ieirea
Semnalul de eroare este propagat napoi,
de la stratul de ieire ctre stratul de intrare,
ajustndu-se ponderile reelei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Fazele algoritmului
backpropagation
37
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Pasul 1. Iniializarea
Ponderile i pragurile se iniializeaz cu valori
aleatorii mici, dar diferite de 0
O euristic recomand valori din intervalul
(2.4 / F
i
, 2.4 / F
i
), unde F
i
este numrul
total de intrri ale neuronului i (fan-in)
n general, pot fi valori ntre [-0.1, 0.1]
Iniializarea ponderilor se face n mod
independent pentru fiecare neuron
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Pasul 2. Activarea
Se activeaz reeaua prin aplicarea vectorului de
intrare x
1
(p), x
2
(p),, x
n
(p) cu ieirile dorite
y
d
1
(p), y
d
2
(p),, y
d
n
(p)
Se calculeaz ieirile reale ale neuronilor din stratul
ascuns:



unde n este numrul de intrri ale neuronului j din
stratul ascuns i se utilizeaz o funcie de activare
sigmoid
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Pasul 2. Activarea
Se calculeaz ieirile reale ale neuronilor din stratul
de ieire:




unde m este numrul de intrri ale neuronului k din
stratul de ieire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Pasul 3. Ajustarea ponderilor
Se calculeaz gradienii de eroare ai neuronilor din
stratul de ieire, n mod similar cu regula delta pentru
perceptron
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Derivata funciei de activare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Pasul 3. Ajustarea ponderilor
Se calculeaz gradienii de eroare ai neuronilor din
stratul ascuns:


Se calculeaz coreciile ponderilor:


Se actualizeaz ponderile neuronilor din stratul
ascuns:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Pasul 4. Iteraia
Se incrementeaz p
Prezentarea tuturor vectorilor (instanelor)
de antrenare constituie o epoc
Antrenarea reelei continu pn cnd
eroarea medie ptratic ajunge sub un prag
acceptabil sau pn cnd se atinge un numr
maxim prestabilit de epoci de antrenare
V este numrul de vectori de antrenare
O este numrul de ieiri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: Reea cu 1 strat ascuns pentru
aproximarea funciei binare XOR
45
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Iniializarea
Pragul aplicat unui neuron dintr-un strat
ascuns sau de ieire este echivalent cu o alt
conexiune cu ponderea egal cu , conectat
la o intrare fix egal cu 1
Ponderile i pragurile sunt iniializate
aleatoriu:
w
13
= 0.5, w
14
= 0.9, w
23
= 0.4, w
24
= 1.0
w
35
= 1.2, w
45
= 1.1

3
= 0.8,
4
= 0.1,
5
= 0.3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
S considerm instana de antrenare unde intrrile
x
1
i x
2
sunt egale cu 1 iar ieirea dorit y
d
5
este 0
Ieirile reale ale neuronilor 3 i 4 din stratul ascuns
sunt calculate precum urmeaz:
| | 5250 . 0 1 / 1 ) (
) 8 . 0 1 4 . 0 1 5 . 0 1 (
3 23 2 13 1 3
= + = u + =
+
e w x w x sigmoid y
| | 8808 . 0 1 / 1 ) (
) 1 . 0 1 0 . 1 1 9 . 0 1 (
4 24 2 14 1 4
= + = u + =
+ +
e w x w x sigmoid y
Se determin ieirea real a neuronului 5 din stratul
de ieire:

Se obine urmtoarea eroare:
| | 5097 . 0 1 / 1 ) (
) 3 . 0 1 1 . 1 8808 . 0 2 . 1 5250 . 0 (
5 45 4 35 3 5
= + = u + =
+
e w y w y sigmoid y
5097 . 0 5097 . 0 0
5 5 ,
= = = y y e
d
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Se propag eroarea e din stratul de ieire ctre
stratul de intrare
Mai nti se calculeaz gradientul erorii pentru
neuronul 5 din stratul de ieire:
1274 . 0 5097) . 0 ( 0.5097) (1 0.5097 ) 1 (
5 5 5
= = = e y y o
Apoi se calculeaz coreciile ponderilor i pragului
Presupunem c rata de nvare o este 0.1
0112 . 0 ) 1274 . 0 ( 8808 . 0 1 . 0
5 4 45
= = = A o o y w
0067 . 0 ) 1274 . 0 ( 5250 . 0 1 . 0
5 3 35
= = = A o o y w
0127 . 0 ) 1274 . 0 ( ) 1 ( 1 . 0 ) 1 (
5 5
= = = u A o o
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Apoi se calculeaz gradienii de eroare pentru
neuronii 3 i 4 din stratul ascuns:


Apoi se determin coreciile ponderilor i pragurilor:
0381 . 0 ) 2 . 1 ( 0.1274) ( 0.5250) (1 0.5250 ) 1 (
35 5 3 3 3
= = = w y y o o
0.0147 .1 1 4) 0.127 ( 0.8808) (1 0.8808 ) 1 (
45 5 4 4 4
= = = w y y o o
0038 . 0 0381 . 0 1 1 . 0
3 1 13
= = = A o o x w
0038 . 0 0381 . 0 1 1 . 0
3 2 23
= = = A o o x w
0038 . 0 0381 . 0 ) 1 ( 1 . 0 ) 1 (
3 3
= = = u A o o
0015 . 0 ) 0147 . 0 ( 1 1 . 0
4 1 14
= = = A o o x w
0015 . 0 ) 0147 . 0 ( 1 1 . 0
4 2 24
= = = A o o x w
0015 . 0 ) 0147 . 0 ( ) 1 ( 1 . 0 ) 1 (
4 4
= = = u A o o
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
n final, se actualizeaz ponderile i pragurile:
5038 . 0 0038 . 0 5 . 0
13 13 13
= + = A + =
w w w
8985 . 0 0015 . 0 9 . 0
14 14 14
= = A + =
w w w
4038 . 0 0038 . 0 4 . 0
23 23 23
= + = A + =
w w w
9985 . 0 0015 . 0 0 . 1
24 24 24
= = A + =
w w w
2067 . 1 0067 . 0 2 . 1
35 35 35
= = A + =
w w w
0888 . 1 0112 . 0 1 . 1
45 45 45
= = A + =
w w w
7962 . 0 0038 . 0 8 . 0
3 3 3
= = u A + u = u
0985 . 0 0015 . 0 1 . 0
4 4 4
= + = u A + u = u
3127 . 0 0127 . 0 3 . 0
5 5 5
= + = u A + u = u
Procesul de antrenare se repet pn cnd suma erorilor
ptratice devine mai mic dect o valoare acceptabil,
de exemplu aici 0.001
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Rezultate finale
Inputs
x
1
x
2
1
0
1
0
1
1
0
0
0
1
1
Desired
output
y
d
0
0.0155
Actual
output
y
5
Y
Error
e
Sum of
squared
errors
e
0.9849
0.9849
0.0175
0.0155
0.0151
0.0151
0.0175
0.0010
V este numrul de vectori de
antrenare (aici 4)

O este numrul de ieiri (aici 1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evoluia erorii pentru
problema XOR
52
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Parametrii finali ai reelei
53
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
(a) Regiunea de decizie generat de neuronul ascuns 3
(b) Regiunea de decizie generat de neuronul ascuns 4
(c) Regiunea de decizie generat de reeaua complet:
combinarea regiunilor de ctre neuronul 5
x
1
x
2
1
(a)
1
x
2
1
1
(b)
0 0
x
1
+ x
2
1.5 = 0 x
1
+ x
2
0.5 = 0
x
1
x
1
x
2
1
1
(c)
0
Regiuni de decizie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Tipuri de antrenare
nvarea incremental (online learning)
Ponderile se actualizeaz dup prelucrarea fiecrui vector de
antrenare
Ca n exemplul anterior
nvarea pe lot (batch learning)
Dup prelucrarea unui vector de antrenare se acumuleaz
gradienii de eroare n coreciile ponderilor w
Ponderile se actualizeaz o singur dat la sfritul unei
epoci (dup prezentarea tuturor vectorilor de antrenare):
w w + w
Avantaj: rezultatele antrenrii nu mai depind de ordinea n
care sunt prezentai vectorii de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Metode de accelerare a
nvrii
Reelele nva de obicei mai repede cnd se
folosete funcia sigmoid bipolar (tangenta
hiperbolic) n locul sigmoidei unipolare


O euristic ce poate fi folosit pentru alegerea
parametrilor sigmoidei:
a = 1.716
b = 0.667
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Metoda momentului
Regula delta generalizat:


Termenul este un numr pozitiv
(0 s < 1) numit constant de moment
sau inerie (engl. momentum)
De obicei, este n jur de 0.95
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
nvarea cu moment pentru problema XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Rata de nvare adaptiv
Pentru accelerarea convergenei i evitarea
instabilitii, se pot aplica dou euristici:
Dac variaia sumei erorilor ptratice E are
acelai semn algebric pentru mai multe epoci
consecutive, atunci rata de nvare trebuie s
creasc
Dac semnul lui E alterneaz timp de cteva
epoci consecutive, atunci rata de nvare
trebuie s scad
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Rata de nvare adaptiv
Fie E
p
suma erorilor ptratice n epoca
prezent

Dac E
p
> r E
p-1
, atunci d
Dac E
p
< E
p-1
, atunci u
Apoi se calculeaz noile ponderi i praguri

Valori tipice: r = 1.04, d = 0.7, u = 1.05
ratio down up
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
nvarea cu rat adaptiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
nvarea cu moment i rat adaptiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Metoda Newton
Metod iterativ pentru determinarea
rdcinilor unei funcii pe baza derivatei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Aplicarea metodei Newton
pentru antrenarea unei reele
Pentru o reea neuronal,
scopul este determinarea
punctelor unde difereniala
erorii este 0
Se pot folosi difereniale de
ordin 2
Matricea hessian: calcule
complexe i sensibilitate la
erorile date de precizia
reprezentrii numerelor n
calculator
Metoda momentului poate
fi considerat o
aproximare euristic a
acestei abordri

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Antrenarea cu AE
Gsirea ponderilor pentru minimizarea erorii este o
problem de optimizare
Se pot folosi algoritmi evolutivi pentru antrenare
Cromozomii vor fi vectori (foarte) lungi care
reprezint ponderile i pragurile
Abordarea AE crete flexibilitatea
Funciile de activare nu mai trebuie s fie difereniabile
Fiecare neuron poate avea un alt tip de funcie de activare
Neuronii nu mai trebuie s fie complet conectai
Topologia reelei nu mai trebuie s fie stabilit apriori
AE poate determina att topologia ct i parametrii reelei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Determinarea topologiei i
antrenarea reelei cu AE
Avantaj: simplitatea abordrii
Algoritmul genetic realizeaz i gsirea topologiei optime i
antrenarea reelei neuronale
Dezavantaj: timp lung de antrenare
Numr mare de gene din cromozoni, fiind codificate att
informaii privind topologia, ct i ponderile conexiunilor i
valorile prag ale neuronilor



Alternativ: gramatici generative
NH/1
NH/2
H
1
W
I-H1
W
H1-O

H1

0
H
1
H
2
W
I-H1
W
H1-H2
W
H2-O

H1

H2

0
NH/1
NH/2
H
1
W
I-H1
W
H1-O

H1

0
H
1
H
2
W
I-H1
W
H1-H2
W
H2-O

H1

H2

0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Considerente practice
Pentru a nu satura funciile sigmoide, ceea ce ar conduce
la scderea vitezei de convergen, intrrile i ieirile sunt
scalate de obicei n intervalul [0.1, 0.9], sau [-0.9, 0.9], n
funcie de tipul de sigmoid folosit
Dac reeaua este utilizat pentru aproximare funcional
i nu pentru clasificare, funcia de activare a neuronilor de
ieire poate fi liniar sau semiliniar (limitat la -1/0 i 1)
n loc de sigmoid
Stabilirea numrului de straturi i mai ales a numrului
de neuroni din fiecare strat este relativ dificil i poate
necesita numeroase ncercri pentru a atinge
performanele dorite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Euristici
Fie:
N numrul de intrri
O numrul de ieiri
H numrul de neuroni din stratul ascuns
(pentru un singur strat ascuns)
H
1
numrul de neuroni din primul strat ascuns i
H
2
numrul de neuroni din al doilea strat ascuns
(pentru 2 straturi ascunse)
Relaia lui Kudrycki: H = 3 O sau H
1
= 3 H
2
Relaia Hecht-Nielsen: H = 2 N +1
Relaia lui Lippmann: H = O (N + 1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Suprafee de decizie
Perceptron Reea cu funcii de baz radial
(engl. Radial Basis Functions, RBF)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Reele RBF
Perceptronii multistrat au o structur greu de
optimizat iar timpul de antrenare este mare
Reelele RBF sunt tot tipuri
de nvare supervizat,
proiectate ca metode de
aproximare funcional
(curve fitting)
Funcia care trebuie
aproximat este considerat
o superpoziie de funcii radiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Topologie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Prelucrri
Ieirea unui neuron din stratul de ieire este
o combinaie liniar de intrri


Ieirea unui neuron RBF (centru) din stratul
intermediar este funcie de distana dintre
centru i vectorul de intrare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Exemple de funcii radiale
Orice funcie care ndeplinete criteriul:
, unde norma este de obicei
distana euclidian
Funcia gaussian: , >0
Funcia multicuadric: , >0
Funcia spline poliarmonic:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Funcia gaussian
0.5 o =
1.0 o =
1.5 o =
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Funcia multicuadric invers
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-10 -5 0 5 10
c=1
c=2
c=3
c=4
c=5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
RBF: aproximator universal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Ieirea reelei
De obicei se folosete funcia gaussian
pentru ieirea neuronilor din stratul
intermediar
Deci ieirea reelei, pentru un vector de
intrare x i N centre, este:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Interpretare
Neuronii din stratul intermediar sunt centrele
selectate n spaiul de intrare
Ieirea unui neuron intermediar reprezint
apropierea instanei de intrare de centrul
corespunztor
Dac instana de intrare este n centru, neuronul
genereaz 1
Dac instana este deprtat, ieirea este
apropiat de 0 (dar niciodat 0)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Antrenarea. Cazul 1
Pentru N instane de antrenare (puncte n
spaiul intrrilor), considerm N centre, cu
raze egale date
Trebuie calculate ponderile w
j
Ponderile sunt soluiile unui sistem de N
ecuaii cu N necunoscute
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Selecia deviaiei standard
Euristic: = d
max
/ N
d
max
= distana maxim ntre oricare
2 centre
N = numrul de centre

_
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Antrenarea. Cazul 2
Dac exist N centre, pentru un numr mare de
instane, calculele sunt foarte complexe
Se pot selecta M centre reprezentative, astfel nct
M << N
Rezult un sistem de N ecuaii cu M necunoscute

NxM
W
Mx1
= Y
Mx1
Nu se poate inversa pentru c nu este matrice ptratic
Metoda pseudo-inversei:

T
W =
T
Y
W = (
T
)
-1

T
Y
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Selecia centrelor
Selecie aleatorie
Selecie nesupervizat: clusterizare
Selecie supervizat pe baza gradientului
descendent

urmeaz detalii suplimentare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Antrenarea iterativ
Toate ratele de
nvare pot fi de
exemplu 0.1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Exemplu: XOR, metoda 1
centre n toate instanele
d
max
/ N
_
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Exemplu: XOR, metoda 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Exemplu: XOR, metoda 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Exemplu: XOR, metoda 2
alese aleatoriu
aleas arbitrar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Exemplu: XOR, metoda 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Exemplu: XOR, metoda 2
centrele selectate sunt
insuficiente pentru a
nva funcia XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Asocieri
n creierele biologice, memoria lucreaz prin asociere
Putem recunoate o fa cunoscut ntr-un mediu
necunoscut n 100-200 ms
Putem rememora o ntreag experien senzorial, vizual i
auditiv, cnd auzim primele msuri ale unei melodii
Perceptronul multistrat nu lucreaz prin asociere
Pentru emularea acestei capaciti este nevoie de un
alt tip de reea neuronal: o reea recurent
O reea recurent are bucle de reacie de la ieiri
ctre intrri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Stabilitatea
Datorit reaciei (engl. feedback),
stabilitatea reelei devine o problem
Aceasta a fost rezolvat abia n 1982, cnd
John Hopfield a formulat principiul fizic de
stocare a informaiilor ntr-o reea stabil din
punct de vedere dinamic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Reea Hopfield cu un singur strat
i n neuroni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Funcia de activare
Reeaua Hopfield folosete neuroni
McCulloch-Pitts cu funcie de activare semn:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
96
Vectorul de stare
Starea curent a reelei este determinat de
ieirile tuturor neuronilor: y
1
, y
2
, . . ., y
n

Starea unei reele cu un singur strat i n
neuroni este un vector de stare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
97
Ponderile
Ponderile se reprezint de obicei n form
matriceal:



unde M este numrul de stri care trebuie
memorate, Y
m
este un vector binar
n-dimensional i I este matricea identitate
de dimensiune n x n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
98
Stri posibile pentru o reea cu 3 neuroni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
99
Exemplu
S presupunem c vrem s memorm
2 stri: (1, 1, 1) i (-1,-1,-1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
100
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
101
Testarea reelei
Actualizarea
neuronilor trebuie
fcut asincron
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
102
Stri stabile i instabile
Aceste 2 stri sunt stabile
Celelalte 6 stri rmase sunt instabile. Strile stabile (numite
amintiri fundamentale) sunt capabile s atrag strile apropiate
Amintirea fundamental (1, 1, 1) atrage strile instabile
(1, 1, 1), (1, 1, 1) i (1, 1, 1)
Fiecare din aceste stri are o singur eroare, n comparaie cu
amintirea fundamental (1, 1, 1)
Amintirea fundamental (1, 1, 1) atrage strile instabile
(1, 1, 1), (1, 1, 1) i (1, 1, 1)

Deci o reea Hopfield are capacitatea de a corecta erorile din
strile prezentate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Amintiri false
103
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
104
Capacitatea de stocare
Capacitatea de stocare este cel mai mare
numr de amintiri fundamentale care pot fi
stocate i regsite corect
Numrul maxim de amintiri fundamentale
M
max
care poate fi stocat ntr-o reea de
n neuroni este limitat de: M
max
= 0.15 n
Pentru a garanta c toate amintirile
fundamentale vor fi regsite perfect,
M
max
= n / (4 ln n)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
105
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
106
Memorii asociative bidirecionale
Reeaua Hopfield este un tip de memorie
auto-asociativ
Poate regsi o amintire corupt sau incomplet,
dar nu poate asocia o amintire cu o alta
Memoria uman este n mod esenial
asociativ
Un lucru ne amintete de altul .a.m.d.
Putem folosi o succesiune de asociaii mentale
pentru a recupera o amintire pierdut
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
107
Memorii asociative bidirecionale
Pentru a asocia o amintire cu alta, avem nevoie de o reea
recurent capabil s primeasc un vector de intrare ntr-o
mulime de neuroni i s produc un vector de ieire nrudit,
dar diferit, n alt mulime de neuroni
Memoria asociativ bidirecional (engl. Bidirectional
Associative Memory, BAM), propus de Bart Kosko n 1988,
este o reea hetero-asociativ
Poate asocia vectori dintr-o mulime A cu vectori dintr-o mulime B
i viceversa
La fel ca reeaua Hopfield, BAM poate generaliza i poate produce
ieiri corecte n cazul intrrilor corupte sau incomplete
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
108
Funcionarea BAM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
109
Funcionarea BAM
Cnd vectorul n-dimensional X este prezentat la
intrare, BAM i reamintete vectorul m-dimensional
Y, iar cnd Y este prezentat ca intrare, BAM i
reamintete X
BAM funcioneaz pe baza unei matrice de corelaie



unde M este numrul de vectori care trebuie
memorai
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
110
Funcionarea BAM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
111
Exemplu: vectorii de stocat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
112
Exemplu: matricea ponderilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
113
Exemplu: testarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
114
Regsirea
Se prezint un vector necunoscut X (diferit de
amintirile fundamentale X
m
)
Se iniializeaz BAM cu X(0) = X
Se calculeaz ieirea la iteraia p:
Y(p) = sign [W
T
x X(p)]
Se actualizeaz vectorul de intrare:
X(p+1) = sign [W x Y(p)]
Se repet procesul pn la echilibru, cnd X i Y
rmn neschimbai ntre 2 iteraii succesive
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
115
Alte exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
116
Discuie
BAM este stabil necondiionat
Orice mulime de asociaii poate fi nvat fr risc de
instabilitate
Numrul maxim de asociaii care pot fi stocate n
BAM nu trebuie s depeasc numrul de neuroni
din stratul mai mic
O problem mai serioas este convergena incorect
BAM nu produce ntotdeauna cea mai apropiat asociaie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
117
Concluzii
Perceptronul lui Rosenblatt folosete regula delta pentru a
nva funcii liniar separabile
Perceptronul multistrat poate aproxima funcii
neseparabile liniar, cu regiuni de decizie complexe; cel mai
utilizat algoritm de antrenare este backpropagation
Perceptronul multistrat construiete o aproximare global
a unei funcii; reelele cu funcii de baz radial
construiesc o serie de aproximri locale ale funciei
Reeaua Hopfield i memoria asociativ bidirecional
permit asocierea vectorilor de intrare-ieire, avnd i
capaciti de corecie a erorilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
12. Reele neuronale (II). nvarea
nesupervizat

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Maini cu vectori suport
engl. Support Vector Machines, SVM
Boser, Guyon & Vapnik (1992)
Vapnik (1995)
Devenite populare datorit succesului n
recunoaterea cifrelor scrise de mn
Eroare 1.1% pe mulimea de test
Fundament teoretic solid
Performane experimentale foarte bune
Muli cercettori consider SVM cea mai bun metod de
nvare supervizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Limitele suprafeelor de
decizie
S considerm o problem
de clasificare liniar
separabil cu 2 clase
Exist multe limite posibile
Algoritmul perceptronului
poate gsi astfel de limite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Limitele suprafeelor de
decizie
Pot exista mai multe limite de separaie
Care este cea mai bun?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Margini mici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Margine mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Limite de decizie cu
margini mari
Limita de decizie
trebuie s fie ct
mai departe de
datele din ambele
clase
Trebuie s
maximizm
marginea m
h = -1
h = 1
h(x) = g(w
T
x + b)
g(z) = 1 dac z 0
g(z) = -1 dac z < 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Vectori suport
Vectori suport
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Normalizarea
h(x) = g(w
T
x + b); g(z) este -1 sau 1
Doar semnul lui (w
T
x + b) conteaz,
nu i valoarea
Putem normaliza ecuaiile (constrngerile)
astfel ca n limitele care trec prin vectorii
suport ai celor dou clase, w
T
x + b s fie 1,
respectiv -1
Pentru toate punctele celor dou clase
w
T
x
i
+ b 1 dac y
i
= 1
w
T
x
i
+ b -1 dac y
i
= -1
de exemplu: w
1
x
1
+ w
2
x
2
+ b
y
i
este clasa instanei i
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Normalizarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Marginea
Marginea m este proiecia distanei dintre doi
vectori suport x
1
i x
2
pe direcia vectorului w
Valoarea lui m se poate obine de exemplu
scznd ecuaiile lui x
1
i x
2

w x
1
+ b = -1
w x
2
+ b = 1
w (x
2
- x
1
) = 2
m = w / ||w|| (x
2
- x
1
) = 2 / ||w||
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Marginea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Determinarea marginii
Trebuie determinai w i b astfel nct
marginea m = 2 / ||w|| s fie maxim
pentru toate instanele { x
i
, y
i
}
Respectnd constrngerile:
w
T
x
i
+ b 1 dac y
i
= 1
w
T
x
i
+ b -1 dac y
i
= -1
Adic:
y
i
(w
T
x
i
+ b) 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Determinarea marginii
O formulare mai bun a problemei de optimizare:
Minimizarea lui ||w||
2
, respectnd aceleai constrngeri
Problem de optimizare cuadratic



Se poate rezolva de exemplu cu un algoritm evolutiv
sau cu alte metode de optimizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Determinarea marginii
Dar...
SVM este n general utilizat pentru clasificarea unor
date cu foarte multe dimensiuni
De exemplu, n clasificarea textelor sau detecia spam-ului,
frecvenele de apariie ale cuvintelor sunt atributele
Posibil mii de atribute
Teoretic, w poate fi infinit dimensional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Dualitatea Lagrange
Rezolvarea problemei de optimizare
anterioare (problema primar) este
echivalent cu rezolvarea problemei duale
Lagrangian Multiplicatori
lagrangieni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Condiiile Karush-Kuhn-Tucker
Exist w*, * i * (soluiile problemei
primare, respectiv duale), astfel nct:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Problema primar
20
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Problema dual


Aplicm condiiile Karush-Kuhn-Tucker (diferenialele
n raport cu w i b s fie 0) :
21
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Problema dual


nlocuind aceste relaii n formula de mai sus,
vom avea:
22
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Problema dual
trebuie determinai
i

i apoi se pot calcula w i b
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Avantaj
Prin rezolvarea problemei duale se determin

i
0
De fapt, toi
i
sunt 0 cu excepia
multiplicatorilor corespunztori vectorilor
suport
Numrul vectorilor suport este mult mai mic
dect numrul instanelor
n
vs
<< n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Transformarea datelor
Clasele nu sunt
liniar separabile
z
k
= (x
k
, x
k
2
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Transformarea datelor
Clasele nu sunt
liniar separabile
Clasele devin liniar separabile ntr-un
spaiu cu mai multe dimensiuni
Spaiul atributelor
Spaiul trsturilor
(engl. features)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Nuclee
Transformarea n trsturi
(engl. feature mapping)


Nucleu (engl. kernel)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Trucul nucleului
engl. kernel trick
Cantitatea necesar pentru clasificare este:




Folosind un nucleu:
Calculele depind doar
de perechi (x
1
,x
2
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Trucul nucleului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Trucul nucleului
Deoarece calculele se fac doar n perechi,
nu este nevoie s calculm explicit
trsturile instanelor
Calcularea nucleului unei perechi de
instane poate fi mult mai simpl
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Nuclee uzuale
Nucleul liniar

Nucleul polinomial

Nucleul RBF

Nucleul sigmoid

Parametri: > 0, d, r

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Interpretare
Intuitiv, un nucleu poate fi interpretat ca o msur a
similaritii dintre cele 2 argumente
De exemplu:
Fie (x) o funcie care numr apariiile fiecrei
secvene de lungime k n irul x
(x) este un vector cu 26
k
dimensiuni
Dac lungimea medie a unui cuvnt este de
5 litere, vom avea 12 milioane de dimensiuni
Totui, nucleul poate implementa un algoritm
eficient de string matching
EN 5.10
RO 5.54
FR 5.13
ES 5.22
DE 6.26
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Nuclee valide
Folosind doar nucleul, nu mai este nevoie s
calculm funcia
Nucleul ar putea avea orice form
Trebuie s respecte ns condiia:
K(x,z) = (x)
T
(x),
chiar dac nu cunoatem sau nu ne intereseaz
forma lui
Fie matricea nucleului K o matrice n care
elementele K
ij
= K(x
(i)
, x
(j)
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Teorema lui Mercer
Condiia necesar i suficient pentru ca un
nucleu real s fie valid este ca matricea
nucleului s fie simetric i pozitiv
semidefinit
K
ij
= K
ji
K
ij
0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Cazurile neseparabile liniar
n unele cazuri, datele nu sunt separabile liniar nici
dup transformrile prezentate anterior
Sau datele prezint valori extreme (engl. outliers)
care influeneaz marginea optim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Probleme neseparabile liniar
Putem permite existena unor erori
i
n clasificare
Hiperplanul are acum o margine flexibil (engl. soft margin)

i
se numesc variabile de decalaj (engl. slack variables)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Probleme neseparabile liniar
Problema de optimizare devine:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Parametrul C
Parametrul de cost C este o msur a erorii admise n
clasificare
C controleaz compromisul dintre a permite erori pe
mulimea de antrenare i a fora margini stricte
Creterea valorii lui C mrete costul clasificrii
greite a instanelor i determin crearea unui model
mai precis dar care poate s nu generalizeze bine
Valoarea lui C trebuie aleas de utilizator i depinde
de problem
De cele mai multe ori este n intervalul (0.1, 10000)
De exemplu, poate fi 50, 100
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Problema dual
Oarecum surprinztor, termenii

i
nu apar n
problema dual
Conteaz numai parametrul C care limiteaz
multiplicatorii
i
Pentru instanele neclasificabile, multiplicatorii ar crete
foarte mult i ar determina i apariia unor vectori suport
suplimentari (cu
i
> 0)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Algoritmul SMO
Sequential Minimal Optimization (Platt, 1999)
Scopul su este rezolvarea problemei duale de
optimizare (determinarea
i
)
Este foarte rapid i deci foarte potrivit pentru
optimizarea problemelor de dimensiuni mari cu care
lucreaz de obicei SVM

LibSVM bibliotec pentru SVM

40
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Ideea de baz a SMO





Ideea de optimizare este asemntoare metodei
hill climbing
Se ajusteaz succesiv cte 2 multiplicatori
i

41
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Exemplu
S presupunem c avem 5 instane unidimensionale
x
1
=1, x
2
=2, x
3
=4, x
4
=5, x
5
=6, cu 1, 2, 6 din clasa 1 i
4, 5 din clasa 2 y
1
=1, y
2
=1, y
3
=-1, y
4
=-1, y
5
=1
Folosim nucleul polinomial de grad 2
K(x,y) = (xy+1)
2

Setm C = 100
Mai nti determinm a
i
(i=1, , 5) prin
i constrngerile:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Exemplu
Rezolvnd problema de optimizare, obinem:
a
1
=0, a
2
=2.5, a
3
=0, a
4
=7.333, a
5
=4.833
Constrngerile sunt satisfcute
Vectorii suport sunt {x
2
=2, x
4
=5, x
5
=6}
Funcia discriminant este:



b se determin prin rezolvarea f(2)=1 sau f(5)=-1 sau
f(6)=1, deoarece x
2
i x
5
sunt pe linia
iar x
4
este pe linia
Toate trei dau b=9
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Exemplu
Valoarea funciei discriminant
1 2 4 5 6
clasa 2
clasa 1 clasa 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Clasificarea cu clase multiple
Mainile cu vectori suport clasice permit
rezolvarea problemelor binare (cu numai
2 clase)
Pentru a trata mai multe clase exist mai
multe metode, dintre care cele mai des
folosite sunt:
Abordarea una versus toate
Abordarea una versus una
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Una versus toate
one-versus-all / one-against-all
Pentru k clase, se creeaz k modele
n modelul cu numrul i, SVM este antrenat cu instanele
din clasa i ca exemple pozitive i toate celelalte instane
(din celelalte clase) ca exemple negative
Pentru a clasifica o nou instan, se apeleaz toate cele k
modele i se alege clasa cu funcia de decizie maxim:

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Una versus una
one-versus-one / one-against-one
Pentru k clase, se creeaz k (k 1) / 2 modele
corespunztoare tuturor perechilor de clase
Pentru a clasifica o nou instan, se apeleaz toate
modelele i fiecare model d un vot pentru apartenena
la o clas
Se alege n final clasa care are cele mai multe voturi
Antrenarea poate fi mai rapid pentru c mulimile de
antrenare sunt mai mici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Generalizarea
S-a demonstrat c probabilitatea de eroare ateptat pentru
mulimea de test este mrginit:


E[x] = valoarea ateptat pentru x
n
vs
= numrul de vectori suport
P(e) = probabilitatea erorii
l = dimensiunea mulimii de antrenare
Capacitatea de generalizare crete cu ct numrul de vectori
suport este mai mic i mulimea de antrenare mai mare
Rezultatul este independent de numrul de atribute al
instanelor (de dimensiunea spaiului problemei)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Limitri
Principalele probleme care apar la lucrul cu
SVM sunt legate de:
Stabilirea nucleului i a parametrilor si
Stabilirea parametrului de cost C
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
nvarea nesupervizat
Nu exist nicio informaie despre ieirea
dorit
Algoritmul trebuie s descopere singur
relaiile de interes din datele de intrare
Modele, regulariti, corelaii
Relaiile descoperite se regsesc n ieire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
nvarea hebbian
Legea lui Hebb (1949)
Dac 2 neuroni conectai sunt activai n acelai timp,
ponderea conexiunii dintre ei crete
Dac 2 neuroni sunt activai n contratimp, ponderea
conexiunii dintre ei scade

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Generalizare
Regula generalizat a produsului
activitilor
Include un factor de uitare pentru
evitarea creterii nelimitate a ponderilor


De obicei, <
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Algoritmul de nvare hebbian
Pasul 1. Iniializarea
Se iniializeaz ponderile i pragurile cu
valori aleatorii mici, de exemplu n [0,1]
Pasul 2. Activarea
Se calculeaz ieirea neuronilor la iteraia p
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Algoritmul de nvare hebbian
Pasul 3. nvarea
Se actualizeaz ponderile



Pasul 4. Se reia urmtoarea iteraie,
p++, de la pasul 2 pn cnd ponderile
se stabilizeaz
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Exemplu: starea iniial
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Vectori de antrenare
Se consider = 0.1 i = 0.02
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Starea final
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Vector de test
Reeaua a uitat asociaia x
1
cu y
1
, dar a nvat
noile asociaii x
5
cu y
2
i y
5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Algoritmul Kohonen
engl. Self-Organizing Map, SOM
Harta / transformarea cu auto-organizare
Teuvo Kohonen, 1982
Algoritm de nvare nesupervizat competitiv
nvingtorul ia totul
Neuronii concureaz pentru a fi activai
Bazat pe ideea corespondenelor dintre intrrile
senzoriale i diferitele regiuni ale cortexului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Cortexul uman
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Modelul Kohonen
spaiul de intrare
n-D
spaiul de ieire
2D (sau 1D)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Conexiunile laterale

ntre neuroni exist
conexiuni laterale


Activarea unui neuron
provoac inhibiii sau
excitaii laterale altor
neuroni, n funcie de
distana dintre acetia
Funcia plrie mexican
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
nvarea (I)
Neuronii sunt dispui ntr-o structur regulat:
matrice (2D) sau vector (1D)
Ponderile fiecrui neuron sunt iniializate aleatoriu
Ponderile au aceeai dimensionalitate ca datele de
intrare
Fiecare neuron poate fi reprezentat ca un punct n
spaiul n-dimensional al intrrilor, n funcie de
valorile ponderilor sale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
nvarea (II)
Pentru fiecare vector de intrare, se determin
n spaiul de intrare cel mai apropiat neuron
(conform ponderilor acestuia)
distana euclidian
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
nvarea (III)
Se determin vecinii neuronului
ctigtor n spaiul de ieire




funcia plrie mexican simplificat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
nvarea (IV)
Doar pentru aceti neuroni (neuronul
ctigtor i cei din vecintatea sa), se
actualizeaz ponderile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Efect
Ponderile neuronului
(neuronilor) ctigtori
se deplaseaz puin
ctre vectorul de intrare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Parametri
Rata de nvare are o valoare mic pozitiv
(de exemplu 0.1 sau 0.5)
Mrimea vecintii
j
Alegerea static: de exemplu 2
Alegerea dinamic: la nceput dimensiunea este
jumtate sau o treime din dimensiunea stratului
de ieire (care poate fi de exemplu 10x10 sau
20x20) i apoi scade treptat
De exemplu, dup 10 epoci, dimensiunea scade cu 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Vecinti topologice
1D
2D
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Exemple 2D
Exemplu 2D
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Exemplu 1D
Proiecie 2D 1D
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Alte exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Exemplu de vizualizare
Nivelul de trai n diferite ri
Harta nu arat nivelurile propriu-zise,
ci similaritatea lor: rile cu nivel de trai
asemntor au culori apropiate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Proprieti
Reducerea dimensionalitii
Poate transforma un spaiu n-dimensional ntr-un
spaiu 1D sau 2D
Pstrarea topologiei
Relaiile de similaritate prezente ntre datele
iniiale sunt pstrate i ntre datele rezultate
dup transformare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Aplicaii
Prelucrarea limbajului natural
Codificarea imaginilor
Analiza semnalelor biologice
Vizualizarea rezultatelor analizei datelor
multidimensionale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Partiionarea datelor
engl. clustering
partiionare, grupare, clusterizare (pron. [clasterizare])
Partiionarea reprezint gruparea (de obicei
nesupervizat) a instanelor astfel nct instanele din
acelai grup sunt mai asemntoare ntre ele dect
cu instanele altor grupuri
Similaritatea presupune o msur de distan (de obicei se
folosete distana euclidian iar similaritatea este o funcie
care variaz invers cu distana)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Partiionarea cu algoritmul
Kohonen
Se utilizeaz un singur neuron nvingtor
Se pornete cu mai muli neuroni ale cror ponderi
au valori mici, apropiate de 0
Pentru fiecare vector de intrare x
i
, se actualizeaz
ponderile neuronului nvingtor
w
r
= w
r
+ (x
i
- w
r
)
La sfritul procesului, numai civa vectori de
ponderi se dezvolt iar acetia indic centrele de
greutate ale grupurilor (clusterelor) descoperite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Partiionarea cu algoritmul
Kohonen
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Partiionarea k-medii
engl. k-means (Steinhaus, 1956; MacQueen, 1967)
k reprezint numrul de grupuri
Este un parametru de intrare ales de utilizator
Algoritmul grupeaz mulimea de instane numerice n
k grupuri (clustere)
Rezultatul algoritmului este minimizarea sumei
erorilor ptratice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Algoritmul
Se iniilizeaz aleatoriu cele k medii (centre) iniiale
Se atribuie fiecrui centru instanele cele mai apropiate de el



Se calculeaz centrul de greutate (media aritmetic) a tuturor
instanelor atribuite unui centru i se actualizeaz poziia
centrului grupului respectiv



Se repet cei doi pai pn cnd nu se mai modific poziia
niciunui centru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
84
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Segmentarea imaginilor
Imaginea din dreapta este rezultatul
partiionrii cu 3 grupuri corespunztoare
nivelurilor de gri din imaginea din stnga
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Probleme (I)
Grupurile vide
Abordarea 1. Centrele iniiale se pot alege n nite instane
existente, astfel nct fiecare centru s aib cel puin o
instan atribuit
Abordarea 2. Dac iniial exist un centru de grup vid, se
alege un alt centru n instana cea mai deprtat de toate
celelalte centre
Valorile extreme (engl. outliers)
Acestea pot influena rezultatele gruprii
nainte de partiionare, se pot elimina acestea (n faza de
pre-procesare a datelor)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Probleme (I)
Viteza de cutare
Pentru determinarea instanelor celor mai
apropiate de un centru se pot utiliza metodele
kd-tree sau ball-tree
Convergena
Algoritmul converge, dar gsete de obicei un
minim local al funciei de eroare
Forma grupurilor
Algoritmul d rezultate bune dac grupurile sunt
convexe i mai ales de form aproximativ sferic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Calitatea partiionrii
n funcie de alegerea centrelor iniiale,
rezultatele finale pot diferi mult
O msur a calitii partiionrii este
coeficientul de siluet
Scopul este maximizarea similaritii
intra-grup i minimizarea similaritii
inter-grup
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Calcularea coeficientului
Pentru o instan, se calculeaz:
a
i
distana medie fa de instanele din acelai
grup
b
i
distana minim fa de orice instan din
orice alt grup
Coeficientul de siluet al instanei i este:
s
i
= (b
i
- a
i
) / max(a
i
, b
i
)
Coeficientul de siluet al unui cluster este
media coeficienilor instanelor
Partiionarea este mai bun cnd s
i
este mai
mare, aproape de 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Concluzii
Mainile cu vectori suport sunt una dintre cele
mai eficiente metode de clasificare
Algoritmul Kohonen este inspirat din
cercetrile neurobiologice i ncorporeaz
mecanisme proprii auto-organizrii, precum
competiia i cooperarea
Algoritmul k-medii este unul dintre cei mai
populari algoritmi de partiionare

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
13. nvarea cu ntrire

Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Tipuri de nvare
nvarea supervizat
Date de antrenare: (A, c) atribute, clas
Scopul este predicia lui c i minimizarea erorii
Regresie, clasificare
nvarea nesupervizat
Date de antrenare: X numai atributele
Scopul este determinarea unor puncte similare n
spaiul multidimensional cu |X| dimensiuni
Partiionare (clusterizare, grupare)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
nvarea cu ntrire
engl. reinforcement learning
Agentul trebuie s nvee un comportament
fr a avea un instructor
Agentul are o sarcin de ndeplinit
Efectueaz nite aciuni n mediul de execuie
Ulterior, primete un feedback (reacia mediului)
privind ct de bine a acionat n vederea
ndeplinirii sarcinii
Agentul urmrete ndeplinirea aceleiai sarcini n
mod repetat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
nvarea cu ntrire
Aceast modalitatea de nvare se numete
nvare cu ntrire
Agentul primete o recompens (ntrire pozitiv)
dac ndeplinete bine sarcina
Agentul primete o pedeaps (ntrire negativ)
dac ndeplinete ru sarcina
Experiena este un profesor dur pentru c
nti i d testul i abia apoi i pred lecia
(Vernon Law)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Modelul de interaciune
Agentul
Efectueaz aciuni
Mediul
Acord recompense
i prezint agentului
situaii numite stri

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
nvarea cu ntrire
Scopul este de a determina agentul s acioneze
astfel nct s-i maximizeze recompensele
Agentul trebuie s-i dea seama ce secven de
aciuni conduce la ndeplinirea sarcinii
Datele de antrenare:
(S, A, R) Stare, Aciune, Recompens
Aciunile pot afecta i recompensele ulterioare,
nu numai pe cele imediate (efect ntrziat)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Gruk
Der findes en
visdommens vej -
det er dn, som br
vre let at erindre:
dum dig og dum dig
og dum dig igen,
men mindre og
mindre og mindre.
The road to
wisdom? - Well, it's
plain and simple to
express: err and err
and err again but
less and less and
less.
Piet Hein (1905-1996), inventator i poet danez

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
2.1. Iterarea valorilor
2.2. Iterarea politicilor
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Decizii secveniale
Mediu determinist:
(sus, sus, dreapta, dreapta, dreapta)
Mediu stohastic:
model de tranziii T(s, a, s) probabilitatea de a ajunge din
starea s n starea s efectund aciunea a
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Presupunerea Markov
Starea curent X
t
depinde doar de o istorie
finit a strilor anterioare
Procese Markov de ordin nti: starea curent
X
t
depinde doar de starea anterioar X
t-1
P(X
t
| X
t-1
, , X
0
) = P(X
t
| X
t-1
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Proces de decizie Markov
Starea iniial S
0
Modelul de tranziii T(s, a, s)
Funcia recompens R(s)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Definiii
O soluie la o astfel de problem de cutare se numete politic
(engl. policy) i se noteaz
Traduceri alternative pentru policy: tactic sau strategie
(s) este aciunea recomandat n starea s
Politica este o descriere a unui reflex
Politica este definit pentru toate strile: ce aciune trebuie s fac
agentul n orice stare s-ar afla
Se numete utilitate suma recompenselor pentru o secven
de stri
Recompensa este ctigul pe termen scurt
Utilitatea este ctigul total pe termen lung
Mediu stohastic: utilitate ateptat
Politica optim *: maximizeaz utilitatea ateptat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Exemple de politici
R(s) = recompensa
n fiecare stare
neterminal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Staionaritate
Orizont finit
U
h
([s
0
, s
1
, ..., s
N+k
]) = U
h
([s
0
, s
1
, ..., s
N
])
Dup momentul N nu mai conteaz nimic
N=3 trebuie s rite
N=100 poate alege soluia
mai sigur
Politica optim este nestaionar
history
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Staionaritate
Orizont infinit
Politica optim este staionar
Recompense aditive
U([s
0
, s
1
, s
2
, ]) = R(s
0
) + R(s
1
) + R(s
2
) +
Recompense actualizate (engl. discounted)
U([s
0
, s
1
, s
2
, ]) = R(s
0
) + R(s
1
) +
2
R(s
2
) +
[0,1] este factorul de actualizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Evaluarea unui orizont infinit
Trebuie s ne asigurm c utilitatea unei secvene posibil
infinite este finit
Abordarea 1. Dac recompensele sunt mrginite i < 1 atunci:


Abordarea 2. Dac mediul conine stri terminale i se
garanteaz faptul c agentul va atinge una din ele (= politic
adecvat, engl. proper policy), putem utiliza = 1

Abordarea 3. Compararea recompenselor medii (pentru fiecare
pas)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Evaluarea unei politici
Fiecare politic genereaz secvene multiple
de stri
Datorit incertitudinii tranziiilor T(s, a, s)
Valoarea unei politici este suma ateptat a
tuturor recompenselor observate dup toate
secvenele posibile de stri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Iterarea valorilor
engl. value iteration
Algoritm pentru calcularea unei politici optime
Se calculeaz utilitatea fiecrei stri
n mod iterativ, se atribuie valorile corecte pentru
utiliti
Se folosesc utilitile strilor pentru selectarea
unei aciuni optime n fiecare stare
Se alege starea cu cea mai mare utilitate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Utilitile strilor
Utilitatea unei stri s este utilitatea
ateptat a secvenei de stri
urmtoare
Secvena este determinat de (s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Exemplu
Fie g = 1 i R(s) = -0.04
lng scop utilitile
sunt mai mari
pentru c este
nevoie de mai puini
pai cu recompens
negativ pentru
atingerea strii
respective
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Ecuaia Bellman
Ecuaia Bellman (1957)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Politica optim
Utilitatea unei stri este recompensa imediat
pentru acea stare plus utilitatea ateptat a strii
urmtoare


Politica optim alege aciunea care conduce n
starea cu cea mai mare utilitate ateptat



Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Exemplu
Se consider rezultatele
tuturor aciunilor posibile
pentru a selecta aciunea cea
mai bun i a atribui utilitatea
sa ateptat urmtoarei stri
din ecuaia Bellman
Exemplu: utilitatea strii (1,1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Rezolvarea unui proces de
decizie Markov
n stri posibile
n ecuaii Bellman (una pentru fiecare stare)
n ecuaii cu n necunoscute: U(s)
Nu se poate rezolva ca sistem de ecuaii
liniare datorit funciei max
Trebuie rezolvat iterativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Algoritmul iterrii valorilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Convergena
c = / R
max
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
http://people.cs.ubc.ca/~poole/demos/mdp/vi.html
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Iterarea politicilor
engl. policy iteration
Dac o aciune este n mod evident mai bun dect
toate celelalte, nu avem nevoie de valorile exacte ale
utilitilor
Algoritmul alterneaz 2 pai:
Evaluarea politicii: calcularea utilitilor tuturor strilor
pe baza politicii
i
mbuntirea politicii: calcularea unei noi politici
i+1
pe baza utilitilor U
i
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Evaluarea politicii
Sistem de n ecuaii liniare cu n
necunoscute
Se poate rezolva exact n O(n
3
) sau
aproximativ mai repede

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
mbuntirea politicii
Se cunosc toate U(s)
Se calculeaz pentru fiecare s:


Aceasta este aciunea optim a
i
*(s)
Dac a
i
*(s)
i
(s), se actualizeaz politica:

i+1
(s) = a
i
*(s)

Se pot actualiza doar prile promitoare
ale spaiului de cutare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Algoritmul iterrii politicilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
3.1. Estimarea direct a utilitii
3.2. Programarea dinamic adaptiv
3.3. nvarea diferenelor temporale
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
nvarea cu ntrire
Proces de decizie
Markov
Mulimea de stri S,
mulimea de aciuni A
Modelul de tranziii
T(s, a, s') cunoscut
Funcia recompens
R(s) cunoscut
Calculeaz o politic
optim
nvarea cu ntrire
Se bazeaz pe
procese de decizie
Markov, dar:
Modelul de tranziii
este necunoscut
Funcia recompens
este necunoscut
nva o politic
optim

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Exemple
Medii complexe pentru care nu se pot stabili
probabilitile i recompensele
Jocuri: spaiu uria de stri
Se poate spune doar la sfrit dac recompensa este
pozitiv (s-a ctigat) sau negativ (s-a pierdut)
Mediul fizic: roboi, elicoptere
Recompense negative doar pentru deviere de la curs,
cltinare, prbuire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Tipuri de nvare cu ntrire
Pasiv sau activ
Pasiv: agentul execut o politic fix i o evalueaz
Activ: agentul i actualizeaz politica pe msur ce
nva
Bazat pe model sau fr model
Bazat pe model: nva modelul de tranziii i
recompense i l folosete pentru a descoperi politica
optim
Fr model: descoper politica optim fr a nva
modelul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
nvarea pasiv
nvarea pasiv este o modalitate de explorare a mediului
De exemplu un robot cu scopul de a trece prin toate strile mediului
Evalueaz ct de bun este o politic
nva utilitatea U

(s) a fiecrei stri


Abordare similar cu evaluarea politicii pentru PDM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
nvarea pasiv
Agentul execut o serie de
ncercri
Politica este aceeai, dar
mediul este nedeterminist
Scopul este s nvee
utilitatea ateptat U

(s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Estimarea direct a utilitii
Exemplu prima ncercare produce:
n starea (1,1) recompensa total 0.72
n starea (1,2) dou recompense totale 0.76 i 0.84
n starea (1,3) dou recompense totale 0.80 i 0.88
Utilitatea unei stri este recompensa total ateptat
de la acea stare nainte
Utilitatea estimat poate fi media valorilor eantionate
U(1,1) = 0.72, U(1,2) = 0.80, U(1,3) = 0.84 etc.
Este o problem de nvare supervizat
Se creeaz un model U(S) f(S)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Estimarea direct a utilitii
Utilitatea unei stri depinde de utilitile
strilor succesoare (constrngerile date de
ecuaiile Bellman)
Estimarea direct a utilitii ignor aceast
informaie
Cutarea se face ntr-un spaiu mult mai mare
dect cel necesar de fapt
Convergena este foarte lent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Programarea dinamic adaptiv
Se folosesc ecuaiile Bellman


Trebuie estimate T(s, (s), s) i R(s)
din ncercri
Frecvenele tranziiilor i mediile recompenselor
Probabilitile i recompensele nvate se
introduc n ecuaiile Bellman
Se rezolv sistemul de ecuaii liniare cu
necunoscutele U

(S)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
nvare cu ntrire pasiv cu PDA
t este o stare
avnd aproximrile pentru
T, R i , se determin
utilitile ca la PDM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Convergena
agentul ntlnete prima
dat starea cu R = 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Programarea dinamic adaptiv
PDA este un standard de comparare pentru
ali algoritmi de nvare cu ntrire
PDA este ineficient dac spaiul strilor este
mare
Sistem de ecuaii liniare de ordin n
Jocul de table: 10
50
ecuaii cu 10
50
necunoscute
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
nvarea diferenelor temporale
engl. Temporal Differences
Combin avantajele ambelor abordri anterioare: estimarea
direct a utilitii i programarea dinamic adaptiv
Actualizeaz doar strile direct afectate
Satisface aproximativ ecuaiile Bellman
Exemplu:


Dup prima ncercare, U(1,3) = 0.84, U(2,3) = 0.92
Fie tranziia (1,3) (2,3) n a doua ncercare
Dac ar fi determinist, atunci U(1,3) = -0.04 + U(2,3) = 0.88
ns tranziiile sunt stohastice i nu se cunoate modelul
Estimarea este mai mic i trebuie mrit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
nvarea diferenelor temporale
Diferenele temporale propun un compromis
(ecuaia DT):


DT aplic o serie de corecii pentru a converge la
ecuaiile Bellman
Corecia are loc proporional cu probabilitile
Actualizarea pentru s va avea loc n T(s, (s), s) din cazuri
Rata de nvare determin viteza de convergen
la utilitatea real
Metoda DT nu are nevoie de model pentru a realiza
actualizrile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Rata de nvare
Dac este fix, atunci valoarea medie a lui U

(s)
converge la valoarea corect
Dac
s
descrete pe msur ce numrul de vizitri n
ale unei stri crete, atunci chiar U(s) converge la
valoarea corect
Convergena este garantat dac:














Funcia
s
(n) = 1/n satisface aceast condiie
De multe ori se folosete funcia
s
(n) = 1/(1+n) (0,1]
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
nvare cu ntrire pasiv cu DT
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Convergena
la PDA era aproximativ 100
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Discuie
DT nu au nevoie de model, PDA este bazat
pe model
DT actualizeaz succesorul observat i nu toi
succesorii
Diferenele scad pe msur ce numrul de
ncercri crete
DT converg mai lent, dar execut calcule mai
simple
DT pot fi vzute ca o aproximare a PDA
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Euristici pentru PDA
Baleierea prioritar (engl. prioritized sweeping)
Se ajusteaz cu precdere strile ai cror succesori
probabili tocmai au suferit o modificare mare a
utilitilor estimate
Prin folosirea euristicilor, numrul de secvene de
antrenare devine aproximativ egal pentru PDA i
PDA aproximativ, ns ultima efectueaz
calculele cu ordine de magnitudine mai eficient
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
4.1. Explorare i exploatare
4.2. Algoritmul Q-Learning
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
nvarea pasiv
Folosind nvarea pasiv, sunt nvate
utilitile strilor i probabilitile tranziiilor
Aceste utiliti pot fi introduse n ecuaiile
Bellman
Ecuaiile Bellman furnizeaz soluiile optime dac
primesc utilitile i funciile de tranziie corecte
ns nvarea cu ntrire pasiv produce estimri
aproximative ale acestora
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
nvarea activ
Agentul activ i actualizeaz politica pe msur ce
nva
Scopul este s nvee politica optim pentru maximizarea
utilitii
ns funcia de utilitate nu este cunoscut dect aproximativ
Dilema agentului
S i maximizeze utilitatea pe baza cunotinelor curente
sau
S ncerce s i mbunteasc aceste cunotine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Exploatarea i explorarea
Abordarea pasiv genereaz un agent greedy
Modelul nvat este diferit de mediul real
Compromis
Exploatare
Agentul oprete nvarea i execut aciunile date de
politic
Maximizarea recompenselor folosind estimrile curente
Explorare
Agentul nva ncercnd aciuni noi
Maximizarea recompenselor pe termen lung
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Explorare sau exploatare?
Agentul trebuie s favorizeze explorarea strilor
i aciunilor necunoscute sau exploatarea strilor
i aciunilor despre care tie deja c i aduc
recompense mari
Soluii pentru dilem
Metoda -greedy
Alte metode GLIE (greedy in the limit of infinite exploration)
O metod GLIE trebuie s ncerce fiecare aciune n fiecare stare
de un numr nelimitat de ori
n final trebuie s devin greedy
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Metoda -greedy
Fie [0,1]
Aciunea urmtoare selectat va fi:
O aciune aleatorie cu probabilitatea
Aciunea optim cunoscut cu probabilitatea 1
Implementare
Iniial = 1 (explorare pur)
Cnd se termin un episod de nvare, scade, de exemplu
cu 0.05 (crete progresiv rata de exploatare)
nu scade niciodat sub un prag, de exemplu 0.1
Agentul are mereu o ans de explorare, pentru a evita
optimele locale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Exploatarea i explorarea
Exploatare pur
De obicei genereaz
politici suboptime
Explorare pur
nva modele din ce n
ce mai bune, dar
recompensele sunt mici
n-armed bandit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Metod GLIE alternativ
Se acord ponderi mai mari aciunilor nencercate frecvent
Se acord ponderi mai mici aciunilor cu utilitate mic
Se modific ecuaiile Bellman folosind utilitile optimiste U
+
(s)



Funcia de explorare f(u,n)
Crete cu utilitatea ateptat u
Scade cu numrul de ncercri n
Exemplu:



Se ncurajeaz aciunile ctre regiuni neexplorate
Ofer convergen mai bun i politici aproape optime
numrul de
aplicri ale
aciunii a n
starea s
estimare
optimist a
celei mai mari
recompense
care poate fi
obinut n
orice stare
parametru
fix
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Algoritmul Q-Learning
Algoritmul Q-Learning (Watkins, 1989)
nva o funcie aciune-valoare Q(a,s)
Utilitile
Ecuaiile de constrngere la echilibru

Este o metod DT fr model

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Actualizrile se fac de fiecare dat cnd
aciunea a aplicat n s duce n s
Coeficientul de nvare determin viteza
de actualizare a estimrilor
De obicei, (0,1)
Q-Learning este mai lent dect PDA
Compromis: lipsa modelului vs. cunoatere
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Algoritmul Q-Learning
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
http://people.cs.ubc.ca/~poole/demos/rl/q.html
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Aproximarea funciilor
Problemele reale au spaii foarte mari
Jocul de table are 10
50
stri
Modelul este greu de memorat
PDA memoreaz T(s, a, s), N(a, s)
DT, QL memoreaz U(s), respectiv Q(a, s)
Utilitile se pot aproxima cu funcii parametrice


f
i
sunt funcii de baz
Rezult o compresie semnificativ (pentru table 1:10
44
)
nvarea modelului aproximativ ajut generalizarea
Se pot aproxima utilitile strilor vizitate
Se pot prezice utilitile strilor nevizitate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Exemplu
Pentru problema prezentat cu 4x3 stri

utilitatea aproximat utilitatea observat eroarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Actualizarea parametrilor
parametrii se actualizeaz
la fiecare pas / observaie
schimbarea parametrilor la
un moment dat modific
toate utilitile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Alegerea funciei
Funcia de aproximare liniar a utilitilor
trebuie s fie o funcie liniar de parametri
Trsturile pot fi funcii neliniare arbitrare de
variabile de stare
Pentru exemplul anterior, se poate include un
termen care s msoare distana fa de scop
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
nvarea aproximrilor
Actualizrile pentru DT


Actualizrile pentru Q-learning


Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Cutarea politicii
Reprezint politica drept o funcie parametrizat
Actualizeaz parametrii pn cnd politica se mbuntete
Reprezentare simpl:

Se ajusteaz pentru a se mbunti politica
este o funcie neliniar de , discontinu pentru aciuni discrete
Actualizrile pe baza gradienilor nu sunt posibile
Reprezentarea stohastic a politicii:

D probabiliti de aciune
Apropiat de varianta determinist dac a este mult mai bun
dect alte aciuni
Politica devine o funcie difereniabil de
Politica difereniabil poate fi optimizat cu metode bazate pe
gradient sau cu metode empirice, de exemplu hill-climbing
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Aplicaii
Dame Arthur Samuel (1959, 1967)
TD-Gammon (joc de table) Gerry Tesauro (1992)
Dup 300.000 de jocuri cu el nsui, a atins performane de campion mondial din top 3
Pendulul inversat
Algoritmul Boxes Michie & Chambers (1968)
n prezent: pendulul inversat triplu
Stabilirea preurilor, livrarea produselor
n general probleme pentru care este dificil determinarea apriori a
unor reguli de rezolvare
Jocuri: table, solitaire, dame, ah
Controlul roboilor sau al altor echipamente
List de aplicaii de succes
http://umichrl.pbworks.com/w/page/7597597/Successes-of-Reinforcement-Learning
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Aplicaii
Algoritmul Pegasus (Ng & Jordan, 2000):
zbor autonom al unui elicopter
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Concluzii
nvarea cu ntrire este necesar pentru agenii care
evolueaz n medii necunoscute
nvarea pasiv presupune evaluarea unei politici date
nvarea activ presupune nvarea unei politici optime
Aproximarea funciilor este necesar pentru probleme cu
spaii mari de stri
n lumea real exist numeroase aplicaii bazate pe
tehnica nvrii cu ntrire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
14. Viaa artificial


Florin Leon

Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare

http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Termenul ALife
Propus la un workshop organizat de Los
Alamos National Laboratory, 1987
Domeniul ncearc s mbine cercetrile
multidisciplinare cu privire la modelrile i
simulrile biologice
Aceste fenomene sunt neliniare, ceea ce
poate conduce la:
Haos: schimbri mici n condiiile iniiale produc
diferene mari la rezultate
Trsturi de nivel superior: emergen, atractori
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Caracteristicile simulrilor ALife
Abordare bottom-up
Control local
Reguli simple de aciune
Modele multi-agent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Viaa natural i viaa artificial
Dicionarul Webster:
Viaa este condiia general care distinge
organismele de elementele anorganice i
de organismele moarte, manifestat prin:
cretere pe baza metabolismului
mijloace de reproducere
reglaj intern ca rspuns la mediu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Scopurile vieii artificiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
VA i IA
Viaa artificial este pentru biologie ceea ce
inteligena artificial este pentru psihologie
Simulrile bazate pe ageni sunt interesante
i pentru sociologie i psihologie social
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Sisteme complexe
Sunt sisteme dinamice alctuite din
componente similare, cu o structur relativ
simpl
Componentele interacioneaz dup reguli
locale, de asemenea simple (uor de neles)
Comportamentul global al unui astfel de
sistem este emergent
Nu poate fi estimat apriori pe baza regulilor locale
i nu poate fi explicat uor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Automate celulare
engl. cellular automata
Mediul este o latice, o mulime discret de celule
alturate
Timpul este de asemenea discret
Celulele au o serie de proprieti care se pot modifica
n timp (au stare)
Starea unei celule la momentul t+1 depinde de
starea proprie i de starea altor celule vecine la
momentul t
Actualizrile strilor se fac n paralel
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Exemplu
Automat celular unidimensional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Exemplu
Automat celular bidimensional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Tipuri de mediu
infinit
limite fixe, cu stri
predefinite
limite reflective,
influeneaz numai
celulele interioare
periodic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Exemplu
XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Rezultate
Configuraie simetric,
128 de pai
Configuraie iniial aleatorie,
apar totui modele n evoluie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Jocul vieii
engl. Game of Life, Conway (1970)
Automat celular bidimensional
Fie n numrul de vecini vii ai unei celule
Reguli:
Dac n < 2, celula moare de singurtate
Dac n > 3, celula moare de supra-aglomerare
Dac n = 3, celula renate (se nate o nou celul)
Altfel, celula i pstreaz starea anterioar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Modele emergente
Modele statice


Modele oscilante


Modele glisante
Modele de dezvoltare






Modele instabile
(neperiodice)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
http://florinleon.byethost24.com/home/prog_jt.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Proprietatea de calcul universal
Capacitatea de a putea calcula tot ce poate fi calculat
Maina Turing
Automatele celulare
Memorie: modelele statice
Numrtoare: modelele oscilante
Flux de informaii: modelele glisante
Nu se poate spune dac o anumit configuraie va
genera n timp configuraia nul sau va evolua ntr-o
configuraie stabil sau periodic
Problema opririi la Maina Turing: nu se poate prezice dac
pentru o anumit intrare, un algoritm se va termina sau va
rula la infinit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Sisteme Lindenmeyer
engl. Lindenmeyer systems, L-systems
Propus iniial ca formalism matematic pentru
modelarea creterii plantelor (Aristid
Lindenmeyer, biolog, 1968)
Sistem de producie
+ rotete dreapta
- rotete stnga
[ salveaz poziia i unghiul
] reface poziia i unghiul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
LOGO
Turtle graphics
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Modele 3D
ment traista ciobanului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Fractali
Structuri auto-similare
la scri multiple
O poriune mic
dintr-un fractal arat
la fel ca ntregul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Exemple
Ferig fractal Model al sistemului vascular
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
http://florinleon.byethost24.com/home/prog_gf.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Albinele: cutarea hranei
Colectarea hranei depinde de timpul de
ateptare la livrarea hranei n stup
Dac stupul are deja mult hran, albinele care o
depoziteaz au nevoie de mai mult timp pentru a
gsi celule goale
Timpul de ateptare mai mare determin albinele
colectoare s caute hran de calitate mai bun,
mai greu de gsit i care necesit deci mai mult
timp
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Viespile: diferenierea rolurilor
Organizarea: un singur ef, un grup de cuttori de
hran i un grup de ngrijitori ai larvelor
Toate rolurile sunt ocupate de viespi identice din punct de
vedere genetic
Fiecare viespe are doi parametri:
For determin mobilitatea
Pragul de cutare probabilitatea de a merge s caute
hran (prag mai mic probabilitate mai mare)
Larvele au un parametru Cerere, care stimuleaz
cuttorii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Viespile: diferenierea rolurilor
Cnd 2 viespi se ntlnesc, are loc o confruntare, cu probabilitatea de
succes:


Cnd larvele primesc hran, Cererea scade
Cutarea hranei scade Cererea i deci i stimularea de a cuta hran
eful se plimb prin cuib i confrunt alte viespi, astfel nct
echilibreaz variabilele din cadrul populaiei
Auto-organizare prin interaciuni repetate:
Cuttori: For mare i Prag de cutare mic
ngrijitori: For mic i Prag de cutare mare
ef: For mare i Prag de cutare mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Termite: construirea muuroiului
Termitele depun resturi de metabolizare,
care conin feromoni
Alte termite vor depune resturi lng
grmezile cu feromoni mai puternici
Concentraia de feromoni scade n timp
La nceput apar depozite distribuite aleatoriu
Apoi apar coloane
Coloanele se unesc prin arce
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Furnicile: sortarea
Furnicile au tendina s grupeze hrana, larvele
Dac se distribuie coninutul unui muuroi pe o suprafa
plan, lucrtoarele ncep s sorteze hrana i larvele
Reguli:
Furnicile vd numai obiectele apropiate din fa
Dac un obiect este departe de altele, probabilitatea de
a fi ridicat este mare; dac sunt prezente i alte obiecte,
probabilitatea este mic
Probabilitatea de a pune jos un obiect crete dac n
apropiere sunt i alte obiecte similare
f este fraciunea de
obiecte similare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Rezultate
timp
simulare furnici reale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Cooperarea
Comportamentul cooperant al speciilor mai
evoluate poate fi simulat ca o trstur
emergent a interaciunilor individuale
Strategia unui individ de a da napoi att ct a
primit de la altul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Optimizarea rutei
Stigmergie
O form de comunicare indirect prin modificarea mediului
Urme de feromoni
Probabilitatea de a alege o rut depinde de concentraia de
feromoni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Ant-Based Control
Hewlett-Packard, British Telecom: aplicarea
ideii pentru echilibrarea ncrcrii i rutarea
mesajelor n reele de telecomunicaii
Se creeaz n continuu ageni / furnici n
fiecare nod i li se atribuie destinaii aleatorii
Urmele de feromoni contribuie la actualizarea
tabelelor de rutare
Probabilitile de alegere a unui nod vecin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Ant-Based Control
pentru nodul de unde a venit furnica
pentru celelalte intrri
furnicile mbtrnesc
i depun mai
puini feromoni
p scade n timp
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Ant Colony Optimization
Optimizarea de tip colonie de furnici
Metod probabilistic pentru rezolvarea unor
probleme care pot fi reduse la gsirea unor ci n
grafuri
Caracteristici:
Mulime de indivizi cooperani
Comunicare prin stigmergie
Indivizii descoper calea de la starea iniial la starea final
(soluia problemei)
Deciziile sunt locale i stohastice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Parcurgerea grafului
Iniial, m furnici sunt plasate aleatoriu n
m noduri
n fiecare iteraie t, fiecare furnic k se mut
din nodul i n nodul j, reprezentnd o soluie
intermediar mai complet
Alegerea este stohastic, pe baza nivelului de
feromoni
ij
al arcului (i,j) i a atractivitii
ij

a arcului
43
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Selecia unui arc

ij
este n general o funcie de lungimea
arcului, de obicei
ij
= 1 / d
ij

0, 1
N
i
k
este o vecintate fezabil a furnicii k,
adic mulimea nodurilor nevizitate nc

44
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Actualizarea feromonilor
este persistena urmei de feromoni iar (1 )
este rata de evaporare, 0 < 1
este cantitatea de feromoni depozitat de
furnica k pe arcele traversate
L
k
(t) este lungimea turului furnicii k
45
dac arcul (i,j) este traversat de furnica k n iteraia t
altfel
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Probleme tipice
Problema comis-voiajorului
Atribuirea cuadratic
Job-shop scheduling
Rutarea vehiculelor
Cea mai scurt supersecven comun
Colorarea grafurilor
Ordonarea secvenial
Reele de comunicaii
Pentru explicaii, vezi suportul de curs
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Boids
Simuleaz un stol de psri (Reynolds, 1987)
Reguli:
Apropierea de centrul de greutate al vecinilor
Evitarea coliziunilor cu vecinii
Potrivirea vitezei cu aceea a vecinilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Pseudocod
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Regula 1: Apropierea
se mut 1% nspre centru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Regula 2: Evitarea coliziunilor
se dubleaz distana
dintre 2 boids,
separare lin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Regula 3: Potrivirea vitezei
se adaug o fracie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Comportament
Comportamentul de stol este emergent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Particle Swarm Optimization
Optimizarea de tip roi de particule
Metod de optimizare bazat pe indivizi care
imit comportamentul stolurilor de psri sau
roiurilor de insecte (Kennedy & Eberhart,
1995)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Algoritmul PSO
Fiecare particul are:
x
i
: poziia curent
v
i
: viteza curent
y
i
: poziia personal cea mai bun
y
^
i
: poziia cea mai bun a vecintii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Iniializarea
Pentru fiecare particul, se iniializeaz
aleatoriu poziiile x
i
i vitezele v
i
Iniial, vitezele pot fi setate la 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Ajustrile (I)
Se evalueaz funcia obiectiv a particulei, f(x
i
)
Se actualizeaz optimul personal
Problem de minimizare



Se calculeaz optimul social (al vecintii)

Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Ajustrile (II)
Pentru fiecare dimensiune, se actualizeaz
viteza



Se actualizeaz poziia curent

Se repet paii pn este satisfcut un
criteriu de convergen
ponderea ineriei componenta cognitiv componenta social
c
1,2
- constante de acceleraie r
1,2
- numere aleatorii n (0,1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Variante
Varianta prezentat este global: gbest
n varianta local, lbest, se consider mai multe
vecinti posibil suprapuse
Vecintatea poate fi definit de indicii particulelor sau de
poziiile lor
y
^
i
se calculeaz pentru fiecare vecintate
Abordarea lbest conduce la o diversitate mai mare, dar este
mai lent dect abordarea gbest
Criterii de convergen
Numr maxim de iteraii
Actualizri ale vitezelor apropiate de 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Parametrii
Ponderea ineriei w definete compromisul ntre explorare i
exploatare
O valoare mai mic scade viteza particulelor mai mult
exploatare
O valoare mai mare crete viteza particulelor mai mult
explorare
Pentru a asigura convergena algoritmului:


Viteza poate fi limitat la un V
max
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
PSO i AE
Asemnri i deosebiri ntre Particle Swarm
Optimization i Algoritmii evolutivi:
Indivizii din PSO au funcii obiectiv
Ajustrile sunt asemntoare cu ncrucirile
PSO este inspirat de comportamentul social,
nu de selecia natural
Indivizii din PSO au memorie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Avantaje
PSO este un algoritm continuu, AE pot fi discrei
PSO este mai bun dect AE pentru unele probleme
continue de optimizare i n special pentru probleme de
dimensiuni mari
Performanele PSO nu depind de numrul de
particule; trebuie doar s nu fie prea mic
PSO cu un numr redus de particule are performane
comparabile cu AE cu populaii mai mari
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Dezavantaje
Convergena prematur
PSO gsete soluiile mai rapid dect algoritmii evolutivi,
dar de obicei soluia nu se mai mbuntete n timp
O particul converge la un punct dintre optimul personal
i optimul social; acest punct poate s nu fie nici mcar
optim local al problemei
Performanele depind de problem
Parametrii trebuie alei pentru fiecare problem n parte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Modelul Sugarscape
Mediul are cantiti variabile de zahr
Agenii au metabolism i consum zahr
La fiecare micare, agenii consum o cantitate de
zahr; cnd consum tot zahrul, mor
Agenii pot privi n direcii paralele cu axele,
dar nu n diagonal
Agenii merg n celula cu cea mai mare cantitate de
zahr din cmpul lor vizual (la egalitate, cea mai
apropiat celul) i o consum
Agenii pot depozita zahrul neconsumat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Modelul Sugarscape
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Sugarscape, G

zahrul consumat se
regenereaz complet
ntr-un pas
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Sugarscape, G
1
zahrul consumat se
regenereaz cu o unitate
la fiecare pas
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Evoluia populaiei
Populaia se stabilizeaz la un numr de
ageni care pot fi hrnii de mediu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Distribuia averii
O mic parte din ageni au cea mai mare
parte din cantitatea de zahr
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Diagonale de migraie
emergente
Agenii individuali nu se
pot mica pe diagonal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Economia: zahr i mirodenii
MRS = rata de substituie
marginal
preul local
w acumularea
t metabolismul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Modelul segregrii al lui
Schelling
Este un exemplu de comportament emergent
puternic, care arat c ntr-o societate pot exista
fenomene segregaioniste evidente chiar dac
indivizii nu sunt neaprat foarte segregaioniti
n model exist ageni de 2 culori
Fiecare agent este mulumit dac are n vecini de
aceeai culoare
Dac nu este mulumit se mut aleatoriu n alt
celul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Comunitatea lui Schelling
n=2
n=1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Comunitatea lui Schelling
n primul caz, fiecare agent ar fi mulumit dac ar
avea 2 vecini de aceeai culoare i 2 vecini de alt
culoare
La echilibru ar fi stabil o situaie ca aceea de mai jos





Apare totui un fenomen de segregare involuntar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Modelul lui Hammond
Este un model al corupiei sociale
Societatea are ceteni i birocrai, care pot fi
corupi (C) sau oneti (O)
Interaciuni posibile
C + C recompens pozitiv
C + O denun
O + O recompens nul
Dup un numr (necunoscut) de denunuri,
un corupt este arestat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Modelul lui Hammond
Galben: corupi
Albastru: oneti
Rou: arestai

Un agent tie ce i se
ntmpl lui i prietenilor lui
Dac mai muli prieteni sunt
arestai, agentul va deveni
mai cinstit
Presiunea social (frica)
determin creterea
numrului de indivizi oneti
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Modelul lui Hammond
Dac numrul de ageni arestai este
necunoscut, frica i determin s devin
oneti
Cnd numrul arestailor din ntreaga
societate este cunoscut, presiunea nu mai
este suficient pentru a-i schimba
comportamentul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Modelul lui Epstein
Coexisten panic



Genocid artificial
Cnd tensiunea social
depete un prag, un
agent omoar alt agent
de alt culoare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
SWARM: Heatbugs
Fiecare gndac
genereaz o cantitate
mic de cldur
Gndacii sunt mai
fericii cnd au mai
mult cldur
Rezultatul este gruparea
acestora pentru a avea
mai mult cldur
mpreun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
SWARM: Mousetrap
Model al fisiunii nucleare
Fiecare curs de oareci conine dou mingi de
ping-pong
La nceput se arunc o minge de ping-pong n
mijlocul curselor
O curs se nchide i arunc cele dou mingi la
rndul ei, care determin nchiderea altor curse
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Mousetrap
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
NetLogo: Etnocentrism (Axelrod & Hammond)
82
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Framsticks: creaturi evoluate
artificial
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Framsticks
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Framsticks
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Concluzii
Viaa artificial este un domeniu
interdisciplinar care implic biologia,
psihologia, tiinele cognitive i matematica
Dezvoltarea de modele n biologia sintetic i
gsete aplicabilitatea n biomedicin, unde
standardizarea componentelor biologice
sintetizate i formalizarea metodologiilor
rmne o problem nerezolvat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm

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