Documente Academic
Documente Profesional
Documente Cultură
1 Introducere
1.1 Denie
Inteligena Articial este un termen tehnic provenit din limba englez: Articial Intelligence, prescurtat AI, care desemneaz un domeniu de cercetare n cadrul informaticii. n vorbirea curent este un produs rezultat n urma desfurrii acestei activiti. Sintagma Inteligenei Articiale este pronunat pentru prima oar n 1956 la conferina de la Darthmouth, Canada. Deniia cea mai acceptat a inteligenei articiale a fost dat de John McCarthy n 1955: "main care se comport ntr-un mod care ar putea considerat inteligent, dac ar vorba de un om.". O alt deniie a Inteligenei Articiale este dat de Barr & Feigenbaum (Barr, Feigenbaum, 1981): IA este stiina, parte a informaticii, care proiecteaz sisteme articiale cu comportament inteligent, adic sisteme ce manifest proprieti pe care n mod obinuit le asociem cu existena inteligenei n comportamentul uman - nelegerea limbajului, nvare, raionament, rezolvarea problemelor .a.m.d. Astfel de sisteme pot rspunde exibil n situaii ce nu au fost anticipate de programator. O trstur des ntlnit a inteligenei articiale este capabilitatea sistemul respectiv de a nvea, cu sau chiar fr ajutoare externe, cu scopul de a se mbunti permanent.
lege a lui Moore ("numrul de tranzistori pe un circuit integrat se va dubla la ecare 18 luni, prin urmare i puterea de calcul"). Pentru viitor se sper c noile tehnologii (cuantice, optice, holograce, nanotehnologiile .a.) vor permite meninerea creterii exponeniale, astfel c n maximum 20 de ani computerele s depeasc puterea de procesare a creierului uman.
n anii 1980 s-a ajuns la concluzia c ambele abordri au limitri severe, cercetarea n acest domeniu ind parial abandonat din lipsa de nanare. Astzi Inteligena Articial implic numeroase domenii. Prelucrrile simbolice (symbolic processing ) reprezint componenta cu preocupri de programare a domeniului. Ea a dus la dezvoltarea unor limbaje specializate n prelucrarea simbolurilor, cel mai cunoscut dintre ele ind Lisp. Fr a neglija aspectele clasice ale programrii, cum ar utilizarea numerelor n calcule, n toate aceste limbaje se pune un accent deosebit pe manipularea simbolurilor. Procesare simbolic i limbaje de procesare simbolic. n general se accept c sistemele inteligente din natur prelucreaz dou tipuri de informaii: de natur simbolic sau concentrat i de natur difuz, distribuit. Manipularea simbolurilor necesit un aparat logic i un suport adecvat de calcul. Aparatul logic este dat de logica simbolic care reprezint att un model de formalizare a cunostinelor ct i o metod de raionament. Suportul este asigurat de limbajele de procesare simbolic capabile a simula un comportament adecvat prelucrrilor simbolice mulat pe natura slab simbolic a mainii. Dintre acestea, putem identica: Lisp n paradigma funcional, Prolog n paradigma logic i Clips n paradigma bazat pe reguli1. Reprezentarea cunoaterii (knowledge representation ). Reprezentarea implic, n principiu, trei componente: o notaie, o denotaie i un calcul. Notaia este un desen, sau o structur de date, care respect anumite convenii (date de obicei de o sintax). Conotaia, sau semantica, este interpretarea pe care o dm notaiei, din nou pe baza unui sistem de convenii. O reprezentare trebuie s includ un model computaional care s fac posibil operarea cu obiectele i relaiile dintre obiecte ce compun reprezentarea. Datorit modelului de calcul entitile modelate prind via, putndu-se studia astfel comportamentul lor n condiii ce simuleaz de aproape realitatea. Raionament automat i demonstrarea teoremelor (theorem proving, problem solving ). Cea mai veche ramur a IA i cea mai teoretic dintre ele, utilizeaz logica ca sistem formal de gsire a demonstraiilor i de generare a inferenelor automate. Foarte multe probleme pot formalizate ca probleme de matematic sau logic, rezolvarea lor reducndu-se la o demonstrare a unei teoreme plecnd de la un sistem de axiome i utiliznd un mecanism de deducie logic. nelegerea limbajului natural (natural language processing ). Este de mult acceptat c utilizarea limbajului este o caracteristic denitorie a inteligenei. n domeniul nelegerii limbajului natural trebuie nti stabilit o distincie ntre a nelege un mesaj comunicat prin voce i a nelege un mesaj scris. De prima chestiune se ocup domeniul de cercetare al interpretrii vorbirii (speech processing). Problema nelegerii limbajului n varianta scris face obiectul a dou tipuri de preocupri. Lingvistica computaional pe de o parte, ca domeniu pur academic, pune n discuie modele computaionale ale limbajului natural cu scopul de a investiga si descoperi natura nsusi a limbajului si a abilitilor cognitive umane. Ingineria Lingvistic (sau n varianta predominant american, Tehnologia Limbajului Uman), pe de alt parte, este 3
preocupat de a dezvolta aplicaii care se bazeaz pe utilizarea limbajului natural, orientate spre industrie, comer, sfera socialului sau cea educaional. Vederea articial (vision ).Dintre cele cinci de care omul dispune pentru a interactiona cu mediul, vederea ocup un loc privilegiat. Sistemele de vedere articial ncearc s descifreze mecanismele vederii i ale interpretrii imaginilor statice i n micare. Planicare i robotic (robotics ). Sistemele inteligente vii au abilitatea de a gsi soluii de deplasare n spaiu n vederea atingerii unor obiective sau de mutare a unor obiecte folosind braele. Cutarea unui drum pe un teren accidentat (lunar, de exemplu, sau pe fundul oceanelor) sau ntr-un spaiu presrat cu obstacole (cum este o camer) nu este o problem simpl, nu n ultimul rnd datorit numrului mare de posibiliti de alegere la ecare pas, complexitate ce face imposibil tentativa cutrii exhaustive. ncercnd a modela procesele cognitive care se desfsoar n sistemele vii, planicarea roboilor este un cmp de cercetare care urmreste a mbunti comportamentul roboilor atunci cnd ei sunt programai a executa diferite sarcini. nvare automat (learning ). Un sistem nzestrat cu inteligen este capabil s nvee pentru a-i mbunti interaciunea cu mediul. El poate nva e din greeli, prin autoperfecionare, e ghidat de un profesor, e generaliznd, e prin analogie, sau din exemple pozitive i negative. Domeniul nvrii automate formalizeaz aceste metode i caut aplicarea lor la sistemele automate. Sisteme expert (expert systems ). Puterea st n cunoatere. Aplicarea acestui truism n sisteme articiale nseamn dotarea lor cu abilitatea de a se servi, de cunoastere specic (cunoastere expert). Un medic este bun n gsirea unui diagnostic pentru c are un bagaj de cunostine generale dar i specice despre boli i bolnavi. Parial aceast cunoastere a deprins-o din cri, parial n cursul anilor de experien clinic, prin attea cazuri n care s-a implicat. Achiziionarea, formalizarea i includerea cunoaterii expert n sistemele articiale reprezint scopul domeniului Sistemelor Expert.
legilor zicii);
raionament automat, demonstrarea de teoreme; vericarea programelor; sistemele inteligente hibride; vocea electronic sintetizat; recunoaterea automat a formelor (inclusiv a scrisului, a sunetelor i vorbitului), numit
mai continua la un moment dat duce, inevitabil, la oprirea cutrii i deci esec. Este ca i cum as cunoaste deja soluia i atunci m ndrept direct spre ea. Dar ce sens mai are cutarea dac cunosc deja soluia Distincia provine din gradul de cunoatere a soluiei problemei: cunoastere global (imaginai-v gsirea drumului ntr-un labirint privit dintr-un balon) fa de cunoatere local (labirintul privit de un om aat n el). Un sistem de IA care lucreaz cu o strategie irevocabil are o cunoastere local a problemei, al aplicnd o manier general de comportament n toate situaiile similare.
climbing )
Numele metodei este dat de analogia cu maniera de crare pe un deal a unui orb. El nu e capabil s vad vrful dealului unde trebuie s ajung dar poate gsi n orice moment, ncercnd la ecare pas n jurul lui cu bastonul, direcia care-l face s urce (Figura 1). Metoda ascensional caut s ating starea caracterizat de valoarea maxim a funciei euristice. Ea nu garanteaz gsirea unei soluii din cauz c anumite probleme pot avea maxime locale sau platouri, dup cum se sugereaz n Figura 2.
Figura 2: Maxime locale, iar uneori platouri, opresc naintarea spre soluie
hill climbing )
Caracteristic pentru aceast metod este faptul c utilizeaz o stiv n care memoreaz la ecare pas strile vecine diferite de cea n care efectueaz tranziia. Stiva este apoi folosit pentru a recupera din ea alte stri n cazurile n care cutarea se "aga" n "fundturi" de genul minimelor locale sau a strilor fr succesori. Caracteristica de ntoarcere sau "luare a urmei napoi", care este sugerat de numele metodei, nu trebuie neleas strict n sensul revenirii, n situaiile de blocare, n stri prin care s-a mai trecut, ci de memorizare a unor ci care se ignoraser la momentul deciziilor, pentru a putea reluate la momente ulterioare 5
zeaz o stiv pentru memorarea strilor posibil de atins din starea curent. Prin aceasta, nainte de a cuta n fraii unui nod (stare), nti ii acestuia sunt cutai. Aceast ordine este dictat de faptul c, dup vizitarea unui nod, nti acesta este eliminat din stiv i apoi ii acestuia sunt introdui n stiv. Datorit caracteristicii last-in-rst-out ei vor parcursi naintea altor noduri aate deja acolo. Cnd spaiul strilor este un arbore, cutarea nti-nadncime parcurge arborele cu predilecie n adncime, de unde i numele metodei.
Cutarea cel-mai-bun-nti (best-rst) Dintr-un anumit punct de vedere, metoda de cutare cel-mai-bun-nti (bestrst) poate considerat o combinare a metodelor depth-rst i breadth-rst. Ca i primele dou i aici avem o structur care memoreaz nodurile ce urmeaz a vizitate. Aceast structur este aici o list, fr organizarea particular de stiv sau coad. Spre deosebire ns de metodele menionate, n cazul metodei cel-mai-bun-nti trebuie fcut o apreciere a unui nod, printr-un scor atasat lui, ce caracterizeaz distana pn la un nod nal, sau dicultatea de a atinge soluia. Astfel vzut, un scor mic caracterizeaz o stare apropiat de nal, iar un scor mare - una deprtat. La ecare pas lista se sorteaz n ordinea cresctoare a scorurilor nodurilor ei, ceea ce permite s se aleag pentru explorarea ce urmeaz cel mai promitor (mai aproape de soluie, sau mai usor de atins) nod dintre cele ce se nvecineaz cu nodurile deja vizitate. Ca i n cazul primelor dou metode, metoda poate aplicat n egal msur parcurgerii arborilor ori grafurilor. Recuperarea soluiei n metodele de cutare sistematic i euristic pe arbori n
toate procedurile prezentate pn acum am considerat c ne intereseaz n ieire doar nodul nal i nu calea pn la el. Aceast presupunere este ns n contradicie cu cele armate deja relativ la ce nseamn o soluie la o problem de IA spre deosebire de o problem din afara spaiului IA. Atunci cnd spaiul de cutare are structura unui arbore, generarea cii este simpl, dac ecare nod n structur are memorat o legtur ctre printe. Practic, parcurgnd napoi drumul din nodul soluie pn n nodul rdcin se obine inversa unei ci ctre soluie. Atunci ns
cnd arborele nu este explicitat ca o structur, el ind generat ad-hoc la parcurgerea spaiului, situaia se schimb. Calea spre soluie trebuie generat o dat cu efectuarea cutrii.
Mai avem de rezolvat o problem, i anume, cum se face recuperarea cii atunci cnd structura e un graf iar nu un arbore. Problema revine la calculul drumurilor de cost minim n grafuri, considerat o problem clasic de cutare n grafuri, dar, n acelai timp, i o problem de IA. n general, n problemele de acest gen, aprecierea costurilor este fcut de o funcie euristic f care exprim costul ca o sum a dou valori:
g un cost al traversrii grafului din nodul start pn n nodul curent, i h un cost al estimrii traversrii grafului din nodul curent pn ntr-un nod nal: f =g+h
Toate valorile funciilor g i h trebuie s e pozitive. Evident c precizia funciei euristice reect cantitatea de informaie pe care ea o incorporeaz relativ la domeniul problemei. O funcie h identic nul reect lips total de informaie asupra problemei (cazul n care nu se poate face nici o estimare asupra aproprierii de soluie a unei stri). Urmtoarea procedur este o variant a cutrii best-rst, cunoscut sub numele de algoritmul A (Hart, et al., 1968). Procedura genereaz att o parte a grafului strilor problemei ct i un subset al su numit arbore de cutare (aadar, n care ecare nod are un unic printe). La ecare pas al iteraiei exterioare, nodurile din open reprezint noduri frunz ale arborelui de cutare. n derularea algoritmului, nu numai c arborele de cutare se extinde n graful generat dar i poate schimba i forma n aa fel nct unele noduri i modic prinii. Cnd o frunz a arborelui de cutare atinge un nod nal, atunci cutarea se termin i pentru c ecare nod al acestui arbore i cunoate printele, soluia este dat de calea invers de la nodul nal la nodul de start.
Bibliograe
[1] lb1) Dan Cristea Curs de Inteligen Articil. Universitatea "Alexandru Ioan Cuza" din Iai, 2007. [2] lb2) http://ro.wikipedia.org/wiki/, Inteligen Articil.
10