Bazele inteligenței artificiale

Laborator
9/10 (2 voturi)
Domeniu: Calculatoare
Conține 10 fișiere: pdf
Pagini : 39 în total
Cuvinte : 9413
Mărime: 320.22KB (arhivat)
Publicat de: Octaviu Costea
Puncte necesare: 0

Extras din laborator

Laboratorul numarul 1

Introducere în Limbajul Prolog

Cuvantul PROLOG vine de la PROgraming in LOGic. Prologul este un limbaj

declarativ, aceasta însemnând ca un program nu descrie cum se calculeaza o solutie, ci

consta din o multime de fapte si legaturi logice (reguli) care descriu relatiile pe care se

bazeaza aplicatia de rezolvat. În Prolog, pentru obtinerea unei solutii, utilizatorul pune

mai degraba o întrebare decât sa ruleze programul. Când se pune o întrebare, sistemul

cauta în baza de fapte si reguli pentru a gasi, prin deductie logica, raspunsul.

Cum lansam Prologul?

Pentru dezvoltarea programelor, vom folosi implementarea SWI-PROLOG.

Lansarea acestuia se face apasând butonul Start si efectuând selectiile Programs -> SWI

Prolog -> SWI Prolog. Pe ecran va apare fereastra aplicatiei si prompterul ? care arata ca

programul asteapta comenzi.

Comenzi uzuale

? – pwd.

Afiseaza directorul curent.

?-ls.

Afiseaza fisierele din directorul curent.

?-cd(’cale’).

Schimba directorul curent.

Exemplu:

?-cd(’c:/windows’).

Directorul curent devine c:windows.

?-halt.

Aceasta comanda încheie sesiunea de lucru curenta în SWI-Prolog.

Important: fiecare enunt în Prolog se termina cu caracterul punct (.).

Pentru a se afisa informatii cu privire la o comanda, apelam

?-help(nume_comanda).

Exemplu:

?-help(halt).

Faptele

Faptele reprezinta cea mai simpla forma de predicat din Prolog. Sintaxa pentru

fapte este urmatoarea:

nume_relatie(arg1, arg2, …, argN).

unde

nume_relatie este numele relatiei (al predicatului)

arg1, arg2, … - argumentele

N reprezinta aritatea predicatului nume_relatie.

Bineînteles, orice fapt se incheie cu punct (.). Un predicat de aritate 0 se poate

defini simplu: nume_predicat.

2

Exemplu de fapt:

frate(dan, maria).

’frate’ reprezinta numele relatiei, iar dan si maria reprezinta argumentele care fac

parte din aceasta relatie. Important de observat este ca atât numele relatiei, cât si

constantele ’dan’ si ’maria’ sunt scrise începând cu litera mica.

Exemplu

Sa presupunem ca ave m relatiile existente dintr-o familie si vrem sa punem

întrebari de genul ”este marian înrudit cu …” sau ”spuneti care sunt toate surorile lui

marian” s.a.m.d.

Ca argumente vom avea oameni, iar proprietatile pe care vrem sa le definim vor fi

tata, mama, frate, sora, …. Alegem trei predicate de baza, barbat, femeie si parinte si în

functie de ele vom descrie relatiile dintr-o familie.

Presupunem ca avem ca exemplu urmatoarea familie:

Andrei

Cristi Elena

Ana

Adriana Marius Ovidiu

George

În Prolog, reprezentam aceasta sub forma de fapte astfel:

barbat(andrei).

barbat(cristi).

barbat(marius).

barbat(ovidiu).

barbat(george).

femeie(adriana).

femeie(elena).

femeie(ana).

parinte(andrei, cristi).

parinte(andrei, elena).

parinte(cristi, adriana).

parinte(cristi, marius).

parinte(cristi, ovidiu).

parinte(elena, ana).

parinte(ana, george).

Preview document

