Siapakah pakar/ahli Expert System Seorang pakar atau ahli adalah: seorang individu yang memiliki kemampuan pemahaman superior dari suatu masalah By: Uro Abdulrohim, S.Kom, MT Definisi Program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah seperti layaknya seorang pakar (human expert) Pakar VS Sistem Pakar Faktor Pakar Sistem Pakar Time Availability Hari kerja Setiap hari Geografis Lokal/tertentu Dimana saja Keamanan Tidak tergantikan Dapat digantikan Dapat habis Ya Tidak Performance Variable Konsisten Kecepatan Variable Konsisten & Cepat Biaya Tinggi Terjangkau 1 2
Mengapa perlu sistem pakar Expert System Problem Solving Dapat menyediakan kepakaran terhadap hal tertentu disetiap waktu dan lokasi Mampu bekerja secara otomatis tugas-tugas rutin yang tidak dapat dipenuhi setiap saat yang tidak dapat dilakukan oleh seorang pakar Lebih cepat, murah, efisien dan handal dalam memecahkan masalah Dapat mengabungkan pengetahuan pakarpakar dalam sebuah sistem Human Expert Problem Solving Komponen Sistem pakar Knowledge Based, berisi data, rules, relasi antara data dan rules dalam pengambilan keputusan Interface Engine, berfungsi untuk menganalisa data dan menarik kesimpulan berdasarkan aturan yang ada User Interface, berfungsi sebagai alat atau media komunikasi antara pemakai dengan program 3 4
Basis Pengetahuan (Knowledge Base) Basis pengetahuan tersusun atas fakta yang berupa informasi tentang objek, dan kaidah kaidah yang merupakan informasi tentang cara dan bagaimana membangkitkan fakta baru dari fakta-fakta yang sudah diketahui. Basis pengetahuan merupakan prepresentasi pengetahuan seorang pakar. Pengetahuan yang disimpan dalam basis pengetahuan dibentuk dalam suatu struktur data yang khusus yang disesuaikan dengan metode inferensi yang akan dipakai Definisi reasoning: proses bekerja dengan pengetahuan, fakta dan strategi pemecahan masalah untuk mengambil suatu keputusan (berfikir dan mengambil keputusan) Mesin inferensi pada dasarnya memilih pengetahuan yang relevan dalam rangka mengambil suatu kesimpulan. Mesin inferensi memulai pelacakan dengan mencocokan aturan-aturan dalam basis pengetahuan dengan fakta-fakta yang ada. Mesin Inferensi (Inference Engine) Inference dengan Rules Definisi Inferensi: proses yang digunakan sistem pakar untuk menghasilkan informasi baru dari informasi yang telah diketahuinya. Dalam sistem pakar, proses inferensi dilakukan dalam suatu modul yang disebut dengan inference engine Dibuat ketika representasi pengetahuan pada knowledge base telah lengkap atau paling tidak berda pada level yang cukup akurat. Maka representasi pengetahuan ini siap digunakan Inference engine merupakan modul yang berisi program tentang bagaimana mengendalikan proses reasoning Inference dengan rule merupakan implementasi dari modul komponen yang direfleksikan dalam mekanisme pencarian (Search) Ada dua metode inference dengan rule Forward Chaining Backward chaining Data Driven Goal Driven 5 6
Backward Chaining Firing a rule, bilamana semua hipotesis pada rule (Bagian IF ) memberikan pernyataan Benar. Dapat mengecek semua rule pada kowledge base dalam arah forward maupun backward Proses pencarian berlanjut sampai tidak ada rule yng dapat digunakan (fire) atau sampai sebuah tujuan (goal) tercapai Menggunakan pendekatan goal driven, dimulai dengan ekspektasi apa yang diinginkan terjadi (hipotesis), kemudian mengecek pada sebab-sebab yang mendukung (kontradiktif) dari ekspetasi tersebut Jika suatu aplikasi menghasilkan tree yang sempit dan cukup dalam maka gunakan backward chaining Forward Chaining Merupakan group dari multiple inferensi yang melakukan pencarian dari suatu masalah kepada solusinya Jika klausa suatu premis sesuai dengan situasi (bernilai TRUE) maka proses akan mengassert konklusi Contoh Kasus: R1 : IF suku bunga turun THEN harga obligasi naik R2 : IF suku bunga naik THEN harga obligasi turun R3 : IF suku bunga tidak berubah THEN harga obligasi tidak berubah R4 : IF dolar naik THEN suku bunga turun R5 : IF dolar turun THEN suku bunga naik R6 : IF harga obligasi turun THEN beli obligasi Forward chaining adalah data driven karena inference dimulai dengan informasi yang tersedia dan baru konklusi dipecahkan 7 8
Forward Chaining Dari fakta dolar turun, berdasarkan Rule 5, diperoleh konklusi suku bunga naik. Dari Rule 2suku bunga naik menyebabkan harga obligasi turun. Dengan Rule 6, jika harga obligasi turun, maka kesimpulan yang diambil adalah membeli obligasi Antar Muka Pemakai (User Interface) Fungsi dari inference engine 1. Fire the rule 2. Memberikan pertanyaan pada user 3. Menambahkan jawaban pada working memori 4. Mengambil fakta baru dari suatu rule 5. Menambahkan fakta baru tersebut pada working memori 6. Mencocokan fakta pada working memori dengan rule 7. Jika ada yang cocok maka fire rule tersebut 8. Jika ada dua rule yang cocok cek dan pilih rule mana yang menghasilkan goal yang diinginkan Backward Chaining Dari solusi yaitu membeli obligasi, dengan menggunakan Rule 6 diperoleh anteseden harga obligasi turun. Dari Rule 2 dibuktikan harga obligasi turun bernilai benar jika suku bunga naik bernilai benar. Dari Rule 5 suku bunga naik bernilai memang bernilai benar karena diketahui fakta dolar turun Komponen Antarmuka Pemakai Antarmuka pengisian tabel variabel Antarmuka pengisian tabel konklusi Antarmuka pengisian tabel rule Antarmuka tanya jawab 9 10
Entitas sistem pakar Domain Expert Knowledge engineer End-user Knowledge Engineer Orang yang melakukan proses design, mengembangkan dan menguji suatu sistem pakar Domain Expert Orang yang memiliki kemampuan dan pengetahuan untuk menyelesaikan masalah khusus dengan cara-cara yang superior dibandingkan dengan orang kebanyakan End-User Dapat membandu mendefinisikan spesifikasi interface Dapat membantu proses akuisisi pengetahuan Dapat membantu proses pengembangan sistem 11 12
Perbedaan Pemrogram sistem konvensional dengan sistem pakar Pemrograman Konvensional Fokus pada solusi Programmer bekerja sendirian sequential Pengembangan Sistem Pakar Fokus pada masalah Hasil kerja team Iterative 13