You are on page 1of 9

PEMBAHASAN

Program 1
DOMAINS judul,pengarang = symbol halaman = unsigned Penjelasan: DOMAINS: bagian dari pendeklarasian tipe dari argumen yang ada dalam program 1 yaitu argumen judul, pengarang tipe symbol, argumen halaman tipe unsigned. PREDICATES buku(judul, halaman) nondeterm ditulis_oleh(pengarang, judul) nondeterm buku_tebal(judul) Penjelasan: PREDICATES: bagian pendeklarasian relasi dari argumen-argumen yang ada dalam program 1 ini predikat yang dideklarasikan bernama buku yang memiliki 3 argumen yaitu judul, pengarang, dan halaman. Kata kunci nondeterm fungsinya untuk memberitahu ke compiler Visual Prolog bahwa predikat tersebut mempunyai lebih dari satu kemungkinan jawaban. CLAUSES ditulis_oleh(emha, "Markesot Bertutur"). ditulis_oleh(kahlil, "Sang Nabi"). buku("Sang Nabi", 132). buku("Markesot Bertutur", 379). buku_tebal(Judul):ditulis_oleh(_, Judul), buku(Judul, Tebal), Tebal > 300. Penjelasan: CLAUSES: bagian yang berupa fakta, yang akan dipakai Visual Prolog untuk mendapat jawaban yang benar. Fakta-fakta tersebut dalam bahasa natural dapat diartikan sebagai: ditulis_oleh(emha, "Markesot Bertutur"). Markesot Bertutur di tulis oleh emha ditulis_oleh(kahlil, "Sang Nabi"). Sang Nabi di tulis oleh khalil buku("Sang Nabi", 132). Buku Sang Nabi 132 Halaman buku("Markesot Bertutur", 379). Buku Markesot Bertutur 379 Halaman GOAL ditulis_oleh(X, Y). Penjelasan: Bagian ini untuk mencari fakta apakah X adalah tebal buku.

Program 3
DOMAINS nama = symbol Penjelasan: DOMAINS: bagian dari pendeklarasian tipe dari argumen, pada program 3 ini memiliki satu argumen yaitu nama dan bertipe symbol. PREDICATES nondeterm ayah(nama, nama) setiap_orang Penjelasan: PREDICATES: bagian pendeklarasian relasi dari argumen-argumen yang ada, dalam program 3 ini predikat yang dideklarasikan adalah Orang yang memiliki 2 argumen yaitu ayah dan nama, sedangkan kata kunci nondeterm disana berfungsi untuk memberitahu ke compiler Visual Prolog bahwa predikat tersebut mempunyai lebih dari satu kemungkinan jawaban. CLAUSES ayah(sunarto,cici). ayah(andi,udin). ayah(roland,yansen). setiap_orang:ayah(X,Y), write(X," adalah ayah ",Y,"\n"), fail. setiap_orang. Penjelasan: CLAUSES: bagian yang berupa fakta, yang akan dipakai Visual Prolog untuk mendapat jawaban yang benar. Fakta-fakta tersebut dalam bahasa natural dapat diartikan sebagai: ayah(sunarto,cici).

Sunarto adalah ayah cici


ayah(andi,udin).

Andi adalah ayah udin


ayah(roland,yansen).

Roland adalah ayah yansen


ayah(X,Y),

X adalah ayah Y
GOAL setiap_orang. Penjelasan: Bagian ini untuk mencari fakta apakah X adalah tebal buku.

TUGAS
DOMAINS nama,jender,pekerjaan,benda,alasan,zat = symbol umur=integer PREDICATES nondeterm orang(nama, umur, jender, pekerjaan) nondeterm selingkuh(nama, nama) terbunuh_dengan(nama, benda) terbunuh(nama) nondeterm pembunuh(nama) motif(alasan) ternodai(nama, zat) milik(nama, benda) nondeterm cara_kerja_mirip(benda, benda) nondeterm kemungkinan_milik(nama, benda) nondeterm dicurigai(nama)

