Sistem Pakar Struktur Sistem Pakar Kelas A & B Jonh Fredrik Ulysses jonh.fredrik.u@gmail.com
Definisi Sistem pakar adalah suatu program komputer yang dirancang untuk mengambil keputusan seperti keputusan yang diambil oleh seorang atau beberapa orang pakar. Menurut Marimin (1992), sistem pakar adalah sistem perangkat lunak komputer yang menggunakan ilmu, fakta, dan teknik berpikir dalam pengambilan keputusan untuk menyelesaikan masalah-masalah yang biasanya hanya dapat diselesaikan oleh tenaga ahli dalam bidang yang bersangkutan.
Dalam penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan kesimpulan (inference rules) dengan basis pengetahuan tertentu yang diberikan oleh satu atau lebih pakar dalam bidang tertentu. Kombinasi dari kedua hal tersebut disimpan dalam komputer, yang selanjutnya digunakan dalam proses pengambilan keputusan untuk penyelesaian masalah tertentu.
BAGAN SISTEM PAKAR Lingkungan Konsultasi Lingkungan Pengembangan pemakai Fakta tentang kejadian tertentu Basis Pengetahuan : Fakta dan Aturan Antarmuka Fasilitas Penjelasan Perekayasa pengetahuan Aksi yang direkomendasi Mesin Inferensi pakar Penambahan Pengetahuan Workspace Perbaikan
Components of Expert Systems The Expert System Expert Advice User Interface Programs Inference Engine Program Knowledge Base User Workstation Expert System Development Knowledge Acquisition Program Knowledge Engineering Workstation Expert and/or Knowledge Engineer
BAGAN SISTEM PAKAR Menurut Turban(1995), sistem pakar terdiri dari dua bagian pokok, yaitu: Lingkungan pengembangan (development environment) digunakan sebagai pembangun sistem pakar baik dari segi pembangun komponen maupun basis pengetahuan Lingkungan konsultasi (consultation environment) digunakan oleh seseorang yang bukan ahli untuk berkonsultasi.
KOMPONEN SISTEM PAKAR 1. Subsistem penambahan pengetahuan Bagian ini digunakan untuk memasukkan pengetahuan, mengkonstruksi atau memperluas pengetahuan dalam basis pengetahuan. Pengetahuan itu bisa berasal dari: ahli, buku, basisdata, penelitian, dan gambar
KOMPONEN SISTEM PAKAR 2. Basis pengetahuan Berisi pengetahuan-pengetahuan yang dibutuhkan untuk memahami, memformulasikan dan menyelesaikan masalah Basis pengetahuan tersusun atas fakta dan kaidah. Fakta adalah informasi tentang objek, peristiwa, atau situasi. Kaidah adalah cara untuk membangkitkan suatu fakta baru dari fakta yang sudah diketahui.
Menurut Gondran (1986) dalam Utami (2002), basis pengetahuan merupakan representasi dari seorang pakar, yang kemudian dapat dimasukkan kedalam bahasa pemrograman khusus untuk kecerdasan buatan (misalnya PROLOG atau LISP) atau shell sistem pakar (misalnya EXSYS, PC-PLUS, CRYSTAL, dsb.)
Penyampaian Basis Pengetahuan Restoran Sederhana Skrip restoran Jenis : restoran cepat saji Peran : Pelanggan (C) Pelayan (S) Kelengkapan : Kasa Nampan Makanan Uang Tisu Garam/mrica/kecap/sedotan Kondisi masuk : Pelanggan dalam keadaan lapar Pelanggan mempunyai uang
KOMPONEN SISTEM PAKAR 3. Motor Inferensi (inference engine) Program yang berisi metodologi yang digunakan untuk melakukan penalaran terhadap informasi-informasi dalam basis pengetahuan, serta digunakan untuk memformulasikan konklusi Ada 3 elemen utama dalam motor inferensi, yaitu: Interpreter: mengeksekusi item-item agenda yang terpilih dengan menggunakan aturan-aturan dalam basis pengetahuan yang sesuai Scheduler: akan mengontrol agenda Consistency enforcer: akan berusaha memelihara kekonsistenan dalam merepresentasikan solusi yang bersifat darurat
Dalam prosesnya, mesin/motor inferensi menggunakan: Strategi penalaran Strategi penalaran pasti (Exact Reasoning) Dilakukan jika semua data yang dibutuhkan untuk menarik suatu kesimpulan tersedia. Strategi penalaran tak pasti (Inexact Reasoning) Dilakukan jika semua data yang dibutuhkan untuk menarik suatu kesimpulan tidak tersedia.
Strategi pengendalian. Berfungsi sebagai panduan arah dalam melakukan prose penalaran. Terdapat tiga tehnik pengendalian yang sering digunakan, yaitu: Forward chaining Backward chaining Gabungan kedua teknik
Pelacakan ke belakang (backward chaining) Goal Driven Observasi A Observasi B Aturan R1 Aturan R2 Fakta C Fakta D Aturan R3 Aturan R2 Tujuan 1 (Kesimpulan) Pelacakan ke depan (forward chaining) Data Driven Observasi A Observasi B Aturan R1 Aturan R2 Fakta C Fakta D Aturan R3 Kesimpulan 1 Kesimpulan 2 Fakta E Aturan R2
KOMPONEN SISTEM PAKAR 4. Workspace Merupakan area dalam memori yang digunakan untuk merekam kejadian yang sedang berlangsung termasuk keputusan sementara Ada 3 tipe keputusan yang dapat direkam yaitu: Rencana: bagaimana menghadapi masalah Agenda: aksi-aksi yang potensial yang sedang menunggu untuk dieksekusi Solusi: calon aksi yang akan dibangkitkan
KOMPONEN SISTEM PAKAR 5. Antarmuka (interface) Merupakan batasan antara dua entitas, berfungsi sebagai penengah untuk media komunikasi antara user dan program Contoh antarmuka untuk pengguna: GUI graphical user interface WUI web-based user interface
GUI
WUI
KOMPONEN SISTEM PAKAR 6. Subsistem penjelasan Digunakan untuk melacak respon dan memberikan penjelasan tentang kelakukan sistem pakar secara interaktif melalui pertanyaan: Mengapa suatu pertanyaan ditanyakan oleh sistem pakar? Bagaimana konklusi dicapai? Mengapa ada alternatif yang dibatalkan? Rencana apa yang digunakan untuk mendapatkan solusi?
KOMPONEN SISTEM PAKAR 7. Perbaikan Sistem ini digunakan untuk mengevaluasi kinerja sistem pakar itu sendiri untuk melihat apakah pengetahuan-pengetahuan yang ada masih cocok untuk digunakan di masa mendatang.
ANALISIS/EVALUASI PENGETAHUAN Digunakan untuk mengevaluasi kinerja Sistem Pakar Melakukan update terhadap knowledge-base dan mesin inferensi
ELEMEN MANUSIA PADA SISTEM PAKAR Pakar (expert) Pembangun pengetahuan (knowledge engineer) Pembangun sistem (system engineer) Pengguna (user)
PAKAR Dapat mengenali dan merumuskan masalah Menyelesaikan masalah dengan cermat dan tepat Menjelaskan solusi dari suatu masalah Restrukturisasi pengetahuan Belajar dari pengalaman Memahami batas kemampuan
PEMBANGUN PENGETAHUAN Menterjemahkan dan merepresentasikan pengetahuan yang diperoleh dari pakar maupun sumber terdokumentasi lainnya ke dalam bentuk yang bisa diterima oleh sistem pakar
PEMBANGUN SISTEM Bertugas merancang antarmuka pengguna sistem pakar Merancang pengetahuan yang sudah diterjemahkan oleh pembangun pengetahuan ke dalam bentuk yang sesuai dan dapat diterima oleh sistem pakar serta mengimplementasikan ke dalam mesin inferensi
PENGGUNA Klien bukan pakar, untuk mencari saran/nasehat Mahasiswa, untuk belajar Pembangun sistem, untuk memperbaiki/menambah basis pengetahuan Pakar, membantu analisis rutin/proses komputasi
Bagan Struktur Sistem Pakar
Inference Engine System Interface External Program Working Memory Explanation Facility Knowledge Base User Interface Developper Interface User Knowledge Engineer
Antarmuka Merupakan batasan antara dua entitas, berfungsi sebagai penengah Beberapa tipe antarmuka untuk pengguna: GUI Graphical User Interface WUI Web-based User Interface
Antarmuka Beberapa tipe yang menarik untuk dikembangkan Attentive User Interface Sistem Pakar yg memonitor kondisi dan merespon kondisi dalam parameter tertentu Live User Interface mengandalkan interaksi manusia, memanfaatkan gambar, teks dan video Zooming User Interface pengguna mengubah skala tampilan menjadi lebih besar atau kecil Jauh ke depan - hologram
Blackboard Metafora Blackboard merupakan sebuah area kerja memori tempat pendeskripsian masalah yang diberikan oleh data input, juga dapat digunakan untuk menyimpan intermediate results Beberapa sifat Blackboard Independensi pakar Keberagaman teknik solusi Fleksibilitas Penggunaan bahasa yg sama Komponen dari sebuah sistem Blackboard : Knowledge source Blackboard Control shell Contoh implementasi Open BlackBoard System (http://openbbs.sourceforge.net/)
Bagian Penjelasan Bagian ini berfungsi memberi penjelasan atas pertanyaan yang diajukan beserta aturan yang berkaitan Contoh :
Analisis/Evaluasi Pengetahuan Digunakan untuk mengevaluasi kinerja Sistem Pakar Melakukan update terhadap knowledge base dan motor inferensi
Faktor-faktor yang mempengaruhi keberhasilan 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
Kelemahan Sistem Pakar Sistem pakar memiliki beberapa kelemahan,antara lain: Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal. Sulit dikembangkan. Hal ini tentu saja erat kaitannya dengan ketersediaan pakar di bidangnya. Sistem Pakar tidak 100% bernilai benar.
Alasan Pengembangan Sistem Pakar Sistem pakar sendiri dikembangkan lebih lanjut dengan alasan : Dapat menyediakan kepakaran setiap waktu dan di berbagai lokasi. Secara otomatis mengerjakan tugas-tugas rutin yang membutuhkan seorang pakar. Seorang pakar akan pensiun atau pergi. Seorang pakar adalah mahal. Kepakaran dibutuhkan juga pada lingkungan yang tidak bersahabat.
Latihan Bersama Buatlah basis pengetahuan sederhana yang dapat di representasikan dengan skrip yang berisi informasi tentang objek, peristiwa, atau situasi/kondisi, masalah, tindakan untuk kasus: Mahasiswa berangkat kuliah di pagi hari Mahasiswa mengisi KRS