Pengenalan Sistem Pakar Sistem Pakar
1
Definisi Sistem Pakar • Durkin : – Suatu 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, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar
• Giarratano & Riley : – Suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar
• E. Feigenbaum : – Sebuah program komputer cerdas yang menggunakan pengetahuan dan prosedur inferensi untuk menyelesaikan masalah yang cukup sulit sehingga memerlukan kepakaran seseorang
2
Pengertian Sistem Pakar • Membuat S/W Expert Systems sebagai penasehat/konsultan pakar • Tidak untuk menggantikan kedudukan seorang pakar ttp u/ memasyarakatkan pengetahuan & pengalamaan pakar tsb. • Memungkinkan orang lain meningkatkan produktivitas, memperbaiki kualitas keputusan dll • Dapat mengumpulkan dan penyimpan pengetahuan seorang/beberapa orang pakar ke dalam komp. u/ semua orang yang memerlukan 3
4
5
6
Siapakah Pakar (Expert) ? • Seorang pakar/ahli (human expert) adalah seorang individu yang memiliki kemampuan pemahaman yang superior dari suatu masalah. – Contoh: seorang dokter, penasehat keuangan, pakar mesin mobil, dll.
7
Kepakaran (Expertise) • Pemahaman yang luas dari tugas atau pengetahuan spesifik yang diperoleh dari pelatihan, membaca dan pengalaman.
8
Kemampuan Kepakaran • Dapat mengenali (recognizing) dan merumuskan masalah • Menyelesaikan masalah dengan cepat dan tepat • Menjelaskan solusi • Belajar dari pengalaman • Restrukturisasi pengetahuan • Menentukan relevansi/hubungan • Memahami batas kemampuan
9
Bentuk Pengetahuan dalam Kepakaran • Fakta-fakta • Teori-teori dari permasalahan • Aturan dan prosedur yang mengacu pada area permasalahan • Aturan (heuristik) yang harus dikerjakan pada situasi yang terjadi • Strategi global untuk menyelesaikan berbagai jenis masalah • Meta-knowledge (pengetahuan tentang pengetahuan)
10
Komponen Utama Sistem Pakar Expertise
User Interface
Facts / Information
Knowledge Base
Inference Engine
Expertise 11
Komponen Utama Sistem Pakar • Knowledge base (Basis Pengetahuan) – berisi semua fakta, ide, hubungan, aturan dari suatu domain permasalahan
• Inference Engine (Motor inferensi ) – bertugas untuk menganalisis pengetahuan dan menarik kesimpulan berdasarkan knowledge base dan aturan.
• User Interface – Interaksi dengan user – Membangun dan memelihara basis pengetahuan (knowledge base) 12
Domain Sistem Pakar
Problem Domain (Domain Masalah)
Knowledge Domain (Domain Pengetahuan)
13
Konsep Umum Sistem Pakar • knowledge acquisition – transfer knowledge dari manusia atau sumber lainnya ke komputer
• knowledge representation – Penyimpanan dan pemrosesan pengetahuan dalam komputer
• inference – Mekanisme pengambilan kesimpulan dari pengetahuan dalam komputer
• explanation – Menjelaskan kepada user apa dan bagaimana solusi yang dihasilkan 14
Tahap Pengembangan Sistem Pakar Human Expert
Dialog Knowledge Engineer Explicit Knowledge Knowledge Base Of Expert System
• Proses pembuatan SP knowledge engineering yg dilakukan oleh knowledge engineer. Selain itu domain expert dan end user. • Tugas knowledge engineer adalah memilih S/W & H/W u/ pembuatan SP, membantu mengambil pengetahuan yg dibutuhkan dari pakar domain, serta implementasi pengetahuan pada basis pengetahuan yg benar & efisien • Tugas pakar domain : menyediakan pengetahuan ttg bid problem yg dihadapi, memahami teknik-teknik pemecahan problema yg dipakai. 15
Pengembangan Teknologi Sistem Pakar • Sangat dipengaruhi oleh pengetahuan kognitif dan matematika – Cara manusia memecahkan masalah – Dasar formal, terutama logika dan inferensi
• Aturan produksi sebagai mekanisme representasi – Tipe aturan IF … THEN – Mirip dengan cara manusia memberi alasan – Explanation facility 16
Rules and Humans • Rules dapat digunakan untuk memformulasikan teori human information processing (Newell & Simon) – rules disimpan dalam memori jangka panjang – pengetahuan sementara diletakkan di memori jangka pendek – input sensor atau berpikir memicu aktifasi dari aturanaturan – aturan yang telah diaktifkan mungkin memicu aktifasi berikutnya – pengolah kognitif mengkombinasikan bukti-bukti dari aturan-aturan yang sedang diaktifkan • Model ini adalah dasar dari desain sistem berbasis aturan (rule-based systems) – disebut juga production systems 17
Perkembangan Teknologi SP • MYCIN – Dirancang oleh Edward Feigenbaum (Universitas Stanford) th ’70 an SP medical yg dpt mendiagnosa infeksi bakteri & rekomendasi pengobatan antibiotik
• DENDRAL – - SP struktur molekular & kimia
• PROSPECTOR – Membantu ahli geologi yg mencari & menemukan biji deposit (mineral& batu-batuan). Didesign oleh Sheffield Research Institute, akhir ‘70an
• XCON (R1) – SP konfigurasi sistem komputer dasar. Dikembangkan oleh Digital Equipment Corporation (DEC) dan Carnegie Mellon Universitas (CMU), akhir ’70 an.Untuk sistem komputer DEC 18 VAC 11 1780
Perkembangan Teknologi SP • DELTA – Didesign & dikembangkan oleh General Electric Company – SP personal maintenance dg mesin lokomotif listrik diesel.
• YESMVS – Didesign oleh IBM awal th ‘80an – Membantu operator komputer & mengontrol sistem operasi MVS (multiple virtual storage)
• ACE – Didesign & dikembangkan oleh AT&T Bell Lab awal th ‘80an – SP troubleshooting pd sistem kabel telpon
19
Kategori Problema SP • Interpretasi – membuat kesimpulan atau deskripsi dari sekumpulan data mentah. • Prediksi – memproyeksikan akibat-akibat yang dimungkinkan dari situasi-situasi tertentu • Diagnosis – menentukan sebab malfungsi dalam situasi kompleks yang didsarkan pada gejala-gejala yang teramati • Desain – menentukan konfigurasi komponenkomponen sistem yang cocok dengan tujuan-tujuan kinerja tertentu yang memnuhi kendala - kendala tertentu • Perencanaan – merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan kondisi awal tertentu
20
Kategori Problema SP • Debugging dan Repair – menentukan dan menginterpretasikan cara-cara untuk mengatasi malfungsi. • Instruksi – mendeteksi dan mengoreksi defisiensi dalam pemahaman domain subyek • Pengendalian – mengatur tingkah laku suatu environment yang kompleks • Selection – mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan • Simulation – pemodelan interaksi antara komponenkomponen sistem • Monitoring – membandingkan hasil pengamatan dengan kondisi yang diharapkan
21
Kunci Sukses Sistem Pakar • Meyakinkan gagasan – Aturan-aturan, model-model kognitif
• Aplikasi-aplikasi praktis – Obat-obatan, teknologi komputer, …
• Pemisahan pengetahuan (knowledge) dan kesimpulan (inference) – expert system shell • Memungkinkan penggunaan kembali ‘permesinan’ untuk domain yang berbeda
• Konsentrasi pada domain pengetahuan 22
Kapan Menggunakan SP • Sistem pakar tidak dapat diterapkan untuk semua tipe domain dan tugas – Algoritma konvensional diketahui dan efisien – Tantangan utama-nya adalah komputasi, bukan knowledge – knowledge tidak dapat diperoleh secara mudah – user mungkin segan untuk menerapkan sistem pakar untuk tugas-tugas kritis
23
Aplikasi Sistem Pakar
24
25
Tools Sistem Pakar • languages – higher-level languages didesain khusus untuk merepresentasikan knowledge dan alasan – PROLOG, LISP, CLIPS, SAIL, KRL, KQML
• shells – Sebuah tools dengan tujuan khusus didesain untuk tipe aplikasi tertentu dimana user hanya men-suplai basis pengetahuan.
26
User Interface
Elemen Sistem Pakar
Knowledge Acquisition Facility
Knowledge Base
Inference Engine Agenda Explanation Facility Working Memory 27
Sistem Pakar Berbasis Aturan (Rules) • Pengetahuan dikodekan menjadi aturan IF … THEN • Motor inferensi menentukan mana aturan yang terpenuhi lebih dahulu – sisi kiri harus cocok dengan fakta di dalam memori kerja
• Aturan yang terpenuhi ditempatkan pada agenda • Aturan pada agenda dapat diaktifasi – aturan yang teraktifasi mungkin menghasilkan fakta-fakta baru melalui sisi kanan – pengaktifan satu aturan bisa menyebabkan pengaktifan aturan yang lain 28
Contoh Aturan IF … THEN Rules Rule: Red_Light IF the light is red THEN stop Rule: Green_Light IF the light is green THEN go
antecedent (left-hand-side) consequent (right-hand-side)
antecedent (left-hand-side)
Production Rules the light is red ==> stop the light is green ==> go
consequent (right-hand-side) 29
MYCIN Sample Rule Human-Readable Format IF AND AND THEN
the stain of the organism is gram negative the morphology of the organism is rod the aerobiocity of the organism is gram anaerobic the there is strongly suggestive evidence (0.8) that the class of the organism is enterobacteriaceae
MYCIN Format IF
(AND (SAME CNTEXT GRAM GRAMNEG) (SAME CNTEXT MORPH ROD) (SAME CNTEXT AIR AEROBIC) THEN (CONCLUDE CNTEXT CLASS ENTEROBACTERIACEAE [Durkin 94, p. 133] TALLY .8) 30
Inference Engine Cycle • conflict resolution – Memilih rule dengan prioritas tertinggi dari agenda
• execution – Menjalankan aksi pada consequent dari rule yang terpilih – remove the rule from the agenda
• match – update the agenda • Menambah rules yang antecedents-nya sesuai dengan agenda • remove rules with non-satisfied agendas Siklus berhenti ketika tidak ada rules pada agenda atau ketika perintah berhenti ditemukan
31
Metode Aktifasi Rules • Forward Chaining • Backward Chaining
32
Forward Chaining • forward chaining (data-driven) – reasoning from facts to the conclusion – as soon as facts are available, they are used to match antecedents of rules – a rule can be activated if all parts of the antecedent are satisfied – often used for real-time expert systems in monitoring and control – examples: CLIPS, OPS5 33
Backward Chaining • backward chaining (query-driven) – starting from a hypothesis (query), supporting rules and facts are sought until all parts of the antecedent of the hypothesis are satisfied – often used in diagnostic and consultation systems – examples: EMYCIN
34
Foundations of Expert Systems Rule-Based Expert Systems Inference Engine Pattern Matching Rete Algorithm
Knowledge Base Conflict Resolution
Action Execution
Facts
Rules Post Production Rules
Markov Algorithm 35
Post Production Systems • Production rules (aturan produksi) digunakan oleh logikawan Emil L. Post pada awal tahun 40-an dalam logika simbolik • Hasil teori Post – any system in mathematics or logic can be written as a production system
• Prinsip dasar production rules – seperangkat aturan mengatur konversi dari satu set string menjadi set string yang lain • • • •
aturan ini juga dikenal sebagai aturan penulisan ulang simple syntactic string manipulation no understanding or interpretation is required also used to define grammars of languages – e.g. BNF grammars of programming languages 36
Markov Algorithms • in the 1950s, A. A. Markov introduced priorities as a control structure for production systems – rules with higher priorities are applied first – allows more efficient execution of production systems – but still not efficient enough for expert systems with large sets of rules
37
ES Problems • limited knowledge – “shallow” knowledge • no “deep” understanding of the concepts and their relationships – no “common-sense” knowledge – no knowledge from possibly relevant related domains – “closed world” • the ES knows only what it has been explicitly “told” • it doesn’t know what it doesn’t know
38
ES Problems • mechanical reasoning – may not have or select the most appropriate method for a particular problem – some “easy” problems are computationally very expensive
• lack of trust – users may not want to leave critical decisions to machines
39
Summary • expert systems or knowledge based systems are used to represent and process in a format that is suitable for computers but still understandable by humans – If-Then rules are a popular format
• the main components of an expert system are – knowledge base – inference engine
• ES can be cheaper, faster, more accessible, and more reliable than humans • ES have limited knowledge (especially “commonsense”), can be difficult and expensive to develop, and users may not trust them for critical decisions 40
DATA = INFORMASI ? DATA
PENGOLAHAN
INFORMASI
Data: Nilai/value yang turut merepresentasikan deskripsi dari suatu objek atau kejadian (event)
Informasi merupakan hasil dari pengolahan data dalam suatu bentuk yang lebih berguna dan lebih berarti bagi penerimanya, yang menggambarkan suatu kejadian-kejadian (event) yang nyata (fact) yang digunakan untuk pengambilan keputusan. 41
Pengetahuan (Knowledge) INFORMASI
PENGOLAHAN
•
pengalaman, pelatihan
PENGETAHUAN • Data + processing = information • Information + processing (pengalaman, training, dll) = knowledge 42
Struktur Dasar SP
• Knowledge Base • Working Memory • Inference Engine 43
Knowledge Base • Definisi : Bagian dari sistem pakar yang berisi domain pengetahuan • Berisi pengetahuan yang dibutuhkan untuk memahami, merumuskan dan menyelesaikan masalah. Terdiri dari 2 elemen dasar: • Fakta, situasi masalah dan teori yang terkait • Heuristik khusus atau rules, yang langsung menggunakan pengetahuan untuk menyelesaikan masalah khusus. 44
Working Memory Definisi : bagian dari sistem pakar yang berisi fakta-fakta masalah yang ditemukan dalam suatu sesi • Berisi fakta-fakta tentang suatu masalah yang ditemukan dalam proses konsultasi
45
Inference Engine Definisi : Processor pada sistem pakar yang mencocokan fakta-fakta yang ada pada working memori dengan domain pengetahuan yang terdapat pada knowledge base, untuk menarik kesimpulan dari masalah yang dihadapi. • Proses berpikir pada manusia dimodelkan dalam sistem pakar pada modul yang disebut Inference Engine. 46
Kelebihan Sistem Pakar • • • • • • • • • • •
Availability Intelligent tutor Cost Intelligent dB Danger-reduced Performance Multiple expertise Reliability Explanation Response-cepat Steady, unemotional and complete response47
Struktur Detail SP Terdiri atas 2 bagian : • Development Environment (Lingkungan Pengembangan) • Consultation Environment (Lingkungan Konsultasi)
48
Karakteristik Sistem Pakar • • • • •
High Performance Adequate response time Good reliability Understanable Flexibility
49
Post Production Systems Idenya : • Sistem matematika & logika merupakan set aturan sederhana untuk menentukan bagaimana mengubah 1 string simbol ke dlm simbol lainnya. • Yaitu dengan input string, kejadian sebelumnya
50
Algoritma Markov • Merupakan kelompok produksi yg terorder yang diterapkan untuk prioritas ke input string. • Algoritma akan berakhir dg baik jika: – (1). Produksi terakhir tidak dapat diterapkan pada string – (2). Suatu produksi yg berakhir dg periode diterapkan.
• Jika input string GABKAB Sistem produksi AB HIJ Maka hasil akhir GHIJKHIJ
• Karakter ^ string nol • Mis A ^ artinya menghilangkan seluruh kejadian karakter A dlm suatu string 51
Algoritma Markov • • • • • • • •
Karakter tunggal a,b,c,…… Mis AxB BxA artinya mengubah karakter A dan B Huruf Yunani α,β Contoh : Memindahkan huruf pertama string input ke akhir Aturan 1. αxy yαx 2. α ^ 3. ^ α Input ABC 52
Algoritma Markov Input ABC Aturan
Sukses atau Gagal
String
1
G
ABC
2
G
ABC
3
S
αABC
1
S
BαAC
1
S
BCαA
1
G
BCαA
2
S
BCA
53
Algoritma Rete • Pada algoritma Markov diterapkan aturan/baris prioritas lebih tinggi. • Masalah timbul jika system mempunyai aturan/baris yang banyak, maka tidak akan efisien. • Solusinya adalah algoritma Rete yang dikembangkan oleh Charles L.F di Carnegie-Mellon University (1979) • Yaitu algoritma yg mengetahui tentang seluruh aturan/baris seluruh sistem dan dapat menerapkan suatu baris tanpa harus mencoba setiap baris tanpa berangkai (mencari perubahan dalam gabungan setiap cycle) • Merupakan gabungan pola yang sangat cepat, yang mendapatkan kecepatannya dengan menyimpan informasi tentang baris dalam jaringan. 54
Referensi • • • • •
Artifial Intelligent, George F.Luger Artificial Intelligent, Sandi Setiawan Artificial Intelligent, Elaine Rich, Kevin Knight Expert System, Giarrantino/ Rilley Peng.Sistem Pakar, Gunadarma
55