Kecerdasan buatan
Representasi Pengetahuan
Menggunakan Bahasa Prolog
Anis Maghfirotul Habibah
1610501035
Teknik Elektro Universitas Tidar
Definisi
Representasi Pengetahuan adalah
metode yang digunakan untuk
mengodekan pengetahuan dalam
suatu sistem pakar. Yang
dimaksudkan untuk menangkap
sifat-sifat penting problema dan
membuat informasi itu dapat diakses
oleh prosedur pemecahan problema.
2
Terdapat beberapa model atau
bentuk representasi pengetahuan
yang telah dikembangkan, yaitu :
⬗ Logika
⬗ Jaringan Semantik (Semantic nets)
⬗ Object-Attribute-Value (OAV)
⬗ Bingkai (Frame)
⬗ Aturan Produksi (production rule)
3
Logika
Suatu pengkajian ilmiah tentang serangkaian
penalaran, sistem kaidah, dan prosedur yang
membantu penalaran.
Komputer harus dapat menggunakan proses
penalaran deduktif dan induktif kedalam bentuk
yang sesuai dengan manipulasi komputer, yaitu
logika simbolik atau matematika.
Prolog singkatan dari Programming in Logic.
Perbedaan Prolog dengan Bahasa Lainnya :
Bahasa Pemrograman yang Umum (Basic, Pascal, C, Fortran):
⬗ diperlukan algoritma/prosedur untuk memecahkan
masalah (procedural languange)
⬗ program menjalankan prosedur yang sama berulang-ulang
dengan data masukan yang berbeda-beda.
⬗ Prosedur dan pengendalian program ditentukan oleh
programmer dan perhitungan dilakukan sesuai dengan
prosedur yang telah dibuat.
5
Bahasa Pemrograman Prolog
1. Object oriented
language atau declarative
language
2. Tidak terdapat
prosedur, tetapi hanya
kumpulan data-data objek
(fakta) yang akan diolah,
dan relasi antar objek
tersebut membentuk
aturan yang diperlukan
untuk mencari suatu
jawaban
5. Prolog ideal untuk
memecahkan masalah yang
tidak terstruktur, dan
prosedur pemecahannya
tidak diketahui, khususnya
untuk memecahkan
masalah non numerik.
6
4. Programmer
menentukan tujuan (goal),
dan komputer
menentukan bagaimana
cara mencapai tujuan
tersebut serta mencari
jawabannya.
3. Dilakukan pembuktian
terhadap cocok-tidaknya
tujuan dengan data-data
yang telah ada dan
relasinya.
6. Prolog bekerja seperti
pikiran manusia, proses
pemecahan masalah
bergerak di dalam ruang
masalah menuju suatu
tujuan (jawaban tertentu).
Fakta dan Relasi
Prolog terdiri dari kumpulan
data-data objek yang merupakan
suatu fakta.
Fakta dibedakan 2 macam :
oMenunjukkan relasi.
oMenunjukkan milik/sifat.
Penulisannya diakhiri dengan
tanda titik “.”
7
Contoh :
Fakta : Slamet adalah ayah amin
Prolog : ayah (slamet, amin).
Fakta : Angga suka renang dan tenis
Prolog : suka(angga, renang). dan
suka(angga,tenis).
Contoh representasi pengetahuan secara logika dalam
Tree Sebuah silsilah keluarga adalah sbb :
8
eka
munos agus
ernacristadimaschskim
Dari tree tersebut dapat dibuat representasi
secara logic sbb :
putra (eka, munos).
putra (eka, agus).
putra (munos, chakim).
putra (munos, dimas).
putri (agus, crista).
putri (agus, erna).
9
Aturan adalah suatu
pernyataan yang
menunjukkan bagaimana
fakta-fakta berinteraksi satu
dengan yang lain untuk
membentuk suatu
kesimpulan. -Sebuah aturan
dinyakatakan sebagai suatu
kalimat bersyarat. -Kata “if”
adalah kata yang dikenal
Prolog untuk menyatakan
kalimat bersyarat atau
disimbolkan dengan “:-“.
Aturan (“Rules”)
Contoh
Fakta dan Aturan
F : Tino suka apel
A : Yuli suka sesuatu yang disukai Tino
Prolog
suka(tino, apel).
suka(yuli,Sesuatu) :- suka(tino,Sesuatu).
10
Pertanyaan (“Query”)
Setelah memberikan
data-data berupa
fakta dan aturan,
selanjutnya kita dapat
mengajukan
pertanyaan
berdasarkan fakta
dan aturan yang ada. -
Penulisannya diawali
simbol “?-“ dan
diakhiri tanda “.”.
Contoh Pertanyaan
Apakah Tini suka boneka ?
Contoh Prolog dan Jawaban Program
?-suka(tini,boneka).
Yes ....... (jika faktanya Tini suka boneka)
No...........(jika tidak sesuai fakta).
11
Predikat
Predikat adalah nama simbolik untuk relasi
Syarat-syarat penulisan nama predikat :
oHarus diawali dengan huruf kecil dan dapat
diikuti dengan huruf, bilangan atau garis bawah.
oPanjang nama predikat maksimum 250 karakter.
oTidak diperbolehkan menggunakan spasi, tanda
minus, tanda bintang dan garis miring.
Contoh : ayah(slamet,amin).
Predikat dari fakta tersebut ditulis :
ayah(simbol,simbol).
dimana ayah adalah nama predikat, sedangkan
slamet dan amin adalah menujukkan argumen.
12
Variabel
Varibel adalah besaran yang nilainya dapat berubah-ubah.
Tata cara penulisan variabel :
1.Nama varibel harus diawali huruf besar atau garis bawah(_)
2.Nama variabel dapat terdiri dari huruf, bilangan, atau simbol dan merupakan kesatuan dengan panjang
maksimum 250 karakter.
3.Nama variabel hendaknya mengandung makna yang berkaitan dengan data yang dinyatakannya.
Dari query akan dicari siapakah anak dari ayah yang bernama Slamet. Karena mempunyai relasi yang sama
(yaitu ayah), variabel Anak akan mencari nilai dari konstanta suatu fakta/aturan yang sepadan. Tanda “;”
digunakan bila terdapat kemungkinan ada lebih dari satu jawaban. “No” berarti tidak ada lagi
kemungkinan jawaban.
Contoh : dari silsilah di atas :
?- ayah(slamet,Anak).
Anak=budi ;
Anak=badu
No
13
14
Sekian,
Terimakasih !

