Limbaje de Programare Utilizate în Inteligenta Artificială

Referat
8/10 (1 vot)
Conține 1 fișier: doc
Pagini : 13 în total
Cuvinte : 6044
Mărime: 45.79KB (arhivat)
Puncte necesare: 7
Profesor îndrumător / Prezentat Profesorului: Mirica Ion

Cuprins

  1. Introducere 3
  2. Reprezentarea cunostintelor 4
  3. Limbaje de programare în inteligenta artificiala 5
  4. Limbajul CLIPS 6
  5. Limbajul PROLOG 8
  6. Limbajul LISP 9
  7. Tipuri de date în LISP 12
  8. Construcţiile limbajului 13
  9. Bibliografie 14

Extras din referat

INTRODUCERE

Obiectul inteligenţei artificiale este obţinerea de artefacte care să se comporte inteligent, similar unui om. Câteva exemple binecunoscute de astfel de artefacte sunt roboţii antropomorfi, programele de jucat şah, calculatoarele care pot dialoga într-un limbaj similar celui uman, programele de traducere automată sau de regăsire a textelor relevante pe Internet.

În funcţie de ideea fundamentală acceptată, în inteligenţa artificială sunt două abordări (nu neapărat antagoniste). Abordarea conexionistă se bazează pe ideea că inteligenţa este “emergentă” reţelelor neuronale deosebit de complexe. Pe de altă parte, abordarea simbolică, bazată pe aşa numita ipoteză a sistemelor simbolice fizice a lui H. Simon şi A. Newell (Stefik 1995), consideră că orice sistem inteligent (natural sau artificial) este un sistem fizic de prelucrare a simbolurilor.

