Direcţii de cercetare în Inteligenţa Artificială:
Încă de la începutul cercetărilor de Inteligenţă Artificială s-au conturat două direcţii fundamentale de cercetare. Pe de o parte s-a urmărit realizarea de maşini capabile să reproducă funcţiile cognitive ale minţii umane. Astfel de maşini inteligente au fost numite “creiere umane”. Literatura S.F. a creat un adevărat mit al creierului artificial. Pe de altă parte s-a încercat realizarea de programe care să permită prelucrarea simbolică a informaţiilor (cunoştinţelor).
Prezentarea în 1956 a demonstratorului automat de teoreme şi programul jucător de şah au consolidat direcţia prelucrării simbolice. În cadrul acestei direcţii s-au realizat primele programe inteligente capabile de performanţe intelectuale surprinzătoare, cum ar fi substituirea experienţei unui specialist. În momentul de faţă se apreciază că această direcţie este oarecum în impas; deoarece rezultatele se consideră a fi modeste în raport cu investiţiile de bani şi inteligenţă (naturală) făcute pentru dezvoltarea acestor cercetări.
Cea de a doua direcţie se bazează pe ideea că se pot construi maşini inteligente pornind de la modele ale activităţii neuronale. McCulloch şi Pitts au propus în 1943 un model extrem de simplu al activităţii neuronale. Mai apoi a fost realizată o reţea neuronală artificială. Această reţea, numită perceptor, putea să modeleze procese de percepţie şi unele procese simple de învăţare. A fost prima realizare nobilă a direcţiei conexioniste în inteligenţa Artificială. Deoarece s-a părut că această direcţie nu este prea fructuoasă, ea a fost abandonată la jumătatea anilor ’60. Cercetările au fost reluate la începutul anilor ’80. Au fost propuse noi modele şi s-au realizat reţele neuronale capabile să îndeplinească sarcini extrem de dificile, cum ar fi recunoaşterea cuvintelor, sinteza vorbirii (pornind de la un text scris) etc.
Aceste două direcţii nu sunt de fapt atât de ermetic separate precum am fi tentaţi să credem. O serie de noţiuni, metode şi rezultate circulă între aceste două direcţii. deşii nu sunt încă obişnuite, putem gândi sisteme ce combină o reţea neuronală şi un sistem expert. Astfel de realizări practice ar putea fi calea spre o sinteză a celor două direcţii şi spre un nou progres al cercetătorilor de Inteligenţă Artificială.
Metode de rezolvare a problemelor:
Introducere:
Cele mai multe probleme mai multe probleme de interes ale inteligenţei artificiale sunt prea complexe pentru a putea fi rezolvate prin tehnici directe. În general, ele pot fi abordate folosind metode de căutare adecvate, dublate, acolo unde este posibil, de metode directe care să ghideze căutarea. Aceste tehnici sunt varietăţi de căutare euristică. Când sunt aplicate pe o problemă dată, tehnicile sunt eficiente în măsura în care folosesc cunoştinţele specifice domeniului. Acest lucru se datorează faptul că sunt incapabile să stăpânească explozia combinatorială la care procesele de căutare sunt vulnerabile.
Orice proces de căutare poate fiind parcurgerea unui graf orientat în care fiecare nod reprezintă o stare a problemei şi fiecare arc reprezintă o relaţie între stările reprezentate de nodurile pe care arcul le uneşte. Scopul procesului de căutare este să găsească în graf un drum care pleacă dintr-o stare iniţială şi ajunge într-o stare finală numită şi stare scop. Pentru cele mai multe probleme practice acest graf este prea mare. în plus, cea mai mare parte a sa nu este niciodată explorată. Din aceste motive graful este rareori construit explicit. De obicei programele de căutare reprezintă graful implicit prin reguli şi generează explicit numai acele părţi care trebuie explorate.
Probleme care apar în legătură cu tehnicile de căutare:
-
topologia procesului de căutare;
-
folosirea euristicilor pentru a orienta căutarea.
Raţionamentul înainte şi raţionamentul înapoi:
Pentru a determina un drum în spaţiul problemei de la o configuraţie iniţială la o stare finală procesul de căutare se poate desfăşura în două sensuri:
-
înainte, pornind de la o stare iniţială
-
înapoi, pornind de la o stare finală
Aceste două procese presupun două tipuri de raţionament: raţionamentul înainte şi raţionamentul înapoi. Pentru raţionamentul înainte arborele de căutare se construieşte pornind de la una sau mai multe configuraţii iniţiale ce corespund nodului rădăcină al arborelui. Se generează nivelul următor aplicând nodului rădăcină toate regulile compatibile. Procesul continuă până când este generată o configuraţie ce satisface starea finală. Acest tip de raţionament de aplică în jocul de şah şi în orice alt tip de problemă de acest fel. Pentru raţionamentul înapoi arborele de căutare se construieşte pornind cu o configuraţie scop situată în rădăcina arborelui. Se găsesc toate regulile a căror parte dreaptă se potriveşte cu nodul rădăcină. Acestea sunt regulile care ar putea fi aplicate pentru a genera starea scop. Procesul continuă până când se ajunge la una din stările iniţiale.
Metode de căutare:
Căutarea unei soluţii se face explicitînd o parte din graful stărilor astfel încât să conţină un drum soluţie. Când căutarea nu utilizează nici o informaţie asupra domeniului pentru a aprecia unde se află soluţia, căutarea se numeşte căutare oarbă. Căutarea oarbă este impracticabilă pentru problemele nebanale dar constituie o fundamentare a tehnicilor de căutare euristică. Căutarea în profunzime (în care se dezvoltă nodul cel mai curând generat) şi căutarea în lărgime (în care toate nodurile unui nivel sunt dezvoltate înaintea oricărui nod de la nivelul următor) sunt două exemple de algoritmi de căutare oarbă. cele două tipuri de căutare folosesc raţionamentul înainte.
Un alt tip de căutare este căutarea informată in care se foloseşte informaţia euristică pentru a alege cel mai promiţător nod. Acest nod va fi dezvoltat primul. De obicei alegerea este globală, adică se iau în considerare toate nodurile generate dar nedezvoltate încă. Este posibilă şi o alegere locală (se dezvoltă cel mai promiţător nod al ultimului nod dezvoltat). Această alegere a nodului “cel mai promiţător” se face pe baza unei funcţii de evaluare, f: NR, o funcţie cu valori reale definită pe mulţimea N a nodurilor. Funcţia de evaluare se poate alege astfel:
-
f(x) este distanţa de la nodul x la un nod final
-
f(x) estimează lungimea sau dificultatea întregului drum
-
f(x) este probabilitatea ca nodul x să se găsească pe cel mai bun drum, etc.
Cel mai simplu exemplu de algoritm care foloseşte căutarea informată este Greedy. În cazul acestui algoritm funcţia euristică estimează costul celui mai scurt drum de la nodul curent la nodul final.
Un alt exemplu de algoritm ce utilizează căutarea informată este algoritmul A (similar cu algoritmii de tip brench and bound). Considerăm că spaţiul stărilor se poate reprezenta sub forma unui graf. Algoritmul A se referă la problema găsirii drumului de cost minim ce leagă nodul start de un nod scop în graful spaţiului stărilor. Algoritmul A este un algoritm de căutare informată în spaţiul stărilor. Nodul ales pentru a fi dezvoltat este nodul pentru care funcţia de evaluare f atinge valoarea sa maximă. Funcţia de evaluare estimează costul drumului care trece prin nodul curent (se ţine cont şi de costul drumului de la nodul iniţial până la nodul curent).
Capitolul II
Învăţarea
Dostları ilə paylaş: |