Sunteți pe pagina 1din 32

Inteligenţă Aritificială

Ce este inteligenţa
artificială?
 Termenul de Inteligenţă artificială a fost introdus pentru
prima dată în 1956 de către cercetătorul John McCarthy.
 Deşi ea este considerată un subdomeniu al ştiinţei
calculatoarelor, se intersectează cu discipline foarte diverse
cum sunt: filozofia, lingvistica, ingineria matematica, etc.
 Exemple de probleme de inteligenţă artificială: interpretarea
unor scene vizuale, diagnosticarea, recunoaşterea limbajului
natural.
 Inteligenţa artificială (AI – Artificial Inteligence) are ca
obiectiv proiectarea sistemelor înzestrate cu anumite
proprietăţi pe care în mod obişnuit le asociem inteligenţei
umane: înţelegerea limbajului, învăţarea, raţionamentul,
rezolvarea problemelor, demonstrarea teoremelor, etc.
Inteligenţa artificială: o încercare
de definire
 Există două elemente importante în definirea Inteligenţei
artificiale:
 1. Inteligenţa
 2. Maşina artificială
 Ce este inteligenţa? Noţiunea de inteligenţă, nu este suficient
de bine înţeleasă şi în consecinţă nu are o definiţie unanim
acceptată.
 Este inteligenţa o caracteristică pur umană sau nu?
 Un sistem inteligent ar trebui să se comporte exact ca un
om?
Un sistem inteligent ar trebui să se comporte cât mai bine
posibil (cât mai apropiat de comportamentul uman) ?
 Despre ce tip de comportament este vorba?
Interesează abilitatea unui system de a gândi sau de a
raţiona?
Interesează doar comportamentul final al sistemului din
punctul de vedere al acţiunilor sale? 3
Inteligenţa artificială: o încercare
de definire
 un sistem este considerat că are proprietatea de inteligenţă dacă în
comportamentul său se pot evidenţia următoarele aspecte:
 are capacitatea de a cunoaşte şi a înţelege legăturile dintre fapte;
 are capacitatea de a raţiona;
 are capacitatea de a învăţa.
 Cu alte cuvinte, pentru acordarea calificativului de inteligent unui sistem
ne interesează ceea ce face, şi nu cum face acest sistem.
 Diferitele definiţii ale Inteligenţei artificiale pun accentul în mod
diferit, fie asupra proceselor cognitive, fie asupra comportamentului.
 Astfel Inteligenţa Artificială poate fi privită ca studiul sistemelor care:
Gândesc asemenea oamenilor
Gândesc raţional
Acţionează asemenea oamenilor
Acţionează raţional

4
Natura problemelor de inteligenţa
artificială
 Majoritatea cercetărilor în domeniul inteligenţei artificiale s-au
orientat spre rezolvarea unor probleme uşor formalizabile dar
considerate ca necesitând un comportament inteligent:
demonstrarea teoremelor şi jocurile.
 Programul "The Logic Theorist" al lui A. Newell, J. Shaw şi H. Simon
[1963] putea să demonstreze mai multe teoreme din primul capitol
al lucrării "Principia Matematica" a lui Whitehead şi Russell.
 Programul care juca şah al lui A. Samuel [1967] îşi îmbunătăţea
performanţele de joc după fiecare partidă jucată.
 Problemele rezolvate de aceste programe au o caracteristică
comun: ele sunt probleme grele.
 Una din contribuţiile mari aduse de inteligenţa artificială ştiinţei
calculatoarelor este utilizarea euristicilor în rezolvarea problemelor
grele, transformând astfel probleme inabordabile din punct de
vedere al timpului de rezolvare în probleme posibil de rezolvat în
numeroase cazuri.

5
Natura problemelor de inteligenţa
artificială
 Încercarea de a simula comportamentul inteligent uman a dus la
investigarea unor alte tipuri de probleme, probleme care implică un grad
înalt de expertiză umană, cum ar fi diagnosticul medical, managementul,
proiectarea şi rezolvarea problemelor inginereşti generale.
 Aceste probleme necesită modelarea unor cantităţi mari de informaţii,
informaţii greu de formalizat, cum ar fi experienţa şi intuiţia.
Sistemele expert, rezultat direct al acestor cercetări, sunt acum mult
utilizate în domeniile amintite.
 Cercetările de inteligenţă artificială au avut rezultate cu mult mai bune
