Ketika hendak membuat suatu
keputusan yang komplek atau memecahkan masalah, seringkali kita meminta nasehat
atau berkonsultasi dengan seorang pakar atau ahli. Seorang pakaradalah
seseorang yang mempunyai pengetahuan dan pengalaman spesifik dalam suatu
bidang; misalnya pakar komputer, pakar uji tak merusak, pakar politik dan
lain-lain. Semakin tidak terstruktur situasinya, semakin mengkhusus (dan mahal)
konsultasi yang dibutuhkan.
Sistem Pakar (Expert
System) adalah usaha untuk menirukan seorang pakar. Biasanya
Sistem Pakar berupa perangkat lunak pengambil keputusan yang mampu mencapai
tingkat performa yang sebanding seorang pakar dalam bidang problem yang khusus
dan sempit. Ide dasarnya adalah: kepakaran ditransfer dari seorang pakar (atau
sumber kepakaran yang lain) ke komputer, pengetahuan yang ada disimpan dalam
komputer, dan pengguna dapat berkonsultasi pada komputer itu untuk suatu
nasehat, lalu komputer dapat mengambil inferensi (menyimpulkan, mendeduksi,
dll.) seperti layaknya seorang pakar, kemudian menjelaskannya ke pengguna
tersebut, bila perlu dengan alasan-alasannya. Sistem Pakar malahan terkadang
lebih baik unjuk kerjanya daripada seorang pakar manusia!
Kepakaran (expertise)
adalah pengetahuan yang ekstensif (meluas) dan spesifik yang
diperoleh melalui rangkaian pelatihan, membaca, dan pengalaman. Pengetahuan
membuat pakar dapat mengambil keputusan secara lebih baik dan lebih cepat
daripada non-pakar dalam memecahkan problem yang kompleks. Kepakaran mempunyai
sifat berjenjang, pakar top memiliki pengetahuan lebih banyak daripada pakar
junior.
Tujuan Sistem Pakar adalah untuk
mentransfer kepakaran dari seorang pakar ke komputer, kemudian ke orang lain
(yang bukan pakar). Proses ini tercakup dalam rekayasa pengetahuan (knowledge
engineering) yang akan dibahas kemudian.
Manfaat dan Keterbatasan Sistem
Pakar
Manfaat Sistem Pakar
Mengapa Sistem Pakar menjadi sangat
populer? Hal ini disebabkan oleh sangat banyaknya kemampuan dan manfaat yang
diberikan oleh Sistem Pakar, di antaranya:
a. Meningkatkan
output dan produktivitas, karena Sistem Pakar dapat bekerja lebih cepat dari
manusia.
b. Meningkatkan
kualitas, dengan memberi nasehat yang konsisten dan mengurangi kesalahan.
c. Mampu
menangkap kepakaran yang sangat terbatas.
d. Dapat
beroperasi di lingkungan yang berbahaya.
e. Memudahkan
akses ke pengetahuan.
f. Handal. Sistem Pakar tidak pernah menjadi bosan dan kelelahan atau sakit.
Sistem Pakar juga secara konsisten melihat semua detil dan tidak akan
melewatkan informasi yang relevan dan solusi yang potensial.
g. Meningkatkan
kapabilitas sistem terkomputerisasi yang lain. Integrasi Sistem Pakar dengan
sistem komputer lain membuat lebih efektif, dan mencakup lebih banyak aplikasi
.
h. Mampu
bekerja dengan informasi yang tidak lengkap atau tidak pasti. Berbeda dengan
sistem komputer konvensional, Sistem Pakar dapat bekerja dengan inofrmasi yang
tidak lengkap. Pengguna dapat merespon dengan: “tidak tahu” atau “tidak yakin”
pada satu atau lebih pertanyaan selama konsultasi, dan Sistem Pakar tetap akan
memberikan jawabannya.
i. Mampu menyediakan pelatihan. Pengguna pemula yang bekerja dengan Sistem
Pakar akan menjadi lebih berpengalaman. Fasilitas penjelas dapat berfungsi
sebagai guru.
j. Meningkatkan
kemampuan problem solving, karena mengambil sumber pengetahuan dari banyak
pakar.
k. Meniadakan kebutuhan
perangkat yang mahal.
l. Fleksibel.
Keterbatasan Sistem Pakar
Metodologi Sistem Pakar yang ada
tidak selalu mudah, sederhana dan efektif. Berikut adalah keterbatasan yang
menghambat perkembangan Sistem Pakar:
a. Pengetahuan
yang hendak diambil tidak selalu tersedia.
b. Kepakaran
sangat sulit diekstrak dari manusia.
c. Pendekatan oleh setiap
pakar untuk suatu situasi atau problem bisa berbeda-beda, meskipun sama-sama
benar
d. Adalah
sangat sulit bagi seorang pakar untuk mengabstraksi atau menjelaskan langkah
mereka dalam menangani masalah
e. Pengguna
Sistem Pakar mempunyai batas kognitif alami, sehingga mungkin tidak bisa
memanfaatkan sistem secara maksimal.
f. Sistem
Pakar bekerja baik untuk suatu bidang yang sempit.
g. Banyak
pakar yang tidak mempunyai jalan untuk mencek apakah kesimpulan mereka benar
dan masuk akal.
h. Istilah
dan jargon yang dipakai oleh pakar dalam mengekspresikan fakta seringkali
terbatas dan tidak mudah dimengerti oleh orang lain.
i. Pengembangan
Sistem Pakar seringkali membutuhkan perekayasa pengetahuan (knowledge
engineer) yang langka dan mahal.
j. Kurangnya
rasa percaya pengguna menghalangi pemakaian Sistem Pakar.
k. Transfer
pengetahuan dapat bersifat subyektif dan bias.
Contoh Aplikasi Sistem Pakar
Aplikasi Sederhana: Sistem Pakar
Bengkel Mobil
Ini adalah contoh Sistem Pakar
sederhana, yang bertujuan untuk mencari apa yang salah sehingga mesin mobil
pelanggan yang tidak mau hidup, dengan memberikan gejala-gejala yang teramati.
Anggap Sistem Pakar kita memiliki aturan-aturan berikut:
1. JIKA
mesin_mendapatkan_bensin DAN starter_dapat_dihidupkan
MAKA ada_masalah_dengan_pengapian
2. JIKA
TIDAK BENAR starter_dapat_dihidupkan DAN TIDAK BENAR lampu_menyala
MAKA ada_masalah_dengan_aki
3. JIKA
TIDAK BENAR starter_dapat_dihidupkan DAN lampu_menyala
MAKA ada_masalah_dengan_starter
4. JIKA
ada_bensin_dalam_tangki_bahan_bakar MAKA mesin_mendapatkan_bensin
Terdapat 3 masalah yang mungkin,
yaitu:
ada_masalah_dengan_aki dan ada_masalah_dengan_starter.
Dengan sistem terarah-tujuan (goal-driven), kita hendak membuktikan
keberadaan setiap masalah tadi.
Pertama, Sistem Pakar berusaha untuk
membuktikan kebenaran ada_masalah_dengan_pengapian. Di sini, aturan 1
dapat digunakan, sehingga Sistem Pakar akan menset goal baru untuk
membuktikan apakah sertastarter_dapat_dihidupkan. Untuk membuktikannya,
aturan 4 dapat digunakan, dengan goal baru untuk membuktikan mesin_mendapatkan_bensin.
Karena tidak ada aturan lain yang dapat digunakan menyimpulkannya, sedangkan
sistem belum memperoleh solusinya, maka Sistem Pakar kemudian bertanya kepada
pelanggan: “Apakah ada bensin dalam tangki bahan bakar?”. Sekarang,
katakanlah jawaban klien adalah “Ya”, jawaban ini kemudian
dicatat, sehingga klien tidak akan ditanyai lagi dengan pertanyaan yang sama.
Nah, karena sistem sekarang sudah
dapat membuktikan bahwa mesin mendapatkan bensin, maka sistem sekarang berusaha
mengetahui apakah starter_dapat_dihidupkan. Karena sistem belum tahu
mengenai hal ini, sementara tidak ada aturan lagi yang dapat
menyimpulkannya, maka Sistem Pakar bertanya lagi ke klien: “Apakah starter
dapat dihidupkan?”. Misalkan jawabannya adalah “Tidak”, maka tidak
ada lagi aturan yang dapat membuktikanada_masalah_dengan_pengapian, sehingga
Sistem Pakar berkesimpulan bahwa hal ini bukanlah solusi dari problem yang ada,
dan kemudian melihat hipotesis berikutnya:ada_masalah_dengan_aki. Sudah
diketahui (dibuktikan) bahwa mesin tidak dapat distarter, sehingga yang harus
dibuktikan adalah bahwa lampu tidak menyala. Sistem Pakar kemudian bertanya: “Apakah
lampu menyala?”. Misalkan jawabannya adalah “Tidak”, maka sudah
terbukti bahwa ada masalah dengan aki.
Sistem ini mungkin berhenti sampai di
sini, tetapi biasanya ada kemungkinan terdapat lebih dari satu solusi (misalnya
terdapat lebih dari satu kerusakan), atau ada kemungkinan terdapat solusi lain
yng lebih tepat, sehingga biasanya semua hipotesis diperiksa kebenarannya.
Sistem Pakar ini kemudian mencoba membuktikan bahwa ada_masalah_dengan_starter,
namun dari fakta yang sudah diperoleh, yaitu lampu tidak menyala, maka
pembuktiannya menjadi gagal. Dengan demikian solusi yang diberikan oleh Sistem
Pakar adalah ada masalah dengan aki.
Secara lengkap, interaksi antara
Sistem Pakar dengan klien mungkin seperti ini:
System Pakar: Apakah
ada bensin dalam tangki bahan bakar?
Klien:
Ya
System Pakar: Apakah
starter dapat dihidupkan?
Klien:
Tidak
System Pakar: Apakah
lampu menyala?
Klien:
Tidak
System Pakar: Saya
berkesimpulan bahwa ada masalah dengan aki
Fasilitas Penjelasan
Kebanyakan Sistem Pakar mempunyai
fasilitas penjelasan yang mengijinkan klien untuk bertanya mengapa dia diberi
suatu pertanyaan atau bagaimana dapat mencapai suatu kesimpulan. Pertanyaan
dari klien tersebut dijawab dengan mengacu pada goal, aturan yang dipakai, dan
data-data yang ada. Contoh pemakaian fasilitas penjelas dalam Sistem Pakar di
atas dapat dilihat pada percakapan berikut:
System
Pakar: Apakah ada bensin dalam tangki bahan bakar?
Klien: Ya
System Pakar: Apakah
starter dapat dihidupkan?
Klien: Tidak
System Pakar: Apakah
lampu menyala?
Klien: Mengapa?
System Pakar: Saya
mencoba membuktikan bahwa ada masalah dengan aki.
Sudah ditunjukkan, tidak benar
starter dapat dihidupkan.
Sehingga jika tidak benar bahwa
lampu menyala, maka ada
masalah dengan aki.
Apakah lampu menyala?
Klien: Tidak
System Pakar: Saya
berkesimpulan bahwa ada masalah dengan aki
Klien: Bagaimana
bisa?
System Pakar: Hal ini
sesuai dengan aturan no 2:
JIKA TIDAK BENAR
starter_dapat_dihidupkan DAN TIDAK BENAR lampu_menyala MAKA ada_masalah_dengan_aki bahwa tidak benar
starter_dapat_dihidupkan sudah dijawab, bahwa tidak benar lampu_menyala sudah
dijawab, sehingga dapat disimpulkan bahwa
ada_masalah_dengan_aki.
Fasilitas penjelasan berhubungan
dengan pencatatan aturan apa saja yang digunakan untuk mengambil kesimpulan,
dan menggunakan catatan tersebut untuk menyusun penjelasan. Pembangkitan
penjelasan sederhana seperti contoh di atas bukanlah persoalan yang sulit,
namun pemahaman klien terhadap penjelasan tersebut tidaklah sama, sehingga
seringkali klien tetap tidak mengerti maksudnya. Hal ini karena biasanya
penjelasan hanya meliputi pengetahuan yang dangkal atau hanya permukaan saja
sebagaimana tercantum dalam autran yang dipunyai, bukannya pengetahuan yang
mendalam yang mendasari aturan tersebut. Dalam contoh di atas, Sistem Pakar
hanya mengatakan bahwa hal ini sesuai dengan aturan no 2, tetapi tidak
menjelaskan secara lebih detil mengenai aturan 2 tersebut. Mungkin klien perlu
diberi pengertian bahwa lampu dan starter dua-duanya menggunakan aki untuk menyalakannya.
Hal penting lain adalah ketika klien gagal mengerti atau menerima penjelasan
yang diberikan, biasanya Sistem Pakar tidak dapat memberi penjelasan dengan
cara lain (tidak begitu halnya dengan seorang pakar yang mampu menggunakan
kalimat yang lain untuk mencoba menjelaskannya).
Eliza
Eliza adalah salah satu Sistem Pakar
yang paling awal dikembangkan. Ini adalah program komputer terapis yang dibuat
oleh Joseph Weizenbaum di MIT. Pengguna berkomunikasi dengannya
sebagaimana sedang berkonsultasi dengan seorang terapis. Berikut ini adalah
contoh percakapan antara Eliza dengan seorang klien:
Eliza: Hello.
I am ELIZA. How can I help you?
Klien: My
name is Balza.
Eliza: I
have told you before, I do not care about names.
Klien: I
don’t have any money. That’s my problem.
Eliza: Why
do you say your problem?
Klien:
Because you asked me.
Eliza: Do
any other reasons not come to mind?
Klien: No.
Eliza: You
are being a bit negative.
Klien: Why?
Eliza: Please
go on.
Klien: OK. I
am bankrupt.
Eliza: How
long have you been bankrupt?
Klien: A
year.
Eliza: Please
go on.
Klien: So,
what should I do?
Eliza: Does
that question interest you?
Klien: Yes,
how can I make big money?
Eliza: You
are sure?
Klien: Of
course I’m sure.
...
Parry
Parry adalah Sistem Pakar yang juga
paling awal dikembangkan di Stanford University oleh seorang psikiater, Kenneth
Colby, yang mensimulasikan seorang paranoid. Berikut ini contoh respon Parry
terhadap pertanyaan seorang psikiater yang menginterviunya.
Psikiater:
Why are you in the hospital?
Parry: I
shouldn't be here.
Psikiater:
Who brought you here?
Parry: The
police.
Psikiater:
What trouble did you have with the police?
Parry: Cops
don't do their job.
Psikiater:
What do they do instead?
Parry: Cops
arrest the wrong people.
Psikiater:
They arrest the right ones sometimes
Parry: The
law should get those Italian crooks.
Psikiater:
Are you Italian?
Parry: My
background is British but I was born in this country.
Psikiater:
Do you know any Italian crooks?
Parry: I
try to avoid the underworld.
...
Sumber yang saya dapatkan berupa
e-book yang telah saya rangkum sedemikian rupa, jika ingin mengetahui sumber
tersebut, Anda dapat klik link yang saya berikan dibawah ini: