Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
SISTEM PAKAR A. Latar Belakang Masalah Peran komputer penting dalam meringankan tugas manusia. B. Rumusan Masalah 1. 2. 3. 4. 5. Definisi dari Sistem Pakar Pengembangan Sistem Pakar Keuntungan dan Kelemahan Sistem Pakar Kategori Permasalahan Sistem Pakar Contoh Aplikasi dan Pengembangan Sistem Pakar PEMBAHASAN A. Pengertian Sistem Pakar > Pakar = Ahli > Sistem = Kumpulan Prosedur atau kumpulan dari berbagai hal untuk suatu tujuan > Sistem Pakar : Sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan para ahli. Penting untuk diketahui : Sistem Pakar (SP) diciptakan tidak untuk menggantikan kedudukan seorang pakar SP mulai dikembangkan pertama kali tahun 1960 an Sebuah sistem pakar adalah sebuah sistem untuk mentransfer kepakaran yang dimiliki seorang pakar ke dalam komputer Sistem pakar Definisi : Sebuah program komputer yang dirancang untuk memodelkan kemampuan menyelesaikan masalah seperti layaknya seorang pakar (human expert). Sebuah program berbasis pengetahuan yang menyediakan penyelesaian "berkualitas pakar" untuk masalah-masalah dalam sebuah bidang yang spesifik. Sistem pakar Dimana : Model direpresentasikan menggunakan relasi antara satu fakta dengan fakta yang lain Kendala utama terletak pada penurunan ilmu dari seorang pakar ke dalam sistem Sistem pakar Tujuan dari sebuah sistem pakar adalah untuk mentransfer kepakaran yang dimiliki seorang pakar kedalam komputer, dan kemudian kepada orang lain (nonexpert). Konsep dasar Inputs (Questions, Problems, Facts, etc) Inference Engine User User Interface Output, Answers, alternative Solution Knowledge Base Sistem Pakar Sejarah Sistem Pakar 1943 Post E.L. membuktikan bahwa permasalahan-permasalahan komputasi dapat diselesaikan dengan aturan IF-THEN. 1961 General Problem Solver (GPS) oleh A. Newell and H. Simon. Adalah sebuah program yang dibangun untuk menyelesaikan permasalahan mulai dari games sampai matematika integral. 1969 DENDRAL. Dibangun di Stamford University atas permintaan NASA (Buchanan and Feigenbaum) untuk melakukan analisis kimiawi terhadap kondisi tanah di planet Mars. 1970s MCYN. Dibuat untuk diagnosa medis oleh Buchanan dan Shortliffe. 1982 R1/XCON adalah sistem pakar pertama yang dibuat oleh para peneliti di Carnegie Melon University (CMU). Ide Dasar Sistem Pakar Kepakaran ditransfer dari seorang pakar ke komputer Pengetahuan disimpan disitu dan user dapat meminta saran spesifik yang dibutuhkannya Komputer dapat mencari, mengolah dan menampilkan kesimpulan yang spesifik Dan seperti seorang pakar, saran tsb bisa dimanfaatkan oleh orang yg bukan pakar berikut penjelasan yang berisi logika penalaran di balik saran tsb Mengapa sistem pakar Kebutuhan akan adanya solusi Kepakaran manusia seringkali tidak tersedia atau tidak dimungkinkan dalam semua situasi dimana kepakarannya dibutuhkan Seorang pakar akan pensiun atau pergi Kepakaran seseorang = harga jualnya mahal Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat Mengapa Menggunakan Sistem Pakar? 1. Pakar di suatu Perusahaan/Instansi bisa pensiun, keluar, atau telah meninggal 2. 3. 4. 5. dunia Pengetahuan perlu didokumentasikan atau dianalisis Sistem Pakar dapat menyediakan kepakaran setiap waktu dan di berbagai lokasi Seorang Pakar mahal dan langka efisiensi kerja Efisiensi kerja dan waktu Pengembangan Sistem Pakar 1. Sistem pakar generasi pertama. Menggunakan aturan jika-maka untuk merepresentasikan dan menyimpan pengetahuannya 2. Sistem pakar generasi kedua. Jauh lebih fleksibel dalam mengadopsi banyak representasi pengetahuan dan metode pertimbangan Ciri-ciri Sistem Pakar adalah : Ciri-ciri Sistem Pakar adalah : 1. Memiliki fasilitas informasi yang handal 2. Mudah dimodifikasi 3. Dapat digunakan dalam berbagai jenis komputer 4. Memiliki kemampuan untuk belajar beradaptasi. 5. Bekerja secara sistematis berdasarkan pengetahuan dan mekanisme tertentu. 6. Pengambilan keputusan berdasarkan kaidahkaidah tertentu dan dapat merespons masukkan user (melalui kotak dialog). Seorang Ahli (Human Expert) VS Sistem Pakar (ES) Faktor Human Expert Expert System Time Availability Hari Kerja Setiap saat Geografis Lokal/tertentu Dimana saja Keamanan Tidak tergantikan Dapat diganti Perishable / Dapat habis Ya Tidak Performansi (kemampuan) Variabel Konsisten Kecepatan Variabel Konsisten & lebih cepat Biaya Tinggi Terjangkau Keuntungan Sistem Pakar Membuat seorang yang awam dapat bekerja seperti layaknya seorang pakar. Meningkatkan output dan produktivitas (dapat bekerja lebih cepat dari manusia) mengurangi jumlah pekerja dan menghemat waktu mereduksi biaya produksi. Kemampuan untuk memecahkan masalah yang kompleks. Keuntungan Sistem Pakar Meningkatkan kualitas (menyediakan nasihat yang konsisten dan dapat mengurangi tingkat kesalahan) Membuat peralatan yang kompleks lebih mudah dioperasikan ( dapat melatih pekerja yang tidak berpengalaman) Handal (reliability), tidak bisa lelah atau bosan, juga konsisten dalam memberi jawaban dan selalu memberikan perhatian penuh. Keuntungan Sistem Pakar Pemindahan pengetahuan ke lokasi yang jauh serta memperluas jangkauan seorang pakar, dapat diperoleh dan dipakai di mana saja. Merupakan arsip yang terpercaya dari sebuah keahlian, sehingga user seolah-olah berkonsultasi langsung dengan sang pakar, meskipun mungkin sang pakar sudah pensiun. Keuntungan Sistem Pakar 1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli 2. Menyederhanakan pekerjaan dan meningkatnya efisiensi kerja 3. Bisa melakukan proses secara berulang secara otomatis 4. Menyimpan pengetahuan dan keahlian para pakar 5. Meningkatkan kualitas 6. Mampu mengambil dan melestarikan keahlian para pakar 7. Mampu beroperasi dalam lingkungan berbahaya Manfaat Yang Dapat Diberikan Oleh Sistem Pakar Kepada Manajer Perusahaan • Solusi • Waktu • Logika • Konsisten Kelemahan Sistem Pakar Knowledge tidak selalu bisa didapatkan dengan mudah (krn pakar yang tidak ada atau perbedaan pendekatan yang dipergunakan oleh masingmasing pakar) Pembuatan sistem yang berkualitas tinggi sangat sulit dan biaya untuk pengembangan serta pemeliharaan cukup besar Sistem bisa saja tidak membuat keputusan Kelemahan Sistem Pakar - Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal - Sulit dikembangkan - Sistem pakar tidak 100% bernilai benar Kategori Problema Sistem Pakar secara umum a. Interpretasi b. Prediksi c. Diagnosis d. Perancangan (Desain) e. Perencanaan f. Monitoring g. Debugging h. Instruksi i. Kontrol Komponen atau Bagian Utama Sistem Pakar a. User Interface (Antarmuka Pemakai) Memungkinkan pemakai untuk berinteraksi dengan expert system b. Knowledge Base (Basis Pengetahuan) Berisi pengetahuan-pengetahuan (pengetahuan gabungan) dalam memahami, merumuskan, dan penyelesaian masalah c. Inference Engine (Mesin Inferensi) Bertugas untuk menganalisis pengetahuan, memberikan kemampuan penalaran dan menarik kesimpulan berdasarkan knowledge base d. Development Engine Komponen yang digunakan untuk mengolah sistem pakar, terdiri dari bahasa pemrograman. Contoh Aplikasi dan Pengembangannya DENDRAL Program dendral adalah sebuah program pembantu untuk menentukan struktur molekul dari material yang tidak diketahui dengan menganalisis data yang dihasilkan oleh mass spectographs, resonansi magnetik nuklir dan teknik lainnya. MYCIN MYCIN merupakan program interaktif yang melakukan diagnosis penyakit miningitis dan infeksi bacremia serta memberikan rekomendasi terapi antimikrobia. XCON & XSEL The R1 (disebut XCON, untuk eXpert CONfigurer) adalah sebuah sistem produksi berbasis aturan ditulis dalam OPS5 oleh John P. McDermott dari CMU pada tahun 1978 untuk membantu dalam pemesanan DEC sistem komputer VAX dengan secara otomatis memilih komponen sistem berbasis komputer pada kebutuhan pelanggan Contoh Aplikasi dan Pengembangannya • DIPMETER ADVISOR analisa data yang didapat selama ekplorasi minyak • STD Wizard merekomendasikan tes medical screening • PROSPECTOR Untuk membantu menemukan lokasi yang mengandung bahan tambang. Basis pengetahuannya berisi kaidah berdasar data empiris dan taksonomi beberapa jenis mineral dan batu-batuan. SOPHIE Analisis sirkuit elektronik • FOLIO Membantu memberikan keputusan bagi seorang manajer dalam hal stok broker dan investasi • DELTA Pemeliharaan lokomotif listrik disel Contoh Aplikasi dan Pengembangannya HEATINGS Untuk pengontrolan proses pembakaran batubara secara terus menerus dengan menggunakan sensor yang dihubungkan ke komputer. Bila terjadi kerusakan yang menimbulkan bahaya (peralatan & manusia) dapat dengan mudah mengetahui dan memberikan pemecahannya. Misal, bila bila HEATINGS mendeteksi kadar CO melewati ambang batas akan terdengar bunyi alarm dan menyuruh membuka ventilasi. SHEARER Untuk mendiagnosa kerusakan mesin pemotong batubara tipe AM500. MSUV-VIS Untuk melakukan analisis multi komponen bahan aktif obat flu dalam berbagai macam pelarut, pada industri farmasi. Contoh Gambar Sistem Pakar Kesimpulan Sistem Pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan para ahli/pakar Ada beberapa hal penting yang perlu diperhatikan bahwa, “secanggih apapun suatu sistematau sebesar apapun basis pengetahuan yang dimiliki, tentu saja ada kelemahannya sebagai konsekuensi logis kelemahan manusia sebagai penyusun elemen-elemennya” DAFTAR PUSTAKA Buku Panduan: − − − − Gordon B. Davis (1998) Kerangka dasar Sistem Informasi Manajemen: Pengantar Seri Manajemen No: 90. A, PT. Pustaka Binaman Pressindo, 1988. Prof. Dr. Onong Uchjana Effendy.M.A, SISTEM INFORMASI MANAJEMEN. Penerbit CVMandar Maju, Bandung, 1989. McLeod, Raymond, Management Information System, 7th ed., Prentice Hall, New Jersey, 1998. Kusumadewi, Sri. Artificial Intelligence Teknik dan Aplikasinya. Yogyakarta : Graha Ilmu. 2003 Sumber lain: Internet Explorer www.ittelkom.ac.id www.dosen.amikom.ac.id http://en.wikipedia.org/wiki/Expert_system http://ai.indra-ehm.net/?p=10 www.ilmukomputer.com http://iisrasjeed.blogsome.com/2007/09/26/knowledge-based-system/ Sistem Pakar Pakar adalah orang memiliki keahlian dalam bidang tertentu Sistem Pakar adalah Suatu program AI yang berisi basis pengetahuan dan mesin inferensi Seperti layaknya seorang pakar Berfungsi sebagai konsultan Tidak untuk menggantikan kemampuan seorang pakar Berisi pengetahuan dari para pakar Dapat digunakan untuk menjawab pertanyaan, memecahkan masalah dan membuat keputusan Definisi-Definisi Durkin: program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan oleh seorang pakar Ignizio: suatu model dan prosedur yang berkaitan dalam suatu domain tertentu, dimana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar Giarratano dan Riley: suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar Sistem Pakar Menyimpan pengetahuan dari berbagai sumber Berisi heuristic knowledge: Berasal dari peristiwa di dunia nyata learning by doing Computer software packages: A generic programs Can be used to build special programs for many applications Expert system: Highly dedicated piece of software Contains knowledge in a specific domain Perbedaan Pengguna Manager: apa yang dapat saya gunakan? Teknolog: bagaimana saya dapat mengimplentasikan teknologi dengan baik? Peneliti: bagaimana saya dapat mengembangkannya User: bagaimana dapat membantu saya? Dapat menghemat biaya? Bagaimana kehandalannya? Perbedaan ES dan Pakar Faktor Human Expert Expert System Time Availability Hari Kerja Setiap saat Geografis Lokal/tertentu Dimana saja Keamanan Tidak tergantikan Dapat diganti Perishable/Dapat habis Ya Tidak Performansi Variabel Konsisten Kecepatan variabel Konsisten & lebih cepat Biaya Tinggi Terjangkau Sistem Konvensional vs Sistem Pakar Sistem Konvensional Sistem Pakar Informasi dan pemrosesan umumnya Knowledge base terpisah dari digabung dlm satu program mekanisme pemrosesan (inference) sequential Program tidak pernah salah (kecuali Program bisa saja melakukan programer-nya yang salah) kesalahan Tidak menjelaskan mengapa input dibutuhkan atau bagaimana hasil diperoleh Membutuhkan semua input data Penjelasan (explanation) merupakan bagian dari Sistem Pakar Perubahan pada program merepotkan Perubahan pada rules dapat dilakukan dengan mudah Sistem bekerja jika sudah lengkap Sistem dapat bekerja hanya dengan rules yang sedikit Eksekusi dilakukan secara heuristic dan logik Eksekusi secara algoritmik (step-bystep) Tidak harus mambutuhkan semua input data atau fakta Sistem Konvensional vs Sistem Pakar Sistem Konvensional Sistem Pakar Manipulasi efektif pada database yang Manipulasi efektif pada knowledgebesar base yang besar Efisiensi adalah tujuan utama Efektifitas adalah tujuan utama Data kuantitatif Data kualitatif Representasi data dalam numerik Reperesentasi pengetahuan dalam simbol Menangkap, menambah dan mendistribusi data numerik atau informasi Menangkap, menambah dan mendistribusi pertimbangan (judgment) dan pengetahuan Example of Expert System The famous: MYCIN: diagnosa penyakit, DENDRAL: mengidentifikasi struktur molekul campuran kimia yang tidak dikenal, XCON & XSEL: konfigurasi sistem komputer besar, Prospector: bidang geologi The other: SOPHIE: analisis sirkuit elektronik, DELTA: pemeliharaan lokomotif listrik, FOLIO: stok dan investasi Benefits of Expert Systems Memungkinkan orang awam dapat mengerjakan pekerjaan para ahli Bisa melakukan proses berulang secara otomatis Menyimpan pengetahuan dan keahlian pakar Meningkatkan output dan produktifitas Melestarikan keahlian pakar Dapat beroperasi pada lingkungan berbahaya Dapat meningkatkan kemampuan sistem komputer Dapat bekerja dengan informasi yang tidak lengkap Sebagai media pelengkap dalam pelatihan Menghemat waktu pengambilan keputusan The Down Side of Expert System Development of an ES is difficult ES is expensive Most ES still must be implemented & delivered on a big mainframe or minicomputer Not 100% reliable Kepakaran tidak selalu tersedia pada bidang-bidang tertentu 4 Basic Type Stand-alone: software yang berdiri sendiri, tidak tergabung dengan program lain Sistem Tergabung: sistem ini merupakan bagian dari program lain yang masih bersifat konvensional, misal berada di dalam algoritma yang konvensional Sistem terhubung dengan software lain: misalnya sistem pakar yang berhubungan dengan paket program DBMS Sistem Mengabdi: merupakan bagian dari komputer khusus yang dihubungkan dengan suatu fungsi tertentu Sistem Konvensional vs ES SK: informasi dan pemrosesan menjadi satu dengan program, ES: pengetahuan dan inferensi terpisah SK: tidak bisa menjelaskan keputusan, ES: ada fasilitas penjelasan SK: eksekusi perlangkah, ES: eksekusi dilakukan pada seluruh basis pengetahuan SK: menggunakan data, ES: menggunakan pengetahuan Konsep Dasar ES Komponen Sistem Pakar: Pengetahuan Pakar: pengetahuan pada suatu bidang tertentu Fakta-fakta, teori, prosedur, aturan, strategi, meta knowledge Pakar Pengalihan Pengetahuan: Tambahan pengetahuan, representasi pengetahuan, inferensi pengetahuan, pengalihan pengetahuan ke user. Inferensi: kemampuan menalar Aturan: dalam bentuk aturan IF-THEN Fasilitas Penjelasan: penejelasan bagaimana keputusan dibuat Kemampuan rekomendasi User Penjelasan Knowledge Acusition: penambahan pengetahuan, mengkonstruksi atau memperluas pengetahuan Knowledge Base: berisi pengetahuan Inference Engine: program yang berisi metodologi yang digunakan untuk melakukan penalaran terhadap informasi dalam basis pengetahuan dan blackboard: Interpreter: mengeksekusi item-item agenda yang terpilih menggunakan aturan Scheduler: mengkontrol agenda Consistency Enforcer: memelihara kekonsistenan dalam merepresentasikan solusi yang bersifat darurat Blackboard: area kerja dalam memori yang digunakan dalam kejadian yang sedang berlangsung termasuk keputusan sementara Plan: bagaimana menghadapi masalah Agenda: aksi aksi potensial yang sedang menunggu untuk dieksekusi Solution: calon aksi yang akan dibangkitkan Penjelasan Interface: sebagai media komunikasi antara user dan program Explanation Facility: melacak respon dan memberi penjelasan ttg kelakuan sistem pakar Mengapa suatu pertanyaan ditanyakan? Bagaimana konklusi dicapai? Mengapa ada alternatif yang dibatalkan? Rencana apa yang dilakukan mendapatkan solusi? Knowledge refinement: mengevaluasi kinerja sistem pakar, apakah pengetahuan tersebut masi cocok untuk digunakan pada masa yang akan datang? Knowledge Base Pendekatan knowledge base: Rule Based Reasoning Pengetahuan dibuat dalam IF-THEN Digunakan jika kita sudah memiliki pengetahuan dari pakar mengenai permasalahan tertentu secara berurutan Dibutuhkan jika harus ada penjelasan tentang langkah-langkah pencapaian solusi Case Based Reasoning Basis pengetahuan akan berisi kasus-kasus yang sudah diketahui sebelumnya. Jika kasus-kasusnya hampir mirip Jika sudah memiliki penyelesaian kasus-kasus Inference Engine Forward Chaining: pencocokan dari fakta untuk menguji kebenaran hipotesis Backward Chaining: pencocokan dari bagian hipotesis terlebih dahulu baru mencocokkan dengan fakta-faktanya LANGKAH PEMBUATAN S.PAKAR 1. Mengidentifikasi masalah dan kebutuhan 2. Menentukan problema yang cocok 3. mempertimbangkan alternatif 4. menghitung pengembalian investasi 5. memilih alat pengembangan 6. merekayasa pengetahuan 7. merancang sistem 8. melengkapi pengembangan 9. menguji dan mencari kesalahan sistem 10. memelihara sistem Knowledge Acuisition Knowledge engineer berusaha menyerap pengetahuan untuk ditransfer ke basis pengetahuan Metode: Wawancara Analisis protokol: pakar diminta untuk melakukan pekerjaan dan direkam Observasi kerja pakar Induksi aturan Ciri-ciri Expert System Adanya Explanation facility Mudah dimodifikasi Dapat digunakan pada berbagai jenis komputer Memiliki kemampuan beradaptasi Expert System Applications ES is not suitable for all situations Generic ES categories: Control : intelligent automation Debugging : recommends corrections to faults Design : developing products to specification Instruction : optimized computer instruction Interpretation : clarification of situations Planning : developing goal-oriented schemes Prediction : intelligent guessing of outcomes Repair : automatic diagnosis, debugging, planning and fixing Developing an Expert System problem apakah memerlukan ES? Memerlukan kepakaran Biaya tinggi Tidak memerlukan common sense Subyeknya sempit Tidak memerlukan solusi fisik Tingkat kesulitan sedang Bisa dipecahkan oleh pengetahuan Memiliki solusi minimum Pakarnya tersedia Latar Belakang E/S Sistem Pakar memberikan banyak keuntungan bagi operasi perusahaan dan manajer, tetapi memiliki keterbatasan significan. Artificial Intelligence merupakan suatu aktivitas untuk menyediakan berbagai mesin seperti komputer dengan menampilkan perilaku dengan penalaran yang cerdas apabila diamati sebagai manusia. Artificial Intelligence menyajikan berbagai aplikasi komputer yang canggih untuk menyamai berbagai jenis penalaran manusia. Sejarah Artificial Intelligence > John McCarty > Logic Theorist > General Problem Solver (GPS) Bidang Artificial Intelligence 1. Jaringan Syaraf (Neural Network) 2. Sistem Persepsi (Perceptive System) 3. Belajar (Learning) 4. Robot (Robotics) 5. Perangkat Keras Ai (Artificial Intelligence) 6. Pemrosesan Bahasa Alamiah (Natural Language Processing) Definisi E/S Sistem Pakar (Expert System) merupakan suatu sistem yang menggunakan pengetahuan manusia dalam komputer untuk memecahkan masalah yang biasanya dikerjakan oleh seorang pakar. Misalnya : Dokter, Lawyer, Analist Keuangan, Tax Advisor. Sistem pakar dapat mendorong perhatian besar diantara ahli komputer dan spesialist informasi untuk mengembangkan sistem membantu manajer dan non manajer memecahkan masalah. Komponen E/S Sistem pakar terdiri atas 4 bagian: 1. User Interface 2. Knowledge Base 3. Inference Engine 4. Development Engine Manfaat E/S Keuntungan Expert System untuk manajer. 1. Menyajikan lebih banyak alternatif. 2. Menerapkan logika tingkat tinggi 3. Menyediakan waktu banyak untuk evaluasi hasil keputusan. 4. Memberikan solusi yang lebih konsisten 5. Membuat seorang awam bekerja seperti layaknya seorang pakar; 6. Menyederhanakan pekerjaan dan meningkatnya efisiensi kerja; 7. Meningkatnya kualitas pekerjaan; 8. Meningkatnya produktifitas sehingga meningkat pula performance perusahaan; 9. Merupakan arsip yang terpercaya sehingga seolah-olah langsung konsultasi dengan pakar (meskipun sang pakar telah tiada) 10. Memperluas jangkauan. Keuntungan Expert System untuk perusahaan. 1. Meningkatkan performance perusahaan. 2. Memelihara pengendalian terhadap knowledge perusahaan. Penerapan E/S Faktor dan kondisi yang mempengaruhi terdiri atas : 1. Alasan Umum > Programming Konvensional (Algoritma) tidak memuaskan. > Adanya Expert yang dapat memecahkan masalah. > Pemilihan problem domain menyajikan kombinasi terbaik. 2. Problem Domain > Problem Domain ditandai oleh penggunaan Expert Knowledge, Judgement dan pengalaman. 3. Domain Task. > Task tidak terlalu mudah dan juga tidak terlalu sulit. > Task mensyaratkan Primarily Symbolic Reasoning. 4. Domain Personnel. > Merupakan dukungan manajemen yang kuat. 5. Expert. > Memiliki Expert yang kualified dan menepati waktu. > Expert harus terpercaya. 6. Sistem Analist > Sistem Analist harus telah memahami problem domain atau dapat mempelajarinya. > Sistem Analist dapat menarik Expert Knowledge. User Interface User Interface User interface digunakan manajer untuk meng-enter instruksi dan informasi dari sistem. Metode input yang digunakan oleh manajer yaitu: > Menu > Command > Natural Language Output ES memakai 2 bentuk penjelasan (explanation) : > Explanation of Question > Explanation of Problem Solution Knowledge Base Knowledge base terdiri dari fakta yang menggambarkan area problem atau problem domain dan juga teknik penyajian yang menggunakan fakta sesuai logika. Rule/aturan merupakan rincian dalam situasi yang tidak berubah: > Kondisi benar dan tidak benar > Tindakan yang diambil bila kondisi benar Inference Engine Inference Engine merupakan bagian dari Expert System yang membentuk Reasoning dengan menggunakan isi dari knowledge base dalam urutan tertentu. Dua metode yang digunakan dalam Expert System untuk mengamati Rule, yaitu: a. Penalaran ke depan (Forward) atau Forward Chaining > Evaluasi Rule > Proses Penalaran Berulang (Iterative Reasoning) b. Penalaran ke Belakang (Revierse) atau Backward Chaining. > Alur Logika Pertama diikuti (First Logical Path) > Alur Logika Selanjutnya diikuti (Next Logical Path) Development Engine Development Engine membangun Rule Set dengan pendekatan : 1. Bahasa Pemrograman (Programming Language). 2. Bagian Expert System (Expert System Shell) Peran Sistem Analist sebagai Knowledge Engineer dalam organisasi bisnis dengan menggunakan keterampilan untuk membangun aplikasi komputer yang konvesional, yaitu : > Memahami bagaimana Expert menerapkan keahliannya dalam pemecahan masalah. > Dapat menarik suatu Description Of Knowledge dari Expert. Proses Pengembangan Sistem > Permulaan proses pengembangan > Prototype pengembangan Expert System > Partisipasi User > Pemeliharaan Expert System Aplikasi dan Penerapan E/S 1. ADVER atau Advertising adalah sebuah prototipe ES digunakan untuk menggunakan strategi media periklanan yang sesuai dengan kondisi internal dan eksternal perusahaan dengan parameter biaya iklan per seribu pemirsa. 2. BERT atau Brickwork expERT adalah sebuah ES untuk disain bangunan. BERT digunakan untuk memeriksa sebuah disain bangunan, kemudian memberikan beberapa rekomendasi untuk perbaikan. Inputnya bisa dalam bentuk gambar. 3. DELTA adalah ES untuk mendiagnosa kerusakan pada mesin-mesin Diesel Electric Locomotive. 4. DENDRAL Sistem pakar untuk analisis struktur molekul suatu senyawa yang belum diketahui. Senyawa yang belum diketahui tersebut dianalisis dengan menggunakan “mass spectrometer” dan “nuclear magnetic reconancy equipment”. Data hasil analisis tersebut dimasukkan ke DENDRAL yang akan membuat struktur molekulnya. 5. MYCIN Adalah ES untuk mendiagnosa infeksi akibat bakteri menyarankan jenis obat dan dosisnya untuk penyembuhan. dan 6. OPERA atau OPERator Advisor yang digunakan untuk mendiagnosa dan menangani kerusakan pada suatu jaringan komputer. OPERA dijalankan pada malam hari untuk menggantikan Supervisor System Manager. 7. PROSPECTOR untuk membantu menemukan lokasi yang mengandung bahan tambang. Basis pengetahuannya berisi kaidah berdasar data empiris dan taksonomi beberapa jenis mineral dan batu-batuan. Untuk mengetahui apakah suatu daerah mengandung bahan tambang , lebih dahulu dilakukan survey keadaan geologi dan pengambilan contoh tanah dan batu-batuan. Berdasarkan data hasil survey tsb akan diberikan rekomendasi apakah daerah tsb layak untuk dieksplorasi dan akan diputuskan apakah akan dilakukan penggalian atau tidak. 8.HEATINGS Untuk pengontrolan proses pembakaran batubara secara terus menerus dengan menggunakan sensor yang dihubungkan ke komputer. Bila terjadi kerusakan yang menimbulkan bahaya (peralatan & manusia) dapat dengan mudah mengetahui dan memberikan pemecahannya. Misal, bila bila HEATINGS mendeteksi kadar CO melewati ambang batas akan terdengar bunyi alarm dan menyuruh membuka ventilasi. 9. SHEARER Untuk mendiagnosa kerusakan mesin pemotong batubara tipe AM500. Pada pertambangan batubara, batubara dipotong dgn menggunakan alat pemotong Shearer (sangat mahal, terdiri dari : sistem mekanik, hidrolik, dan elektrik), kemampuannya sekitar 300 ton batubara per jam. SHEARER dapat siaga 24 jam penuh dan cepat melakukan diagnosa kerusakan (hidrolik, mekanik, dan elektrik). 10. MSUV-VIS Untuk melakukan analisis multi komponen bahan aktif obat flu dalam berbagai macam pelarut, pada industri farmasi. Selain itu sistem tersebut dapat digunakan untuk penetapan kadar (pk) campuran senyawa-senyawa lain dengan syarat spektranya tumpang tindih yang aditif. ARSITEKTUR SISTEM PAKAR BASIS PENGETAHUAN MESIN INFERENSI AGENDA (ATURAN) MEMORI KERJA (FAKTA) FASILITAS AKUISISI PENGETAHUAN FASILITAS PENJELASAN ANTAR MUKA PENGGUNA Gambar Arsitektur Sistem Pakar KOMPONEN SISTEM PAKAR antar muka pengguna (user interface) basis data sistem pakar (expert system database) fasilitas akuisisi pengetahuan (knowledge acquisition facility) dan mekanisme inferensi (inference mechanism) fasilitas penjelasan (explanation facility) Antar Muka Pengguna perangkat lunak yang menyediakan media komunikasi antara pengguna dengan sistem Basis data sistem pakar • • • berisi pengetahuan setingkat pakar pada subyek tertentu berisi pengetahuan yang dibutuhkan untuk memahami, merumuskan dan menyelesaikan masalah terdiri dari 2 elemen: – – Fakta, situasi masalah dan teori yang terkait Heuristik khusus atau rules, yang langsung menggunakan pengetahuan untuk menyelesaikan masalah khusus Fasilitas Akuisisi Pengetahuan perangkat lunak yang menyediakan fasilitas dialog antara pakar dengan sistem digunakan untuk memasukkan fakta-fakta dan kaidahkaidah sesuai dengan perkembangan ilmu Meliputi proses pengumpulan, pemindahan, dan perubahan dari kemampuan pemecahan masalah seorang pakar atau sumber pengetahuan terdokumentasi (buku, dll) ke program komputer bertujuan untuk memperbaiki dan atau mengembangkan basis pengetahuan (knowledge-base) Mekanisme Inferensi perangkat lunak yang melakukan penalaran dengan menggunakan pengetahuan yang ada untuk menghasilkan suatu kesimpulan atau hasil akhir. Dalam komponen ini dilakukan pemodelan proses berpikir manusia Fasilitas Penjelasan berguna dalam memberikan penjelasan kepada pengguna mengapa komputer meminta suatu informasi tertentu dari pengguna dan dasar apa yang digunakan komputer sehingga dapat menyimpulkan suatu kondisi Tipe Penjelasan Penjelasan mengenai jejak aturan yang menunjukkan status konsultasi penjelasan mengenai bagaimana sebuah keputusan diperoleh penjelasan mengapa sistem menanyakan suatu pertanyaan penjelasan mengapa sistem tidak memberikan keputusan seperti yang dikehendaki pengguna Memori Kerja bagian dari sistem pakar yang berisi fakta-fakta masalah yang ditemukan dalam suatu sesi Agenda • Urutan aturan yang dibangkitkan oleh mesin inferensi Expert Systems AN EXPERT SYSTEM IS A COMPUTER PROGRAM THAT IS DESIGNED TO HOLD THE ACCUMULATED KNOWLEDGE OF ONE OR MORE DOMAIN EXPERTS Applications of Expert Systems PUFF: Medical system for diagnosis of respiratory conditions PROSPECTOR: Used by geologists to identify sites for drilling or mining Applications of Expert Systems MYCIN: Medical system for diagnosing blood disorders. First used in 1979 DESIGN ADVISOR: Gives advice to designers of processor chips Applications of Expert Systems DENDRAL: Used to identify the structure of chemical compounds. First used in 1965 LITHIAN: Gives advice to archaeologists examining stone tools Components of an Expert System The knowledge base is the collection of facts and rules which describe all the knowledge about the problem domain The inference engine is the part of the system that chooses which facts and rules to apply when trying to solve the user’s query The user interface is the part of the system which takes in the user’s query in a readable form and passes it to the inference engine. It then displays the results to the user. Why use Expert Systems? Experts are not always available. An expert system can be used anywhere, any time. Human experts are not 100% reliable or consistent Experts may not be good at explaining decisions Cost effective Problems with Expert Systems Limited domain Systems are not always up to date, and don’t learn No “common sense” Experts needed to setup and maintain system Legal and Ethical Issues Who is responsible if the advice is wrong? The user? The domain expert? The knowledge engineer? The programmer of the expert system shell? The company selling the software? Expert Systems on the Web http://www.aiinc.ca/demos/whale.html http://www.vanguardsw.com/ decisionscript/examples.htm http://www.exsys.com/demomain.html http://www.expertise2go.com/webesie/car http://www.expertise2go.com/webesie/wine Sistem pakar (expert system) adalah sistem yang berusaha mengapdosi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Sistem pakar yang baik dirancang agar dapat menyelesaikan suatu permasalahan tertentu dengan meniru kerja dari para ahli. Sistem pakar yang terkenal MYCIN Paling terkenal, dibuat oleh Edward Shortlife of Standford University tahun 70-an Sistem pakar medical yang bisa mendiagnosa penyakit infeksi dan merekomendasi pengobatan MYCIN membantu dokter mengidentifikasi pasien yang menderita penyakit. Dokter duduk di depan komputer dan memasukkan data pasien: umur, riwayat kesehatan, hasil laboratorium dan informasi terkait lainnya. Dengan informasi ini ditambah pengetahuan yang sudah ada dalam komputer, MYCIN mendiagnosa selanjutnya merekomendasi obat dan dosis yang harus dimakan. Sistem pakar yang terkenal MYCIN sebagai penasehat medis, tidak dimaksudkan untuk mengantikan kedudukan seorang dokter. Juga untuk membantu dokter dalam mengkonfirmasi diagnosa dan terapi yang diberikan kepada pasien Kesimpulan :sistem pakar seperti MYCIN bisa digunakan sebagai bahan pembanding dalam pengambilan solusi dan pemecahan masalah. Keputusan terakhir atas pengobatan tersebut tetap menjadi tanggung jawab dokter. Sistem pakar yang terkenal DENDRAL Mengidentifikasi struktur molekular campuran kimia yang tak dikenal XCON & XSEL XCON Merupakan sistem pakar untuk membantu konfigurasi sistem komputer besar, membantu melayani order langganan sistem komputer DEC VAX 11/780 ke dalam sistem spesifikasi final yang lengkap Komputer besar seperti VAX terbuat dari ratudan komponen yang berbeda digabung dan disesuaikan dengan konfigurasi tertentu yang diinginkan oleh para pelanggan. Ada ribuan cara dimana aseosri Pcboard, kabel, disk drive, periperal, perangkat lunak, dan lainnya bisa dirakit ke dalam konfigurasi yang sangat rapih. Untuk mengidentifikasi hal-hal tersebut diperlukan waktu berhari-hari/berminggu-minggu agar bisa memenuhi spesifikasi yang diinginkan pemesan, tapi dengan XCON bisa dalam beberapa menit. MANFAAT SISTEM PAKAR : 1. 2. 3. 4. 5. 6. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli Bisa melakukan proses secara berulang secara otomatis Menyimpan pengetahuan dan keahlian para pakar Mampu mengambil dan melestarikan keahlian para pakar (terutama yang termasuk keahlian langka) Mampu beroperasi dalam lingkungan yang berbahaya Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian. Pengguna bisa merespon dengan jawaban ’tidak tahu’ atau ’tidak yakin’ pada satu atau lebih pertanyaan selama konsultasi dan sistem pakar tetap akan memberikan jawaban. MANFAAT SISTEM PAKAR : Tidak memerlukan biaya saat tidak digunakan 8. Dapat digandakan (diperbanyak) sesuai kebutuhan dengan waktu yang minimal dan sedikit biaya 9. Dapat memecahkan masalah lebih cepat daripada kemampuan manusia dengan catatan menggunakan data yang sama. 10. Menghemat waktu dalam pengambilan keputusan 7. MANFAAT SISTEM PAKAR : 11. Meningkatkan kualitas dan produktivitas karena dapat memberi nasehat yang konsisten dan mengurangi kesalahan 12. Meningkatkan kapabilitas sistem terkomputerisasi yang lain. 13. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan sistem pakar akan menjadi lebih berpengalaman. Fasilitas penjelas dapat berfungsi sebagai guru. KELEMAHAN SISTEM PAKAR 1. Biaya yang diperlukan untuk membuat, memelihara, dan 2. 3. 4. 5. 6. mengembangkannya sangat mahal Sulit dikembangkan Sistem pakar tidak 100% benar Pendekatan oleh setiap pakar untuk suatu situasi atau problem bisa berbeda-beda, meskipun sama-sama benar. Transfer pengetahuan dapat bersifat subjektif dan bias Kurangnya rasa percaya pengguna dapat menghalangi pemakaian sistem pakar. KONSEP DASAR SISTEM PAKAR Konsep dasar sistem pakar mengandung keahlian, ahli/pakar, pengalihan keahlian, Mengambil keputusan, aturan, kemampuan menjelaskan. Keahlian Keahlian bersifat luas dan merupakan penguasaan pengetahuan dalam bidang khusus yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk keahlian : - Teori, fakta, aturan-aturan pada lingkup permasalahan tertentu - Strategi global untuk menyelesaikan masalah Ahli / Pakar Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan, menyusun kembali pengetahuan jika dipandang perlu, memecahkan masalah dengan cepat dan tepat Pengalihan keahlian Tujuan dari sistem pakar adalah untuk mentransfer keahlian dari seorang pakar ke dalam komputer kemudian ke masyarakat. Proses ini meliputi 4 kegiatan, yaitu perolehan pengetahuan (dari para ahli atau sumber-sumber lainnya), representasi pengetahuan ke komputer, kesimpulan dari pengetahuan dan pengalihan pengetahuan ke pengguna. Mengambil keputusan Hal yang unik dari sistem pakar adalah kemampuan untuk menjelaskan dimana keahlian tersimpan dalam basis pengetahuan. Kemampuan komputer untuk mengambil kesimpulan dilakukan oleh komponen yang dikenal dengan mesin inferensi yaitu meliputi prosedur tentang pemecahan masalah. Aturan Sistem pakar yang dibuat merupakan sistem yang berdasarkan pada aturan – aturan dimana program disimpan dalam bentuk aturan-aturan sebagai prosedur pemecahan masalah. Aturan tersebut biasanya berbentuk IF – THEN. . Kemampuan menjelaskan Keunikan lain dari sistem pakar adalah kemampuan dalam menjelaskan atau memberi saran/rekomendasi serta juga menjelaskan mengapa beberapa tindakan/saran tidak direkomendasikan PERBEDAAN SISTEM KONVENSIONAL DENGAN SISTEM PAKAR Sistem Konvensional Informasi dan pemrosesannya biasanya jadi satu dengan program Program tidak pernah salah (keculai pemrogramnya yang salah) Biasanya tidak bisa menjelaskan mengapa suatu input data itu dibutuhkan atau bagaimana output itu diperoleh Pengubahan program cukup sulit dan merepotkan Sistem hanya akan bekerja jika sistem tersebut sudah lengkap Eksekusi dilakukan langkah demi langkah secara algoritmik Menggunakan data Tujuan utamanya adalah efisiensi Sistem Pakar Basis pengetahuan merupakan bagian terpisah dari mekanisme inferensi Program bisa saja melakukan kesalahan Penjelasan adalah bagian terpenting dari sistem pakar Pengubahan pada aturan/kaidah dapat dilakukan dengan mudah Sistem dapat bekerja hanya dengan beberapa Aturan Eksekusi dilakukan pada keseluruhan basis pengetahuan secara heuristik dan logis Menggunakan pengetahuan Tujuan utamanya adalah efektivitas PENGGUNAAN DAN PENGEMBANGAN SISTEM PAKAR 1. Pakar 2.Perekayasa pengetahuan Perekayasa pengetahuan adalah orang yang membantu pakar dalam menyusun area permasalahan dengan menginterpretasikan dan mengintegrasikan jawaban-jawaban pakar atas pertanyaan yang diajukan, menggambarkan analogi, mengajukan counter example dan menerangkan kesulitan-kesulitan konseptual. 3. Pemakai Pemakai Pemakai awam : dalam hal ini sistem pakar bertindak sebagai konsultan untuk memberikan saran dan solusi kepada pemakai Pelajar yang ingin belajar : sistem pakar bertindak sebagai instruktur Pembuat sistem pakar : sistem pakar sebagai partner dalam pengembangan basis pengetahuan. Pakar : sistem pakar bertindak sebagai mitra kerja/asisten AREA PERMASALAHAN APLIKASI SISTEM PAKAR Interpretasi Yaitu pengambilan keputusan dari hasil observasi, diantaranya : pengawasan, pengenalan ucapan, analisis citra, interpretasi sinyal, dan beberapa analisis kecerdasan Prediksi Memprediksi akibat-akibat yang dimungkinkan dari situasi-situasi tertentu, diantaranya : peramalan, prediksi demografis, peralaman ekonomi, prediksi lalulintas, estimasi hasil, militer, pemasaran, atau peramalan keuangan. Diagnosis Menentukan sebab malfungsi dalam situasi kompleks yang didasarkan pada gejala-gejala yang teramati, diantaranya : medis, elektronis, mekanis, dan diagnosis perangkat lunak AREA PERMASALAHAN APLIKASI SISTEM PAKAR Desain Menentukan konfigurasi komponen-komponen sistem yang cocok dengan tujuan-tujuan kinerja tertentu dan kendala-kendala tertentu, diantaranya : layout sirkuit, perancangan bangunan Perencanaan Merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan kondisi awal tertentu, diantaranya : perencanaan keuangan, komunikasi, militer, pengembangan politik, routing dan manajemen proyek. Monitoring Membandingkan tingkah laku suatu sistem yang teramati dengan tingkah laku yang diharapkan darinya, diantaranya : Computer Aided Monitoring System STRUKTUR SISTEM PAKAR 2 bagian utama sistem pakar : lingkungan pengembangan (development environment) : digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar lingkungan konsultasi (consultation environment) : digunakan oleh pengguna yang bukan pakar untuk memperoleh pengetahuan pakar Komponen-komponen yang terdapat dalam arsitektur/struktur sistem pakar : 1. Antarmuka Pengguna (User Interface) Merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar untuk berkomunikasi. 2. Basis Pengetahuan Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan penyelesaian masalah. Komponen sistem pakar ini disusun atas 2 elemen dasar, yaitu : - fakta : informasi tentang obyek dalam area permasalahan tertentu - aturan : informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui. Komponen-komponen yang terdapat dalam arsitektur/struktur sistem pakar : 2. Akuisisi Pengetahuan (Knowledge Acquisition) Akuisisi pengetahuan adalah akumulasi, transfer, dan transformasi keahlian dalam menyelesaikan masalah dari sumber pengetahuan ke dalam program komputer.. Komponen-komponen yang terdapat dalam arsitektur/struktur sistem pakar : 3. Mesin/Motor Inferensi (inference engine) Komponen ini mengandung mekanisme pola pikir dan penalaran yang digunakan oleh pakar dalam menyelesaikan suatu masalah. 4. Workplace / Blackboard Workplace merupakan area dari sekumpulan memori kerja (working memory), digunakan untuk merekam kejadian yang sedang berlangsung termasuk keputusan sementara. Komponen-komponen yang terdapat dalam arsitektur/struktur sistem pakar : 5. Fasilitas Penjelasan Adalah komponen tambahan yang akan meningkatkan kemampuan sistem pakar. 6. Perbaikan Pengetahuan Pakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanya serta kemampuan untuk belajar dari kinerjanya. BASIS PENGETAHUAN (KNOWLEDGE BASE) Basis pengetahuan berisi pengetahuan-pengetahuan dalam penyelesaian masalah. Ada 2 bentuk pendekatan basis pengetahuan : a. Penalaran berbasis aturan (rule-based reasoning) Pengetahuan direpresentasikan dengan menggunakan aturan berbentuk IF-THEN. Contoh : aturan identifikasi hewan Rule 1 : IF hewan berambut dan menyusui THEN hewan mamalia Rule 2 : IF hewan mempunyai sayap dan bertelur THEN hewan jenis burung Rule 3 : IF hewan mamalia dan memakan daging THEN hewan karnivora Dst... BASIS PENGETAHUAN (KNOWLEDGE BASE) b. Penalaran berbasis kasus (case-based reasoning) Pada penalaran berbasis kasus, basis pengetahuan akan berisi solusi-solusi yang telah dicapai sebelumnya, kemudian akan diturunkan suatu solusi untuk keadaan yang terjadi sekarang (fakta yang ada). MESIN INFERENSI (INFERENCE ENGINE) Ada 2 cara penalaran yang dapat dikerjakan dalam melakukan inferensi : a. Forward Chaining Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kiri dulu (IF dulu). Dengan kata lain penalaran dimulai dari fakta terlebih dahulu untuk menguji kebenaran hipotesis. b. Backward Chaining Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN dulu). Dengan kata lain penalaran dimulai dari hipotesis terlebih dahulu, dan untuk menguji kebenaran hipotesis tersebut harus dicari fakta-fakta yang ada dalam basis pengetahuan. JENIS KERUSAKAN A1 = MONITOR RUSAK A2 = MEMORI RUSAK A3 = HDD RUSAK A4 = VGA RUSAK A5 = SOUND CARD RUSAK A6 = OS BERMASALAH A7 = APLIKASI RUSAK A8 = PSU RUSAK A9 = PROSESOR RUSAK A10 = MEMORY KURANG (PERLU UPGRADE MEMORY) A11 = MEMORY VGA KURANG (PERLU UPGRADE VGA) A12 = CLOCK PROSOR KURANG TINGGI (PERLU UPGRADE PROSESOR) A13 = KABEL IDE RUSAK A14 = KURANG DAYA PADA PSU (PERLU UPGRADE PSU) A15 = PERANGKAT USB RUSAK A16 = KEYBOARD RUSAK A17 = MOUSE RUSAK Sistem Berbasis Pengetahuan Sistem Komputer Sistem Berbasis Pegetahuan Sistem Pakar Robotik Games Sistem Pakar berasal dari istilah knowledge-based expert system Menggunakan human knowledge yang dimasukkan ke dalam komputer untuk memecahkan masalah yang umumnya memerlukan keahlian seorang Pakar Domain yang sempit Fact Knowledge Base Expertise Inference Engine USER Hubungan Problem Domain dan Knowledge Domain Problem Domain Knowledge Domain Knowledge Domain Structure of an Expert System Consultation Environment (Use) User Facts of the Case Recommendation, Explanation Development Environment (Knowledge Acquisition) Expert User Interface Explanation Facility Knowledge Engineer Inference Engine Facts of the Case Knowledge Acquisition Facility Working Memory Knowledge Base Domain Knowledge (Elements of Knowledge Base) Definisi Sistem Pakar Sistem komputer yang dapat melakukan penalaran terhadap persoalan tertentu seperti penalaran yang dilakukan manusia (Michael P. Geografi) Sistem Komputer yang bisa menyamai atau meniru kemampuan seorang pakar (Giarratano dan Riley) Program komputer yang dimanfaatkan untuk meniru proses pengambilan keputusan seorang pakar dalam bidang tertentu (Michael W. Parks) Etc. Tujuan Dan Fungsi Sistem Pakar Memasyarakatkan Pengetahuan dan Pengalaman seorang Pakar Dapat digunakan non-expert untuk meningkatkan kemampuan pemecah- an masalah dan oleh expert sebagai knowledgeable assistant Menyederhanakan pekerjaan dan memperbaiki kualitas Memecahkan masalah (sederhana) tanpa kehadiran seorang pakar Expertise atau Kepakaran Meliputi pengetahuan tentang : Fakta-fakta dan teori-teori tentang bidang permasalahan Aturan-aturan (heuristic) tentang apa yang harus dikerjakan dalam situasi tertentu Strategi global untuk memecahkan perma-salahan semacam ini Pengetahuan tentang pengetahuan (meta knowledge) PAKAR Melibatkan kegiatan : Mengenali dan memformulasikan permasa- lahan Memecahkan permasalahan secara cepat dan tepat Menerangkan pemecahannya Belajar dari pengalaman Merestrukturisasi pengetahuan Memecahkan aturan-aturan Menentukan relevansi PARTISIPAN DALAM MEMBANGUN SISTEM PAKAR DAN ATURAN-ATURANNYA PEMBANGUN ALAT BANTU PAKAR STAF PENDUKUNG PENGETAHUAN YANG TERDOKUMENTASIKAN Membangun Mendukung tugas Menguji Memperoleh pengetahuan ALAT BANTU, BAHASA Pengguna Pengguna Membangun INSINYUR PENGETAHUAN SISTEM PAKAR Memberikan Bekerja sama Membangun PENJUAL PEMBANGUN SISTEM Menggunakan Menghubung kan PENGGUNA AKHIR Bahasa-bahasa Pemrograman Sistem Pakar LisP Insight 2 + ProLog Amzy Logic ExSys JESS PC + CLIPS Expert Ease Etc. Beberapa contoh aplikasi Sistem Pakar Mysin, identifikasi penyakit infeksi bakterial dan rekomendasi obat anti biotiknya Dendral, analisa struktur molekular suatu senyawa yang belum diketahui Etc. KATEGORI GENERIK DARI SISTEM PAKAR Kategori Interpretasi Prediksi Diagnosis Perancangan Perencanaan Monitoring Debugging Reparasi Instruksi Kontrol Masalah yang Diselesaikan Menduga gambaran situasi dari observasi Menduga akibat yang mungkin dari situasi tertentu Menduga kegagalan sistem dari observasi Mengatur konfigurasi obyek dari konstrain Mengembangkan rencana-rencana untuk mencapai tujuan-tujuan Membandingkan observasi terhadap rencanarencana, tanda gagal/berhasil (flagging), dan perkecualian-perkecualian (exceptions) Memberi “obat” bagi kegagalan fungsi Mengeksekusi rencana untuk menjalankan “obat penyembuhan” Mendiagnosa, mendebug, dan membetulkan unjuk kerja siswa Menginterpretasikan, memprediksi, mereparasi, dan memonitor perilaku sistem Ciri-ciri Sistem Pakar Terbatas pada domain keahlian tertentu Memiliki fasilitas informasi yang handal Berdasar “rule-rule”tertentu Mudah dimodifikasi Dapat digunakan dalam berbagai jenis komputer Dirancang untuk dapat dikembangkan secara bertahap Output bersifat anjuran PERBANDINGAN SISTEM KONVENSIONAL DENGAN SISTEM PAKAR Sistem Konvensional Sistem Pakar Informasi dan pemrosesannya biasanya digabungkan dalam satu program sekuensial Basis Pengetahuan dipisahkan secara jelas dengan mekanisme pemrosesan / inferensi (yaitu, aturan-aturan pengetahuan dipisahkan dari kontrol) Program tidak membuat kesalahan (yang membuat kesalahan : pemrogram) Program dapat berbuat kesalahan Biasanya tidak menerangkan mengapa data masukan diperlukan atau bagaimana kesimpulan ditarik Keterangan biasanya merupakan bagian dari hampir semua Sistem Pakar Perubahan program sangat menyulitkan (tedious) Perubahan dalam aturan-aturan mudah untuk dilaksanakan Sistem hanya beroperasi setelah lengkap / selesai Sistem dapat beroperasi hanya dengan aturan-aturan yang sedikit (prototipe awal) Eksekusi dilakukan dengan Eksekusi dilakukan langkah demi langkah (algoritmik) Menggunakan heuristik dan logika Perlu informasi lengkap agar bisa Beroperasi Dapat beroperasi dengan informasi yang tidak lengkap atau tidak tentu PERBEDAAN (Lanjutan..) Sistem Konvensional Sistem Pakar Manipulasi efektif dari basis data yang besar Manipulasi efektif dari basis pengetahuan yang besar Representasi dan penggunaan data Representasi dan penggunaan pengetahuan Tujuan utama : efisiensi Tujuan utama : efektivitas Mudah berurusan dengan data kuantitatif Mudah berurusan dengan data kualitatif Menangkap, membesarkan, dan mendistribusikan akses ke data numerik atau informasi Menangkap, membesarkan, dan mendistribusikan akses ke pertimbangan dan pengetahuan Faktor-faktor yang mempengaruhi keberhasilan sistem pakar Isi Sistem Pakar Faktor Manajemen Dukungan manajamen merupakan keharusan Kebijakan Dana Sumber daya Pelatihan untuk pengguna Faktor Pengetahuan Pengetahuan didapat dari setidaknya satu orang pakar Tingkat kepakaran yang cukup tinggi Pengetahuan dapat diinterpretasikan secara simbolis Faktor Antarmuka Antarmuka dapat mengakomodir target pengguna (awam, teknis, pakar) Antarmuka disesuaikan dengan spesifikasi sistem pakar itu sendiri Faktor Lingkup Permasalahan • Kebutuhan akan solusi sepadan dengan biaya dan tenaga untuk membangun sebuah sistem pakar (cukup sulit) • Permasalahan yg akan diselesaikan merupakan masalah kualitatif (fuzzy) dan tidak bisa diselesaikan dengan metode tradisional • Permasalahan terfokus dalam satu bidang yang tidak terlalu luas • Pakar tidak selalu tersedia PENDAHULUAN SUB SISTEM CBIS YG MENARIK 1.SISTEM BERBASIS PENGETAHUAN (KNOWLEDGE BASED SYSTEM) 2.KECEDASAN BUATAN ( ARTIFICIAL INTELLIGENT) BENTUK SISTEM BERBASIS PENGETAHUAN YG POPULER ADALAH SISTEM PAKAR (EXPERT SYSTEM) YG MEMPUNYAI 4 BAGIAN UTAMA 1.USER INTERFACE 2.INFERENCE ENGINE 3.DEVOLOPMENT ENGINE 4.KNOWLAGDE BASE KECERDASAN BUATAN Kecerdasan buatan (artificial Intelligence A/I) adalah : Kegiatan memberikan pada mesin ( komputer) kemampuan untuk menampilkan prilaku yg dianggap cerdas. AI pertama kali diperkenalkan pada tahun 1956 dgn program komputer pertama disebut : logic theorist ( pembuktian teorima kalkulus). AI sedang diterapkan dibidang bisnis dlm bentuk sistem berbasisi pengetahuan ( knowledge base system), jenis yg paling popular adalah : program komputer yang memcoba untuk mewakili pengetahuan aturan yakni aturan praktis ( rule of thumb) dan aturan dugaan ( rule of good guessing). PROBLEM DOMAIN MODEL SISTEM PAKAR PEMAKAI PROBLEM DOMAIN USER INTERFACE INFERENCE ENGINE KNOWLAGE BASE DEVELOPMENT ENGINE EXPERT & KNOWLEDGE ENGINEER USER INTERFACE User interface memungkinkan manajer untuk memasukkan instruksi & informasi ke dlm sistem pakar Input Sistem Pakar User interface dirancang untuk mempermudah dialog dua arah antara sistem & pemakai dgn menampilkan teknik tanya-jawab dan pengisian formulir kemudian muncul bahasa perintah & menu speadsheet elektronik & sistem manajemen data base (DBMS) KNOWLEDGE BASE Knowlage base memuat fakta-fakta yg menjelaskan area masalah & juga teknik menerangkan masalah yg memjelaskan bagaimana fakta fakta tsb cocok sata dgn yang lain INTERFACE ENGINE Penaran Maju Penalaran maju disebut juga forward chaining dimana sistem pakar akan menguji apakah setiap kondisi benar atau salah. Penalaran Mundur Penalaran mundur disebut juga backward chaining Membandingkan Penalaran Maju & Penalaran Mundur Penalaran mundur bergerak lebih cepat dari penalaran maju krn penalaran mundur tdk harus mempertimbangkan semua aturan & tdk membuat beberapa putaran melalui perangkat atauran. Penalaran mundur sangat sesuai jika: 1. Terdapat variabel sasaran berganda ( multiple goal variable) 2. Terdapat banyak aturan 3. Semua atau hampir semua aturan tdk hrs diuji dalm proses mencapi pemecahan. DEVELOPMENT ENGINE Komponen utama sisem pakar adalah development engine, yg digunakan utk menciptakan sistem pakar. Ada 2 pendekatan dasar yakni : 1. 2. Bahasa Pemrograman Shell sistem pakar Penyusunan Sistem Pakar Struktur sistem pakar Komponen-komponen SP Basis pengetahuan representasi pengetahuan mesin inference User Interface (antarmuka pengguna), Basis pengetahuan Yaitu berupa representasi penegtahuan dari pakar. Tersusun dari fakta dan kaidah. Fakta adalah informasi tentang objek, peristiwa atau situasi. Kaidah adalah cara untuk membangkitkan suatu fakta yang sudah diketahui Model : Jaringan Semantik, Frame, Aturan Produksi, Logika Predikat, Hybrids Mesin inferensi Berperan sebagai pemamdu proses penalaran terhadapa suatu kondisi. Dalam prosesnya menggunakan strategi penalaran dan strategi pengendalian. Strategi penalaran : exact reasoning dan inexact Teknik pengendalian : forward chaining, backward chaining dan gabungan keduanya Forward Chaining Pelacakan kedepan adalah pendekatan yang dimotori data (data-driven). Dalam pendekatan ini pelacakan dimulai dari informasi masukan, dan selanjutnya mencoba menggambarkan kesimpulan. Pelacakan ke depan, mencari fakta yang sesuai dengan bagian IF dari aturan IF-THEN. Backward chaining Pelacakan ke belakang adalah pendekatan yang dimotori oleh tujuan (goal-driven). Dalam pendekatan ini pelacakan dimulai dari tujuan, selanjutnya dicari aturan yang memiliki tujuan tersebut untuk kesimpulannya. Selanjutnya proses pelacakan menggunakan premis untuk aturan tersebut sebagai tujuan baru dan mencari aturan lain dengan tujuan baru sebagai kesimpulannya. Proses berlanjut sampai semua kemungkinan ditemukan. Konsep Dasar Sistem Pakar Sistem yang mempunyai pengetahuan para ahli/pakar dan menggunakannya dalam mengambil keputusan/menyelesaikan masalah Bidang yang ditangani spesifik Berdasarkan pada aturan-aturan yang biasanya berbentuk IF-THEN Konsep Dasar Sistem Pakar Kepakaran ditransfer dari seorang pakar ke komputer. Pengetahuan ini disimpan dan user dapat meminta saran spesifik yang dibutuhkannya. Komputer dapat mencari, mengolah dan menampilkan kesimpulan yang spesifik Mempunyai kemampuan menjelaskan Bagian Utama Sistem Pakar Lingkungan pengembangan Digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar Lingkungan konsultasi Digunakan oleh pengguna yang bukan pakar untuk memperoleh pengetahuan pakar Komponen Sistem Pakar • Antarmuka pengguna – mekanisme yang digunakan oleh • • • • • • pengguna dan sistem pakar untuk berkomunikasi Basis pengetahuan – terdiri dari fakta dan aturan Akuisisi pengetahuan – pemindahan pengetahuan dari sumber ke program komputer Motor inferensi – penalaran untuk menyelesaikan masalah Workplace/blackboard – memori untuk merekam kejadian yang sedang berlangsung termasuk keputusan sementara, ada 3 keputusan yang dapat direkam : rencana, agenda, solusi Fasilitas penjelasan – memberikan penjelasan tentang perilaku sistem pakar Perbaikan pengetahuan – peningkatan kinerja dan update pengetahuan Tahap Pembuatan Sistem Pakar Contoh Sistem Pakar • MYCIN – – Mendiagnosa penyakit infeksi dan merekomendasi pengobatan Membantu dokter yang belum berpengalaman dalam menangani penyakit • EL – – – Digunakan untuk menganalisa dan membantu rekayasa rancangan sirkuit elektronik yang terbuat dari transistor, dioda dan resistor. Diagram skematik dari sirkuit ini dimasukkan ke dalam komputer dan EL menganalisis menentukan karakteristik sirkuit, nilai voltase, dan strum yang ada pada semua titik sirkuit. Basis pengetahuan pada EL merupakan prinsip umum elektronik seperti hukum OHM, hukum kirchoff, karakteristik komponen, teori operasi transistor. • DELTA – membantu karyawan bagian pemeliharaan mesin lokomotif diesel dalam memantau mesin-mesin yang tidak berfungsi dengan baik dan membimbing ke arah prosedur perbaikan Membangun Basis Pengetahuan • • • • • • Define the Potential Solutions Define the Inputs Fact Develop an outline Draw a Decision Tree Map a Matrix Develop the Software Persyaratan Untuk Membuat Sistem Pakar Yang Baik : Sistem pakar harus dikembangkan untuk memenuhi kebutuhan yang diketahui dan penting. Kecepatan pemrosesan dari sistem harus sangat tinggi. Sistem pakar harus dapat menaikkan kepakaran dari pengguna. Pembetulan kesalahan harus mudah dilakukan. Program harus dapat menjawab pertanyaan yang mudah. Persyaratan Untuk Membuat Sistem Pakar Yang Baik : (lanjutan) Sistem harus dapat mengajukan pertanyaan untuk men mendapatkan informasi tambahan. Pengetahuan program harus mudah untuk dimodifikasi (yaitu : add, delete, dan modify). Pengguna harus merasa bahwa ia yang menguasai sistem (“he is in control”). Derajat usaha (baik fisik maupun mental) untuk menggu - nakan sistem pakar bagi pemula haruslah masuk akal (tidak terlalu berat). Kebutuhan input (dalam pengertian “data”) harus jelas dan mudah untuk diperoleh. MEMBANGUN SUATU KNOWLEDGE BASE (RULE-BASED) SYSTEM Kasus : Penggunaan Sistem Pakar untuk mencocokkan Anggur dan Makanan Buatlah kasus lainnya. Pengenalan Jaringan Syaraf Tiruan Komputer sangat cepat dalam perhitungan matematis, sedangkan manusia sangat lambat Apakah komputer lebih cerdas dari manusia ? Manusia adalah ciptaan Tuhan yang paling sempurna dan mempunyai inteligensia yang tinggi (spektrum inteligensia) Manusia mempunyai panca indera dan proses kognisi, yang sangat sulit dilakukan oleh komputer. (contoh : ?) Pendahuluan (cont’d) Bagaimana membuat Komputer mampu seperti manusia ? Kemampuan penyerupaan panca indera. Inteligensia Semu mengembangkan metode logika dengan menggunakan manipulasi simbolik. Akan tetapi manipulasi simbolik ternyata tidak mampu untuk menyelesaikan persoalan yang berkaitan dengan panca indera. Representasi Pengetahuan Review: Definisi AI = bidang ilmu komputer yang meneliti dan mempelajari bagaimana agar komputer dapat bertindak dan mengerjakan pekerjaan seperti yang dilakukan oleh manusia. Awalnya komputer hanya mesin hitung Review: Definisi Membuat Sistem Berfikir Bertindak Seperti Manusia Model Kognitif Uji Turing Rasional Kaidah bernalar Agen Rasional: membuat inferensi logis sehingga dapat melakukan aksi logis Berfikir Seperti Manusia (Thinking Humanly) 1. 2. Diperlukan suatu cara untuk mengetahui bagaimana manusia berfikir Diperlukan pemahaman tentang bagaimana pikiran manusia bekerja Bagaimana caranya? Melalui introspeksi atau mawas diri; mencoba menangkap bagaimana pikiran kita berjalan How do you know that you understand? Melalui percobaan psikologis Bidang Ilmu: Cognitive Science Vision & natural language Uji Turing: AI Bertindak Seperti Manusia (acting humanly) AI lulus test apabila interogator tidak bisa membedakan dialog mana yang dilakukan dengan komputer dan mana yang dilakukan dengan manusia Komputer Pertanyaan dan Jawaban Interogator Manusia System capabilities: •Natural language processing •Knowledge representation •Automated reasoning •Machine learning •Computer vision (+) •Robotics (+) Berfikir Rasional (thinking rationally) Cara berfikirnya memenuhi aturan logika yang dibangun oleh Aristotles Pola struktur argumentasi yang selalu memberi konklusi yang benar bila premis benar Menjadi dasar bidang logika Tradisi logicist dalam AI adalah membangun program yang menghasilkan solusi berdasarkan logika Problem: Pengetahuan informal sukar diuraikan dan dinyatakan dalam bentuk notasi logika formal Terdapat perbedaan besar antara memecahkan masalah “secara prinsip” dan “di dunia nyata” Bertindak Rasional (acting rationally) Bertindak secara rasional artinya bertindak didalam upaya mencapai goal Didalam lingkungan yang rumit tidaklah mungkin mendapatkan rasionalisasi sempurna yang selalu melakukan sesuatu dengan benar Rasionalisasi terbatas Sehingga: Thinking dan acting humanly terlalu luas, thinking rationally masih terlalu sempit Pendekatan yang diikuti adalah Acting Rationally Review: Intelegensia Bagaimana seseorang/sesuatu belajar dan melaksanakan pengetahuan yang dimiliknya. Walaupun punya pengetahuan tapi jika tidak dapat melaksanakan pengetahuan tersebut = tidak inteligen Daya reaksi atau penyesuaian yang cepat dan tepat, baik secara fisik maupun mental, terhadap pengalamanpengalaman baru, membuat pengalaman dan pengetahuan yang dimiliki siap untuk dipakai apabila dihadapkan pada fakta-fakta atau kondisi-kondisi baru (Kamus Besar Bahasa Indonesia Balai Pustaka) Pengetahuan diperoleh dari belajar dan menalar untuk menggunakannya dalam menyelesaikan masalah Review: Bagian Utama AI Basis Pengetahuan (Knowledge Based) Berisi fakta, teori, pemikiran, dan hubungannya Motor Inferensi (Inference Engine) Kemampuan menalar dan menarik kesimpulan Computer Inputs Knowledge base Inference mechanism Outputs Review: AI Prehistory Philosophy : Logic, methods of reasoning Mathematics : Formal representation and proof algorithms, computation, probability Economics : utility, decision theory Neuroscience : physical substrate for mental activity Psychology : phenomena of perception and motor control, experimental techniques Control theory : design systems that maximize an objective function over time Linguistics : knowledge representation, grammar Review: AI History 1941: era komputer elektronik yang dapat menyimpan program 1943 – 1956: Warren McCulloch dan Walter Pits menemukan boolean model untuk otak, bernaa PERCEPTRON (JST pertama), McCarthy disebut father of AI 1952 – 1969: Newell dan Simon menemukan General Problem Solver, McCarthy membuat LISP 1966 – 1974: jaman AI melambat 1969 – 1979 : knowledge based system 1986 – now: Industrial AI dan perkembangan JST, GPS, software catur HITECH adalah software pertama yang mengalahkan grandmaster dunia, Arnold Danker. Prinsipnya AI mengandung unsur: SEARCHING, REASONING, PLANNING, dan HEARING Review: AI vs Non AI AI lebih permanen, non AI mudah berubah seturut waktu AI mudah diduplikasikan dan disebarkan AI lebih murah dari non AI AI lebih konsisten dan mudah didokumentasi AI tidak kreatif AI tidak dapat menggunakan pengalaman secara langsung AI terbatas Contoh ilmu-ilmu dalam lingkup AI ANN (Artificial Neural Network) NLP (Natural Language Processing) Game Playing ES (Expert System) Robotics Pattern Recognition Computer Reasoning Computer Vision IR (Information Retrieval) Data Mining Fuzzy System Neuro Fuzzy System GA (Genetic Algorithm) CBR (Case Based Reasoning) DSS (Decision Support System) AI vs Pemrograman Konvensional? AI: pemrosesan simbolik, PK: Algoritmik AI: input tdk lengkap, PK: input hrs lgkp AI: heuristic searchng, PK: algoritmik AI: ada penjelasan, PK: tidak AI: basis pengetahuan, PK: data & infor AI: control & knowledge terpisah, PK tidak AI: mampu menalar, PK: tidak AI: pemeliharaan mudah, PK: relatif sulit AI Lemah & Kuat Klaim AI lemah Mesin bisa dibuat untuk bertindak seolah-olah ia cerdas Prinsip nilai dari komputer adalah bahwa ia memberi perlengkapan yang sangat ampuh. Contoh, ia memampukan kita untuk merumuskan dan menguji hipotesa dalam cara yang lebih tepat Klaim AI kuat Mesin yang bertindak cerdas memiliki kesadaran pikiran dan nyata Knowledge Base The first step in constructing an AI program is to build a knowledge base Will be used by the inference mechanism to reason and draw conclusions Computer Inputs Knowledge base Inference mechanism Outputs Knowledge Base Knowledge engineering: process of collecting and organizing the knowledge Knowledge representation: process of how knowledge is represented to form a knowledge base Representasi Pengetahuan Bagaimana merepresentasikan pengetahuan ke dalam basis pengetahuan dan menguji kebenaran penalaran 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 Alasan Pemilihan Why knowledge representation rather than information representation? Karena pada konvensional database merepresentasikan data secara sederhana: string, number, boolean Namun AI menganggap pengetahuan lebih kompleks, seperti proses, prosedur, aksi, waktu, tujuan dan penalaran Knowledge should be collected, codified, and organized in systematic order Representasi Pengetahuan (2) Harus terdiri dari struktur data dan prosedur untuk penafsiran Hal yang berhubungan dengan RP: Object pengetahuan itu sendiri Event: kejadian-kejadian dalam dunia nyata dan hubungannya Performa: bagaimana melakukan suatu tugas tertentu Meta knowledge: pengetahuan tentang pengetahuan yang direpresentasikan Penggunaan Pengetahuan Acuisition: mengintegrasikan informasi baru kedalam pengetahuan sistem. Dua level: Menyusun fakta ke dalam database Pembuatan fungsi untuk mengintegrasikannya dengan cara “belajar dan mengadaptasikannya” terlebih dahulu Retrieval: mengingat kembali, menyusun ulang pengetahuan berdasarkan hubungan pengetahuan terhadap masalah Linking: mengekstrak informasi baru tersebut Lumping: mengelompokkan hasil ekstraksi pengetahuan baru tersebut kedalam struktur yang lebih besar seperti yang dibutuhkan dalam menyelesaikan masalah Penggunaan Pengetahuan (2) Reasoning: pengetahuan digunakan untuk menalar suatu permasalahan Formal reasoning: menggunakan logika proporsional Procedural reasoning: menggunakan aturan produksi ( IFTHEN) Analogical reasoning: sangat sulit Klasifikasi Kategori RP Menurut Mylopoulus dan Levesque: (declarative) Representasi Logika: menggunakan logika formal. Digunakan pada PROLOG Representasi Prosedural: menggambarkan prosedur sebagai kumpulan instruksi untuk memecahkan masalah. Digunakan dalam pemrograman: IF-THEN Representasi Network: menggambarkan pengetahuan sebagai Graph dan Tree Representasi Terstruktur: memperluas konsep Representsi Network dengan membuat node-nodenya menjadi struktur data yang kompleks. Contoh: script, frame, dan object Procedural: dibuat dalam prosedur-prosedur 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 Lihat dibuku Artificial Intelligence (Sri Kusuma Dewi) Logic: Proposition Logic P Q P AND Q P Q P OR Q T T T T T T T F F T F T F T F F T T F F F F F F P Q P Q P Q PQ T T T T T T T F F T F F F T T F T F F F T F F T 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: Arguments: the individuals or objects an assertion is made about Predicate: the assertion made about them Prolog: PROgramming in LOGic 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) Logic: Predicate Logic (3) PREDICATE (Individual [object]1, Individual [object]2) Examples: John likes Mary The door is open The tire is flat Chris is a man Predicate express conditions Function shows a relationship LIKES(John, Mary) OPEN(door) FLAT(tire) man(Chris) Function Logic: Predicate Logic (4) Quantifiers All Javanese are Indonesian x[ Javanesex Indonesian x] Some cars are red x [car(X) AND IS RED(x)] 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) Semantic Network (2) Frame Diperkenalkan oleh Minsky tahun 1975 Suatu struktur data yang digunakan untuk merepresentasikan pengetahuan dan situasi-situasi yang telah dipahami Frame memiliki slot untuk menggambarkan rincian dan karakteristik obyek Frames (2) Frames (3) Script Mirip dengan frame, merepresentasikan pengetahuan berdasarkan pengalamanpengalaman Frame menggambarkan obyek, sedangkan script menggambarkan urutan peristiwa Elemen script: Kondisi input: start, awal Track: variasi yang mungkin terjadi Prop: obyek pendukung Role: peran yang dimainkan oleh suatu obyek Scence: adegan yang terjadi Hasil (result): kondisi akhir yang terjadi Schemas: Scripts (2) 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 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 Buku & Bahan Acuan Komputer Masa Depan, Pengenalan Artificial Intelligence, Suparman & Marlan, Andi Offset, 2007 Konsep Kecerdasan Buatan: Anita Desiani & Muhammad Arhami, Andi Offset, 2006 Artificial Intelligence Teknik dan Aplikasinya, Sri Kusumadewi, Graha Ilmu, 2003 Artificial Intelligence, Searching, Reasoning, Planning, and Learning, Suyanto, Penerbit Informatika, 2007 Bahan-bahan dari Internet NEXT Sistem Pakar JST NLP Case Based Reasoning Problem Solving : Learning Information Retrieval & Document Mining “PENGEMBANGAN SISTEM PAKAR” Membangun Aplikasi IS • What is the application to be build ? (problem selection) • Who is going to build the application ? (development strategy) • How is the application going to be build ? (development process) What is the Application ? Who is going to Build it ? Who is the Application to be Build ? Phase Pengembangan Sistem Pakar Phase I Phase II Phase III Phase IV Phase V Phase VI : : : : : : Insialisasi Proyek Analisis dan Perancangan Sistem Prototiping Cepat Pengembangan Sistem Implementasi Post Implementasi Daur Hidup Pengembangan Sistem Pakar Phase I Phase II : Insialisasi Proyek Masalah ? Kebutuhan ? Evaluasi ? : Analisis dan Perancangan Sistem Rancangan ? Strategi dan Metodologi ? Sumber Pengetahuan ? Sumberdaya Komputasi ? Daur Hidup Pengembangan Sistem Pakar (lanjutan) Phase III : Prototiping Cepat Membangun Prototipe ? Testing dan Improving ? Demonstrasi ? Phase IV : Pengembangan Sistem Membangun Basis Peng. ? Instalasi, Pengembangan? Phase V : Implementasi Phase VI : Post Implementasi PHASE I Inisialisasi Proyek PHASE II Analisis dan Perancangan Sistem PHASE III Prototyping Cepat PHASE IV Pengembangan Sistem Definisi Permasalahan Pengkajian Kebutuhan Evaluasi alternatif SolusiVerifikasi Pendekatan Sistem Pakar Perhatian Terhadap Isu Manajemen Rancangan dan Rencana Konseptual Strategi Pengembangan Sumber-sumber Pengetahuan Sumber Daya Komputasi Study Kelayakan, Analisis Biaya-Manfaat Membangun Prototipe Sederhana Testing, Improving, dan Expending Demonstrasi dan Analisis Kelayakan Penyelesaian Rancangan Membangun Basis Pengetahuan Testing, Evaluating, dan Improving Basis Pengetahuan Rencana Integrasi PHASE V Implementasi Penerimaan oleh pengguna Instalasi, Demonstrasi, Deployment Orientasi, Training, Security, Dokumentasi, Integrasi, Field Pengguna PHASE VI Post-Implementasi Operasi, Maintenance dan Upgrades Evaluasi Periodik PHASE I : INISIALISASI PROYEK A. DEFINISI PERMASALAHAN DAN PENGKAJIAN KEBUTUHAN Mendefinisikan permasalahan hanyalah berusaha menjawab beberapa pertanyaan : Apa masalahnya ? Apa kebutuhan yang riil ? Masalah bisnis pada umumnya adalah produktifitas yang rendah, kekurangan pakar, information overload, masalah waktu, atau masalah orang. PHASE I : INISIALISASI PROYEK (lanjutan) B. EVALUASI ALTERNATIF SOLUSI Sebelum memulai pengembangan Sistem Pakar, perhatian solusi alternatif terhadap permasalahan. Kurang pengetahuan adalah masalah yang dapat dipecahkan tanpa Sistem Pakar. Contoh lainnya : Pemanfaatan dan ketersediaan Pakar Pendidikan dan Pelatihan Pengetahuan yang terdokumentasikan Software Konvensional Membeli Knowledge melalui internet. PHASE I : INISIALISASI PROYEK (lanjutan ..) C. VERIFIKASI PENDEKATAN SISTEM PAKAR Perlu adanya studi 3 (tiga) bagian untuk menentukan apakah pendekatan Sistem Pakar cocok, yaitu Requirements (12) Justification, (8) Appropriatness (3) (Waterman, 1985) 12 Requirements untuk Pengembangan Sistem Pakar Tugas tidak memerlukan common sense Tugas hanya perlu kognitif, dan bukan skill fisik Sekurangnya ada seorang pakar yang mau kerjasama Pakar yang terlibat dapat menyatakan metodenya untuk penyelesaian masalah Pakar yang terlibat setuju dengan penge -tahuan dan pendekatan solusi terhadap permasalahan Tugas tidak terlalu sulit 12 Requirements untuk Pengembangan Sistem Pakar (lanjutan) Tugas mudah dipahami dan didefinisikan dengan baik Definisi tugas cukup stabil Solusi komputer konvensional (algoritmik) kurang memuaskan Hasil yang salah dan tak optimal dapat ditolerir Data dan test cases tersedia Kosakata tugas tidak lebih dari ratusan konsep 8 Justifikasi untuk Pengembangan Sistem Pakar Solusi terhadap masalah mempunyai payoff tinggi Sistem Pakar dapat melestarikan kepakar -an manusia sehingga tidak hilang Kepakaran diperlukan di banyak lokasi Kepakaran diperlukan dalam lingkungan yang tidak ramah dan berbahaya Kepakaran memperbaiki unjuk rasa dan kualitas Sistem dapat digunakan untuk pelatihan Solusi Sistem Pakar dapat diturunkan lebih cepat dari pada yang dilakukan oleh pakar manusia Sistem pakar lebih konsisten dan lebih akurat daripada manusia Kecocokan (appropriateness) dari Sistem Pakar Ada 3 faktor yang harus diperhatikan untuk menen – tukan cocok atau tidak membangun sistem pakar, yaitu : Nature of the problem. Masalah harus mempunyai struktur simbolik dan ada heuristik untuk solusi. Complexity of the task. Tugas harus tidak terlalu sulit maupun terlalu mudah bagi pakar manusia. Scope of the problem. Masalah harus berukuran yang dapat ditangani dan harus mempunyai nilai praktis. PHASE I : INISIALISASI PROYEK (lanjutan) D. PERHATIAN TERHADAP ISU MANAJEMEN Proyek Sistem Pakar Siapa yang akan memulai Proyek Ketersediaan finansial Ketersediaan sumber daya lainnya Konstrain hukum dan konstrain lain-lain Nilai jual proyek : setiap pihak yang terlibat atau top management harus yakin terhadap nilai proyek Seseorang dalam top management harus mensponsori proyek ini dengan sungguh sungguh EXPERT SYSTEM (Sistem Pakar) Bentuk pengetahuan dalam Sistem Pakar: fakta-fakta pada lingkup permasalahan tertentu teori-teori pada lingkup masalah tertentu prosedur-prosedur berkenaan dengan lingkup masalah tertentu strategi-strategi global untuk menyelesaikan masalah meta-knowledge (pengetahuan tentang pengetahuan) EXPERT SYSTEM (Sistem Pakar) Blok diagram Sistem Pakar Facts Knowledge Base Knowledge base (basis pengetahuan) berisi pengetahuan-pengetahuan dalam penyelesaian masalah Inference Engine Inference engine (motor inferensi) bertugas untuk menganalisis pengetahuan dan menarik kesimpulan berdasarkan knowledge base User Expertise Expert System EXPERT SYSTEM (Sistem Pakar) Elemen Sistem Pakar : User interface (antarmuka) mekanisme komunikasi antara user dan ES Explanation facility (subsistem Penjelasan) digunakan untuk melacak respon dan memberikan penjelasan tentang kelakuan sistem pakar secara interaktif Working memory database global dari fakta yang digunakan dalam prosedur Agenda daftar prioritas prosedur yang dibuat oleh motor inferensi dan direkam dalam working memory EXPERT SYSTEM (Sistem Pakar) Elemen Sistem Pakar (Lanjutan) : Inference engine (motor inferensi) berisi metodologi yang digunakan untuk melakukan penalaran terhadap informasi-informasi dalam basis pengetahuan untuk memformulasikan konklusi. Knowledge acquisiton facility berisi pengetahuan-pengetahuan yang dibutuhkan untuk memahami, memformulasikan dan menyelesaikan masalah. EXPERT SYSTEM (Sistem Pakar) Basis Aturan (Rule Based) Sistem Pakar Pengetahuan dalam ES direpresentasikan dalam bentuk IF-THEN atau dalam bentuk Production Rules Motor inferensi menentukan aturan awal (rule antecedents) yang sesuai Aturan yang terdapat di agenda dapat diaktivasi Aktivasi aturan akan membangkitkan fakta baru di sisi kanan (consequent) Aktivasi dari satu aturan adalah bagian dari aktivasi aturan yang lain EXPERT SYSTEM (Sistem Pakar) Contoh Basis Aturan : EXPERT SYSTEM (Sistem Pakar) Siklus Motor Inferensi (Inference Engine Cycle ) Menggambarkan eksekusi dari aturan pada motor inferensi : Conflict resolution : pemilihan aturan dengan prioritas tertinggi dari agenda Execution : aksi consequent dari aturan yang terpilih Match : pengkinian (update) agenda Siklus berakhir ketika tidak ada lagi aturan di agenda atau ketika ditemui perintah stop EXPERT SYSTEM (Sistem Pakar) Ada 2 cara dalam melakukan inferensi : 1. Forward Chaining. Pencocokkan fakta atau pernyataan dimulai dari bagian sebelah kiri (IF dulu). Dengan kata lain, penalaran dimulai dari fakta terlebih dahulu untuk menguji kebenaran hipotesis. EXPERT SYSTEM (Sistem Pakar) 2. Backward Chaining. Pencocokkan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN dulu). Dengan kata lain, penalarana dimulai dari hipotesis terlebih dahulu, dan untuk menguji kebenaran hipotesis tersebut dicari fakta-fakta yang ada dalam basis pengetahuan. EXPERT SYSTEM (Sistem Pakar) CONTOH : Diketahui sistem pakar dgn aturan-aturan sebagai berikut: 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 dollar naik THEN suku bunga turun R5 : IF dollar turun THEN suku bunga naik R6 : IF harga obligasi turun THEN beli obligasi Apabila diketahui bahwa dollar turun, maka buatlah keputusan apakah akan membeli obligasi atau tidak ? EXPERT SYSTEM (Sistem Pakar) SOLUSI : EXPERT SYSTEM (Sistem Pakar) CONTOH : Pada tabel di bawah ini ada 10 aturan yang tersimpan. Fakta awal yang diberikan A & E (artinya A dan E bernilai benar). No Aturan Ingin dibuktikan R-1 IF A & B THEN C R-2 IF C THEN D apakah K bernilai benar R-3 IF A & E THEN F (hipotesis : K) ? R-4 R-5 R-6 R-7 R-8 R-9 R-10 IF IF IF IF IF IF IF A THEN G F & G THEN D G & E THEN H C & H THEN I I & A THEN J G THEN J J THEN K EXPERT SYSTEM (Sistem Pakar) SOLUSI : Forward Chaining Langkah-langkah inferensi adalah sebagai berikut : 1.Dimulai dari R-1, A merupakan fakta sehingga bernilai benar, sedangkan B belum bisa diketahui kebenarannya, sehingga C pun juga belum bisa diketahui kebenarannya. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-1 ini. Sehingga kita menuju ke R-2. 2.Pada R-2 kita tidak mengetahui informasi apapun tentang C, sehingga kita juga tidak bisa memastikan kebenaran D. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-2 ini. Sehingga kita menuju ke R-3 EXPERT SYSTEM (Sistem Pakar) 3.Pada R-3, baik A maupun E adalah fakta sehingga jelas benar. Dengan demikian F sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu F. Karena F bukan hipotesis yang hendak kita buktikan maka penelusuran kita lanjutkan ke R-4. 4. Pada R-4, A adalah fakta sehingga jelas benar. Dengan demikian G sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu G. Karena G bukan hipotesis yang hendak kita buktikan, maka penelusuran kita lanjutkan ke R-5 5.Pada R-5, baik F maupun G bernilai benar berdasarkan aturan R-3 danR-4. Dengan demikian D sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu D. Karena D bukan hipotesis yang hendak kita buktikan, maka penelusuran kita lanjutkan ke R-6 EXPERT SYSTEM (Sistem Pakar) 6.Pada R-6, baik A maupun G adalah benar berdasarkan fakta dari R-4. Dengan demikian H sebagai konsekuen juga ikut benar. Sehingga sekarang kita mempunyai fakta baru yaitu H. Karena H bukan hipotesis yang hendak kita buktikan, maka penelusuran kita lanjutkan ke R-7. 7.Pada R-7, meskipun H benar berdasarkan R-6, namun kita tidak tahu kebenaran C sehingga, I pun juga belum bisa diketahui kebenarannya. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-7 ini. Sehingga kita menuju ke R-8 8.Pada R-8, meskipun A benar karena fakta, namun kita tidak tahu kebenaran I, sehingga J pun juga belum bisa diketahui kebenarannya. Oleh karena itu kita tidak mendapatkan informasi apapun pada R-8 ini. Sehingga kita menuju ke R-9 EXPERT SYSTEM (Sistem Pakar) 9.Pada R-9, J bernilai benar karena G benar berdasarkan R-4. Karena J bukan hipotesis yang hendak kita buktikan, maka penelusuran kita lanjutkan ke R-10. 10. Pada R-10, K bernilai benar karena J benar berdasarkan R-9. Karena K sudah merupakan hipotesis yang hendak kita buktikan, maka terbukti bahwa K adalah benar EXPERT SYSTEM (Sistem Pakar) Fakta Baru pada saat Inferensi EXPERT SYSTEM (Sistem Pakar) Alur Inferensi Forward Chaining EXPERT SYSTEM (Sistem Pakar) SOLUSI : Backward Chaining Langkah-langkah inferensi adalah sebagai berikut : 1. Pertama-tama kita cari terlebih dahulu mulai dari R-1, aturan yang mana memiliki konsekuen K. ternyata setelah ditelusur, aturan dengan konsekuen K baru ditemukan pada R-10. Untuk membuktikan bahwa K benar maka perlu dibuktikan bahwa J benar. 2. Kita cari aturan yang memiliki konsekuen J. kita mulai dari R-1, ternyata kita baru akan menemukan aturan dengan konsekuen J pada R-8. Untuk membuktikan bahwa J benar maka perlu dibuktikan bahwa I dan A benar. Untuk membuktikan kebenaran I, kita perlu cari aturan dengan konsekuen I, ternayata ada di R-7 EXPERT SYSTEM (Sistem Pakar) 3. Untuk membuktikan bahwa I benar di R-7, kita perlu buktikan bahwa C dan H benar. Untuk itu kita pun perlu mencari aturan dengan konsekuen C dan ada di R-1. 4. Untuk membuktikan C benar di R-1, kita perlu buktikan bahwa A dan B benar. A jelas benar karena A merupakan fakta. Sedangkan B kita tidak bisa membuktikan kebenarannya, karena selain bukan fakta, di dalam basis pengetahuan juga tidak ada aturan dengan konsekuen B. Dengan demikian maka dari penalaran ini kita tidak bisa buktikan kebenaran dari hipotesis K. Namun demikian, kita masih punya alternative lain untuk melakukan penalaran 5. Kita lakukan backtracking. Kita ulangi lagi dengan mencari aturan dengan konsekuen I, ternyata juga tidak ada EXPERT SYSTEM (Sistem Pakar) 6. Kita lakukan backtraining lagi dengan mencari aturan dengan konsekuen I, ternyata juga tidak ada. 7. Kita lakukan backtraining lagi dengan mencari aturan dengan konsekuen J, ternyata kita temukan pada R-9. sehingga kita perlu buktikan kebenaran G 8. Kita mendapatkan di R-4 dengan konsekuen G. Kita perlu untuk membuktikan kebenaran A. karena A adalah fakta, maka terbukti bahwa K bernilai benar EXPERT SYSTEM (Sistem Pakar) SOLUSI : Backward Chaining EXPERT SYSTEM (Sistem Pakar) Contoh KASUS : Sistem Pakar Penasehat Keuangan User ingin berkonsultasi apakah tepat jika dia berinvestasi pada IBM Stock? Variabel-variabel yang digunakan: A = memiliki uang $10.000 untuk investasi B = berusia < 30 tahun C = tingkat pendidikan pada level college D = pendapatan minimum per tahun $40.000 E = investasi pada bidang Sekuritas (Asuransi) F = investasi pada saham pertumbuhan (growth stock) G = investasi pada saham IBM EXPERT SYSTEM (Sistem Pakar) FAKTA YANG ADA: Diasumsikan si user (investor) memiliki data: Memiliki uang $10.000 (A TRUE) Berusia 25 tahun (B TRUE) Dia ingin meminta nasihat apakah tepat jika berinvestasi pada IBM stock? EXPERT SYSTEM (Sistem Pakar) RULES R1 : IF seseorang memiliki uang $10.000 untuk berinvestasi R2 : R3 : R4 : R5 : AND dia berpendidikan pada level college THEN dia harus berinvestasi pada bidang sekuritas IF seseorang memiliki pendapatan per tahun min $40.000 AND dia berpendidikan pada level college THEN dia harus berinvestasi pada saham pertumbuhan (growth stocks) IF seseorang berusia < 30 tahun AND dia berinvestasi pada bidang sekuritas THEN dia sebaiknya berinvestasi pada saham pertumbuhan IF seseorang berusia == 22 tahun THEN dia berpendidikan college IF seseorang ingin berinvestasi pada saham pertumbuhan THEN saham yang dipilih adalah saham IBM. EXPERT SYSTEM (Sistem Pakar) RULES SIMPLICATION R1 : IF A AND C THEN E R2 : IF D AND C THEN F R3 : IF B AND E THEN F R4 : IF B THEN C R5 : IF F THEN G EXPERT SYSTEM (Sistem Pakar) Solusi dengan Forward Chaining : Step I : if A and C Then E Step II : if B then C → A,B,C True Step III : if A and C then E → A,B,C,E True Step IV : if B and E then F → A,B,C,E,F True step V : if F then G → A,B,C,E,F,G True kesimpulan : Cocok untuk investasi saham IBM = = = = = R1 R4 R2 R3 R5 EXPERT SYSTEM (Sistem Pakar) Solusi dengan Forward Chaining : Step I : if F Then G Step II : if B and E then F Step III : if A and C then E Step IV : if B then C step V : if F then G → A,B,C,E,F,G True kesimpulan : Cocok untuk investasi saham IBM = = = = R5 R3 R2 R4 Artificial Intelligence • Definition: The activity of providing such machines as computers with the ability to display behavior that would be regarded as intelligent if it were observed in humans. History • 1956, Dartmouth College. John McCarthy coined term. Same year, Logic Theorist (first AI program. Herbert Simon played a part) • Past 20 or so years, DOD and NSF have funded AI research at top schools (Stanford, Carnegie Mellon, etc.) • Desert Storm opened up new funding (smart bombs, night vision) Areas of Artificial Intelligence Expert systems AI hardware Robotics Natural language Learning Neural networks Artificial Intelligence Perceptive systems (vision, hearing) The Appeal of Expert Systems A computer program that attempts to code the knowledge of human experts in the form of heuristics (i.e. a rule of thumb) Two distinctions from DSS 1. has the potential to extend the manager’s problem-solving ability beyond his or her normal capabilities 2. the ability to explain how the solution was reached User Instructions & information Solutions & explanations Knowledge User interface Inference engine Expert system Development engine Expert and knowledge engineer Knowledge base Problem Domain An Expert System Model Expert system model - main parts: • • • • User interface Knowledge base Inference engine Development engine User Interface • User enters: – Instructions – Information } Menus, Menus,commands, commands,natural naturallanguage, language,GUI GUI • Expert system provides: – Solutions – Explanations of • Questions • Problem solutions Knowledge Base • Description of problem domain • Rules: A knowledge representation technique – such as ‘IF:THEN’ logic – networks of rules • Lowest levels provide evidence • Top levels produce 1 or more conclusions • A conclusion is called a Goal variable. A Rule Set That Produces One Final Conclusion Conclusion Conclusion Evidence Evidence Conclusion Evidence Evidence Evidence Evidence Evidence Evidence Cheetah Tiger R9 And And Tawny color Giraffe R10 Zebra R11 And R12 And Dark spots Long legs Ostrich R13 And Black strips Or Carnivore Or Or R1 Hair R2 Gives milk A Rule Set That Can Produce More Than One Final Conclusion Black& White R8 And And Swims Flies Well Bird Hoofs Chews cud R3 R4 Feathers And R6 And Flies Claws Lays eggs LEGEND: Rules Pointed teeth And Or R7 R5 milk Eats milk R15 And Can’t fly Ungulate Mammal R14 And Long neck Albatross Penguin Forward Eyes Conditions Action (conclusions) Rule Selection • Selecting rules to efficiently solve a problem is difficult • Some goals can be reached with only a few rules; rules 3 and 4 identify bird Inference Engine • Two basic approaches to using rules 1. Forward reasoning (data driven) 2. Reverse reasoning (goal driven) Forward Reasoning (forward chaining) • Rule is evaluated as: – (1) true, (2) false, (3) unknown • Rule evaluation is an iterative process • When no more rules can fire, the reasoning process stops even if a goal has not been reached Rule 1 IF A THEN B Rule 2 T Rule 7 F IF B OR D THEN K IF C THEN D Rule 3 T IF K THEN F Rule 5 IF G THEN H Rule 6 IF I THEN J IF K AND L THEN N T T IF M THEN E Rule 4 Rule 10 The Forward Reasoning Process Rule 8 Rule 12 T IF N OR O THEN P IF E THEN L T T Legend: Rule 9 T F IF (F AND H) OR J THEN M T First pass Rule 11 IF M THEN O T Second pass Third pass Reverse Reasoning (backward chaining) • Divide problem into subproblems • Try to solve one subproblem • Then try another A Problem and Its Subproblems Rule 10 IF K AND L THEN N Rule 12 Rule 11 IF N OR O THEN P Legend: Problem IF M THEN O Subproblem A Subproblem Becomes the New Problem Rule 7 IF B OR D THEN K Rule 8 IF E THEN L Rule 10 IF K AND LTHEN N Legend: Rule 12 IF N OR O THEN P Problem Subproblem Step 4 Rule 1 IF A THEN B T Step 3 Rule 7 IF B OR D THEN K T Rule 2 IF C THEN D The First Five Problems Are Identified Step 2 Rule 10 IF K AND L THEN N Step 5 Rule 3 IF M THEN E Step 1 Rule 12 IF N OR O THEN P IF E THEN L Rule 11 IF (F AND H) Rule 9 OR J THEN M IF M M IF THEN O THEN O Legend: Problems to be solved The Next Four Problems Are Rule 12 Identified Step 8 If N Or O Then P T Rule 4 If K Then F Rule 5 T Step 7 Step 6 IF (F And H) Or J Then M T If M Then O Step 9 If G Then H T Rule 6 If I Then J Rule 9 T Rule 11 Legend: Problems to be solved Forward Versus Reverse Reasoning • Reverse reasoning is faster than forward reasoning • Reverse reasoning works best when – there are multiple goal variables – there are many rules – all or most rules do not have to be examined in the process of reaching a solution Handling Uncertainty • Two types of uncertainty – Rules – Conditions • Certainty factors (CFs) range from 0.00 to 1.00 Development Engine • Programming languages Lisp, Prolog, and recently C++ • Expert system shells Role of the Systems Analyst • Knowledge engineers work with the expert in designing expert systems • Beyond traditional analyst skills, the following skills are needed – understand how the expert applies his or her knowledge – be able to extract the description of the knowledge (rules as well as facts) System Development Process • • • • Initiate the development process Develop the expert system prototype User participation Expert system maintenance Prototyping Approach • A new player: the expert • Delayed user involvement • Need for maintenance Prototyping Is Incorporated in the Development of an Expert System Systems analyst step 1 Expert User Studythe the Study problem Problem domain domain step 2 Define the problem step 3 Specify the rule set step 4 Test the prototype system step 5 Construct the interface step 6 step 7 step 8 Maintain the system Conduct user tests Use the system Example: Financial Expert System • Credit approval • Knowledge base for the example consists of rules and a mathematical model • User interface • Five decision categories; credit amount influences weightings Expert System Advantages • To managers – Consider more alternatives – Apply high level of logic – Have more time to evaluate decision rules – Consistent logic • To the firm – Better performance from management team – Retain firm’s knowledge resource Expert System Disadvantages • Can’t handle inconsistent knowledge • Can’t apply judgment or intuition Neural Networks • Expert systems should be able to learn, and improve their performance • Neural net design -- a bottom-up approach to modeling human intuition The Human Brain • Neuron -- the information processor – Input -- dendrites – Processing -- soma – Output -- axon • Neurons are connected by the synapse Simple Biological Neurons Soma (processor) Axonal Paths (output) Synapse Axon Dendrites (input) Artificial Neural Systems (ANS) • McCulloch-Pitts mathematical neuron function (late 1930s) • Hebb’s learning law (early 1940s) • Neurocomputers – Marvin Minsky’s Snark (early 1950s) – Rosenblatt’s Perceptron (mid 1950s) Current Methodology • Mathematical models • Complex networks • Repetitious training -- the ANS “learns” by example. An ANS can learn; an expert system cannot. Single Artificial Neuron y1 w1 y2 w2 y3 w3 wn-1 yn-1 y OUT1 OUTn The Multi-Layer Perceptron Input Layer Y1 Yn2 OutputL ayer IN1 INn Prerequisite Activities for the EIS Information needs Information technology standards Analysis of organization Information systems plan Corporate data model Production and performance systems EIS Sampai Jumpa di Ujian Akhir dan Selamat Belajar