SlideShare una empresa de Scribd logo
1 de 18
Chapter - 4




Kecerdasan Buatan
    Artificial Intelligence

Pengenalan PROLOG


            Tb. Ai Munandar, M.T.,
    Universitas Serang Raya - 2012
Outline
• Pengenalan PROLOG
• Penggunakaan Visual Prolog v. 5.2
PARADIGMA PROLOG
• PROLOG berarti PROgramming in LOGic
  Bahasa yang dibangun atas dasar pemrograman
  alamiah dan logika
  Merupakan tool yang sangat penting dalam
  pemrograman aplikasi kecerdasan buatan
  Merupakan bahasa deklaratif, artinya jika diberi
  fakta dan aturan maka Prolog akan menyelesaikan
  problem      secara    deduktif    (menurunkan
  kesimpulan sebagai jawaban berdasarkan fakta
  dan aturan).
PARADIGMA PROLOG (2)
• Perbedaan bahasa deklaratif dan prosedural :
  Pada bahasa deklaratif hanya membutuhkan
  deklarasi atau uraian masalah, sedangkan pada
  bahasa prosedural memerlukan langkah-langkah
  penyelesaian masalah.
• Prolog : Goal oriented (apa yang harus dipecahkan),
  sedangkan pada bahasa prosedural menjawab
  bagaimana harus memecahkan masalah.
CIRI BAHASA PROLOG
Bahasa Prolog selain mencari jawaban secara
logika terhadap pertanyaan yang diajukan,
juga dapat memberi semua kemungkinan
jawaban.
Menggunakan logika peredikat.
Menggunakan deductive reasoning dalam
memecahkan masalah
Prolog melakukan pemadanan (unifikasi)
dalam mencari jawaban atau menarik
kesimpulan.
PREDIKAT
• Menggambarkan relasi atau sifat suatu obyek.
• Obyek yang terkait disebut argumen.
• Contoh :
  - suka (Irwan, permen)
       predikat : suka; argumen : Irwan, permen.
  - manis (permen)
      predikat : manis ; argumen : permen.
DEDUKSI
• Prolog menggunakan metode deduksi (dari hal yang
  umum ditarik kesimpulan mengenai hal yang khusus)
  dalam memecahkan masalah.
• Contoh :
  - Diberikan fakta :
       Dede suka Iik
      Cece suka Ryan
  - diberikan aturan :
      Celung suka seseorang jika Cece suka orang
        itu.
  - maka Prolog dapat menarik kesimpulan :
      Celung suka Ryan.
PEMADANAN/UNIFIKASI
• Dalam mencari jawaban atau menarik
  kesimpulan, Prolog melakukan pemadanan,
  yaitu argumen pertama dipadankan dengan
  argumen pertama pada predikat lain yang
  sama dan seterusnya.
STRUKTUR PROGRAM PROLOG
• Program Prolog terdiri dari 4 bagian (section)
  dasar, yaitu :
     1. domains section
     2. predicates section
     3. clauses section
     4. goal section
Program Visual Prolog mempunyai struktur sbb:
DOMAINS
/* ...
domain declarations
... */
PREDICATES
/* ...
predicate declarations
... */
CLAUSES
/* ...
clauses (rules and facts)
... */
GOAL
/* ...
subgoal_1,
subgoal_2,
etc. */
DOMAINS SECTION
• Pada bagian domains dideklarasikan domain-domain yang
  bukan domain standar yang dipakai dalam program yang
  dibuat.
• Jika merupakan domain standar maka tidak perlu
  dideklarasikan.
• beberapa domains standar : char, integer, real, string, symbols
• Contoh
  Domains
       NamaOrg = symbol
      Alamat = string
      Nilai = integer
PREDICATES SECTION
•   Pada predicates section dideklarasikan predikat-predikat dan
    tipe (domains) dari argumen suatu predikat.
•   Bentuk umum :
        predicateName(argument_type1, argument_type2, ...,
                        argument_typeN)
    argument types dapat berupa domain standard atau domains
    yang telah dideklarasikan pada bagian domains.