Bazele inteligenței artificiale - Pagina 1
Bazele inteligenței artificiale - Pagina 2
Bazele inteligenței artificiale - Pagina 3
Bazele inteligenței artificiale - Pagina 4
Bazele inteligenței artificiale - Pagina 5
Bazele inteligenței artificiale - Pagina 6
Bazele inteligenței artificiale - Pagina 7
Bazele inteligenței artificiale - Pagina 8
Bazele inteligenței artificiale - Pagina 9
Bazele inteligenței artificiale - Pagina 10
Bazele inteligenței artificiale - Pagina 11
Bazele inteligenței artificiale - Pagina 12
Bazele inteligenței artificiale - Pagina 13
Bazele inteligenței artificiale - Pagina 14
Bazele inteligenței artificiale - Pagina 15
Bazele inteligenței artificiale - Pagina 16
Bazele inteligenței artificiale - Pagina 17
Bazele inteligenței artificiale - Pagina 18
Bazele inteligenței artificiale - Pagina 19
Bazele inteligenței artificiale - Pagina 20
Bazele inteligenței artificiale - Pagina 21
Bazele inteligenței artificiale - Pagina 22
Bazele inteligenței artificiale - Pagina 23
Bazele inteligenței artificiale - Pagina 24
Bazele inteligenței artificiale - Pagina 25
Bazele inteligenței artificiale - Pagina 26
Bazele inteligenței artificiale - Pagina 27
Bazele inteligenței artificiale - Pagina 28
Bazele inteligenței artificiale - Pagina 29
Bazele inteligenței artificiale - Pagina 30
Bazele inteligenței artificiale - Pagina 31
Bazele inteligenței artificiale - Pagina 32
Bazele inteligenței artificiale - Pagina 33
Bazele inteligenței artificiale - Pagina 34
Bazele inteligenței artificiale - Pagina 35
Bazele inteligenței artificiale - Pagina 36
Bazele inteligenței artificiale - Pagina 37
Bazele inteligenței artificiale - Pagina 38
Bazele inteligenței artificiale - Pagina 39

Conținut arhivă zip

  • Laborator 1.pdf
  • Laborator 10.pdf
  • Laborator 2.pdf
  • Laborator 3.pdf
  • Laborator 4.pdf
  • Laborator 5.pdf
  • Laborator 6.pdf
  • Laborator 7.pdf
  • Laborator 8.pdf
  • Laborator 9.pdf

Alții au mai descărcat și

Prolog

Una din principalele idei ale programarii logice este aceea ca un algoritm este constituit din doua elemente disjuncte: logica si control....

Curs IT

1. HARDWARE (HARD): Reprezinta totalitatea componentelor materiale ale unui sistem informatic. 2. SOFTWARE (SOFT): Reprezinta totalitatea...

Inteligență Artificială

3.1 Istoric Întrebări 1. Cine este considerat părintele Lisp-ului? 2. Care este anul de naştere pentru Lisp? Limbajul LISP este considerat...

Conceptele Fundamentale ale Limbajelor de Programare

INTRODUCERE Obiectul disciplinei: limbajele de programare Obiective: · Studiul conceptelor fundamentale care stau la baza proiectării...

Laboratoare optoelectronică

DISPOZITIVE OPTOELECTRONICE 1. Scopul lucrarii În lucrare se determina caracteristicile curent tensiune pentru urmatoarele tipuri de dispozitive...

Îndrumător în EXCEL

1. Consideraţii generale Rezultatele cercetărilor experimentale pot fi reprezentate sub formă de tabele, grafice sau ecuaţii. În general, în...

Structuri de Date și Algoritmi

Curs 1 Structuri de date Structurile de date erau definite în limbajul C drept organizarea datelor primare. În limbajul C++, acestea reprezinta o...

Te-ar putea interesa și

Sistem expert - diagnosticare boală pentru pești de apă dulce (acvariu)

1. Introducere 1.1 Locul sistemelor expert în cadrul sistemelor inteligente În cazul multor probleme economice, forma algoritmizată este...

Publicitatea și Promovarea prin Internet

1.1 Reteaua Internet Internet-ul reprezinta mai mult decât o retea uriasa ce uneste milioane de calculatoare. El constituie o retea de retele si...

Inteligența Artificială

Capitolul 1 Introducere 1.1 Concepte de baza Când s-a vorbit prima data de Inteligenţa Artificială (AI – Artificial Intelligence) în 1956, totul...

Managementul bazat pe cunoștințe

Managementul bazat pe cunostinte s-a conturat in ultimul deceniu, fiind zona cea mai dezvoltata a managementului. Cristalizarea sa are loc in...

Transportul și Distribuția Energiei Electrice

I. SCURT ISTORIC Inteligenţa artificială porneşte de la premisa căreia toate activităţile cognitive pot fi modelate că procese de calcul....

Prolog limbaj de programare logică

In domeniul programarii calculatoarelor este cunoscuta urmatoarea clasificare a limbajelor de programare: limbaje algoritmice (PASCAL, FORTRAN,...

Procesoare AMD

Un istoric al aparitiei calculatoarelor Calculatoarele electronice sunt urmasele unor dispozitive de calcul mai rudimentare dar foarte ingenioase,...

Ai nevoie de altceva?