REPRESENTASI PENGETAHUAN
Representasi pengetahuan Problem solving pengetahuan yang cukup Kemampuan nalar sistem Langkah awal dalam membangun sebuah program AI adalah membangun sebuah Knowledge Base Representasi Pengatahuan: Proses bagaimana pengetahuan direpresentasikan untuk membentuk sebuah Knowledge Base Knowledge base Inference mechanism Computer Inputs Outputs
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.
Representasi pengetahuan Cara-cara lama: List, digunakan pada LISP Predicate Calculus, digunakan pada Prolog Tree, untuk heuristic search Karakteristik RP: Dapat diprogramkan Dapat dimanfaatkan untuk penalaran, menggambarkan kesimpulan sebagai fungsi kecerdasan
Representasi pengetahuan 1. Representasi Logika Representasi ini menggunakan ekspresi-ekspresi dalam logika formal untuk merepresentasikan basis pengetahuan. 2.Representasi Prosedural Menggambarkan pengetahuan sebagai sekumpulan instruksi untuk memecahkan suatu masalah. Dalam sistem yang berbasis aturan, aturan if-then dapat ditafsirkan sebagai sebuah prosedur untuk mencapai tujuan pemecahan masalah.
Representasi pengetahuan 3. Representasi Network Menyatakan pengetahuan sebagai sebuah graf dimana simpul-simpulnya menggambarkan obyek atau konsep dalam masalah yang dihadapi, sedangkan lengkungannya menggambarkan hubungan antar mereka. Contohnya adalah jaringan semantik.
Representasi pengetahuan 4.Representasi Terstruktur Memperluas network dengan cara membuat setiap simpulnya menjadi sebuah struktur data kompleks yang berisi tempat-tempat bernama slot dengan nilai-nilai tertentu. Nilai-nilai ini dapat merupakan data numerik atau simbolik sederhana, pointer ke bingkai (frame) lain, atau bahkan merupakan prosedur untuk mengerja kan tugas tertentu. Contoh : skrip (script), bingkai (frame) dan obyek (object).
Representasi Logika Terdiri dari dua jenis yaitu Kalkulus proposisional (Propositional logic) Kalkulus predikatif (Predicate logic
Logika Adalah representasi pengetahuan yang paling tua. Proses menarik kesimpulan dari fakta yang sudah ada Input: premis-premis dan Ouput: kesimpulan Terdiri dari: sintaks (simbol), semantik (fakta), dan proses pengambilan keputusan (inferensi) Proses penalaran: Deduktif (umum-khusus) Induktif (khusus-umum) Logika: Logika Preposisi: and, or, not, implikasi, dan ekuivalensi Logika Predikat: representasi fakta dalam bentuk well formed formula
Logika Contoh Penalaran Deduktif Premis mayor : Jika hujan turun saya tidak akan berangkat kuliah Premis minor : Hari ini hujan turun Konklusi : Hari ini saya tidak akan berangkat kuliah Contoh Penalaran Induktif Premis -1 : Aljabar adalah pelajaran yang sulit Premis -2 : Geometri adalah pelajaran yang sulit Premis -3 : Kalkulus adalah pelajaran yang sulit Konklusi : Matematika adalah pelajaran yang sulit
Bagaimana jika Premis -4 : Kinematika adalah pelajaran yang sulit Konklusi : ? ? ?
Logika proposisi Operator logika Konjungsi : ^ (and) Disjungsi : v (or) Negasi : ¬ (not) Implikasi : (if then) Ekuivalensi : ↔ (jika dan hanya jika)
Tabel kebenaran P Q P AND Q T F P Q P OR Q T F P Q P Q T F P Q P Q T F
Logika Proposisi Untuk melakukan inferensi pada logika proposisi resolusi : suatu aturan untuk melakukan inferensi yang dapat berjalan secara efisien dalam suatu bentuk khusus yaitu CNF (conjunctive normal form) Langkah :
Langkah-langkah untuk mengubah suatu kalimat (konversi) ke bentuk CNF Hilangkan implikasi dan ekuivalensi • x y menjadi ¬ x ∨ y • x ↔ y menjadi (¬ x ∨ y) ∧ (¬ y ∨ x) Kurangi lingkup semua negasi menjadi satu negasi saja • ¬ (¬ x) menjadi x • ¬ (x ∨ y) menjadi (¬ x ∧ ¬ y) • ¬ (x ∧ y) menjadi (¬ x ∨ ¬ y) Gunakan aturan assosiatif dan distributif untuk mengkonversi menjadi conjuction of disjunction • Assosiatif : (A∨ B)∨ C menjadi A∨ (B∨ C) • Distributif : (A ∧ B)∨ C menjadi (A∨ C) ∧ (B ∨ C) Buat satu kalimat terpisah untuk tiap-tiap konjungsi
Contoh: Diketahui basis pengetahuan (fakta-fakta yang bernilai benar) sebagai berikut : 1. P 2. (P ∧ Q) R 3. (S ∨ T) Q 4. T Tentukan kebenaran R. Untuk membuktikan kebenaran R dengan menggunakan resolusi,maka ubah dulu menjadi bentuk CNF.
Kemudian kita tambahkan kontradiksi pada tujuannya, R menjadi ¬ R sehingga fakta-fakta (dalam bentuk CNF) dapat disusun menjadi : 1. P 2. ¬ P ∨ ¬ Q ∨ R 3. ¬ S ∨ Q 4. ¬ T∨ Q 5. T 6. ¬ R Sehingga resolusi dapat dilakukan untuk membuktikan kebenaran R, sebagai berikut
Contoh bila diterapkan dalam kalimat P: Ani anak yang cerdas Q: Ani rajin belajar R: Ani akan menjadi Juara Kelas S: Ani makannya banyak T: Ani istirahatnya cukup
Kalimat yang terbentuk Ani anak yang cerdas Jika ani anak yang cerdas dan ani rajin belajar, maka ani akan menjadi juara kelas Jika ani makannya banyak atau ani istirahatnya cukup, maka ani rajin belajar Ani istirahatnya cukup
Setelah dilakukan konversi CNF, didapat: Fakta ke-2 : Ani tidak cerdas atau ani tidak rajin belajar atau ani akan menjadi juara kelas Fakta ke-3 : Ani tidak makan banyak atau ani rajin belajar Fakta ke-4 : Ani tidak cukup istirahat atau ani rajin belajar
Logic: Predicate Logic (1) Using all the same concepts and rules of propositional logic Represent knowledge in finer detail Breaking a statement (proposition) down into component parts: Argumen : individu atau objek yang membuat keterangan Predikat : keterangan yang membuat argumen dan predikat
Logic: Predicate Logic (2) PREDICATE (Individual [object]1, Individual [object]2) Examples: Proposition: The car is in the garage IN (car, garage) PROLOG Predicate (assertion) Argument (object)
Contoh: Jika besok tidak hujan, Tommy pergi ke gunung ¬ cuaca(hujan,besok) pergi(tommy, gunung) Diana adalah nenek dari ibu Amir nenek(Diana,ibu(Amir)) Mahasiswa berada di dalam kelas didalam(mahasiswa,kelas) Dari contoh diatas dapat dijabarkan sebagai berikut : di dalam = predikat (keterangan) mahasiswa = argumen (objek) kelas = argumen (objek)
Contoh: Johan suka Maria Ramon suka Maria Misal : Johan = x, Maria = y, Ramon = z Maka : suka(x,y) ∧ suka(z,y) tidak suka(x,z) Dibaca : Jika Johan suka Maria dan Ramon suka Maria, maka Johan tidak suka Ramon
Contoh: diketahui fakta-fakta berikut 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 Dengan logika predikat dapat dituliskan: laki-laki(x) Dimana x : variabel
Latihan. Misal terdapat pernyataan berikut Andi adalah seorang mahasiswa Andi masuk jurusan Elektro Setiap mahasiswa elektro pasti mahasiswa teknik Kalkulus adalah matakuliah yang sulit Setiap mahasiswa teknik pasti akan suka kalkulus atau akan membencinya Setiap mahasiswa pasti akan suka terhadap suatu matakuliah Mahasiswa yang tidak pernah hadir pada kuliah matakuliah sulit, maka mereka pastitidak suka terhadap matakuliah tersebut. Andi tidak pernah hadir kuliah matakuliah kalkulus
Gunakan operator mahasiswa (Andi) Elektro (Andi) , ¬, ^, v, (untuk setiap) , (terdapat) mahasiswa (Andi) Elektro (Andi) x : elektro(x) teknik(x) Sulit (kalkulus) x : teknik(x) suka (x, kalkulus) v benci (x, kalkulus) x : y : suka (x,y) x : y : mahasiswa(x) ^ sulit (y) ^ ¬hadir(x,y) ¬suka(x,y) ¬hadir(Andi, kalkulus)
List dan Tree List:serangkaian struktur data yang dibuat secara berhubungan, list bisa juga menggambarkan relasi dan hirarki Tree: suatu struktur data yang berupa node-node yang dibuat secara hirarkis dan hubungannya Lihat di Struktur Data!
Lists & Trees (2) List: Tree: Node Arc
Sematic Network Diperkenalkan oleh Ros Quillian Very flexible: almost any kind of object, attribute, concept, etc. can be defined and relationship created with links To seek answer: the computer simply searches forward or backward through the arcs from a starting node Gambaran pengetahuan grafis yang menunjukkan hubungan antar objek. Terdiri dari: lingkaran-lingkaran yang menunjukkan obyek dan informasi mengenai obyek tersebut panah (arc) yang menunjukkan hubungan antar obyek Kelebihan: Memiliki sifat inheritance Menggunakan representasi OAV (Object Atributte Value)
contoh
Frame (bingkai) Frame merupakan kumpulan pengetahuan tentang sutau objek tertentu, peristiwa, lokasi, situasi, dll. Frame memiliki slot yang menggambarkan rincian (atribut) dan karakteristik objek.
Script Mirip dengan frame, merepresentasikan pengetahuan berdasarkan pengalaman-pengalaman Frame menggambarkan obyek, sedangkan script menggambarkan urutan peristiwa Elemen script: Kondisi input: start, awal Track: variasi yang mungkin terjadi Prop: obyek pendukung yang harus ada Role: peran yang dimainkan oleh suatu obyek Scence: adegan yang terjadi Hasil (result): kondisi akhir yang terjadi
Contoh script John pergi ke restaurant kemarin malam. Dia memesan steak. Saat membayar, dia menyadari uangnya kurang. Dia cepat pulang, karena hujan mulai turun. Apakah John makan malam? (Dijawab dengan mengaktifkan Script restaurant) Dari soal, urutan kejadian normal, sehingga pasti script restaurant berjalan normal, jadi John pasti melewati tahap makan.
Contoh script Susan makan siang di luar. Dia duduk di meja dan memanggil pelayan. Pelayan memberikan menu dan Susan memesan hamburger. Mengapa pelayan memberikan menu? Script mengandung dua jawaban: - karena Susan meminta (backward) - agar Susan dapat menentukan apa yang ingin dimakannya (Forward)
Contoh script kejadian yang ada di UAS Jalur (track) : ujian tertulis matakuliah Kecerdasan Buatan Role (peran) : mahasiswa, pengawas Prop (pendukung) : lembar soal, lembar jawab, presensi, pena, dll Kondisi input : mahasiswa terdaftar untuk mengikuti ujian Adegan (scene) -1 : Persiapan pengawas • Pengawas menyiapkan lembar soal • Pengawas menyiapkan lembar jawab • Pengawas menyiapkan lembar presensi
Adegan-2 : Mahasiswa masuk ruangan • Pengawas mempersilahkan mahasiswa masuk • Pengawas membagikan lembar soal • Pengawas membagikan lembar jawab • Pengawas memimpin doa Adegan – 3 : Mahasiswa mengerjakan soal ujian • Mahasiswa menuliskan identitas di lembar jawab • Mahasiswa menandatangai lembar jawab • Mahasiswa mengerjakan soal • Mahasiswa mengecek jawaban
Adegan – 4 : Mahasiswa telah selesai ujian • Pengawas mempersilahkan mahasiswa keluar ruangan • Mahasiswa mengumpulkan kembali lembar jawab • Mahasiswa keluar ruangan Adegan – 5 : Mahasiswa mengemasi lembar jawab • Pengawas mengurutkan lembar jawab • Pengawas mengecek lembar jawab dan presensi • Pengawas meninggalkan ruangan
Hasil : • Mahasiswa merasa senang dan lega • Mahasiswa merasa kecewa • Mahasiswa pusing • Mahasiswa memaki – maki • Mahasiswa sangat bersyukur
Aturan Produksi Paling populer (sejak tahun 1943-Post, 1957-Chomsky, 1972-Alan Newell) Terdiri dari antecedent/premis/situasi dan konsekuen/kesimpulan/tindakan Digambarkan dalam IF-THEN rules Digunakan pada Sistem Pakar Contoh: IF temp > 30 C THEN hidupkan AC IF permintaan meningkat AND persediaan menipis THEN pemesanan barang IF pelamar <= 25 OR lulusan komputer THEN bisa diterima menjadi pegawai
Sistem produksi secara umum terdiri dari komponen-komponen : 1. ruang keadan, yang berisi keadaan awal, tujuan, kumpulan aturan yang digunakan untuk mencapai tujuan 2. strategi kontrol, berguna untuk mengarahkan bagaimana proses pencarian akan berlangsung dan mengendalikan arah eksplorasi
Kelebihan dan Kekurangan Mudah dimengerti dan luwes, mudah dikembangkan dan disesuaikan dengan pengetahuan yang ada Inferensi mudah diturunkan Modifikasi mudah Mendukung ketidak pastian Simpel dan intuitive Jika pengetahuannya banyak dan kompleks, akan sulit Sulit mendeteksi konflik
Sistem Produksi Memiliki 3 elemen: Global Database: mulai dari matriks sederhana, list, atau basis data untuk menyimpan aturan produksi dan memory kerja Aturan Produksi: berisi aturan IF-THEN Sistem Kontrol: program pengkontrol urutan mana aturan kaidah-kaidah produksi yang harus dipilih dan menyelesaikan konflik pada saat pemilihan
Resolusi Konflik Urutkan aturan berdasarkan prioritas, kemudian pilih aturan pertama yang memiliki prioritas tertinggi Pilih aturan yang paling strict (ketat) Pilih aturan yang paling sering digunakan Pilih aturan yang paling akhir dimasukkan di dalam sistem Pilih semua aturan yang memungkinkan
Metode Penalaran Forward reasoning (data driven): dimulai dari keadaan awal (dari fakta), kemudian menuju ke arah kesimpulan / tujuan Backward reasoning (goal driven): dimulai dari tujuan / hipotesa baru dicocokkan dengan keadaan awal / fakta-fakta
Alasan pemilihan metode Tergantung dari banyaknya keadaan awal dan tujuan. Jika jml awal lebih kecil dari tujuan gunakan penalaran maju. Jika jml tujuan lebih banyak dari awal, gunakan penalaran mundur