în domenii ca rezolvarea problemelor formale dificile cum ar fi jocurile,
demonstrarea teoremelor decât în domeniile care necesită cunoştinţe de
bun simţ. S-a reuşit construirea unui program care să demonstreze
teoreme matematice complicate dar nu s-a reuşit construirea unui
program care să stie tot ceea ce stie un copil de doi ani!

6
Natura problemelor de inteligenţa
artificială
 În final, multe cercetări în domeniul inteligenţei artificiale s-au orientat
spre imitarea altor capacităţi umane cum ar limbajul, văzul, auzul.
 Inteligenţa artificială s-a organizat astfel intr-un numar de subdomenii
care, deşi au în comun aceleaşi principii de reprezentare a informaţiei şi
aceleaşi tehnici de rezolvare a problemelor, s-au concentrat pe diverse
aplicaţii.
 O caracterizare precisă despre natura, specificul şi modalităţile de
rezolvare a problemelor de inteligenţă artificială trebuie să considere
următoarele patru întrebări importante:
 (1) Este posibilă simularea comportamentului inteligent pe calculator?
 (2) La ce nivel se încearcă modelarea comportamentului inteligent?
 (3) Care este criteriul pe baza căruia se apreciază inteligenţa unui
program?
 (4) Care sunt reprezentările şi tehnicile utilizate în rezolvarea
problemelor de inteligenţă artificială?

7
Natura problemelor de inteligenţa
artificială

 Răspunsul la prima întrebare poate fi conjectura lui McCarthy. John


McCarthy, una dintre personalităţile celebre ale inteligenţei artificiale,
a făcut următoarea conjectură:
 "Orice aspect al învăţării sau orice altă caracteristică a inteligenţei umane
poate fi descrisă suficient de precis astfel încât o maşină să o poata
simula.“
 Evident,atât conjectura lui McCarthy cât şi alte ipoteze nu au fost
demonstrate şi validarea lor ramâne un subiect deschis.
 Cel mai celebru criteriu de apreciere a inteligenţei unui program, deci
criteriul care ar putea răspunde la întrebarea (3), este testul Turing.

8
Testul Turing
 În 1950, Alan Turing (1912-1954), celebru matematician
britanic şi unul dintre întemeietorii ştiinţei calculatoarelor,
a propus un test pentru a determina dacă o maşină poate
avea sau nu un comportament inteligent. În articolul său
"Computing Machinery and Intelligence", Turing a pus
pentru prima oară problema posibilităţii simulării gândirii
umane cu ajutorul calculatorului. În acelaşi articol, Turing
descrie şi testul care, afirma el, poate discerne între o
comportare inteligentă şi una neinteligentă.
 Testul Turing constă în principiu din următorul experiment.
Un om comunică prin intermediul unui terminal al
calculatorului cu alte două terminale, situate în camere
învecinate, punând întrebări şi obţinând răspunsuri.
9
Testul Turing
 Răspunsurile sunt date de o
persoană la unul din cele două
terminale ascunse celui de la care
se întreabă şi de un program la
celălalt terminal. Dacă persoana
care întreabă nu poate stabili în
urma dialogului care este
terminalul de unde i-a răspuns omul
şi care este cel de la care i-a
răspuns programul atunci
programul are o comportare
inteligentă.
 Programul poate fi astfel făcut încât să încerce să păcălească pe cel
care întreabă. Problema cea mai importantă ridicată de realizarea unui
program care să treacă un astfel de test este cantitatea de informaţie
necesară programului ţinând cont de spectrul larg al întrebărilor posibil
de pus.
10
Testul Turing
 Pâna la ora actuală nici un program nu a reuşit să treacă testul Turing. Cu
toate acestea, testul Turing sugerează o măsura a performanţelor unui
program dacă se consideră domenii restrânse. De exemplu, un program
de jucat şah poate ajunge să aibă performanţe similare cu cele ale unui
maestru iar oponentul să nu stie dacă joacă şah cu o persoană sau cu un
program.
 Testul Turing este însă vulnerabil, din mai multe motive. În primul rând
testul verifică numai capacităţile pur simbolice de rezolvare a
problemelor, neluând în considerare aspecte cum ar fi percepţia sau
dexteritatea manuală. Pe de altă parte există posibila obiecţie că acest
test impune ca inteligenţa maşinilor să modeleze inteligenţa umană. Unii
cercetători susţin că inteligenţa maşinilor este o formă diferită de
inteligenţă şi că este o greşeală să încercăm a o evalua în termenii
inteligenţei umane. Se doreşte oare construirea unei maşini capabile să
simuleze activitatea socială a unui om şi care să fie la fel de lentă ca
acesta în efectuarea calculelor matematice?
 Toate aceste întrebări ramân pentru moment fără un răspuns definitiv,
