Pengenalan Sistem Pakar
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
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
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.
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
Siapakah Pakar (Expert) ?
• Seorang pakar/ahli (human expert) adalah
seorang individu yang memiliki kemampuan
pemahaman yang superior dari suatu
masalah.
masalah.
– Contoh: seorang dokter, penasehat keuangan,
pakar mesin mobil, dll.
Kepakaran (Expertise)
• Pemahaman yang luas dari tugas atau
pengetahuan spesifik yang diperoleh dari
pelatihan, membaca dan pengalaman.
Kemampuan Kepakaran
• Dapat mengenali (recognizing) dan merumuskan
masalah
• Menyelesaikan masalah dengan cepat dan tepat
• Menjelaskan solusi
• Menjelaskan solusi
• Belajar dari pengalaman
• Restrukturisasi pengetahuan
• Menentukan relevansi/hubungan
• Memahami batas kemampuan
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
• Aturan (heuristik) yang harus dikerjakan pada situasi
yang terjadi
• Strategi global untuk menyelesaikan berbagai jenis
masalah
• Meta-knowledge (pengetahuan tentang
pengetahuan)
Komponen Utama Sistem Pakar
U
se
r I
n
te
rf
ac
e
Knowledge Base ExpertiseU
se
r I
n
te
rf
ac
e
Inference Engine Expertise Facts / InformationKomponen 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)
Domain Sistem Pakar
Problem Domain (Domain Masalah)
Knowledge Domain (Domain Pengetahuan)
Konsep Umum Sistem Pakar
• knowledge acquisition
– transfer knowledge dari manusia atau sumber lainnya ke komputer
• knowledge representation
– Penyimpanan dan pemrosesan pengetahuan dalam – Penyimpanan dan pemrosesan pengetahuan dalam
komputer
• inference
– Mekanisme pengambilan kesimpulan dari pengetahuan dalam komputer
• explanation
– Menjelaskan kepada user apa dan bagaimana solusi yang dihasilkan
Tahap Pengembangan Sistem
Pakar
• 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
Human Expert
Dialog
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.
Knowledge Engineer
Knowledge Base Of Expert System Explicit Knowledge
Pengembangan Teknologi
Sistem Pakar
• Sangat dipengaruhi oleh pengetahuan kognitif
dan matematika
– Cara manusia memecahkan masalah
– Dasar formal, terutama logika dan inferensi
– Dasar formal, terutama logika dan inferensi
• Aturan produksi sebagai mekanisme
representasi
– Tipe aturan IF … THEN
– Mirip dengan cara manusia memberi alasan
– Explanation facility
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 – input sensor atau berpikir memicu aktifasi dari
aturan-aturan
– 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)
Perkembangan Teknologi SP
• MYCIN
– Dirancang oleh Edward Feigenbaum (Universitas Stanford) th ’70 an SP medical yg dpt mendiagnosa infeksi bakteri &
rekomendasi pengobatan antibiotik
• DENDRAL • 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
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 – 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
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 • Diagnosis – menentukan sebab malfungsi dalam
situasi kompleks yang didsarkan pada gejala-gejala yang teramati
• Desain – menentukan konfigurasi
komponen-komponen sistem yang cocok dengan tujuan-tujuan kinerja tertentu yang memnuhi kendala - kendala tertentu
• Perencanaan – merencanakan serangkaian tindakan yang akan dapat mencapai sejumlah tujuan dengan
Kategori Problema SP
• Debugging dan Repair – menentukan dan
menginterpretasikan cara-cara untuk mengatasi malfungsi.
• Instruksi – mendeteksi dan mengoreksi defisiensi dalam pemahaman domain subyek
dalam pemahaman domain subyek
• Pengendalian – mengatur tingkah laku suatu environment yang kompleks
• Selection – mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan
• Simulation – pemodelan interaksi antara komponen-komponen sistem
Kunci Sukses Sistem Pakar
• Meyakinkan gagasan
– Aturan-aturan, model-model kognitif
• Aplikasi-aplikasi praktis
– Obat-obatan, teknologi komputer, … – Obat-obatan, teknologi komputer, …
• Pemisahan pengetahuan (knowledge) dan
kesimpulan (inference)
– expert system shell
• Memungkinkan penggunaan kembali ‘permesinan’ untuk domain yang berbeda
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
– Tantangan utama-nya adalah komputasi, bukan
knowledge
– knowledge tidak dapat diperoleh secara mudah
– user mungkin segan untuk menerapkan sistem
Tools Sistem Pakar
• languages
– higher-level languages didesain khusus untuk
merepresentasikan knowledge dan alasan
– PROLOG, LISP, CLIPS, SAIL, KRL, KQML
– PROLOG, LISP, CLIPS, SAIL, KRL, KQML
• shells
– Sebuah tools dengan tujuan khusus didesain
untuk tipe aplikasi tertentu dimana user hanya
men-suplai basis pengetahuan.
Elemen Sistem Pakar
Knowledge Base U se r Int er fa ce Knowledge Acquisition Facility Inference Engine Working Memory U se r Int er fa ce Facility Explanation Facility AgendaSistem 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 – 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
Contoh Aturan
IF … THEN
Rules
Rule: Red_Light
IF the light is red
THEN stop antecedent (left-hand-side) consequent (right-hand-side) THEN stop Rule: Green_Light
IF the light is green
THEN go
(right-hand-side)
Production Rules
the light is red ==> stop
antecedent (left-hand-side)
consequent
MYCIN Sample Rule
Human-Readable Format
IF the stain of the organism is gram negative AND the morphology of the organism is rod
AND the aerobiocity of the organism is gram anaerobic THEN the there is strongly suggestive evidence (0.8) THEN 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)
Inference Engine Cycle
• conflict resolution
– Memilih rule dengan prioritas tertinggi dari agenda
• execution
– Menjalankan aksi pada consequent dari rule yang terpilih – 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
Metode Aktifasi Rules
• Forward Chaining
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
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
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
antecedent of the hypothesis are satisfied
– often used in diagnostic and consultation
systems
Foundations of Expert Systems
Rule-Based Expert Systems
Knowledge Base Inference Engine Rules Pattern Matching Facts Rete Algorithm Markov Algorithm Post Production Rules Conflict Resolution Action Execution
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 – 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
Markov Algorithms
• in the 1950s, A. A. Markov introduced
priorities as a control structure for production
systems
– rules with higher priorities are applied first
– 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
ES Problems
• limited knowledge
– “shallow” knowledge
• no “deep” understanding of the concepts and their relationships
– no “common-sense” knowledge – 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
ES Problems
• mechanical reasoning
– may not have or select the most appropriate
method for a particular problem
– some “easy” problems are computationally very
– some “easy” problems are computationally very
expensive
• lack of trust
– users may not want to leave critical decisions to
machines
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 • 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
“common-sense”), can be difficult and expensive to develop, and users may not trust them for critical decisions
DATA = INFORMASI ?
Data: Nilai/value yang turut merepresentasikan deskripsi dari suatu objek atau kejadian (event)
DATA
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.
PENGOLAHAN
Pengetahuan (Knowledge)
• pengalaman, pelatihan
INFORMASI
PENGOLAHAN • pengalaman, pelatihan PENGOLAHAN
PENGETAHUAN
• Data + processing = information
Struktur Dasar SP
• Knowledge Base
• Working Memory
• Inference Engine
Knowledge Base
• Definisi : Bagian dari sistem pakar yang berisi
domain pengetahuan
• Berisi pengetahuan yang dibutuhkan untuk
memahami, merumuskan dan menyelesaikan
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.
Working Memory
Definisi : bagian dari sistem pakar yang berisi
fakta-fakta masalah yang ditemukan dalam
suatu sesi
suatu sesi
• Berisi fakta-fakta tentang suatu masalah yang
ditemukan dalam proses konsultasi
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
menarik
kesimpulan
dari
masalah
yang
dihadapi.
• Proses berpikir pada manusia dimodelkan
dalam sistem pakar pada modul yang disebut
Inference Engine.
Kelebihan Sistem Pakar
•
Availability
•
Intelligent tutor
•
Cost
•
Intelligent dB
•
Intelligent dB
•
Danger-reduced
•
Performance
•
Multiple expertise
•
Reliability
•
Explanation
•
Response-cepat
Struktur Detail SP
Terdiri atas 2 bagian :
• Development Environment (Lingkungan
Pengembangan)
• Consultation Environment (Lingkungan
• Consultation Environment (Lingkungan
Karakteristik Sistem Pakar
• High Performance
• Adequate response time
• Good reliability
• Good reliability
• Understanable
• Flexibility
Idenya :
• Sistem matematika & logika merupakan set
aturan sederhana untuk menentukan
bagaimana mengubah 1 string simbol ke dlm
Post Production Systems
bagaimana mengubah 1 string simbol ke dlm
simbol lainnya.
• Yaitu dengan input string, kejadian
sebelumnya
• 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.
Algoritma Markov
– (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
• Karakter tunggal a,b,c,……
• Mis AxB BxA artinya mengubah karakter A dan B
• Huruf Yunani α,β
• Contoh : Memindahkan huruf pertama string input
Algoritma Markov
• Contoh : Memindahkan huruf pertama string input
ke akhir
• Aturan 1. αxy yαx
•
2.
α ^
•
3. ^
α
Aturan Sukses atau Gagal String 1 G ABC Input ABC
Algoritma Markov
2 G ABC 3 S αABC 1 S BαAC 1 S BCαA 1 G BCαA• 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)
Algoritma Rete
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.