Pengenalan PROLOG - Pengenalan PROLOG. Tools Pembangun Sistem Pakar ¢â‚¬¢ Language ¢â‚¬â€œ LISP ¢â‚¬â€œ Prolog

  • View
    7

  • Download
    0

Embed Size (px)

Text of Pengenalan PROLOG - Pengenalan PROLOG. Tools Pembangun Sistem Pakar ¢â‚¬¢...

  • Pengenalan PROLOG

  • Tools Pembangun Sistem Pakar

    • Language – LISP

    – Prolog

    – CLIPS

    – Planner

    – Conniver

    • Shell – EXSYS

    – PC+

    – CRYSTAL

    – 1stClass

    – EXPERT EASE– Conniver

    – Popler

    – OPS5

    – AMORD

    – SAIL

    – LOGO

    – Smaltalk

    – EXPERT EASE

    – INSIGHT2+

    – e2glite

  • 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 relasi

    • Menunjukkan milik / sifat

    – Contoh : • Slamet adalah ayah Amin

    – ayah(slamet,amin).

    • Anita adalah wanita

    – wanita(anita).

  • Aturan (Rules)

    • Suatu pernyataan yang menunjukkan bagaimana fakta- fakta berinteraksi satu dengan yang lain untuk membentuk suatu kesimpulan

    • Dinyatakan sebagai suatu kalimat bersyarat

    • Contoh : 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).

  • Pertanyaan (Query)

    • Untuk mengajukan pertanyaan, misal : Apakah Tini suka boneka?

    • Dalam prolog ditulis : – suka(tini,boneka).

    • Prolog akan memberikan jawaban :• 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

    • Misal : Apakah yang disukai Tini ?

    – suka(tini,Apa).

    • Prolog akan memberikan jawaban :• Prolog akan memberikan jawaban :

    – Apa = boneka

    • Siapakah yang suka boneka ?

    – suka(Siapa,boneka).

    – Siapa = tini

  • Struktur Program Prolog

    • Program Turbo Prolog 2.0 terdiri dari 4 bagian

    utama :

    – DOMAINS

    – PREDICATES

    CLAUSES – CLAUSES

    – GOAL

  • 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– Char

    – String

    – Symbol : kumpulan karakter yang diawali dengan huruf kecil

    – File : digunakan untuk operasi file

    • Dapat pula mendefinisikan domain lain yang terdiri dari domain standar

  • 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)• 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.

  • 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 berkelompokharus 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

  • • 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,amin).

    ayah(slamet,anang).

    ayah(amin,budi).

    kakek(slamet,budi).

    • Pernyataan if ditulis dengan simbol “:-” suka(ira, Sesuatu) :- suka(anton,Sesuatu)

  • Goal / Tujuan

    • Berisi pertanyaan yang diajukan kepada Turbo Prolog

    • Dapat terdiri dari beberapa bagian yang disebut subgoal

    • 2 jenis goal :• 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.

  • 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.

  • Variabel

    • Besaran yang nilainya dapat berubah-ubah GOAL : ayah(X,didi) �

    X = anang

    • X adalah variabel

    • Tata cara penulisan 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

    – Hendaknya mengandung makna yang berkaitan dengan data

    yang dinyatakannya

  • • 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

  • Referensi

    • Farid Azis bab 4

    • Andrey Andoko bab 4