unele depăşind cu mult sfera inteligenţei artificiale.

11
Alte exemple de succes:
http://alice.pandorabots.com/

12
A dialogue with Alice-bot:
> I’m Daniel
Nice to meet you Daniel.
> Do you know Clinton?
He was the second Impeached President of the United
States.
> Do you like him?
Sure he has never done anything to me.
> What is an impeachment?
It is a good question. I have to process that one for a
while. I would do a search for it.
> Who are you?
I ask myself that question, "Who am I?"
> What do you do?
I am chatting with people on the net.
13
> What is your favorite topic?
My favorite subject is artificial intelligence.
> What is artificial intelligence?
Artificial intelligence is the branch of engineering and
science devoted to constructing machines that think. I
can ask someone about it.
> Can you do anything else than chatting?
Doing anything else than chatting is not among my
strongest traits.
...

14
> How old am I?
Is this a trick question? You said you were how many years
old? My guess is that you are really a kid.
> What would you like to know about me?
Tell me about your educational background.
> I am a professor in computer science
You are a professor in computer science? How do you like
your work?
> It’s kind of nice teaching courses on artificial intelligence
I guess it is a lot of fun.
> What should I tell the students about you?
Be sure to think before you speak. State your point clearly
and slowly and gauge the listener's response before going
any further.

15
Este Allice un sistem inteligent?

 Cu siguranţă NU !
 ~ 50000 reguli de răspuns comune, banale.
 + unele respectă un model
 + unele sunt bazate pe cunoştinţe
 + unele sunt aleatorii
 Nu există însă raţionament
 Dar demonstrează comportamentul ‘human-like’.
 A câştigat premiul ‘turing award’

16
Alte exemple de succes
Exploatarea datelor (Data-mining):

Structura tridimensională a moleculelor noi poate


indica prezenţa celulelor canceroase
17
Exploatarea datelor (Data mining):
 Aplicaţii a tehnicilor de învăţare automată (Machine Learning
techniques)
 Rezolvarea unor probleme pe care oamenii nu le pot
rezolva datorită volumumului mare de date

Detectarea riscului de
cancer pe baza analizei
moleculelor.

18
Data mining:
 O aplicaţie similară:
 În marketing ...

Predicţia
comportamentului
clienţilor

19
Multe alte aplicaţii:

 Computer
vision:

 Procesare limbaj natural:

 Robotică:

20
Într-o anumită măsură, se simulează reţelele
neuronale artificiale:
(Artificial Neural Nets):

 O foarte bună imitare a structurii creierului:

 Lucrează foarte bine în domeniul învăţării,


clasificării şi recunoaşterii formelor.
 Foarte robuste şi rezistente la perturbaţii
21
Aplicaţii în domenii multidisciplinare:

 Inginerie:
robotică, imagistică, sisteme expert, biometrică,
 Ştiinţa calculatoarelor:
Limbaje destinate AI, reprezetarea cunoştinţelor,
algoritmi, …
 Ştiinţe:
statistică, reţele neuronale, logică fuzzy, …
 Lingvistică:
Lingvistică computaţională, fonetică şi vorbire, …
 Psihologie:
Modele cognitiv, extragerea cunoştinţelor de la experţi, …
 Medicină:
Modele neurale umane, neuro-ştiinţe,...
22
Istoricul Inteligenţei artificiale
 Ideea construirii unei maşini inteligente precede cu multe sute de ani
apariţia domeniului inteligenţei artificiale.
 Momentul naşterii oficiale a inteligenţei artificiale este considerat a
fi Conferinţa de la Dartmouth College din 1956, organizată de John
McCarthy de la Dartmouth College şi Marvin Minsky de la
Massachusetts Institute for Technology. La această conferinţă se
întâlnesc primii patru mari iniţiatori ai domeniului: John McCarthy,
Marvin Minsky, Alen Newell şi Herbert Simon, ultimii doi fiind de la
Carnegie Mellon University.
 Se pare că termenul de inteligenţă artificială a fost inventat în timpul
acestei conferinte de către McCarthy. Tot el este acela care a
enunţat şi conjectura posibilităţii simulării cu ajutorul calculatorului a
oricărui comportament inteligent uman.
23
Istoricul Inteligenţei artificiale
 Intre 1956 şi 1957 A. Newell, J. Shaw şi H. Simon dezvoltă primul
