Pasangan Pola
description
Transcript of Pasangan Pola
Pasangan Pola 1/13
SISTEM PAKAR
Pasangan Pola
Pasangan Pola 2/13
SISTEM PAKAR
Outline
• Unifikasi dan Runut Balik• Masukan dan Keluaran• Perbandingan Operator
Pasangan Pola 3/13
SISTEM PAKAR
Unifikasi dan Runut Balik
• Unifikasi– Proses yang dilakukan oleh prolog
untuk mencari padanan antara pernyataan yang terdapat pada aturan dengan fakta atau kepala aturan yang lain
• Syarat terjadinya unifikasi antara 2 pernyataan :– Mempunyai relasi yang sama– Mempunyai jumlah argumen yang
sama dan posisi argumen yang sama pula
– Argumen yang berpadanan harus mempunyai jenis data yang sama
– Semua pasangan argumen (pada data majemuk) harus juga berpadanan
Pasangan Pola 4/13
SISTEM PAKAR
Pasangan Pola 5/13
SISTEM PAKAR
Pasangan Pola 6/13
SISTEM PAKAR
Proses Pencarian Jawaban
GOAL : kakek(Kakek,budi).
Kakek(Kakek,budi) – kakek(Kakek,Cucu)
ayah(Ayah,Cucu) – ayah(Ayah,budi)
ayah(Ayah,budi) – ayah(amin,budi)
ayah(Kakek,Ayah) – ayah(Kakek,amin)
ayah(Kakek,amin) – ayah(slamet,amin)
kakek(Kakek,budi) – kakek(slamet,budi)
Kakek = slamet
Pasangan Pola 7/13
SISTEM PAKAR
Predikat Not
• Not digunakan untuk menyatakan lawan logika dari suatu pernyataan
• Not tidak dapat berdiri sendiri• Not tidak dapat dipasangkan pada
fakta atau kepala suatu aturan, tetapi hanya dapat dipasangkan pada bagian suatu aturan
• Contoh : menyatakan saudara sepupuSaudara_sepupu(Sdr1,Sdr2) :-
kakek(Kakek,Sdr1), kakek(Kakek,Sdr2), not(saudara_kandung(Sdr1,Sdr2)), Sdr1 <> Sdr2.
Pasangan Pola 8/13
SISTEM PAKAR
Predikat Keluaran
• Write– Digunakan untuk menuliskan
konstanta atau isi variabel ke piranti keluaran yang dikenali pada saat itu
write(E1,E2,E3,…,En) – (i,i,i,…,i)
– E1,E2,E3,…En adalah konstanta (karakter atau string) atau variabel
– Contoh :Tes :- Write(“Saya sedang belajar Turbo
Prolog.”), write(“Teman saya belajar Basic”)
– Output :Saya sedang belajar Turbo Prolog.Teman
saya belajar Basic
Pasangan Pola 9/13
SISTEM PAKAR
• Writef– Mempunyai fungsi yang hampir
sama dengan predikat write, hanya hasilnya mempunyai format seperti yang diinginkan
writef(format,E1,E2,…,En) – (i,i,…,i)
– Macam-macam format :• f : format bilangan real dalam notasi
desimal• e : format bilangan real dalam
notasi eksponensial• d : format karakter atau bilangan
bulat dalam desimal• c : format karakter atau bilangan
bulat sebagai karakter• dll
Pasangan Pola 10/13
SISTEM PAKAR
• Writedevice– Digunakan untuk mengubah atau
mendapatkan informasi tentang piranti keluaran yang dikenali oleh program pada saat itu
writedevice(VarPiranti) – (i), (o)
– Macam-macam piranti keluaran :• Screen• Printer• Com1• Tdout• Stderr• NamaFile
Pasangan Pola 11/13
SISTEM PAKAR
Predikat Masukan
• Readln– Digunakan untuk membaca
sederetan karakter dari piranti masukan sampai ditemukan tanda carriage return (ASCII 13)
– Karakter yang dibaca ditampilkan di layar monitor
• Readchar– Digunakan untuk membaca
karakter tunggal dari piranti masukan (tanpa perlu enter)
– Karakter yang dibaca tidak ditampilkan di layar monitor
Pasangan Pola 12/13
SISTEM PAKAR
• Readint– Digunakan untuk membaca
bilangan bulat sampai tombol Enter
– Akan fail apabila bilangan bulat yang dibaca tidak sesuai dengan yang sudah didefinisikan
• Readreal– Digunakan untuk membaca
bilangan real sampai tombol Enter
• Readdevice– Digunakan untuk mengubah atau
meminta informasi tentang piranti masukan yang saat itu dikenal
Pasangan Pola 13/13
SISTEM PAKAR
Referensi
• Farid Azis bab 4
• Andrey Andoko bab 5, 6, 7