Documente Academic
Documente Profesional
Documente Cultură
INTELIGENA ARTIFICIAL
Introducere
Inteligena artificial este un domeniu al informaticii care urmrete dezvoltarea de sisteme tehnice capabile s rezolve prin metode asemenea celor folosite de om, probleme intelectuale dificile, precum i nelegerea, modelarea i chiar previziunea comportrii sistemelor vii. Inteligena artificial nseamn: Proiectarea i analiza programelor de calculator cu comportare inteligent Studiul modului n care calculatoarele pot face lucrurile pe care acum oamenii le fac mai bine Studiul facultilor mentale cu modele informatice Studiul comportrii inteligente Dezvoltarea de programe inteligente, ce pot rezolva situaii neprevzute
Inteligena Artificial
12/29/2011
Istoric
A.M. Turing a a introdus pentru prima oar conceptul de memorare a programelor, prin aceasta calculatorul putnd s-i schimbe funcia, adic poate fi fcut s nvee sau s gndeasc. n 1960 John McCarthy a introdus LISP-ul, ca primul limbaj de cercetare al inteligenei artificiale. Un an mai trziu, Marvin Minskey a publicat prima carte n domeniul inteligenei artificiale intitulat "Steps towards Artificial Intelligence". Au urmat primul joc de ah pe calculator, prima demonstraie matematic i programul ELIZA, care a ncercat s nlocuiasc un psihiatru n discuia cu pacientul. La sfritul anilor '70 s-au obinut mai multe succese n: prelucrarea limbajelor naturale, reprezentarea cunoaterii i rezolvarea problemelor. Au fost puse bazele introducerii primului tip de produse comerciale de inteligen artificial, sistemele expert, ce conin informaii despre un anumit domeniu i atunci cnd sunt interogate, rspund asemntor unui expert uman. Unul din primele sisteme expert a fost MYCIN (Universitatea Stanford), pentru a ajuta medicii n diagnosticarea infeciilor. Un important eveniment a fost apariia n 1972 a limbajului Prolog, care a fost proiectat pentru a ajuta rezolvarea problemelor legate de inteligena artificial. Spre deosebire de LISP, are mai multe caracteristici specifice, precum faciliti de baze de date ncorporate, rutine de urmrire napoi i o sintaxa destul de simpl. n prezent cel mai important lucru n domeniul inteligenei artificiale este deplasarea de la cercetare la implementare.
Inteligena Artificial
Maina inteligent
O definiie posibil: Un program inteligent este un program care manifest o comportare similar cu cea a unui om care se confrunt cu o problem similar. Nu este necesar ca programul s rezolve sau s ncerce s rezolve problema n acelai mod ca i omul. Testul Turing (variant): Un individ A converseaz de la un terminal cu alte dou terminale. La unul (nu se tie care) rspunde un alt individ, B, la altul un program de calculator, C. Dac dup o conversaie de durat mare, pe teme diverse, individul A nu poate spune la care terminal se afl individul B i la care programul, atunci programul respectiv este inteligent.
Inteligena Artificial
12/29/2011
12/29/2011
Reprezentarea cunoaterii
Problema central a inteligenei artificiale moderne este reprezentarea cunotinelor, adic codarea elementelor din lumea real, a cunotinelor obinuite, ntr-un format ce poate fi citit i neles de calculator. Orice cantitate de cunotine s poat fi codat n anumite configuraii particulare de bii ntr-o memorie a calculatorului suficient de mare. Relaiile dintre obiecte i concepte s poat fi, de asemenea, nregistrate. Reprezentrile s fie astfel nct s poat fi manipulate pentru a executa ceea ce n termeni obinuii se numete judecat. Reprezentrile s fie complete i concise. Fiecare pies de cunoatere reprezint descrierea n limbajul de reprezentare a sistemului a unei entiti din universul [de discurs] (domeniul de competen) al sistemului. Piesele de cunoatere plus procedurile de acces la cunoatere constituie sistemul cognitiv. Cunotinele nu sunt simple date, ci sunt organizate corespunztor modului n care vor fi utilizate
Inteligena Artificial
12/29/2011
Inteligena Artificial
12/29/2011
Reele semantice
sunt grafuri ce descriu relaii ntre concepte, fapte, evenimente etc. relaiile pot fi: structurale, cauzale, semantice conceptul este un obiect intensional instana este un obiect extensional relaiile taxonomice asigur motenirea proprietilor conceptului de ctre toate instanele sale Exemple relaie taxonomic: Cinele este un mamifer. ESTE (cine, mamifer) relaie structural: PARTE-A (piston, motor) PARTE-A (motor, automobil)
automobil
parte-a
mamifer
instan-a
motor
parte-a parte-a
instan-a
cine
instan-a
piston
cilindru
Grivei
Rex
Inteligena Artificial
11
Inteligena Artificial
12
12/29/2011
pasre
DA DA
un_fel_de
kiwi
galben NU
un_fel_de
canar
culoare
neagr
Penny
este Cirip
proprietar
Nic
veterinar proprietar proprietar veterinar
proprietar
Sandu este
veterinar un_fel_de
Sic este
Inteligena Artificial
13
Inteligena Artificial
14
12/29/2011
Inteligena Artificial
15
Interogarea ontologiilor
Interogare de selecie sau extragere : se cere o informaie reprezentat n ontologie, de obicei bazat pe coninut, structur sau poziie. Interogare de reducere: se specific ce nu trebuie returnat ca rezultat. Interogare de restructurare: se modific nu numai valorile, ci i structura datelor. Interogare de agregare: o form simpl de obinere de cunotine noi, legat de inferen este agregarea datelor. Interogare de combinare i de inferen: combinarea informaiei existente dar nu explicit conectat, de ex., din diferite surse sau reprezentat n diverse structuri.
Inteligena Artificial
16
12/29/2011
Ontologii: limbaje
de programare (Prolog, Lisp,) bazate pe logic (KIF, Loom,) bazate pe cadre (Ontolingua, OIL,) bazate pe grafic (reele semantice,) bazate pe XML (DTD, XML-Schema,) bazate pe WWW (OWL,)
Inteligena Artificial 17 2011 George Savii
Ontologii n mecatronic
Sunt trei grupe de descriptori pentru cunotine de baz pentru a captura semnificaia componentelor mecatronice: funcia, adic ce face un obiect (component, grup de componente, sau subansamblu) n ansamblu; comportarea, aciunile observabile prin care i ndeplinete funcia; structura, atributele obiectului fizic (de ex. materiale) ce sunt legate de realizarea comportrii.
Inteligena Artificial
18
12/29/2011
OntoSensor
Inteligena Artificial
19
Ontologia SiarSensor
Switch
Inteligena Artificial
20
10
12/29/2011
Interogarea ontologiei
Inteligena Artificial
21
Interogarea ontologiei
Inteligena Artificial
22
11
12/29/2011
Logica
O logic este o reprezentare definit a cunotinelor (un mod de exprimare). O teorem a unei logici date este o pies de cunoatere care a fost derivat din axiomele logicii (adic din fapte sau reguli date ca fundamente ale logicii). Calculul propoziional este un cadru logic n care propoziiile sunt uniti atomice semantice. Simbolurile logicii propoziionale sunt propoziiile atomice (P, Q,), conectorii i , parantezele ( ). Exemplu: O formul poate fi: valid (tautologie): adevrat n toate interpretrile realizabil: adevrat n cel puin o interpretare nerealizabil (contradicie): fals n orice interpretare (interpretare = o evaluare pentru propoziiile atomice ale unei formule) Regul de deducie (modus ponens, MP): din formulele P i P Q putem deduce Q. Calculul predicatelor este o extensie a calculului propoziional, ce permite utilizarea de variabile. Predicatul este o parte a unei propoziii afirmnd ceva despre obiectul propoziiei. Exemplu: x >7. Variabilele pot fi afectate de cuantificatori: universal () sau existenial (). Exemple:
Inteligena Artificial 23 2011 George Savii
Exemplu de raionament
Regul: Aseriune:
Consecin: Socrate este muritor. [Concluzie] Regula are forma unei implicaii logice, n care partea stng, condiional (dup DAC) este antecedentul, iar partea dreapt (dup ATUNCI) este consecventul. Antecedentul poate conine mai multe propoziii logice combinate cu conective logice (conjuncia, disjuncia, negaia).
DAC este fiin uman ATUNCI este muritor. [Implicaie] Socrate este fiin uman. [Premis]
Diagrama regulilor
Inteligena Artificial 24 2011 George Savii
12
12/29/2011
Inteligena Artificial
25
Reprezentare i terminologie
Specificarea problemei: spaiul strilor problemei (mulimea configuraiilor posibile) strile iniiale strile int (finale) mulimea regulilor descriind aciunile permise strategia de conducere Rezolvarea problemei const n micarea n spaiul problemei conform strategiei de conducere, utiliznd regulile, pn la gsirea unui drum de la o stare iniial la o stare final (cutarea unei ci). Metode generale de rezolvare: deducia, inferena, planificarea, raionamentul de bun sim, demonstrarea teoremelor.
Inteligena Artificial
26
13
12/29/2011
cmar sufragerie
hol
debara
sufragerie
hol X
debara
baie2
WC
cmar
baie2
Nod - un punct distinct i posibila int. Nod terminal - un nod care termin o cale. Spaiul de cutare - mulimea tuturor nodurilor. inta - nodul care este obiectul cutrii. Euristica - informaia despre probabilitatea ca un anumit nod s fie o alegere mai bun pentru ncercarea urmtoare, dect un alt nod. Calea soluiei - graful orientat al nodurilor parcurse care conduc la soluie.
Inteligena Artificial 27 2011 George Savii
Explozia combinatorial
Fiecare nod adugat spaiului de cutare adaug mai mult de o cale. Exemplu: problema comis-voiajorului; pentru N localiti rezult N! stri. Deoarece numrul posibilitilor crete att de repede, doar problemele cele mai simple pot fi rezolvate prin cutri exhaustive, cutri care examineaz toate nodurile. Tehnica exhaustiv poate fi teoretic aplicat ntotdeauna, dar practic nu este posibil aplicarea, deoarece consum prea mult timp, prea multe resurse de calcul sau amndou. Din acest motiv s-au dezvoltat alte tehnici de cutare.
Euristica
Euristica utilizeaz reguli simple care mresc probabilitatea ca o cutare s evolueze n direcia corect (euristic=care servete la descoperire). Informaia euristic, dei imprecis i negarantat, crete ansele ca o metoda de cutare s ating inta mai repede. Cel mai adesea, metodele de cutare euristic se bazeaz pe maximizarea sau minimizarea unor aspecte ale problemei. (Ex.: cel mai apropiat ora)
Inteligena Artificial 28 2011 George Savii
14
12/29/2011
Inteligena Artificial
29
Clase de complexitate
P probleme rezolvabile n timp polinomial NP probleme pentru care cel mai bun algoritm este nedeterministic exponenial, dar verificarea soluiei se poate face n timp polinomial NP-hard probleme al cror algoritm poate fi adaptat n unul pentru rezolvarea oricrei alte probleme NP (deci NP-hard sunt problemele de dificultate maxim) NP-complete probleme care sunt i NP i NPhard (exemplu: problema comis-voiajorului)
Inteligena Artificial
30
15
12/29/2011
Tehnici de cutare
Cutare oarb Cutare ghidat
Cutarea n adncime Cutarea pe nivel Cutarea cu efort maxim Cutarea cu cost redus
Evaluarea unei tehnici: rapiditatea gsirii soluiei valoarea soluiei A gsi soluia optim presupune, adesea, o cutare exhaustiv
Inteligena Artificial 31 2011 George Savii
Calgary
2 3
Toronto
D=2600 4
Chicago
New York
16
12/29/2011
Inteligena Artificial
33
Calgary
4
Toronto
D=2600 5
Chicago
1 2
New York
3
Denver Los Angeles Houston
34 2011 George Savii
17
12/29/2011
Inteligena Artificial
35
Calgary Toronto
D=2900
Chicago
1 2
Los Angeles Houston
36
New York
Denver
18
12/29/2011
Calgary Toronto
D=2600 2
Chicago
New York
Inteligena Artificial
38
19
12/29/2011
Inteligena Artificial
39
Calgary Toronto 1
Chicago
2 New York 3
Los Angeles
Houston
Calgary Toronto
D1=2600 D2=5000 D3=3000
Chicago
New York
Denver
3 Los Angeles 2
Houston
Inteligena Artificial
40
20
12/29/2011
Sisteme expert
Sisteme expert sunt programe de IA, bazate pe cunoatere, care imit comportarea unui expert uman n rezolvarea problemelor. Sistemele expert: pot pune ntrebri i pot da explicaii privind modul cum raioneaz sau motivul ntrebrii raioneaz euristic pot interaciona folosind limbajul natural pot manipula date imprecise, eronate sau lips pot trata simultan mai multe ipoteze parte de stocare a cunotinelor e separat de partea de prelucrare ncearc s dea sfaturi utilizatorului n domeniul de expertiz sunt disponibile oricnd, n orice zi, la orice or pot fi create ntr-un numr nelimitat de exemplare informaia pe care o conin nu se pierde lucreaz ntotdeauna la acelai nivel de performan sunt lipsite de personalitate
Inteligena Artificial 41 2011 George Savii
21
12/29/2011
motorul de inferen
interfee speciale
periferice
subsistemul de explicare
interfaa cu utilizatorul
expert/inginer de cunotine
utilizator
Inteligena Artificial
43
Baza de cunotine
conine informaii relevante pentru domeniul de expertiz reprezentarea cunotinelor este n forme diverse, de obicei prin fapte, reguli, cadre, reele semantice
Inteligena Artificial
44
22
12/29/2011
Inteligena Artificial
45
Motorul de inferen
Motorul de inferen este acea parte a unui sistem expert care ncearc s utilizeze cunotinele existente n sistem pentru a gsi noi cunotine. Exist dou categorii mari de maini de inferen: deterministe i probabilistice. Pentru cunotine sub form de reguli, strategiile de control pot fi nlnuirea (raionamentul) nainte sau nlnuirea napoi. Pentru cunotine n logica predicatelor sunt utilizate mecanismele deductive ale logicii clasice.
Inteligena Artificial
46
23
12/29/2011
Inteligena Artificial
47
crete
DATE:
Inteligena Artificial
48
24
12/29/2011
Metoda cu nlnuire napoi se mai numete i orientat pe obiect, deoarece motorul de inferen ncepe cu o ipotez (un obiect) i cere informaie pentru a o confirma sau nega. Dac maina de inferen nu poate gsi o soluie utiliznd informaia existent, atunci cere mai mult informaie. Singura cale de a ajunge la soluie o reprezint satisfacerea tuturor regulilor implicate. Cutarea pleac de la o stare final pentru a determina validitatea condiiilor n care aceasta poate fi atins. Strategia este tipic problemelor de diagnosticare.
Inteligena Artificial
49
Inteligena Artificial
50
25
12/29/2011
Interfaa cu proiectantul
Crearea bazei de cunotine
cu editor de texte ASCII cu editor controlat de sintax (gen formulare)
Explicaii
De ce? (Why?) Cum? (How?) Dar dac? (What if?)
Inteligena Artificial
51
Interfaa cu utilizatorul
Meniuri Orientare iniial Acceptare de rspunsuri multiple sau nesigure Explicaii Grafica Instruire Documentaie Consultan
Interfaa cu sistemul
Legturi cu baze de date Utilizare de module externe create cu alte limbaje Compilarea bazei de cunotine Sisteme de operare acceptate
Inteligena Artificial 52 2011 George Savii
26
12/29/2011
Ingineria cunoaterii
Ingineria cunoaterii este tiina care se ocupa cu modul de organizare a bazelor de cunotine, construirea i verificare lor. Organizarea bazelor de cunotine O metod bun de organizare a cunotinelor este plasarea la nceputul bazei de cunotine a obiectelor mai probabile i la sfritul ei a celor mai puin probabile. Problema este a afla care obiecte sunt mai probabile i care mai puin probabile. Se poate crea o baza de cunotine n mod aleator i s fie folosit o anumit perioada de timp, nregistrnd de cte ori este selectat fiecare obiect. Folosind aceast frecven se pot reordona bazele de cunotine. Un alt mod de organizare este de a plasa la nceputul bazei de cunotine acele atribute care cauzeaz tierea celei mai mari pri a ramurilor din arborele spaiului de cutare.
Inteligena Artificial 53 2011 George Savii
Ingineria cunoaterii
Gsirea expertului
Este dificil de decis cine este un expert i cine nu. Doi experi diferii pot avea opinii diferite referitoare la acelai subiect. Cnd opiniile experilor difer, exist trei alternative obinuite. Poate fi selectat un expert i ignorat cellalt. Aceasta este cea mai simpl alternativ, dar nseamn c baza de cunotine poate s conin informaii eronate. Se poate face o mediere a informaiilor, adic se poate folosi doar informaia comun experilor. Dezavantajul este c baza de cunotine nu reflect totalitatea cunotinelor experilor. Se poate introduce informaia tuturor experilor n baza de cunotine i se las utilizatorul s decid ce soluie adopt; se poate aduga un factor de probabilitate pentru fiecare soluie. Dei aceast metod este acceptabil n unele situaii, pentru multe aplicaii se dorete ca sistemul expert s fie autoritatea, nu utilizatorul. O alt problem este c experii umani de multe ori nu tiu ce tiu. De aceea poate fi dificil s extrag toat informaia necesar. Pe de alt parte, unii experi nu vor fi dispui s piard timpul pentru a comunica ceea ce tiu.
Inteligena Artificial 54 2011 George Savii
27
12/29/2011
Ingineria cunoaterii
Verificarea bazei de cunotine
Dac este gsit un expert care este cooperant i furnizeaz informaii complete, mai rmne de rezolvat problema verificrii dac informaiile introduse n sistemul expert sunt corecte. n esen, trebuie testat baza de cunotine. Verificarea prin cutare exhaustiv nu este posibil dect pe mulimi foarte mici de date, din cauza exploziei combinatoriale. De aceea, pentru cele mai multe sisteme ale lumii reale nu exist posibilitatea unei verificri complete a corectitudinii bazei de cunotine. Cea mai bun soluie este s se efectueze suficiente testri pentru a fi relativ sigur de corectitudinea bazei de cunotine. Prin folosirea tehnicilor de eantionare statistic se pot efectua o serie de teste care s genereze orice nivel de ncredere dorit. n alt abordare, se poate ca sistemul s efectueze un autotest de necontradicie, pentru a vedea dac informaia din baza de cunotine este coerent. Acest lucru nu va permite detecia tuturor erorilor, dar va permite detecia unora. La unele baze de cunotine se va putea atinge limita combinatorial, fcnd imposibil utilizarea acestei metode.
Inteligena Artificial
55
28
12/29/2011
Preprocesarea imaginii
n general exist dou metode prin care sistemele de vedere sunt implementate: reducerea imaginii la liniile care formeaz conturul fiecrui obiect redarea imaginii mai aproape de cea vzut de om Prima metod folosete diferite filtre pentru a elimina informaie din imagine i pentru a mri contrastul, n scopul obinerii de pri ale imaginii negre sau albe. Se obine astfel ceea ce se numete imagine binar, deoarece nu conine zone gri. Avantajul imaginii binare: furnizeaz doar contururile pe care calculatorul le poate recunoate uor, folosind algoritmi simpli (este clar unde ncepe i unde se termina fiecare obiect). Imaginea de contrast ridicat este folosit de obicei n mediile controlate, unde se tie dinainte c pot s existe numai cteva obiecte cunoscute. A doua metod d calculatorului informaie legat de strlucirea prilor imaginii. Cu aceast informaie, calculatorul poate obine date importante legate de suprafeele i umbrele obiectelor, date ce nu pot fi obinute prin prima metod. Calculatorul poate folosi aceste date pentru a furniza informaii tridimensionale legate de imagine i pentru a rezolva conflictele n cazurile n care un corp acoper parial pe altul.
Inteligena Artificial 57 2011 George Savii
Recunoaterea formelor
Forma = entitate ce poate fi numit Recunoaterea formelor rezolv probleme legate de: clasificarea obiectelor (supervizat sau nu) gsirea unor tipare n date, n vederea realizrii unor descoperiri sau predicii gsirea unor tipare n datele din reacie (feedback) n vederea nvrii i evoluiei crearea de memorii cu forme n vederea recuperrii la prezentarea unor forme asemntoare Aplicaii tipice: vederea artificial, recunoatere scris/amprent/avion, recunoaterea vorbirii analiza semnalelor medicale (EKG) data mining predicii financiare
Inteligena Artificial 58 2011 George Savii
29
12/29/2011
30
12/29/2011
Clasificatorul
are funcia de a partiiona spaiul caracteristicilor n regiuni etichetate graniele ntre regiuni sunt frontiere de decizie clasificarea unui vector de caracteristici const n determinarea regiunii creia i aparine i asignarea lui clasei respective clasificatorul poate fi reprezentat ca o mulime de funcii discriminant clasele reale pot avea suprapuneri
Inteligena Artificial 61
f1(x)
f2(x)
f3(x)
x1
x2
x3
X
x4
X X X X X X
Clasificatorul - Exemplu
Start DA DA NU NU DA Q P DA O>1 NU NU O
V>0
C>0
C>1
Inteligena Artificial
62
31
12/29/2011
neuronal
bazat pe rspunsul unei reele de uniti de procesare (neuroni) la un stimul de intrare (form) rspunsul depinde de topologia reelei, de ponderile sinaptice i de funciile de activare individuale este strategie nealgoritmic, cu nvare necesit minimum de cunotine a priori poate realiza orice forme pentru regiunile de decizie
Inteligena Artificial 63 2011 George Savii
32
12/29/2011
RNA: Dezavantaje
conin prea muli parametri (ponderile, rata nvrii, rata impulsului etc.) arhitectura este greu de ales antrenamentul este lent se blocheaz uor n minime locale n consecin, se caut alte metode din aceeai clas (de exemplu bazate pe maini cu vectori suport, care sunt asemntoare perceptroanelor)
Inteligena Artificial
66
33
12/29/2011
RNA: Caracteristici
Capacitatea de a nva Reelele neuronale artificiale nu necesit programare, ci sunt rezultatul unor antrenamente Fiind dat un set de intrri (eventual i cu ieirile dorite), n urma procesului de antrenament reelele neuronale se autoorganizeaz astfel c pot rezolva problemele pentru care au fost antrenate Capacitatea de generalizare Dac au fost antrenate corespunztor, reelele sunt capabile s dea rspunsuri corecte i pentru intrri diferite fa de cele cu care au fost antrenate, att timp ct aceste intrri nu sunt foarte diferite de cele de la antrenament. Reelele neuronale artificiale generalizeaz automat ca urmare a structurii lor, nu cu ajutorul inteligentei omului nglobat intr-un anumit program special creat n acest scop Capacitatea de sintez Reelele neuronale artificiale pot lua decizii sau trage concluzii cnd sunt confruntate cu informaii complexe, irelevante (zgomote) sau pariale. De exemplu, o reea poate fi antrenat cu o secven de versiuni distorsionate ale literei A. Dup un proces de antrenare adecvat, aplicarea unei versiuni distorsionate a literei A va avea ca rezultat la ieirea reelei litera corect.
Inteligena Artificial
67
RNA: Paradigme
Autoasociatorul Asociatorul de forme Clasificatorul Detectorul de regulariti
RNA: nvarea
Supervizat Nesupervizat Cu recompense/pedepse
Inteligena Artificial 68 2011 George Savii
34
12/29/2011
Neuronul artificial
x1 w2 w1
x2
xn
wn
Inteligena Artificial
69
Funcii de activare
treapt:
f(x)=1/(1+e-x) 1
f(x)=2/(1+e-x)-1 1
0,5
0 -1 0 x
dinamic:
Inteligena Artificial
cu integrarea stimulului
70 2011 George Savii
35
12/29/2011
Perceptronul
Perceptronul este o reea feed-forward stratificat (un strat de intrare, N-1 straturi ascunse i un strat de ieire). Activarea este binar (treapt). A fost introdus de McCulloch i Pits[1943].
x1
hw 11
h1 h2 h3
ow 11
o1
x2
o2
ow 42
x3
hw 34
h4
Pentru un strat (clasificare n dou regiuni A1|y>0; A2|y<0): y = signum(WT.X) => H: WT.X = 0 Schimbare de variabil: => WT.Z > 0 dac clasificarea este corect
Inteligena Artificial 71 2011 George Savii
Funcia criteriu
Inteligena Artificial
72
36
12/29/2011
Inteligena Artificial
73
S=0
STOP
DA
Afieaz rezultate
k>kmax
Inteligena Artificial
74
37
12/29/2011
hk = q
x
i =1
w iq
iq k wqj
yk = j
i
q
k q
w qj
ojk
ik = S h (h k ) q q q
o k = S o (y k ) j j j
Inteligena Artificial
75
Reguli de corecie
pentru stratul de ieire general: wqjo(k+1)=wqjo(k)+k.(djk-ojk).Sqh(hqk).Sjo(yjk); kj=(djk-ojk).Sjo(yjk) wqjo(k+1)=wqjo(k)+k.kj.iqk wqjo(k+1)=wqjo(k)+k.(djk-yjk).iqk pentru strat de ieire linear, Sjo(yjk)=yjk
kj=(djk-yjk):
pentru strat de ieire sigmoidal, Sjo(yjk)=1/(1+exp(-yjk)): o(y k)= S o(y k).[1- S o(y k)] =(d k-o k).o k.(1- o k) Sj j j j j j kj j j j j wqjo(k+1)=wqjo(k)+k.(djk- ojk).ojk.(1- ojk) .iqk wiqh(k+1)=wiqh(k)+k.iqk.(1- iqk) pentru strat ascuns sigmoidal: .xik.j(wqjo(k).kj)
Inteligena Artificial
76
38
12/29/2011
Perechile date de forme se mpart n trei grupe: de antrenament, de validare i de test. Criterii de oprire: cu suma ptratic a erorilor, sau cu valorile modificrilor.
Inteligena Artificial
77
Inteligena Artificial
78
39
12/29/2011
dup conectivitate:
conectate complet conectate complet ntre dou straturi conectate complet la straturile anterioare
Inteligena Artificial
79
Inteligena Artificial
80
40
12/29/2011
Inteligena Artificial
81
Inteligena Artificial
82
41
12/29/2011
Inteligena Artificial
83
42
12/29/2011
strat competitiv
wij=t.(xi-wij)
dac E(j)<dt
sinapse cu ponderi
strat de intrare
RNA: Aplicaii
Robotic
rezolvarea problemei poziionale inverse, comanda axelor
Medicin
prelucrare semnale (EKG, EEG) prelucrare imagini (ecograf, tomograf) analiza limbajului natural sisteme de diagnosticare protezare
Altele
teledetecie telecomunicaii (eliminare zgomote) neurocalculatoare
Inteligena Artificial
86
43
12/29/2011
1 1 -2 y 0,5
1,5 1 x2 1
X 0 1 x2
Inteligena Artificial
87
Perechea de antrenament 2: vectorul cu intrrile: 00 01 12 13 04 05 ... 133 134 135 vectorul cu ieirile: 00 01 12 03 04 05 06 07 08 09
1 1 0
33 34 35
Inteligena Artificial
88
44
12/29/2011
h3
h4 h5
45
12/29/2011
K-means: exemplu
Inteligena Artificial
91
Logica fuzzy
Platon a fundamentat ceea ce va deveni logica nuanat (fuzzy), artnd c exist o a treia regiune pentru valoarea de adevr. ukasiewicz a fost cel care a propus primul o alternativ sistematic la logica bivalent a lui Aristotel. O logic multivalent ukasiewicz se bazeaz pe N valori de adevr, distribuite uniform n intervalul [0,1]: TN = {0, 1/(N-1),..., (N-2)/(N-1), 1}. Pentru o logic trivalent: T3 = {0, , 1}. La limit, pentru N rezult logica nuanat (fuzzy) tipic. Surse de elemente vagi/imprecise sunt: datele msurrilor (din cauza erorilor, rezoluiilor limitate, datelor lips); evenimentele aleatoare; imprecizia lingvistic (ambiguitatea, vaguitatea). Vaguitatea implic incertitudine determinist. Este legat de gradul n care un eveniment se produce, nu de probabilitate.
Inteligena Artificial 92 2011 George Savii
46
12/29/2011
Inteligena Artificial
93
Inteligena Artificial
94
47
12/29/2011
Principalele aplicaii ale logicii nuanate sunt n: reglarea automat, luarea deciziilor, estimare. Terminologia logicii nuanate este stabilit de standardul IEC 61131-7
Inteligena Artificial
95
condiionale:
Exemplu: DAC temperatura este mare ATUNCI curentul este micorat Interpretare: [n gradul n care] temperatura [poate fi considerat] mare, curentul [este proporional modificat astfel nct s se poat considera c] este micorat.
necondiionale:
Exemplu: Descrete temperatura.
Inteligena Artificial
96
48
12/29/2011
Reguli fuzzy
DAC A1 SAU A2 I A3 ATUNCI B1 CU G1 I B2 CU G2
Subcondiiile au forma: variabil_lingvistic [NU] ESTE valoare_lingvistic Subconcluziile au forma: variabil_lingvistic ESTE valoare_lingvistic Prioritile operatorilor sunt cele obinuite: (1) parantezele, (2) negaia, (3) conjuncia i (4) disjuncia Perechea de reguli echivalente este:
DAC puterea este foarte mare ATUNCI temperatura crete mult Aseriune: Puterea este destul de mare. Consecin: Temperatura crete moderat.
Pot fi evideniate urmtoarele concluzii: inferena prin logic nuanat este similar celei umane; cunotinele (regulile i aseriunile), precum i concluziile, pot fi exprimate cu calificative nuanate, precum: destul de, foarte, mult, moderat.
Inteligena Artificial 98 2011 George Savii
Regul:
49
12/29/2011
n care A, A*, B, B* sunt valori lingvistice ale variabilelor lingvistice x i y (de exemplu A* poate fi de forma: A, foarte A, destul de A etc.), R este relaia nuanat a implicaiei, iar este un operator de compoziie
Inteligena Artificial 99 2011 George Savii
Mulimi nuanate
Spre deosebire de mulimile clasice, cele nuanate permit elementelor s aib apartenen parial. Valoarea apartenenei atribuit unei entiti din univers nu este limitat la dou posibiliti, ci poate fi 0, 1, sau orice valoare intermediar. Deci o mulime nuanat (fuzzy) este o generalizare a unei mulimi clasice prin ataarea unui grad de apartenen pentru fiecare element. Funcia ce descrie valorile gradelor de apartenen ale elementelor este numit funcie de apartenen.
Inteligena Artificial
100
50
12/29/2011
A
funcia de apartenen
F : U [0, 1]
u
0 universul de discurs U
cnd U este discret: F = {(u1, F (u1)), (u2, F (u2)),...,(un , F (un))}, ui U , i = 1, 2,..., n cnd U este continuu: F = { u, F(u)} , u U
Inteligena Artificial 101 2011 George Savii
Inteligena Artificial
102
51
12/29/2011
Inteligena Artificial
103
Funcii de apartenen
O reprezentare simbolic uzual este sub forma: F = F (u1)/u1 +...+ F(un)/un = i F(ui)/ui Exemplu: mulimea nuanat cu eticheta "ntreg aproape egal cu 4": F = 0/0 + 0,1/1 + 0,2/2 + 0,5/3 + 1,0/4 + 0,5/5 + 0,2/6 + 0,1/7 + 0/8 sau: F = {(0; 0), (1; 0,1), (2; 0,2), (3; 0,5), (4; 1,0), (5; 0,5), (6; 0,2), (7; 0,1), (8; 0)} sau analitic: f (u) = [1 + (u - 4)2]-1 , u [0, 10]
Inteligena Artificial 104 2011 George Savii
52
12/29/2011
u<a aub c u>c u<a a u b b < u < c. cud u>d u< a b< u> a ub uc c.
S 1 0,5 0
u
2011 George Savii
u
1
u
1
A A u
Inteligena Artificial
106
53
12/29/2011
CON(A) A
0
u
1
A
0
DIL(A)
Inteligena Artificial
107
Inteligena Artificial
108
54
12/29/2011
Relaii nuanate
Fie n universuri U1,...,Un. O relaie nuanat n-ar R n U = U1...Un este o mulime nuanat pe U1...Un , submulime a produsului cartezian U1...Un: RU = {((u1,...,un), R(u1,...,un)) | (u1,...,un) U1...Un}. Produsul cartezian este utilizat, n general, pentru a defini relaia dintre dou sau mai multe mulimi. Dac A i B sunt mulimi clasice, produsul lor cartezian este: AB = {(a, b) | a A, b B} n care (a, b) este o pereche ordonat, iar aA, bB nseamn c se ia fiecare element din A i din B. Dac A are m elemente (m = |A|), iar B are n elemente, produsul cartezian AB va avea m.n elemente. O relaie binar clasic R de la A la B este orice submulime a produsului cartezian AB. O relaie binar nuanat R de la U la V este o submulime nuanat a produsului cartezian U V : R = {(u, v), R(u, v) | u U, v V } , n care R(u, v) este funcia de apartenen a mulimii R. Cnd universurile U i V sunt finite, relaia binar poate fi reprezentat i ca un tablou bidimensional, numit matricea relaiei, cu elementul generic: [R]i,j = ri,j = R(ui , vj) , i = 1, m , j = 1, n, n care m = |U| i n = |V|.
Inteligena Artificial 109 2011 George Savii
ri,j = max { min (Pi,1, Q1,j), min(Pi,2, Q2,j), min(Pi,3, Q3,j)} i = 1,2,3 , j = 1,2,3,
Inteligena Artificial
110
55
12/29/2011
Raionament nuanat
Regula dat: DAC A ATUNCI B ~ R=AB R(x, y) = (A B) (x, y) = min(A(x), B(y)) Cu aseriunea P rezult consecina: C (y) = sup [min(P (x), A (x), B (y))], y Y
Notare: D(x,y) = min(P (x), A (x), B (y))
x X
Regula generic: Rk : DAC x1 este Ak,1 I... I xi este Ak,i I... I xn este Ak,n ATUNCI y este Bk CU Gk Rezultatele trebuie agregate pentru rezolvarea contradiciilor dintre concluziile regulilor.
Inteligena Artificial 111 2011 George Savii
56
12/29/2011
Inteligena Artificial
113
Variabile lingvistice
Variabilele lingvistice se caracterizeaz prin aceea c primesc valori lingvistice (nu numerice, precum variabilele obinuite). O mulime nuanat poate fi considerat corespunztoare unei valori lingvistice precum "scump" sau "ieftin", iar variabila lingvistic "cost" poate fi considerat ca lund astfel de valori lingvistice Un important avantaj al variabilelor lingvistice este abilitatea de a accepta modificatori lingvistici:
Inteligena Artificial
114
57
12/29/2011
Variabile lingvistice
O variabil lingvistic poate fi definit ca un cvintuplu (x, T (x), G, U, M), n care: x este numele variabilei; T (x) - mulimea valorilor lingvistice ale variabilei x, fiecare valoare fiind o variabil nuanat n U ; T este o mulime numrabil; G - regula de generare a elementelor din T; de obicei G este o gramatic independent de context, caz n care T este limbajul generat de G ; U - universul de discurs; M - regula semantic de ataare a semnificaiei ctre fiecare valoare lingvistic a x, sub forma unei mulimi nuanate pe universul U. De exemplu, dac x = cost definit pe U = [0, 2], se pot alege: T (cost) = {ieftin, moderat, scump} , M (scump) = mulimea nuanat pentru "cost peste 1,5 RON/kg", cu funcia de apartenen scump, ce poate fi definit analitic: =0, u<1 scump(u) = (u 1)/0,5 , 1 u 1,5 =1, u > 1,5.
Inteligena Artificial 115 2011 George Savii
Variabile lingvistice
Procesul de definire a unei variabile nuanate are dou etape: 1.Se stabilete nivelul de cuantizare, adic numrul de valori lingvistice pe care s le poat lua variabila respectiv, deci numrul de submulimi nuanate aferente.
Dependent de problema concret de rezolvat, se stabilesc universurile variabilelor de intrare (din antecedente) i de ieire (din consecvente). Aceste universuri vor fi segmentate corespunztor cuantizrii stabilite. Pentru etichetarea submulimilor nuanate se utilizeaz, n mod obinuit, valori lingvistice, ceea ce face ca regulile s poat fi scrise n form natural. Exemple tipice de cuantizare sunt: temperatura: foarte fierbinte, fierbinte, cald, normal, rcoros, rece, foarte rece; viteza: foarte repede, repede, mediu, ncet, foarte ncet; nivelul: foarte nalt, nalt, mijlociu, cobort, foarte cobort. Exist un set standard de etichete, ce se potrivete mrimilor de tip eroare: foarte negativ, negativ mediu, negativ mic, zero, pozitiv mic, pozitiv mediu, foarte pozitiv.
2.Fiecrei etichete i se ataeaz o submulime nuanat, definit prin funcia ei de apartenen.
Inteligena Artificial
116
58
12/29/2011
Difuzarea ("fuzzificarea")
Difuzarea realizeaz trecerea de la valorile fizice din realitate, la valori nuanate, n termenii etichetelor lingvistice utilizate n premisele regulilor, n vederea procesrii prin raionament nuanat. De exemplu, pentru sistemele de comand nseamn transformarea valorilor obinute de la traductoare, n valori lingvistice cu diverse grade de apartenen.
Inteligena Artificial
117
Concentrarea ("defuzzificarea")
Concentrarea, numit i decompoziie sau dezambiguizare, este faza final n cadrul raionamentului nuanat. Este procesul de obinere a unui scalar din mulimea nuanat reprezentnd rezultatul unui raionament nuanat. Rezultatul este, n sistemele de conducere, valoarea unei variabile de comand. Procesul de concentrare izoleaz o valoare din universul de discurs, fcnd trecerea de la reprezentarea nuanat la reprezentarea numeric, adecvat sistemelor fizice. Metodele de maxim analizeaz muchiile spaiului nuanat i selecteaz valoarea din univers pentru care valoarea de adevr este maxim: = {u* | A(u*) A(u), u U } Metodele de moment produc valoarea concentrat a unei variabile din consecine prin calculul centrului unui moment static de ordinul zero sau unu al regiunii mulimii nuanate rezultat: u* = (U u A(u)du)/( U A(u)du) .
Inteligena Artificial 118
Putere 1
0 0
10
u* 20 Putere [W]
0 0
10 u*
20 Putere [W]
59
12/29/2011
x1
0 A22
x2
0 B2
x1
0 x2i
x2
acumulare max
decompoziie COG 0 y*
119
y
2011 George Savii
Inteligena Artificial
Regulatoarele nuanate (fuzzy) au fost introduse de Mamdani (1974), n special pentru cazurile n care nu exist un model precis al procesului, iar cea mai mare parte a informaiei a priori este disponibil n form calitativ. S-a pornit de la observaia c un operator uman este cteodat mai eficient dect un sistem automat pentru comanda unor astfel de procese. Strategiile intuitive de conducere utilizate de operatorii experimentai pot fi considerate drept algoritmi nuanai.
Inteligena Artificial 120 2011 George Savii
60
12/29/2011
Inteligena Artificial
121
program
eroarea i modific.
inferena nuanat
comenzi
Proces
ieire
Etapele procesrii informaiei: difuzarea (dup eventual normalizare) agregarea antecedentelor: compunerea valorilor pentru fiecare intrare; inferena: prelucrarea regulilor pentru a stabili gradul de declanare a fiecreia; activarea (compoziia): gradul de declanare a fiecrei reguli este aplicat asupra mulimii nuanate de ieire, conform implicaiei; acumularea (agregarea concluziilor); decompoziia (eventual cu denormalizare).
Inteligena Artificial 122 2011 George Savii
difuzare
61
12/29/2011
prin nvare:
pentru a putea emula comportamentul operatorilor umani n luarea deciziilor, regulatoarele pot fi prevzute cu capacitatea de nvare, adic de generare automat de reguli sau de modificare a celor deja existente n baz; capacitatea de nvare este bazat, de obicei, pe reele neuronale i algoritmi genetici.
Inteligena Artificial
123
1 s
1 1/A hprog
Volum
dPompa
Nivelul apei din rezervor se poate determina din: h = h0 + t (Qin(t) Qie(t))/Adt , n care: h0 este nivelul la momentul iniial; Qin(t) debitul apei care intr n rezervor (pompat); Qie(t) debitul apei care ias din rezervor (la consum); A aria bazei rezervorului (cilindric); t intervalul de timp considerat.
Inteligena Artificial 124 2011 George Savii
62
12/29/2011
numrului de variabile de intrare: dou (erh i derh), i de ieire: una (dpompa). 2.Stabilirea universurilor, numrului i etichetei valorilor nuanate pentru fiecare variabil:
erh: trei valori: NE, ZE i PO, corespunznd erorilor negative, n jur de zero i, respectiv, pozitive, pe universul [-2,2]; derh: trei valori: NE, ZE i PO, corespunznd derivatelor negative, n jur de zero i, respectiv, pozitive, pe universul [-2, 2]; dpompa: cinci valori, pentru o reglare mai fin: SR, SN, OK, CN i CR, corespunznd scderii rapide, scderii cu rat normal, pauzei (meninerii), creterii cu rat normal, respectiv creterii rapide a debitului, pe universul [-10, 10].
3.Definirea 4.Stabilirea
euristic. 5.Toate regulile sunt considerate cu grad maxim de ncredere (pondere 1). 6.Funciile pentru agregarea antecedentelor se aleg: minimum pentru conjuncie i maximum pentru disjuncie. 7.Pentru implicaie (activare) este utilizat funcia minimum. 8.Pentru acumulare se alege funcia maximum. Rezult operatorul compoziional MAX-MIN (sistem Mamdani). 9.Pentru decompoziie se alege metoda centrului de greutate.
funciilor de apartenen pentru valorile nuanate: se aleg de tip triunghiular. setului de reguli: setul complet are 33=9 reguli simple, ce sunt stabilite
Inteligena Artificial
125
Parametrii regulatorului
1 NE ZE PO 1 SR SN OK CN CR
0 -2
-1
2 erh,derh
0 -10
-5
10 dpompa
Inteligena Artificial
126
63
12/29/2011
Inteligena Artificial
128
64
12/29/2011
Ctigtoare n abordarea pesimist este alternativa 3, autoturismul GamaGL, care are cel mai mare minim (7).
Inteligena Artificial 130 2011 George Savii
65
12/29/2011
D(z) = min(C1(z), C2(z), C3(z)) = {1000, 3000, 5000} z* = arg(max D(z)) = 3. Decizia este de a nvesti n a treia societate, pentru a avea un profit mare n orice condiii.
Inteligena Artificial 131 2011 George Savii
zA
66
12/29/2011
Se consider problema de decizie de la exemplul 1 pesimist. Se aplic relaiile pentru rezolvare: D(z) = max(C1(z), C2(z), C3(z), C4(z)) = {9, 8, 8, 8} z* = arg(max D(z)) = 1.
zA
Ctigtoare n abordarea optimist este alternativa 1, autoturismul AlfaSN, care are cel mai mare maxim (9). Decizia optimist este discutabil, pentru c nu ine cont de dezavantajele alternativei.
Inteligena Artificial 133 2011 George Savii
regretul este definit ca diferena de la valoarea curent a unui criteriu la valoarea maxim a criteriilor pentru o alternativ dat matricea regretelor R se calculeaz din matricea calificativelor, X, avnd elementul general: rij = min xij xij
j=1,n
Inteligena Artificial
134
67
12/29/2011
Inteligena Artificial
136
68
12/29/2011
G = [gij] este matricea de decizie; gid - valoarea dorit pentru gi ; - parametru; =1 pentru formularea simplex (compensare perfect), =2 pentru distana euclidian; pi - ponderile criteriilor, pi > 0, pi = 1.
Inteligena Artificial 137 2011 George Savii
Cu ponderile pi i exponentul unitare: A = {-0.936 -1.664 5.111 5.717 1.983 4.461 3.300 -0.306 0.644 2.581} deci ctigtor este proiectul P8.
Inteligena Artificial 138 2011 George Savii
69
12/29/2011
ALGORITMI GENETICI
Pentru a rezolva problemele specifice tehnicilor de gradient, precum blocarea n minime locale sau nedifereniabilitatea, sau tehnicilor de cutare n spaiul strilor, au fost explorate tehnici globale de cutare, ce nu se bazeaz pe derivate, cum sunt: recoacerea simulat, algoritmii genetici, cutarea aleatorie, programarea liniar. Cea mai cunoscut paradigm pentru astfel de cutri este calculul evolutiv, domeniu al inteligenei artificiale. Aceast paradigm acoper mai multe variante, precum: strategiile evolutive, pentru optimizarea continu a funciilor; programele evolutive, care genereaz automate cu stri finite ce descriu strategii sau comportamente; algoritmii genetici, ce permit optimizri de funcii continue sau discrete, sinteze de sisteme, ajustare, testare etc.; programarea genetic, programe de calculator evolutive pentru rezolvarea aproximativ a problemelor, cum ar fi generarea de expresii executabile pentru aproximarea seriilor de timp.
Inteligena Artificial
139
70
12/29/2011
Fundamente biologice
n fiecare celul, informaia privind evoluia este stocat n cromozomi, care sunt lanuri de acizi nucleici (ADN i ARN). Un segment din molecula de ADN, care determin sinteza unei catene polipeptidice poart numele de gen. Gena are o funcie biochimic unitar i un efect specific asupra caracterelor organismului (de exemplu culoarea ochilor). Setul complet de material genetic poart numele de genom. Totalitatea fondului de gene ale unei populaii determin genotipul. Manifestarea vizibil, n realitatea fizic, a informaiilor din gene constituie fenotipul. Gena este un segment genotipic, cromozomul fiind un lan de gene. Variantele de gene ce pot ocupa un anumit loc n cromozom poart numele de alele.
Inteligena Artificial
141
Reproducerea
n procesul reproducerii organismelor vii au loc: ncruciarea mutaii, de obicei cauzate de:
erori de copiere a genelor de la prini factori externi (radiaii etc.)
Unele modificri ale genelor vor fi nefavorabile, indivizii respectivi avnd anse mai mici de a transmite informaia genetic unor descendeni. Modificrile favorabile vor face ca indivizii respectivi s aib anse mai mari de a transmite informaia genetic.
Inteligena Artificial
142
71
12/29/2011
4. nlocuirea: plasarea populaiei nou-create n locul vechii populaii; 5. Testarea terminrii: verificarea condiiei de oprire a algoritmului i terminarea dac este cazul; 6. Reluarea ciclului: de la pasul 2.
Inteligena Artificial
143
Codarea
Codarea este necesar pentru a face trecerea de la fenotip (valorile din realitate) la genotip (cromozom). Pentru a vedea proprietile indicate de gene este necesar o decodare, adic trecerea de la genotip la fenotip. Modul n care valorile variabilelor de decizie sunt codate n cromozomi depinde de tipul problemei. Principalele tipuri: binar cu valori numerice simbolic cu arbori
Inteligena Artificial 144 2011 George Savii
72
12/29/2011
Codarea binar
Fiecare gen conine un ir de cifre binare ce pot:
reprezenta binar valori numerice (zecimale); semnifica existena sau inexistena unei proprieti.
Exemplul 1: pentru problema cutrii minimului unei funcii de dou variabile, cromozomul va avea dou gene, fiecare fiind reprezentarea binar a valorii uneia din variabile; dac variabilele sunt definite pe intervalul [0, 100] i cromozomul are 20 de bii, atunci configuraia: 01100011001101101101 corespunde valorilor: x = 0110001100B100D/1111111111B 38,7 y = 1101101101B100D/1111111111B 85,7 cu o precizie de 100/(2101) 0,1. Exemplul 2: n probleme de mpachetare, valorile biilor indic dac un obiect este sau nu n pachet (container).
Inteligena Artificial
145
Exemplu: pentru problema antrenamentului reelelor neuronale, cnd trebuie aflat combinaia de valori pentru ponderi care realizeaz eroarea minim ntre ieirile calculate i cele impuse, cromozomii vor fi iruri de valori numerice ale ponderilor.
Inteligena Artificial
146
73
12/29/2011
Codarea simbolic
Fiecare gen conine un simbol. Pentru problemele de permutare, simbolul poate fi numrul de ordine dintr-o secven (caz n care fiecare simbol poate aprea o singur dat n cromozom). Problema tipic este cea a comis-voiajorului, n care trebuie gsit ordinea n care s fie parcurse oraele dintr-o list dat pentru ca lungimea total a traseului s fie minim. O pereche tipic de cromozomi poate avea forma: DGBHACFE EHDACFBG n care genele conin simbolurile localitilor de ordonat.
Inteligena Artificial
147
Codarea cu arbori
Cromozomul este reprezentat ca un arbore de obiecte. Este utilizat n programarea genetic i n programele evolutive. Cromozomul conine operatori, operanzi, funcii. Un exemplu tipic de utilizare este n problemele de gsire a unei funcii ce produce o relaie dat.
+ * x 7 y / 2
Inteligena Artificial
148
74
12/29/2011
Gradul de adecvare
Calitatea unui cromozom este apreciat prin gradul de adecvare, gradul n care cromozomul respectiv este eficient, adic gradul n care fenotipul corespunztor satisface problema. Poate fi calculat, de exemplu, dependent de valoarea funciei obiectiv ce trebuie maximizat sau minimizat. Pentru problemele de proiectare n care se cere realizarea unui sistem pentru producerea unui ansamblu de valori prestabilite ale unor atribute, adecvarea poate fi apreciat prin abaterea medie ptratic a rezultatelor produse de sistemul descris de cromozomul respectiv, fa de rezultatele dorite.
Inteligena Artificial
149
Selecia
Pentru selecie se aplic o metod probabilistic, eantionarea universal stocastic, numit i metoda ruletei. Fiecrui cromozom i se ataeaz o probabilitate de a fi ales ce depinde de gradul su de adecvare. Dac gama gradelor de adecvare este mic, probabilitile de selecie pot fi proporionale cu gradele de adecvare. Dac gama gradelor de adecvare este mare, cromozomii mai puin adecvai vor avea anse aproape nule de a fi selectai cu metoda proporional, toi descendenii tinznd s semene cu prinii cu adecvare mare, devenind uniformi. De aceea, probabilitatea ca un cromozom s fie selectat trebuie optimizat prin:
aplicarea rdcinii ptrate pe valoarea adecvrii majorat cu o unitate; aplicarea unei transformri liniare asupra valorilor adecvrii; normalizare liniar: probabilitatea de selecie se ia proporional cu rangul cromozomului ntr-o clasificare funcie de adecvare, i nu proporional cu adecvarea.
Inteligena Artificial
150
75
12/29/2011
Inteligena Artificial
151
ncruciarea
Prin ncruciare (crossover) sunt combinate probabilistic pri din cromozomii-prini pentru a crea noi cromozomi, descendenii. O modalitate simpl de realizare a ncrucirii este prin alegerea aleatorie a unui punct de ncruciare (ntre dou gene) i preluarea unei pri de la un printe i a celeilalte pri de la cellalt printe.
Inteligena Artificial
152
76
12/29/2011
ncruciarea
Cnd codarea este prin permutare, pentru a obine cromozomi utilizabili (fezabili), dup ce a fost copiat prima parte de la un cromozom, restul se completeaz de la cellalt cromozom pornind de la nceputul lui, cu gene care nu exist nc.
Pentru ca cea mai bun soluie curent s nu fie pierdut, se aplic tehnica elitismului, adic cromozomii (de obicei doi) cu cea mai bun adecvare sunt copiai (duplicai, "clonai") n noua generaie. Duplicarea este un caz particular al ncrucirii, cnd tierea se face chiar la captul cromozomului.
Inteligena Artificial 153 2011 George Savii
Mutaia
Operaia de tip mutaie are rolul de a ajuta la evitarea capcanelor reprezentate de minimele/maximele locale. Noul cromozom, obinut dup ncruciare, este modificat aleatoriu. n cazul codrii binare, sunt inversate valorile biilor selectai aleatoriu pentru mutaie (0 1, 1 0). Cnd codarea este tip permutare, se vor schimba ntre ele locurile a dou gene alese aleatoriu. n cazul codrii cu valoare, se adaug o valoare mic pozitiv sau negativ la valorile genelor selectate. Mrimea valorii adugate poate fi controlat prin parametrul nivelul radiaiei. Pentru codarea cu arbore, se modific valoarea din nod (operatorul sau operandul). Este recomandat o probabilitate de aplicare a mutaiei de 0,54%.
Inteligena Artificial
154
77
12/29/2011
Inteligena Artificial
155
Exemplu (cont.)
Iteratia: 6, valoarea:-115.1256, cromozomul: 00101100101111110110 Iteratia:10, valoarea:-121.4047, cromozomul: 00111100101111110110 Iteratia:17, valoarea:-146.5285, cromozomul: 01111100101111110110 Iteratia:19, valoarea:-193.9613, cromozomul: 11111100101111110110 Iteratia:25, valoarea:-195.7063, cromozomul: 11111101101111110110 Iteratia:28, valoarea:-196.7158, cromozomul: 11111101001111110110 Iteratia:37, valoarea:-197.7252, cromozomul: 11111101001111110100 Optimul la: x=98.9247 y=98.9247 Valoare obiectiv: -197.7252 Cromozomul: 11111101001111110100 [x,fval]=fminsearch(inline... ('x(1)*sin(x(1))+x(2)*sin(x(2))'),[-98.9247, -98.9247]) fval = 197,9304 la x1 = x2 = 98,9702
Inteligena Artificial 156 2011 George Savii
78
12/29/2011
Inteligena Artificial
157
Avantaje i dezavantaje
paralelismul: sunt prelucrate simultan mai multe soluii, deci este mai robust la minimele locale; uurina implementrii: de la o problem la alta trebuie modificat doar funcia pentru calculul gradului de adecvare; posibilitatea de codare a diverse proprieti, deci rezolvarea de probleme de mare diversitate, fr a avea cunotine prealabile despre funcia de optimizat; nu necesit calcularea unor valori auxiliare, precum gradientul, deseori imposibil de realizat; permit depirea limitelor abordrilor intuitive n proiectare. Dezavantajul principal este durata mare pentru soluionare.
Inteligena Artificial
158
79
12/29/2011
Aplicaii: categorii
Inteligena Artificial
159
Aplicaii: domenii
planificarea strategic; planificarea traiectoriilor n robotic; planificarea n probleme de transport (comis-voiajor); probleme de mpachetare; logistic; managementul sistemelor tehnice; planificarea n sistemele de producie; proiectarea reelelor neuronale; proiectarea circuitelor integrate; proiectarea formelor tehnice complexe (profiluri hidro- i aerodinamice pentru turbine, aeronave etc.); optimizarea structurilor mecanice; optimizarea liniilor de fabricaie; optimizarea sistemelor de reglare automat; optimizri n econometrie; alegerea strategiilor de mentenan; determinarea structurii spaiale a proteinelor complexe; data mining (cutarea de relaii ntre date); analiza datelor i prognoza pentru sisteme dinamice neliniare; determinarea fiabilitii sistemelor; identificarea sistemelor n protecia mediului; decizii la bursele de valori; identificarea riscurilor la asigurri; analiza imaginilor (teledetecie, imagistic medical, vedere artificial, criminalistic); clasificarea dovezilor criminalistice
Inteligena Artificial
160
80
12/29/2011
Raionament probabilistic
Probabiliti condiionate
P(A) = fraciunea de lumi n care A este adevrat P(A, B) = P(A B) = probabilitatea ca A i B s fie simultan adevrate P(A|B) = probabilitatea lui A, dat fiind B Regul fundamental: P(A B) = P(A|B) * P(B) P(A, B) = P(A|B) * P(B)
Inteligena Artificial 161 2011 George Savii
Probabiliti condiionate
Inteligena Artificial
162
81
12/29/2011
P(A B) = P(A|B) * P(B) P(A B) = P(B|A) * P(A) P(B|A) = P(A|B) * P(B) / P(A)
Inteligena Artificial
163
Dac un pacient are gtul nepenit, care este probabilitatea s aib meningit?
P(M|G) = P(G|M) * P(M) / P(G) = 0,02%
Inteligena Artificial 164 2011 George Savii
82
12/29/2011
P(B|E) = 0,41
Inteligena Artificial
166
83
12/29/2011
Inteligena Artificial
167
Dac un pacient obine rezultat pozitiv la test, care este probabilitatea s aib cancerul X?
P(C|E) = P(E|C) * P(C) / (P(E|C) * P(C) + P(E|C) * P(C)) = 4,6%
Inteligena Artificial
168
84
12/29/2011
Reea bayesian
S-a instalat un nou sistem de alarm, sun dac e spargere sau e cutremur Vecinii John i Mary sun pe proprietar la serviciu dac aud alarma
Inteligena Artificial 169 2011 George Savii
Interogri simple
Care este probabilitatea ca alarma s se declaneze fr s fi fost spargere sau cutremur iar John i Mary s fi sunat? P(J M A B E) = P(J|A)*P(M|A)*P(A|BE)*P(B)*P(E) = 0,9*0,7*0,001*0,999*0,998 = 0,00062
Inteligena Artificial
170
85
12/29/2011
Reele cauzale
O reea cauzal este un graf direcionat aciclic Nodurile sunt variabile cu o mulime finit de stri ce sunt mutual exclusive i exhaustive Legturile reprezint relaii cauz-efect Exemplu:
Defectul
Manifestarea
Inteligena Artificial
171
Grea d, n
Salmonella d (0,9; 0,1) (0,8; 0,2) n (0,6; 0,4) (0,1; 0,9)
2011 George Savii
Inteligena Artificial
86
12/29/2011
Inteligena Artificial
173
Inteligena Artificial
174
87
12/29/2011
Inteligena Artificial
175
Inteligena Artificial
176
88
12/29/2011
Inteligena Artificial
177
Inteligena Artificial
178
89
12/29/2011
Inteligena Artificial
179
Diagrame de influen
Extind reelele bayesiene pentru rezolvarea problemelor de decizie, cu dou tipuri de noduri:
de decizie: definete aciunile opionale de utilitate: are ca valoare utilitatea rezultatului
Nodul de decizie (dreptunghic/oval) este conectat la nodurile de anse a cror distribuie de probabilitate este direct afectat de decizie Nodul de utilitate (rombic) are o tabel de valori de utilitate pentru toate combinaiile de valori ale nodurilor-printe
Inteligena Artificial 180 2011 George Savii
90
12/29/2011
Diagrame de influen
Aciunea Utilitatea: msur a valorii de ntrebuinare Necunoscutele: cu funcii de distribuie de probabilitate Exemplu: Ce este de preferat: A ctiga 100 lei cu probabilitatea 0,0002 A ctiga 10 lei cu probabilitatea 0,001
Inteligena Artificial 181 2011 George Savii
Expectana
Este definit ca i cantitatea medie care poate fi ctigat pentru fiecare unitate riscat, sau mai simplu, profitul tipic pentru o tranzacie. Exist dou variabile n exemplu, fie ele B1 i B2: P(B1 = 0) = 0,9998; P(B1 = 100) = 0,0002 P(B2 = 0) = 0,9990; P(B2 = 10) = 0,0010 Expectanele sunt: E(B1) = 0,9998 x 0 + 0,0002 x 100 = 0,02 E(B2) = 0,9990 x 0 + 0,0010 x 10 = 0,01
Inteligena Artificial 182 2011 George Savii
91
12/29/2011
Utilitatea ateptat
Utilitatea unei aciuni este utilitatea rezultatului la care conduce Ea depinde, de obicei, de necunoscute Este cutat aciunea ce maximizeaz utilitatea ateptat Exemplu: Ce este de preferat: S accepi 3000 lei siguri S accepi 4000 lei cu probabilitatea 0,8
Inteligena Artificial 183 2011 George Savii
Inteligena Artificial
184
92
12/29/2011
Inteligena Artificial
185
Inteligena Artificial
186
93
12/29/2011
d Testul 2 d Total
Inteligena Artificial
94
12/29/2011
Inteligena Artificial
189
95
12/29/2011
P(S, T2) S d d
P(S|T1) S
Inteligena Artificial
P(S|T2) S d d
d d
0,865 0,135 0,026 0,974 0,364 0,636 0,616 0,384 0,118 0,882
1500 0
Inteligena Artificial
96
12/29/2011
Inteligena Artificial
193
Inteligena Artificial
194
97
12/29/2011
Inteligena Artificial
195
Inteligena Artificial
196
98
12/29/2011
Inteligena Artificial
197
Inteligena Artificial
198
99
12/29/2011
Inteligena Artificial
199
Inteligena Artificial
200
100