knowledge representation
DESCRIPTION
Kecerdasan Buatan Pertemuan 2. Knowledge Representation. Ali Ridho Barakbah. IT-EEPIS. Knowledge Representation. Suppose I tell you the following... The Duck-Bill Platypus and the Echidna are the only two mammals that lay eggs. Only birds and mammals are warm blooded. - PowerPoint PPT PresentationTRANSCRIPT
KnowledgeRepresentation
Ali Ridho Barakbah
Kecerdasan BuatanPertemuan 2
IT-EEPIS
Knowledge Representation
Suppose I tell you the following...
• The Duck-Bill Platypus and the Echidna are the only two mammals that lay eggs.• Only birds and mammals are warm blooded.• “Susan”, my pet Armadillo is warm blooded, and has no feathers.• All birds have feathers.
…and I ask you, does “Susan” lay eggs?
Knowledge Representation
- Dibangun sebuah sistem yang berisi sekumpulan fakta. Sistem ini disebut Knowledge Base (KB).
- Selanjutnya dari Sistem tersebut, kita dapat mengajukan pertanyaan dengan jawaban benar/salah.
- Sebagai contoh untuk mendapatkan jawaban “what class is susan?”
Dapat kita rubah menjadi “susan a amphibian?”“susan a bird?”dsb
Knowledge Representation(Representasi Pengetahuan)
• Suatu proses untuk menangkap sifat-sifat penting problema dan membuat informasi tersebut dapat diakses oleh prosedur pemecahan permasalahan
• Bahasa representasi harus dapat membuat seorang pemrogram mampu mengekspresikan pengetahuan yang diperlukan untuk mendapatkan solusi permasalahan.
Knowledge Representation(Representasi Pengetahuan)
• Knowledge engineering : proses mengumpulkan dan mengorganisasi pengetahuan
• Knowledge representation : proses bagaimana pengetahuan direpresentasikan untuk membentuk basis pengetahuan
Entiti Representasi Pengetahuan• Fakta
Adalah kejadian sebenarnya. Fakta inilah yang akan kita representasikan.
• Representasi dari fakta
Bagaimana cara untuk memodelkan fakta. Dari representasi ini, kita akan dapat memanipulasinya.
• Aturan adalah suatu pernyataan yang menunjukkan bagaimana fakta-fakta berinteraksi satu dengan yang lain untuk membentuk suatu kesimpulan.
Representasi yang baik
• Mengemukakan hal secara eksplisit• Membuat masalah menjadi transparan • Komplit dan efisien • Menampilkan batasan-batasan alami yang ada • Menekan/menghilangkan detil-detil yang
diperlukan • Dapat dilakukan komputasi (ada
batasan/konstraint)
Kategori Representasi
• Representasi logika [dibahas dalam ppt ini] : Representasi jenis ini menggunakan ekspresi-ekspresi dalam logika formal untuk merepresentasikan basis pengetahuan.
• Representasi prosedural: Representasi menggambarkan pengetahuan sebagai kumpulan instruksi untuk memecahkan suatu problema. Digunakan dalam pemrograman: IF-THEN
• Representasi network: Representasi ini menangkap pengetahuan sebagai sebuah graph dimana simpul-simpulnya menggambarkan obyek atau konsep dari problema yang dihadapi, sedangkan edge-nya menggambarkan hubungan atau asosiasi antar mereka. Contoh Graph dan Tree
• Representasi terstruktur: Representasi terstruktur memperluas network dengan cara membuat setiap simpulnya menjadi sebuah struktur data kompleks. Contoh: script, frame, dan object
• Dan lain-lain (kromosom, jaringan syaraf, gen, dll)
Jika suatu permasalahan dideskripsikan dengan menggunakan representasi yang tepat, maka dapat
dipastikan bahwa permasalahan tersebut dapat diselesaikan.
Logika
Bentuk representasi pengetahuan yang paling tua
Proses menarik kesimpulan (inferensi) berdasarkan fakta yang telah ada
Terdiri dari :Logika Proposisi (tidak di bahas)Logika Predikat
Logika Predikat Order Pertama• Konsep dan aturan sama dengan logika
proposisi
• Membagi sebuah pernyataan menjadi 2 bagian :
• Argumen
• Predikat
PREDICATE (Individual [object]1, Individual [object]2)
Logika Predikat Order Pertama
Contoh :
• Joko suka bahasa inggris Suka(joko, bahasa inggris)• Predikat (keterangan) : suka, argumen (objek) :
joko, bahasa inggris
• Toni adalah seorang mahasiswa mahasiswa(Toni)
Logika Predikat Order Pertama
Contoh :
• Andi adalah seorang laki-laki : A
• Ali adalah seorang laki-laki : B
• Amir adalah seorang laki-laki : C
• Anto adalah seorang laki-laki : D
• Agus adalah seorang laki-laki : E
• Dapat ditulis : laki2(x), dimana x adalah variabel yang bisa diganti dengan Andi, Ali,dll
Logika Predikat Order Pertama
Contoh :
teman(Andi,Joko)
teman(ayah_dari(Joni),ayah_dari(Andre))dimana :
argument : ayah_dari(Joni) adalah Andi
argument : ayah_dari(Andre) adalah Joko
predikat : teman
Ilustrasi Representasi Pengetahuansecara logik (Representasi Logika)
• Contoh sederhana fakta adalah sebagai berikut:
helder adalah anjing
• Sebagai predikat : anjing, argumen : helder• Fakta tersebut dapat direpresentasikan secara
logika, yaitu:
anjing(helder)
• Kita juga dapat merepresentasikan secara logik fakta lain, yaitu bahwa semua anjing mempunyai ekor
x : anjing(x) mempunyai_ekor(x)
• Kemudian secara deduktif dari mekanisme logik ini kita bisa mendapatkan representasi baru:
mempunyai_ekor(anjing)
• Dengan menggunakan fungsi mapping secara backward, kita dapat men-generate suatu kalimat yang berbunyi
helder mempunyai ekor
Contoh kasusRepresentasi Pengetahuan
• Cobalah representasi pengetahuan dari silsilah keluarga berikut ini
hari
agus
budi ani
ria ita rudi
Hasil representasi
anaklaki(hari, agus). dibaca sebagai anak laki-laki dari hari adalah agus
anaklaki(agus, budi).
anakperempuan(agus, ani).
anakperempuan(budi, ria).
anakperempuan(budi, ita).
anaklaki(ani, rudi).
Catatan
• Kita dapat menggunakan kalimat apapun sebagai predikat
• Ide dasar untuk membuat notasi adalah
predicate (argument, argument ).
Simple Queryon Knowledge Database
• Adalah bagaimana mencari suatu pengetahuan dari representasi yang ada
• Contoh:
anakperempuan(agus,P).
hasilnya adalah P = ani yang menandakan bahwa ani adalah anak perempuan dari agus
• Contoh lain:
anaklaki(OT,AL).
Hasil : OT=hari AL=agus
OT=agus AL=budi
OT=ani AL=rudi
• Contoh lain:
anaklaki(P,budi), anakperempuan(P,D).
untuk menanyakan saudara perempuan
dari budi
Hasil : P=agus D=ani
Meng-extend hubungan antara knowledge
• Kita dapat menambahkan hubungan antara knowledge, misalnya antara anak laki dan anak perempuan di-extend menjadi hubungan orangtua
orangtua(C,P):-anaklaki(P,C).
orangtua(C,P):-anakperempuan(P,C).
• Contoh :
orangtua(budi,P).
Hasil : P=agus
Recursive descriptionof relationship
• Jika ingin mencari turunan, berikut cara merepresentasikannya:
turunan(OT,TR):-orangtua(TR, OT). anak
turunan(OT,TR):-orangtua(TR, P), orangtua(P, OT). cucu
turunan(OT,TR):- orangtua(TR, P), orangtua(P,GP),orangtua(GP, OT). cicit
• Fakta di atas dapat diekspresikan dengan proses rekursif sbb:
turunan(OT,TR):-orangtua(TR,OT). anak
turunan(OT,TR):- orangtua(TR,P),turunan(OT,P).
Tugas
1. Dalam sebuah organisasi perusahaan terdapat tree sebagai berikut:
adi
burhan
bahrun bisrin
fahri farah ferdi
• Dari tree tersebut kita dapat membaca bahwa Burhan adalah bawahan langsung dari Adi, sebaliknya Adi adalah atasan langsung dari Burhan. Fahri dan Farah adalah anak buah dari Bahrun, sementara Fahri, Farah, Bahrun, Ferdi, Bisrin secara keseluruhan adalah anak buah dari Burhan. – Dengan menggunakan sintaks dalam bahasa Prolog, buatlah
representasi pengetahuan dari fakta tersebut di atas. (Dari definisi bawahan langsung).
– Dengan menggunakan sintaks dari definisi bawahan langsung di atas, terjemahkan untuk atasan langsung.
– Bagaimana kita membuat pertanyaan siapa bawahan langsung dari Burhan
• Dengan menggunakan deskripsi secara rekursif buatlah sintak untuk merepresentasikan fakta anak buah.
2. Dari pohon keluarga di bawah ini, tuliskan suatu program dalam bahasa Prolog yang menyatakan predikat anak, perempuan, laki-laki. Kemudian dari predikat ini buatlah relasi orang tua, saudara laki-laki, saudara perempuan, paman, bibi, kakek, nenek.
wati
idadeni
andihadi rita
anto
ita rudibudibudi
dina
Referensi
• Modul Ajar Kecerdasan Buatan, Entin Martiana, Tessy Badriyah, Riyanto Sigit, Politeknik Elektronika Negeri Surabaya, 2005.
• www.ai-depot.com• Tuntunan Praktis Pemrograman Bahasa
Prolog, Andrey Andoko, cetakan kedua, Penerbit elex Media Komputindo, 1991.