1
Apa yang dimaksud dengan Sistem Pakar
(Expert System)?
Sistem Pakar adalah sebuah program
komputer yang mencoba meniru atau mensimulasikan pengetahuan (knowledge) dan
ketrampilan (skill) dari seorang pakar pada area tertentu. Selanjutnya sistem ini
akan mencoba memecahkan suatu permasalahan sesuai dengan kepakarannya.
1.1
Pengantar Sistem Pakar
•
Sistem pakar merupakan salah satu aplikasi dari kecerdasan buatan
(artificial
intelligence).
•
AI sendiri berakar dari keinginan manusia untuk membuat sebuah
mesin
cerdas.
•
Dewasa ini sistem pakar telah diaplikasikan dalam banyak bidang,
misalnya:
industri manufaktur, pertanian, medis, militer de-es-be.
1.2
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).
1.3
Contoh Permasalahan
Contoh klasik
permasalahan dalam sistem pakar adalah masalah 2 ember air. "Diberikan 2
ember air yang berkapasitas 8 litter dan 6 liter.Kita dapat mengisi satu ember
dari ember lainnya dan proses penakaran 2
Pengantar Sistem Pakar
hanya dengan memakai 2
ember tersebut. Bagaimana kita bisa mendapatkan tepat 4 liter dalam ember 8
liter. Asumsikan tidak ada air yang hilang dalam proses penakaran". Langkah
penyelesaian:
1. Menentukan aksi-aksi
(problem space) yang bisa mengubah kondisi pada kedua ember dalam bentuk rule atau tree-diagram seperti dalam
Gambar 1.1 Contoh kemungkinan aksi-aksi:
(a) Isi ember 8 liter.
(b) Isi ember 6 liter.
(c) Kosongkan ember 8
liter.
(d) Kosongkan ember 6
liter.
(e) Isikan seluruh air
dalam ember 8 liter ke 6 liter.
(f) Isikan seluruh air
dalam ember 6 liter ke 8 liter.
(g) Penuhi ember 8
liter dari 6 liter.
(h) Penuhi ember 6
liter dari 8 liter.
2.
Menentukan urutan aksi untuk menghasilkan solusi, seperti:
(0,0) b→(0,6) f→ (6,0)
b→(6,6) g→ (8,4) c→(0,4) f→ (4,0)
Figure 1.1: Diagram
tree untuk "jug problem".
1.4
Sistem Berbasis Aturan
Sistem berbasis aturan
(rule-based system) adalah sebuah program yang menggunakan aturan IF-THEN.
Model ini berbeda dengan pemrograman konvensional, misalnya rule tidak harus
berada pada urutan tertentu.
Contoh dari sistem
berbasis aturan adalah sbb:
IF
Sabtu OR Minggu THEN Nonton bioskop
IF
NOT (Sabtu OR Minggu) THEN Bekerja
IF
Nonton bioskop THEN Pergi keluar
IF
Bekerja THEN Pergi keluar
IF
NOT ( Bisa pergi keluar) THEN Tiggal di rumah
IF
Cuaca baik THEN Bisa pergi keluar
IF
Hujan THEN Bawa Payung
IF
Hujan AND Bawa Payung THEN Bisa pergi keluar
1.5
Perbedaan Sistem Konvensional dan Sistem
Pakar:
Table 1.1: Perbandingan
Sistem Konvensional dan Sistem Pakar

1.6
Data, Informasi dan Pengetahuan (knowledge)
Note:
• Data merupakan hasil
pengukuran atau catatan (record) tentang sebuah kejadian (mis. suhu, waktu,
harga dsb). data dapat berupa angka, huruf, gambar, suara dsb.
• Informasi merupakan
hasil olahan dari data sedemikian rupa sehingga karakteristik dari data
tersebut dapat diuji, misalnya ratarata, varian, distribusi dsb.
• Pengetahuan merupakan
informasi yang diletakkan pada konteks/lingkungan tertentu, misalnya peta jawa,
distribusi minyak di Indonesia, dsb.
• Data, informasi dan
pengetahuaan dapat dikelompokkan ke dalam level abstraksi seperti ditunjukkan
dalam Gambar 1.2 di bawah ini:

Figure 1.2: Diagram
Data, Information dan Knowledge.
1.7
Struktur Sistem Pakar
• Secara umum struktur
sebuah sistem pakar terdiri atas 3 komponenutama, yaitu: knowledge base,
working memory, dan inferenceengine. Lihat Gambar 1.3.
.
Pengantar Sistem Pakar
• Knowledge base (basis
pengetahuan) adalah bagian dari sebuah sistempakar yang mengandung/menyimpan
pengetahuan (domainknowledge). Knowledge base yang dikandung oleh sebuah sistem
pakar berbeda antara satu dengan yang lain tergantung pada bidangkepakaran dari
sistem yang dibangun. Misalnya, medical expertsystem akan memiliki basis
pengetahuan tentang hal-hal yang berkaitandengan medis. Knowledge base direpresentasikan
dalam berbagaimacam bentuk, salah satunya adalah dalam bentuk sistemberbasis
aturan (ruled-based system).
• Working memory
mengandung/menyimpan fakta-fakta yang ditemukanselama proses konsultasi dengan
sistem pakar. Selama proses konsultasi, user memasukkan fakta-fakta yang
dibutuhkan. Kemudian sistem akan mencari padanan tentang fakta tersebut dengan informasi
yang ada dalam knowledge base untuk menghasilkan fakta baru. Sistem akan
memasukkan fakta baru ini ke dalam working memory. Jadi working memory
menyimpan informasi tentang fakta-fakta yang dimasukkan oleh user ataupun fakta
baru hasil kesimpulan dari sistem.
• Inference engine
bertugas mencari padanan antara fakta yang ada di dalam working memory dengan
fakta-fakta tentang domain knowledge tertentu yang ada di dalam knowledge base,
selanjutnya inference engine akan menarik/mengambil kesimpulan dari problem yang
diajukan kepada sistem.