Kecerdasan Buatan

  • 1.
    Kecerdasan buatan Representasi Pengetahuan MenggunakanBahasa Prolog Anis Maghfirotul Habibah 1610501035 Teknik Elektro Universitas Tidar
  • 2.
    Definisi Representasi Pengetahuan adalah metodeyang digunakan untuk mengodekan pengetahuan dalam suatu sistem pakar. Yang dimaksudkan untuk menangkap sifat-sifat penting problema dan membuat informasi itu dapat diakses oleh prosedur pemecahan problema. 2
  • 3.
    Terdapat beberapa modelatau bentuk representasi pengetahuan yang telah dikembangkan, yaitu : ⬗ Logika ⬗ Jaringan Semantik (Semantic nets) ⬗ Object-Attribute-Value (OAV) ⬗ Bingkai (Frame) ⬗ Aturan Produksi (production rule) 3
  • 4.
    Logika Suatu pengkajian ilmiahtentang serangkaian penalaran, sistem kaidah, dan prosedur yang membantu penalaran. Komputer harus dapat menggunakan proses penalaran deduktif dan induktif kedalam bentuk yang sesuai dengan manipulasi komputer, yaitu logika simbolik atau matematika. Prolog singkatan dari Programming in Logic.
  • 5.
    Perbedaan Prolog denganBahasa Lainnya : Bahasa Pemrograman yang Umum (Basic, Pascal, C, Fortran): ⬗ diperlukan algoritma/prosedur untuk memecahkan masalah (procedural languange) ⬗ program menjalankan prosedur yang sama berulang-ulang dengan data masukan yang berbeda-beda. ⬗ Prosedur dan pengendalian program ditentukan oleh programmer dan perhitungan dilakukan sesuai dengan prosedur yang telah dibuat. 5
  • 6.
    Bahasa Pemrograman Prolog 1.Object oriented language atau declarative language 2. Tidak terdapat prosedur, tetapi hanya kumpulan data-data objek (fakta) yang akan diolah, dan relasi antar objek tersebut membentuk aturan yang diperlukan untuk mencari suatu jawaban 5. Prolog ideal untuk memecahkan masalah yang tidak terstruktur, dan prosedur pemecahannya tidak diketahui, khususnya untuk memecahkan masalah non numerik. 6 4. Programmer menentukan tujuan (goal), dan komputer menentukan bagaimana cara mencapai tujuan tersebut serta mencari jawabannya. 3. Dilakukan pembuktian terhadap cocok-tidaknya tujuan dengan data-data yang telah ada dan relasinya. 6. Prolog bekerja seperti pikiran manusia, proses pemecahan masalah bergerak di dalam ruang masalah menuju suatu tujuan (jawaban tertentu).
  • 7.
    Fakta dan Relasi Prologterdiri dari kumpulan data-data objek yang merupakan suatu fakta. Fakta dibedakan 2 macam : oMenunjukkan relasi. oMenunjukkan milik/sifat. Penulisannya diakhiri dengan tanda titik “.” 7 Contoh : Fakta : Slamet adalah ayah amin Prolog : ayah (slamet, amin). Fakta : Angga suka renang dan tenis Prolog : suka(angga, renang). dan suka(angga,tenis).
  • 8.
    Contoh representasi pengetahuansecara logika dalam Tree Sebuah silsilah keluarga adalah sbb : 8 eka munos agus ernacristadimaschskim
  • 9.
    Dari tree tersebutdapat dibuat representasi secara logic sbb : putra (eka, munos). putra (eka, agus). putra (munos, chakim). putra (munos, dimas). putri (agus, crista). putri (agus, erna). 9
  • 10.
    Aturan adalah suatu pernyataanyang menunjukkan bagaimana fakta-fakta berinteraksi satu dengan yang lain untuk membentuk suatu kesimpulan. -Sebuah aturan dinyakatakan sebagai suatu kalimat bersyarat. -Kata “if” adalah kata yang dikenal Prolog untuk menyatakan kalimat bersyarat atau disimbolkan dengan “:-“. Aturan (“Rules”) Contoh Fakta dan Aturan F : Tino suka apel A : Yuli suka sesuatu yang disukai Tino Prolog suka(tino, apel). suka(yuli,Sesuatu) :- suka(tino,Sesuatu). 10
  • 11.
    Pertanyaan (“Query”) Setelah memberikan data-databerupa fakta dan aturan, selanjutnya kita dapat mengajukan pertanyaan berdasarkan fakta dan aturan yang ada. - Penulisannya diawali simbol “?-“ dan diakhiri tanda “.”. Contoh Pertanyaan Apakah Tini suka boneka ? Contoh Prolog dan Jawaban Program ?-suka(tini,boneka). Yes ....... (jika faktanya Tini suka boneka) No...........(jika tidak sesuai fakta). 11
  • 12.
    Predikat Predikat adalah namasimbolik untuk relasi Syarat-syarat penulisan nama predikat : oHarus diawali dengan huruf kecil dan dapat diikuti dengan huruf, bilangan atau garis bawah. oPanjang nama predikat maksimum 250 karakter. oTidak diperbolehkan menggunakan spasi, tanda minus, tanda bintang dan garis miring. Contoh : ayah(slamet,amin). Predikat dari fakta tersebut ditulis : ayah(simbol,simbol). dimana ayah adalah nama predikat, sedangkan slamet dan amin adalah menujukkan argumen. 12
  • 13.
    Variabel Varibel adalah besaranyang nilainya dapat berubah-ubah. Tata cara penulisan variabel : 1.Nama varibel harus diawali huruf besar atau garis bawah(_) 2.Nama variabel dapat terdiri dari huruf, bilangan, atau simbol dan merupakan kesatuan dengan panjang maksimum 250 karakter. 3.Nama variabel hendaknya mengandung makna yang berkaitan dengan data yang dinyatakannya. Dari query akan dicari siapakah anak dari ayah yang bernama Slamet. Karena mempunyai relasi yang sama (yaitu ayah), variabel Anak akan mencari nilai dari konstanta suatu fakta/aturan yang sepadan. Tanda “;” digunakan bila terdapat kemungkinan ada lebih dari satu jawaban. “No” berarti tidak ada lagi kemungkinan jawaban. Contoh : dari silsilah di atas : ?- ayah(slamet,Anak). Anak=budi ; Anak=badu No 13
  • 14.