Politeknik Indramayu By: Munengsih Sari Bunga Knowledge Representation 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. 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. 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 : Representasi jenis ini menggunakan ekspresi-ekspresi dalam logika formal untuk merepresentasikan basis pengetahuan. Representasi Prosedural : Representasi menggambarkan pengetahuan sebagai kumpulan instruksi untuk memcahkan suatu problema. 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. Representasi terstruktur : Representasi terstruktur memperluas network dengan cara membuat setiap simpulnya menjadi sebuah struktur data kompleks. 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. Representasi Logika Merupakan bentuk representasi pengetahuan yang paling tua. Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran, sistem kaidah dan prosedur yang membantu proses penalaran Logika (Logic) Terdapat dua bentuk dasar penalaran dalam logika untuk membuat inferensi yang diambil dari premis: 1. Deduktif Penalaran ini bergerak dari prinsip/premis umum menuju konklusi khusus. Proses deduktif umumnya dimulai dari suatu si logi smeatau pernyataan premis dan inferensi. Proses deduktif umumnya terdiri dari tiga bagian : premis mayor, premis minor, dan konklusi. Contoh: Premis mayor : Jika Hujan turun, saya tidak akan lari pagi. Premis minor : Pagi ini hujan turun. Konklusi : Oleh karena itu, pagi ini saya tidak akan lari pagi. Logika (Logic) 2. Induktif Penalaran induktif dimulai dari masalah khusus menuju ke masalah umum. Atau dengan perkataan lain, penalaran induktif menggunakan sejumlah fakta atau premis yang mantap untuk menarik kesimpulan umum. Contoh: Premis 1 : Dioda yang salah menyebabkan peralatan elektronik rusak. Premis 2 : Transistor rusak menyebabkan elektronik rusak. Premis 3 : Sirkuit terpadu (IC) rusak menyebabkan peralatan elektronik tidak berfungsi. Konklusi : Maka, peralatan semi-konduktor rusak merupakan penyebab utama rusaknya peralatan elektronik LOGIKA KOMPUTASIONAL Dalam melaksanakan penalaran menggunakan logika, sebuah komputer harus menggunakan konversi silogisme dan proses penalaran deduktif atau induktif ke dalam bentuk yang sesuai dengan manipulasi komputer. Hal ini merupakan sistem kaidah dan prosedur yang memungkinkan komputer bisa menarik inferensi dari berbagai premis yang menggunakan berbagai teknik logika. Metoda ini dikenal dengan logika komputasional (computati onal logi c). Logika komputasional memiliki dua bentuk 1. Logika Proposisional / Kalkulus Proposisional 2.Logika Predikat / Kalkulus Predikat LOGIKA PROPOSISIONAL Suatu proposisi tidak lebih daripada suatu pernyataan (statement) yang menyatakan benar atau salah. Ini merupakan premis yang dapat digunakan untuk memperoleh proposisi baru atau inferensi. Kaidah ini digunakan untuk menentukan benar atau salah suatu proposisi baru. Suatu proposisi, premis atau kaidah disimbolkan dengan menggunakan huruf besar. Misalnya, A = Tukang pos mengantar surat mulai senin sampai Sabtu B = Hari ini Hari Minggu C = Maka, hari ini tukang pos tidak mengantar surat LOGIKA PROPOSISIONAL Dua atau lebih proposisi bisa digabungkan dengan menggunakan penghubung logika/operator logika, yaitu and, or , not dan i mpl i es. Penggunaan penghubung / operator logika ini sama dengan penggunaan aljabar Boolean Contoh: 1. A = Hari ini hujan Not A = Hari ini ti dak hujan LOGIKA PROPOSISIONAL 2. A = Mobil saya berwarna hitam B = Mesin mobil berwarna hitam itu 6 silinder C = A and B = Mobil saya berwarna hitam dan mesinnya 6 silinder 3. Sebuah perusahaan akan menerima karyawan baru dengan syarat : Seorang wanita berusia tidak lebih dari 25 tahun and Lulusan Informatika Dengan demikian, seorang pelamar baru bisa diterima menjadi karyawan bila kedua syarat tersebut dipenuhi. LOGIKA PROPOSISIONAL 4. A = Seorang wanita berusia tidak lebih dari 25 tahun B = Lulusan Informatika C = A or B Maka cukup salah satu persyaratan dipenuhi, seseorang dapat diterima sebagai karyawan. Bentuk or ini dikenal dengan inclusive or. Bentuk or yang lain adalah exclusive or. Or eksklusif bernilai benar jika salah satu prososisi awal bernilai benar tapi tidak keduanya sekaligus. Notasi yang digunakan untuk eksklusif or adalah xor LOGIKA PROPOSISIONAL 5. A = Mobil rusak B = Saya tidak bisa naik mobil C = A i mpl i es B = Mobil rusak, karena itu saya tidak bisa naik mobil. = I f mobil rusak, t hen saya tidak bisa naik mobil. Karena masih berkaitan dengan pernyataan, kemampuan logika proposisional untuk merepresentasikan pengetahuan dalam kehidupan nyata dengan benar masih diragukan atau setidaknya masih terbatas. LOGIKA PREDIKAT Logika predikat seluruhnya menggunakan konsep dan kaidah logika proposisional yang sama. Logika predikat dapat memecah pernyataan ke dalam bagian komponen yang disebut obyek, karakteristik obyek, atau beberapa keterangan obyek. Logika predikat dapat menggunakan variabel dan fungsi variabel di dalam pernyataan logika simbolik. Dengan demikian, logika simbolik dapat diterapkan untuk pemecahan masalah- masalah praktis. LOGIKA PREDIKAT Dalam kalkulus predikat, suatu proposisi atau premis dibagi menjadi 2 bagian, yaitu: argumen (obyek), dan predikat (keterangan / karakteristik) Argumen adalah individu atau obyek yang membuat keterangan. Dalam bahasa Inggris, obyek dan individu merupakan kata benda yang berfungsi sebagai subyek dan obyek suatu kalimat (sentence). Dalam sebuah kalimat, predikat bisa berupa kata kerja atau bagian kata kerja. Untuk membuat suatu proposisi, keduanya (argumen dan predikat) digabungkan LOGIKA PREDIKAT Bentuk umum logika predikat : pr edi kat ( i ndi vi du[ obyek] _1, i ndi vi du[ obyek] _2) Contoh: 1. Proposisi : Jhony mencintai Marry. Ekspresi kalkulus predikat : menci nt ai ( J hony, Mar y) . Menci nt ai -> produk (keterangan) J hony -> argumen (obyek) Mar y -> argumen (obyek) 2. Proposisi : Baju disimpan di lemari. Ekspresi kalkulus predikat : di si mpan_di ( l emar i , baj u) . 3. Proposisi : Mobil berada di dalam garasi. Ekspresi kalkulus predikat : di _dal am( mobi l , gar asi ) . LOGIKA PREDIKAT Dalam banyak hal, predikat mungkin hanya mempunyai satu argumen saja. Contoh: 1. Proposisi : Pintu terbuka. Ekspresi kalkulus predikat : buka( pi nt u) . 2. Proposisi : Ban gembos. Ekspresi kalkulus predikat : gembos( ban) . 3. Proposisi : Krishna adalah seorang laki-laki. Ekspresi kalkulus predikat : l aki - l aki ( Kr i shna) . LOGIKA PREDIKAT Argumen dapat juga berupa peubah (variable). Contoh: 4. Proposisi : Jhony suka Marry. Bila Jhony = x, dan Marry = y, maka ekspresi kalkulus predikatnya : suka( x, y) . Dengan menggunakan peubah, basis pengetahuan dapat terbentuk. Pada contoh 4 di atas basis pengetahuannya ialah suka( x, y) , yang berarti x suka y. LOGIKA PREDIKAT Pengetahuan diekspresikan dalam kalkulus predikat yang bisa dimanipulasi agar menimbulkan inferensi Contoh: Proposisi : Jhony suka Marry Ramona suka Marry Misalkan Jhony = x, Marry = y, dan Ramona = z. Maka ekspresi suka( x, y) dan t i dak suka( z, y) i mpl i es t i dak suka( x, z) menerangkan bahwa Jika Jhony suka Marry dan Ramona tidak suka Mary, maka Jhony tidak suka Ramona LOGIKA PREDIKAT Pemberian nilai (assigning) nama individu atau obyek tertentu kepada suatu peubah dinamakan instansiasi. Individu atau obyek itu menjadi suatu instance (contoh) variabel tersebut. Pada contoh di atas, variabel untuk Jhony, Marry, dan Ramona adalah x, y, dan z. LOGIKA PREDIKAT Pengukuraan kuantitas (quanti fi er) adalah simbol yang mengijinkan untuk menyatakan suatu rangkaian atau cakrawala dalam suatu ekspresi logika. Ada dua pengukuran kuantitas yang digunakan, yaitu: 1.Ukuran Kuantitas Universal. Simbol yang digunakan , berarti untuk semua atau untuk setiap. Simbol ini menyatakan bahwa ekspresi berlaku secara universal benar, yaitu untuk semua nilai. Contoh: Semua orang Texas adalah warga negara Amerika Serikat Dengan quantifier ditulis ( x) [ Or ang Texas( x) , war ga negar a Amer i ka Ser i kat ( x) ] LOGIKA PREDIKAT 2. Ukuran Kuantitas Eksistensial. Simbol yang digunakan , berarti terdapat atau ada. Contoh: Beberapa mobil berwarna merah Dengan quantifier ditulis ( x) [ mobi l ( x) dan ber war na mer ah( x) ] Apa yang telah diuraikan pada bagian di atas merupakan suatu sistem untuk mengekspresikan pengetahuan (berupa fakta-fakta) ke dalam bentuk simbolik. Yang selanjutnya dilakukan adalah menggunakan simbol itu untuk membuat inferensi. Yakni bagaimana cara menggunakan pengetahuan itu untuk menjawab pertanyaan, menalar, atau menarik kesimpulan. LOGIKA PREDIKAT Berbagai kaidah digunakan untuk memanipulasi ekspresi logika dalam rangka membuat ekspresi baru. Kaidah yang dimaksud diantaranya adalah modus ponens, modul tollens, dan sillogisma. Apabila proposisi awal benar maka dengan langkah-langkah yang correct akan menghasilkan kesimpulan yang juga benar LOGIKA PREDIKAT Pengetahuan prosedural dapat direpresentasikan dalam bentuk logika predikat. Pernyataan a 1 , a 2 , a 3 , . . ., a n -> Bdapat dipandang sebagai prosedur yang digunakan untuk menghasilkan keadaan yang memenuhi kondisi B. REPRESENTASI PENGETAHUAN SISTEM PRODUKSI (PRODUCTION SYSTEM) Sistem produksi memiliki struktur seperti struktur proses pencarian (search). Secara umum, sistem produksi terdiri dari komponen-komponen: 1. Ruang Keadan. 2. Memori Aktif. 3. Strategi Kontrol. Komponen Sistem Produksi Ruang Keadaan berisi keadaan awal, tujuan dan kumpulan aturan yang digunakan untuk mencapai tujuan. Memori Aktif berisi deskripsi keadaan semesta pembicaraan saat ini dalam proses penalaran. Strategi Kontrol berguna untuk mengarahkan bagaimana proses pencarian akan berlangsung dan mengendalikan arah eksplorasi. Arsitektur Sistem Produksi Dpl, Sistem Produksi menyediakan pengendalian berdasar pola dari proses pemecahan problema dan terdiri dari sekumpulan aturan produksi , memor i akti f, dan kontrol mekani sme i nferensi Kaidah / Aturan Produksi Representasi pengetahuan dengan sistem produksi dinamakan kaidah/aturan produksi (production method) sering disebut produksi saja. Merupakan seperangkat aturan yang masing- masing berisi pola sisi kiri (bagian kondisi/anteseden/premis) yang menentukan pemakaian aturan tertentu, dan sisi kanan (bagian tindakan/konsekuen/konklusi) yang menggambarkan tindakan yang harus dilakukan jika aturan tertentu tersebut digunakan. Kaidah / Aturan Produksi Pada bagian kondisi (kiri) merupakan pernyataan dengan awalan if, sedangkan bagian tindakan (kanan) merupakan pernyataan dengan awalan then. Contoh kaidah tipikal : 1. I f harga stok turun di bawah Rp 1 juta, t hen beli 100 saham. 2. I f suhu lebih dari 30 C, t hen hidupkan alat pendingin. 3. I f berada di bawah garis belakang lawan and bola berada di garis 30 meter dari gawang, t hen bikinlah ruang untuk mencetak gol. 4. I f pelamar itu wanita berusia tidak lebih dari 25 tahun or pelamar itu lulusan perguruan tinggi komputer, t hen bisa diterima sebagai karyawan. Memori Aktif (Active Memory) Merupakan satu atau lebih basis data (database) yang berisi informasi tentang tugas-tugas khusus. Beberapa bagian basis data mungkin bersifat permanen, sedangkan yang lain hanya berisi solusi problema yang sedang dihadapi saat ini. Informasi yang terdapat di dalam basis data tersebut mungkin terstruktur dengan cara tertentu. Kontrol Mekanisme Inferensi Suatu strategi pengendalian (contr olli ng strategy) yang menentukan urutan pembandingan suatu aturan dengan basis data dan cara menyelesaikan suatu konflik yang muncul bila beberapa aturan saling bertumbukan pada saat yang bersamaan. Proses berakhir bila tak ada kondisi aturan yang cocok dengan isi memori aktif Sistem Produksi Teka-teki 8 (8-Puzzle) Keadaan Awal 1 2 3 7 8 4 6 5 Keadaan Akhir (Tujuan) 1 2 3 8 4 7 6 5 Sistem Produksi Teka-teki 8 (8-Puzzle) Himpunan kaidah produksi Kondisi Tindakan keadaan tujuan dlm memori aktif
diam saja blank tidak berada di tepi atas
gerakan blank ke atas blank tidak berada di tepi bawah
gerakan blank ke bawah blank tidak berada di tepi kanan
gerakan blank ke kanan blank tidak berada di tepi kiri
gerakan blank ke kiri Sistem Produksi Teka-teki 8 (8-Puzzle) Memori aktif adalah keadaan papan saat ini dan keadaan tujuan. Pengendalian: Mencoba setiap produksi secara urut. Loop tidak diperkenankan. Hentikan bila tujuan telah ditemukan. Metode Penalaran (Reasoning Methode) Apabila pengetahuan direpresentasikan dengan aturan, maka ada 2 metode yang dapat digunakan: 1. Penalaran Maju (Forward Reasoning) 2. Penalaran Mundur (Backward Reasoning) Penalaran Maju Vs. Penalaran Mundur Pada penalaran maju, pelacakan dimulai dari keadaan awal (informasi atau fakta yang ada) dan kemudian dicoba untuk mencocokan dengan tujuan yang diharapkan. Pada penalaran mundur, pelacakan dimulai dari tujuan atau hipotesa, baru dicocokkan dengan keadaan awal atau fakta-fakta yang ada. Penalaran Maju Vs. Penalaran Mundur Faktor yang mempengaruhi pemilihan backward atau forward dalam memilih metode penalaran: A. Banyaknya keadaan awal dan tujuan. Jika jml keadaan awal lebih kecil daripada tujuan, maka digunakan penalaran forward. Jika sebaliknya, maka digunakan penalaran backward. Penalaran Maju Vs. Penalaran Mundur B. Jumlah simpul yang dapat diraih secara langsung. Labih baik dipilih yang jumlah simpul tiap cabangnya lebih sedikit. C. Apakah program butuh menanyai pengguna untuk melakukan justifikasi terhadap proses penalaran? Jika ya, maka alangkah baiknya dipilih arah yang lebih memudahkan pengguna. Penalaran Maju Vs. Penalaran Mundur D. Bentuk kejadian yang akan memicu penyelesaian masalah. Jika kejadian itu berupa fakta baru, maka lebih baik dipilih penalaran forward. Namun, jika kejadian itu berupa query, maka lebih baik digunakan penalaran backward. Thank You 44