program de demonstrare automată a teoremelor, "The Logic
Theorist". Incepând din 1960 apar primele programe de inteligenţă
artificială. A. L. Samuel dezvolta în 1961 un program de jucat şah care
îşi îmbunătăţea performantele după fiecare partidă jucată.
 În 1962 şi 1963 A. Newell şi H. Simon construiesc programul "General
Problem Solver" (GPS) pe care încearcă să-l aplice în rezolvarea mai
multor probleme, cum ar fi planificarea acţiunilor sau manipularea
simbolică a expresiilor logice.
 În 1965 J. A. Robinson introduce rezoluţia ca metodă simplă şi
eficientă de demonstrare automată a teoremelor.
 Tot în 1965 începe la Stanford University construirea primului sistem
expert, DENDRAL, de către J. Lederberg şi E. Feigenbaum.
 DENDRAL [Lindsay, s.a.,1980] era un sistem expert capabil să
sintetizeze structura moleculelor organice pe baza formulelor chimice
şi a spectogramelor de masă.
 În 1968 C. Engleman, de la Massachusetts Institute for Technology,
începe dezvoltarea limbajului MACSYMA destinat rezolvării simbolice
a ecuaţiilor.
24
Istoricul Inteligenţei artificiale
 Apare necesitatea existenţei unor limbaje de programare mai puternice,
capabile să exprime la nivel simbolic informaţiile necesare programelor de
inteligenţă artificială.
 Se dezvoltă astfel o nouă filozofie a programării, programarea descriptivă
sau declarativă în care rezolvarea unei probleme se face pe baza descrierii
universului problemei în termenii obiectelor, atributelor şi a relaţiilor
existente între acestea.
 În scopul creşterii eficienţei activităţii de programare simbolică se dezvoltă
astfel o nouă clasă de limbaje: limbajele declarative. Limbajele funcţionale,
limbajele logice şi limbajele orientate pe obiecte sunt exemple de astfel de
limbaje.
 Limbajul Lisp (LISt Processing) a fost creat de John McCarthy în 1959.
 Limbajul Prolog (PROgrammation et LOGique) a fost inventat de Alain
Colmerauer la universitatea Marseille-Aix în 1972.
 Limbajul Prolog [Clocksin, Mellish, 1981; Sterling, Shapiro, 1986] este cel mai
răspândit limbaj de programare logică.

25
Istoricul Inteligenţei artificiale

 Studiile şi cercetările de început în inteligenţa artificială s-au orientat


mai ales spre încercarea de a construi sisteme generale, bazate pe
metode de inferenţă puternice, care încercau să funcţioneze şi în cazul
unor cunoştinţe limitate despre domeniul problemei.
 Exemple de astfel de sisteme sunt programele de jucat şah, "The Logic
Theorist", GPS şi altele din perioada anilor '60.
 În scurt timp s-a dovedit că ipoteza conform căreia un program care
conţine metode de rezolvare puternice dar generale, şi care se
bazează în rezolvarea problemelor numai pe viteza de calcul a maşinii,
nu era capabil să rezolve decât probleme foarte simple.
 De îndată ce un astfel de sistem trebuia să rezolve probleme reale,
complexe, explozia combinaţională implicată de soluţionarea
problemelor făcea ca programul să devină inefectiv. 26
Istoricul Inteligenţei artificiale
 In urma acestor rezultate, la începutul anilor '70 s-a produs o
modificare fundamentală în modul de abordare şi dezvoltare a
sistemelor de inteligenţă artificială.
 Cercetătorii au ajuns la concluzia că realizarea unui sistem inteligent
capabil să rezolve probleme reale, complexe, necesită un volum
substanţial de cunoştinte specifice domeniului.
 Descoperirea rolului cunoştinţelor specifice domeniului în rezolvarea
unei probleme dificile a generat o nouă concepţie a sistemelor de
inteligenţa artificială: sistemele bazate pe cunoştinţe.
 Eduard Feigenbaum [1977] a rezumat această nouă concepţie într-o
lucrare prezentată la "The International Joint Conference on
Artificial Intelligence" în 1977.
 El a pus în evidenţă faptul ca adevărata putere de rezolvare a unui
program este determinată în primul rând de cantitatea de
cunoştinţe pe care o posedă şi numai în al doilea rând de modalitaţile
27
de raţionament general utilizate.
Istoricul Inteligenţei artificiale
 Sistemul expert DENDRAL este unul din primele exemple
de sisteme bazate pe cunoştinţe. El a fost caracterizat
de Feigenbaum ca "o maşină de aplicare a cunoştinţelor."
 Sistemul MYCIN [Buchanan, Shortliffe, 1984], sistem
