Anda di halaman 1dari 7

LAPORAN PRAKTIKUM KECERDASAN BUATAN MODUL II

DISUSUN OLEH NIM Nama : 115410209

: Harmoni Kurniawan Nuraditya

LABORATORIUM TERPADU
SEKOLAH TINGGI MANAJEMEN DAN INFORMATIKA AKAKOM YOGYAKARTA 2012

PERTEMUAN KE-2
DASAR DASAR PROLOG TUJUAN Mengetahui apa yang dimaksud logika(PROgramming in LOGic). dengan pemrograman

Dapat mengkonversikan dari bahasa natural ke bahasa PROLOG dan begitu juga sebaliknya. Mengetahui variable. TEORI Pemrograman Logika Prolog dikenal sebagai bahasa deskriptif, yang berarti dengan diberikan serangkaian fakta-fakta dan aturan-aturan, Prolog dengan menggunakan cara berpikir deduktif akan dapat menyelesaikan permasalahan suatu program, Prolog didasarakan pada klausa-klausa Horn, yang merupakan himpunan bagian dari sistem formal yang dinamakan logika predikat, Prolog mempunyai mesin inferensi yang merupakan suatu proses berpikr logis mengenai informasi, Prolog mengambil keunggulan dari sintak ini untuk membangun suatu bahasa pemrograman yang berbasis logika. konsep fakta, aturan-aturan, predikat-predikat dan

Kalimat: Fakta dan Aturan Fakta: Apa yang diketahui Dalam Prolog, relasi antara object-object dinamakan predikat. Dalam bahasa natural relasi disimbolkan oleh suatu kalimat. Aturan: Apa yang dapat disimpulkan dari fakta yang ada Aturan membuat kita dapat mengambil suatu fakta dari fakta yang lain. Dengan bahasa lain, aturan adalah suatu konklusi diketahui jika satu atau lebih konklusi atau fakta lain ditemukan benar.Simbol :diucapkan jika dan memisahkan dua bagian dari aturan yaitu head

dan body.

Query Kalau kita sudah memberikan Prolog sekumpulan fakta, selanjutnya dapat diajukan pertanyaan sehubungan dengan fakta-fakta. Ini dikenal dengan nama memberikan query ke sistem Prolog. Pertanyaan yang diajukan ke Prolog sama tipenya seperti dalam bahasa natural. Variabel Seperti yang telah disebutkan sebelumnya, untuk memberikan nama variabel dalam Visual Prolog harus diawali dengan huruf besar atau garis bawah, berikutnya dapat berupa huruf besar atau kecil, angka dan garis bawah.Variabel Anonim digunakan jika hanya dibutuhkan informasi tertentu dari suatu query.

Komentar Programmer yang baik selalu memberikan catatan atau komentar untuk menjelaskan sesuatu yang mungkin tidak jelas bagi orang lain, komentar akan membuat program menjadi lebih mudah dimengerti. Komentar dengan baris jamak harus dimulai denga karakter /* (slash /asterik) dan diakhiri karakter*/(asterik/slash).

PRAKTIKUM 1.Buka jendela editor baru 2.Ketikkan program di bawah ini

PREDICATES nondeterm dapat_membeli(symbol, symbol) nondeterm orang(symbol) nondeterm mobil(symbol) suka(symbol, symbol) dijual(symbol) CLAUSES dapat_membeli(X,Y):orang(X), mobil(Y), suka(X,Y), dijual(Y). orang(nur). orang(yudi). orang(dian). orang(heni). mobil(atoz). mobil(kijang). suka(dian, atoz). suka(yudi, pecel). suka(heri, buku). suka(nur, komputer). Suka(heni, kijang). dijual(kijang). dijual(atoz). dijual(buku). GOAl

dapat_membeli(Siapa, Apa). D.LISTING


Terlampir

E.PEMBAHASAN suka(nur, komputer) dapat dibaca nur menyukai komputer, orang (dian) dapat dibaca dian adalah orang.suka(_,Apa) dapat ditambah dengan variabel x atau yang lainnya agar terbaca dalam sintak prolog.

F.KESIMPULAN Prolog dapat mengkonversikan dari bahasa natural ke bahasa PROLOG dan begitu juga sebaliknya. Prolog juga mengetahui konsep fakta, aturan-aturan, predikat-predikat dan variable. Untuk memberikan nama variabel dalam Visual Prolog harus diawali dengan huruf besar atau garis bawah, berikutnya dapat berupa huruf besar atau kecil, angka dan garis bawah.Variabel Anonim digunakan jika hanya dibutuhkan informasi tertentu dari suatu query.

G.TUGAS a. Dian adalah orang b. Atoz adalah mobil c. Dian suka Atoz d. Atoz itu dijual e.x dapat membeli y jika x orang dan y mobil, x suka y dan y dijual f. Apa yang Tony suka ?

a. Hobi (Ricky,catur) b. Malas(Embang,orang) c. Yusida(orang, vegetarian) d. Kusdiar(pandai,gitar) e. f. g. h.

PREDICATES anak(STRING,STRING) istri(STRING,STRING) pria(STRING) wanita(STRING) ayah(STRING,STRING) ibu(STRING,STRING) cucu(STRING,STRING) kakek(STRING,STRING) adik(STRING,STRING) usia(STRING,INTEGER) CLAUSES anak("Jhon","James"). anak("James","Peter"). anak("Sue","Ann"). istri("Mary","Peter"). istri("Ann","James"). pria("Jhon"). pria("James"). pria("Peter"). wanita("Mary").

wanita("Sue"). wanita("Ann"). usia("Jhon",10). usia("Sue",13). ayah(A,B):-anak(B,A). kakek(A,B):-ayah(A,C), ayah(C,B). ibu(A,B):-istri(B,C), anak(A,C). cucu(A,B):-anak(A,C), anak(C,B). cucu(A,B):-anak(A,C), istri(C,D), anak(D,B). adik(A,B):-usia(A,C), usia(B,D), C<D. GOAL cucu(X,Y).

ibu(X,Y).

kakek(X,Y).

adik(X,Y).

H.PUSTAKA Nova Lenti,Febri. 2009. Kecerdasan Buatan TI-SI. Yogyakarta: Laboratorium Terpadu Sekolah Tinggi Manajemen dan Komputer Akakom

Anda mungkin juga menyukai