pengenalan prolog
DESCRIPTION
Pengenalan Prolog. Outline. Tools pengembangan aplikasi sistem pakar Dasar-dasar Prolog Struktur program Prolog. Tools Pembangun Sistem Pakar. Bahasa Pemrograman Khusus LISP Prolog CLIPS Planner Conniver Popler OPS5 AMORD SAIL LOGO Smaltalk. Tools Pembangun Sistem Pakar. Shell - PowerPoint PPT PresentationTRANSCRIPT
Pengenalan Prolog 1/18
SISTEM PAKAR
Pengenalan Prolog
Pengenalan Prolog 2/18
SISTEM PAKAR
Outline
• Tools pengembangan aplikasi sistem pakar
• Dasar-dasar Prolog• Struktur program Prolog
Pengenalan Prolog 3/18
SISTEM PAKAR
Tools Pembangun Sistem Pakar
• Bahasa Pemrograman Khusus– LISP– Prolog– CLIPS– Planner– Conniver– Popler– OPS5– AMORD– SAIL– LOGO– Smaltalk
Pengenalan Prolog 4/18
SISTEM PAKAR
Tools Pembangun Sistem Pakar
• Shell– EXSYS– PC+– CRYSTAL– 1stClass– EXPERT EASE– INSIGHT2+
Pengenalan Prolog 5/18
SISTEM PAKAR
Dasar-Dasar Prolog
• Fakta dan Relasi– Prolog terdiri dari kumpulan
data-data obyek yang merupakan suatu fakta
– Fakta selalu benar (true)– Dalam prolog, fakta dibedakan
menjadi 2 macam :• Menunjukkan relasi• Menunjukkan milik / sifat
– Contoh : • Slamet adalah ayah Amin
– ayah(slamet,amin).
• Anita adalah wanita– wanita(anita).
Pengenalan Prolog 6/18
SISTEM PAKAR
Aturan (Rules)
• Suatu pernyataan yang menunjukkan bagaimana fakta-fakta berinteraksi satu dengan yang lain untuk membentuk suatu kesimpulan
• Dinyatakan sebagai suatu kalimat bersyarat
• Contoh : – Fakta : Tino suka apel– Aturan : Yuli suka sesuatu yang
disukai Tino• Dalam prolog ditulis :
– suka(tino,apel).– suka(yuli,Sesuatu) if
suka(tino,Sesuatu).
Pengenalan Prolog 7/18
SISTEM PAKAR
Pertanyaan (Query)
• Untuk mengajukan pertanyaan, misal : Apakah Tini suka boneka?
• Dalam prolog ditulis :– suka(tini,boneka).
• Prolog akan memberikan jawaban :– Yes
• Jika pertanyaannya– suka(tini,mobil-mobilan).
• Prolog akan memberikan jawaban :– No
• Prolog juga mampu memberikan jawaban atas pertanyaan apakah, siapakah, dan lain-lain
Pengenalan Prolog 8/18
SISTEM PAKAR
• Misal : Apakah yang disukai Tini ?– suka(tini,Apa).
• Prolog akan memberikan jawaban :– Apa = boneka
• Siapakah yang suka boneka ?– suka(Siapa,boneka).– Siapa = tini
Pengenalan Prolog 9/18
SISTEM PAKAR
Struktur Program Prolog
• Program Turbo Prolog 2.0 terdiri dari 4 bagian utama :– DOMAINS– PREDICATES– GOAL– CLAUSES
Pengenalan Prolog 10/18
SISTEM PAKAR
Domains
• Berisi deklarasi (pernyataan) tentang jenis data yang digunakan dalam fakta dan aturan
• Ada 6 buah domain standar:– Integer : -32.768 sampai 32.767– Real : 1e-307 sampai 1e+308– Char– String– Symbol : kumpulan karakter yang
diakhiri dengan spasi dan harus diawali dengan huruf kecil
– File : digunakan untuk operasi file
• Dapat pula mendefinisikan domain lain yang terdiri dari domain standar
Pengenalan Prolog 11/18
SISTEM PAKAR
Predicates / Predikat
• Nama simbolik untuk relasi– ayah(slamet,amin).
• Predikat dari fakta diatas ditulis :– ayah(symbol,symbol)
• Slamet dan amin disebut argumen• Jumlah argumen disebut aritas
(arity)• Ditulis tanpa diakhiri tanda titik• Syarat penulisan nama predikat :
– Diawali huruf kecil dan dapat diikuti huruf, angka, atau garis bawah
– Panjang nama maksimum 250 karakter
– Tidak diperbolehkan menggunakan spasi, tanda minus, tanda bintang, dan garis miring.
Pengenalan Prolog 12/18
SISTEM PAKAR
Clauses (Klausa)
• Berisi fakta dan aturan yang membentuk keseluruhan program
• Mirip prosedur pada bahasa pemrograman lain
• Bagian fakta umumnya ditulis sebelum bagian aturan
• Fakta dan aturan yang mempunyai relasi yang sama harus dituliskan berkelompok
• Fakta/aturan ditulis mulai dari fakta/aturan yang paling atas kemudian urut ke bawah
• Kemungkinan yang lebih besar ditempatkan lebih awal daripada kemungkinan yang lebih kecil
Pengenalan Prolog 13/18
SISTEM PAKAR
• Contoh penulisan yang salah :ayah(slamet,amin).ayah(slamet,anang).kakek(slamet,budi).ayah(amin,budi).
• Contoh penulisan yang benar :ayah(slamet,amin).ayah(slamet,anang).ayah(amin,budi).kakek(slamet,budi).
• Pernyataan if ditulis dengan simbol “:-”suka(ira, Sesuatu) :-
suka(anton,Sesuatu)
Pengenalan Prolog 14/18
SISTEM PAKAR
Goal / Tujuan
• Berisi pertanyaan yang diajukan kepada Turbo Prolog
• Dapat terdiri dari beberapa bagian yang disebut subgoal
• 2 jenis goal :– Goal eksternal : goal yang
diberikan melalui compiler, dituliskan dalam jendela Dialog
– Goal internal : goal yang dituliskan sekaligus dalam program
GOAL : ayah(slamet,badu) True.
Pengenalan Prolog 15/18
SISTEM PAKAR
Variabel
• Besaran yang nilainya dapat berubah-ubah
GOAL : ayah(X,didi) X = anang
• X adalah variabel• Tata cara penulisan variabel
– Harus diawali huruf besar atau garis bawah (_)
– Dapat terdiri dari huruf, angka atau simbol dan merupakan satu kesatuan
– Panjang maksimum 250 karakter– Hendahknya mengandung makna
yang berkaitan dengan data yang dinyatakannya
Pengenalan Prolog 16/18
SISTEM PAKAR
• 3 macam variabel– Variabel bebas (free variable)– Variabel terikat (bound variable)– Variabel tak bernama
(anonymous variable)
GOAL : ayah(Ayah,amin), ayah(Ayah,anang)
GOAL : ayah(Ayah,_)
Anonymous variable
Pengenalan Prolog 17/18
SISTEM PAKAR
Goal Majemuk
• Goal yang terdiri lebih dari satu pernyataan
• Bagian goal tersebut disebut sub goal
GOAL : mobil(Merk,Warna,Harga), Harga < 50.
GOAL : mobil(Merk,Warna,Harga),
Warna = merah,
Harga < 35.
Pengenalan Prolog 18/18
SISTEM PAKAR
Referensi
• Farid Azis bab 4
• Andrey Andoko bab 4