Pertemuan 4 Representasi Pengetahuan Betha Nurina Sari, M.Kom betha.nurina@staff.unsika.ac.id
Representasi Pengetahuan Logika Pohon – Decision Tree Jaringan Semantik Frame Naskah (Script) List Aturan / Sistem Produksi
Representasi Pengetahuan Slide pertemuan 4 bisa diunduh di bethanurinasari.wordpress.com
Pengetahuan Fakta atau kondisi sesuatu atau keadaan yang timbul karena suatu pengalaman. Hirarki Pengetahuan Meta knowledge : knowledge dan keahlian Knowledge : Informasi yang telah diproses Informasi : Data yang telah diproses Data : Hal yang paling potensial Noise : Data yang masih kabur
Klasifikasi Pengetahuan Pengetahuan prosedural (procedural knowledge) Lebih menekankan pada bagaimana melakukan sesuatu. Contoh: pengetahuan tentang bagaimana mencuci dengan menggunakan mesin Pengetahuan tentang bagaimana membuat puding Pengetahuan tentang bagaimana cara mengobati luka bakar
Klasifikasi Pengetahuan Pengetahuan deklaratif (declarative knowledge) Menjawab pertanyaan apakah sesuatu bernilai salah atau benar. Contoh: Jangan berikan pisau pada anak dibawah 3 tahun Buah apel berwarna hijau dan berbentuk bulat Ada asosiasi positif antara merokok dan penyakit kanker
Klasifikasi Pengetahuan Pengetahuan tacit (tacit knowledge) Pengetahun yang tidak bisa diungkapkan dengan bahasa Bagaimana cara mengayuh sepeda Bagaimana cara berjinjit untuk menari balet Bagaimana kita menggerakkan tangan Bagaimana memejamkan mata
Representasi Pengetahuan Representasi Pengetahuan dimaksudkan untuk menangkap sifat-sifat penting masalah dan membuat infomasi dapat diakses oleh prosedur pemecahan masalah. Bahasa representasi harus dapat membuat seorang programmer mampu mengekspresikan pengetahuan untuk mendapatkan solusi suatu masalah.
Karakter Model Representasi Pengetahuan Harus bisa diprogram dengan bahasa pemrograman atau dengan shells dan hasilnya disimpan dalam memori Dirancang sedemikian sehingga isinya dapat digunakan untuk proses penalaran Model representasi pengetahuan merupakan sebuah struktur data yang dapat dimanipulasi oleh mesin inferensi dan pencarian untuk aktivitas pencocokan pola Menangkap sifat-sifat penting problema Membuat informasi itu dapat diakses oleh prosedur pemecahan problema/masalah
Klasifikasi Representasi Pengetahuan [Mylopoulos dan Levesque] Representasi Logika : Menggunakan ekspresi-ekspresi logika formal untuk merepresentasikan basis pengetahuan Representasi Prosedural: Menggambarkan pengetahuan sebagai kumpulan instruksi Representasi Network (Jaringan) : Menangkap pengetahuan sebagai sebuah graf, dimana node-nodenya menggambarkan objek atau konsep dalam problem yang dihadapi Representasi Terstruktur : Representasi terstruktur memperluas jaringan. Contoh dari representasi ini adalah Script, Frame dan Object
REPRESENTASI PENGETAHUAN TOPIK BAHASAN REPRESENTASI PENGETAHUAN
REPRESENTASI LOGIKA Representasi logika terdiri dari dua jenis yaitu Kalkulus proposisional (Propositional logic) dan Kalkulus predikatif (Predicate logic).
Representasi Logika Representasi pengetahuan yang paling tua Menggunakan ekspresi-ekspresi logika untuk merepresentasikan basis pengetahuan Proses logika adalah proses menarik kesimpulan/inferensi berdasarkan fakta yang ada Inputnya berupa premis atau fakta-fakta yang diakui kebenarannya Outputnya berupa kesimpulan/inferensi/konklusi yang benar PROLOG merupakan bahasa pemrograman ideal dalam mengimplementasikan representasi logika
REPRESENTASI LOGIKA Kalkulus Proposisional (Propositional Logic) Proposisi adalah suatu model untuk mendeklarasikan suatu fakta. Lambang-lambang proposisional menunjukkan proposisi atau pernyataan tentang segala sesuatu yang dapat benar atau salah.
LOGIKA PROPOSISI (PROPOSITIONAL LOGIC) Logika Proposisi : Logika yang hanya mempunyai nilai benar atau salah Proposisi : Suatu pernyataan (fakta) yang dapat bernilai Benar atau Salah Konjungsi : ^ (and / dan ) Disjungsi : v (or / atau) Negasi : ¬ (not / tidak / bukan) Implikasi : → (if then / jika ... maka ...) Ekuivalensi : ↔ (if and only if / jika dan hanya jika)
CONTOH LOGIKA PREPOSISI Diketahui preposisi-preposisi berikut: P : Hari ini hujan Q : Murid-murid diliburkan dari sekolah Maka P ^ Q : Hari ini hujan dan murid-murid diliburkan dari sekolah P v Q : Hari ini hujan atau murid-murid diliburkan dari sekolah ~P : Tidak benar hari ini hujan (Hari ini tidak hujan) Contoh 2: P : Hujan turun sekarang Q : Saya tidak akan ke pasar P Q : Jika hujan turun sekarang maka saya tidak akan ke pasar
Tabel Logika Contoh Dalam ekspresi logika: A = Dewi Rajin Belajar B = Dewi Lulus Ujian C = Dewi mendapat hadiah istimewa Dalam ekspresi logika: Jika Dewi rajin belajar maka Dewi lulus ujian dan mendapat hadiah istimewa : A B ^ C Jika Dewi rajin belajar maka Dewi lulus ujian dan mendapat hadiah istimewa : (A (B ^ C)) Jika Dewi rajin belajar maka Dewi lulus ujian dan mendapat hadiah istimewa : ((A B) ^ C)
Logika Predikat Logika yang digunakan untuk merepresentasikan masalah yang tidak dapat dilakukan atau direpresentasikan dengan menggunakan logika preposisi Misal: Diketahui fakta-fakta sebagai berikut: Andi adalah seorang laki-laki : A Ali adalah seorang laki-laki : B Amir adalah seorang laki-laki : D Agus adalah seorang laki-laki : E Jika kelima fakta tersebut dinyatakan dengan menggunakan preposisi, maka akan terjadi pemborosan. Dimana beberapa pernyataan dengan predikat yang sama akan dibuat dalam preposisi yang berbeda. Pernyataan diatas apabila dinyatakan dalam bentuk logika predikat adalah sebagai berikut: seorang(x(Andi, Ali, Amir, Anto, Agus), laki-laki).
Logika Predikat Contoh logika predikat lainnya: Diana adalah nenek dari Ibu Amir Bentuk logika predikat: Nenek(Diana, Ibu(Amir)) Mahasiswa berada didalam kelas Bentuk logika predikat : Di dalam (Mahasiswa, Kelas) Dari contoh diatas dapat dijabarkan sebagai berikut: Di dalam = predikat (keterangan)
Penalaran (Reasoning) Jika ruang masalah sangat besar penggunaan logic dan teknik penalaran (reasoning) akan lebih efisien dibanding penggunaan teknik pencarian (searching) Pada bagian ini dibahas teknik penalaran (reasoning) yakni teknik penyelesaian masalah dengan cara merepresentasikan masalah ke dalam basis pengetahuan (knowledge base) dan melakukan proses penalaran untuk membuat kesimpulan/keputusan menggunakan logic atau bahasa formal (bahasa yang dipahami oleh komputer)
Penalaran (Reasoning) Sistem akan mencoba untuk memberikan output berupa solusi dari suatu masalah berdasarkan kumpulan pengetahuan yang ada
Tree / Pohon Struktur sederhana untuk representasi pengetahuan Merupakan struktur grafik hirarki
Decision Tree Pohon keputusan mudah dikonversi ke dalam bentuk aturan (rule)
JARINGAN SEMANTIK (SEMANTIC NETWORK) Mengekspresikan solusi dan permasalahan dengan menggunakan grafik Disajikan dalam bentuk graph berarah Menggunakan node (simpul) sebagai kondisi dan arc (link) sebagai relasi antar simpul Dapat menggambarkan relasi “adalah/contoh dari” (IS-A) Dapat menggambarkan relasi “bagian dari” (A Kind Of /AKO/ is part), merelasikan individu ke induknya Dapat menggambarkan relasi “mempunyai”
CONTOH SEMANTIC NETWORK
CONTOH SEMANTIC NETWORK Menggambarkan relasi “adalah/contoh dari” (IS-A)
CONTOH SEMANTIC NETWORK Menggambarkan hubungan hirarki “bagian dari”
Perhatikan Jaringan Semantic sederhana berikut ini: Sayap Memiliki Kenari Adalah Burung Berpindah tempat terbang
Perluasan yang bisa dilakukan dengan penambahan Objek yang sama Ditambahkan node penguin yang sama dengan node kenari Objek yang lebih khusus Penambahan node tweety yang lebih khusus dari kenari. Juga penambahan informasi bahwa tweety termasuk burung Objek yang lebih umum Ditambahkan node hewan yang merupakan bentuk lebih umum dari burung
Sehingga kita dapatkan: udara tweety Sayap adalah bernafas Memiliki Kenari Adalah Adalah Burung hewan Adalah penguin Berpindah tempat terbang
BINGKAI (FRAME) Metode menampilkan pengetahuan mengenai obyek tertentu (misal: lokasi, benda, peristiwa, situasi, dll) Digunakan untuk merepresentasikan pengetahuan yang didasarkan pada karakteristik yang sudah dikenal (berdasarkan pengalaman)
Contoh FRAME
CONTOH BINGKAI (FRAME)
Hirarki Frame
Contoh
SCRIPT (Naskah) Merepresentasikan pengetahuan dengan menggambarkan urutan kejadian Merepresentasikan situasi, pengetahuan dan pengalaman Penggambaran urutan peristiwa menggunakan serangkaian slot yang berisi informasi tentang orang, objek, dan tindakan-tindakan yang terjadi dalam suatu peristiwa
ELEMEN DALAM SCRIPT Beberapa elemen yang terdapat dalam script yaitu (Suparman: 1991): Kondisi masukan: menggambarkan situasi yang harus dipenuhi sebelum terjadinya sebuah peristiwa yang ada dalam script Prop: mengacu kepada objek yang digunakan dalam urutan peristiwa yang terjadi Role: mengacu pada orang-orang yang terlibat dalam script Track: mengacu pada variasi yang mungkin terjadi dalam script Scene: menggambarkan urutan peristiwa aktual yang terjadi Hasil: merupakan kondisi setelah urutan peristiwa dalam script terjadi
CONTOH SCRIPT Script berangkat ke restoran seperti berikut ini: SCRIPT RESTORAN Jalur (Track) : Restoran Swalayan (Fast Food) Peran (Roles) : Tamu, Pelayan Pendukung (Prop) : Counter, baki, makanan, uang, serbet, garam, merica, kecap, sedotan dan lain-lain Kondisi masukan : Tamu Lapar - Tamu punya uang Adegan (Scene) 1: Masuk Tamu parkir mobil Tamu masuk restoran Tamu antri Tamu baca menu di daftar menu dan mengambil putusan tentang apa yang akan dipesan Adegan 2: Pesanan Tamu memberikan pesanan kepada pelayan Pelayan mengambil pesanan dan meletakkan makanan diatas baki. Tamu membayar
CONTOH SCRIPT Adegan 3: Makan - Tamu mengambil serbet, sedotan, garam dan lain-lain - Tamu membawa baki makanan ke meja kosong - Tamu makan Adegan 4: Pulang - Tamu membersihkan meja - Tamu membuang sampah - Tamu meninggalkan restoran - Tamu naik mobil dan pulang Hasil - Tamu merasa kenyang - Uang tamu jadi habis - Tamu senang - Tamu kecewa - Tamu sakit perut
List Struktur sederhana untuk representasi pengetahuan Daftar dari rangkaian materi yang terkait List digunakan untuk objek yang dikelompokkan, dikategorikan atau digabungkan
Aturan / Sistem Produksi Pengetahuan dalam kaidah produksi direpresentasikan dalam bentuk JIKA [kondisi] MAKA [Aksi] JIKA [premis] MAKA [Konklusi]
Contoh Aturan 1: JIKA terjadi luka MAKA berikan Betadine Aturan 2: JIKA tidak punya uang Cash MAKA ambil tabungan Aturan 3 : JIKA bersin-bersin MAKA terserang influensa JIKA bensin habis MAKA Motor tidak akan hidup
Contoh Aturan terkadang menggunakan operator logika AND atau OR. Misalnya: Aturan 5: JIKA dana mencukupi DAN pengiriman bisa dilakukan kurang dari 1 bulan MAKA beli laser printer Aturan 6: JIKA kontraktor tidak bisa menyelesaikan pekerjaan tepat waktu ATAU biaya melebihi anggaran MAKA kontrak batal
Aturan -> Kompleksitas Untuk hasil yang lebih akurat dalam memecahkan masalah dalam suatu domain, biasanya dibutuhkan aturan yang cukup banyak karena masing-masing aturan berisi detail pengetahuan Jumlah aturan akan menggambarkan kompleksitas dari sistem pakar / produk kecerdasan buatan
Contoh kasus Akan dibangun sebuah sistem pakar untuk memberikan saran kepada usaha kecil tentang paket software apa yang harus digunakan Variabel dari pemberian sarannya tampak pada tabel 1 Variabel Makna Nilai dari variabel Fungsi derajat kompleksitas dari dokumen simple, kompleks Biaya Anggaran yang disediakan untuk pembelian software Rendah, Tinggi Produk paket software untuk mengelola dokumen A, B, C
Contoh kasus Pengetahuan akan di representasikan dengan metode kaidah produksi Untuk mempermudah representasi pengetahuan, akan dibuat table aturan (Tabel 2) dan Pohon Fungsi Biaya Produk Simple rendah A simple tinggi compleks Tidak ada Compleks B atau C
Representasi Pengetahuan - Pohon
Kaidah produksi Aturan 1: JIKA fungsi simple DAN biaya rendah atau tinggi MAKA pilih WP A Aturan 2: JIKA fungsi kompleks DAN biaya rendah MAKA tidak ada yang bisa dipilih DAN biaya tinggi MAKA pilih WP B atau C
NEXT >>> Representasi Pengetahuan Download PROLOG (Programming in Logic) http://www.swi-prolog.org/download/stable Praktikum Representasi Pengetahuan : Logika Tentukan kelompok Anda (maksimal 1 kelompok beranggotakan 5 orang) untuk persiapan pembahasan pekan depan. PERTEMUAN 5 : QUIZ . Persiapkan diri Anda dan Deadline tugas Individu 1. See you, Good Luck !