CLAUSES orang(budi,55,m,tukang_kayu). orang(aldi,25,m,pemain_sepak_bola). orang(aldi,25,m,tukang_jagal). orang(joni,25,m,pencopet). selingkuh(ina,joni). selingkuh(ina,budi). selingkuh(siti,joni). terbunuh_dengan(siti,pentungan). terbunuh(siti). motif(uang). motif(cemburu). motif(dendam). ternodai(budi, darah). ternodai(siti, darah). ternodai(aldi, lumpur). ternodai(joni, coklat). ternodai(ina, coklat). milik(budi,kaki_palsu). milik(joni,pistol). cara_kerja_mirip(kaki_palsu, pentungan). cara_kerja_mirip(balok, pentungan). cara_kerja_mirip(gunting, pisau). cara_kerja_mirip(sepatu_bola, pentungan). kemungkinan_milik(X,sepatu_bola):- orang(X,_,_,pemain_sepak_bola). kemungkinan_milik(X,gunting):- orang(X,_,_,pekerja_salon). kemungkinan_milik(X,Benda):- milik(X,Benda). dicurigai(X):terbunuh_dengan(siti,Senjata), cara_kerja_mirip(Benda,Senjata), kemungkinan_milik(X,Benda).

dicurigai(X):motif(cemburu), orang(X,_,m,_), selingkuh(siti,X). dicurigai(X):motif(cemburu), orang(X,_,f,_), selingkuh(X,Lakilaki), selingkuh(siti,Lakilaki). dicurigai(X):motif(uang), orang(X,_,_,pencopet). pembunuh(Pembunuh):orang(Pembunuh,_,_,_), terbunuh(Terbunuh), Terbunuh <> Pembunuh, /* Bukan bunuh diri */ dicurigai(Pembunuh), ternodai(Pembunuh,Zat), ternodai(Terbunuh,Zat). GOAL pembunuh(X).

Penjelasan: DOMAINS nama,jender,pekerjaan,benda,alasan,zat = symbol umur=integer Adalah bagian yang mendeklarasikan tipe dari argumen argumen yang akan dimasukkan ke dalam bagian predikat. Argumen tersebut antara lain: nama, jender, pekerjaan, benda, alasan dan zat, yang bertipe symbol serta argumen umuryangbertipe integer. PREDICATES nondeterm orang(nama, umur, jender, pekerjaan) nondeterm selingkuh(nama, nama) terbunuh_dengan(nama, benda) terbunuh(nama) nondeterm pembunuh(nama) motif(alasan) ternodai(nama, zat) milik(nama, benda) nondeterm cara_kerja_mirip(benda, benda) nondeterm kemungkinan_milik(nama, benda) nondeterm dicurigai(nama) Adalah bagian pendeklarasian relasi antara argumen argumen, predikat yang dideklarasikan pada program kali ini diberi nama orang, selingkuh, terbunuh_dengan, terbunuh, pembunuh, motif, ternodai, milik, cara_kerja_mirip, kemungkinan_milik, dan dicurigai.

CLAUSES orang(budi,55,m,tukang_kayu). orang(aldi,25,m,pemain_sepak_bola). orang(aldi,25,m,tukang_jagal). orang(joni,25,m,pencopet). Adalah bagian yang berupa fakta tentang pembunuhan dengan predikat orang.dan dalam program ini terdapat empat fakta. selingkuh(ina,joni). selingkuh(ina,budi). selingkuh(siti,joni). Adalah bagian fakta tentang pembunuhan dengan predikat selingkuh. dan dalam program ini terdapat tiga fakta. terbunuh_dengan(siti,pentungan). terbunuh(siti). Adalah bagian fakta dengan predikat terbunuh_dengan dan terbunuh.Dalam program ini terdapat dua fakta, jika diartikan dalam bahasa natural adalah: 1. Siti terbunuh dengan pentungan 2. Siti adalah yang terbunuh. motif(uang). motif(cemburu). Adalah bagian fakta fakta tentang pembunuhan dengan predikat motif. Motif pembunuhan dalam program ini disebutkan adalah uang, cemburu dan dendam. ternodai(budi, darah). ternodai(siti, darah). ternodai(aldi, lumpur). ternodai(joni, coklat). ternodai(ina, coklat). Adalah bagian fakta fakta tentang pembunuhan dengan predikat ternodai. Dan terdapat empat fakta yang disebutkan dalam program ini. milik(budi,kaki_palsu). milik(joni,pistol). Adalah bagian fakta tentang pembunuhan dengan predikat milik. Dalam program ini terdapat dua fakta, jika diartikan dalam bahasa natural adalah: 1. budi memiliki kaki palsu 2. joni memiliki pistol. cara_kerja_mirip(kaki_palsu, pentungan). cara_kerja_mirip(balok, pentungan). cara_kerja_mirip(gunting, pisau). cara_kerja_mirip(sepatu_bola, pentungan). Adalah bagian fakta dari clauses dengan predikat cara_kerja_mirip. Dalam program ini terdapat empat fakta, jika diartikan dalam bahasa natural adalah: Kaki palsu cara kerjanya mirip dengan pentungan. Balok cara kerjanya mirip dengan pentungan. Gunting cara kerjanya mirip dengan pisau. Sepatu bola cara kerjanya mirip dengan pentungan.