1.8
Heuristic Searching Sebagai Dasar dari Artificial Intelligence (AI)
• Para peneliti awal
kecerdasan buatan menitik beratkan pada penyelesaian masalah yang tidak
menggunakan metoda komputasi konvensional. Hal ini disebabkan metoda pemecahan
masalah konvensional tidak dapat lagi
digunakan. Permasalahan pada sistem AI tidak memiliki algoritma tertentu.
Kalaupun ada tentulah sangat kompleks.
• Karena itu haruslah
ditemukan sebuah teknik baru yang mirip dengan cara yang digunakan oleh manusia
untuk menyelesaikan masalah dan dapat diimplementasikan pada komputer.
• Salah satu metoda
yang cukup terkenal adalah metoda searching.
• Searching dalam
sebuah struktur data telah menjadi dasar bagi algoritma komputer, tetapi proses
searching pada AI memiliki perbedaan. Metoda searching pada AI merupakan
searching terhadap problem space bukan searching data (e.g., angka, karakter,
string) tertentu. Proses searching ini berupa jalur yang menggambarkan keadaan
awal sebuah masalah menuju kepada penyelesaian masalah yang diinginkan (i.e.,
the solved problem). Jalur-jalur ini mengambarkanlangkah-langkah penyelesaian
masalah. Melalui proses searching menuju sebuah penyelesaian akan terbentuk
sebuah solution space.
• Perhatikan contoh
penyelesaian masalah komputer pada Gambar
1.4.
Langkah pertama untuk mengetahui apakah komputer dapat
digunakan atau tidak
adalah men-switch ON. Selanjutnya dengan melakukan inspeksi terhadap kondisi
lampu indikator kita dapat menentukan langkah berikutnya. Misalnya kondisi
lampu OFF. Dengan melakukan searching terhadap problem space kita akan tiba
pada sebuah penyelesaian masalah agar komputer dapat diaktifkan kembali.

1.8.1
Depth-first Search
Depth-first search
(DFS) adalah proses searching sistematis buta yang melakukan ekpansi sebuah
path (jalur) menuju penyelesaian masalah sebelum melakukan ekplorasi terhadap
path yang lain. Proses searching mengikuti sebuah path tunggal sampai menemukan
goal atau dead end.
Apabila proses
searching menemukan dead-end, DFS akan melakukan penelusuran balik ke node terakhir
untuk melihat apakah node tersebut memiliki path cabang yang belum
dieksplorasi. Apabila cabang ditemukan, DFS akan melakukan cabang tersebut.
Apabila sudah tidak ada lagi cabang yang dapat dieksplorasi, DFS akan kembali
ke node parent dan melakukan proses searching terhadap cabang yang belum
dieksplorasi dari node parent sampai menemukan penyelesaian masalah. Urutan
proses searching DFS ditunjukkan dalam Gambar 1.5 adalah: A, B, E, F, G, C, ...

1.8.2
Breadth-first Search
Breadth-first search
(BFS) melakukan proses searching pada semua node yang berada pada level atau
hirarki yang sama terlebih dahulu sebelum melanjutkan proses searching pada
node di level berikutnya. Urutan proses searching BFS ditunjukkan dalam Gambar
1.6 adalah: A,B,C,D,E,F,

1.8.3
Hill-Climbing Search
Metoda Hill-climbing
merupakan variasi dari depth-first search. Denganmetoda ini, eksplorasi
terhadap keputusan dilakukan dengan cara depth-first search dengan mencari path
yang bertujuan menurunkan cost untuk menuju kepada goal/keputusan. Sebagai
contoh kita mencari arah menuju Tugu Pahlawan, setiap kali sampai
dipersimpangan jalan kita berhenti dan mencari arah mana yang kira-kira akan
mengurangi jarak menuju Tugu Pahlawan. Dengan cara demikian sebetulnya kita
berasumsi bahwa secara umum arah tertentu semakin dekat ke Tugu Pahlawan.
1.8.4
Branch and Bound Search
Perhatikan Gambar 1.7
di bawah ini. Bagaimana menggunakan metodabranch and bound untuk mencari
terpendek dari kota Semarang menuju kota Probolinggo?

1.8.5
Best-First Search
Best-First Search
melakukan proses searching dengan cara memberikan estimasi berapa jauh node
asal dari solusi yang diinginkan. Dengan metoda ini, proses dilakukan dengan
melakukan ekspansi terhadap setiap node yang memiliki estimasi terpendek.


1.8.6
A∗ Search
A∗ Search merupakan
gabungan antara best-first dan branch and boundsearch. Misalkan kita memberikan
estimasi setiap node terhadap solusi yang diinginkan. Maka proses searching
untuk mencari jarak terpendek dilakukan dengan melakukan komputasi terhadap
total estimasi:

Perhatikan diagram
jaringan kota pada Gambar 1.7 yang sudah dilengkapi dengan estimasi setiap kota
menuju node tujuan (probilinggo) seperti ditunjukkan dalam tabel di bawah ini:

Tidak ada komentar:
Posting Komentar