200 likes | 843 Views
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
E N D
Pengenalan Prolog Pengenalan Prolog
Outline • Tools pengembangan aplikasi sistem pakar • Dasar-dasar Prolog • Struktur program Prolog Pengenalan Prolog
Tools Pembangun Sistem Pakar • Bahasa Pemrograman Khusus • LISP • Prolog • CLIPS • Planner • Conniver • Popler • OPS5 • AMORD • SAIL • LOGO • Smaltalk Pengenalan Prolog
Tools Pembangun Sistem Pakar • Shell • EXSYS • PC+ • CRYSTAL • 1stClass • EXPERT EASE • INSIGHT2+ Pengenalan Prolog
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
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
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
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
Struktur Program Prolog • Program Turbo Prolog 2.0 terdiri dari 4 bagian utama : • DOMAINS • PREDICATES • GOAL • CLAUSES Pengenalan Prolog
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
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
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
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
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
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
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
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
Referensi Farid Azis bab 4 Andrey Andoko bab 4 Pengenalan Prolog