kemungkinan_milik(X,sepatu_bola):- orang(X,_,_,pemain_sepak_bola). kemungkinan_milik(X,gunting):- orang(X,_,_,pekerja_salon). kemungkinan_milik(X,Benda):- milik(X,Benda). dicurigai(X):terbunuh_dengan(siti,Senjata), cara_kerja_mirip(Benda,Senjata), kemungkinan_milik(X,Benda). Adalah bagian aturan yang digunakan dari bagian clauses dengan predikatkemungkinan_milik. Jika diartikan dalam bahasa natural adalah : Sepatu bola kemungkinan milik X jika X adalah nama orang, dan pekerjaan orang tersebut adalah seorang pemain sepak bola. Gunting kemungkinan milik X jika X adalah nama orang, dan pekerjaan orang tersebut adalah seorang pekerja salon. Benda kemungkinan milik X jika X memiliki benda. dicurigai(X):terbunuh_dengan(siti,Senjata), cara_kerja_mirip(Benda,Senjata), kemungkinan_milik(X,Benda). Adalah bagian aturan dari clauses tentang semua orang yang memiliki senjata yang kerjanya mirip dengan senjata yang menjadi penyebab siti terbunuh. dicurigai(X):motif(cemburu), orang(X,_,m,_), selingkuh(siti,X). Adalah bagian aturan dari clauses tentang dicurigainya seseorang yang di duga selingkuh dengan siti. dicurigai(X):motif(cemburu), orang(X,_,f,_), selingkuh(X,Lakilaki), selingkuh(siti,Lakilaki). Adalah bagian aturan dari clauses tentang dicurigainya perempuan yang selingkuh dengan laki laki yang juga selingkuh dengan siti. dicurigai(X):motif(uang), orang(X,_,_,pencopet). Adalah bagian aturan dari clauses tentang dicurigainya pencopet yang mempunyai motif uang. pembunuh(Pembunuh):orang(Pembunuh,_,_,_), terbunuh(Terbunuh), Terbunuh <> Pembunuh, /* Bukan bunuh diri */ dicurigai(Pembunuh), ternodai(Pembunuh,Zat), ternodai(Terbunuh,Zat).

Adalah bagian aturan yang dalam bahasa naturalnya bias diartikan Pembunuh adalah pembunuh jika Pembunuh adalah orang dan Terbunuh adalah yang terbunuh dan terbunuh bukan bunuh diri dan Pembunuh dicurigai dan Pembunuh ternodai oleh Zat dan Terbunuh juga ternodai oleh Zat. GOAL pembunuh(X). Adalah goal yang digunakan untuk mencari siapakah X yang merupakan pembunuh.

KESIMPULAN
Setelah melakukan praktikum Unifikasi dan LacakBalik dapat saya ambil kesimpulan bahwa Unifikasi dan LacakBalik dipakai untuk mengetahui jawaban yang benar pada klausa. Dan terdapat 3 pengendalian proses lacak balik yaitu predikat cut, predikat fail, dan predikat not.

LAPORAN PRAKTIKUM KECERDASAN BUATAN PERTEMUAN 4 UNIFIKASI DAN LACAKBALIK

Disusun oleh : Nama: Ryan Dwi Handoko NIM: 125410044 Jurusan: Teknik Informatika

JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN DAN INFORMATIKA AKAKOM YOGYAKARTA 2013

You might also like