•   Contoh :
    DOMAINS
       name, sex = symbol
       age       = integer
    PREDICATES
       person(name, sex, age)
       son(name, name)
CLAUSES SECTION
•   Clauses section adalah jantung dari
    program Prolog dimana fakta dan aturan
    diletakkan dan akan digunakan pada saat
    program menyelesaikan goal dari program.
FAKTA
• suatu kenyataan atau kebenaran yang diketahui.
• menyatakan hubungan / relasi antara dua obyek atau
  lebih atau menunjukkan sifat suatu obyek.
• Penulisan dalam Prolog :
      - Diawali dengan huruf kecil dan diakhiri
        dengan tanda titik.
• Contoh :
     son (ali, husein).
     pedas(cabe).
ATURAN
• Berguna menarik sesuatu kesimpulan dari fakta yang diketahui .
• Bentuk umum
       HEAD :- <Subgoal>, <Subgoal>, ..., <Subgoal>.
• Aturan penulisan :
      If        ditulis sebagai      :-
      And ditulis sebagai        ,
      Or     ditulis sebagai    ;
• Contoh
  Clauses
       suka(dede,iik).
       suka(cece,ryan).
       suka(celung, X) :- suka(cece,X).
GOAL

•   Memberi pertanyaan mengenai fakta yang
    ada dalam program Prolog disebut querying
    the Prolog system.
•   query tsb disebut goal.
•   Prolog menjawab sebuah goal (answer the
    query) mulai dari fakta yang teratas, mencari
    setiap fakta yang sesuai sampai dicapai fakta
    yang terbawah.
VARIABEL
• Variabel memungkinkan penulisan fakta dan
  aturan serta menanyakan sesuatu hal secara
  umum.
• Dalam Prolog nama variabel harus dimulai
  dengan huruf kapital.
CONTOH
• Contoh soal.doc

Más contenido relacionado

Similar a AI-PROLOG

Meet 1 - Introduction of OOP.pdf
Meet 1 - Introduction of OOP.pdfMeet 1 - Introduction of OOP.pdf
Meet 1 - Introduction of OOP.pdfSamFChaerul
 
Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...
Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...
Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...MuhammadFajarB1
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekPungkas Soebarkah
 
1 Mengenal Pemrograman Berorientsi Objek.pptx
1 Mengenal Pemrograman Berorientsi Objek.pptx1 Mengenal Pemrograman Berorientsi Objek.pptx
1 Mengenal Pemrograman Berorientsi Objek.pptxAlbertusHariAfandi
 
Modul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman IIModul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman IIsyahril17
 
Pbo perbandingan antara pemrograman procedural dengan pemrograman beroriant...
Pbo   perbandingan antara pemrograman procedural dengan pemrograman beroriant...Pbo   perbandingan antara pemrograman procedural dengan pemrograman beroriant...
Pbo perbandingan antara pemrograman procedural dengan pemrograman beroriant...Wahyu Zakwan
 
Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316septianarul
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstrukturRaden Maulana
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)rizki adam kurniawan
 
Teknikpembuatankisi kisi-120826095628-phpapp01
Teknikpembuatankisi kisi-120826095628-phpapp01Teknikpembuatankisi kisi-120826095628-phpapp01
Teknikpembuatankisi kisi-120826095628-phpapp01Haeruddin Maros
 
Teknik pembuatan kisi-kisi_soal
Teknik pembuatan kisi-kisi_soalTeknik pembuatan kisi-kisi_soal
Teknik pembuatan kisi-kisi_soalRisou Kun
 
Pengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi ObjekPengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi Objekwawanext01
 
dokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.pptdokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.pptahmadmaulana746047
 
Power Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptx
Power Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptxPower Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptx
Power Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptxekasasmitatulung
 

Similar a AI-PROLOG (20)

