Anda di halaman 1dari 25

Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia

1
SISTEM PAKAR
1. Pendahuluan
Artificial intelligence (kecerdasan buatan) pada dasarnya bertujuan untuk
membuat computer melaksanakan suatu perintah yang dapat dilakukan oleh
manusia. Subdisiplin ilmu dalam kecerdasan buatan adalah expert system
(sistem pakar), natural language processing (pengolahan bahasa alami),
speech recognition (pengenalan ucapan), robotics and sensory systems
(robotika dan sistem sensor), computer vision, intelegent computer-aided
instruction, dan game playing. Sistem pakar merupakan cabang dari
kecerdasan buatan yang cukup tua karena sistem ini dimulai dikembangkan
pada pertengahan 1960. Sistem pakar yang muncul pertama kali adalah
general-purpose problem solver (GPS) yang dikembangkan oleh Newel dan
Simon. Berikut ini adalah beberapa contoh sistem pakar:
Sistem Pakar Kegunaan
MYCIN
Dirancang oleh Edward Feigenbaum
(Universitas Stanford) tahun 1970-an
Diagnosa Penyakit
DENDRAL Mengidentifikasi struktur molecular
campuran yang tidak dikenal
XCON & XSEL
Dikembangkan oleh DEC dan CMU di
akhir tahun 1970-an
Membantu konfigurasi system
computer besar
SOPHIE Analisis sirkuit elektronik
PROSPECTOR
Didesign oleh Sheffield Research
Institute di akhir 1970-an
Digunakan di dalam geologi untuk
membantu mencari dan menemukan
deposit
FOLIO Membantu memberikan keputusan
bagi seorang manajer dalam hal
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
2
stok broker dan investasi
DELTA Pemeliharaan lokomotif listrik
diesel
2. Pengertian Sistem Pakar
Sistem pakar atau Expert System istilah sistem pakar berasal dari
knowledge-based Expert system.istilah ini muncul karena untuk memecahkan
suatu masalah, sistem pakar menggunakan pengetahuan seorang pakar yang
dimasukan ke dalam suatu program di komputer. Seseorang yang bukan pakar
dapat menggunakan sistem pakar untuk memecahkan suatu masalah seperti
seorang pakar, sedangkan seorang pakar menggunakan sistem pakar untuk
knowledge assistant. Berikut ini beberapa pengertian sistem pakar:
1.1. Turban (2001: 402)
Sistem pakar adalah sebuah sistem yang menggunakan pengetahuan
manusia dimana pengetahuan tersebut dimasukkan ke dalam sebuah
computer dan kemudian digunakan untuk menyelesaikan masalah-
masalah yang biasanya kepakaran atau keahlian manusia.
1.2. Jacson (1999: 3)
Sistem pakar adalah program computer yang merepresentasikan dan
melakukan penalaran dengan pengetahuan beberapa pakar untuk
menyelesaikan masalah atau memberikan saran.
1.3. Luger dan Stubblefield (1993: 308)
Sistem pakar adalah program yang berbasiskan pengetahuan yang
menyediakan solusi kualitas pakar kepada masalah-masalah dalam
bidang (domain) yang spesifik.
Sistem pakar adalah suatu sistem yang dirancang untuk dapat menirukan
keahlian seorang pakar dalam menjawab pertanyaan atau memecahkan suatu
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
3
masalah. Sistem pakar akan memberikan pemecahan suatu masalah yang
didapat dari dialog dengan user (pengguna). Dengan bantuan sistem pakar,
maka seseorang yang bukan pakar dapat menjawab pertanyaan,
menyelesaikan masalah, dan mengambil keputusan seperti yang biasa
dilakukan oleh seorang pakar.
3. Manfaat Sistem Pakar
Sistem pakar menjadi sangat popular karena memiliki banyak kemampuan
dan manfaat bagi masyarakat awam, pengguna, ataupun seorang nonpakar,
diantaranya:
3.1 Memungkinkan orang awambisa mengerjakan pekerjaan para pakar
3.2 Melakukan proses secara berulang secara otomatis
3.3 Menyimpan pengetahuan dan keahlian para pakar
3.4 Meningkatkan output dan produktivitas
3.5 Meningkatkan kualitas
3.6 Mampu mengambil dan melestarikan keahlianpara pakar
3.7 Mampu beroperasi dalamlingkungan berbahaya
3.8 Memiliki kemampuan untuk mengakses pengetahuan para pakar
3.9 Memiliki realibilitas dan handal
3.10 Meningkatkan kapabilitas sistemkomputer
3.11 Memiliki kemampuan untuk bekerja dengan informasi yang tidak
lengkap dan mengandung ketidakpastian
3.12 Mampu menjadi media pelengkap dalampelatihan
3.13 Meningkatkan kapabilitas dalampenyelesaian masalah
3.14 Menghemat waktu dalampengambilan keputusan
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
4
4. Kekurangan Sistem Pakar
Selain bermanfaat, namun terdapat beberapa kekurangan dari sistem pakar,
yakni:
4.1 Biaya yang diperlukan untuk membuat dan memeliharanya sangat
mahal
4.2 Sulit dikembangkan. Hal ini terkaitannya dengan ketersediaan pakar
dalam bidangnya
4.3 Sistem pakar tidak 100% bernilai benar
4.4 Pengetahuan sangat sulit diekstrak dari manusia, karena untuk setiap
situasi dan problem pendekatan oleh setiap pakar bisa berbeda-beda.
4.5 Terkadang terdapat kesulitan oleh pakar dalam menjelaskan tahap-
tahap mereka dalam menangani permasalahan.
4.6 Terkadang istilah yang dipakai pakar untuk menjelaskan fakta tidak
selalu dimengerti oleh orang lain.
4.7 Sistem pakar hanya akan bekerja sangat baik dalam bidang yang sempit
5. Ciri Ciri Sistem Pakar
Sebuah sistem pakar ideal memiliki karakteristik sebagai berikut:
5.1 Terbatas pada domain tertentu.
5.2 Memiliki kemampuan mengolah data yang mengandung
ketidakpastian (bersifat optional).
5.3 Dapat memberikan fasilitas penjelasan (expalain facility) dengan
cara yang mudah dipahami.
5.4 Semua proses ditentukan berdasarkan kaidah dan rule yang berlaku.
5.5 Dirancang untuk bisa dikembangkan secara bertahap.
5.6 Basis pengetahuan dan mekanisme inferensi dibuat terpisah.
5.7 Hasil yang dicapai lebih bersifat anjuran (advice).
5.8 Adanya fasilitas interface antar pemakai dan sistem.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
5
6. Area Permasalahan Aplikasi Sistem Pakar
Biasanya aplikasi sistem pakar menyentuh beberapa area permasalahan
berikut:
6.1 Interpretasi
Pengambilan keputusan dari hasil observasi, diantaranya pengawasan,
pengenalan ucapan, analisis citra, interpretasi sinyal, dan beberapa
analisis kecerdasan.
6.2 Prediksi
Memprediksi akibat-akibat yang dimungkinkan dari situasi-situasi
tertentu, diantaranya peramalan, prediksi demografis, peralaman
ekonomi, prediksi lalu lintas, estimasi hasil, militer, pemasaran, atau
peramalan keuangan.
6.3 Diagnosis
Menentukan sebab malfungsi dalam situasi kompleks yang
didasarkan pada gejala-gejala yang teramati, diantaranya medis,
elektronis, mekanis, dan diagnosis perangkat lunak.
6.4 Desain
Menentukan konfigurasi komponen-komponen sistem yang cocok
dengan tujuan-tujuan kinerja tertentu dan kendala-kendala tertentu,
diantaranya layout sirkuit, perancangan bangunan
6.5 Perencanaan
Merencanakan serangkaian tindakan yang akan dapat mencapai
sejumlah tujuan dengan kondisi awal tertentu, diantaranya
perencanaan keuangan, komunikasi, militer, pengembangan politik,
routing dan manajemen proyek.
6.6 Monitoring
Membandingkan tingkah laku suatu sistem yang teramati dengan
tingkah laku yang diharapkan darinya, diantaranya Computer Aided
Monitoring System.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
6
6.7 Debugging dan Repair
Menentukan dan mengimplementasikan cara-cara untuk mengatasi
malfungsi, diantaranya memberikan resep obat terhadap suatu
kegagalan
6.8 Instruksi
Melakukan instruksi untuk diagnosis, debugging dan perbaikan kinerja.
6.9 Kontrol
Mengatur tingkah laku suatu environment yang kompleks seperti
kontrol terhadap interpretasi-interpretasi, prediksi, perbaikan, dan
monitoring kelakuan sistem
6.10 Seleksi
Mengidentifikasi pilihan terbaik dari sekumpulan (list) kemungkinan.
6.11 Simulasi
Pemodelan interaksi antara komponen-komponen sistem
7. Konsep Dasar Sistem Pakar
Konsep dasar dari sistem pakar yaitu meliputi kepakaran (expertise), pakar
(experts), pemindahan kepakaran (transfering expertise), inferensi
(inferencing), aturan-aturan (rules) dan kemampuan menjelaskan (explanation
capability).
Kepakaran (expertise) adalah pengetahuan yang mendalam tentang suatu
masalah tertentu, dimana kepakaran bisa diperoleh dari pelatihan/
pendidikan, membaca dan pengalaman dunia nyata. Ada dua macam
pengetahuan yaitu pengetahuan dari sumber yang pakar dan pengetahuan dari
sumber yang bukan pakar. Pengetahuan dari sumber yang pakar dapat
digunakan untuk mengambil keputusan dengan cepat dan tepat. Kepakaran
tersebut meliputi pengetahuan tentang:
a. Fakta-fakta tentang bidang permasalahan tertentu
b. Teori-teori tentang bidang permasalahan tertentu
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
7
c. Aturan-aturan dan prosedur-prosedur menurut bidang permasalahan pada
umumnya
d. Aturan heuristic yang harus dikerjakan dalam situasi tertentu
e. Strategi global untuk memecahkan permasalahan
f. Pengetahuan tentang meta knowledge
Pakar (experts) adalah seorang yang memiliki pengetahuan, pengalaman, dan
metode khusus, serta mampu menerapkannya untuk memecahkan masalah atau
member nasihat. Seorang pakar harus mampu menjelaskan dan mempelajari
hal-hal baru yang berkaitan dengan topic permasalahan, jika perlu harus
menyusun kembali pengetahuan-pengetahuan yang didapatkan, dan dapat
memecahkan aturan-aturan serta menentukan relevansi kepakarannya. Jadi
seorang pakar harus mampu melakukan kegiatan-kegiatan berikut:
a. Mengenali dan memformulasikan permasalahan
b. Memecahkan permasalahan secara cepat dan tepat
c. Menerangkan permasalahannya.
d. Belajar dari pengalaman
e. Merestrukturisasi pengetahuan
f. Memecahkan aturan-aturan
g. Menentukan relevansi
Tujuan dari sistem pakar adalah memindahkan kepakaran (transferring
expertise) dari seorang pakar ke dalam komputer, kemudian ditransfer kepada
orang lain yang bukan pakar. Proses ini melibatkan empat kegiatan, yakni:
a. Akuisisi pengetahuan
b. Representasi pengetahuan
c. Inferensi pengetahuan
d. Pemindahan pengetahuan ke pengguna
Inferensi adalah sebuah prosedur yang mempunyai kemampuan dalam
melakukan penalaran. Inferensi ditampilkan pada suatu komponen yang
disebut mesin inferensi yang mencakup prosedur-prosedur mengenai
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
8
pemecahan masalah. Semua pengetahuan yang dimiliki oleh seorang pakar
disimpan pada basis pengetahuan oleh sistem pakar. Tugas mesin inferensi
adalah mengambil kesimpulan berdasarkan basis pengetahuan yang
dimilikinya.
Kebanyakan software sistem pakar komersial adalah sistem yang berbasis
rules atau rule based systems, yaitu pengetahuan disimpan terutama dalam
bentuk rule, sebagai prosedur-prosedur masalah.
Fasilitas lain dari sistem pakar adalah kemampuannya dalam menjelaskan
saran atau rekomendasi yang diberikan. Kemampuan penjelasan yang dimiliki
sistem ini memungkinkan sistem untuk memeriksa penalaran yang dibuatnya
sendiri dan menjelaskan operasi-operasinya. Kemampuan yang dimiliki
sistem pakar sangat berbeda dengan sistem konvensional, berikut
perbandingannya:
Sistem Konvensional Sistem Pakar
Informasi dan pemrosesan biasanya
jadi satu dengan program
Basis pengetahuan merupakan bagian
terpisah dari mekanisme inferensi
Biasanya tidak bisa menjelaskan
mengapa suatu input data itu
dibutuhkan atau bagaimana output
itu diperoleh
Penjelasan adalah bagian terpenting
dari system pakar
Pengubahan program cukup sulit Pengubahan aturan dapat dilakukan
dengan mudah
Sistem hanya akan beroperasi jika
system tersebut sudah lengkap
Sistem dapat beroperasi hanya
dengan beberapa aturan
Eksekusi dilakukan langkah demi
langkah
Eksekusi dilakukan pada semua
basis pengetahuan
Menggunakan data Menggunakan pengetahuan
Tujuan utamanya adalah efisiensi Tujuan utamanya adalah efektivitas
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
9
8. Struktur Sistem Pakar
Sistem pakar dibagi menjadi dua bagian, yakni:
8.1 Lingkungan pengembangan (development environment)
Digunakan oleh pembuat ssistem pakar untuk membangun komponen-
komponen dan memperkenalkan pengetahuan ke dalam knowledge base
(basis pengetahuan).
8.2 Lingkungan konsultasi (consultation environment)
Digunakan oleh pengguna untuk berkonsultasi sehingga pengguna
mendapatkan pengetahuan dan nasihat dari sistem pakar selayaknya
berkonsultasi langsung dengan seorang pakar.
Gambar ini menunjukkan komponen-komponen dalam sistem pakar:
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
10
Keterangan:
1. Basis Pengetahuan (Based-Knowledge)
Basis pengetahuan merupakan sebuah representasi pengetahuan seorang
pakar. Komponen ini berisi pengetahuan yang dibutuhkan untuk
memahami, memformulasi, dan memecahkan masalah. Basis Pengetahuan
tersusun atas dua elemen dasar, yaitu:
a. Fakta, misalnya; situasi, kondisi, dan kenyataan dari permasalahan
yang ada, serta teori dalam bidang tersebut.
b. Aturan, yang mengarahkan penggunaan pengetahuan untuk
memecahkan masalah yang spesifik dalam bidang yang tertentu.
2. Mesin Inferensi (Inference Engine)
Komponen ini mengandung mekanisme pola pikir dan penalaran yang
digunakan oleh pakar dalam menyelesaikan suatu masalah. Mesin inferensi
merupakan bagian dari sistem pakar yang melakukan penalaran
mengenai informasi yang ada dalam basis pengetahuan dan dalam
workplace, dan untuk menformulasikan kesimpulan. Mesin inferensi dibagi
atas dua bagian, yaitu:
1. Strategi Inferensi
Strategi inferensi berkaitan dengan cara yang digunakan untuk menarik
suatu kesimpulan atau suatu keputusan. Dalam strategi ini sering
digunakan aturan logika yang berbunyi jika B bernilai benar, if B then
A, maka A disimpulkan bernilai benar.
Penggunaan aturan logika memiliki beberapa beberapa kemudahan
didalam penggunaanya, bahwa aturan logika sangat sederhana
penalarannya sehingga dapat dengan mudah dimengerti. Terdapatnya
implikasi yang sah tetapi tidak dapat dilakukan, contoh suatu logika
menyatakan bahwa jika suatu nilai A maka dapat disimpulkan juga
bahwa nilai B juga bernilai salah.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
11
Secara umum terdapat dua pendekatan dalam mengambil keputusan
dengan aturan baru dengan pembentukan fakta baru dari suatu aturan
yang telah diketahui. Pendekatan yang digunakan dalam mekanisme
inferensi untuk pengujian aturan yaitu: penelusuran kebelakang
(Backward Chaining) dan penelusuran ke depan (Forward Chaining).
a. Penelusuran Kebelakang (Backward Chaining)
Penelusuran kebelakang merupakan pendekatan yang dimotori
tujuan (goal- driven), pada pendekatan ini pelacakan dimulai dari
tujuan (hipotesa) dan selanjutnya dicari aturan-aturan yang memiliki
tujuan tersebut dan dicari kesimpulannya (pembuktiannya).
b. Penelusuran Kedepan (Forward Chaining)
Sedangkan pelacakan ke depan merupakan pendekatan yang
dimotori oleh data (data-driven), pendekatan ini pelacakan dimulai
dari informasi masukan, dan selanjutnya mencoba menggambarkan
kesimpulan.
2. Strategi Kontrol
Strategi kontrol berhubungan dengan teknik penelusuran yang
digunakan untuk mencapai tujuan. Teknik yang biasa digunakan
dalam sistem pakar adalah Penelusuran Kebelakang (Backward
Chaining) dan Penelusuran Kedepan (Forward Chaining), terkadang
dapat juga menggunakan beberapa teknik penelusuran Depth- first
search, Breadth-first search, dan Best-first search.
a. Depth-first search
Merupakan teknik penelusuran data pada node-node secara
vertikal dan mendalam. Teknik ini mencoba semua lintasan
dalam mencari informasi sebelum menentukan kesimpulan
(konklusi).
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
12
Gambar 2.1 Teknik Penelusuran Data Depth-First Search
b. Breadth-first Search
Merupakan teknik penelusuran data pada semua simpul dalam satu level
atau satu tingkatan sebelum ke level atau tingkatan berikutnya sampai
ditemukannya satu tujuan.
Gambar 2.2 Teknik Penelusuran Data Breadth-First Search
c. Best-first search
Merupakan teknik penelusuran data yang menggunakan kombinasi
kedua teknik penelusuran sebelumnya.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
13
3. Papan Tulis (Blackboard/Workplace)
Papan Tulis (Blackboard/Workplace) adalah memori/lokasi bekerja dan
sebagai tempat menyimpan hasil sementara. Biasanya sistem ini berupa
sebuah database.
4. Antarmuka Pemakai (User Interface)
Sistem Pakar mengatur fasislitas komunikasi antara pengguna dan
sistem. Komunikasi ini biasanya disajikan untuk memberikan berbagai
fasilitas informasi dan berbagai keterangan yang bertujuan untuk membantu
mengarahkan alur penelusuran masalah sampai ditemukan solusi.
5. Fasilitas Penjelasan (Explanation Facility)
Fasilitas Penjelasan (Explanation Facility) merupakan suatu kemampuan
untuk menjejak (tracing) bagaimana suatu kesimpulan dapat diambil
merupakan hal yang sangat penting untuk transfer pengetahuan dan
pemecahan masalah.
6. Sistem Penghalusan Pengetahuan (Knowledge Refining System)
Seorang pakar mempunyai sistem penghalusan pengetahuan, artinya,
mereka bisa menganalisa sendiri performa mereka, belajar dari
pengalaman, serta meningkatkan pengetahuannya untuk konsultasi
berikutnya. Pada Sistem Pakar, swaevaluasi ini penting sehingga dapat
menganalisa alasan keberhasilan atau kegagalan pengambilan kesimpulan,
serta memperbaiki basis pengetahuannya.
7. Akuisisi Pengetahuan
Akuisisi pengetahuan merupakan proses untuk mengumpulkan data
pengetahuan terhadap suatu masalah dari sumber pengetahuan (berasal
dari pakar atau media seperti majalah, buku, literatur, dll) kedalam
komputer. Sumber pengetahuan tersebut dijadikan dokumentasi untuk
diolah, dipelajari dan diorganisasikan menjadi basis pengetahuan.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
14
8. Pengguna (user)
Pada umumnya pengguna sistem pakar bukanlah seorang pakar (non-
expert) yang membutuhkan solusi, saran, atau pelatihan (training) dari
berbagai permasalahan yang ada.
9. TimPengembangan Sistem Pakar
Tim pengembangan sistem pakar terdiri dari lima komponen, yakni:
9.1 Domain Expert adalah pengetahuan dan kemampuan seorang pakar untuk
menyelesaikan masalah terbatas pada keahliannya saja.
9.2 Knowledge engineer (perekayasa pengetahuan) adalah orang yang mampu
mendesai, membangun, dan menguji sebuah sistem pakar.
9.3 Programmer adalah orang yang membuat program sistem pakar, mengode
domain pengetahuan agar dapat dimengerti oleh computer.
9.4 Project manager adalah pemimpin dalam tim pengembangan sistem
pakar.
9.5 End-user adalah orang yang menggunakan sistem pakar.
10. Rule Sebagai Teknik Representasi Pengetahuan
Setiap rule terdiri dari dua bagian, yaitu IF disebut evidence (fakta-fakta) dan
bagian THEN disebut hipotesis atau kesimpulan.
11. Strategi Penyelesaian Konflik
Jika terdapat suatu fakta yang dapat memicu lebih dari satu rule, maka ada
kemungkinan akan terjadi konflik dalam memori kerja. Sistem pakar tidak
dapat memilih semua rule sekaligus, ia harus memutuskan untuk memilih
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
15
salah satu rule. Dalam melakukan pemilihan, sistem pakar menggunakan
cara-cara untuk memilih rules yang diterapkan apabila terdapat lebih dari satu
rule yang cocok dengan fakta yang terdapatdalam memori kerja, diantaranya:
11.1 No Duplication
Tidak boleh memicu rule dua kali menggunakan fakta yang sama agar
tidak ada fakta yang ditambahkan ke memori kerja lebih dari sekali
11.2 Recency
Fakta yang paling baru dalam memori kerja harus digunakan dalam
memilih rule.
11.3 Specificity
Fakta yang lebih spesifik (khusus) harus digunakan dalam memicu rule.
11.4 Opreration Priority
Pilih aturan yang prioritasnya lebih tinggi.
12. Ketidakpastian Sistem Pakar Berbasis Rule dan Konsep
Matematis yang Digunakan dalam Sistem Pakar
Ada dua macam ketidakpastian data sistem pakar berbasis rule, yakni
ketidakpastian data dan ketidakpastian dalam proses inferensi ( yakni
ketidakpastian data dan ketidakpastian dalam proses inferensi (rule). Hal ini
terjadi karena rule hanya mewakili pengamatan pakar saja dan rule didesain
untuk kebutuhan semua orang, yang bias saja tidak sesuai bagi salah satu
orang.
Sistem pakar harus mampu bekerja dalam ketidakpastian.
Sejumlah teori telah ditemukan untuk menyelesaikan
ketidakpastian, termasuk diantaranya probabilitas klasik (classical
probability), probabilitas Bayes (Bayesian probability), dan faktor
kepastian (certainty factor).
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
16
1. Probabilitas Klasik
Probabilitas
Probabilitas suatu kejadian adalah proporsi kasus di mana peristiwa itu
terjadi. Probabilitas juga dapat didefinisikan sebagai ukuran ilmiah
kesempatan. Probabilitas matematis dapat dinyatakan sebagai indeks
numerik dengan berkisar antara nol (suatu kemustahilan mutlak) sampai
satu (sebuah kepastian yang mutlak). Kebanyakan peristiwa memiliki
indeks probabilitas antara 0 dan 1. Berarti bahwa setiap kejadian
mempunyai paling sedikit 2 kemungkinan yang terjadi: favourable
outcome atau sukses, dan unfavourable outcome atau gagal.
Probabilitas sukses dan gagal:
Jika s adalah jumlah yang sukses, dan f adalah jumlah yang gagal, maka:
dan
Probabilitas Bersyarat
Pandanglah A sebagai sebuah kejadian, dan B adalah kejadian yang lain.
Andaikan bahwa kejadian A dan B adalah kejadian yang secara eksklusif
tidak terjadi bersama-sama, tetapi terjadi secara bersyarat pada terjadinya
kejadian yang lain. Probabilitas bahwa kejadian A akan terjadi jika
kejadian B terjadi disebut conditional probability (probabilitas bersyarat).
Conditional probability dinyatakan secara matematis sebagai p(A|B),
lambang | artinya diberikan (GIVEN). Pernyataan lengkap probabilitas
diinterpretasikan sebagai Conditional probability of event A occurring
given that event B has occurred.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
17
The number of times A and B can occur, atau probabilitas bahwa A dan
B terjadi, disebut joint probability of A and B. Direpresentasikan secara
matematis sebagai p(AB) Jumlah cara B dapat terjadi disebut
probablitas B, dinyatakan p(B). Maka conditional probability kejadian A
terjadi jika B terjadi:
Sehingga conditional probability kejadian B terjadi jika A terjadi:
dari didapatkan
berdasarkan sifat komutatif
maka
mensubstitusikan
kedalam
didapatkan
keterangan:
p(A|B) adalah probabilitas bersyarat dimana kejadian A terjadi ketika
diberikan bahwa kejadian B telah terjadi.
p(B|A) adalah probabilitas bersyarat dari B peristiwa yang terjadi
diberikan bahwa kejadian A telah terjadi.
p(A) adalah probabilitas kejadian A terjadi.
p(B) adalah probabilitas kejadian B terjadi.
Contoh:
P(Nina terkena cacar | Nina mempunyai bintik-bintik di wajah) = 0,8
Ini sama dengan rule berikut:
IF Nina mempunyai bintik-bintik di wajah THEN Nina terkena cacar (0,8)
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
18
Rule ini sama artinya dengan:
Jika Nina mempunyai bintik-bintik di wajah, maka probabilitas
(kemungkinan) Nina terkena cacar adalah 0,8.
2. Probabilitas Bayes
Misalkan semua aturan dalam basis pengetahuan yang diwakili dalam
bentuk berikut:
IF E is true
THEN H is true {with probability p}
Aturan ini berarti bahwa jika peristiwa E terjadi, maka probabilitas
bahwa peristiwa H akan terjadi adalah p. H merepresentasikan hipotesis,
E menyatakan evidence yang terjadi. Persamaan uncertainty dapat
mengekspresikan hipotesis dan evidence menjadi seperti berikut:
keterangan
p(H) : probabilitas awal hipotesis H benar
p(E|H) : probabilitas bahwa hipotesis H benar akan didapatkan dengan
bukti E
p(H) : probabilitas awal hipotesis H salah
p(E|H) : probabilitas untuk menemukan bukti E meskipun ketika
hipotesis H salah
Beberapa hipotesis dengan satu evidence:
Beberapa hipotesis dengan beberapa evidence:
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
19
Beberapa hipotesis dengan beberapa evidence, dijabarkan menjadi:
Contoh 1:
Kemacetan jalan
Di jalan raya porong terjadi kemacetan yang luar biasa. Para supir menduga
bahwa terjadi luapan lumpur panas lapindo dengan :
1. Probabilitas terjadinya kemacetan di jalan, jika terjadi luapan Lumpur:
p(macet|luapan_lumpur) = 0.55
2. Probabilitas terjadinya luapan lumpur tanpa memandang kejadian apapun
p(luapan_lumpur) = 0.4
3. Probabilitas terjadinya kemacetan di jalan, jika terjadi kecelakaan;
p(macet|kecelakaan) = 0.8
4. Probabilitas terjadinya kecelakaan tanpa memandang kejadian apapun
p(kecelakaan) = 0.35
5. Probabilitas terjadinya kemacetan di jalan, jika terlalu banyak kendaraan;
p(macet|banyak_kendaraan) = 0.8
6. Probabilitas terjadinya banyak kendaraan tanpa memandang kejadian
apapun p(banyak_kendaraan) = 0.15
7. Probabilitas terjadinya kemacetan di jalan, jika terjadi kerusakan jalan;
p(macet|kerusakan_jalan) = 0.4
8. Probabilitas terjadi kerusakan jalan tanpa memandang kejadian apapun
p(kerusakan_jalan) = 0.1
Dapatkan probabilitas adanya luapan lumpur panas, kecelakaan, banyaknya
kendaraan dan jalanan rusak karena terjadi kemacetan !
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
20
Penyelesaian:
Misalkan:
H
1
= Luapan lumpur
H
2
= Kecelakaan
H
3
= Banyak kendaraan
H
4
= Kerusakan jalan
E = Macet
Maka:
p(E|H
1
)= 0.55
p(H
1
)= 0.4
p(E|H
2
)= 0.8
p(H
2
)= 0.35
p(E|H
3
)= 0.8
p(H
3
)= 0.15
p(E|H
4
)= 0.4
p(H
4
)= 0.1
Hasilnya :
p(H
1
|E) = 0.3548
p(H
2
|E) = 0.4106
p(H
3
|E) = 0.1760
p(H
4
|E) = 0.0587
Jadi:
Hipotesis terkuat asalnya adalah H
1
(0.4) yaitu luapan lumpur, karena ada bukti
Macet, maka sekarang yang paling diyakini terjadi adalah H
2
yaitu kecelakaan
dengan keyakinan 0.4106
Contoh 2:
Table berikut menunjukkan tabel probabilitas bersyarat evidence E
1
, E
2
, dan E
3
,
dan hipotesis H
1
, H
2
, dan H
3
. Misalkan pertama kali kita hanya mengamati
evidence E
3
, dan hitung probabilitas terjadinya hipotesis:
a. H
1
jika semula hanya evidence E
3
yang teramati
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
21
b. H
2
jika semula hanya evidence E
3
yang teramati
c. H
3
jika semula hanya evidence E
3
yang teramati
Jawab:
Persoalan ini adalah persoalan teorema Bayes untuk evidence tunggal E
dan hipotesis ganda H
1
, H
2
, dan H
3
dengan persamaan berikut:
Jadi,
Tampak bahwa setelah evidence E
3
teramati, kepercayaan terhadap
hipotesis H
1
,. berkurang dan menjadi sama dengan kepercayaan terhadap
H
2
. Kepercayaan terhadap hipotesis H
3
bertambah, bahkan hamper sama
dengan H
1
dan H
2
.
3. Faktor Kepastian
Certainty Factor ini diusulkan oleh Shortliffe dan Buchanan pada tahun
1975 untuk mengakomadasi ketidakpastian pemikiran (inexact reasoning)
seorang pakar. Seorang pakar (misalnya dokter) sering kali menganalisis
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
22
informasi yang memiliki ungkapan mungkin, hampir pasti, kemingkinan
besar, atau yang lainnya. Untuk mengakomodir hal ini kita menggunakan
certainty factor (CF) yang guna menggambarkan tingkat keyakinan pakar
terhadap masalah yang dihadapi.
Ada dua model yang sering digunakan untuk menghitung tingkat keyakinan (CF)
dari sebuah rule adalah sebagai berikut:
a. Menggunakan metode Net Belief yang diusulkan oleh E. H. Shortliffe dan B.
G. Buchanan [1, 2], yaitu:
CF(Rule) = MB(H, E) MD(H, E) ............................................... (1)
1 if P(H) = 1
MB(H|E)= max[P(H|E) , P(H)] - P(H)
otherwise
1 - P(H)
...............(2)
1 if P(H) = 0
MD(H|E)= min[P(H|E), P(H)] - P(H)
otherwise
- P(H)
................(3)
dimana:
P(H) = probabilitas kebenaran hipotesa H
P(H|E) = probabilitas bahwa H benar karena fakta E
P(H) dan P(H|E) merepresentasikan keyakinan dan ketidak yakinan pakar.
b. Dengan menggali dari hasil wawancara dengan pakar. Nilai CF(Rule) didapat
dari interpretasi term dari pakar menjadi nilai CF tertentu (lihat tabel 1).
Tabel 1: CF Value Interpretation[1]
Uncertain Term CF
Definitely not
Almost certainly not
Probably not
Maybe not
Unknown
- 1.0
- 0.8
- 0.6
- 0.4
- 0.2 to 0.2
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
23
Maybe
Probably
Almost certainly
Definitely
0.4
0.6
0.8
1.0
Contoh:
Pakar:
Bila sakit kepala dan pilek dan demam, maka kemungkinan besar penyakitnya
adalah influenza
Rule:
IF gejala1 = sakit kepala AND gejala2 = pilek AND gejala3 = deman
THEN penyakit = influenza (CF = 0.8)
Kedua model tersebut membutuhkan peran serta aktif dari pakar yang digunakan
sebagai domain knowledge. Hal ini membutuhkan waktu dan tenaga yang cukup
besar untuk mendapatkan hasil, dan hasilnya bersifat subyektif. Penyebabnya
adalah:
1. Pakar yang digunakan sebagai domain knowledge biasanya awam dalam
pembuatan sistem pakar dan sistem software secara umum.
2. Pakar, terutama untuk ilmu ilmu non formal (misal: obat tradisional, feng
shui, dll), biasanya kurang obyektif terhadap knowledge-nya sendiri dan
sangat yakin tentang kebenaran dari knowlegde itu.
Kelebihan metode Certainty Factor adalah:
1. Metode ini cocok dipakai dalam sistem pakar untuk mengukur sesuatu apakah
pasti atau tidak pasti dalam mendiagnosis penyakit sebagai salah satu
contohnya.
2. Perhitungan dengan menggunakan metode ini dalam sekali hitung hanya
dapat mengolah dua data saja sehingga keakuratan data dapat terjaga.
Kekurangan metode Certainty Factor adalah:
1. Ide umum dari pemodelan ketidakpastian manusia dengan menggunakan
numerik metode certainty factor biasanya diperdebatkan. Sebagian orang
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
24
akan membantah pendapat bahwa formula untuk metode certainty
factor diatas memiliki sedikit kebenaran.
2. Metode ini hanya dapat mengolah ketidakpastian atau kepastian hanya dua data
saja. Perlu dilakukan beberapa kali pengolahan data untuk data yang lebih
dari dua buah.
Expert System (Sistem Pakar) Komputasi dan Teknik Pemrograman Savitri Stratavia
25
Daftar Pustaka
Achmad, Balza. 2006. Diktat Mata Kuliah KecerdasanBuatan.Yogyakarta:UGM.
Listiyono, Hersatoto. 2008. Merancang dan Membuat Sistem Pakar. Jurnal
Teknologi Informasi Dinamik Volume Xiii, No.2, Juli 2008 : 115-124.
Sutojo, T. 2011. Kecerdasan Buatan. Yogyakarta: ANDI.

Anda mungkin juga menyukai