expert pentru diagnosticarea infecţiilor bacteriene ale
sângelui, a cărui dezvoltare a început la Stanford
University în jurul anilor '74-'75, este un alt exemplu de
sistem care a pus în evidenţă rolul important al
cunoştinţelor specifice domeniului.
 Începând din această perioadă şi până în prezent, toată
comunitatea cercetătorilor în domeniul inteligenţei
artificiale a recunoscut rolul esenţial al cunoştinţelor în
rezolvarea inteligentă a problemelor.
28
Structura sistemelor de
inteligenţa artificială
 Un sistem de inteligenţă artificială, sau sistem bazat pe
cunoştinte, este format din două componente fundamentale:
 (1) baza de cunoştinţe care conţine cunoştinţele specifice
domeniului problemei şi, eventual, cunoştinţe generale, şi
 (2) motorul de inferenţă care utilizează cunoştinţele pentru
rezolvarea problemei.
 Din punct de vedere al inteligenţei artificiale cunoştinţele pot fi
văzute ca mulţimea de fapte şi principii acumulate de oameni sau,
mai general, nivelul cunoaşterii umane la un anumit moment dat.
 Cunoştinţele includ idei, concepte, teorii, abstractizări, limbaje,
reguli, locuri, obiceiuri.
 Cunoştinţele dintr-un sistem inteligent, care se referă de obicei
la un anumit domeniu, descriu universul problemei sau al clasei de
probleme de rezolvat la nivel simbolic şi formează conţinutul bazei
de cunoştinţe.
29
Structura sistemelor de
inteligenţa artificială
 Modul de reprezentare şi organizare a cunoştinţelor este un element
esenţial al oricărui sistem inteligent. Cunoştinţele dintr-un sistem
bazat pe cunoştinţe trebuie să posede următoarele caracteristici:
 Cunoştinţele trebuie să fie generale. Situaţiile care prezintă
proprietăţi comune trebuie să poată fi reprezentate prin structuri
simbolice comune şi nu punctual, fiecare în parte.
 Dacă cunoştinţele nu au această proprietate cantitatea de memorie
necesară descrierii acestora poate deveni imensă.
 Cunoştinţele unui sistem inteligent sunt în continuă schimbare
deoarece ele reflectă schimbările din lumea înconjurătoare.
Reprezentarea cunoştinţelor în sistem trebuie să poată modela uşor
aceste schimbări şi să permită dezvoltarea incrementală a bazei de
cunoştinte.
 Reprezentarea cunoştinţelor trebuie să faciliteze achiziţia lor.
Multe din cunoştinţele necesare unui sistem inteligent sunt
cunoştinţe greu sau imposibil de formalizat şi ele trebuie obţinute de
la oamenii care le posedă. O reprezentare poate facilita sau îngreuna
acest proces. 30
Structura sistemelor de
inteligenţa artificială
 Cunoştinţele trebuie să poată fi utilizate în orice
instanţă a problemei de rezolvat, chiar dacă sunt
incomplete sau parţial incorecte.
 Cunoştinţele într-un sistem inteligent trebuie să fie
organizate într-o structură care să corespundă modului
în care acestea vor fi utilizate.
 Cunoştinţele trebuie să fie astfel reprezentate,
organizate şi utilizate încât să permită transparenţa
sistemului. Expertul sau utilizatorul trebuie să poată
inspecta cunoştinţele utilizate în rezolvarea unei
probleme şi inferenţele pe baza cărora problema a fost
rezolvată.

31
Structura sistemelor de
inteligenţa artificială
 Aceste caracteristici pun în evidenţă diferenţa existentă între
cunoştinţe şi date.
 Feigenbaum şi McCorduck [1983] ilustrează această diferenţă prin
următorul exemplu.
 Un medic care tratează un pacient foloseşte cunoştinţe şi date.
Datele sunt reprezentate de fişa pacientului: simptome, boli
anterioare, tratament prescris, reacţie la tratament, etc.
 Cunoştinţele utilizate în tratarea pacientului reprezintă tot ceea ce
medicul a învăţat în facultate şi în decursul intregii lui cariere prin
practică, studiu, experienţă, în legătură cu modul de vindecare a
bolii.
 Aceste cunoştinţe se referă la fapte, teorii, tratament si, cel mai
important, la cunoştinţe euristice.
 Astfel, cunoştinţele necesită şi includ utilizarea datelor dar sunt
mai mult decât acestea.
32

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