Meet 1 - Introduction of OOP.pdf
Meet 1 - Introduction of OOP.pdfMeet 1 - Introduction of OOP.pdf
Meet 1 - Introduction of OOP.pdf
 
Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...
Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...
Logika predikat. logika predikat disebut juga kalkulus predikat (predicate ca...
 
03 java programming
03 java programming03 java programming
03 java programming
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi Objek
 
1 Mengenal Pemrograman Berorientsi Objek.pptx
1 Mengenal Pemrograman Berorientsi Objek.pptx1 Mengenal Pemrograman Berorientsi Objek.pptx
1 Mengenal Pemrograman Berorientsi Objek.pptx
 
Modul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman IIModul 1 Algoritma Dan Pemrograman II
Modul 1 Algoritma Dan Pemrograman II
 
Pbo perbandingan antara pemrograman procedural dengan pemrograman beroriant...
Pbo   perbandingan antara pemrograman procedural dengan pemrograman beroriant...Pbo   perbandingan antara pemrograman procedural dengan pemrograman beroriant...
Pbo perbandingan antara pemrograman procedural dengan pemrograman beroriant...
 
Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316Tugas 4 (individu) rekayasa web 0316
Tugas 4 (individu) rekayasa web 0316
 
Object oriented programming (oop)
Object oriented programming (oop)Object oriented programming (oop)
Object oriented programming (oop)
 
Algoritma pemrograman terstruktur
Algoritma pemrograman terstrukturAlgoritma pemrograman terstruktur
Algoritma pemrograman terstruktur
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)
 
Teknikpembuatankisi kisi-120826095628-phpapp01
Teknikpembuatankisi kisi-120826095628-phpapp01Teknikpembuatankisi kisi-120826095628-phpapp01
Teknikpembuatankisi kisi-120826095628-phpapp01
 
Teknik pembuatan kisi-kisi_soal
Teknik pembuatan kisi-kisi_soalTeknik pembuatan kisi-kisi_soal
Teknik pembuatan kisi-kisi_soal
 
Materi Java.pptx
Materi Java.pptxMateri Java.pptx
Materi Java.pptx
 
Modul pbo
Modul pboModul pbo
Modul pbo
 
Pengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi ObjekPengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi Objek
 
Dasar dasar algoritma - 2
Dasar dasar algoritma - 2Dasar dasar algoritma - 2
Dasar dasar algoritma - 2
 
dokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.pptdokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
dokumen.tips_34-modul1-pengenalan-java-netbeans.ppt
 
Power Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptx
Power Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptxPower Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptx
Power Point B.Indonesia KLS 9 BAB 1- www.kherysuryawan.id.pptx
 
Daskom 4
Daskom 4Daskom 4
Daskom 4
 

Más de bayaws

Más de bayaws (6)

Ai 7
Ai 7Ai 7
Ai 7
 
Ai 5
Ai 5Ai 5
Ai 5
 
Ai 3
Ai 3Ai 3
Ai 3
 
Ai 2
Ai 2Ai 2
Ai 2
 
Ai 1
Ai 1Ai 1
Ai 1
 
Ai 6
Ai 6Ai 6
Ai 6
 

