Teknik Pencarian
Heuristik
Referensi
Sri Kusumadewi - bab 2
Rich & Knight – bab 3
Algoritma :
1. Bangkitkan suatu kemungkinan solusi (membangkitkan
suatu tititk tertentu atau lintasan tertentu dari keadaan
awal).
2. Uji untuk melihat apakah node tersebut benar-benar
merupakan solusinya dengan cara membandingkan
node terebut atau node akhir dari suatu lintasan yang
dipilih dengan kumpulan tujuan yang diharapkan.
3. Jika solusi ditemukan, keluar. Jika tidak, ulangi kembali
langkah pertama.
8
A B
A B C D
3 4
7 5 B C D
D C C D B D C B
6
D C D B B C
PENDAKIAN BUKIT
(Hill Climbing)
Metode ini hampir sama dengan metode pembangkitan
dan pengujian, hanya saja proses pengujian dilakukan
dengan menggunakan fungsi heuristic. Pembangkitan
keadaan berikutnya tergantung pada feedback dari
prosedur pengetesan. Tes yang berupa fungsi heuristic
ini akan menunjukkan seberapa baiknya nilai terkaan
yang diambil terhadap keadaan-keadaan lainnyayang
mungkin.
(19) ABCD
(15)
ABCD BCAD BADC DACB BDCA CABD
(14)
CBAD BACD BCDA DCAB BDAC ACBD
(13)
DBAC BADC BDCA CDBA BCAD ADBC
(12)
DBCA BCDA BDAC ADCB BACD CDBA
PENCARIAN TERBAIK
PERTAMA (Best-First Search)
Metode ini merupakan kombinasi dari metode depth-
first search dan breadth-first search. Pada metode
best-first search, pencarian diperbolehkan
mengunjungi node yang ada di level yang lebih
rendah, jika ternyata node pada level yang lebih
tinggi ternyata memiliki nilai heuristic yang lebih
buruk.
Contoh :
Misalkan kita memiliki ruang pencarian
seperti pada gambar berikut. Node M
merupakan keadaan awal dan node T
merupakan tujuannya. Biaya edge yang
menghubungkan node M dengannode A
adalah biaya yang dikeluarkan untuk
bergerak dari kota M ke kota A. Nilai g
diperoleh berdasarkan biaya edge minimal.
Sedangkan nilai h’ di node A merupakan
hasil perkiraan terhadap biaya yang
diperlukan dari node A untuk sampai ke
tujuan. h’(n) bernilai ~ jika sudah jelas tidak
ada hubungan antara node n dengan node
tujuan (jalan buntu). Kita bisa merunut nilai
untuk setiap node.
Keadaan Awal
M
0 6 Biaya Edge
3 4
Nilai h’
A B C
3 4 4 2
Nilai g 5 3
2 3 5 2 1 9
D E F 5 G H I
2
7 ~ 8 2 81 6 5 2 13 ~
7 3 3 7
4 2
J T K L
12 ~ 7 0 8 ~ 15 ~
Tujuan
M 0 6 6
A 5 3 8
B 3 4 7
C 4 2 6
D 7 ~ ~
E 8 2 10
F 8 1 9
G 5 2 7
H 5 2 7
I 13 ~ ~
J 12 ~ ~
K 8 ~ ~
L 15 ~ ~
T 7 0 7
Reduksi Masalah
• Kebanyakan solusi
menggunakan pohon OR,
dimana lintasan dari awal
sampai tujuan tidak terletak
pada satu cabang.
• Bila lintasan dari keadaan awal
sampai tujuan dapat terletak
pada satu cabang, maka kita
akan dapat menemukan tujuan
lebih cepat.
• Graf AND-OR
• Graf AO*
Teknik Pencarian Heuristik 12/25
Pengantar Kecerdasan Buatan (AK045218)
Graf AND-OR
• Pada dasarnya sama dengan algoritma
Best First Search, dengan
mempertimbangkan adanya arc AND.
• Gambar berikut menunjukkan bahwa
untuk mendapatkan TV orang bisa
dengan cara singkat yaitu mencuri atau
membeli asal mempunyai uang.
• Untuk mendeskripsikan algoritma,
digunakan nilai F_UTILITY untuk biaya
solusi.
Algoritma AND-OR
1. Inisialisasi graf ke node awal.
2. Kerjakan langkah2 berikut hingga node
awal SOLVED atau sampai biayanya
lebih tinggi dari F_UTILITY :
a) Telusuri graf mulai dari node awal dan ikuti
jalur terbaik. Akumulasikan kumpulan node
yang ada pada lintasan tsb. dan belum
pernah diekspansi atau diberi label SOLVED.
b) Ambil satu node dan ekspansi node tsb. Jika
tidak ada successor maka set F_UTILITY
sebagai nilai dari node tsb. Bila tidak
demikian, tambahkan successor dari node
tsb ke graf dan hitung nilai setiap f’ (hanya
gunakan h’ dan abaikan g). Jika f’=0 tandai
node tsb dengan SOLVED.
c) Ubah f’ harapan dari node baru yang
diekspansi. Kirimkan perubahan ini secara
backward sepanjang graf. Jika node berisi
suatu arc successor yang semua descendant
nya berlabel SOLVED maka tandai node itu
dengan SOLVED.
9
B C D
3 4 5
9 12
B C D 10 6 B C D 10
3 4 4
10
10
E F G H E F
4 4 5 7 4 4
Algoritma AO*
• Menggunakan struktur graf. Tiap
node pada graf memiliki nilai h’
yang merupakan biaya estimasi
jalur dari node itu sendiri sampai
suatu solusi.
• Algoritma
1. Diketahui graf yang berisi node
awal (sebut saja INIT). Hitung
h’(INIT)
2. Kerjakan langkah berikut hingga
INIT bertanda SOLVED atau
sampai nilai h’(INIT) > FUTILITY :
A 7
B 10 C 6
D 3 E 5
Constraint Satisfaction
• Problem search standard :
– state adalah "black box“ – setiap
struktur data yang mendukung fungsi
successor, fungsi heuristik dan tes
goal.
• CSP:
– state didefinisikan sebagai variabel Xi
dengan nilai dari domain Di
– Tes goal adalah sekumpulan
constraint yang menspesifikasikan
kombinasi dari nilai subset variabel.
• Contoh sederhana adalah bahasa
representasi formal.
Constraint Graf
• Binary CSP biner : setiap constraint
merelasikan dua variabel
• Graf Constraint : node adalah variabel,
arc adalah constraint
Contoh :
• http://www.rci.rutgers.edu/~cfs/
472_html/Planning/GPS_472.h
tml
• Giarratano – hal 261-262
• Luger – hal 430 - 433.
Masalah, Ruang
Masalah dan Pencarian
Referensi
Luger & Stubblefield - bab 3
Sri Kusumadewi - bab 2
Rich & Knight – bab 3
5 3
I J
4
D 2
2. Pohon Pelacakan
M Level-0
A B C E D C E Level-1
H T T H T T Level-2
3. Pohon AND/OR
M Level-0
A D Level-1
B I C Level-2
C J E Level-3
Buntu
E F I H T Level-4
Tujuan
F I H T G J T Level-5
KARAKTERISTIK
MASALAH/PROBLEM
Untuk memilih metode yang paling baik untuk
memecahkan suatu masalah tertentu, diperlukan suatu
analisa masalah. Dalam menganalisa suatu masalah
kita perlu mengetahui beberapa karakte –ristik
masalah, diantaranya adalah:
1. Apakah masalah dapat dipilah-pilah (decompose- able)
menjadi sejumlah sub-masalah independent yang lebih
kecil atau lebih mudah ?
2. Dapatkah langkah-langkah penyelesaian yang terbukti
tidak tepat diabaikan ?
3. Apakah ruang lingkup atau semesta pembicaraan
masalah dapat diprakirakan ?
4. Apakah solusi masalah yang baik telah dibanding- kan
dengan semua solusi yang dimungkinkan ?
5. Apakah basis pengetahuan yang digunakan untuk
memecahkan masalah bersifat konsisten ?
6. Apakah benar-benar dibutuhkan sejumlah besar
informasi untuk memecahkan masalah yang sedang
dihadapi, atau pengetahuan hanya penting untuk
membatasi proses pencarian (searching) ?
7. Apakah sebuah komputer sendirian dapat diberi
masalah dan kemudian menyajikan solusi secara
sederhana, atau akankah solusi dari suatu masalah
membutuhkan interaksi antara komputer dan manusia
?
TEKNIKPENCARIAN/
PELACAKAN(SEARCHING)
• Pada umumnya manusia mempertimbangkan sejumlah
alternatif strategi dalam menyelesaikan suatu problema.
• Dalam permainan catur misalnya, seorang pemain
mempertimbangkan sejumlah kemungkinan tentang langkah-
langkah berikutnya, memilih yang terbaik menurut kriteria
tertentu seperti kemungkinan respon lawannya.
• Aspek tingkahlaku cerdas yang mendasari teknik
penyelesaian problema seperti dalam permainan catur
tersebut dinamakan proses pencarian ruang keadaan (space
state search).
• Exhaustive search – adalah proses pencarian terhadap
seluruh ruang keadaan serangkaian langkah yang paling
dimungkinkan untuk menghasilkan kemenangan.
• Walaupun metode ini dapat diterapkan pada setiap ruang
keadaan, namum ukuran ruang keadaan yang sangat besar
membuat pendekatan ini secara praktis tidak dimungkinkan
(dalam permainan catur terdapat 10120 keadaan)
• Bila kasus ini diimplementasikan ke dalam sisten komputer,
maka akan membutuhkan memori yang sangat besar, dan
waktu pencarian yang sangat lama. Dengan kata lain metode
exhaustive search ini tidak efisien dan tidak efektif, sehingga
tidak praktis untuk diimplementasikan.
• Untuk mengatasi kendala tersebut di atas, ada beberapa cara
yang dapat dilakukan, diantaranya: pertama teknik pencarian
parsial (Blind Search) dan yang kedua teknik pencarian
heuristic (Heuristik Search).
A. PENCARIAN MELEBAR
PERTAMA (Breadth-First Search)
• Pada metode breadth-first search,
semua node pada level n akan
dikunjungi terlebih dahulu sebelum
mengunjungi node-node pada level
n+1.
• Pencarian dimulai dari node akar
terus ke level ke-1 dari kiri ke
kanan, kemudian berpindah ke
level berikutnya, demikian pula dari
kiri ke kanan hingga ditemukannya
solusi (lihat gambar berikut).
B C D
E F G H I J K L M
Prosedur breadth_first_search
Inisialisasi : open = [start]; closed [ ]
While open = [ ] do
Begin
Hapuskan keadaan paling kiri dari keadaan open,
sebutlah keadaan itu dengan X;
Jika X merupakan tujuan then return (sukses);
Buatlah semua child dari X;
Ambillah X dan masukkan pada closed;
Eliminasilah setiap child X yang telah berada
pada open atau closed, yang akan menyebabkan
loop dalam search;
Ambillah turunan di ujung kanan open sesuai urutan
penemuan-nya;
End.
• Keuntungan :
– Tidak akan menemui jalan buntu
– Jika ada satu solusi, maka
breadth-first search akan
menemukannya. Dan, jika ada
lebih dari satu solusi, maka
solusi minimum akan ditemukan.
• Kelemahan :
– Membutuhkan memori yang
cukup banyak, karena
menyimpan semua node dalam
satu pohon
– Membutuhkan waktu yang cukup
lama, karena akan menguji n
level untuk mendapatkan solusi
pada level yang ke-(n+1).
Masalah, Ruang Masalah & Pencarian 12/14
Pengantar Kecerdasan Buatan (AK045218)
B. PENCARIAN KEDALAM
PERTAMA (Depth-First Search)
Pada Depth-First Search, proses pencarian akan
dilakukanpada semua anaknya sebelum dilakukan
pencarian ke node-node yang selevel. Pencarian
dimulai dari node akar ke level yang lebih tinggi. Proses
ini diulangi terus hingga ditemukannya solusi.
A
Prosedur depth_first_search
B
Inisialisasi: open = [Start]; closed = []
While open x [] do C
Begin
Hapuskan keadaan berikutnya dari sebelah kiri open,
sebutlah keadaan itu dengan X;
Jika X merupakan tujuan then return(sukses);
Buatlah semua child yang dimungkinkan dari X;
Ambilah X dan masukkan pada closed;
Eliminasilah setiap child X yang telah berada pada
open atau closed, yang akan menyebabkan loop
dalam search;
Ambilah child X yang tersisa di ujung kanan open
sesuai urutan penemuannya;
End.
• Keuntungan :
– Membutuhkan memori yang
relative kecil, karena hanya
node-node pada lintasan yang
aktif saja yang disimpan.
– Secara kebetulan, metode
depth-first search akan
menemukan solusi tanpa harus
menguji lebih banyak lagi dalam
ruang keadaan.
• Kelemahan :
– Memungkinkan tidak
ditemukannya tujuan yang
diharapakan
– Hanya akan menemukan 1
solusi pada setiap pencarian.
Representasi Pengetahuan
Arti Pengetahuan
Produksi
Jaringan Semantik
Tiple Obyek-Atribut-Nilai
Schemata : Frame dan Script
Referensi
Giarratano – bab 2
Luger & stubblefield - bab 9
Sri Kusumadewi - bab 3
Pengetahuan (Knowledge) :
Priori Knowledge
• Berarti yang mendahului (pengetahuan datang
sebelumnya dan bebas dari arti)
• Kebenaran yang universal dan tidak dapat
disangkal tanpa kontradiksi
• Contoh : pernyataan logika, hukum matematika
Posteriori Knowledge
• Knowledge yang diturunkan dari akal pikiran yang
sehat.
• Kebenaran atau kesalahan dapat dibuktikan
dengan menggunakan pengalaman akal sehat.
• Contoh : bola mata seseorang berwarna biru,
tetapi ketika orang tersebut mengganti contact
lens-nya, bisa jadi bola matanya menjadi berwarna
hijau.
Kategori Knowledge
• Procedural Knowledge
Bagaimana melakukan sesuatu
• Declarative Knowledge
Mengetahui sesuatu itu benar atau salah
• Tacit Knowledge
Tidak dapat diungkapkan dengan bahasa
Hirarki Knowledge
Aturan Produksi
Sering digunakan untuk merepresentasikan pengetahuan pada
Sistem Pakar.
• Bentuk formalnya Backus-Naus Form (BNF),
9 metalanguange untuk mendefinisikan sintaks bahasa
9 suatu grammar haruslah lengkap dan unambiguous set dari aturan
produksi untuk bahasa yang spesifik
9 parse tree adalah representasi grafis dari kalimat pada suatu
bahasa
9 deskripsi sintaks tersedia dalam bahasa
9 tidak semua kalimat adalah benar
• Contoh :
<sentence> ::= <subject> <verb> <end-mark>
Contoh :
<sentence>Æ<subject phrase><verb><object phrase>
<subject phrase>Æ<determiner><noun>
<object phrase>Æ<determiner><adjective><noun>
<determiner>Æ a | an | the | this | these | those
<noun> Æ man | eater
<verb> Æ is | was
<adjective> dessert | heavy
Produksinya ?
Jaringan Semantik
• Dibangun oleh M.R.Quillian, sebagai
model memori manusia.
• Representasi grafis dari informasi
Propositional.
• Proposisi adalah pernyataan yang dapat
bernilai benar atau salah.
• Disajikan dalam bentuk graf berarah
• Node merepresentasikan konsep, objek
atau situasi :
– Label ditunjukkan melalui penamaan
– Node dapat berupa objek tunggal atau kelas
• Links merepresentasikan suatu
hubungan :
– Links adalah struktur dasar untuk
pengorganisasian pengetahuan
– Contoh jaringan semantic.
• Tipe link :
– IS-A (ISA) berarti “contoh dari” dan
merupakan anggota tertentu dari kelas.
– A KIND OF (AKO) berarti “jenis dari” dan
merelasikan antara suatu kelas dengan kelas
lainnya. AKO merelasikan kelas individu ke
kelas induk dari kelas-kelas dimana individu
tersebut merupakan kelas anak.
– HAS-A berarti “mempunyai” yang merelasikan
suatu kelas menjadi subkelas. HAS-A
berlawanan dengan AKO dan sering
digunakan untuk merelasikan suatu objek ke
bagian dari objek.
Keterangan :
AKO = jenis dari
ISA = adalah
Has shape = berbentuk
Perluasan Jaringan
Semantik
Kasus-2:
Bertanya pada “Tweety” : “How do you Travel ?”
Jawab : “Fly”
Jika node tidak menemukan jawaban pada local arc, maka
akan mencari pada link dengan hubungan “IS A” yang
dimiliki node tersebut.
Triple Obyek-Atribut-Nilai
Contoh :
Objek Atribut Nilai
Apel Warna Merah
Apel Tipe Macintosh
Apel Jumlah 100
Anggur Warna Merah
Anggur Tipe Seedless
Anggur Jumlah 500
Frame
Frame (Minsky, 1975) dipandang sebagai struktur data static yang
digunakan untuk merepsentasi-kan situasi-situasi yang telah
dipahami dan stereotype.
Contoh 1 :
Frame Pohon
Spesialisasi dari : Tumbuhan
Jumlah batang : integer (default 1)
Jenis kulit : halus
Model daun : jenis pohon jarum, berganti daun
Bentuk daun : sederhana, berlekuk, campuran
Telepon Hotel
Ranjang Hotel Spesialisasi dari : telepon
Spesialisasi dari : ranjang Kegunaan : memanggil
Kegunaan : tempat tidur pelayan kamar
Bagian : kasur Pembayaran : melalui
kamar
Kasur
Superkelas : bantal
Penetapan : perusahaan
Contoh 3 :
Frame Name Object 1 Object 1 IS A Frame Name Bird
Object 2
Class Object 2
Properties Properties
Property 1 Value 1 Color Unknown
Property 2 Value 2 No Wings 2
Property 3 Value 3 Flies True
Script
• Script (Schank & Abelson, Yale univ) merupakan
representasi terstruktur yang menggambarkan
urutan stereotip dari kejadian-kejadian dalam
sebuah konteks khusus.
• Script mirip dengan frame, perbedaannya : Frame
menggambarkan objek, sedangkan Script
menggambarkan urutan peristiwa.
• Dalam menggambarkan urutan peristiwa, script
menggunakan serangkaian slot yang berisi
informasi tentang orang, objek dan tindakan-
tindakan yang terjadi dalam suatu peristiwa.
• Elemen script yang tipikal :
– Kondisi masukan : menggambarkan situasi yang
harus dipenuhi sebelum terjadi suatu peristiwa
yang ada dalam script.
– Prop : mengacu kepada objek yang digunakan
dalam urutan peristiwa yang terjadi.
– Role : mengacu kepada orang-orang yang terlibat
dalam script.
– Hasil : kondisi yang ada sesudah peristiwa dalam
script berlangsung.
– Track : mengacu kepada variasi yang mungkin
terjadi dalam script tertentu.
– Scene : menggambarkan urutan peristiwa aktural
yang terjadi.
Keistimewaan Script :
Sistem Pakar
Definisi
Keuntungan dan kelemahan
Konsep Dasar
Bentuk dan Struktur Sistem
Basis Pengetahuan
Metode Inferensi
Ciri-ciri
Aplikasi dan Pengembangannya
Referensi
Giarrantano, J. and G.Riley – bab 1
Sri Kusumadewi – bab 5
Konsep Dasar SP
• Definisi:
Sistem yang berusaha mengadopsi
pengetahuan manusia ke komputer, agar
komputer dapat menyelesaikan masalah
seperti yang biasa dilakukan para ahli.
Keuntungan VS Kelemahan SP
Keuntungan SP :
1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli
2. bisa melakukan proses secara berulang secara otomatis
3. menyimpan pengetahuan dan keahlian para pakar
4. meningkatkan output dan produktivitas
5. meningkatkan kualitas
6. mampu mengambil dan melestarikankeahlian para pakar
7. mampu beroperasi dalam lingkungan berbahaya
8. memiliki kemampuan untuk mengakses pengetahuan
9. memiliki realibilitas
10. meningkatkan kapabilitas system computer
11. memiliki kemampuan untuk bekerja dengan informasi yang tidak
lengkap dan mengandung ketidakpastian
12. sebagai media pelengkap dalam pelatihan
13. meningkatkan kapabilitas dalam penyelesaian masalah
14. menghemat waktu dalam pengambilan keputusan
Kelemahan :
1. biaya yang diperlukan untuk membuat dan memeliharanya
sangat mahal
2. sulit dikembangkan. Hal ini erat kaitannya dengan
ketersediaan pakar dalam bidangnya
3. system pakar tidak 100% bernilai benar
Knowledge
Base
Facts
User
Expertise
Inference
Engine
Expert System
• Bentuk pengetahuan :
– fakta-fakta pada lingkup permasalahan tertentu
– teori-teori pada lingkup masalah tertentu
– prosedur-prosedur berkenaan dengan lingkup
masalah tertentu
– strategi-strategi global untuk menyelesaikan
masalah
– meta-knowledge (pengetahuan tentang
pengetahuan)
Knowledge
Domain
• Ciri-ciri SP :
– Memiliki fasilitas informasi yang handal
– Mudah dimodifikasi
– Dapat digunakan dalam berbagai jenis komputer
– Memilki kemampuan untuk belajar beradaptasi.
Bentuk SP
• Bentuk SP :
– Berdiri sendiri. Sistem jenis ini merupakan s/w yang
berdiri sendir tidak tergabung dengan s/w lain.
– Tergabung. Sisetm ini merupakan bagian program
yang terkandung di dalam suatu algoritma
(konvensional) .
– Menghubungkan ke s/w lain. Bentuk ini biasanya
merupakan SP yang menghubungkan ke suatu
paket program tertentu, misalnya DBMS.
– Sistem mengabdi. Sistem ini merupakan bagian
dari computer khusus yang dihubungkan dengan
suatu fungsi tertentu.
Struktur SP (1/2)
Inference Engine
Knowledge Base Working Memory
(Rules) (Facts)
Agenda
Explanation Knowledge
Faacility Acquisition Facility
User Interface
Struktur SP (2/2)
• User interface (antarmuka) : mekanisme komunikasi
antara user dan SP
IF …. THEN Rules
Rule : Red_Light Antecedent
(left hand side)
IF the light is red
THEN stop
Consequent
Rule : Green_Light (right hand side)
LULUS Persyaratan
D3 Deduction
¾ Pemberian alasan logikal dimana kesimpulan harus mengikuti
SKS = 160 Lulus
premis
IPK >=2.0 Induction
¾ Inferensi dari khusus ke umum
Intuition
KURSUS WORK ¾ Tidak ada teori yg menjamin. Jawabannya hanya muncul,
SHOP
mungkin dengan penentuan pola yg ada secara tidak
disadari.
Heuristic
¾ Aturan yg didasarkan pada pengalaman
Generate & Test
¾ Trial dan error. Digunakan dgn perencanaan.
Abduction
¾ Pemberian alasan kembali dari kesimpulan yg benar ke
premis .
Default Anyone who can program is intelligent
¾ Diasumsikan pengetahuan umum sebagai default John can program
Autoepistemic
¾ Self-knowledge ∴John is intelligent
Nonmonotonic
¾ Pengetahuan yg sebelumnya mungkin tdk benar jika bukti Dalam bentuk IF-THEN
baru didapatkan IF Anyone who can program is intelligent And
Analogy John can program
¾ Kesimpulan yg berdasarkan pada persamaan untuk situasi yg THEN John is intelligent
lainnya.
Silogisme klasik disebut categorical syllogism.
Yang paling sering dipakai : deductive logic, unruk menentukan Premis dan kesimpulan ditentukan sebagai statement
validitas “argument”. categorical dari 4 bentuk berikut :
Silogisme merupakan satu type argumen logika. FORM SCHEMA
Contoh : A All S is P
Premise : Anyone who can program is intelligent E No S is P
Premise : John can program I Some S is P
O Some S is not P
Conclusion : Therefore, John is intelligent S : Subjek kesimpulan disebut minor term
P : Predikat kesimpulan disebut major term
Premise
9 Digunakan sebagai bukti untuk mendukung sutu kesimpulan. Major premise : All M is P
9 Disebut juga antecedent Minor premise : All S is M
Kesimpulan/Conclusion Concluusion : All S is P
9 Disebut juga consequent
Karakteristik logika deduktif adalah kesimpulan benar harus Silogisme diatas disebut standard form dimana major dan
mengikuti dari premis yg benar minor premis diidentifikasi.
Categorical Silogisme Untuk membuktikan validitas argumen silogisme, ada metode
¾ A dan I disebut “affirmative in quality” , subjek yang dinamakan “decision prosedure” yaitu dengan
dimasukkan kedalam jenis predikat menggunakan diagram venn.
¾ E dan O disebut “negative in quality”, subjek tidak masuk
Contoh :
dalam jenis predikat
All M is P
¾ IS = capula = menghubungkan, menunjukkan bentuk tense
All S is M type AAA-1
dari kata kerja “tobe”
∴ All S is P
¾ Middle term (M)
¾ All dan No : universal quantifier, Some :particular S P S P
quantifier
¾ Mood silogisme ditentukan dengan 3 huruf yg memberikan
bentuk premis pokok, minor premis, dan kesimpulan.
M M
Figure Figure 2 Figure Figure 4
1 3
Major Premise MP PM MP PM
Minor Premise SM SM MS MS
S P
Contoh :
All M is P
All S is M type AAA-1 M
∴ All S is P
CÆY
(Y Æ D) ∧ (D Æ Y) SOAL :
C All men are mortal (p)
∴D Socrates is a man (q)
Therefore, Socrates is mortal ∴r
Buktikan !….. Buktikan valid atau tidak ?….
FIRST ORDER PREDICATE LOGIC Solusi :
Kategori silogisme dengan menggunakan predikat logik 1. (∀x) (H(x) Æ M(x))
2. H(s)
TIPE SKEMA REPRESENTASI 3. ∴M(s)
PREDIKAT 4. H(s) Æ M(s)
A All S is P (∀x) (S(x) Æ P(x)) 5. M(s)
E No S is P (∀x) (S(x) Æ ~P(x))
I Some S is P (∃x) (S(x) ∧ P(x)) LOGIC SYSTEMS = WFFS = WFF
O Some S is not P (∃x) (S(x) ∧ ~P(x)) 9 Koleksi objek seperti baris, aksioma, pernyataan dsb
9 Tujuan :
Rule Hukum Universal Instantion menunjukkan individual yg 1. Menentukan bentuk argumen (WFFS=Well Formed
mungkin digantikan dg universal yaitu simbol φ yg berarti Formulas)
fungsi proposisional Contoh All S is P
(∀x) φ(x) x= variabel yg mengatur seluruh individual 2. Menunjukkan baris inference yg valid
∴φ(a) a= individual khusus 3. Mengembangkan sendiri dg menemukan baris baru dari
inference shg memperluas rentangan argumen yg dapat
Contoh : Socrates is human dibuktikan
(∀x) H (x) 9 Aksioma :fakta sederhana atau assertion yg tidak dapat
∴H (Socrates) dibuktikan dari dalam sistem
dimana H(x) : fungsi proposissional dg x adalah human 9 System formal yang diperlukan :
1. Alfabet simbol
Contoh lain 2. String finite dari simbol tertentu, wffs
All men are mortal 3. Aksioma, definisi system
Socrates is a man 4. Baris inference, yang memungkinkan wff, A untuk
∴Socrates is mortal dikurangi sebagai kesimpulan dari set finite Γ wff lain
dimana H=man, M=mortal, s=socrates dimana Γ = {A1,A2,…An}. Wffs harus berupa aksioma
atau teori lain dari sistem logis
RESOLUSI Dengan klausa Horn menjadi :
9 Diperkenalkan oleh Robinson (1965) A1, A2, ………. AN Æ B
9 Merupakan baris inference yg utama dalam prolog Dalam prolog :
9 Prolog menggunakan notasi “quantifier-free” B :- A1, A2, … AN
9 Prolog didasarkan pada logika predikat first-order Untuk membuktikan teori benar dengan metode klasik
9 Sebelum resolusi diterapkan, wff harus berada dalam “reductio ad absurdum” metode kontradiksi.
keadaan normal (bentuk standar) yaitu hanya Tujuan resolusi adalah meng-infer klause baru “revolvent” dari
menggunakan V , ∧ , ~ 2 clause yang disebut parent clauses
Contoh
Mis wff (A V B) ∧ (~B V C) disebut bentuk normal konjungtif AVB
A V B dan ~B V C A V ~B
∴∀A
Ekspresi clausal umumnyya dituliskan dalam bentuk khusus yg dapat ditulis sbb
disebut kowalski : (A V B) ∧ (A V ~B)
A1, A2, ………. AN Æ B1, B2, ….BM ingat distribusi :
Dalam notasi predikat standar : p V (q∧ r) ≡ (p V q) ∧ (p V r)
A1 ∧ A2 ∧ ………. AN Æ B1 V B2 V, ….BM sehingga
Bentuk disjungsinya menggunakan (A V B) ∧ (A V ~B) ≡ A V (B∧ ~B) ≡ A (resolvent)
(p Æ q) ≡ ~p v q ingat (B∧ ~B) ≡ nil/null
menjadi :
A1 ∧ A2∧ V ………. AN Æ B1 V B2 V, ….BM
≡ ~(A1 ∧ A2 ∧ ………. AN ) V (B1 V B2 V, ….BM )
≡ ~A1 V ~A2 V ………. ~AN V B1 V B2 V, …. BM INGAT De
Morgan ~(p ∧ q) ≡ ~p v ~q
SISTEM RESOLUSI DAN DEDUKSI Latihan :
BÆE
Refutation adalah salah satu type pembuktian yang salah E ∧ E
Contoh A Æ B E ∧ S ÆF
BÆC F ∧ G ÆR
CÆD R ∧ T ÆC
∴AÆD B ∧ S ∧ G ∧ T ÆC
A Æ B, B Æ C, C Æ D ├ A Æ B
Buktikan bahwa kesimpulan adalah teori resolusi RESOLUSI DAN LOGIKA PREDIKAT FIRT ORDER
refulasi Sebelum resolusi dapat diterapkan, wff harus diletakkan
Solusi : dalam bentuk casual
Gunakan (p Æ q) ≡ ~p v q untuk semua premise dan Contoh :
kesimpulan, kemudian negasikan untuk kesimpulannya, Some programmers hate all failures
sehingga menjadi No programmer hates any success
(~A V B) ∧ (~B V C) ∧ (~C V D) ∧ A ∧ ~D ∴ No failure is a success
Pohon resolusi refutation
P(x) = x is a progammer
F(x) = x is a failure
S(x) = x is a success
H(x,y) = x hates y
Perbedaan :
Inference Start Tujuan
FORWARD Fakta Kesimpulan yg
harus mengikuti
Note :
Tugas dikirim ke email tyusnitasari@gmail.com
Satu folder untuk satu kelas dengan :
Nama folder TUGAS VCLASS 3 KELAS XX
Nama filenya adalah nama Mahasiswa
CERTAINTY FACTOR(CF)
SISTEM PAKAR
KETIDAKPASTIAN (CF)
• CERTAINTY FACTOR (CF)
– Nilai parameter klinis yang diberikan MYCIN untuk menunjukan
besarnya kepercayaan
– Giarattano dan Riley :
• CF ada 2
– CF PAKAR
– CF PENGGUNA
KOMBINASI EVIDENCE ANTECEDENT
CONTOH
• KOMBINASI Evidence
JIKA batuk
DAN demam
DAN sakit kepala
DAN tenggorokan sakit
MAKA COVID, CF :0,7
Asumsi :
E1:”batuk” H: “COVID”
E2:”demam”
E3:”sakit kepala”
E4:”tenggorokan sakit”
• CF ketika semua evidence pasti
CF(H,E) : CF(H, E1∩E2 ∩E3 ∩E4)
: 0,7
• Jika Partial Evidence Tidak pasti
CF(E1,e):0,5
CF(E2,e):0,8
CF(E3,e):0,3
CF(E4,e):0,7
CF(E,e) :CF(E1∩E2 ∩E3 ∩E4, e)
: min[CF(E1,e), CF(E2,e), CF(E3,e), CF(E4,e)]
:min[0,5, 0,8, 0,3, 0,7] : 0,3
• CF HIPOTESIS
CF(H,e) : CF(E,e)*CF(H,E)
: 0,3 * 0,7
: 0,21
KOMBINASI PARALEL
Pengenalan Sistem Pakar
Sistem Pakar
1
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
• 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
2
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.
• 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
3
4
5
6
Siapakah Pakar (Expert) ?
• Seorang pakar/ahli (human expert) adalah
seorang individu yang memiliki kemampuan
pemahaman yang superior dari suatu
masalah.
– Contoh: seorang dokter, penasehat keuangan,
pakar mesin mobil, dll.
7
Kepakaran (Expertise)
• Pemahaman yang luas dari tugas atau
pengetahuan spesifik yang diperoleh dari
pelatihan, membaca dan pengalaman.
8
Kemampuan Kepakaran
• Dapat mengenali (recognizing) dan merumuskan
masalah
• Menyelesaikan masalah dengan cepat dan tepat
• Menjelaskan solusi
• Belajar dari pengalaman
• Restrukturisasi pengetahuan
• Menentukan relevansi/hubungan
• Memahami batas kemampuan
9
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
yang terjadi
• Strategi global untuk menyelesaikan berbagai jenis
masalah
• Meta-knowledge (pengetahuan tentang
pengetahuan)
10
Komponen Utama Sistem Pakar
Expertise
Knowledge Base
Inference Engine
Expertise
11
Komponen 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)
12
Domain Sistem Pakar
Problem Domain
(Domain Masalah)
Knowledge Domain
(Domain Pengetahuan)
13
Konsep Umum Sistem Pakar
• knowledge acquisition
– transfer knowledge dari manusia atau sumber lainnya ke
komputer
• knowledge representation
– Penyimpanan dan pemrosesan pengetahuan dalam
komputer
• inference
– Mekanisme pengambilan kesimpulan dari pengetahuan
dalam komputer
• explanation
– Menjelaskan kepada user apa dan bagaimana solusi yang
dihasilkan
14
Tahap Pengembangan Sistem
Pakar
• Proses pembuatan SP knowledge
Human Expert engineering yg dilakukan oleh
knowledge engineer. Selain itu
domain expert dan end user.
Dialog • Tugas knowledge engineer adalah
memilih S/W & H/W u/ pembuatan
Knowledge SP, membantu mengambil
Engineer pengetahuan yg dibutuhkan dari
pakar domain, serta implementasi
Explicit Knowledge pengetahuan pada basis
pengetahuan yg benar & efisien
Knowledge Base
• Tugas pakar domain : menyediakan
Of Expert System
pengetahuan ttg bid problem yg
dihadapi, memahami teknik-teknik
pemecahan problema yg dipakai.
15
Pengembangan Teknologi
Sistem Pakar
• Sangat dipengaruhi oleh pengetahuan kognitif
dan matematika
– Cara manusia memecahkan masalah
– Dasar formal, terutama logika dan inferensi
• Aturan produksi sebagai mekanisme
representasi
– Tipe aturan IF … THEN
– Mirip dengan cara manusia memberi alasan
– Explanation facility
16
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 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)
– disebut juga production systems
17
Perkembangan Teknologi SP
• MYCIN
– Dirancang oleh Edward Feigenbaum (Universitas Stanford) th
’70 an SP medical yg dpt mendiagnosa infeksi bakteri &
rekomendasi pengobatan antibiotik
• 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
VAC 11 1780 18
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
– Membantu operator komputer & mengontrol sistem
operasi MVS (multiple virtual storage)
• ACE
– Didesign & dikembangkan oleh AT&T Bell Lab awal th
‘80an
– SP troubleshooting pd sistem kabel telpon
19
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
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
kondisi awal tertentu 20
Kategori Problema SP
• Debugging dan Repair – menentukan dan
menginterpretasikan cara-cara untuk mengatasi
malfungsi.
• Instruksi – mendeteksi dan mengoreksi defisiensi
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
• Monitoring – membandingkan hasil pengamatan
dengan kondisi yang diharapkan
21
Kunci Sukses Sistem Pakar
• Meyakinkan gagasan
– Aturan-aturan, model-model kognitif
• Aplikasi-aplikasi praktis
– Obat-obatan, teknologi komputer, …
• Pemisahan pengetahuan (knowledge) dan
kesimpulan (inference)
– expert system shell
• Memungkinkan penggunaan kembali ‘permesinan’ untuk
domain yang berbeda
• Konsentrasi pada domain pengetahuan
22
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
– knowledge tidak dapat diperoleh secara mudah
– user mungkin segan untuk menerapkan sistem
pakar untuk tugas-tugas kritis
23
Aplikasi Sistem Pakar
24
25
Tools Sistem Pakar
• languages
– higher-level languages didesain khusus untuk
merepresentasikan knowledge dan alasan
– PROLOG, LISP, CLIPS, SAIL, KRL, KQML
• shells
– Sebuah tools dengan tujuan khusus didesain
untuk tipe aplikasi tertentu dimana user hanya
men-suplai basis pengetahuan.
26
Elemen Sistem Pakar
Knowledge Base
Knowledge
Acquisition
User Interface
Facility
Inference Engine Agenda
Explanation
Facility
Working Memory
27
Sistem 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
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
28
Contoh Aturan
IF … THEN Rules
antecedent
Rule: Red_Light (left-hand-side)
IF the light is red consequent
THEN stop (right-hand-side)
Rule: Green_Light
IF the light is green
THEN go
antecedent (left-hand-side)
Production Rules consequent
the light is red ==> stop (right-hand-side)
the light is green ==> go 29
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)
that the class of the organism is enterobacteriaceae
MYCIN Format
IF (AND (SAME CNTEXT GRAM GRAMNEG)
(SAME CNTEXT MORPH ROD)
(SAME CNTEXT AIR AEROBIC)
THEN (CONCLUDE CNTEXT CLASS ENTEROBACTERIACEAE
TALLY .8) [Durkin 94, p. 133]
30
Inference Engine Cycle
• conflict resolution
– Memilih rule dengan prioritas tertinggi dari agenda
• execution
– 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
Siklus berhenti ketika tidak ada rules pada agenda
atau ketika perintah berhenti ditemukan 31
Metode Aktifasi Rules
• Forward Chaining
• Backward Chaining
32
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
– a rule can be activated if all parts of the
antecedent are satisfied
– often used for real-time expert systems in
monitoring and control
– examples: CLIPS, OPS5
33
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
– often used in diagnostic and consultation
systems
– examples: EMYCIN
34
Foundations of Expert Systems
Pattern
Conflict Facts Rules
Matching
Resolution
Rete Post
Production
Algorithm Action
Rules
Execution
Markov
Algorithm
35
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
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
– e.g. BNF grammars of programming languages
36
Markov Algorithms
• in the 1950s, A. A. Markov introduced
priorities as a control structure for production
systems
– 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
37
ES Problems
• limited knowledge
– “shallow” knowledge
• no “deep” understanding of the concepts and their
relationships
– 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
38
ES Problems
• mechanical reasoning
– may not have or select the most appropriate
method for a particular problem
– some “easy” problems are computationally very
expensive
• lack of trust
– users may not want to leave critical decisions to
machines
39
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
– 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
40
DATA = INFORMASI ?
Data: Nilai/value yang turut
merepresentasikan deskripsi dari
DATA suatu objek atau kejadian (event)
41
Pengetahuan (Knowledge)
INFORMASI
PENGETAHUAN
• Data + processing = information
• Information + processing (pengalaman, training, dll) = knowledge
42
Struktur Dasar SP
• Knowledge Base
• Working Memory
• Inference Engine
43
Knowledge Base
• Definisi : Bagian dari sistem pakar yang berisi
domain pengetahuan
• Berisi pengetahuan yang dibutuhkan untuk
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.
44
Working Memory
Definisi : bagian dari sistem pakar yang berisi
fakta-fakta masalah yang ditemukan dalam
suatu sesi
• Berisi fakta-fakta tentang suatu masalah yang
ditemukan dalam proses konsultasi
45
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
dihadapi.
• Proses berpikir pada manusia dimodelkan
dalam sistem pakar pada modul yang disebut
Inference Engine.
46
Kelebihan Sistem Pakar
• Availability
• Intelligent tutor
• Cost
• Intelligent dB
• Danger-reduced
• Performance
• Multiple expertise
• Reliability
• Explanation
• Response-cepat
• Steady, unemotional and complete response47
Struktur Detail SP
Terdiri atas 2 bagian :
• Development Environment (Lingkungan
Pengembangan)
• Consultation Environment (Lingkungan
Konsultasi)
48
Karakteristik Sistem Pakar
• High Performance
• Adequate response time
• Good reliability
• Understanable
• Flexibility
49
Post Production Systems
Idenya :
• Sistem matematika & logika merupakan set
aturan sederhana untuk menentukan
bagaimana mengubah 1 string simbol ke dlm
simbol lainnya.
• Yaitu dengan input string, kejadian
sebelumnya
50
Algoritma Markov
• 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.
• 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
51
Algoritma Markov
• Karakter tunggal a,b,c,……
• Mis AxB BxA artinya mengubah karakter A dan B
• Huruf Yunani α,β
• Contoh : Memindahkan huruf pertama string input
ke akhir
• Aturan 1. αxy yαx
• 2. α ^
• 3. ^ α
• Input ABC
52
Algoritma Markov
Input ABC
Aturan Sukses atau Gagal String
1 G ABC
2 G ABC
3 S αABC
1 S BαAC
1 S BCαA
1 G BCαA
53
2 S BCA
Algoritma Rete
• 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)
• 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.
54
Referensi
• Artifial Intelligent, George F.Luger
• Artificial Intelligent, Sandi Setiawan
• Artificial Intelligent, Elaine Rich, Kevin Knight
• Expert System, Giarrantino/ Rilley
• Peng.Sistem Pakar, Gunadarma
55
1
Sistem Pakar
Representasi Pengetahuan
Keragaman bentuk atau skema representasi pengetahuan telah dikembangkan tahun –
tahun sebelumnya. Ada dua karakteristik umum dari representasi pengetahuan (Turban,
2001), yaitu :
1. Representasi pengetahuan dapat diprogramkan dengan beragam bahasa komputer
yang ada dan dapat disimpan dalam memori.
2. Representasi pengetahuan dirancang sedemikian rupa sehingga fakta dan pengetahuan
lainnya dapat dimanfaatkan untuk penalaran.
Representasi Logika
Logika adalah bentuk representasi pengetahuan yang paling tua. Proses logika adalah
proses membentuk kesimpulan atau menarik suatu inferensi berdasarkan fakta yang telah
ada. Input dari proses logika adalah berupa premis atau fakta – fakta yang diakui
kebenarannya sehingga dengan melakukan penalaran pada proses logika dapat dibentuk
suatu inferensi atau kesimpulan yang benar juga. Diagram proses repesentasi logika dapat
dilihat pada gambar di bawah ini.
Input
Premis Output
Proses Logika Inferensi atau
Atau
Fakta Konklusi
Logika Preposisi
Preposisi adalah suatu pernyataan yang dapat bernilai benar atau salah. Dua atau lebih
preposisi dapat digabungkan dengan menggunakan operator logika :
a. Konjungsi : ^ (And)
b. Disjungsi : V (Or)
c. Negasi : ~
d. Implikasi : → (If – Then / Jika Maka)
e. Ekuivalensi : ↔ (If and Only If / Jika dan Hanya Jika)
Contoh :
Diketahui preposisi – preposisi berikut.
P : Hari ini Hujan
Q : Murid – murid diliburkan dari sekolah
Maka
P ^ Q : hari ini hujan dan murid – murid diliburkan dari sekolah
P V Q : Hari ini hujan atau murid – murid diliburkan dari sekolah
~P : Tidak benar hari ini hujan
(atau dalam kalimat lain yang lebih lazim. Hari ini tidak hujan)
Contoh lain :
P = Hujan turun sekarang
Q = Saya tidak akan ke pasar
Maka
P → Q : Jika Hujan turun maka saya tidak akan ke pasar
Logika Predikat
4
Logika predikat adalah logika yang digunakan untuk merepresentasikan masalah yang
tidak dapat dilakukan atau direpresentasikan dengan menggunakan logika preposisi.
Misal, diketahui fakta – fakta sebagai berikut.
Andi adalah seorang laki – laki : A
Ali adalah seorang laki – laki : B
Amir adalah seorang laki – laki : C
Anto adalah seorang laki – laki : D
Agus adalah seorang laki – laki : E
Jika kelima fakta tersebut dinyatakan dengan menggunakan preposisi, maka akan terjadi
pemborosan. Di mana beberapa pernyataan dengan predikat yang sama akan dibuat
dalam preposisi yang berbeda.
Pada logika predikat, kita dapat merepresentasikan fakta – fakta sebagai suatu pernyataan
yang disebut dengan WFF (Well Formed Formula).
Pernyataan di atas sebelumnya dapat dibuat menjadi :
seorang(x(Andi, Ali, Amir, Anto, Agus), laki – laki).
Contoh lain :
Diana adalah nenek dari Ibu Amir
Nenek (Diana, Ibu (Amir))
Jaringan Semantik
5
Pagi
Masuk Roda
Sekolah Punya
Jumlahnya
Sepeda
Pergi
Buku
Baca
Naik Dua
Budi
Berjudul
Berwarna
adalah
Si Kancil
Saudara Merah
Laki2
adalah
Ani Berwarna
Binatang
adalah Punya
Contoh soal :
6
1. Buatlah jaringan semantik untuk cerita berikut ini : Mini adalah sejenis murai, dia
hidup di sarang, yang berada di atas pohon di halaman belakang Tuan Abraham.
Murai adalah sejenis burung, mereka dapat terbang dan mempunyai sayap. Mereka
adalah spesies yang berbahaya, dan dilindungi oleh peraturan pemerintah.
2. Gambarkan representasi jaringan semantik untuk informasi objek – objek berikut ini :
Ann is the wife of Bill, Ann is the mother of Susan, Ann is the Sister of Carol, Bill is
the father of Susan, Tom is the Husband of Susan, Susan is the mother of John, Tom
is the father of John, David is the husband of Carol, Carol is the mother of Tom,
David is the father of Tom. Dari jaringan semantik yang Anda hasilkan, tuliskan
representasi tersebut ke dalam bentuk cerita.
Frame
Frame adalah kumpulan pengetahuan tentang suatu objek tertentu, peristiwa, lokasi,
situasi, dan lain – lain. Frame biasanya digunakan untuk merepresentasikan pengetahuan
yang didasarkan pada karakteristik yang sudah dikenal, yang merupakan pengalaman –
pengalaman. Dengan menggunakan frame, sangat mudah untuk membuat inferensi
tentang objek, peristiwa, atau situasi baru, karena frame menyediakan basis pengetahuan
yang ditarik dari pengalaman.
Berikut ini adalah Frame untuk deskripsi sebuah kamar hotel.
Telepon Hotel
Spesialisasi dari : telepon
Kegunaan : Memanggil
Pelayan Kamar
Script
Script merupakan representasi pengetahuan yang menggambarkan urutan kejadian. Script
merepresentasikan situasi, pengetahuan, dan pengalaman. Penggambaran urutan peristiwa
pada script menggunakan serangkaian slot yang berisi informasi tentang orang, objek,
dan tindakan – tindakan yang terjadi dalam suatu peristiwa.
Contoh sederhananya dapat dilihat pada script berangkat ke restoran seperti berikut ini.
SCRIPT RESTORAN
Jalur (Track) : Restoran Swalayan (Fast Food)
Peran (Roles) : Tamu Pelayan
Pendukung (Prop) : Counter, baki, makanan, uang, serbet, garam, merica, kecap,
sedotan, dan lain – lain
Kondisi masukan : Tamu Lapar – Tamu punya uang
Adegan 2 : Pesanan
• Tamu memberikan pesanan kepada pelayan
• Pelayan mengambil pesanan dan meletakkan makanan di atas baki.
• Tamu membayar
Adegan 3 : Makan
• Tamu mengambil serbet, sedotan, garam, dan lain – lain
• Tamu membawa baki makanan ke meja kosong.
• Tamu makan dengan cepat
Adegan 4 : Pulang
• Tamu membersihkan meja
• Tamu membuang sampah
9
Hasil
• Tamu merasa kenyang
• Uang tamu jadi habis
• Tamu senang
• Tamu kecewa
• Tamu sakit perut
Contoh soal :
1. Buatlah representasi pengetahuan menggunakan script untuk :
a. Pergi menonton di bioskop
b. Membuat program penjumlahan dua bilangan
c. Berbelanja di supermarket
d. Pendaftaran ulang untuk semester depan
e. Berobat ke dokter gigi
f. Wawancara untuk melamar pekerjaan
g. Memilih komputer
2. Buatlah representasi pengetahuan menggunakan frame untuk menggambarkan :
a. Rumah Anda sendiri
b. Automobile
c. Personal Computer (PC)
d. Hardware
e. Dapur
f. Perahu Layar
g. Kursi
10
3. Dimungkinkan terjadinya penyatuan kemampuan sistem pakar yang satu dengan yang
lainnya, sehingga membuat kualitas hasil lebih meningkat sehingga seolah-olah
seorang user berkonsultasi dengan banyak pakar.
4. Efisiensi kerja, karena sistem biaya yang dikeluarkan untuk perancangan, implementasi
dan perawatan(maintenance) sistem pakar relatif lebih murah dan tidak mengenal
sifat lelah/lupa dll. Hal ini berimbas pada meningkatnya produktivitas dan kinerja
perusahaan.
5. Suatu aplikasi sistem pakar dapat diperbanyak dan disebarluaskan dengan mudah dan
cepat. Hal ini berarti telah memperbanyak jumlah pakar dan memperluas jangkauan
aksesnya.
Representasi pengetahuan dengan sistem produksi ini secara umum terdiri dari beberapa
jenis yaitu sebagai berikut.
1. Relasi
Contoh :
If The fuel tank is empty
Then the car is dead
2. Recommendation
Contoh :
If The Season is Autumn
And The Sky is cloudy
And the forecast is drizzle
Then the advice is take an umbrella
3. Directive
Contoh :
If the car is dead
And the fuel tank is empty
Then the action is refuel the car
4. Strategy
Contoh :
IF the car is dead
THEN the action is ‘check the fuel tank’;
step1 is complete
IF step1 is complete
AND the ‘fuel tank’ is full
13
2. Inference Engine
Dasar untuk membentuk inference engine
a. Forward Chaining (penalaran maju)
Pelacakan dimulai dari keadaan awal (informasi atau fakta yang ada) dan
kemudian dicoba untuk mencocokkan dengan tujuan yang diharapkan. Sering
juga disebut sebagai data driven reasoning
b. Backward Chaining (penalaran mundur)
Penalaran dimulai dari tujuan atau hipotesa, baru dicocokkan dengan keadaan
awal atau fakta – fakta yang ada. Sering juga disebut sebagai goal driven
reasoning.
1) Forward Chaining
Kulitnya Berambut
Pohon Rambutan
2) Backward Chaining
14
4. Development Engine
Bagian dari sistem pakar sebagai fasilitas untuk mengembangkan mesin inferensi dan
penambahan basis pengetahuan yang akan dilakukan oleh knowledge engineer (harus
punya keahlian dalam mengerti bagaimana pakar menerapkan pengetahuan mereka
dalam memecahkan masalah, mampu mengekstraksi penjelasan (knowledge
acquisition) mengenai pengetahuan dari pakar), bila si pakar menemukan
pengetahuan dan aturan yang baru dari pengalaman ia bekerja.
Studi Kasus :
15
Rancanglah sistem pakar untuk mendeteksi suatu penyakit jeruk. Di mana rule yang ada
adalah sebagai berikut.
TabelPenyakit
Akar Batang Daun Cabang Ranting Tunas Bunga
Baik Baik Menebal, Menggulung, Baik Baik Tidak berkembang Gugur
Gugur
Baik Baik Bercak-bercak putih, tak Baik Baik Baik Baik
segar, gugur
Baik Baik Baik Baik Baik Baik Baik
TabelPenyakit
Akar Batang Daun Cabang Ranting Tunas Bunga
Baik Jorok Tidak berkembang Terdapat Kerdil Tidak muncul Tak
bintik merah berkembang
Baik Baik Tidak segar Baik Baik Baik Baik
Baik Baik Baik Baik Baik Baik Baik
Adapun bentuk tampilan form untuk pengisian data akar, batang, daun, cabang, ranting,
tunas, bunga, dan buah adalah sebagai berikut.
Combo1
Combo2
Combo3
Combo4
Combo5
Combo6
Combo7
Combo8
Text1
18
NB :
Isi Combo Box akar, batang, daun, cabang, ranting, tunas, bunga, dan buah adalah
diperoleh dari tabel Penyakit. Sebagai contoh kondisi akar yang berasal dari tabel
penyakit adalah baik, berlendir, dan tak berkembang. Maka combo box akar isinya
adalah baik, berlendir, dan tak berkembang.
Combo1
Text1
'Periksa KonekDb
If Err.Number <> 0 Then
MsgBox "GAGAL KONEKSI DATABASE, SILAHKAN PERBAIKI DATA SETTING
ANDA", vbOKOnly, "Kesalahan"
End
Else
'MsgBox "KonekDb Sukses..!!!", vbInformation, "Pesan"
End If
SQL = ""
SQL = "SELECT *" _
& " FROM TabelPenyakit "
Set Rs_jeruk = New ADODB.Recordset
Rs_jeruk.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
SQL = ""
SQL = "SELECT *" _
20
SQL = ""
SQL = "SELECT *" _
& " FROM TblPenanggulangan "
Set Rs_penyakit1 = New ADODB.Recordset
Rs_penyakit1.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
End Sub
Rs_penyakit.MoveNext
Loop
End If
End Sub
g(jum) = !bunga
h(jum) = !buah
jum = jum + 1
.MoveNext
Loop
End With
For i = 0 To jum - 1
For j = 0 To angka
If a(i) <> a1(j) Then
If j = angka Then
a1(angka) = a(i)
Combo1.AddItem a1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If b(i) <> b1(j) Then
If j = angka Then
b1(angka) = b(i)
Combo2.AddItem b1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
23
For j = 0 To angka
If c(i) <> c1(j) Then
If j = angka Then
c1(angka) = c(i)
Combo3.AddItem c1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If d(i) <> d1(j) Then
If j = angka Then
d1(angka) = d(i)
Combo4.AddItem d1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If e(i) <> e1(j) Then
If j = angka Then
e1(angka) = e(i)
Combo5.AddItem e1(angka)
angka = angka + 1
End If
Else
j = angka
End If
24
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If f(i) <> f1(j) Then
If j = angka Then
f1(angka) = f(i)
Combo6.AddItem f1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If g(i) <> g1(j) Then
If j = angka Then
g1(angka) = g(i)
Combo7.AddItem g1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
For i = 0 To jum - 1
For j = 0 To angka
If h(i) <> h1(j) Then
If j = angka Then
25
h1(angka) = h(i)
Combo8.AddItem h1(angka)
angka = angka + 1
End If
Else
j = angka
End If
Next j
Next i
End Sub
Rs_penyakit1.MoveNext
Loop
End If
End Sub
jum = jum + 1
.MoveNext
Loop
End With
For i = 0 To jum - 1
Combo1.AddItem a(i)
Next i
End Sub
Tugas
Buatlah Sistem Pakar untuk Mendeteksi Kerusakan Komputer.
Struktur Database nya sebagai berikut.
Tabel Gejala
Gejala
KodeGejala Nama Gejala
G0001 Komputer Memiliki Tampilan Video
G0002 Komputer Tidak Memiliki Tampilan Video
G0003 Kipas Pencatu Daya Berputar
G0004 Kipas Pencatu Daya Tidak Berputar
G0005 Ada Komponen yang Meleleh atau terbakar
G0006 Tidak Ada komponen yang meleleh atau terbakar
G0007 Komputer berbunyi Beep saat dinyalakan
G0008 Komputer tidak berbunyi Beep saat dinyalakan
G0009 Komputer Mengeluarkan Bunyi Beep satu kali
G0010 Komputer Mengeluarkan Bunyi Beep berkali - kali
G0011 Komputer memiliki ROM BIOS AMI
G0012 Komputer Tidak memiliki ROM BIOS AMI
G0013 Kualitas video tidak memadai
G0014 Kualitas video memadai
G0015 Komputer menampilkan adanya pesan kesalahan
27
Gejala
KodeGejala Nama Gejala
G0016 Komputer tidak menampilkan adanya pesan kesalahan
G0017 Komputer dapat di boot
G0018 Komputer tidak dapat di boot
G0019 Komputer memiliki hard disk
G0020 Komputer tidak memiliki hard disk
G0021 Komputer memiliki floppy disk
G0022 Komputer dapat diboot dan ada tampilan video
G0023 Peripheral lain bekerja
G0024 Peripheral lain tidak bekerja
G0025 Papan ketik bekerja
G0026 Papan ketik tidak bekerja
G0027 Peripheral tersebut mempunyai antar muka khusus
G0028 Peripheral tersebut tidak mempunyai antar muka khusus
G0029 Peripheral jenisnya serial
G0030 Peripheral tersebut mouse
G0031 Komputer bisa diboot normal tetapi kadang - kadang macet
G0032 Komputer bisa diboot normal tetapi kadang - kadang mereset sendiri
G0033 Komputer bisa diboot tidak mereset sendiri
G0034 Hasil pemeriksaan chip memori tidak ditemukan memori yang buruk
G0035 Komputer Bekerja setelah anda mengganti pencatu daya
G0036 Komputer tidak bekerja walaupun anda telah mengganti pencatu daya
G0037 Komputer bekerja setelah anda mengganti motherboard yang baik kerjanya
G0038 ada chip RAM yang gagal tes
G0039 Tidak ada chip RAM yang gagal tes
G0040 Komputer bekerja normal setelah memasang UPS
G0041 Komputer tetap tidak bekerja walaupun Anda memasang UPS
Tabel Solusi
Solusi
KodeSolusi Gej1 Gej2 Gej3 Gej4 Gej5 Gej6 NamaSolusi
S0001 G0001 G0013 - - - - Konsultasikan dengan memanggil basis
pengetahuan mengenai video
S0002 G0001 G0014 G0015 - - - Periksa sesuai dengan pesan
kesalahan dan lakukan perbaikan
sesuai dengan pesan kesalahan
S0003 G0001 G0014 G0016 G0017 - - Undefined / Tidak ada kerusakan awal
S0004 G0001 G0014 G0016 G0018 G0020 G0021 Konsultasikan dengan memanggil basis
pengetahuan mengenai floppy drive
S0005 G0001 G0014 G0016 G0018 G0019 - Konsultasikan dengan memanggil basis
pengetahuan mengenai hard disk
S0006 G0002 G0004 G0006 - - - Konsultasikan dengan memanggil basis
pengetahuan mengenai tidak
beroperasinya kipas pendingin
S0007 G0002 G0004 G0005 - - - Konsultasikan dengan memanggil basis
pengetahuan perbaikan komponen
terbakar
28
Solusi
KodeSolusi Gej1 Gej2 Gej3 Gej4 Gej5 Gej6 NamaSolusi
S0008 G0002 G0003 G0008 - - - Konsultasikan dengan memanggil basis
pengetahuan mengenai memori
S0009 G0002 G0003 G0007 G0009 G0011 - Konsultasikan dengan memanggil basis
pengetahuan mengenai video
S0010 G0002 G0003 G0007 G0010 - - Periksa sesuai dengan kode kesalahan
beep
S0011 G0002 G0003 G0007 G0012 - - Periksa sesuai dengan kode kesalahan
S0012 G0022 G0023 G0025 - - - Masalah IWF (Intermitten Weird Failure)
S0013 G0022 G0023 G0026 - - - Konsultasikan dengan memanggil basis
pengetahuan mengenai papan ketik
S0014 G0022 G0024 G0027 - - - Periksa buku petunjuk, kemungkinan
ada konflik address atau konflik interrupt
S0015 G0022 G0024 G0028 G0030 - - Konsultasikan dengan memanggil basis
pengetahuan mengenai mouse
S0016 G0032 G0038 - - - - Memori Anda rusak, gantilah memori
tersebut
S0017 G0031 G0036 G0039 G0040 - - Gunakan UPS
S0018 G0031 G0036 G0039 - - - Ganti Pencatu daya
S0019 G0031 G0036 - - - - Perangkat lunak tidak lengkap atau
BIOS yang kadaluarsa atau
menggunakan perangkat lunak bajakan
S0020 G0033 G0037 - - - - Bawa ke pusat reparasi
S0021 G0032 G0036 - - - - Perangkat lunak tidak lengkap atau
BIOS yang kadaluarsa atau
menggunakan perangkat lunak bajakan
S0022 G0032 G0036 G0040 - - - Pakailah UPS
S0023 G0032 G0036 G0037 G0041 - - Ganti Motherboard
Data Mining
Data Mining (DM) adalah salah satu bidang yang berkembang pesat karena besarnya
kebutuhan akan nilai tambah dari database sekala besar yang semakin banyak
terakumulasi sejalan dengan pertumbuhan teknologi informasi. Definisi umum dari DM
itu sendiri adalah serangkaian proses untuk menggali nilai tambah berupa pengetahuan
yang selama ini tidak diketahui secara manual dari suatu kumpulan data.
29
Data Mining merupakan salah satu cabang ilmu komputer yang relatif baru. Sampai saat
ini orang masih memperdebatkan untuk menempatkan data mining di bidang ilmu mana,
karena data mining menyangkut database, artificial intelligence (kecerdasan buatan),
statistik, dan sebagainya.
Ada pihak yang berpendapat bahwa data mining tidak lebih dari analisa statistik yang
berjalan di atas database. Namun, pihak lain berpendapat bahwa database berperan
penting di data mining karena data mining mengakses data yang ukurannya besar (bisa
sampai terabyte).
Data Mining dapat menambang data transaksi belanja kartu kredit untuk melihat
manakah pembeli – pembeli yang memang potensial untuk membeli produk tertentu.
Mungkin tidak sampai pada presisi 10%, tetapi bayangkan jika kita dapat menyaring
20%, tentunya 80% dana dapat digunakan untuk hal lain.
Data Mining sering dikenal dengan nama Knowledge Discovery in Database (KDD).
Namun, sebenarnya Data Mining merupakan salah satu langkah di dalam KDD.
1. Data Selection
2. Data Cleaning
3. Data Transformation
4. Data Mining
5. Evaluation
6. Representation of Knowledge
Secara umum, teori Rough Set telah digunakan dalam banyak aplikasi seperti Medicine,
Pharmacology, Business, Banking, Engineering Design, Image Processing, dan Decision
Analysis.
Rough set menawarkan dua bentuk representasi data yaitu Information System (IS) dan
Decision System (DS).
31
Object
Tabel Information System
Example Studies Education …. Works
E1 Poor SMU …. Poor
E2 Poor SMU …. Good
E3 Moderate SMU …. Poor
E4 Moderate Diploma …. Poor
E5 Poor SMU …. Poor
E6 Poor SMU …. Poor
E7 Moderate Diploma …. Poor
E8 Good MSc …. Good
E9 Good MSc …. Good
E10 Good MSc …. Good
…. …. …. …. ….
E99 Poor SMU …. Good
E100 Moderate Diploma …. Poor
Decision Attribute
Tabel di atas memperlihatkan sebuah Decision System yang sederhana. Terdiri dari m
objek, seperti E1, E2, ..., Em, dan n attribute, seperti Studies, Education, ..., Works dan
Income (D). Dalam tabel ini, n-1 attribute: Studies, Education, ..., Works adalah attribute
kondisi, sedangkan Income adalah Decision Attribute.
33
Kemudian setelah itu akan dibentuk Equivalence Class. Di mana Equivalence class adlah
mengelompokkan objek – objek yang sama untuk attribute A ε (U, A). Diberikan
Decision Systems pada tabel sebelumnya sehingga kita dapat memperoleh Equivalence
Class (EC1 – EC5) seperti digambarkan pada tabel berikut.
Class EC5 adalah sebuah indeterminacy yang memberikan 2 (dua) keputusan yang
berbeda. Situasi ini dapat ditangani dengan teknik data cleaning. Kolom yang paling
kanan mengindikasikan jumlah objek data yang ada adalah Decision System untuk class
yang sama.
EC3 A Ac X B Abc
EC4 Ab Abc B x Abc
EC5 Abc Ab Abc Abc x
Adapun Discernibilty Matrix Modulo D : Diberikan sebuah DS A = (U, A{d}) dan subset
dari attribute B ⊆ A, Discernibility matrix modulo D dari A, MBd, didefinisikan seperti
berikut dimana MB(I,j) adalah sekumpulan attribute yang berbeda antara objek Xi dan Xj
dan juga berbeda attribute keputusan.
Kemudian setelah itu akan dihasilkan Reduct, di mana reduct adalah penyeleksian attribut
minimal (interesting attribute) dari sekumpulan attribut kondisi dengan menggunakan
prime implicant fungsi boolean. Kumpulan dari semua Prime Implicant
mendeterminasikan sets of reduct. Discernibility matrix modulo D pada tabel sebelumnya
dapat ditulis sebagai formula CNF seperti diperlihatkan pada tabel di bawah ini.
Class CNF of Boolean Function Prime Implicant Reducts
E1 c ^ a ^ (avb) ^ (avbvc) a^c {a,c}
E2 c ^ (avb) c(avb) {a,c},{b,c}
E3 a^(avbvc) A {a}
E4 (avb)^(avbvc) Avb {a},{b}
E5 (avbvc)^(avb) (avb) {a},{b}
35
Setelah dihasilkan reduct, maka langkah selanjutnya adalah menghasilkan rule yang ada
berdasarkan reduct tersebut.
Knowledge yang dihasilkan :
Reduct = (a, c) (Studies, Works)
- If studies = poor and works = poor then income = none
- If studies = poor and works = good then income = low
- If studies = moderate and works = poor then income = low
- If studies = good and works = good then income = medium or income = high
Salah satu aplikasi yang mengimplementasikan pemakaian algoritma Rough Set ini
adalah Rosetta.
Adapun cara penggunaannya adalah sebagai berikut.
1. Ketikkan data yang ada pada lembar kerja Microsoft Excel. Misalkan data yang
diketikkan adalah sebagai berikut.
Example Studies Education .... Works Income
E1 Poor SMU .... Poor None
36
2. Kemudian setelah itu jalankan progra aplikasi Rosetta. Maka akan dijumpai tampilan
berikut.
38
5. Selanjutnya klik kanan pada bagian Structures, lalu pilih ODBC. Maka akan muncul
tampilan berikut.
39
11. Berikan tanda check list pada semua pilihan atribut yang ada. Setelah itu klik tombol
OK. Maka Anda akan menjumpai hasil sebagai berikut.
12. Tampak pada gambar di atas bahwa telah muncul Book1 yang merupakan nama file
excel di mana kita mengetikkan data yang sebelumnya.
41
13. Setelah itu klik kanan pada Book1 dan pilih Reduce – Dynamic Reduct (RSES), maka
akan dijumpai tampilan berikut.
15. Klik kanan pada bagian No name lalu pilih Generating Rules. Maka akan diperoleh
hasil berikut.
42
16. Double Klick No name yang berwarna kuning, maka akan diperoleh hasil berikut.
Tugas :
Carilah aplikasi lain yang cara kerjanya menggunakan algoritma Rough Set.
43
Studi Kasus : Penerapan Algoritma Rough Set untuk Sistem Penilaian dan Analisis
Kinerja Dosen
Dalam rangka menilai dan menganalisis kinerja dosen didasarkan pada sejumlah
komponen penilaian seperti :
1. Proses belajar mengajar (Maks. 50%)
2. Bimbingan dan konsultasi (Maks. 20%)
3. Penelitian dan pengabdian pada masyarakat (Maks. 20%)
4. Tugas lain di luar tugas utama (Maks. 10%)
Adapun Total hasil penilaian kemudian dijadikan dalam bentuk kategori dengan
ketentuan :
<50 dikatakan Kurang = 1
51 ≤ X ≤ 70 dikategorikan Cukup = 2
71 ≤ X ≤ 80 dikategorikan Baik = 3
81 ≤ X ≤ 100 dikategorikan Sangat Baik = 4
Adapun data nama dosen dan nilai untuk masing – masing komponen penilaian adalah
seperti yang terlihat pada decision system berikut..
45
Sistem Pakar
Sistem pakar adalah program komputer yang didesain untuk meniru kemampuan
memecahkan masalah dari seorang pakar.
Menurut Martin dan Osman (1988), Sistem Pakar adalah sistem berbasis komputer yang
menggunakan pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah,
yang biasanya hanya dapat diselesaikan oleh seorang pakar dalam bidang tertentu.
Pakar adalah orang yang memiliki kemampuan atau mengerti dalam menghadapi suatu
masalah. Lewat pengalaman, seorang pakar mengembangkan kemampuan yang
membuatnya dapat memecahkan permasalahan dengan hasil yang baik dan efisien.
Untuk merancang sistem pakar, kita dapat menggunakan beberapa teknik AI, seperti :
1. Fuzzy Logic
2. Neural Network
3. Genetic Algorithm
4. Rule Base Expert System
5. Dan beberapa teknik lain seperti Rough Set, Apriori, dll
Untuk membangun sistem papar maka komponen – komponen yang harus dimiliki adalah
sebagai berikut.
51
Antar Muka
Pengguna
Keterangan :
1. Antar Muka Pengguna (User Interface)
User interface merupakan mekanisme yang digunakan oleh pengguna dan sistem
pakar untuk berkomunikasi, informasi yang diterima dari pemakai diubah ke dalam
bentuk yang dapat diterima oleh sistem dan menghasilkan pengetahuan yang
dimengerti oleh pemakai.
2. Basis Pengetahuan
Basis Pengetahuan mengandung pengetahuan untuk pemahaman, formulasi, dan
penyelesaian masalah, komponen ini disusun atas elemen dasar, yaitu fakta.
3. Mesin Inferensi
Mesin Inferensi adalah bagian yang mengandung mekanisme fungsi berfikir dan pola-
pola penalaran sistem yang digunakan oleh seorang pakar. Mekanisme ini akan
menganalisa suatu masalah tertentu dan selanjutnya akan mencari jawaban atau
kesimpulan yang terbaik. Mesin Inferensi disebut juga otak dari sistem pakar.
4. Memori Kerja
Merupakan bagian dari sistem pakar yang menyimpan fakta – fakta yang diperoleh
saat dilakukan proses konsultasi. Fakta – fakta inilah yang nantinya akan diolah oleh
mesin inferensi berdasarkan pengetahuan yang disimpan dalam basis pengetahuan
untuk menentukan suatu keputusan pemecahan masalah.
52
5. Fasilitas Penjelasan
Karena pemakai kadangkala bukanlah ahli dalam bidang tertentu, maka dibuatlah
fasilitas penjelasan. Fasilitas penjelasan ini penting untuk memberikan gambaran
mengenai bagaimana jalannya penalaran sehingga dihasilkan suatu keputusan.
6. Fasilitas Akuisisi Pengetahuan
Fasilitas akuisisi pengetahuan ini penting agar pengetahuan yang ada dapat
ditambahkan kapan saja ketika pengetahuan baru diperoleh atau saat pengetahuan
yang sudah ada tidak berlaku lagi.
If dan then part sendiri mempunyai 2 bagian yaitu Object dan value di mana antara object
dan value bisa dihubungkan oleh operator (is, are, is not, are not) atau mathematical
operator (>, >=, <, <=, =, ≠)
Contoh :
1. If the traffic light is green then the action is go
2. If the traffic light is red then the action is stop
Object :
- Traffic light
- Action
Value :
- Green
- Red
- Go
- Stop
53
Sebuah kaidah juga dapat memiliki multiple antecedent yang dihubungan oleh Keyword
And (Conjunction) dan Or (Disjunction) atau kombinasi dari keduanya.
Contoh :
1. If the season is autumn and the sky is cloudy then take an umbrella
2. If the car is dead and the fuel tanks is empty then refuel the car
IF step1 is complete
AND the ‘fuel tank’ is full
THEN the action is ‘check the battery’;
step2 is complete
4. Directive
Contoh :
IF the car is dead
54
Informasi masukan dapat berupa data, bukti, temuan, atau pengamatan. Sedangkan
konklusi dapat berupa tujuan, hipotesa, penjelasan, atau diagnosis.
55
Contoh :
If Lampu1 dinyalakan
And lampu1 tidak menyala
And lampu1 dihubungkan dengan sekring
And sekring masih bagus
Then Lampu1 rusak
Secara sederhana runut maju dapat diterangkan sebagai berikut, untuk kaidah di atas, agar
sistem pakar mencapai konklusi, maka harus disuplai terlebih dahulu dengan fakta berupa
lampu 1 tidak menyala, lampu1 sudah dihubungkan dengan sekring, dan sekring dalam
kondisi bagus; kemudian baru sistem bisa mengeluarkan konklusi bahwa lampu1 rusak.
Certainty Factor
Suatu kejadian di dunia nyata ini tidak selalu dapat dipastikan 100% bernilai benar atau
salah. Banyak sekali kejadian yang mengandung ketidakpastian, dalam bahasa sehari –
hari hal ini sering diungkapkan dengan istilah ”barangkali”, ”kemungkinan besar”,
”mungkin”, dan masih banyak istilah lain untuk mengungkapkan ketidakpastian. (Sri
Hartati:101).
Sampai saat ini 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:
1 if P(H) = 0
MD(H|E)= min[P(H|E), P(H)] - P(H) ................(3)
otherwise
- P(H)
dimana:
MB (H,E) = Ukuran kepercayaan (Measure of Increased Belief) terhadap
hipotesis H yang dipengaruhi oleh Evidence E
MD (H,E) = ukuran ketidakpercayaan (Measure of Increased Disbelief) terhadap
hipotesis H yang dipenaruhi oleh Evidence E
P(H) = probabilitas kebenaran hipotesa H
P(H|E) = probabilitas bahwa H benar karena fakta E
Kombinasi Aturan
Di dalam MYCIN terdapat aturan untuk menggabungkan evidence anteseden yang
terdapat dalam sebuah kaidah. Hal ini dapat dilihat pada tabel di bawah ini.
Evidence E Nilai Ketidakpastian
E1 and E2 Min [CF(H,E1), CF(H,E2)]
E1 or E2 Max [CF(H,E1),CF(H,E2)]
Not E` -CF(H,E)
Solat :
Berikut ini akan diberikan contoh untuk mengkombinasikan Suatu Rule :
E = (E1 and E2 and E3) or (E4 and Not E5)
Dengan nilai CF masing – masing adalah :
E1 = 0.9, E2 = 0.8, E3 = 0.3, E4 = -0.5, E5 = -0.4
58
Solat :
Jika diketahui kombinasi evidence :
E = (E1 or E2 or E3) and (E4 or E5)
Dengan nilai CF masing – masing adalah :
E1 = 0.9, E2 = 0.8, E3 = 0.3, E4 = -0.5, E5 = -0.4
Bentuk Dasar rumus Certainty Factor sebuah aturan dalam bentuk If E Then H
Bentuk dasar rumus certainty factor sebuah aturan dalam bentuk if E then H adalah
sebagai berikut (Giarattano dan Riley, 2005) :
Cf (H, e) = CF (E, e) * CF (H, E)
Di mana :
CF (E, e) adalah certainty factor evidence E yang dipengaruhi oleh evidence e
CF (H, E) adalah certainty factor hipotesis H dengan asumsi evidence diketahui dengan
pasti ketika CF (E, e) = 1
Cf (H, e) adalah certainty factor hipotesa yang dipengaruhi oleh evidence e
Solat :
Terdapat kaidah berikut :
IF (E1 or E2) and (E3 or E4) then H dengan CF = 0.73
Dengan CF untuk gejala E masing – masing adalah :
E1 = 0.57 E3 = 0.73
E2 = 0.68 E4 = 0.49
Kaidah dalam sebuah sistem pakar untuk hipotesa yang sama biasanya dapat terdiri dari
lebih dari sebuah kaidah dan terdiri dari beberapa premis yang dihubungkan dengan And
atau Or.
60
Formula CF untuk beberapa kaidah yang mengarah pada hipotesa yang sama dapat
dituliskan sebagai berikut.
Contoh :
R1 : If a and b then H ; CF = 0.6
R2 : If c or d then H ; CF = 0.7
Diketahui nilai :
CF (a) = 1.0 CF (c) = 0.6
CF (b) = 0.8 CF (d) = 0.9
Tentukanlah nilai CF Hipotesa H !
Jawab :
CF (R1) : min [CF(a), CF(b)] * CF (H)
= min [1.0, 0.8] * 0.6
= 0.8 * 0.6
= 0.48
Solat :
R1 : If a and b then H ; CF = 0.8
R2 : If c or d then H ; CF = 0.6
R3 : If (e and f) or (g and h) then H; CF = 0.75
Diketahui nilai :
CF (a) = 1.0 CF (c) = 0.6 CF(e) = 0.65 CF(g) = 0.8
CF (b) = 0.8 CF (d) = 0.9 CF(f) = 0.7 CF(h) = 0.8
Tentukanlah nilai CF Hipotesa H !
Di mana :
P(H | E) : Probabilitas Hipotesa H jika terdapat evidence E
P(E | H) : Probabilitas munculnya evidence E jika diketahui Hipotesa H
P(H) : Probabilitas Hipotesa H tanpa memandang evidence apapun
P(E) : Probabilitas evidence E
Solat :
Berdasarkan data yang dimiliki oleh suatu perguruan tinggi dari hasil test Penerimaan
Mahasiswa Baru (PMB) diketahui bahwa besarnya kemunkinan mahasiswa yang memilih
jurusan TI dengan nilai test logika baik adalah 0.75. Besarnya nilai probabilitas calon
mahasiswa memilih jurusan teknik informatika adalah 0.4. Nilai probabilitas test Logika
– Matematika baik tanpa memperhitungkan jurusan yang dipilih adalah 0.6. Carilah nilai
probabilitas calon mahasiswa nyang memiliki nilai test Logika – Matematika baik akan
memilih jurusan Teknik Informatika !
Diketahui :
62
H = Memilih Jurusan TI
E = Nilai test Logika
Jawab :
P (E | H) = P(Nilai Test Logika – Matematika Baik | Memilih Jurusan TI) = 0.75
P (E) = P(Nilai Test – logika matematika baik) = 0.60
P (H) = P(Memilih jurusan TI) = 0.40
Dicari :
P(H|E) = P(Memilih jurusan TI | Nilai Test Logika – Matematika baik) = ?
P(E | H )P(H )
P(H|E) = P(E )
0 . 75 * 0 . 40
= 0 . 60
= 0.50
Penyakit phimosis dan juga terdapat gejala iritasi bagian bawah kulit berjumlah 1% dari
total phimosis
Misal :
H = Phimosis
E1 = Kulit berminyak
E2 = Kulit mengelupas
E3 = Iritasi bagian bawah kulit
Jawab :
P(E1)= P(Kulit Berminyak)= 80 / 10000 = 0.008
P(E2)= P(Kulit Mengelupas) = 100 / 10000 = 0.01
P(E3)= P(Iritasi bagian bawah kulit)= 20 / 10000 = 0.002
P(H)= P(Phimosis) = 200 / 10000 = 0.02
P (E1|H) = P(Kulit Berminyak|Phimosis) = 0.16
P (E2|H) = P (Kulit Mengelupas | Phimosis) = 0.25
P (E3|H) = P (Iritasi Bagian Bawah Kulit | Phimosis) = 0.01
P ( E1 | H ) P ( H )
P(H|E1) = P ( E 1)
0 . 16 * 0 . 02
= 0 . 008
= 0.4
P(E 2 | H )P(H )
P(H|E2) = P ( E 2)
0 . 25 * 0 . 02
= 0 . 01
= 0.5
P(E 3 | H )P (H )
P(H|E3) = P ( E 3)
0 . 01 * 0 . 02
= 0 . 002
= 0.1
max[ P ( H | E 1), P ( H )] − P ( H )
MB (H|E1) = 1 − P(H )
64
max[ 0 . 4 , 0 . 02 ] − 0 . 02
= 1 − 0 . 02
0 . 4 − 0 . 02 0 . 38
= 0 . 98
= 0 . 98
= 0.39
min[ P ( H | E 1 ), P ( H )] − P ( H )
MD (H|E1) = − P(H )
max[ 0 . 4 , 0 . 02 ] − 0 . 02
= − 0 . 02
0 . 02 − 0 . 02 0
= − 0 . 02
= − 0 . 02
=0
max[ P ( H | E 2 ), P ( H )] − P ( H )
MB (H|E2) = 1 − P(H )
max[ 0 . 5 , 0 . 02 ] − 0 . 02
= 1 − 0 . 02
0 . 5 − 0 . 02 0 . 48
= 0 . 98
= 0 . 98
= 0.49
min[ P ( H | E 2 ), P ( H )] − P ( H )
MD (H|E1) = − P(H )
max[ 0 . 5 , 0 . 02 ] − 0 . 02
= − 0 . 02
0 . 02 − 0 . 02 0
= − 0 . 02
= − 0 . 02
=0
max[ P ( H | E 3 ), P ( H )] − P ( H )
MB (H|E3) = 1 − P(H )
max[ 0 . 1, 0 . 02 ] − 0 . 02
= 1 − 0 . 02
65
0 . 1 − 0 . 02 0 . 08
= 0 . 98
= 0 . 98
= 0.0816
min[ P ( H | E 3 ), P ( H )] − P ( H )
MD (H|E3) = − P(H )
max[ 0 . 5 , 0 . 02 ] − 0 . 02
= − 0 . 02
0 . 02 − 0 . 02 0
= − 0 . 02
= − 0 . 02
=0
Dengan demikian bahwa ketika sistem menyimpulkan bahwa bahwa penyakit yang
diderita pasien adalah Phimosis maka tingkat kepastiannya adalah sebesar : 0.715
Jawab :
CF (R) = max [E1, E2, E3] * CF(H)
= 0.49 * 0.715
= 0.35035
Solat :
Berdasarkan soal di atas jika misalnya :
Jika CF = 0 – 0.1 maka diberi obat A
Jika CF = >0.1 – 0.3 maka diberi obat B
Jika CF = >0.3 maka diberi obat C
Asumsikan nilai CF untuk gejala di atas adalah sebagai berikut. (Dalam kenyataannya
nilai CF gejala harus dihitung untuk masing – masing penyakit)
Cairan bercampur nanah 0.1
Sakit saat kencing 0.4
Panas saat kencing 0.5
Gatal saat kencing pada ujung testis 0.5
Berhubungan seks dengan wts beberapa hari yang lalu 0.2
Bercak kuning pada celana saat bangun tidur pagi 0.2
Sering kencing lebih dari 20 kali sehari 0.4.
Satu Transaksi” (Kusrini, 2007), Algoritma apriori termasuk jenis aturan assosiasi pada
data mining. Selain apriori yang termasuk pada golongan ini adalah metode Generalized
Rule Induction dan Algoritma Hash Based. Aturan yang menyatakan asosiasi antara
beberapa atribut sering disebut sebagai affinity analysis atau market basket analysis.
Dengan penerapan algoritma apriori pada penelitian ini diharapkan akan ditemukan pola
berupa produk yang sering dibeli bersamaan. Pola ini dapat digunakan untuk
menempatkan produk yang sering dibeli bersamaan ke dalam sebuah area yang saling
diberikan kepada pelanggan yang membeli produk tertentu), merancang penjualan paket,
Sementara itu penemuan pola merupakan keluaran lain dari data mining. Misalkan sebuah
perusahaan yang akan meningkatkan faslitas kartu kredit dari pelanggan, maka perusahaan akan
mencari pola dari pelanggan-pelanggan yang ada untuk mengetaui pelanggan yang potensial dan
pelanggan yang tidak potensial. Data mining bukanlah suatu bidang yang sama sekali baru. Salah
satu kesulitan untuk mendefinisikan data mining adalah kenyataan bahwa data mining mewarisi
banyak aspek dan teknik dari bidang-bidang ilmu yang sudah mapan terlebih dulu. Gambar 2.2 di
bawah ini menunjukkan bahwa data mining memiliki akar yang panjang dari bidang ilmu seperti
kecerdasan buatan (artificial intelligent), machine learning, statistik, database dan juga
information retrieval.
70
Pencarian
Informasi
Pembelajaran
Neural network, pohon
keputusan, fuzzy Pembelajaran
Neural network, pohon
keputusan, fuzzy
Database
Association Rule
Analisis asosiasi atau association rule mining adalah teknik data mining untuk
menemukan aturan assosiatif antara suatu kombinasi item. Contoh dari aturan assosiatif
dari analisa pembelian di suatu pasar swalayan adalah dapat diketahuinya berapa besar
pengetahuan tersebut pemilik pasar swalayan dapat mengatur penempatan barangnya atau
merancang kampanye pemasaran dengan memakai kupon diskon untuk kombinasi barang
tertentu.
71
Karena analisis asosiasi menjadi terkenal karena aplikasinya untuk menganalisa isi
keranjang belanja di pasar swalayan, analisis asosiasi juga sering disebut dengan istilah
Analisis asosiasi dikenal juga sebagai salah satu teknik data mining yang menjadi
dasar dari berbagai teknik data mining lainnya. Khususnya salah satu tahap dari analisis
asosiasi yang disebut analisis pola frequensi tinggi (frequent pattern mining) menarik
Penting tidaknya suatu aturan assosiatif dapat diketahui dengan dua parameter,
support (nilai penunjang) yaitu persentase kombinasi item tersebut dalam database dan
confidence (nilai kepastian) yaitu kuatnya hubungan antar item dalam aturan assosiatif.
Yang artinya : "50% dari transaksi di database yang memuat item roti dan mentega
juga memuat item susu. Sedangkan 40% dari seluruh transaksi yang ada di database
memuat ketiga item itu." Dapat juga diartikan : "Seorang konsumen yang membeli roti
dan mentega punya kemungkinan 50% untuk juga membeli susu. Aturan ini cukup
assosiatif yang memenuhi syarat minimum untuk support (minimum support) dan syarat
Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari nilai
support dalam database. Nilai support sebuah item diperoleh dengan rumus 1 berikut:
Sebagai contoh, ada database dari transaksi belanja pasar swalayan seperti
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
73
Transaction ID Items
1 Broccoli
1 Green Peppers
1 Corn
2 Asparagus
2 Squash
2 Corn
3 Corn
3 Tomatoes
: :
. .
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Dan bila kita bentuk dalam bentuk tabular, data transaksi akan tampak seperti pada
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
berada dalam I. Misalkan kita memiliki himpunan items A (misal Beans dan squash) dan
himpunan item lain B (misal asparagus). Kemudian aturan asosiasi akan berbentuk.
Jika A, maka B ( A → B )
merupakan mutually exclusive. Definisi ini tidak berlaku untuk aturan trivial seperti :
75
Seorang analis mungkin hanya akan mengambil aturan yang memiliki support
dan/atau confidence yang tinggi. Aturan yang kuat adalah aturan – aturan yang melebihi
Misalnya seorang analist menginginkan aturan yang memiliki support lebih dari 20
% dan confidence lebih dari 35 %. Sebuah itemset adalah himpunan item-item yang ada
dalam I, dan kitemset adalah itemset yang berisi k item. Misalnya {squash, beans) adalah
sebuah 2-itemset dan {broccoli, green peppers, corn) merupakan 3-itemset. Frequent
Itemset menunjukkan itemset yang memiliki frekuensi kemunculan lebih dari nilai
minimum yang telah ditentukan (ф). Misalkan ф = 4, maka semua itemset yang frekuensi
kemunculannya lebih dari 4 kali disebut frequent. Himpunan dari frequent k-itemset
Tabel 2.4 berikut ini menujukkan calon 2-itemset dari data transaksi pada tabel 2.1.
76
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk Mengelompokkan
Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Kombinasi dari itemset dalam F2 dapat kita gabungkan menjadi calon 3- itemset.
Itemset-itemset dari F2 yang dapat digabungkan adalah itemset – itemset yang memiliki
kesamaan dalam k-1 item pertama . Calon 3-itemset yang dapat dibentuk dari F2 seperti
Combination Count
Asparagus, Beans, Squash 4
Beans, Corn, Squash 2
Beans, Corn, Tomatoes 3
Beans, Squash, Tomatoes 2
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Dari F3 yang telah ditemukan, dapat dilihat besarnya nilai support dan confidence dari
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
Misalkan ditetapkan nilai confidence minimal adalah 80% maka aturan yang bisa
Sementara itu calon aturan asosiasi dari F2 bisa dilihat pada tabel 2.7 berikut:
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
79
dan aturan asosiasi final terurut berdasarkan Support x Confidence terbesar dapat
Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk Mengelompokkan
Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
SINTAK
- Memutuskan bagaimana kita dapat membangun kalimat dalam logika
- Menentukan symbol mana yang bisa kita gunakan dalam representasi
pengetahuan
- Bagaimana menulis symbol-symbol tersebut
SEMANTIK
- Semantik adalah aturan yang dapat menafsirkan kalimat dalam logika
- Dan memberi makna pada setiap kalimat
REPRESENTASI LOGIS
■ PENALARAN
– Deduktif ; penalaran umum menuju ke konklusi khusus
– Induktif ; dimulai dari masalah khusus menuju ke masalah umum
Penalaran Induktif
Premis : Aljabar adalah pelajaran yang sulit
Premis : Geometri adalah pelajaran yang sulit
Premis : Kalkulus adalah pelajaran yang sulit
Konklusi: Matematika adalah pelajaran yang sulit
LOGIKA PROPOSISI
■ Proposisi merupakan statemen atau pernyataan yang Contoh lain
menyatakan benar (TRUE) atau salah (FALSE)
■ Contoh
Diketahui proposisi sebagai berikut
P : Hari ini Hujan
Q : Murid-murid diliburkan dari sekolah
LOGIKA PREDIKAT
■ Disebut juga kalkulus predikat, memungkinkan memecahkan statement ke dalam
bagian komponen yang disebut obyek, karakteristik obyek atau beberapa keterangan
obyek.
■ Proposisi atau premis dibagi 2
– ARGUMEN (objek) ; individu atau obyek yang membuat keterangan
– PREDIKAT (keterangan) ; keterangan yang membuat argument dan predikat
Contoh lain :
1. Robert suka Julia
2. Pintu Tertutup
REPRESENTASI
JARINGAN
SEMANTIK
- Dapat merepresentasikan
pengetahuan dalam bentuk grafik
Contoh :
Statements
- Jacky is a cat
- Jacky is a mammal
- Jacky is owned by Nafa
- Jacky is brown colored
- All Mammals are animal
REPRESENTASI FRAME
Bingkai berupa ruang-ruang (slots) yang berisi
atribut untuk mendeskkripsikan pengetahuan.
Pengetahuan yang termuat dalam slot dapat
berupa kejadian, lokasi, situasi ataupun elemen
lainnya. Bingkai digunakan untuk
merepresentasikan pengetahuan deklaratif
(Giarrantano dan Riley, 1994)
Contoh :
- Jika (di stasiun dan kereta api tiba) MAKA Tindakan (masuk
ke kereta api)
- Jika bersin-bersin dan pusing MAKA terserang penyakit flu
BASIS PENGETAHUAN
(KNOWLEDGE BASE)
b. Penalaran berbasis kasus (case-
Ada 2 bentuk pendekatan basis pengetahuan :
based reasoning)
a. Penalaran berbasis aturan (rule-based reasoning)
Basis pengetahuan akan berisi
Pengetahuan direpresentasikan dengan menggunakan aturan
solusi-solusi yang telah dicapai
berbentuk IF-THEN. Bentuk ini digunakan apabila kita memiliki
sebelumnya, kemudian akan
sejumlah pengetahuan pakar pada suatu permasalahan
diturunkan suatu solusi untuk
tertentu, dan si pakar dapat menyelesaikan masalah tersebut
keadaan yang terjadi sekarang
secara berurutan. Disamping itu, bentuk ini juga digunakan
(fakta yang ada). Bentuk ini
apabila dibutuhkan penjelasan tentang jejak (langkah-langkah)
digunakan apabila user
pencapaian solusi.
menginginkan untuk tahu lebih
Contoh : aturan identifikasi hewan
banyak lagi pada kasus-kasus yang
Rule 1 : IF hewan berambut dan menyusui THEN hewan
hampir sama (mirip). Selain itu
mamalia
bentuk ini juga digunakan bila
Rule 2 : IF hewan mempunyai sayap dan bertelur THEN hewan
telah memiliki sejumlah situasi
jenis burung
atau kasus tertentu dalam basis
Rule 3 : IF hewan mamalia dan memakan daging THEN hewan
pengetahuan.
karnivora
Dst...
Sistem Berbasis Pengetahuan
Tristyanti Yusnitasari
Representasi Pengetahuan
Representasi pengetahuan merupakan hal
penting dalam SP karena:
• Shell SP didesign untuk type representasi
pengetahuan tertentu seperti baris dan logika
• Akan memberikan efek/akibat
pengembangan, efisiensi, kecepatan dan
perawatan system.
Pengetahuan (Knowledge) :
• Definisi umum : fakta atau kondisi sesuatu atau
keadaan yang timbul karena suatu pengalaman.
• Cabang ilmu filsafat, yaitu Epistemology,
berkenaan dengan sifat, struktur dan keaslian
dari knowledge.
PENGETAHUAN PRIORI
• Berasal dari bahasa Latin
• Berarti yang mendahului (pengetahuan datang
sebelum bertemu pengalaman dan bebas dari
arti)
• Pengetahuan yang tidak didasarkan
pengalaman
• “Semua bujangan belum menikah”
PENGETAHUAN POSTERIORI
• Knowledge yang diturunkan dari akal pikiran
yang sehat.
• Kebenaran atau kesalahan dapat dibuktikan
dengan menggunakan pengalaman akal sehat.
• Contoh : bola mata seseorang berwarna biru,
tetapi ketika orang tersebut mengganti
contact lens-nya, bisa jadi bola matanya
menjadi berwarna hijau.
Kategori Pengetahuan :
• Procedural Knowledge
Bagaimana melakukan sesuatu
• Declarative Knowledge
Mengetahui sesuatu itu benar atau salah
• Tacit Knowledge
Tidak dapat diungkapkan dengan bahasa
Meta
Knowledge
Knowledge
Informasi
Data
Noise
• Noise : data yang masih kabur
• Data : hal yang paling potensial
• Informasi : data yang telah diproses
• Knowledge : informasi yang sangat khusus
• Meta knowledge : knowledge dan keahlian
Aturan Produksi
• Logika
• Prosedural
• Network
• Terstruktur (Frame dan Script)
1. Aturan Produksi
• Sering digunakan untuk merepresentasikan
pengetahuan pada ES
• Bentuk formalnya Backus-Naus Form (BNF)
metalanguange untuk mendefinisikan
sintaks bahasa
suatu grammar haruslah lengkap dan
unambiguous set dari aturan produksi untuk
bahasa yang spesifik
parse tree adalah representasi grafis dari
kalimat pada suatu bahasa
deskripsi sintaks tersedia dalam bahasa
Contoh :
<sentence> ::= <subject> <verb> <end-mark>
dimana,
• < .. > dan ::= adalah symbol metalanguange.
• ::= artinya “ditentukan sebagai” yang dalam
BNF ekuivalen dengan .
• Term di dalam kurung disebut simbol
Nonterminal, yang masih bisa
direpresentasikan ke dalam bentuk lebih
sederhana lagi.
• Nonterminal yang tidak dapat disederhanakan
lagi disebut Terminal.
• Serangkaian terminal disebut string
• Kalimat valid : jika string didapatkan dari start
simbol dg menggantikan nonterminal dg baris
definisinya.
• Grammar : set/rangkaian baris produksi
lengkap yg menentukan suatu bahsa secara
tidak ambigius.
<sentence> <subject> <verb> <end-mark>
<subject> I | You | We
<verb> left | came
<end-mark> . | ? | !
Produksinya : ……
?????
• Grammar valid
Contoh :
<sentence><subject phrase><verb><object phrase>
<subject phrase><determiner><noun>
<object phrase><determiner><adjective><noun>
<determiner> a | an | the | this | these | those
<noun> man | eater
<verb> is | was
<adjective> dessert | heavy
Sister of
wife of wife of
Ann Bill Caroll David
husband of husband of
mother of father of
mother of father of
wife of
Susan husband of Tom
mother of father of
John
• Tipe link :
– IS-A (ISA) berarti “contoh dari” dan merupakan
anggota tertentu dari kelas.
– A KIND OF (AKO) berarti “jenis dari” dan
merelasikan antara suatu kelas dengan kelas
lainnya. AKO merelasikan kelas individu ke kelas
induk dari kelas-kelas dimana individu tersebut
merupakan kelas anak.
– HAS-A berarti “mempunyai” yang merelasikan
suatu kelas menjadi subkelas. HAS-A berlawanan
dengan AKO dan sering digunakan untuk
merelasikan suatu objek ke bagian dari objek.
Aircraft
AKO
AKO
Has
shape Proppe
round ballon ller jet
driven
AKO
AKO
AKO AKO AKO
Has
ellpsoi shape Concor
blimp special DC3 DC9
DC9
dal de
Wings
HAS
IS A
Canary Bird
TRAVEL
Fly
HAS BREATHE
IS A IS A IS A
Tweety Canary Bird Animal
IS A TRAVEL
Fly
Penguin
TRAVEL
Walk
• Operasi pada Jaringan Semantik
Kasus-1:
Bertanya pada “Bird” : “How do you Travel ?”
Jawab : “Fly”
Untuk menjawab, node tersebut akan
mengecek pada arc dengan label travel dan
kemudian menggunakann informasi (value)
yang ada pada arc tersebut sebagai
jawabannya.
How do you Travel ?
USER Bird
Fly
TRAVEL
Fly
Kasus-2:
Bertanya pada “Tweety” : “How do you Travel
?”
Jawab : “Fly”
Jika node tidak menemukan jawaban pada
local arc, maka akan mencari pada link dengan
hubungan “IS A” yang dimiliki node tersebut.
Fly
• Penanganan Pengecualian (Exception Handling)
Kasus-3:
Bertanya pada “Penguin” : “How do you Travel ?”
Jawab normal : “Fly”
Hal ini tidak sesuai dengan fakta sebenarnya
bhwa “Penguin” travel dengan cara “WALK”.
Maka untuk mengatasi kasus tersebut bisa
ditambahkan arc khusus pada node “Penguin”
untuk meng-over-ride informasi yang telah
diwariskan.
Pada proses over-ride, kita menambahkan arc atau
sifat yang sama dengan objek induk pada node,
tetapi dengan value atau karakteristik yang
berbeda.
Tristyanti Yusnitasari
Representasi Pengetahuan
Representasi pengetahuan merupakan hal
penting dalam SP karena:
• Shell SP didesign untuk type representasi
pengetahuan tertentu seperti baris dan logika
• Akan memberikan efek/akibat
pengembangan, efisiensi, kecepatan dan
perawatan system.
Pengetahuan (Knowledge) :
• Definisi umum : fakta atau kondisi sesuatu atau
keadaan yang timbul karena suatu pengalaman.
• Cabang ilmu filsafat, yaitu Epistemology,
berkenaan dengan sifat, struktur dan keaslian
dari knowledge.
PENGETAHUAN PRIORI
• Berasal dari bahasa Latin
• Berarti yang mendahului (pengetahuan datang
sebelum bertemu pengalaman dan bebas dari
arti)
• Pengetahuan yang tidak didasarkan
pengalaman
• “Semua bujangan belum menikah”
PENGETAHUAN POSTERIORI
• Knowledge yang diturunkan dari akal pikiran
yang sehat.
• Kebenaran atau kesalahan dapat dibuktikan
dengan menggunakan pengalaman akal sehat.
• Contoh : bola mata seseorang berwarna biru,
tetapi ketika orang tersebut mengganti
contact lens-nya, bisa jadi bola matanya
menjadi berwarna hijau.
Kategori Pengetahuan :
• Procedural Knowledge
Bagaimana melakukan sesuatu
• Declarative Knowledge
Mengetahui sesuatu itu benar atau salah
• Tacit Knowledge
Tidak dapat diungkapkan dengan bahasa
Meta
Knowledge
Knowledge
Informasi
Data
Noise
• Noise : data yang masih kabur
• Data : hal yang paling potensial
• Informasi : data yang telah diproses
• Knowledge : informasi yang sangat khusus
• Meta knowledge : knowledge dan keahlian
Aturan Produksi
• Logika
• Prosedural
• Network
• Terstruktur (Frame dan Script)
1. Aturan Produksi
• Sering digunakan untuk merepresentasikan
pengetahuan pada ES
• Bentuk formalnya Backus-Naus Form (BNF)
metalanguange untuk mendefinisikan
sintaks bahasa
suatu grammar haruslah lengkap dan
unambiguous set dari aturan produksi untuk
bahasa yang spesifik
parse tree adalah representasi grafis dari
kalimat pada suatu bahasa
deskripsi sintaks tersedia dalam bahasa
tidak semua kalimat adalah benar
Contoh :
<sentence> ::= <subject> <verb> <end-mark>
dimana,
• < .. > dan ::= adalah symbol metalanguange.
• ::= artinya “ditentukan sebagai” yang dalam
BNF ekuivalen dengan .
• Term di dalam kurung disebut simbol
Nonterminal, yang masih bisa
direpresentasikan ke dalam bentuk lebih
sederhana lagi.
• Nonterminal yang tidak dapat disederhanakan
lagi disebut Terminal.
• Serangkaian terminal disebut string
• Kalimat valid : jika string didapatkan dari start
simbol dg menggantikan nonterminal dg baris
definisinya.
• Grammar : set/rangkaian baris produksi
lengkap yg menentukan suatu bahsa secara
tidak ambigius.
<sentence> <subject> <verb> <end-mark>
<subject> I | You | We
<verb> left | came
<end-mark> . | ? | !
Produksinya : ……
I left.
You came?
We left ! dst…..
• Grammar valid
Contoh :
<sentence><subject phrase><verb><object phrase>
<subject phrase><determiner><noun>
<object phrase><determiner><adjective><noun>
<determiner> a | an | the | this | these | those
<noun> man | eater
<verb> is | was
<adjective> dessert | heavy
<sentence><subject phrase><verb><object
phrase>
<subject phrase><determiner><noun>
<determiner>the
<noun>man
<verb>was
<object
phrase><determiner><adjective><noun>
<determiner> a
<adjective> heavy
<noun> eater
Sentence
Sister of
wife of wife of
Ann Bill Caroll David
husband of husband of
mother of father of
mother of father of
wife of
Susan husband of Tom
mother of father of
John
• Tipe link :
– IS-A (ISA) berarti “contoh dari” dan merupakan
anggota tertentu dari kelas.
– A KIND OF (AKO) berarti “jenis dari” dan
merelasikan antara suatu kelas dengan kelas
lainnya. AKO merelasikan kelas individu ke kelas
induk dari kelas-kelas dimana individu tersebut
merupakan kelas anak.
– HAS-A berarti “mempunyai” yang merelasikan
suatu kelas menjadi subkelas. HAS-A berlawanan
dengan AKO dan sering digunakan untuk
merelasikan suatu objek ke bagian dari objek.
Aircraft
AKO
AKO
Has
shape Proppe
round ballon ller jet
driven
AKO
AKO
AKO AKO AKO
Has
ellpsoi shape Concor
blimp special DC3 DC9
DC9
dal de
Wings
HAS
IS A
Canary Bird
TRAVEL
Fly
HAS BREATHE
IS A IS A IS A
Tweety Canary Bird Animal
IS A TRAVEL
Fly
Penguin
TRAVEL
Walk
• Operasi pada Jaringan Semantik
Kasus-1:
Bertanya pada “Bird” : “How do you Travel ?”
Jawab : “Fly”
Untuk menjawab, node tersebut akan
mengecek pada arc dengan label travel dan
kemudian menggunakann informasi (value)
yang ada pada arc tersebut sebagai
jawabannya.
How do you Travel ?
USER Bird
Fly
TRAVEL
Fly
Kasus-2:
Bertanya pada “Tweety” : “How do you Travel
?”
Jawab : “Fly”
Jika node tidak menemukan jawaban pada
local arc, maka akan mencari pada link dengan
hubungan “IS A” yang dimiliki node tersebut.
Fly
• Penanganan Pengecualian (Exception Handling)
Kasus-3:
Bertanya pada “Penguin” : “How do you Travel ?”
Jawab normal : “Fly”
Hal ini tidak sesuai dengan fakta sebenarnya
bhwa “Penguin” travel dengan cara “WALK”.
Maka untuk mengatasi kasus tersebut bisa
ditambahkan arc khusus pada node “Penguin”
untuk meng-over-ride informasi yang telah
diwariskan.
Pada proses over-ride, kita menambahkan arc atau
sifat yang sama dengan objek induk pada node,
tetapi dengan value atau karakteristik yang
berbeda.
Socrates
Laki-laki
Makhluk Hidup
O Diagram Venn merepresentasikan
sebuah himpunan yang merupakan
kumpulan objek.
O Interseksi (Irisan) U
A C B
C=AB
C = {x U | (x A) (x B)}
Dimana : menyatakan irisan himpunan
| dibaca “sedemikian hingga”
operator logika AND
O Union (Gabungan)
U
A C B
C=AB
C = {x U | (x A) (x B)}
Dimana : menyatakan gabungan
himpunan
operator logika OR
O Komplemen
U
A’
A’ = {x U | ~(x A) }
Dimana : ’ menyatakan komplemen
himpunan
~ operator logika NOT
O Logika Proposisi
- Disebut juga kalkulus proposisi yang
merupakan logika simbolik untuk
memanipulasi proposisi.
- Proposisi merupakan pernytaan
yang dapat bernilai benar atau
salah.
- Operator logika yang digunakan :
Operator Fungsi
Konjungsi (AND/DAN)
Disjungsi (OR/ATAU)
~ Negasi (NOT/TIDAK)
Equivalensi/Bikondisional
(IF AND ONLY IF / JIKA DAN HANYA JIKA)
p q (pq) (qp)
- Kondisional merupakan operator yang analog
dengan production rule.
Contoh 1 :
“ Jika hujan turun sekarang maka saya tidak pergi
ke pasar”
T F
F T
O Logika Predikat
- Disebut juga kalkulus predikat,
merupakan logika yang digunakan
untuk merepresentasikan masalah yang
tidak dapat direpresentasikan dengan
menggunakan proposisi.
- Logika predikat dapat memberikan
representasi fakat-fakta sebagai suatu
pernyataan yang mapan (well form).
- Syarat-syarat symbol dalam logika predikat:
O himpunan huruf, baik huruf kecil maupun huruf besar dalam
abjad.
O Himpunan digit (angka) 0,1,2,…9
O Garis bawah “_”
O Symbol-simbol dalam logika predikat dimulai dengan sebuah
huruf dan diikuti oleh sembarang rangkaian karakter-karakter
yang diijinkan.
O Symbol-simbol logika predikat dapat merepresentasikan
variable, konstanta, fungsi atau predikat :
Konstanta : objek atau sifat dari semesta
pembicaraan. Penulisannya diawali dengan
huruf kecil, seperti : pohon, tinggi. Konstanta
true (benar) dan false (salah) adalah
symbol kebenaran (truth symbol).
O Universal Quantifier
- Menunjukkan semua kalimat adalah
benar untuk semua nilai variabelnya.
- Direpresentasikan dengan symbol diikuti
satu atau lebih argument untuk suatu
domain variable.
- Symbol diinterpretasikan “untuk setiap”
atau “untuk semua”.
- Contoh 1 :
(x) (x + x = 2x)
“untuk setiap x (dimana x adalah suatu
bilangan), kalimat x + x = 2x adalah
benar.”
- Contoh 2 :
(x) (p) (Jika x adalah seekor
kucing x adalah binatang)
Kebalikan kalimat “bukan kucing adalah
binatang” ditulis :
(x) (p) (Jika x adalah seekor kucing ~x
adalah binatang)
dan dibaca :
- “setiap kucing adalah bukan binatang”
-“semua kucing adalah bukan binatang”
- Contoh 3:
(x) (Jika x adalah segitiga x adalah
polygon)
Dibaca : “untuk semua x, jika x adalah
segitiga, maka x adalah polygon”
dapat pula ditulis :
(x) (segitiga(x) polygon(x))
(x) (T(x) P(x))
- Contoh 4 :
(x) (H(x) M(x))
Dibaca : “untuk semua x, jika x adalah
manusia (human) , maka x melahirkan
(mortal)”.
Ditulis dalam aturan :
IF x adalah manusia
THEN x melahirkan
Digambar dalam jaringan semantic :
Human Mortal
O Exixtensial Quantifier
- Menunjukkan semua kalimat adalah benar
untuk suatu nilai tertentu dalam sebuah
domain.
- Direpresentasikan dengan symbol diikuti
satu atau lebih argument.
- Symbol diinterpretasikan “terdapat” atau
“ada”, “paling sedikit satu”, “terdapat
satu”, “beberapa”.
- Contoh 1 :
(x) (x . x = 1)
Dibaca : “terdapat x yang bila dikalikan
dengan dirinya sendiri hasilnya sama
dengan 1.”
Contoh 2 :
(x) (gajah(x) nama(Clyde))
Dibaca : “beberapa gajah bernama Clyde”.
- Contoh 3 :
(x) (gajah(x) berkaki empat(x))
Dibaca : “semua gajah berkaki empat”.
Universal quantifier dapat diekspresikan
sebagai konjungsi.
(x) (gajah(x) berkaki tiga(x))
Dibaca : “ada gajah yang berkaki tiga”
Existensial quantifier dapat diekspresikan
sebagai disjungsi dari urutan ai. P(a1) P(a2)
P(a3) … P(aN)
O Quantifier dan Sets
Set
Logical Equivalent
Expression
A=B x (x A x B)
AB x (x A x B)
AB x (x A x B)
AB x (x A x B)
(universe) T (True)
(empty set) F (False)
Himpunan Logika
S1 Sistem Informasi
1
PENGENALAN SISTEM PAKAR
(1)
2
Evolusi CBIS (Computer Based
Information System)
Electronic Data Processing (EDP)
Accounting Information System (AIS)
Management Information System (MIS)
Decission Support System (DSS)
Office Automation (OA)
Artificial Intelligence (AI) dan Expert System
(ES)
3
Sistem Pakar (Expert System)
Sering disebut juga sebagai Sistem Berbasis
Pengetahuan (Knowledge Based System)
Program sebagai penasehat/konsultan pakar
Dapat mengumpulkan dan menyimpan
pengetahuan seorang/beberapa orang pakar
ke dalam komputer.
4
Sistem Pakar (Expert System)
Tidak untuk menggantikan kedudukan
seorang pakar tetapi untuk
memasyarakatkan pengetahuan dan
pengalaman pakar tersebut
Memungkinkan orang lain meningkatkan
produktivitas, memperbaiki kualitas
keputusan
5
Sistem Pakar
6
Bagian Utama
Basis Pengetahuan (Knowledge Base)
Berisi semua fakta-fakta, ide, hubungan, aturan dari
domain permasalahannya
Mesin Inferensi (Inference Engine)
Kemampuan menganalisa pengetahuan dan menarik
kesimpulan berdasarkan knowledge base dan aturan
User Interface
- Interaksi dengan user
- Membangun dan memelihara basis pengetahuan
7
PENGENALAN SISTEM PAKAR
(2)
8
Konsep Umum Sistem Pakar
Knowledge acquisition
transfer knowledge dari manusia atau sumber lainnya ke
komputer
Knowledge representation
Penyimpanan dan pemrosesan pengetahuan dalam
komputer
Inference
Mekanisme pengambilan kesimpulan dari pengetahuan
dalam komputer
Explanation
Menjelaskan kepada user apa dan bagaimana solusi
yang dihasilkan 9
Tahap Pengembangan Sistem
Pakar
10
Tahap Pengembangan Sistem
Pakar
Proses pembuatan SP knowledge
engineering yang dilakukan oleh knowledge
engineer. Selain itu domain expert dan end
user
Tugas knowledge engineer adalah memilih
S/W & H/W untuk pembuatan SP, membantu
mengambil pengetahuan yang dibutuhkan
dari pakar domain, serta implementasi
pengetahuan pada basis pengetahuan yang
benar & efisien. 11
Tahap Pengembangan Sistem
Pakar
Tugas pakar domain: menyediakan
pengetahuan tentang bidang problem yang
dihadapi, memahami teknik-teknik
pemecahan problem yang dipakai
12
Rules and Humans (1)
Aturan dapat digunakan untuk memformulasikan teori
human information processing (Newell & Simon)
- aturan disimpan dalam memori jangka panjang
- pengetahuan sementara diletakkan di memori jangka
pendek
- input sensor atau berpikir memicu aktifasi dari
aturan-aturan
- aturan yang telah diaktifkan mungkin memicu aktifasi
berikutnya
- pengolahan kognitif mengkombinasikan bukti-bukti dari
aturan-aturan yang sedang diaktifkan 13
Rules and Humans (2)
Model ini adalah dasar dari desain sistem
berbasis aturan (rule-based systems)
- disebut juga production systems
14
Pengembangan Teknologi
Sistem Pakar
Sangat dipengaruhi oleh pengetahuan kognitif
dan matematika
- Cara manusia memecahkan masalah
- Dasar formal, terutama logika dan inferensi
Aturan produksi sebagai mekanisme
representasi
- Tipe aturan IF .... THEN
- Mirip dengan cara manusia memberi alasan
- Bisa dimanipulasi oleh komputer
15
Beberapa Sistem Pakar
Terkenal (1)
MYCIN
- Dirancang oleh Edward Feigenbaum
(Universitas Stanford) th ‘70an
- dapat mendiagnosa infeksi bakteri &
rekomendasi pengobatan antibiotik
DENDRAL
- identifikasi unsur bahan kimia (molekular
& kimia)
16
Beberapa Sistem Pakar
Terkenal (2)
XCON/R1
- Konfigurasi sistem komputer dasar
- dikembangkan oleh Digital Equipment
Corporation (DEC) dan Carnegie Mellon
University (CMU), akhir ‘70an
- untuk sistem komputer DEC VAC 111780
17
Beberapa Sistem Pakar
Terkenal (3)
PROSPECTOR
- Membantu ahli geologi yang mencari & menemukan
biji deposit (mineral & batu- batuan)
- didesain oleh Sheffield Research Institute, akhir ‘70an
YESMVS
- didesain oleh IBM awal tahun ‘80an
- membantu operator komputer & mengontrol sistem
operasi MVS (Multiple Virtual Storage)
18
Beberapa Sistem Pakar
Terkenal (4)
ACE
- didesain & dikembangkan oleh AT&T Bell
Lab awal tahun ‘80an
- troubleshooting pada sistem kabel telepon
DELTA
- Didisain & dikembangkan oleh General Electric
Company
- SP personal maintenance dengan mesin
lokomotif listrik diesel. 19
Kunci Sukses Sistem Pakar (1)
Konsentrasi pada domain
pengetahuan
Meyakinkan gagasan
- Aturan-aturan, model-model kognitif
Aplikasi-aplikasi praktis
- Obat-obatan, teknologi komputer
20
Kunci Sukses Sistem Pakar (2)
Pemisahan Pengetahuan (knowledge) dan
kesimpulan (inference)
- expert system shell
memungkinkan penggunaan kembali
‘permesinan’untuk domain yang berbeda
21
Kategori Problem Sistem
Pakar (1)
Interpretasi – membuat kesimpulan atau
deskripsi dari sekumpulan data mentah
Prediksi – memproyeksikan akibat-akibat
yang dimungkinkan dari situasi-situasi
tertentu
Diagnosis – menentukan sebab malfungsi
dalam situasi kompleks yang didasarkan
pada gejala-gejala yang teramati
22
Kategori Problem Sistem
Pakar (2)
Desain – menentukan konfigurasi komponen-
komponen sistem yang cocok dengan tujuan-
tujuan kinerja tertentu yang memenuhi
kendala-kendala tertentu
Perencanaan – merencanakan serangkaian
tindakan yang akan dapat mencapai
sejumlah tujuan dengan kondisi awal
tertentu.
23
Kategori Problem Sistem
Pakar (3)
Debugging dan Repair – menentukan dan
menginterpretasikan cara-cara untuk
mengatasi malfungsi
Instruksi – mendeteksi dan mengoreksi
defisiensi dalam pemahaman domain subyek
Pengendalian – mengatur tingkah laku suatu
environment yang kompleks
Selection – mengidentifikasi pilihan terbaik
dari sekumpulan (list) kemungkinan
24
Kategori Problem Sistem
Pakar (4)
Simulation – pemodelan interaksi antara
komponen-komponen sistem
Monitoring – membandingkan hasil
pengamatan dengan kondisi yang diharapkan
25
Kapan Menggunakan SP
Sistem Pakar tidak dapat diterapkan untuk
semua tipe domain dan tugas sbb:
Algoritma konvensionalnya diketahui dan efisien
Tantangan utamanya adalah komputasi, bukan
knowledge
Knowledge tidak dapat diperoleh secara mudah
User mungkin segan untuk menerapkan sistem
pakar untuk tugas-tugas kritis
26
Tool Sistem Pakar
Languages
- higher-level languages didesain khusus
untuk merepresentasikan knowledge dan
alasan
- PROLOG, LISP, CLIPs, SAIL, KRL, KQML
Shells
- Sebuah tools dengan tujuan khusus didesain
untuk tipe aplikasi tertentu dimana user hanya
mensuplai basis pengetahuan.
27
Elemen Sistem Pakar
Knowledge base
Inference engine
Working memory
Agenda
Explanation facility
Knowledge acquisition facility
User interface
28
Struktur Sistem Pakar (1)
29
Struktur Sistem Pakar (2)
Knowledge acquisition facility
Pengetahuan dapat diperoleh dari seorang
pakar, buku teks (textbooks) atau laporan
penelitian, dengan dukungan dari seorang
knowledge engineer (seorang pakar yang
memiliki spesialisasi dalam akuisisi
pengetahuan).
Knowledge base
2 jenis knowledge base adalah fakta (yaitu
situasi dan teori) dan heuristics atau rule-rule.
30
Struktur Sistem Pakar (3)
Inference engine
Adalah otak dari suatu Sistem Pakar, bisa juga
disebut dengan struktur kontrol (control
structure) atau penerjemah rule ( rule interpreter
dalam Rule-Based Systems). Program komputer
yang memiliki metodologi untuk melakukan
reasoning (pertimbangan) mengenai informasi
yang tersimpan dalam knowledge base dan
dalam “working memory”, dan ia digunakan
untuk memformulasikan konklusi.
31
Struktur Sistem Pakar (4)
3 elemen utama inference engine adalah:
Interpreter (rule interpreter dalam kebanyakan sistem),
yang mengeksekusi item agenda yang dipilih dengan
mengaplikasikannya pada knowledge base rule yang
berhubungan.
Scheduler, yang menjaga kontrol di sepanjang agenda.
Memperkirakan akibat dari pengaplikasian rule
inferensia yang menampakkan prioritas item atau kriteria
lain pada agenda.
Consistency enforce, yang mencoba menjaga
konsistensi representasi solusi yang muncul.
32
Struktur Sistem Pakar (5)
Working Memory
Ia adalah tempat menyimpan sementara
untuk memproses rencana (plan), agenda,
solusi, dan deskripsi masalah yang didapat
dari knowledge base selama sesi konsultasi.
33
Struktur Sistem Pakar (6)
User interface
Sistem Pakar haruslah user friendly dan
berorientasi pada masalah dalam hal
antarmukanya.
Knowledge refining system (IA & KB)
Dengan komponen ini, pakar mampu untuk
menganalisis kinerja dari Sistem Pakar,
belajar daripadanya, dan meningkatkannya
pada konsultasi selanjutnya.
34
Struktur Sistem Pakar (7)
Explanation facility. Ini adalah
kemampuan penelusuran kebenaran dari
konklusi yang didapat dari sumber-
sumbernya. Hal ini krusial untuk
transformasi kepakaran dan penyelesaian
masalah. Komponen ini mampu
menelusuri kebenaran dan untuk
menerangkan perilaku Sistem Pakar
secara interaktif
35
Struktur Sistem Pakar (8)
Explanation facility (lanjut)
merupakan subsistem Sistem Pakar yang
menjawab pertanyaan seperti:
- Mengapa pertanyaan tertentu ditanyakan oleh Sistem
Pakar?
- Bagaimana konklusi tertentu dicapai?
- Mengapa alternatif tertentu ditolak?
- Rencana apakah yang ada untuk mencapai solusi?
- Dan apa-apa saja selanjutnya yang harus dilakukan
sebelum diagnosis final dapat ditentukan?
36
Elemen Manusia Dalam Sistem
Pakar (1)
Orang-orang yang terlibat dalam
pengembangan dan penggunaan Sistem
Pakar:
Pakar.
Knowledge Engineer
User
43
Sistem Pakar Berbasis Aturan
(Rule)
Pengetahuan dikodekan menjadi aturan IF ...
THEN
Motor inferensi menentukan mana aturan
yang terpenuhi lebih dahulu
- sisi kiri harus cocok dengan fakta di dalam
memori kerja
Aturan yang terpenuhi ditempatkan pada
agenda
44
Sistem Pakar Berbasis Aturan
(Rule)
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
45
Contoh Aturan
46
MYCIN Sample Rule
48
Inference Engine Cycle (2)
Match
Perbaharui agenda
Menambah rule-rule yang antecedentnya sesuai
dengan agenda
Menghapus rule dengan non-satisfied agenda
Siklus berhenti ketika tidak ada rules pada
agenda atau ketika perintah berhenti
ditemukan
49
Metode Aktifasi Rules
Forward Chaining
Backward Chaining
50
Forward Chaining
Forward chaining (data-driven)
Reasoning/pertimbangan dimulai dari fakta-fakta
menuju kesimpulan/konklusi
Saat/begitu fakta-fakta tersedia, mereka digunakan
untuk mencocokkan antecedents dari rule-rule
Sebuah rule dapat diaktifkan jika semua bagian
antecedent/yang mendahului terpenuhi
Sering digunakan untuk real-time expert system
monitoring dan control
Examples: CLIPS, OPS5
51
Backward Chaining
Backward chaining (query-driven)
Berawal dari sebuah hipotesa (permintaan),
aturan dan fakta yang mendukung dicari sampai
seluruh bagian antecedent dari hipotesa
terpenuhi
Sering digunakan dalam sistem diagnosa dan
konsultasi
Example : EMYCIN
52
Dasar Sistem Pakar
53
Post Production Systems
Production rules (aturan produksi) digunakan
oleh logikawan Emil L. Post pada awal tahun
40-an dalam logika simbolik
Hasil teori Post
Setiap sistem dalam matematika atau logika
dapat ditulis sebagai sebuah sistem produksi
54
Post Production Systems
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
Sintaks manipulasi string yang sederhana
Tidak diperlukan pemahaman atau interpretasi
Juga digunakan untuk mendefinisikan grammars dari
bahasa
Contoh BNF grammars dari bahasa pemrograman
55
Markov Algorithms
Tahun 1950an, A.A. Markov
memperkenalkan prioritas sebagai struktur
control untuk sistem produksi
Rule dengan prioritas lebih tinggi dilakukan lebih
dahulu
Mengijinkan eksekusi sistem produksi lebih
efisien
Tetapi masih tidak cukup efisien untuk Sistem
Pakar dengan kumpulan rule yang besar
56
Rete Algorithm
Dikembangkan oleh Charles L. Forgy pada
tahun 70an untuk CMU’s OPS (Official
Production System) shell
Menyimpan informasi tentang antecedent dalam
sebuah jaringan
Di setiap cyclenya, ia hanya mengecek
perubahan dalam jaringan
Ini merupakan peningkatan efisiensi yang besar
57
Keuntungan Sistem Pakar (1)
Meningkatkan output dan produktivitas.
Meningkatkan kualitas.
Mengurangi waktu kerusakan (downtime).
Mengatasi kelangkaan kepakaran
Fleksibilitas
Pengoperasian peralatan lebih mudah.
Menghilangkan kebutuhan akan peralatan yang mahal
Operasi pada lingkungan yang membahayakan
Akses ke pengetahuan (knowledge) dan help desk
(sistem bantuan).
58
Keuntungan Sistem Pakar (2)
Meningkatkan kemampuan berbagai sistem
terkomputerisasi lainnya.
Integrasi dari berbagai opini para pakar.
Kemampuan bekerja dengan informasi yang tidak
komplit dan tak pasti
Penyediaan pelatihan (training)
Peningkatan dalam hal penyelesaian masalah.
Kemampuan menyelesaikan masalah yang kompleks.
Transfer pengetahuan ke lokasi yang berbeda.
Peningkatan kepada Sistem Informasi Berbasis
Komputer lainnya.
59
Permasalahan Dan
Keterbatasan Sistem Pakar (1)
Pengetahuan tidak selalu tersedia
Kepakaran sulit diekstraksi dari manusia
Pendekatan untuk setiap pakar pada situasi tertentu
selalu berbeda, dan tidak selalu benar.
Walaupun pakar tersebut memiliki ketrampilan yang
tinggi, sukar untuk mengabstraksikan kepakarannya
pada situasi tertentu, apalagi pakar tersebut bekerja di
bawah tekanan.
User dari Sistem Pakar memiliki batasan kognitif
alamiah.
Sistem Pakar bekerja baik hanya pada domain yang
terbatas/sempit.
60
Permasalahan Dan
Keterbatasan Sistem Pakar (2)
Kebanyakan pakar tidak memiliki rasa pengertian pengecekan yang
independen walaupun konklusi mereka masuk akal.
Kosa kata atau jargon yang digunakan pakar untuk
mengekspresikan fakta dan relasinya biasanya jarang digunakan
dan dimengerti oleh orang lain.
Help seringkali dibutuhkan oleh knowledge engineer yang biasanya
jarang tersedia dan mahal biayanya – sebuah fakta yang dapat
membuat pembangunan Sistem Pakar lebih banyak memakan
biaya.
Kendala kepercayaan pada end-user bisa menghalangi
penggunaan Sistem Pakar.
Transfer pengetahuan bergantung pada persepsi dan bisa bias
dalam prasangka.
61
Pengantar Kecerdasan Buatan (AK045218)
Logika Fuzzy
Pendahuluan
Alasan digunakannya Logika Fuzzy
Aplikasi
Himpunan Fuzzy
Fungsi keanggotaan
Operator Dasar Zadeh
Penalaran Monoton
Fungsi Impilkasi
Sistem Inferensi Fuzzy
Basis Data Fuzzy
Referensi
Sri Kusumadewi – bab 7
Pendahuluan
• Logika fuzzy adalah suatu cara
yang tepat untuk memetakan
suatu ruang input ke dalam suatu
ruang output.
• Contoh:
1. Manajer pergudangan mengata-
kan pada manajer produksi
seberapa banyak persediaan
barang pada akhir minggu ini,
kemudian manajer produksi akan
menetapkan jumlah barang yang
harus diproduksi esok hari
Kotak
Persediaan Persediaan
Persediaan
barang
Hitam Persediaan
barangakhir
akhir barang
barangesok
esok
Alasan Digunakannya
Logika Fuzzy
1. Konsep logika fuzzy mudah
dimengerti. Konsep
matematis yang mendasari
penalaran fuzzy sangat
sederhana dan mudah
dimengerti
2. Logika fuzzy sangat fleksibel
3. Logika fuzzy memiliki
toleransi terhadap data-data
yang tidak tepat
Logika Fuzzy 5/28
Pengantar Kecerdasan Buatan (AK045218)
APLIKASI
1. Pada tahun 1990 pertama
kali dibuat mesin cuci dengan
logika fuzzy di Jepang
(Matsushita Electric Industrial
Company). Sistem fuzzy
digunakan untuk menentukan
putaran yang tepat secara
otomatis berdasarkan jenis
dan banyaknya kotoran serta
jumlah yang akan dicuci.
2. Transmisi otomatis pada
mobil.
Himpunan Fuzzy
Pada himpunan tegas (crisp),
nilai keanggotan suatu item x
dalam suatu himpunan A yang
sering ditulis dengan µA[x],
memiliki 2 kemungkinan yaitu :
• Satu (1), yang berarti bahwa
suatu item menjadi anggota
dalam suatu himpunan, atau
• Nol (0), yang berarti bahwa
suatu item tidak menjadi
anggota dalam suatu
himpunan
• Contoh 1:
Jika diketahui :
S = [1, 2, 3, 4, 5, 6] adalah semesta
pembicaraan
A = [1, 2, 3]
B = [3, 4, 5]
Maka dapat dikatakan :
Nilai keanggotaan 2 pada
himpunan A, µA[2] = 1, karena 2 є A
Nilai keanggotaan 4 pada
himpunan A, µA[4] = 0, karena 4
• Contoh 2 :
Misalkan variabel umur dibagi 3
kategori, yaitu :
FUNGSI
KEANGGOTAAN
• Fungsi keanggotaan adalah
suatu kurva yang menunjukan
pemetaan titik-titik input data
ke dalam nilai keanggotaannya
(derajat keanggotaan) yang
memiliki interval antara 0
sampai 1
• Ada beberapa fungsi yang bisa
digunakan :
a. Representasi Linear
Ada 2 kemungkinan himpunan fuzzy
linear yaitu
1. Kenaikan himpunan dimulai pada nilai
domain yang memiliki derajat
keanggotaan nol [0] bergerak ke kanan
menuju nilai domain yang memiliki
derajat keanggotaan lebih tinggi
Fungsi Keanggotaan :
0; x≤ a
µ[x] = (x-a)/(b – a) ; a≤x≤b
1; x≥b
Fungsi Keanggotaan :
(x-a)/(b – a) ; a ≤ x ≤ b
µ[x] =
0; x≥b
• Operator NOT
Operator ini berhubungan dengan
operasi komplemen himpunan.
α-predikat sebagai hasil operasi
dengan operator AND diperoleh
dengan mengambil nilai
keanggotaan terkecil antar elemen
pada himpunan-himpunan yang
bersangkutan
µA’ = 1-µA[x]
PENALARAN MONOTON
• Metode ini digunakan sebagai
dasar untuk teknik implikasi fuzzy.
Jika 2 daerah fuzzy direalisasikan
dengan implikasi sederhana
sebagai berikut :
IF x is A THEN y is B
transfer fungsi :
Y = f ((x, A), B)
maka sistem fuzzy dapat berjalan
tanpa harus melalui komposisi dan
dekomposisi fuzzy. Nilai output
dapat di estimasi secara langsung
dari nilai keanggotaan yang
berhubungan dengan
antesedennya.
Logika Fuzzy 20/28
Pengantar Kecerdasan Buatan (AK045218)
FUNGSI IMPLIKASI
• Bentuk umum aturan yang
digunakan dalam fungsi implikasi :
IF x is A THEN y is B
dengan x dan y adalah skalar, A
dan B adalah himpunan fuzzy.
Proposisi yang mengikuti IF
disebut anteseden, sedangkan
proposisi yang mengikuti THEN
disebut konsekuen.
• Secara umum, ada dua fungsi
implikasi, yaitu :
1. Min (minimum), fungsi ini akan
memotong output himpunan fuzzy
2. Dot (product), fungsi ini akan
menskala output himpunan fuzzy
SISTEM INFERENSI
FUZZY
• Metode Tsukamoto
Setiap konsekuen pada aturan
yang berbentu IF-THEN harus
direpresentasikan dengan suatu
himpunan fuzzy dengan fungsi
keanggotaan yang monoton.
Sebagai hasilnya, output hasil
inferensi dari tiap-tiap aturan
diberikan secara tegas
berdasarkan α-predikat. Hasil
akhirnya diperoleh dengan
menggunakan rata-rata terbobot
• Metode Mamdani
Sering dikenal dengan nama
Metode Max-Min. Metode ini
diperkenalkan oleh Ebrahim
Mamdani pada tahun 1975.
Untuk mendapatkan output
diperlukan 4 tahapan :
1. Pembentukan himpunan fuzzy
¾ Variabel input maupun output
dibagi menjadi satu atau lebih
himpunan
2. Aplikasi fungsi implikasi
¾ Fungsi implikasi yang digunakan
adalah Min
3. Komposisi aturan
¾ Ada tiga metode yang digunakan
dalam melakukan inferensi sisten
fuzzy :
a. Metode Max
b. Metode Additive (SUM)
c. Metode Probabilistik OR
4. Penegasan (defuzzy)
¾ Input dari defuzzifikasi adalah
suatu himpunan yang diperoleh
dari komposisi aturan-aturan
fuzzy, sedangkan output yang
dihasilkan merupakan suatu
bilangan pada domain himpunan
fuzzy tersebut.
• Metode Sugeno
Penalaran ini hampir sama
dengan penalaran Mamdani,
hanya saja output (konsekuen)
sistem tidak berupa himpunan
fuzzy, melainkan berupa
konstanta atau persamaan linear.
a. Model Fuzzy Sugeno Orde-Nol
Bentuk Umum :
IF (X1 is A1) y (X2is A2) y (X3is A3)
y …. y (XNis AN) THEN z = k
dengan Ai adalah himpunan fuzzy
ke-I sebagai anteseden, dan k
adalah konstanta (tegas) sebagai
konsekuen
Logika Fuzzy 26/28
Pengantar Kecerdasan Buatan (AK045218)
BASIS DATA
• Sebagian besar basis data standar
diklasifikasikan berdasarkan
bagaimana data tersebut
dipandang oleh user dan
menggunakan query untuk mencari
data yang diinginkan. Namun
terkadang dibutuhkan suatu data
yang bersifat ambiguous, maka
digunakan basis data fuzzy. Salah
satu diantaranya adalah model
Tahani. Basisdata fuzzy model
Tahani masih tetap menggunakan
relasi standar, hanya saja model ini
menggunakan teori himpunan
fuzzy untuk mendapatkan informasi
pada query-nya.