8063591502

8063591502



Powstał w latach 50' na MIT. Autor: John McCarthy. Powstał w wyniku zamierzenia, żeby język programowania był uporządkowany (!). Chodziło o pewien rygorystyczny język, w którym nie byłoby zbyt dużo dowolności. Powstał język programowania oparty na teorii matematycznej funkcji rekurencyjnych Church'a. Czynnikiem rozwojowym dla LISP były początki badań nad sztuczną inteligencją. LISP był pod ręką i doskonalono go pod kątem sztucznej inteligencji. Wszystkie struktury zdecydowano się implementować w oparciu o listy {LISt Processing). Zaczęły powstawać także procesory LISPowe, dostosowane do przetwarzania struktur listowych w pamięci. Wszystko razem komponowało się w sprawnie działającą całość. W efekcie, LISP jeszcze przed narodzinami PROLOGu stał się językiem dominującym w dziedzinie Al.

Na poziomie podstawowym języka nie ma procedur sprawnego przeszukiwania przestrzeni rozwiązań. Wypracowano natomiast odpowiednie biblioteki zawierające procedury przeszukiwania wprzód, w tył i mieszane. Zastosowanie bibliotek umożliwia sprawne kodowanie zagadnień sztucznej inteligencji. Dla porównania, mechanizmy tego typu są wbudowane w PROLOGu na poziomie podstawowym.

Przykład w PROLOGu:

Przykładowy program to prezentowany w zeszłym tygodniu program planowania akcji w świecie klocków.

plan (State, Goals, [], State) goals_achieved(Goals, State) plan(lnitState, Goals, Plan, FinalState) ...

PROLOG w porównaniu z LISP jest językiem deklaratywnym. Zapisujemy tylko to, co ma zostać rozwiązane, a nie to, jak ma to być rozwiązane.

1)    2) == zachodzi 1) gdy 2), lub 1) wynika z 2). Jest to odwrotny zapis implikacji,

odpowiednie reguły wnioskowania zapisujemy i dajemy je maszynie wnioskującej z wbudowanymi mechanizmami przeszukiwania, wnioskowania.

Przykład nr 2 w PROLOGu:

Przeszukiwanie grafu. Graf jest zdefiniowany przez szereg definicji łuków skierowanych:

arc(a,b).

arc(a,c).

arc(b,c).

arc(b,d).

arc(c,d).

Zdania prologowe są wyrażeniami rachunku predykatowego, pierwszego rzędu. Pierwszy symbol to symbol predykatowy p(a,b). p ma wartość T tylko wtedy, gdy zachodzi dla a i b.

Najprostsza konstrukcja w prologu jest to zdanie predykatowe (ważna kropka!). Bez kropki jest to tylko formuła (WFF - Weil Formed Formula). W taki sposób wpisane proste zdania rachunku predykatów to FAKTY.

Co to znaczy, że istnieje ścieżka w grafie? Jest to pewien związek: path (X, Y, [X,Y]):-arc(X,Y).

Pierwszy argument to początek ścieżki, drugi koniec, trzeci to sama ścieżka. Czyli jeżeli istnieje łuk od X do Y, To istnieje ścieżka o początku X, końcu Y, ścieżce [X,Yj.



Wyszukiwarka

Podobne podstrony:
ĆWICZENIA; Konspekt Zarys historii integracji 2 8. Realizacja integracji w latach 50. Powstanie Wspó
Image02 UFOLATAJĄCY SPODEK W latach 50-tych na terenie Stanów Zjednoczonych zaczęły pojawiać się
img037 (50) Zadanie 41. Otrzymane odszkodowanie od firmy ubezpieczeniowej na pokrycie strat w towara
11210 SNB13653 50 Osoby niepełnosprawne w Polsce w latach dziewięćdziesiątych Na podstawie analizy c
przedłużeniem ul. Kilińskiego i przetrwał do 1944 r. W latach 50-tych XX wieku zrealizowano istnieją
folder seksuologii2 ZABURZENIA EREKCJI NA TLE NEUROGENNYM 1 Powstajq w wyniku uszkodzenia włókien n
zdjęcie0 Mit lit na Mit lit MM HI m im Uli sa KIK lęiuiiur muiud tłumu i Kuni
Zdj?cie0979 ^zy ^lo^nikowe dzieli na ►i. Kompleksowe 2 Mieszane-powstająw wyniku mechanicznego zmies

więcej podobnych podstron