AI-PROLOG

  • 1. Chapter - 4 Kecerdasan Buatan Artificial Intelligence Pengenalan PROLOG Tb. Ai Munandar, M.T., Universitas Serang Raya - 2012
  • 2. Outline • Pengenalan PROLOG • Penggunakaan Visual Prolog v. 5.2
  • 3. PARADIGMA PROLOG • PROLOG berarti PROgramming in LOGic Bahasa yang dibangun atas dasar pemrograman alamiah dan logika Merupakan tool yang sangat penting dalam pemrograman aplikasi kecerdasan buatan Merupakan bahasa deklaratif, artinya jika diberi fakta dan aturan maka Prolog akan menyelesaikan problem secara deduktif (menurunkan kesimpulan sebagai jawaban berdasarkan fakta dan aturan).
  • 4. PARADIGMA PROLOG (2) • Perbedaan bahasa deklaratif dan prosedural : Pada bahasa deklaratif hanya membutuhkan deklarasi atau uraian masalah, sedangkan pada bahasa prosedural memerlukan langkah-langkah penyelesaian masalah. • Prolog : Goal oriented (apa yang harus dipecahkan), sedangkan pada bahasa prosedural menjawab bagaimana harus memecahkan masalah.
  • 5. CIRI BAHASA PROLOG Bahasa Prolog selain mencari jawaban secara logika terhadap pertanyaan yang diajukan, juga dapat memberi semua kemungkinan jawaban. Menggunakan logika peredikat. Menggunakan deductive reasoning dalam memecahkan masalah Prolog melakukan pemadanan (unifikasi) dalam mencari jawaban atau menarik kesimpulan.
  • 6. PREDIKAT • Menggambarkan relasi atau sifat suatu obyek. • Obyek yang terkait disebut argumen. • Contoh : - suka (Irwan, permen) predikat : suka; argumen : Irwan, permen. - manis (permen) predikat : manis ; argumen : permen.
  • 7. DEDUKSI • Prolog menggunakan metode deduksi (dari hal yang umum ditarik kesimpulan mengenai hal yang khusus) dalam memecahkan masalah. • Contoh : - Diberikan fakta : Dede suka Iik Cece suka Ryan - diberikan aturan : Celung suka seseorang jika Cece suka orang itu. - maka Prolog dapat menarik kesimpulan : Celung suka Ryan.
  • 8. PEMADANAN/UNIFIKASI • Dalam mencari jawaban atau menarik kesimpulan, Prolog melakukan pemadanan, yaitu argumen pertama dipadankan dengan argumen pertama pada predikat lain yang sama dan seterusnya.
  • 9. STRUKTUR PROGRAM PROLOG • Program Prolog terdiri dari 4 bagian (section) dasar, yaitu : 1. domains section 2. predicates section 3. clauses section 4. goal section
  • 10. Program Visual Prolog mempunyai struktur sbb: DOMAINS /* ... domain declarations ... */ PREDICATES /* ... predicate declarations ... */ CLAUSES /* ... clauses (rules and facts) ... */ GOAL /* ... subgoal_1, subgoal_2, etc. */
  • 11. DOMAINS SECTION • Pada bagian domains dideklarasikan domain-domain yang bukan domain standar yang dipakai dalam program yang dibuat. • Jika merupakan domain standar maka tidak perlu dideklarasikan. • beberapa domains standar : char, integer, real, string, symbols • Contoh Domains NamaOrg = symbol Alamat = string Nilai = integer
  • 12. PREDICATES SECTION • Pada predicates section dideklarasikan predikat-predikat dan tipe (domains) dari argumen suatu predikat. • Bentuk umum : predicateName(argument_type1, argument_type2, ..., argument_typeN) argument types dapat berupa domain standard atau domains yang telah dideklarasikan pada bagian domains. • Contoh : DOMAINS name, sex = symbol age = integer PREDICATES person(name, sex, age) son(name, name)
  • 13. CLAUSES SECTION • Clauses section adalah jantung dari program Prolog dimana fakta dan aturan diletakkan dan akan digunakan pada saat program menyelesaikan goal dari program.
  • 14. FAKTA • suatu kenyataan atau kebenaran yang diketahui. • menyatakan hubungan / relasi antara dua obyek atau lebih atau menunjukkan sifat suatu obyek. • Penulisan dalam Prolog : - Diawali dengan huruf kecil dan diakhiri dengan tanda titik. • Contoh : son (ali, husein). pedas(cabe).
  • 15. ATURAN • Berguna menarik sesuatu kesimpulan dari fakta yang diketahui . • Bentuk umum HEAD :- <Subgoal>, <Subgoal>, ..., <Subgoal>. • Aturan penulisan : If ditulis sebagai :- And ditulis sebagai , Or ditulis sebagai ; • Contoh Clauses suka(dede,iik). suka(cece,ryan). suka(celung, X) :- suka(cece,X).
  • 16. GOAL • Memberi pertanyaan mengenai fakta yang ada dalam program Prolog disebut querying the Prolog system. • query tsb disebut goal. • Prolog menjawab sebuah goal (answer the query) mulai dari fakta yang teratas, mencari setiap fakta yang sesuai sampai dicapai fakta yang terbawah.
  • 17. VARIABEL • Variabel memungkinkan penulisan fakta dan aturan serta menanyakan sesuatu hal secara umum. • Dalam Prolog nama variabel harus dimulai dengan huruf kapital.