Fiecare din cele două abordări are realizări şi limite. De exemplu, reţelele neuronale artificiale au fost folosite cu succes în recunoaşterea imaginilor sau a vocilor. Ele au limitări însă în înţelegerea limbajului uman, problemele sintaxei şi a semanticii combinaţionale, a compoziţionalităţi fiind foarte greu de tratat (Fodor 1988). Un exemplu al lui Jerry Fodor se referă la exprimarea “rachetă antirachetă” (Anderson et al., 1990b, pag. 601), care este imediat înţeleasă de oamenii care nu au mai auzit-o, fapt foarte greu de explicat prin simple asociaţii (conform modelului ABC- Asociaţionism, Behaviorism, Conexionism, care stă la baza reţelelor neuronale artificiale (Dennett 1998 pag. 103).

Înţelegerea exprimării de mai sus poate fi foarte uşor explicată prin abordarea simbolică, în care se postulează existenţa unui “limbaj al gândirii” (Anderson et al. 1990a, pag. 600). Avantajul reprezentării simbolice este foarte bine exprimat şi de Daniel C. Dennett (Op. cit. pag.152):

“Simbolurile, spre deosebire de nodurile ţesute în reţelele conexioniste, sunt mobile; ele pot fi manipulate; ele pot forma structuri mai mari, în care contribuţia lor la sensul întregului poate fi o funcţie definită, generabilă, a structurii - a structurii sintactice - a părţilor.”

În abordările simbolice de inteligenţă artificială, prelucrările sunt efectuate de un program care manipulează cunoştinţe dintr-o aşa numită bază de cunoştinţe. Programele de calcul, în acest caz, sunt denumite sisteme bazate pe cunoştinţe, caracteristica lor definitorie fiind că există o separare netă între baza de cunoştinţe (care poate fi dezvoltată incremental în timp sau chiar total înlocuită cu alta) şi un mecanism de efectuat raţionamente. Una din cele mai grele probleme ale dezvoltării unui astfel de sistem este construirea bazei de cunoştinţe, aşa numita achiziţie de cunoştinţe.

Bazele de cunoştinţe pot deveni nebănuit de mari. De exemplu, pentru înţelegerea unor propoziţii în limbajul uman este necesar un volum nebănuit de mare de cunoştinţe de “bun simţ”, pe care le ştie şi un copil de câţiva ani dar care sunt foarte greu de introdus într-un program. Astfel, înţelegerea instantanee de către noi a propoziţiei “Am văzut Statuia Libertăţii zburând deasupra New-York-ului!” în sensul că vorbitorul zbura (şi nu statuia), este foarte greu de realizat de calculator (pentru că ar trebui să ştie, de exemplu, că statuile nu zboară).

În inteligenţa artificială există divergenţe de opinii referitoare la mai multe probleme esenţiale. După părerea noastră, aceste dispute sunt datorate câtorva aspecte esenţiale care pun sub semnul întrebării posibilitatea realizării de roboţi cu “viaţă psihică” sau conştiinţă, elemente determinante în considerarea unui robot ca fiind egal omului.

REPREZENTAREA CUNOŞTINŢELOR

Noţiunea de “cunoaştere” poate fi definită în variate moduri. Spre deosebire de informaţie, noţiune centrală în informatică (de unde şi termenul de IT - “information technology” - “tehnologia informaţiilor”), cunoaşterea era, în acest domeniu, până de curând, specifică doar subdomeniului inteligenţei artificiale. În acest context, cunoaşterea are o semnificaţie bine precizată. Conform definiţiei lui Alan Newell, unul din pionierii şi teoreticienii inteligenţei artificiale, cunoaşterea este ceea ce poate fi atribuit unui agent uman sau artificial (un program de calculator autonom care interacţionează cu mediul său înconjurător) astfel încât comportarea sa să poată fi catalogată drept raţională (Newell 1982). În consecinţă, am putea spune că societatea cunoaşterii este populată cu agenţi (din care mulţi sunt agenţi artificiali, adică programe de calculator) care acţionează raţional. O observaţie importantă în acest sens este că o comportare raţională este o comportare predictibilă (cu conotaţie pozitivă, de situare într-un mecanism), ducând la posibilitatea cooperării între agenţi în vederea atingerii unor scopuri comune. Cunoaşterea adaugă la informaţie un înţeles, asociază o acţiune.

Totodată, la mijlocul anilor ’70, la circa două decenii de cercetări în inteligenţă artificială, s-a ajuns la concluzia că reprezentarea şi prelucrarea cunoştinţelor este esenţială în asigurarea inteligenţei.

Tot Newell în lucrarea “Nivelul cunoştinţelor” (Newell 1982), postulează că, în universul ştiinţei calculatoarelor, există un nivel separat, al cunoştinţelor, situat deasupra nivelului programelor (denumit şi nivelul simbolic), nivel care, la rândul lui este situat deasupra celor specifice “hardware”-ului (“transferul între regiştrii, circuitele logice, circuitele şi dispozitivele). Trecerea la noul nivel, al cunoştinţelor, este noutatea adusă şi de societatea cunoştinţelor faţă de cea a informaţiei.

După postularea noului nivel, Alan Newel trece la caracterizarea acestuia. La acest nivel sunt identificate scopuri, acţiuni şi corpuri de cunoştinţe. Prin corespondenţă, considerăm că societatea cunoaşterii trebuie să fie definită în termeni de scopuri, acţiuni şi corpuri de cunoştinţe. Aceleaşi elemente se regăsesc şi la agenţii artificiali inteligenţi. Corpurile (bazele) de cunoştinţe sau ontologiile sunt definitorii pentru aplicaţiile bazate pe cunoştinţe.

În contextul programelor de calculator “clasice”, cunoştinţele sunt, în cea mai mare majoritate, încorporate implicit în program. Multe din ele sunt înglobate în teoriile matematice care stau la baza programelor. Alte cunoştinţe sunt implicite în algoritmii implementaţi sau în construcţiile scrise în limbajul de programare.

Orice program de calculator înglobează o cantitate de cunoştinţe referitoare la problema de rezolvat şi la domeniul căruia aparţine acea problemă. Pentru exemplificare să considerăm cazul unui program de sortare (ordonare) a unei secvenţe de numere memorate într-un vector. Analizând un program pentru rezolvarea acestei probleme din perspectiva cunoştinţelor implicate, se pot face următoarele precizări:

- Programul înglobează cunoştinţe referitoare la faptul că, pentru a sorta nişte numere (sau, în general, chei sau elemente), o abordare posibilă este de a compara cheile între ele şi a le interschimba pentru a le aduce la locul lor în secvenţa finală.

- Algoritmul (scenariul) de sortare, care a stat la baza programului, este obţinut ca o consecinţă a cunoştinţelor referitoare la schemele posibile de rezolvare a unei probleme. În particular, de exemplu, algoritmul particular de sortare prin interclasare este o consecinţă a ideei că o abordare utilă în multe cazuri este de a descompune problema iniţială în subprobleme mai simple care apoi sunt recompuse în soluţia finală ("divide et impera").

- Algoritmul foloseşte cunoştinţe procedurale de genul că, pentru a schimba două elemente între ele, metoda uzuală este de a folosi o variabilă temporară şi de a face o permutare circulară între valorile celor două elemente şi a variabilei temporare.

- Implementarea algoritmului într-un anumit limbaj implică, în plus, cunoştinţe asupra respectivului limbaj.

Preview document

Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 1
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 2
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 3
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 4
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 5
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 6
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 7
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 8
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 9
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 10
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 11
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 12
Limbaje de Programare Utilizate în Inteligenta Artificială - Pagina 13

Conținut arhivă zip

  • Limbaje de Programare Utilizate in Inteligenta Artificiala.doc

Alții au mai descărcat și

Proiect la Inteligență Artificială

1. ASPECTE GENERALE PRIVIND DOMENIUL INTELIGENTEI ARTIFICIALE Inteligenta artificiala (IA) s-a nascut în urma cu aproximativ 45 de ani, ca domeniu...

Conceptul de cunoștințe în inteligența artificială

1.Prezentare generala: Inteligenta artificiala reprezinta un domeniu al stiintei calculatoarelor care s-a constituit in scopul emularii...

Baze de Date Multimedia

Baze de date multimedia Definirea conceptelor. Aplicatii. Data base - baza de date - este un grup de fisiere în care este înregistrata o multime...

Inteligența Artificială Aplicată în Sistemele Tehnice

Inteligenţa artificială 1• Concepte de baza Inteligenţa Artificială poate fi definită ca simularea inteligenţei umane procesată de maşini, în...

Aplicații Client Server

Aplicatii client server Studiu de caz- Solutie de gestiune a Resurselor Umane si Salarizarii Solutiile de gestiune economica Mobius, sunt...

Evenimente Naturale care se Autoconsolideaza prin Circuite de Feedback

“Feedback-ul este ceea ce lipsea din stiinta, in afara lui Newton”, spunea omul de stiinta britanic Steve Grand. “Noi credeam ca este un fenomen...

Cursuri inteligență artificială

1.1. Introducere Termenul de inteligenţă artificială a fost folosit pentru prima dată în 1956 de omul de ştiinţă american John McCarthy. Până...

Sisteme bazate pe cunoștințe în conducerea proceselor

Programul realizeaza determinarea procesului de incalzire ,respectiv racire intr-o camera si a timpului (maxim respectiv minim) in functie de trei...

Te-ar putea interesa și

Sistem Inteligent de Gestiune a Datelor

Preambul Înţelegerea mecanismelor vieţii şi în special ale inteligenţei umane a constituit o preocupare permanentă a multor categorii de...

Utilizarea rețelelor neurale în prognozarea cursului valutar

Introducere Preocuparea specialiştilor de a crea programe pentru calculatoarele "inteligente" - sisteme care prezintă caracteristici asociate cu...

Implicații ale Inteligenței Artificiale în Dezvoltarea Proceselor de Afaceri

i. Obiectivele lucrĂrii Lucrarea de faţă, intitulată “Implicaţii ale inteligenţei artificiale în dezvoltarea proceselor de afaceri”, doreşte să...

Inteligența Artificiala

Obiective si contextul actual al temei Când s-a vorbit prima data de Inteligenţa Artificiala(AI-Artificial Intelligence) în 1956,totul părea o...

Interfața IDE

Argumentare O caracteristica a speciei umane este capacitatea de a inventa unelte si masini care sa-i faciliteze muncile dificile sau periculoase....

Subiecte Posibile - Sisteme Expert

1. Prezentati sumar domeniile care au contribuit la fundamentarea inteligentei artificiale si enuntati criteriile care diferentiaza programele de...

Instruire asistată de calculator în cadrul educației fizice

Aparitia si dezvoltarea calculatoarelor electronice a reprezentat o adevarata revolutie in societatea umana, avand ca principala consecinta...

Robotică

1. INTRODUCERE 1.1. Terminologia de baza Elemente si articulatii: Elementele sunt partile solide ale structurii unui robot iar articulatiile...

Ai nevoie de altceva?