Anda di halaman 1dari 444

Pengantar Kecerdasan Buatan (AK045218)

Teknik Pencarian
Heuristik

Generate and Test


Hill Climbing
Best First Search
Problem Reduction
Constraint Satisfaction
Means End Analysis

Referensi
Sri Kusumadewi - bab 2
Rich & Knight – bab 3

Teknik Pencarian Heuristik 1/25


Pengantar Kecerdasan Buatan (AK045218)

Pencarian Heuristik (Heuristic Search)


• Heuristik adalah sebuah teknik yang
mengembangkan efisiensi dalam proses
pencarian, namum dengan kemungkinan
mengorbankan kelengkapan
(completeness).

• Fungsi heuristik digunakan untuk


mengevaluasi keadaan-keadaan
problema individual dan menentukan
seberapa jauh hal tersebut dapat
digunakan untuk mendapatkan solusi
yang diinginkan.

• Jenis-jenis Heuristic Searching:


– Generate and Test.
– Hill Climbing.
– Best First Search.
– Alpha Beta Prunning,Means-End-
Anlysis,Constraint Satisfaction, Simulated
Annealing, dll

Teknik Pencarian Heuristik 2/25


Pengantar Kecerdasan Buatan (AK045218)

PEMBANGKITAN dan PENGUJIAN


(Generate and Test)
Metode ini merupakan penggabungan antara depth-first
search dengan pelacakan mundur (backtracking), yaitu
bergerak ke belakang menuju pada suatu keadaan
awal.

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.

Contoh : “Travelling Salesman Problem (TSP)”


• Seorang salesman ingin mengunjungi n kota. Jarak
antara tiap-tiap kota sudah diketahui. Kita ingin
mengetahui ruter terpendek dimana setaip kota hanya
boleh dikkunjungi tepat 1 kali. Misalkan ada 4 kota
dengan jarak antara tiap-tiap kota seperti berikut ini :

Teknik Pencarian Heuristik 3/25


Pengantar Kecerdasan Buatan (AK045218)

Penyelesaian dengan metode Generate and Test

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

Alur pencarian dengan Generate and Test

Lintasan Panjang Lintasan Panjang


Pencarian Lintasa Terpilih Lintasa
ke- n n
Terpilih
1 ABCD 19 ABCD 19
2 ABDC 18 ABDC 18
3 ACBD 12 ACBD 12
4 ACDB 13 ACBD 12
5 ADBC 16 ACBD 12
Dst…

Teknik Pencarian Heuristik 4/25


Pengantar Kecerdasan Buatan (AK045218)

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.

Algoritma Simple Hill Climbing


1. Cari operator yang belum pernah digunakan; gunakan
operator ini untuk mendapatkan keadaan yang baru.
a) Kerjakan langkah-langkah berikut sampai solusinya
ditemukan atau sampai tidak ada operator baru yang
akan diaplikasikan pada keadaan sekarang :
Cari operator yang belum digunakan; gunakan operator
ini untuk mendapatkan keadaan yang baru.
b) Evaluasi keadaan baru tersebut :
– Jika keadaan baru merupakan tujuan, keluar
– Jika bukan tujuan, namun nilainya lebih baik daripada
keadaan sekarang, maka jadikan keadaan baru tersebut
menjadi keadaan sekarang.
– Jika keadaan baru tidak lebih baik daripada keadaan
sekarang, maka lanjutkan iterasi.

Teknik Pencarian Heuristik 5/25


Pengantar Kecerdasan Buatan (AK045218)

Pada simple hill climbing, ada 3 masalah


yang mungkin:
– Algoritma akan berhenti kalau mencapai nilai
optimum local
– Urutan penggunaan operator akan sangat
berpengaruh pada penemuan solusi
– Tidak diijinkan untuk melihat satupun langkah
sebelumnya.

Contoh : TSP dengan Simple Hill Climbing


Disini ruang keadaan berisi semua
kemungkinan lintasan yang mungkin.
Operator digunakan untuk menukar posisi
kota-kota yang bersebelahan. Apabila ada n
kota, dan kita ingin mencari kombinasi
lintasan dengan menukar posisi urutan 2
kota, maka kita akan mendapatkan
sebanyak 2!(nn−! 2)! atau sebanyak 6 kombinasi.

Teknik Pencarian Heuristik 6/25


Pengantar Kecerdasan Buatan (AK045218)

Fungsi heuristic yang digunakan adalah panjang lintasan yang


terjadi.

(19) ABCD

(17) BACD ACBD ABDC DBCA ADCB CBAD

(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

BDCA DCBA DBAC ABCD DACB CBDA

Teknik Pencarian Heuristik 7/25


Pengantar Kecerdasan Buatan (AK045218)

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.

Fungsi Heuristik yang digunakan merupakan


prakiraan (estimasi) cost dari initial state ke goal
state, yang dinyatakan dengan :

f’(n) = g(n) + h’(n)

dimana f’ = Fungsi evaluasi


g = cost dari initial state ke current state
h’ = prakiraan cost dari current state ke
goal state

Teknik Pencarian Heuristik 8/25


Pengantar Kecerdasan Buatan (AK045218)

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.

Teknik Pencarian Heuristik 9/25


Pengantar Kecerdasan Buatan (AK045218)

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

Teknik Pencarian Heuristik 10/25


Pengantar Kecerdasan Buatan (AK045218)

Tabel status tiap node

Node (n) g(n) h’(n) f’(n)

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

Solusi : M-C H-T

Teknik Pencarian Heuristik 11/25


Pengantar Kecerdasan Buatan (AK045218)

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.

Goal : Ingin Memiliki

Mencuri TV Punya Uang Membeli TV

Teknik Pencarian Heuristik 13/25


Pengantar Kecerdasan Buatan (AK045218)

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.

Teknik Pencarian Heuristik 14/25


Pengantar Kecerdasan Buatan (AK045218)

Operasi reduksi masalah


dengan graf AND-OR
Sebelum step-1 sebelum step 2
A A 6

9
B C D

3 4 5

Sebelum step-3 sebelum step-4


A 9 A

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

Teknik Pencarian Heuristik 15/25


Pengantar Kecerdasan Buatan (AK045218)

• Langkah-1 semula hanya ada satu node,


A. Node A diekspansi menjadi node B, C
dan D. Node D memiliki biaya yang lebih
rendah (6) jika dibandingkan dengan B
dan C (9).
• Langkah-2 mengekspansi node D
menjadi E dan F dengan biaya estimasi
sebesar 10. f’ dari D menjadi 10.
• Ternyata level sebelumnya, node B dan
C memiliki biaya yang lebih rendah dari D
(9 < 10).
• Pada langkah-3 telusuri arc dari A ke B
dan C bersama2. Jika B dieksplore
dahulu maka akan menurunkan G dan H.
Nilai f’ baru dari B adalah 6 (G=6 lebih
baik dari H=8) sehingga biaya AND arc
B-C menjadi 12 (6+4+2).
• Dengan demikian nilai node D kembali
menjadi lebih baik (10<12). Sehingga
ekspansi dilakukan kembali terhadap D.
dst.

Teknik Pencarian Heuristik 16/25


Pengantar Kecerdasan Buatan (AK045218)

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 :

Teknik Pencarian Heuristik 17/25


Pengantar Kecerdasan Buatan (AK045218)

a) Ekspan INIT dan ambil salah satu node


yang belum pernah diekspan (sebut
NODE)
b) Bangkitkan successor2 NODE. Jika
tidak memiliki successor maka set
FUTILITY dengan nilai h’(NODE). Jika
ada successor maka untuk setiap
successor (sebut SUCC) yang bukan
ancestor dari NODE kerjakan :
i. Tambahkan SUCC ke graf
ii. Jika SUCC adalah terminal node tandai
dengan SOLVED dan set nilai h’ = 0
iii. Jika SUCC bukan terminal node, hitung nilai
h’.
c) Kirimkan informasi baru tsb ke graf
dengan cara : tetapkan S adalah node
yang ditandai dengan SOLVED atau
node yang nilai h’-nya baru saja
diperbaiki, dan sampaikan nilai ini ke
parent-nya. Inisialisasi S = NODE.
Kerjakan langkah berikut ini hingga S
kosong :

Teknik Pencarian Heuristik 18/25


Pengantar Kecerdasan Buatan (AK045218)

i. Jika mungkin, seleksi dari S node yang tidak


memiliki descendant dalam graf yang terjadi
pada S. Jika tidak ada, seleksi sebarang
node dari S (sebut CURRENT) dan hapus
dari S.
ii. Hitung biaya tiap2 arc yang muncul dari
CURRENT. Biaya ini sama dengan jumlah h’
untuk tiap2 node pada akhir arc ditambah
dengan biaya arc itu sendiri. Set
h’(CURRENT) dengan biaya minimum yang
baru saja dihitung dari setiap arc yang
muncul tadi.
iii. Tandai jalur terbaik yang keluar dari
CURRENT dengan menandai arc yang
memiliki biaya minimum.
iv. Tandai CURRENT dengan SOLVED jika
semua node yang dihubungkan dengannya
hingga arc yang baru saja ditandai tadi telah
ditandai dengan SOLVED.
v. Jika CURRENT telah ditandai dengan
SOLVED atau jika biaya CURRENT telah
berubah maka status baru ini harus
disampaikan ke graf. Kemudian tambahkan
semua ancestor dari CURRENT ke S.

Teknik Pencarian Heuristik 19/25


Pengantar Kecerdasan Buatan (AK045218)

A 7

B 10 C 6

D 3 E 5

• Jalur melalui C selalu lebih baik dari B.


Tetapi jika biaya node E muncul dan
pengaruh perubahan yang diberikan ke
node B tidak sebesar pengaruhnya
terhadap node C maka jalur melalui B
bisa lebih baik.
• Hasil ekspan E, misalkan 10, maka biaya
node C menjadi 11 (10+1), dengan
demikian biaya node A apabila melewati
C adalah 12 (11+1). Tentu saja akan
lebih baik memilih melalui node B (11).
• Tapi tidak demikian halnya jika kemudian
node D diekspan. Bisa jadi jalur dengan
melalui node B akan lebih buruk lagi
ketimbang jalur yang melalui node C.
Teknik Pencarian Heuristik 20/25
Pengantar Kecerdasan Buatan (AK045218)

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.

• CSP ini merupakan algoritma


general-purpose dengan kekuatan
lebih daripada algoritma pencarian
standar.
Teknik Pencarian Heuristik 21/25
Pengantar Kecerdasan Buatan (AK045218)

Contoh : Pewarnaan Peta

• Variabel WA, NT, Q, NSW, V, SA, T


• Domain Di = {red,green,blue}
• Constraints : daerah yang bertetangga
dekat harus memiliki warna yang
berbeda.
• Contoh WA ≠ NT, atau (WA,NT)
{(red,green),(red,blue),(green,red),
(green,blue),(blue,red),(blue,green)}
• Solusi lengkap dan konsisten, contoh :
WA = red, NT = green,Q = red,NSW =
green,V = red,SA = blue,T = green

Teknik Pencarian Heuristik 22/25


Pengantar Kecerdasan Buatan (AK045218)

Constraint Graf
• Binary CSP biner : setiap constraint
merelasikan dua variabel
• Graf Constraint : node adalah variabel,
arc adalah constraint

Teknik Pencarian Heuristik 23/25


Pengantar Kecerdasan Buatan (AK045218)

MEA (Means-Ends Analysis)


• MEA adalah strategi penyelesaian masalah yang
diperkenalkan pertama kali dalam GPS (General
Problem Solver) [Newell & Simon, 1963].
• Proses pencarian berdasarkan ruang masalah yang
menggabungkan aspek penalaran forward dan
backward.
• Perbedaan antara state current dan goal digunakan
untuk mengusulkan operator yang mengurangi
perbedaan itu.
• Keterhubungan antara operator dan perbedaan tsb
disajikan sebagai pengetahuan dalam sistem (pada
GPS dikenal dengan Table of Connections) atau
mungkin ditentukan sampai beberapa pemeriksaan
operator jika tindakan operator dapat dipenetrasi.
• Contoh OPERATOR first-order predicate calculus dan
operator2 tertentu mengijinkan perbedaan korelasi
task-independent terhadap operator yang
menguranginya.
• Kapan pengetahuan ada tersedia mengenai pentingnya
perbedaan, perbedaan yang paling utama terpilih
pertama lebih lanjut meningkatkan rata-rata capaian
dari MEA di atas strategi pencarian Brute-Force.
• Bagaimanapun, bahkan tanpa pemesanan dari
perbedaan menurut arti penting, MEA meningkatkan
metode pencarian heuristik lain (di rata-rata kasus)
dengan pemusatan pemecahan masalah pada
perbedaan yang nyata antara current state dengan
goal-nya.

Teknik Pencarian Heuristik 24/25


Pengantar Kecerdasan Buatan (AK045218)

Contoh :
• http://www.rci.rutgers.edu/~cfs/
472_html/Planning/GPS_472.h
tml
• Giarratano – hal 261-262
• Luger – hal 430 - 433.

Teknik Pencarian Heuristik 25/25


Pengantar Kecerdasan Buatan (AK045218)

Masalah, Ruang
Masalah dan Pencarian

9 Definisi Masalah dan


Ruang Masalah
9 Metode Pencarian Buta
Breadth First Search
Depth First Search

Referensi
Luger & Stubblefield - bab 3
Sri Kusumadewi - bab 2
Rich & Knight – bab 3

Masalah, Ruang Masalah & Pencarian 1/14


Pengantar Kecerdasan Buatan (AK045218)

Definisi Masalah dan


Ruang Masalah
Untuk membangun sistem yang mampu
menyelesaikan masalah menggunakan KB :
1. Mendefinisikan masalah dengan tepat, mencakup
spesifikasi yang tepat mengenai keadaan awal
dan solusi yang diharapkan.
2. Menganalisis masalah tersebut dan mencari
beberapa teknik penyelesaian masalah yang
sesuai.
3. Merepresentasikan pengetahuan yang perlu untuk
menyelesaikan masalah tersebut.
4. Memilih teknik penyelesaian masalah yang
terbaik.

Untuk Mendefinisikan Suatu Masalah :


• Definisikan/buat ‘state space’ atau ruang masalah
• Tentukan keadaan awal (initial state)
• Tentukan keadaan akhir/tujuan (goal state)
• Tentukan operatornya/aturannya

Masalah, Ruang Masalah & Pencarian 2/14


Pengantar Kecerdasan Buatan (AK045218)

Contoh 1 : “Permainan Catur”


Yang harus ditentukan adalah :
1. Posisi awal pada papan catur
2. Aturan-aturan untuk melakukan gerakan secara legal
3. Tujuan (goal) yang ingin dicapai adalah posisi pada
papan catur yang menunjukkan kemenangan
seseorang terhadap lawannya.

Contoh2 : A water jug problem


• Initial state:
Diketahui dua buah ember masing-masing
berkapasitas 3 gallon dan 4 gallon, dan sebuah pompa
air.
• Goal state:
Isi ember yang berkapasitas 4 gallon dengan 2 gollon
air!
• Solusi: Buat asumsi dengan:
X : ember berkapasitas 4 gallon
Y : ember berkapasitas 3 gallon
• Production Rules :
Sistem Produksi/Production System terdiri dari:
– Sekumpulan Aturan (a set of rules)
– Knowledge Base /Data Base
– Sebuah strategi pengontrol (Control Strategy)
– Urutan yang dipakai (a rule applier)

Masalah, Ruang Masalah & Pencarian 3/14


Pengantar Kecerdasan Buatan (AK045218)

Untuk kasus water jug, production


rules-nya :
• (X,Y), if (X < 4) Æ (4,Y)
• (X,Y), if (Y < 3) Æ (X,3)
• (X,Y), if X > 0 Æ (X-d,Y)
• (X,Y), if (Y > 0) Æ (X,Y-d)
• (X,Y), if X > 0 Æ (0,Y)
• (X,Y), if Y > 0 Æ (X,0)
• (X,Y) if X+Y >= 4 and Y > 0 Æ (4, Y-(4-X))
• (X,Y) if X+Y >= 3 and X > 0 Æ (X-(3-Y),3)
• (X,Y) if (X+Y) <= 4 and Y > 0 Æ (X+Y,0)
• (X,Y) if X+Y <= 3 and X >0 Æ (0,X+Y)
• (0,2) Æ (2,0)
• (X,2) Æ (0,2)

Salah satu solusinya :


X Y Rules yang digunakan
0 0
2
0 3
9
3 0
2
3 3
7
4 2
5 atau 12
0 2
9 atau 11
2 0
solusi

Masalah, Ruang Masalah & Pencarian 4/14


Pengantar Kecerdasan Buatan (AK045218)

Contoh 3 : Masalah “Petani, Kambing,


Serigala dan Sayuran”
Seorang petani akan menyeberangkan
seekor kambing, seekor serigala dan
sayuran dengan sebuah boat yang melalui
sungai. Boat hanya bisa memuat petani
dan satu penumpang lain (kambing,
serigala atau sayuran). Jika ditinggalkan
oleh petani tersebut, maka sayuran akan
dimakan oleh kambing dan kambing akan
dimakan oleh serigala.

Bagaimana caranya agar petani, kambing,


serigala dan sayuran dapat selamat
sampai di seberang sungai ?

Masalah, Ruang Masalah & Pencarian 5/14


Pengantar Kecerdasan Buatan (AK045218)

Beberapa cara Merepresentasikan


Ruang Masalah :
1. Graph Keadaan
Contoh :
4 F 1
A 3 E G
B 6 7
4
2
1
M T
8 H 6
C

5 3
I J
4
D 2

Graph berarah dengan Graph berarah yang Graph dengan


satu tujuan (T) menemui jalan siklus
buntu
• M-A-B-C-E-T • M-A-B-C-E-F-G D-E-C-E-I-D
• M-A-B-C-E-H-T • M-A-B-C-E-I-J
• M-D-C-E-T • M-D-C-E-F-G
• M-D-C-E-H-T • M-D-C-E-I-J
• M-D-I-J

Masalah, Ruang Masalah & Pencarian 6/14


Pengantar Kecerdasan Buatan (AK045218)

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

Tujuan Buntu Buntu Tujuan


G J T Level-6

Buntu Buntu Tujuan

Masalah, Ruang Masalah & Pencarian 7/14


Pengantar Kecerdasan Buatan (AK045218)

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
?

Masalah, Ruang Masalah & Pencarian 8/14


Pengantar Kecerdasan Buatan (AK045218)

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).

Masalah, Ruang Masalah & Pencarian 9/14


Pengantar Kecerdasan Buatan (AK045218)

Pencarian Buta (Blind 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).

Masalah, Ruang Masalah & Pencarian 10/14


Pengantar Kecerdasan Buatan (AK045218)

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.

Masalah, Ruang Masalah & Pencarian 11/14


Pengantar Kecerdasan Buatan (AK045218)

• 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.

Masalah, Ruang Masalah & Pencarian 13/14


Pengantar Kecerdasan Buatan (AK045218)

• 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.

Masalah, Ruang Masalah & Pencarian 14/14


Pengantar Kecerdasan Buatan (AK045218)

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

Representasi Pengetahuan 1/19


Pengantar Kecerdasan Buatan (AK045218)

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.
Epistemology

Philosophic Theory A Priori A Posteriori


(Aristoteles, Plato, Knowledge Knowledge
Kant, etc.)

Representasi Pengetahuan 2/19


Pengantar Kecerdasan Buatan (AK045218)

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

Representasi Pengetahuan 3/19


Pengantar Kecerdasan Buatan (AK045218)

Knowledge pada Sistem Pakar


Analogi dengan ekspresi klasik Wirth :
ALGORITMA + STRUKTUR DATA = PROGRAM

Knowledge pada Sistem Pakar :


KNOWLEDGE + INFERENSI = SP

Hirarki Knowledge

Meta knowledge : knowledge


dan keahlian
Knowledge : informasi yang
sangat khusus
Informasi : data yang telah
diproses
Data : hal yang paling potensial
Noise : data yang masih kabur

Representasi Pengetahuan 4/19


Pengantar Kecerdasan Buatan (AK045218)

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>

9 < .. > dan ::= adalah symbol metalanguange


9 ::= artinya “ditentukan sebagai” yang dalam BNF ekuivalen
dengan Æ.
9 Term di dalam kurung disebut symbol Nonterminal, yang masih
bisa direpresentasikan ke dalam bentuk lebih sederhana lagi.
9 Nonterminal yang tidak dapat disederhanakan lagi disebut
Terminal.

<sentence> Æ <subject> <verb> <end-mark>


<subject> Æ I | You | We
<verb> Æ left | came Produksinya : ……
I left.
<end-mark> Æ.|?|!
You came?
We left ! dst…..

Representasi Pengetahuan 5/19


Pengantar Kecerdasan Buatan (AK045218)

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 ?

Parse Tree atau Derivation Tree adalah


representasi grafik dari kalimat yang diuraikan ke
dalam seluruh terminal dan nonterminal yang
digunakan untuk mendapatkan kalimat.

<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

Representasi Pengetahuan 6/19


Pengantar Kecerdasan Buatan (AK045218)

• Keuntungan Aturan Produksi :


– sederhana dan mudah dipahami
– implementasi secara straightforward sangat
dimungkinkan dalam computer
– dasar bagi berbagai variant

• Kelemahan Aturan Produksi :


– implementasi yang sederhana sering
menyebabkan inefisien
– beberapa tipe pengetahuan sulit
direpresentasikan dalam aturan produksi

Representasi Pengetahuan 7/19


Pengantar Kecerdasan Buatan (AK045218)

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.

Representasi Pengetahuan 8/19


Pengantar Kecerdasan Buatan (AK045218)

• 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.

Representasi Pengetahuan 9/19


Pengantar Kecerdasan Buatan (AK045218)

Keterangan :
AKO = jenis dari
ISA = adalah
Has shape = berbentuk

Perluasan Jaringan
Semantik

Representasi Pengetahuan 10/19


Pengantar Kecerdasan Buatan (AK045218)

Penambahan dapat dilakukan dalam 3 cara :


– Objek yang sama
– Objek yang lebih khusus
– Objek yang lebih umum

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 menggunakan
informasi (value) yang ada pada arc tersebut sebagai
jawabannya.

Representasi Pengetahuan 11/19


Pengantar Kecerdasan Buatan (AK045218)

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.

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.

Representasi Pengetahuan 12/19


Pengantar Kecerdasan Buatan (AK045218)

Triple Obyek-Atribut-Nilai

Ada 3 hal yaitu OBJECT, ATTRIBUTE, VALUE (OAV) Triplet,


yang sering digunakan untuk membangun jaringan semantic.

OBJECT : dapat berupa fisik atau konsepsi


ATTRIBUTE : karakteristik objek
VALUE : ukuran spesifik dari atribut dalam situasi tertentu

Contoh :
Objek Atribut Nilai
Apel Warna Merah
Apel Tipe Macintosh
Apel Jumlah 100
Anggur Warna Merah
Anggur Tipe Seedless
Anggur Jumlah 500

Triplet OAV secara khusus digunakan untuk mrepresentasikan


fakta dan pola guna menyesuaikan fakta dalam aturan yang
antecedent. Jaringan semantic untuk beberapa sistem terdiri
dari node untuk objek, atribut dan nilai yang dihubungkan
dengan IS A dan HAS A.

Representasi Pengetahuan 13/19


Pengantar Kecerdasan Buatan (AK045218)

Frame
Frame (Minsky, 1975) dipandang sebagai struktur data static yang
digunakan untuk merepsentasi-kan situasi-situasi yang telah
dipahami dan stereotype.

Frame digunakan untuk merepresentasikan pengetahuan


stereotype atau pengetahuan yang didasarkan kepada
karakteristik yang sudah dikenal yang merupakan pengalaman
masa lalu.

Frame berupa kumpulan slot-slot (representasi entitas sebagai


struktru objek) yang merupakan atribut untuk mendeskripsikan
pengetahuan berupa kejadian, lokasi, situasi ataupun elemen-
elemen lain. Frame digunakan untuk representasi
pengetahuan deklaratif.

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

Frame Pohon Perdu


Spesialisasi dari : Pohon
Jumlah batang :3
Jenis kulit : halus
Model daun : berganti daun
Bentuk daun : sederhana, berlekuk

Representasi Pengetahuan 14/19


Pengantar Kecerdasan Buatan (AK045218)

Contoh 2 : Deskripsi frame untuk kamar hotel.


Kamar Hotel Kursi Hotel
Spesialisai dari : kamar Spesialisasi dari : kursi
Tempat : hotel Tinggi : 20-40 cm
Isi : kursi hotel, telpon hotel, Jumlah kaki : 4
ranjang hotel Kegunaan : tempat duduk

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

• Setiap frame individual dapat dipandang


sebagai struktur data yang mirip record,
berisi informasi yang relevan dengan
entitas-entitas stereotype. Slot-slot dalam
frame dapat berisi :
– Informasi identifikasi frame
– Hubungan frame dengan frame lain
– Penggambaran persyaratan yang dibutuhkan
frame
– Informasi procedural untuk menggunakan
struktur yang digambarkan
– Informasi default frame
– Informasi terbaru.

Representasi Pengetahuan 15/19


Pengantar Kecerdasan Buatan (AK045218)

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

Dari contoh 3, terdapat dua elemen dasar, yaitu Slot dan


Subslot. Slot merupakan kumpulan atribut / property
yang menjelaskan objek yang direpresentasikan oleh
frame. Subslot menjelaskan pengetahuan atau
prosedur dari atribut pada slot.
Subslot dapat berupa :
− Value : menjelaskan tentang nilai dari suatu atribut
− Default : nilai yang digunakan jika suatu slot kosong
atau tidak dideskripsikan pada frame instansiasi
− Range : menandakan jenis dari inforamsi yang dapat
muncul pada slot tersebut (missal 0 sampai 100)
− If Added : berisi informasi procedural yang berupa
suatu tindakan yang akan dikerjakan jika nilai dari slot
diisi (atau berubah)
− If Needed : subslot ini digunakan pada kasus dimana
tidak ada value pada slot. Suatu prosedur akan
dikerjakan untuk memperoleh atau menghitung sebuah
value.
− Other : slot bisa berisi frame, rule, jaringan semantic
ataupun tipe lain dari informasi.

Representasi Pengetahuan 16/19


Pengantar Kecerdasan Buatan (AK045218)

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.

Representasi Pengetahuan 17/19


Pengantar Kecerdasan Buatan (AK045218)

Contoh : Script pergi ke restoran


SCRIPT Restoran
Jalur (track) : fast food restoran
Peran (roles) : tamu, pelayan
Pendukung (prop) : conter, baki, makanan, uang, serbet, garam,
merica, kecap, sedotan, dll
Kondisi masukan : tamu lapar –tamu punya uang
Adegan (scene) 1 : Masuk
– Tamu parkir mobil
– Tamu masuk restoran
– Tamu antri
– Tamu baca menu di list menu dan mengambil keputusan tentang
apa yang akan diminta.
Adegan (scene) 2 : Pesanan
– Tamu memberikan pesanan pada pelayan
– Pelayan mengambil pesanan dan meletakkan makanan di atas
baki
– Tamu membayar
Adegan (scene) 3 : Makan
– Tamu mengambil serbet, sedotan, garam, dll
– Tamu makan dengan cepat
Adegan (scene) 4 : Pulang
– Tamu membersihkan meja
– Tamu membuang sampah
– Tamu meninggalkan restoran
– Tamu naik mobil dan pulang
Hasil
– Tamu merasa kenyang
– Tamu senang
– Tamu kecewa
– Tamu sakit perut

Representasi Pengetahuan 18/19


Pengantar Kecerdasan Buatan (AK045218)

Keistimewaan Script :

• Script menyediakan beberapa


cara yang sangat alami untuk
merepresentasikan “suatu
informasi” yang lazim” dengan
masalah yang bersumber dari
sistem AI dari mula.

• Script menyediakan struktur


hirarki untuk
merepresentasikan inforamsi
melalui inklusi subscript
dengan sript.

Representasi Pengetahuan 19/19


Pengantar Kecerdasan Buatan (AK045218)

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

Sistem Pakar 1/16


Pengantar Kecerdasan Buatan (AK045218)

Konsep Dasar SP
• Definisi:
Sistem yang berusaha mengadopsi
pengetahuan manusia ke komputer, agar
komputer dapat menyelesaikan masalah
seperti yang biasa dilakukan para ahli.

• SP tidak untuk menggantikan kedudukan seorang


pakar tetapi untuk memasyaratkan pengetahuan
dan pengalaman pakar tersebut.

• Menurut Efraim Turban, SP harus mengandung :


keahlian, ahli, pengalihan keahlian, inferensi, aturan
dan kemampuan menjelaskan.
– Keahlian adalah suatu kelebihan penguasan pengetahuan
di bidang tertentu yang diperoleh dari pelatihan,membaca
atau pengalaman.

• SP dikembangkan pertama kali oleh komunitas AI


tahun 1960an. SP yang pertama adalah General
Purpose Problem Solver (GPS) yang
dikembangkan oleh Newel Simon.

Sistem Pakar 2/16


Pengantar Kecerdasan Buatan (AK045218)

Contoh Sistem Pakar


Sistem Pakar Kegunaan
MYCINDirancang oleh Edward Diagnosa Penyakit
Feigenbaum (Universitas
Stanford) th ’70 an

DENDRAL Mengidentifikasi struktur mo-


lecular campuran yang tidak
dikenal

XCON & XSELDikembangkan Membantu konfigurasi system


oleh DEC dan CMU, akhir ’70 an computer besar

SOPHIE Analisis sirkuit elektronik

PROSPECTORDidesign oleh Digunakan di dalam geologi


Sheffield Research Institute, akhir untuk membantu mencari dan
‘70an menemukan deposit

FOLIO Membantu memberikan


keputusan bagi seorang manajer
dalam hal stok broker dan
investasi
DELTA Pemeliharaan lokomotif listrik
diesel

Sistem Pakar 3/16


Pengantar Kecerdasan Buatan (AK045218)

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

Sistem Pakar 4/16


Pengantar Kecerdasan Buatan (AK045218)

Bentuk dan Struktur SP (1/2)


Blok Diagram SP

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)

Sistem Pakar 5/16


Pengantar Kecerdasan Buatan (AK045218)

Bentuk dan Struktur SP (2/2)


• Knowledge base (basis pengetahuan) berisi
pengetahuan-pengetahuan dalam
penyelesaian masalah.
– Domain pengetahuan seorang pakar pada
dasarnya adalah spesifik terhadap domain
masalah.
Problem
Domain

Knowledge
Domain

• Inference engine (motor inferensi) bertugas


untuk menganalisis pengetahuan dan menarik
kesimpulan berdasarkan knowledge base.

Sistem Pakar 6/16


Pengantar Kecerdasan Buatan (AK045218)

Sistem Konvensional vs.


Sistem Pakar (SP)
Sistem Konvensional Sistem Pakar (ES)
Informasi dan pemrosesan Basis pengetahuan merupakan
biasanya jadi satu dengan bagian terpisah dari
program mekanisme inferensi
Biasanya tidak bisa menjelaskan Penjelasan adalah bagian
mengapa suatu input data itu terpenting dari system pakar
dibutuhkan atau bagaimana
output itu diperoleh

Pengubahan program cukup sulit Pengubahan aturan dapat dilaku-


kan dengan mudah
Sistem hanya akan beroperasi jika Sistem dapat beroperasi hanya
system tersebut sudah dengan beberapa aturan
lengkap
Eksekusi dilakukan langkah demi Eksekusi dilakukan pada semua
langkah basis pengetahuan

Menggunakan data Menggunakan pengetahuan


Tujuan utamanya adalah efisiensi Tujuan utamanya adalah
efektivitas

Sistem Pakar 7/16


Pengantar Kecerdasan Buatan (AK045218)

Ciri-ciri dan Domain SP

• Ciri-ciri SP :
– Memiliki fasilitas informasi yang handal
– Mudah dimodifikasi
– Dapat digunakan dalam berbagai jenis komputer
– Memilki kemampuan untuk belajar beradaptasi.

Permasalahan yang Disentuh oleh SP (Domain SP) :


– Interpretasi. Pengambilan keputusan dari hasil observasi,
termasuk pengenalan ucapan, analisis citra, interpretasi
sinyal, dll
– Prediksi : prediksi demografi, prediksi ekonomi, dll.
– Diagnosis : diagnosis medis, elektronis, mekanis, dll.
– Perancangan : perancangan layout sirkuit , bangunan.
– Perencanaan : perencanaan keuangan, militer, dll
– Monitoring : computer aided monitoring system
– Debugging : memberikan resep obat terhadap kegagalan
– Instruksi : melakukan instruksi untuk diagnosis, debugging
dan perbaikan kinerja
– Kontrol : melakukan kontrol terhadap interpreasi, prediksi,
perbaikan dan monitoring kelakukan sistem.

Sistem Pakar 8/16


Pengantar Kecerdasan Buatan (AK045218)

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.

Sistem Pakar 9/16


Pengantar Kecerdasan Buatan (AK045218)

Struktur SP (1/2)

Inference Engine
Knowledge Base Working Memory
(Rules) (Facts)
Agenda

Explanation Knowledge
Faacility Acquisition Facility

User Interface

Sistem Pakar 10/16


Pengantar Kecerdasan Buatan (AK045218)

Struktur SP (2/2)
• User interface (antarmuka) : mekanisme komunikasi
antara user dan SP

• Explanation facility (subsistem Penjelasan) : digunakan


untuk melacak respon dan memberikan penjelasan
tentang kelakuan sistem pakar secara interaktif

• Working memory : database global dari fakta yang


digunakan dalam prosedur

• Agenda : daftar prioritas prosedur yang dibuat oleh


motor inferensi dan direkam dalam working memory

• Inference engine (motor inferensi) : program yang berisi


metodologi yang digunakan untuk melakukan
penalaran terhadap informasi-informasi dalam basis
pengetahuan untuk memformulasikan konklusi.

• Knowledge acquisiton facility : berisi pengetahuan-


pengetahuan yang dibutuhkan untuk memahami,
memformulasikan dan menyelesaikan masalah.

Sistem Pakar 11/16


Pengantar Kecerdasan Buatan (AK045218)

Basis Aturan (Rule Based) SP


(1/2)
• Pengetahuan dalam SP
direpresentasikan dalam bentuk IF-THEN
atau dalam bentuk Production Rules.

• Motor inferensi menentukan aturan awal


(rule antecedents) yang sesuai.
– Sisi kiri harus cocok dengan fakta yang ada di
memori kerja

• Aturan yang sesuai ditempatkan di


agenda dan dapat diaktivasi

• Aturan yang terdapat di agenda dapat


diaktivasi
– Aktivasi aturan akan membangkitkan fakta
baru di sisi kanan
– Aktivasi dari satu aturan adalah bagian dari
aktivasi aturan yang lain.

Sistem Pakar 12/16


Pengantar Kecerdasan Buatan (AK045218)

Basis Aturan (Rule Based) SP


(2/2)
Contoh :

IF …. THEN Rules
Rule : Red_Light Antecedent
(left hand side)
IF the light is red
THEN stop
Consequent
Rule : Green_Light (right hand side)

IF the light is green


THEN go
Antecedent
(left hand side)
Production Rules
The light is red stop

The light is green go


Consequent
(right hand side)

Sistem Pakar 13/16


Pengantar Kecerdasan Buatan (AK045218)

Siklus Motor Inferensi


(Inference Engine Cycle)

• Menggambarkan eksekusi dari aturan pada motor


inferensi :
– Conflict resolution : pemilihan aturan dengan
prioritas tertinggi dari agenda
– Execution : aksi consequent dari aturan yang
terpilih
– Match : pengkinian (update) agenda
• Siklus berakhir ketika tidak ada lagi aturan di
agenda atau ketika ditemui perintah stop.

Sistem Pakar 14/16


Pengantar Kecerdasan Buatan (AK045218)

Forward dan Backward Chaining (1/2)


• Ada 2 cara yang dapat dilakukan dalam melakukan
inferensi :
– Forward Chaining. Pencocokkan fakta atau pernyataan
dimulai dari bagian sebelah kiri (IF dulu). Dengan kata
lain, penalaran dimulai dari fakta terlebih dahulu untuk
menguji kebenaran hipotesis.
Kesimpulan
1
Observasi A AturanR1 Fakta C
AturanR3
Observasi B Aturan R2 Fakta D Kesimpulan
AturanR4 2
Fakta E

– Backward Chaining. Pencocokkan fakta atau


pernyataan dimulai dari bagian sebelah kanan (THEN
dulu). Dengan kata lain, penalarana dimulai dari
hipotesis terlebih dahulu, dan untuk menguji kebenaran
hipotesis tersebut dicari fakta-fakta yang ada dalam
basis pengetahuan.

Observasi A AturanR1 Fakta C


AturanR3
Observasi B Aturan R2 Fakta D Tujuan 1
Aturan R4

Sistem Pakar 15/16


Pengantar Kecerdasan Buatan (AK045218)

Forward dan Backward Chaining (2/2)


Contoh :
• Pada tabel di bawah ini terlihat 10 aturan yang tersimpan dalam
basis pengetahuan. Fakta awal yang diberikan hanya A & F
(artinya A dan F bernilai benar). Ingin dibuktikan apakah K
bernilai benar (hipotesis : K) ?
No Aturan
Penyelesaian dengan forward chaining
R-1 IF A & B THEN C
R-9 R-10
G J K
R-2 IF C THEN D Fakta R-4
R-3 IF A & E THEN F A R-5 D
R-4 IF A THEN G R-3 F R-6 H
R-5 IF F & G THEN D
E
R-6 IF G & E THEN H Aturan Fakta Baru
Fakta
R-7 IF C & H THEN I R-3 F
R-8 IF I & A THEN J R-4 G
R-9 IF G THEN J R-5 D
R-10 IF J THEN K R-6 H
R-9 J
Penyelesaian dengan backward chaining R-10 K (terbukti)
Fakta
R-10
K J I C A
R-8 R-7 R-1
R-10 R-9 R-4 Fakta
K J G A
A H B
Tidak
Diketahui Kedua : Sukses
Pertama : Gagal

Sistem Pakar 16/16


METODE INFERENSI/KESIMPULAN 9 Setiap pertanyaan, turun satu tingkat dalam tree.Jika
seluruh leaves adalah jawaban dan seluruh node yg turun
adalah pertanyaan, maka ada max 2n untuk jawaban dan n
TREES,LATTICES DAN GRAF pertanyaan
Tree :struktur data hirarki yg berisi node/vertices/objek
yg menyimpan informasi/pengetahuan dan
link/edges/cabang yg menghubungkan node STATE SPACE
9 Disebut juga dg tipe jaringan semantik khusus 9 State adalah kumpulan karakteristik yg dapat digunakan
9 Merupakan kasus khusus yg disebut graf untuk menentukan status.
9 Suatu graf dapat mempunyai nol atau lebih link, dan tidak 9 State Space adalah rangkaian pernyataan yg menunjukkan
ada perbedaan antara root dan child transisi antara state dimana objek dieksprerimen
9 Root : node tertinggi, leaves : terendah

9 Stuktur keputusan : skema representasi pengetahuan dan


metode pemberian alasan tentang pengetahuannya.
9 Jika suatu keputusan adalah binary, maka tree keputusan
binary mudah dibuat dan sangat efisien.
POHON AND-OR LOGIKA DEDUKTIF DAN SILOGISME
9 Dalam SP, untuk menemukan solusi problem dapat Tipe-tipe Inferensi
menggunakan rangkaian backward yaitu dengan tree AND- INFERENCES
OR dan AND-OR-NOT
LULUS
Sid.Sarjana
Induction Heuristics Abduction Autoepistemic Analogy
Deduction Intuition Generate&Test Default Nonmonotonic

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

All M is P Some P are M


No S is M type ???? All M are S type ????
∴ No S is P ∴Some S are P
BARIS INFERENCE (RULES OF INFERENCE) 1. Disebut dg fallacy of converse
Yaitu modus ponens dan modus tollens 2. Disebut dg indirect reasoning, modus tollens, law of
Diagram venn tidak sesuai untuk argumen yg lebih kompleks contrapositive
karena menjadi sulit untuk dibaca pada decision tree untuk
silogisme

Pada logika proposisional,


If there is power, the computer will work
There is power
∴The computer will work

Maka dapat ditulis


AÆB pÆq
A ≡ p ≡ p, p Æ q; ∴q
∴B ∴q

Æ disebut “direct reasoning,modus ponenes, law of


detachment dan assuming the antecedent”
p,q disebut variabel logika
A,B disebut konstanta proposisional

Bagaimana dengen skema untuk argumen dari tipe ini :


1. p Æ q 2. p Æ q
q ~q
∴p ∴~p
Tabel Kondisional dan variantnya Solusi :
1. Ingat p Æ q dan q Æ p benar maka p dan q ekuivalen
Kondisional pÆq 2. Jika (p Æ q) ∧ (q Æ p) maka ekuivalen dg p↔q dg kata lain p
Konversi qÆ p ≡q
Invensi ~p Æ ~q
Kontrapositif ~q Æ ~p Maka argumennya menjadi
CÆY
Contoh argumen dengan lebih dari 2 promise: Y≡D
Chip prices rise only if the yen rises C
The yen rises only if the dollar falls and ∴D
If the dollar falls then the yen rises.
Since chip proses have risen, 3. Karena Y sama dengan D maka substitusi D kedalam Y
the dollar must have fallen
Maka argumennya menjadi :
Proposisinya C = chip prices rise CÆD
Y = yen rises C
D = dollar falls ∴D (TERBUKTI valid bahwa ini adalah modus ponens)

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

Premise dan kesimpulannya


(1) (∃x) [P(x) ∧ (∀y) (F(y) Æ H(x,y))]
(2) (∀x) (P(x) Æ (∀y) (S(y) Æ ~H(x,y))]
(3) ~(∀y) (F(y) Æ ~S(,y))

Terbukti bahwa A Æ D adalah teori


Konversi ke bentuk clausal Contoh : Ubah ke bentuk klausal !!!!!!
1. Hilangkan kondisional, (p Æ q) ≡ ~p v q ∀x (Balok (x) Æ (∃y (Diatas(x,y) ∧ ~Piramid(y))
2. Geser negasi ke dalam (reduksi skope ~). ∧ ~∃y (Diatas(x,y) ∧ Diatas(y,x))
Negasi digeser hanya berlaku untuk atomik formula ∧ ∀y (~Balok(y) Æ ~Sama(x,y))))
3. Hilangkan quantifier eksistensial
• Jika ∃ tidak ada dalam skope ∀, ganti variabel dengan Solusi :
suatu konstanta baru 1. ∀x (~Balok (x) V (∃y (Diatas(x,y) ∧ ~Piramid(y))
(∃x) P(x) diganti P(a) ∧ ~∃y (Diatas(x,y) ∧ Diatas(y,x))
• Jika ∃ berada dalam skope ∀, ganti variabel dengan suatu ∧ ∀y (~Balok(y) V ~Sama(x,y))))
fungsi yang memiliki argumen semua variabel dari ∀
tersebut 2. ∀x (~Balok (x) V (∃y (Diatas(x,y) ∧ ~Piramid(y))
∀x ,∀y , ∃z P(x,y,z) diganti menjadi ∧ ∀y (~Diatas(x,y) V~ Diatas(y,x))
∀x,∀y, P(x,y,F(x,y)) ∧ ∀y (~Balok(y) V ~Sama(x,y))))
4. Standarisasi variabel (jika perlu) sehingga tiap quantifier
memiliki variabel yang berbeda 3. ∀x (~Balok (x) V (Diatas(x,f(x)) ∧ ~Piramid(f(x)))
5. Geser semua ∀ ke kiri (karena semua quantifier punya nama ∧ ∀y (~Diatas(x,y) V~ Diatas(y,x))
yang berbeda, pergeseran tidak mempengaruhi hasil) ∧ ∀y (~Balok(y) V ~Sama(x,y))))
Bentuk ini disebut prenex normal form terdiri atas prefix
quantifier yang diikuti matriks 4. ∀x (~Balok (x) V (Diatas(x,f(x)) ∧ ~Piramid(f(x)))
6. Hilangkan ∀ . ∀ tidak perlu ditulis, diasumsikan semua ∧ ∀y (~Diatas(x,y) V~ Diatas(y,x))
variabel terkuantifikasi universal ∧ ∀z (~Balok(z) V ~Sama(x,z))))
7. Geser disjungsi (V) kedalam, sehingga terbentuk conjungsi
normal form 5. ∀x∀y∀z (~Balok (x) V (Diatas(x,f(x)) ∧ ~Piramid(f(x)))
8. Buang konjungsi dan uraikan menjadi klausa-klausa ∧ (~Diatas(x,y) V~ Diatas(y,x))
9. Standarisasi variabel (jika perlu) sehingga tidak ada ∧ (~Balok(z) V ~Sama(x,z))))
variabel yang muncul pada lebih dari 1 klausa.
6. (~Balok (x) V ((Diatas(x,f(x)) ∧ ~Piramid(f(x))) Rangkaian forward Rangkaian Backward
∧ (~Diatas(x,y) V~ Diatas(y,x)) -Planning, monitoring,control -Diagnosis
∧ (~Balok(z) V ~Sama(x,z)))) -Saat sekarang ke masa depan -Sekarang ke masa lalu
-Antecedent ke consequent -Consequent ke antecedent
7. (~Balok (x) V Diatas(x,f(x)) -Data driven, bottom-up -Goal driven, top-down
∧ (~Balok (x) V ~Piramid(f(x))) -Kerja mundur untuk -Kerja mundur untuk
∧ (~Balok (x) V ~Diatas(x,y) V~ Diatas(y,x)) menemukan pemecahan yg menemukan fakta yg
∧ (~Balok (x) V ~Balok(z) V ~Sama(x,z)))) mengikuti fakta mendukung hipotesa
-Breadth-first search -Depth-first search
8. 1. ~Balok (x) V Diatas(x,f(x)) -Antecedent menentukan -Consequent menentukan
2. ~Balok (x) V ~Piramid(f(x)) pencarian pencarian
3. ~Balok (x) V ~Diatas(x,y) V~ Diatas(y,x) -Fasilitas bukan penjelasan -Fasilitas penjelasan
4. ~Balok (x) V ~Balok(z) V ~Sama(x,z)

9. 1. ~Balok (x) V Diatas(x,f(x)) METODE LAIN DARI INFERENCE/KESIMPULAN


2.~Balok (k) V ~Piramid(f(k)) ANALOGI
3.~Balok (m) V ~Diatas(m,y) V~ Diatas(y,m) ¾ Mencoba dan menghubungkan situasi lama sebagai penuntun
4. ~Balok (n) V ~Balok(z) V ~Sama(n,z) ke situasi baru.
¾ Contoh : diagnosis medical
¾ Pemberian alasan analogis berhubungan dgn induksi
RANGKAIAN BACKWARD DAN FORWARD
Forward : bottom-up reasoning, breadth first GENERATE AND TEST
Backward : top-down reasoning, depth-first ¾ Pembuatan solusi kemudian pengetesan untuk melihat
apakah solusi yg diajukan memenuhi semua persyaratan.
Jika solusi memenuhi maka berhenti yg lain membuat sollusi
yg baru kemudian test lagi dst
¾ Contoh : Dendral, prog AM(artificial Mathematician),Mycin
ABDUCTION/PENGAMBILAN NONMONOTONIC REASONING
¾ Metodenya sama dg modus ponens ¾ Tambahan aksioma yg baru pada sistem logika berarti
¾ Abduction Modus ponens bahwa banyak teori yg dapat dibuktikan jika ada banyak
pÆq pÆq aksioma dari teori yg didapat, disebut monotonik sistem
q p
∴p ∴q METAKNOWLEDGE
¾ Program meta-DENDRAL menggunakan induksi untuk
¾ Bukan argument deduksi yg valid menyimpulkan baris baru dari struktur kimia.
¾ Berguna untuk baris/rules heuristik inference ¾ Contoh : TEIRESIAS yg menambah pengetahuan secara
¾ Analogi,generate and test, abduction adalah metode bukan interaktif dari expert
deduksi. Dari premise yg benar, metode ini tidak dapat
membuktikan kesimpulan yg benar

Perbedaan :
Inference Start Tujuan
FORWARD Fakta Kesimpulan yg
harus mengikuti

BACKWARD Kesimpulan tdk Fakta pendukung


pasti kesimpulan

ABDUCTION Kesimpulan benar Fakta yg dpt


mengikuti
Carilah referensi mengenai Metode Inferensi
1. Davis, Randall & Lenat, Douglas B, Knowlegde-Based Systems in
Artificial Intelligent, McGraw-Hill, USA, 1982.
2. Giarratano, J and G. Riley, Expert System : Principle and
Programming, 4th ed, PWS Kent, USA,2004.
 Carilah referensi mengenai metode inferensi.
Rangkumlah referensi tersebut, dengan mencakup :
1. Trees, Lattice dan Graph
2. Spasi Stata dan Spasi Permasalahan
3. AND-OR Tree dan Goals
4. Logika Deduktif dan Syllogisms
5. Aturan dari Inferensi
6. Logika Pembatasan dari Proposisional
7. Logika Predikat Order Pertama Kali
8. Sistem Logika
9. Resolusi, Sistem Resolusi dan Deduksi
10. Shallow dan Casual Reasoning
11. Rangkaian Forward dan Backward Chaining
 Rangkuman dibuat dalam bentuk paper.

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(H,E) = MB(H,E) –MD(H,E)

CF(H,E) : CF dari hipotesis H yang dipengaruhi oleh gejala


(evidence) E
Besarnya CF berkisar antara -1 sampai 1
Nilai -1 menunjukan ketidakpercayaan mutlak sedangkan 1
menunjukan kepercayaan mutlak
CF Lanjutan

• MB(H,E) : ukuran kenaikan kepercayaan (measure of


increase belief) terhadap hipotesis H yang
dipengaruhi gejala E.
• MD(H,E) : ukuran kenaikan ketidakpercayaan
(measure of increased disbelief) terhadap hipotesis
H yang dipengaruhi oleh gejala E.

• CF ada 2
– CF PAKAR
– CF PENGGUNA
KOMBINASI EVIDENCE ANTECEDENT
CONTOH

• KOMBINASI Evidence

E : (E1 DAN E2 DAN E3) ATAU (E4 DAN BUKAN E5)


E : Max[min(E1,E2,E3),min(E4,-E5)]
Misal : HASILNYA ADALAH
E1=0,9. E : Max[min(0,9,0,8,0,3),min(-0,5,0,4)]
E2=0,8. E : Max(0,3, -0,5)
E3=0,3. E : 0,3
E4=-0,5
E5=-0,4
CF Aturan JIKA E MAKA H

CF(E,e) : Certainty Factor Evidence E yang dipengaruhi oleh evidence e

CF(H,E) : Certainty Factor hipotesis dengan asumsi evidence diketahui


dengan pasti , yaitu ketika CF(E,e) =1

CF(H,e) : Certanty Factor hipotesis yang dipengaruhi oleh evidence e

#Jika semua evidence pada antecedent diketahui dengan pasti maka


rumusnya menjadi
CONTOH KASUS

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

Facts / Information User Interface

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

Rule-Based Expert Systems

Inference Engine Knowledge Base

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)

PENGOLAHAN Informasi merupakan hasil dari


pengolahan data dalam suatu
bentuk yang lebih berguna dan
lebih berarti bagi penerimanya,
yang menggambarkan suatu
INFORMASI kejadian-kejadian (event) yang
nyata (fact) yang digunakan untuk
pengambilan keputusan.

41
Pengetahuan (Knowledge)
INFORMASI

PENGOLAHAN • pengalaman, pelatihan

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.

Mylopoulus dan Levesque telah mengklasifikasikan susunan atau pola representasi


menjadi empat kategori yaitu :
1. Representasi logika, representasi ini menggunakan ekspresi – ekspresi logika formal
untuk merepresentasikan basis pengetahuan. PROLOG merupakan bahasa
pemrograman yang ideal dalam mengimplementasikan representasi logika.
2. Representasi Prosedural, representasi ini menggambarkan pengetahuan sebagai
sekumpulan instruksi untuk memcahkan suatu problema. Dalam sistem berbasis
kaidah, aturan IF – THEN dapat ditafsirkan sebagai sebuah prosedur untuk mencapai
tujuan pemecahan problema.
3. Representasi Network, representasi ini menangkap pengetahuan sebagai sebuah graf
di mana node – nodenya menggambarkan objek atau konsep dalam problema yang
dihadapi, sedangkan lengkungan – lengkungannya menggambarkan hubungan atau
asosiasi antara mereka. Contoh representasi network antara lain jaringan semantik dan
graf.
4. Representasi terstruktur, bahasa – bahasa representasi terstruktur memperluas
jaringan dengan membuat setiap nodenya menjadi sebuah struktur data komplek yang
berisi tempat – tempat bernama dengan nilai tertentu. Nilai – nilai ini dapat berupa
data numerik atau simbolik sederhana, pointer ke frame (bingkai) lain, atau bahkan
merupakan prosedur untuk mengerjakan tugas tertentu. Contoh dari representasi ini
adalah skrip (script), frame, dan objek (object).
2

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

Ada 2 penalaran yang dapat dilakukan untuk mendapatkan konklusi yaitu :


1. Penalaran deduktif : dimulai dari prinsip umum untuk mendapatkan konklusi yang
lebih khusus.
Contoh :
Premis Mayor : Jika hujan turun saya tidak akan berangkat kuliah
Premis Minor : Hari ini hujan turun
Konklusi : Hari ini saya tidak akan berangkat kuliah
2. Penalaran induktif : Dimulai dari fakta – fakta khusus untuk mendapatkan kesimpulan
Contoh :
Premis 1 : Aljabar adalah pelajaran yang sulit
Premis 2 : Geometri adalah pelajaran yang sulit
Premis 3 : Kalkulus adalah pelajaran yang sulit
Konklusi : Matematika adalah pelajaran yang sulit

Munculnya premis baru bisa mengakibatkan gugurnya konklusi yang sudah


diperoleh, misal :
Premis 4 : Kinematika adalah pelajaran yang sulit
3

Premis tersebut menyebabkan konklusi : “Matematika adalah pelajaran yang sulit”


menjadi salah, karena kinematika buka merupakan bagian dari matematika. Adalah
sulit bila menggunakan penalaran induktif karena sangat dimungkinkan adanya
ketidakpastian.

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))

Mahasiswa berada di dalam kelas


Di dalam (Mahasiswa, Kelas)

Dari contoh di atas dapat dijabarkan sebagai berikut.


Di dalam = predikat (keterangan)
Mahasiswa = argumen (objek)
Kelas = argumen (objek)

Jaringan Semantik
5

Jaringan semantik merupakan gambaran pengetahuan grafik yang menunjukkan


hubungan antar berbagai objek. Jaringan semantik terdiri dari lingkaran – lingkaran yang
menunjukkan objek dan informasi tentang objek – objek tersebut. Objek di sini bisa
berupa benda atau peristiwa. Antara 2 objek dihubungkan oleh arc (panah) yang
menunjukkan hubungan antar objek. Gambar berikut menunjukkan representasi
pengetahuan menggunakan jaringan semantik.

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

adalah adalah Baju

M. Hidup adalah Wanita

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.

Kamar Hotel Kursi Hotel


Spesialisasi dari : kamar Spesialisasi dari : kursi
Tempat : Hotel Tinggi : 20 – 40 cm
Isi : Kursi hotel, telepon hotel, Jumlah kaki : 4
ranjang hotel
Kegunaan : tempat duduk

Telepon Hotel
Spesialisasi dari : telepon
Kegunaan : Memanggil
Pelayan Kamar

Pembayaran : Melalui Kamar


7

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.

Script mempunyai beberapa elemen yang tipikal, yaitu (Suparman : 1991) :


1. Kondisi masukan menggambarkan situasi yang harus dipenuhi sebelum terjadi atau
berlaku suatu peristiwa yang ada dalam script.
2. Prop mengacu kepada objek yang digunakan dalam urutan peristiwa yang terjadi
3. Role mengacu kepada orang - orang yang terlibat dalam script. Hasilnya adalah
kondisi yang ada sesudah peristiwa dalam script berlangsung.
4. Track mengacu kepada variasi yang mungkin terjadi dalam script tertentu.
5. Scene menggambarkan urutan peristiwa aktual yang terjadi.
8

6. Hasil merupakan kondisi setelah urutan peristiwa dalam script terjadi.

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 (Scene) 1 : Masuk


• Tamu parkir mobil
• Tamu masuk restoran
• Tamu antri
• Tamu baca menu di daftar menu dan mengambil putusan tentang apa yang akan
dipesan

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

• Tamu meninggalkan restoran


• Tamu naik mobil dan pulang

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

Sistem Pakar (Expert System)


Penjelasan mengenai Sistem Pakar apabila ditinjau dari beberapa aspek, antara
lain :
• Implementasi kecerdasan sang pakar berbasis kode program komputer (code base
skill implemetation), menggunakan teknik-teknik tertentu dengan bantuan database
ataupun tidak.
• Suatu bidang dari ilmu kecerdasan buatan dalam kaitannya dengan sistem pendukung
keputusan yang dirancang dengan memasukkan unsur-unsur keahlian dari satu atau
beberapa orang pakar kedalam suatu konsep terprogram (code base concept) dalam
rangka pengambilan keputusan.
• Menurut Marimin (1992), sistem pakar adalah sistem perangkat lunak komputer yang
menggunakan ilmu, fakta, dan teknik berpikir dalam pengambilan keputusan untuk
menyelesaikan masalah-masalah yang biasanya hanya dapat diselesaikan oleh tenaga
ahli dalam bidang yang bersangkutan.

Adapun ciri – ciri sistem pakar diantaranya adalah :


o Bekerja secara sistematis berdasarkan pengetahuan dan mekanisme tertentu.
o Pengambilan keputusan berdasarkan kaidah-kaidah tertentu dan dapat merespons
masukkan user (melalui kotak dialog).
o Dapat menalar data-data yang tidak pasti dan memberikan beberapa alasan pemilihan.
o Dikembangkan secara bertahap dan terbatas pada bidang keahlian tertentu saja.
o Outputnya berupa saran atau anjuran.

Beberapa kelebihan dari sistem pakar antara lain :


1. Efisiensi waktu, namun sistem atau orang biasa/awam yang terlibat di dalamnya
bekerja layaknya sang pakar.
2. Penyimpanan data-data pengetahun ke dalam database dengan lengkap dan terpercaya
menyebabkan informasi yang dibutuhkan bisa diakses dalam jangka waktu yang
cukup lama. Sehingga seseorang yang berkonsultasi dengan sistem tersebut seolah-
olah berkonsultasi dengan pakar aslinya.
11

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.

Kerugian Expert System :


1 Sistem pakar hanya dapat menangani pengetahuan yang konsisten. Sistem pakar
dirancang dengan aturan-aturan yang hasilnya sudah pasti dan konsisten sesuai
dengan alur di diagram pohonnya. Untuk pengetahuan yang cepat berubah-rubah dari
waktu ke waktu, maka knowledge base di sistem pakar harus selalu diubah (perbarui),
yang tentu cukup merepotkan.
2 Sistem pakar tidak dapat menangani hal yang bersifat judgement. Sistem pakar
memberikan hasil yang pasti, sehingga keputusan akhir pengambilan keputusan jika
melibatkan kebijaksaaan dan institusi masih tetap di tangan manajemen.
3 Format knowledge base sistem pakar terbatas. Knowledge base pada sistem pakar
berisi aturan-aturan (rules) yang ditulis dalam bentuk statemen if-then.

Expert System terdiri dari 4 bagian yang harus dimilikinya yaitu :


1. Knowledge Base
Sebuah database yang menyimpan informasi pengetahuan tertentu dan aturan – aturan
tentang subjek tertentu.
Representasi pengetahuan dengan sistem produksi berupa aplikasi aturan (Rule) yang
berupa :
12

1. Antecedent, yaitu bagian yang mengekspresikan situasi atau premis (pernyataan


berawalan IF)
2. Konsekuen, yaitu bagian yang menyatakan suatu tindakan tertentu atau konklusi yang
diterapkan jika suatu situasi atau premis bernilai benar (pernyataan berawalan Then)
Contoh : If The Traffic Light is Green then The Action is go

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

THEN the action is ‘check the battery’;


step2 is complete

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.

Cara kerja inference Engine adalah sebagai berikut.


1. Inference Engine akan melakukan pencocokan antara fakta yang berupa If part yang
diinputkan oleh user dengan knowledge di dalam database
2. Jika If dari knowledge base = fact dalam database maka rule tersebut akan dieksekusi
3. Dihasilkan suatu pengetahuan berdasarkan rule yang dieksekusi.

1) Forward Chaining

Bentuk Bulat Berbiji Tunggal

Kulitnya Berambut

Tumbuhan Daerah Panas

Pohon Rambutan

2) Backward Chaining
14

Start Goal : Pohon Rambutan

Tumbuhan Daerah Panas

Kulitnya berambut Kulitnya halus

Berbiji Tunggal Berbiji Banyak

Bentuknya bulat Bentuknya panjang

3. Antar Muka Pemakai (User Interface)


- Bagian penghubung antara sistem pakar dengan pemakai
- Akan terjadi dialog antara program dan pemakai
- Program akan mengajukan pertanyaan – pertanyaan dan jawaban berbentuk “ya” /
“tidak”, berbentuk panduan menu (menu driven), pernyataan – pernyataan bahasa
alami (natural language), dan graphics interface style. Program sistem pakar akan
mengambil kesimpulan berdasarkan jawaban – jawaban dari pemakai tadi.

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

Baik Baik Tidak segar, berbekas Baik Baik Baik Baik


paru-paru
Baik Baik Berbekas paru-paru Baik Baik Baik Baik
Baik Gundul Gugur, bercak-bercak Bercak- Mati Bergulung Gugur
coklat bercak coklat
Baik Bercak basah Tidak Segar Baik Jaringan kulit Tidak berkembang Tidak
berubah berkembang

Baik Baik Terdapat lapisan hitam Baik Jorok Baik Baik


Baik Baik Gugur, menguning, tulang Baik Baik Baik Berlebihan
daun pucat
Baik Kulit kehitam- Warna kekuningan- Baik Terdapat spora Baik Baik
hitaman kuningan cendawan
putih
Baik Baik Terdapat lapisan warna Baik Baik Baik Baik
putih, mengeriting, bentuk
daun menyimpang
Baik Terdapat Gugur Terdapat Mati Tidak segar Gugur
sarang laba- bintik-bintik
laba spora
Baik Baik Jorok, bercak hitam, tidak Baik Baik Tidak segar Terdapat larv
segar putih
Baik Baik Baik Baik Baik Bergulung Tidak muncu
Baik Bersisik Berkerut Kerdil Kerdil Tidak berkembang Tak
berkembang
Baik Jorok Tidak segar Kerdil Kerdil Tidak berkembang Tak
berkembang
Baik Terdapat Tidak segar Rapuh Kerdil Tidak segar Tak
bercak hitam berkembang
Baik Terdapat Ada bekas gigitan Baik Baik Terputus, tidak Baik
bercak memunculkan
berlendir bunga
Berlendir Tak segar Gugur Kerdil Kerdil Tidak segar Berlebihan
Tak Seperti Stress Tidak segar Kerdil Rontok Tidak muncul Gugur
berkembang
Baik Baik Ada bekas gigitan Baik Baik Tidak muncul Jarang
Baik Terdapat Tidak segar Baik Baik Baik Baik
bercak seperti
Mata ikan
16

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

Sedangkan Isi Tabel Penanggulangannya adalah sebagai berikut.


TblPenanggulangan
Jenis Penyakit Penanggulangan
Trips Potong Cabang yang terserang, hindari Mulsa, gunakan Insektisida
Tungau Atur tajuk, jauhkan mulsa jerami, gunakan Akrisida
Lalat Buah Musnahkan buah yang terserang, gunakan tanaman perangkap, lakukan pengasapan, gunakan
pestisida.
Ulat Penggerek Musnahkan bagian yang terserang, petik bunga/buah yang terserang, gunakan Ablysilan citri, gu
Paru Buah Potong bagian yang terserang, gunakan tanaman alami, gunakan insektisida yang terdaftar
Antroknosa Jaga kesuburan tanah, Lakukan sanitasi, potong cabang yang rimbun, funsida Mankozeb
Busuk Pangkal Hindari pengairan, hindari luka pada batang dan akar, potong bagian yang terserang, pemupuka
Batang
Embun Jelaga Potong cabang yang tidak produktif, gunakan fungsida, gunakan insektida.
Trestesa Lakukan Eradikasi, Tanaman Inang, gunakan Insektisida
Diplodia Potong bagian yang terserang, bersihkan Gulma, kurangi Kelembaban, Penjarangan buah, bers
California
Embun Tepung Lakukan Sanitasi Tunas, Semprot serbuk Belerang, gunakan fungsida
Jamur Upas Lakukan sanitasi kebun, potong bagian yang terserang, hindari kelembaban, oleskan fungsida
Kutu Babi Lakukan pemangkasan, bersihkan gulma, gunakan pestisida
Kutu Buah Hindari pemadatan cabang,Semprotkan serbuk belerang, semprotkan pembersih, gunakan Meth
Kutu Sisik Lakukan pemengkasan, hindari kelembaban, gunakan pestisida Tiamutaksan
Lada-lada Lakukan pembersihan, gunakan pembersih, gunakan pestisida Tramutaksan
Kopsit Gunakan Tramuksan, Asejab
Keong Taburkan Limbah kulit Padi disekitar batang, bersihkan gulma, lakukan penyemprotan dengan a
Busuk Akar Bersihkan gulma, Hindari kelembaban, potong akar yang busuk, lakukan pemupukan seimbang.
Kangker Lakukan Penggemburan disekitar batang, pemberian Tanah gemuk, Pupuk nitrogen, bongkar
Tua-tua Hindari kepadatan ranting, semprotkan serbuk belerang, gunakan pestisida Metomil
Mata Ikan Hindari kepadatan cabang, gunakan pestisida Difakonozol, Hexakomozol
Jamur Merah Lakukan pembersihan batang, semprotkan pembersih, gunakan petisita Samite
Kudis Jaga tingkat kelebaban, usahakan tajuk kena sinar matahari, gunakan pestida yang terdaftar.
Buah Busuk Lakukan pemangkasan, gunakan pestisida Benlox, Mankazeb
17

Cara Kerja Sistem Pakar


Adapun cara kerja dari sistem pakar untuk mendeteksi penyakit jeruk ini adalah sebagai
berikut.
1. User diminta untuk menginputkan data akar, batang, daun, cabang, ranting, tunas,
bunga, dan buah.
2. Berdasarkan data – data yang sudah diinputkan oleh user maka sistem pakar
kemudian akan mencari jenis penyakit apa yang menyerang tanaman.
3. Berdasarkan jenis penyakit yang sudah teridentifikasi ini kemudian sistem pakar akan
memberikan solusi penanggulangannya.

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.

Adapun bentuk tampilan form penanggulangan adalah sebagai berikut.

Combo1

Text1

Adapun kode programnya adalah sebagai berikut.


Kode Program untuk Modul
Option Explicit
Public KonekDb As New ADODB.Connection

Public Rs_jeruk As ADODB.Recordset


Public Rs_penyakit As ADODB.Recordset

Public Rs_jeruk1 As ADODB.Recordset


Public Rs_penyakit1 As ADODB.Recordset
19

Public StrKonekDb As String


Public strSQL, SQL, sqldasal As String

Public Sub BukaDatabase()


Set KonekDb = New ADODB.Connection

StrKonekDb = "Provider=Microsoft.Jet.OLEDB.4.0;Persist " _


& "Security Info=False;Data Source=" _
& App.Path + "\jeruk.mdb"

On Error Resume Next


If KonekDb.State = adStateOpen Then
KonekDb.Close
Set KonekDb = New ADODB.Connection
KonekDb.Open StrKonekDb
Else
KonekDb.Open StrKonekDb
End If

'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

& " FROM TabelPenyakit "


Set Rs_penyakit = New ADODB.Recordset
Rs_penyakit.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
SQL = ""
SQL = "SELECT *" _
& " FROM TblPenanggulangan "
Set Rs_jeruk1 = New ADODB.Recordset
Rs_jeruk1.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic

SQL = ""
SQL = "SELECT *" _
& " FROM TblPenanggulangan "
Set Rs_penyakit1 = New ADODB.Recordset
Rs_penyakit1.Open SQL, _
KonekDb, adOpenDynamic, adLockOptimistic
End Sub

Kode Program untuk Form Gejala


Dim a(100) As String
Dim b(100) As String
Dim c(100) As String
Dim d(100) As String
Dim e(100) As String
Dim f(100) As String
Dim g(100) As String
Dim h(100) As String
Dim a1(100) As String
Dim b1(100) As String
Dim c1(100) As String
Dim d1(100) As String
Dim e1(100) As String
Dim f1(100) As String
Dim g1(100) As String
Dim h1(1100) As String

Private Sub Command1_Click()


21

Set Rs_penyakit = New ADODB.Recordset


SQL = "SELECT *FROM tabelpenyakit where akar ='" & Combo1.Text &
"' and batang='" & Combo2.Text & "' and daun='" & Combo3.Text & "' and
cabang='" & Combo4.Text & "' and ranting='" & Combo5.Text & "' and
tunas='" & Combo6.Text & "' and bunga='" & Combo7.Text & "' and buah='"
& Combo8.Text & "'"
Rs_penyakit.Open SQL, KonekDb, adOpenKeyset, adLockReadOnly,
adCmdText
If Rs_penyakit.BOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Else
Rs_penyakit.MoveFirst
Do While Not Rs_penyakit.EOF
On Error Resume Next
Text1.Text = Rs_penyakit!penyakit

Rs_penyakit.MoveNext
Loop
End If
End Sub

Private Sub Command2_Click()


Unload Me
End Sub

Private Sub Form_Load()


Call BukaDatabase
With Rs_jeruk
.MoveFirst
Do While Not .EOF
'MsgBox tampung
a(jum) = !akar
b(jum) = !batang
c(jum) = !daun
d(jum) = !cabang
e(jum) = !ranting
f(jum) = !tunas
22

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

Kode Program untuk Form Penanggulangan


Dim a(100) As String

Private Sub Command1_Click()


Set Rs_penyakit1 = New ADODB.Recordset
SQL = "SELECT *FROM tblPenanggulangan where [jenis penyakit] ='"
& Combo1.Text & "'"
Rs_penyakit1.Open SQL, KonekDb, adOpenKeyset, adLockReadOnly,
adCmdText
If Rs_penyakit1.BOF Then
MsgBox "Data tidak ditemukan"
Exit Sub
Else
Rs_penyakit1.MoveFirst
Do While Not Rs_penyakit1.EOF
On Error Resume Next
Text1.Text = Rs_penyakit1!penanggulangan

Rs_penyakit1.MoveNext
Loop
End If
End Sub

Private Sub Command2_Click()


Unload Me
End Sub
26

Private Sub Form_Load()


Call BukaDatabase
With Rs_jeruk1
.MoveFirst
Do While Not .EOF
'MsgBox tampung
a(jum) = ![jenis penyakit]

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).

Illustrasi Data Mining :


1. Bayangkan berapa transaksi yang dimasukkan oleh Hypermarket semacam Carrefour
atau transaksi kartu kredit dari sebuah bank dalam seharinya dan bayangkan betapa
besarnya ukuran data mereka jika nanti telah berjalan beberapa tahun.
Pertanyaannya adalah, apakah data tersebut akan dibiarkan menggunung, tidak
berguna lalu dibuang, ataukah kita dapat menambangnya untuk mencari emas, berlian
yaitu informasi yang berguna untuk organisasi kita. Misalnya dari data penjualan dari
Hypermarket Carrefour kita bisa mengetahui jika untuk meningkatkan penjualan
produk A maka kita harus meletakkan produk A berdekatan dengan produk apa.
2. Jika Anda mempunyai kartu kredit, sudah pasti Anda bakal sering menerima surat
berisi brosur penawaran barang atau jasa. Jika bank pemberi kartu kredit mempunyai
1.000.000 nasabah, dan mengirimkan sebuah (hanya satu) penawaran dengan biaya
pengiriman sebesar Rp. 1.000 per buah maka biaya yang dihabiskan adalah Rp. 1
Milyar.
Jika bank tersebut mengirimkan penawaran sekali sebulan berarti 12 x dalam setahun,
maka anggaran yang dikeluarkan per tahunnya adalah Rp. 12 Milyar.
Dari dana Rp. 12 Milyar yang dikeluarkan, berapa persenkah konsumen yang benar –
benar membeli? Mungkin hanya 10% nya. Secara harfiah, berarti 90% dana tersebut
terbuang sia – sia.
Persoalan di atas merupakan salah satu persoalan yang dapat diatasi oleh Data Mining
dari sekian banyak potensi permasalahan yang ada.
30

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

Teori Rough Set dan Data Mining


Teori Rough Set adalah sebuah teknik matematika yang dikembangkan oleh Pawlack
pada Tahun 1980. Teknik ini merupakan teknik yang efisien untuk KDD proses dan Data
Mining.

Secara umum, teori Rough Set telah digunakan dalam banyak aplikasi seperti Medicine,
Pharmacology, Business, Banking, Engineering Design, Image Processing, dan Decision
Analysis.

Atribut di dalam Rough Set ada 2 yaitu :


1. Atribut kondisi (Conditional Attribute)
2. Atribut keputusan (Decision Attribute)

Rough set menawarkan dua bentuk representasi data yaitu Information System (IS) dan
Decision System (DS).
31

Definisi Information System : Sebuah Information System (IS) adalah pasangan IS =


{U,A}, di mana U = {e1, e2, e3, …, em} dan A = {a1, a2, …, an} yang merupakan
sekumpulan example dan atribut kondisi secara berurutan.

Definisi di atas memperlihatkan bahwa sebuah Information System terdiri dari


sekumpulan example, seperti {e1, e2, …, em} dan atribut kondisi, seperti {a1, a2, …,
an}. Sebuah Information System yang sederhana dapat dilihat pada tabel di bawah ini.

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

Tabel di atas memperlihatkan sebuah Information System yang sederhana. Dalam


Information System, tiap – tiap baris merepresentasikan objek sedangkan Column
merepresentasikan attribute. Di mana terdiri dari m objek, seperti E1, E2, E3, ... , Em, dan
n attribute seperti Studies, Education, ...., Works.
32

Dalam banyak aplikasi, sebuah outcome dari pengklasifikasian diketahui yang


direpresentasikan dengan sebuah Decision Attribute,C = {C1, C2, ... , Cp). Maka
Information System (IS) menjadi IS = (U, {A,C}). Decision Systems (DS) yang
sederhana dapat diperlihatkan pada tabel di bawah ini.

Decision Attribute

Example Studies Education .... Works Income


E1 Poor SMU .... Poor None
E2 Poor SMU .... Good Low
E3 Moderate SMU .... Poor Low
E4 Moderate Diploma .... Poor Low
E5 Poor SMU .... Poor None
E6 Poor SMU .... Poor None
E7 Moderate Diploma .... Poor Low
E8 Good MSc .... Good Medium
E9 Good MSc .... Good Medium
E10 Good MSc .... Good High
.... .... .... .... .... ....
E99 Poor SMU .... Good Low
E100 Moderate Diploma .... Poor Low

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 Studies Education Works Income Num_Obj


EC1 Poor SMU Poor None 50
EC2 Poor SMU Good Low 5
EC3 Moderate SMU Poor Low 30
EC4 Moderate Diploma Poor Low 10
EC5,1 Good MSc Good Medium 4
EC5,2 Good MSC Good High 1

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.

Setelah dibentuk Equivalence Class maka langkah selanjutnya adalah membentuk


Discernibility Matrix. Definisi Discernibility Matrix : Diberikan sebuah IS A = (U,A) and
B ⊆ A, Discernibility matrix dari A adalah MB, di mana tiap – tiap entry MB (I,j) terdiri
dari sekumpulan attribute yang berbeda antara objek Xi dan Xj. Tabel berikut
memperlihatkan Discernibility Matrix dari tabel sebelumnya.

EC1 EC2 EC3 EC4 EC5


EC1 x C A Ab Abc
EC2 C X Ac Abc Ab
34

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.

Adapun Discernibility Matrix Modulo D dapat dilihat pada tabel berikut.


EC1 EC2 EC3 EC4 EC5
EC1 X C A Ab Abc
EC2 C X X x Ab
EC3 A X X X Abc
EC4 Ab X X X Abc
EC5 Abc Ab Abc Abc X

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

Reduct = (b,c)  (Education, Works)


- If education = SMU and works = poor then income = none or income = low
- If education = SMU and works = good then income = low
- If education = diploma and works = poor then income = low
- If education = MSc and works = good then income = medium or income = high

Reduct = (a)  (Studies)


- If studies = poor then income = none or income = low
- If studies = moderate then income = low

Reduct = (b)  (education)


- If education = SMU then income = none or income = low
- If education = Diploma then income = low
- If education = MSc 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

E2 Poor SMU .... Good Low


E3 Moderate SMU .... Poor Low
E4 Moderate Diploma .... Poor Low
E5 Poor SMU .... Poor None
E6 Poor SMU .... Poor None
E7 Moderate Diploma .... Poor Low
E8 Good MSc .... Good Medium
E9 Good MSc .... Good Medium
E10 Good MSc .... Good High
.... .... .... .... .... ....
E99 Poor SMU .... Good Low
E100 Moderate Diploma .... Poor Low
37

2. Kemudian setelah itu jalankan progra aplikasi Rosetta. Maka akan dijumpai tampilan
berikut.
38

3. Setelah itu klik menu File – New


4. Maka akan dijumpai tampilan berikut.

5. Selanjutnya klik kanan pada bagian Structures, lalu pilih ODBC. Maka akan muncul
tampilan berikut.
39

6. Selanjutnya pilih Open Database. Makan akan dijumpai tampilan berikut.

7. Pilih Tab Machine Data Source.

8. Pilih Excel Files. Setelah itu OK


9. Selanjutnya pilih lokasi penyimpanan file Excel dan pilih file excel yang ingin
digunakan sebagai data. Setelah itu klik OK.
10. Maka akan muncul tampilan berikut.
40

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.

14. Setelah itu OK, maka akan dijumpati 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%)

Komponen Proses Belajar Mengajar


Kriteria Yang Dinilai Bobot
a. Memenuhi jumlah tatap muka sesuai dengan yang 10%
dijadwalkan, termasuk hadir dan selesai tepat waktu
b. Membuat Soal Ujian, Jawaban dan mengkoreksi tepat 10%
waktu
c. Mengawas ujian seusai dengan penjadwalan dan tugas 5%
utama
d. Menguji magang kerja dan skripsi sesuai dengan 5%
penjadwalan
e. Hasil feed back / penilaian dari mahasiswa tentang proses 20%
belajar mengajar

Komponen Bimbingan dan Konsultasi


Kriteria Yang Dinilai Bobot
a. Memberikan bimbingan magang kerja / KP dan Skripsi 10%
b. Menjadi penasehat akademik (dosen wali) 10%
44

Komponen Penelitian dan Pengabdian pada Masyarakat

Kriteria Yang Dinilai Bobot


a. Membuat karya ilmiah : penelitian, makalah, buku, 10%
diktat, artikel di jurnal / majalah / koran, dsb
b. Melakukan pengabdian masyarakat : bakti sosial, 10%
memberikan penyuluhan / pelatihan, termasuk membina
mahasiswa

Komponen Tugas Lain di Luar Tugas Utama

Kriteria Yang Dinilai Bobot


a. Bertugas sebagai panitia 5%
b. Menghadiri kegiatan yang diselenggarakan perguruan 10%
tinggi : seminar, pelatihan, simposium, rapat kerja,
upacara, dsb

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

NIDN Nama Dosen Nilai Nilai Nilai Nilai Jumlah Keputusan


PBM BK PPM TL Nilai
0004076207 Dr. Edy Hermansyah, PhD 45 15 16 10 86 Sangat Baik
0003125905 Drs. Indra Sakti L, MPd 39 10 15 8 75 Baik
0210067002 Yulia Darmi, M.Kom 38 9 10 7 67 Cukup
0524117601 Andang Sunarto, M.Kom 40 15 15 10 78 Sangat baik
0020027105 Anizar Indriani, M.T. 40 10 15 7 72 Baik
0206077901 Herlina L.S, S.Kom 38 20 5 10 70 Baik
0213047501 Dini Selviana, S.Kom 35 15 5 10 65 Cukup
0206107901 Munazip Alperi, M.Si 42 8 20 5 70 Baik
0210128102 Ahmad Syakirman, S.Pd 43 7 10 10 72 Baik
0215127703 M. Jhon, M.Kom 35 12 15 10 75 Baik
46

Untuk atribut A dikelompokkan menjadi 4 kelompok, yaitu :


0 ≤ X ≤ 35 = 1
36 ≤ X ≤ 40 = 2
41 ≤ X ≤ 45 = 3
46 ≤ X ≤ 50 = 4

Untuk atribut B dikelompokkan menjadi 4 kelompok, yaitu :


0≤X≤8=1
9 ≤ X ≤ 12 = 2
13 ≤ X ≤ 16 = 3
17 ≤ X ≤ 20 = 4

Untuk atribut C dikelompokkan menjadi 4 kelompok, yaitu :


0≤X≤5=1
6 ≤ X ≤ 10 = 2
11 ≤ X ≤ 15 = 3
16 ≤ X ≤ 20 = 4

Untuk atribut D dikelompokkan menjadi 4 kelompok, yaitu :


0≤X≤2=1
3≤X≤5=2
6≤X≤8=3
9 ≤ X ≤ 10 = 4

Maka Decision System yang ada dapat dibuat Sebagai berikut.


47

NIDN Nama Dosen Nilai Nilai Nilai Nilai Jumlah Keputusan


PBM BK PPM TL Nilai
0004076207 Dr. Edy Hermansyah, PhD 3 3 4 4 4 4
0003125905 Drs. Indra Sakti L, MPd 2 2 3 3 3 3
0210067002 Yulia Darmi, M.Kom 2 2 2 3 2 2
0524117601 Andang Sunarto, M.Kom 2 3 3 4 4 4
0020027105 Anizar Indriani, M.T. 2 2 3 3 3 3
0206077901 Herlina L.S, S.Kom 2 4 1 4 3 3
0213047501 Dini Selviana, S.Kom 2 3 1 4 2 2
0206107901 Munazip Alperi, M.Si 3 1 4 2 3 3
0210128102 Ahmad Syakirman, S.Pd 3 1 2 4 3 3
0215127703 M. Jhon, M.Kom 1 2 3 4 3 3
48

Bila dibuat dalam bentuk equivalence class akan menjadi :


A B C D K
EC1 3 3 4 4 4
EC2 2 2 3 3 3
EC3 2 2 2 3 2
EC4 2 3 3 4 4
EC5 2 4 1 4 3
EC6 2 3 1 4 2
EC7 3 1 4 2 3
EC8 3 1 2 4 3
EC9 1 2 3 4 3

Selanjutnya akan dibuat Discernibility Matriz Modulo D


EC1 EC2 EC3 EC4 EC5 EC6 EC7 EC8 EC9
EC1 X ABCD ABCD X ABC AC BD BC ABC
EC2 ABCD X C BD X BCD X X X
EC3 ABCD C X BCD BCD X ABCD ABD ACD
EC4 X BD BCD X BC C ABCD ABC ABC
EC5 ABC X BCD BC X B X X X
EC6 AC BCD X C B X ABCD ABC ABC
EC7 BD X ABCD ABCD X ABCD X X X
EC8 BC X ABD ABC X ABC X X X
EC9 ABC X ACD ABC X ABC X X X
49

Class CNF of Boolean Function Prime Implicant Reducts


EC1 (A+B+C+D) * (A+B+C+D) * AB + BC + CD
(A+B+C) * (A+C) * (B+D) * (B+C) *
(A+B+C)
EC2 (A+B+C+D) * C * (B+D) * (B+C+D) C * (B+D) = CB
+ CD
EC3 (A+B+C+D) * C * (B+C+D) * BC + CD + AC
(B+C+D) * (A+B+C+D) * (A+B+D)
* (A+C+D)
EC4 (B+D) * (B+C+D) * (B+C) * C * BC + CD
(A+B+C+D) * (A+B+C) * (A+B+C)
EC5 (A+B+C) * (B+C+D) * (B+C) * B B
EC6 (A+C) * (B+C+D) * C * B * BC
(A+B+C+D) * (A+B+C) * (A+B+C)
EC7 (B+D) * (A+B+C+D) * (A+B+C+D) B + D
* (A+B+C+D)
EC8 (B+C) * (A+B+D) * (A+B+C) * B + CD + ACD
(A+B+C)
EC9 (A+B+C) * (A+C+D) * (A+B+C) * A+ C + BD
(A+B+C)
50

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.

Pengetahuan sendiri dapat didefinisikan sebagai kemampuan untuk memahami dan


mempelajari sesuatu (ability to understand and learn things).

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

Basis Pengetahuan Mesin Inferensi Memori Kerja


Ket (Kaidah) (Fakta)

Fasilitas Fasilitas Akuisisi


Penjelasan Pengetahuan

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.

Rule Base Expert System


Salah satu cara merepresentasikan pengetahuan yang kita kenal adalah dengan
menggunakan kaidah. Kaidah yang kita kenal terdiri dari bagian if (Antecedent /
conclution) dan bagian then (Consequent / action).

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

Terdapat beberapa tipe kaidah berdasarkan jenisnya :


1. Relation
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. Strategi
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
THEN the action is ‘check the battery’;
step2 is complete

4. Directive
Contoh :
IF the car is dead
54

AND the ‘fuel tank’ is empty


THEN the action is ‘refuel the car’

Inference Engine yang digunakan dapat menggunakan metode : Forward Chaining


(Runur Maju) dan Backward Chaining (Runut Mundur).

Adapun cara kerja inference engine adalah sebagai berikut.


1. Inference Engine akan melakukan pencocokan antara If Part dari fakta dengan fact
dalam knowledge base
2. Jika If dari fakta = fact dalam knowledge base maka rule tersebut akan di fire.

Dalam melakukan kegiatannya, inference engine dapat menggunakan beberapa


pendekatan seperti yang tersaji di bawah ini :
1. Runut Maju (Forward Chaining)
2. Runut Mundur (Backward Chaining)

Runut Maju (Forward Chaining)


Forward Chaining merupakan proses perunutan yang dimulai dengan menampilkan
kumpulan data atau fakta yang meyakinkan menuju konklusi akhir. Forward Chaining
sering juga disebyt dengan pencarian yang dimotori oleh data (data driven search). Jadi
dimulai dari premis – premis atau informasi masukan (if) dahulu kemudian menuju
konklusi atau derived information (then) atau dapat dimodelkan sebagai berikut :
If (Informasi Masukan)
Then (Konklusi)

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.

Runut Mundur (Backward Chaining)


Backward Chaining merupakan proses perunutan yang arahnya kebalikan dari runut
maju. Proses penalaran backward chaining dimulai dengan tujuan / goal kemudian
merunut balik ke jalur yang akan mengarahkan ke goal tersebut, mencari bukti – bukti
bahwa bagian kondisi terpenuhi. Jadi secara umum runut balik itu diaplikasikan ketika
tujuan atau hipotesis yang dipilih itu sebagai titik awal penyelesaian masalah. Disebut
juga goal driven search. Runut balik dimodelkan sebagai berikut.
Tujuan,
If (Kondisi)

Contoh sebelumnya bila dinyatakan dengan backward chaining sebagai berikut.


Lampu1 rusak,
If Lampu1 dinyalakan
And lampu1 tidak menyala
And lampu1 dihubungkan dengan sekring
And sekring masih bagus
56

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).

Faktor kepastian (certainty factor) diperkenalkan oleh Shortliffe Buchanan dalam


pembuatan MYCIN (Wesley, 1984). Certainty factor (CF) merupakan nilai parameter
klinis yang diberikan MYCIN untuk menunjukkan besarnya kepercayaan.

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:

CF(Rule) = MB(H, E) – MD(H, E) ............................................... (1)


1 if P(H) = 1
MB(H|E)= max[P(H|E) , P(H)] - P(H) ...............(2)
otherwise
1 - P(H)

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

P(H) dan P(H|E) merepresentasikan keyakinan dan ketidak yakinan pakar.


57

Untuk menghitung nilai P(H|E) nantinya kita akan menggunakan Probabilitas


Bayesian
b. Dengan menggali dari hasil wawancara dengan pakar [1]. Nilai CF(Rule) didapat dari
interpretasi ‘term’ dari pakar menjadi nilai CF tertentu (lihat tabel 1).

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

Maka besarnya nilai kepastian untuk gejala E adalah


CF (E) = Max [Min(E1, E2, E3), Min (E4, E5 ) ]
= Max [min(0.9, 0.8, 0.3), min (-0.5, 0.4)]
= Max [0.3, -0.5)
= 0.3

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

Maka tentukanlah besar cF gejala E !

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

Contoh penerapan certainty factor dalam If E then H adalah sebagai berikut.


If sesak napas and bronkhi krepitasi and demam and sesak napas berat then menderita
pneumonia, dengan CF = 0.87
Dengan memberikan notasi :
E1 : Sesak napas
E2 : bronkhi krepitasi
E3 : demam
59

E4 : sesak napas berat


H : menderita pneumonia

Nilai certainty factor hipotesa pada saat evidence pasti adalah :


CF (H,e) = CF (H, E1 and E2 and E3 and E4) = 0.87

Adapun besarnya nilai CF untuk gejala E adalah sebagai berikut.


E1 = 0.8, E2 = 0.5, E3 = 0.75, E4 = 0.4

CF (E, e) = min [E1, E2, E3, E4]


= Min[0.8, 0.5, 0.75, 0.4]
= 0.4

Dan nilai CF (H, e) = CF (E,e) * CF (H,E)


= 0.4 * 0.87
= 0.348
= 0.35 (Mungkin)

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

Maka tentukanlah besarnya CF (H, e) !

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

CF (R2) : max [CF(c), CF(d)] * CF (H)


= max [0.6, 0.9] * 0.7
= 0.9 * 0.7
= 0.63

CF (H) = CF (R1) + CF (R2) [1- CF (R1)]


= 0.48 + 0.63 [1 - 0.48]
= 0.48 + 0.63* 0.52 = 0.48 + 0.3276 = 0.8076
61

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 !

Teore Probabilitas Bayesian


Probabilitas Bayesian adalah salah satu cara untuk mengatasi ketidakpastian dengan
menggunakan formula Bayes yang dinyatakan sebagai berikut (Giarratano dan Riley.
2005) :
P(E | H )P(H )
P(H | E) = P(E )

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

Menghitung Nilai Certainty Factor dengan Metode Net Belief


Terdapat kaidah sebagai berikut.
If kulit berminyak then Phimosis
If kulit mengelupas then phimosis
If iritasi bagian bawah kulit then phimosis

Terdapat data sebagai berikut :


Dari data 10.000 penyakit A :
200 adalah penyakit Phimosis
Gejala kulit berminyak berjumlah 80 orang
Gejala kulit mengelupas berjumlah 100 orang
Gejala iritasi bagian bawah kulit berjumlah 20 orang.
Penyakit Phimosis dan juga terdapat gejala kulit berminyak berjumlah 32 orang atau 16%
dari total Phimosis
Penyakit phimosis dan juga terdapat gejala kulit mengelupas berjumlah 25% dari total
phimosis
63

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

CF1 = MB (H,E1) – MD (H, E1) = 0.39 – 0 = 0.39

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

CF2 = MB (H,E2) – MD (H, E2) = 0.49 – 0 = 0.49

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

CF3 = MB (H,E3) – MD (H, E3) = 0.0816 – 0 = 0.0816

CFKombinasi1(CF1,CF2) = CF1 + CF2(1-CF1)


= 0.39 + 0.49 * 0.61
= 0.69

CFKombinasi2(CFKombinasi1, CF3) = CFKombinasi1+CF3(1-CFKombinasi1)


= 0.69+0.0816(1-0.69)
= 0.69+0.0816(0.31)
= 0.69 + 0.025
= 0.715

Dengan demikian bahwa ketika sistem menyimpulkan bahwa bahwa penyakit yang
diderita pasien adalah Phimosis maka tingkat kepastiannya adalah sebesar : 0.715

Jika aturan tersebut dirangkai menjadi :


If kulit berminyak or kulit mengelupas or iritasi bagian bawah kulit then
Phimosis, maka tentukanlah berapa nilai keyakinannya !
Jawab :
66

Misal E1 = Kulit Berminyak = 0.39


Misal E2 = Kulit mengelupas = 0.49
Misal E3 = Iritasi bagian bawah kulit = 0.0816
Misal H = Phimosis = 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

Tentukanlah obat yang harus diberikan untuk gejala berikut.


a. Kulit berminyak
b. Kulit mengelupas dan juga terdapat iritasi bagian bawah kulit

Perhatikan permasalahan berikut.


beberapa kaidah dalam knowledge base dituliskan sebagai berikut:
Kaidah 2 Menderita Penyakit “GONORE”
dengan CF = 0.94
JIKA mengalami gejala/pernah CAIRAN BERCAMPUR NANAH pada lubang testis.
DAN mengalami gejala/pernah SAKIT SAAT KENCING pada bagian saluran
DAN mengalami gejala/pernah PANAS SAAT KENCING pada semua ba
DAN mengalami gejala/pernah GATAL SAAT KENCING pada ujung testis.
67

DAN mengalami gejala/pernah BERHUBUNGAN SEKS DENGAN WTS beberapa hari


yang lalu

Kaidah 3 Menderita Penyakit “UNS” dengan CF =


0.91
JIKA mengalami gejala/pernah GATAL SAAT KENCING pada ujung testis
DAN mengalami gejala/pernah BERCAK KUNING PADA CELANA saat bangun tidur
pagi
DAN mengalami gejala/pernah BERHUBUNGAN SEKS DENGAN WTS beberapa hari
yang lalu
DAN mengalami gejala/pernah PANAS SAAT KENCING pada semua bagian
DAN mengalami gejala/pernah SERING KENCING lebih dari dua puluh kali sehari

Kaidah terapi penyakit kelamin pria:


Kaidah 23 Gunakan obat “TETRAKSILIN”
JIKA mengalami penyakit “GONORE” dengan CF
0.01 s.d 0.40

Kaidah 24 Gunakan obat “SPIRAMYSIN”


JIKA mengalami penyakit “GONORE” dengan CF
0.31 s.d 0.60

Kaidah 25 Gunakan obat “AMPISILIN”


JIKA mengalami penyakit “GONORE” dengan CF
0.51 s.d 1.0

Kaidah 26 Gunakan obat “TETRAKSILIN HCL HCL”


JIKA mengalami penyakit “UNS” dengan CF 0.01
s.d 0.40

Kaidah 27 Gunakan obat “SULFA TRIMETROPRIM”


68

Jika Misalkan user mengisikan gejala yang dialaminya adalah:

Hasil konsultasi diperoleh data dari penderita


sebagai berikut:
Cairan bercampur nanah
Sakit saat kencing
Panas saat kencing
Gatal saat kencing pada ujung testis
Berhubungan seks dengan wts beberapa hari yang lalu
Bercak kuning pada celana saat bangun tidur pagi
Sering kencing lebih dari 20 kali sehari

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.

Tentukanlah obat yang harus diberikan !


69

Teknik Data Mining dengan Algoritma Apriori

Menurut Jurnal ”Penerapan Algoritma Apriori pada Data Mining Untuk

Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam

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

berdekatan, merancang tampilan produk di katalog, merancang kupon diskon (untuk

diberikan kepada pelanggan yang membeli produk tertentu), merancang penjualan paket,

dan lain – lain.

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

Data Mining Artificial


Statistik Intelligent

Dasar Data yang besar


( Seleksi, presentasi hasil) (normalisasi data,
transformasi, OLAP)

Database

Gambar 2.2 Bidang Ilmu Data Mining


Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.

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

kemungkinan seorang pelanggan membeli roti bersamaan dengan susu. Dengan

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

market basket analysis.

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

perhatian banyak peneliti untuk menghasilkan algoritma yang efisien.

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.

Aturan assosiatif biasanya dinyatakan dalam bentuk :

{roti, mentega} → {susu} (support = 40%, confidence = 50%)

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

signifikan karena mewakili 40% dari catatan transaksi selama ini."

Analisis asosiasi didefinisikan suatu proses untuk menemukan semua aturan

assosiatif yang memenuhi syarat minimum untuk support (minimum support) dan syarat

minimum untuk confidence (minimum confidence).

Metodologi dasar analisis asosiasi terbagi menjadi dua tahap :

A. Analisa pola frekuensi tinggi


72

Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari nilai

support dalam database. Nilai support sebuah item diperoleh dengan rumus 1 berikut:

Jumlah Transaksi Mengandung A


Support (A) = ………………..[rumus 1]
Total Transaksi

sedangkan nilai support dari 2 item diperoleh dari rumus 2 berikut :

Jumlah Transaksi Mengandung A dan B


Support (A, B) = P ( A ∩ B) = …[rumus 2]
Total Transaksi

Sebagai contoh, ada database dari transaksi belanja pasar swalayan seperti

ditunjukkan dalam tabel 2.1 berikut :

Tabel 2.1 Transaksi

Transaction Item Purchased


1 Broccoli, Green Peppers, Corn
2 Asparagus, Squash, Corn
3 Corn, Tomatoes, Beans, Squash
4 Green Peppers, Corn, Tomatoes, Beans
5 Beans, Asparagus, Broccoli
6 Squash, Asparagus, Beans, Tomatoes
7 Tomatoes, Corn
8 Broccoli, Tomatoes, Green Peppers
9 Squash, Asparagus, Beans
10 Beans, Corn
11 Green Peppers, Broccoli, Beans, Squash
12 Asparagus, Beans, Squash
13 Squash, Corn, Asparagus, Beans
14 Corn, Geen Peppers, Tomatoes, Beans, Broccoli

Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.
73

Data tersebut di atas dalam database transaksional biasa direpresentasikan dalam

bentuk seperti tampak pada tabel 2.2 berikut:

Tabel 2.2 Representasi Data Transaksi dalam Database Transaksional

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

tabel 2.3 berikut:


74

Tabel 2.3 Format Tabular Data Transaksi

Transaction Asparagus Beans Broccoli Corn Green Peppers Squash Tomatoes


1 0 0 1 1 1 0 0
2 1 0 0 1 0 1 0
3 0 1 0 1 0 1 1
4 0 1 0 1 1 0 1
5 1 1 1 0 0 0 0
6 1 1 0 0 0 1 1
7 0 0 0 1 0 0 1
8 0 0 1 0 1 0 1
9 1 1 0 0 0 1 0
10 0 1 0 1 0 0 0
11 0 1 1 0 1 1 0
12 1 1 0 0 0 1 0
13 1 1 0 1 0 1 0
14 0 1 1 1 1 0 1

Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk
Mengelompokkan Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.

Misalkan D adalah himpunan transaksi yang direperesentasikan dalam tabel 1,

dimana masing-masing transaksi T dalam D merepresentasikan himpunan item yang

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 )

Dimana antecedent A dan consequent B merupakan subset dari I, dan A dan B

merupakan mutually exclusive. Definisi ini tidak berlaku untuk aturan trivial seperti :
75

Jika Beans dan Squash maka Beans

Seorang analis mungkin hanya akan mengambil aturan yang memiliki support

dan/atau confidence yang tinggi. Aturan yang kuat adalah aturan – aturan yang melebihi

kriteria support dan/atau confidence minimum.

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

dilambangkan dengan Fk [3].

Tabel 2.4 berikut ini menujukkan calon 2-itemset dari data transaksi pada tabel 2.1.
76

Tabel 2.4 Calon 2-Itemset

Combination Count Combination Count


Asparagus, Beans 5 Broccoli, Corn 2
Asparagus, Broccoli 1 Broccoli, Green Peppers 4
Asparagus, Corn 2 Broccoli, Squash 1
Asparagus, Green Peppers 0 Broccoli, Tomatoes 2
Asparagus, Squash 5 Corn, Green Peppers 3
Asparagus, Tomatoes 1 Corn, Squash 3
Beans, Broccoli 3 Corn, Tomatoes 4
Beans, Corn 5 Green Peppers, Squash 1
Beans, Green Peppers 3 Green Peppers, Tomatoes 3
Beans, Squash 6 Squash, Tomatoes 2
Beans, Tomatoes 4

Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk Mengelompokkan
Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.

Dari data tersebut diatas, jika ditetapkan nilai ф = 4 maka

F2 = { {asparagus, beans}, {asparagus, squash}, {beans,corn}, {beans, squash}, {beans,

tomatoes}, {broccoli, green peppers}, {corn,tomatoes} }

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

tampak pada tabel 2.5 berikut:


77

Tabel 2.5 Calon 3 – Itemset

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”.

Dengan demikian F3 = {{asparagus, beans, squash}}, karena hanya kombinasi

inilah yang memiliki frekeunsi kemunculan >= ф.

B. Pembentukan aturan assosiatif


Setelah semua pola frekuensi tinggi ditemukan, barulah dicari aturan assosiatif yang

memenuhi syarat minimum untuk confidence dengan menghitung confidence aturan

assosiatif A → B. Nilai confidence dari aturan A → B diperoleh dari rumus 3 berikut:


Jumlah Transaksi Mengandung A dan B
Confidence = P (A | B) = ...[rumus 3]
Jumlah Transaksi Mengandung A

Dari F3 yang telah ditemukan, dapat dilihat besarnya nilai support dan confidence dari

calon aturan asosiasi seperti tampak pada tabel 2.6 berikut:


78

Tabel 2.6 Calon Aturan Asosiasi dari F3

If Antecedent, then Consequent Support Confidence


If buy asparagus and beans, then buy squash 4 / 14 = 28.6% 4 / 5 = 80%
If buy asparagus and squash, then buy beans 4 / 14 = 28.6% 4 / 5 = 80%
If buy beans and squash, then buy asparagus 4 / 14 = 28.6% 4 / 6 = 66.7%

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

terbentuk adalah aturan dengan 2 antecedent berikut:

If buy asparagus and beans, then buy squash

If buy asparagus and squash, then buy beans

Sementara itu calon aturan asosiasi dari F2 bisa dilihat pada tabel 2.7 berikut:

Tabel 2.7 Calon Aturan Asosiasi dari F2


If Antecedent, then Consequent Support Confidence
If buy asparagus, then buy beans 5 / 14 = 35.7% 5 / 6 = 83.3%
If buy beans, then buy asparagus 5 / 14 = 35.7% 5 / 10 = 50%
If buy asparagus, then buy squash 5 / 14 = 35.7% 5 / 6 = 83.3%
If buy squash, then buy asparagus 5 / 14 = 35.7% 5 / 7 = 71.4%
If buy beans, then buy corn 5 / 14 = 35.7% 5 / 10 = 50%
If buy corn, then buy beans 5 / 14 = 35.7% 5 / 8 = 62.5%
If buy beans, then buy squash 6 / 14 = 42.9% 6 / 10 = 60%
If buy squash, then buy beans 6 / 14 = 42.9% 6 / 7 = 85.7%
If buy beans, then buy tomatoes 4 / 14 = 28.6% 4 / 10 = 40%
If buy tomatoes, then buy beans 4 / 14 = 28.6% 4 / 6 = 66.7%
If buy broccoli, then buy green peppers 4 / 14 = 28.6% 4 / 5 = 80%
If buy green peppers, then buy broccoli 4 / 14 = 28.6% 4 / 5 = 80%
If buy corn, then buy tomatoes 4 / 14 = 28.6% 4 / 8 = 50%
If buy tomatoes, then buy corn 4 / 14 = 28.6% 4 / 6 = 66.7%

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

dilihat pada table 2.8 berikut:

Tabel 2.8 Aturan Asosiasi Final


If Antecedent, then Consequent Support Confidence Support x
Confidence
If buy squash, then buy beans 6 / 14 = 42/9% 6 / 7 = 85.7% 0.3677
If buy asparagus, then buy beans 5 / 14 = 35.7% 5 / 6 = 83.3% 0.2974
If buy asparagus, then buy squash 5 / 14 = 35.7% 5 / 6 = 83.3% 0.2974
If buy broccoli, then buy green peppers 4 / 14 = 28.6% 4 / 5 = 80% 0.2288
If buy green peppers, then buy broccoli 4 / 14 = 28.6% 4 / 5 = 80% 0.2288
If buy asparagus and beans, then buy 4 / 14 = 28.6% 4 / 5 = 80% 0.2288
squash
If buy asparagus and squash, then buy 4 / 14 = 28.6% 4 / 5 = 80% 0.2288
beans

Sumber : Kusrini (2007) . “Penerapan Algoritma Apriori pada Data Mining Untuk Mengelompokkan
Barang Berdasarkan Kecenderungan Kemunculan Bersama Dalam Satu Transaksi”.

Algoritma Nearest Neighbor


Adalah pendekatan untuk mencari suatu keputusan atas suatu data baru dengan melihat
kedekatan data baru dengan data lama, yaitu berdasarkan pada pencocokan bobot dari
sejumlah atribut yang ada. Data dengan kedekatan terbesarlah yang akan dijadikan
keputusan. Nilai kedekatan adalah berkisar antara 0 dan 1.

Langkah – langkah di dalam algoritma Nearest Neighbor adalah sebagai berikut.


1. Tentukanlah bobot untuk tiap atribut.
2. Tentukanlah kedekatan untuk masing – masing atribut.
80

Misalkan terdapat tabel kasus.


No Jenis Kelamin Pendidikan Agama Bermasalah
1 L S1 Islam Ya
2 P SMA Kristen Tidak
3 L SMA Islam Tidak

Definisi bobot atribut.


Atribut Bobot
Jenis Kelamin 0.5
Pendidikan 1
Agama 0.75

Kedekatan nilai atribut Jenis Kelamin


Nilai 1 Nilai 2 Kedekatan
L L 1
P P 1
L P 0.5
P L 0.5

Kedekatan nilai atribut pendidikan

Nilai 1 Nilai 2 Kedekatan


S1 S1 1
SMA SMA 1
S1 SMA 0.4
SMA S1 0.4
81

Kedekatan nilai atribut agama

Nilai 1 Nilai 2 Kedekatan


Islam Islam 1
Kristen Kristen 1
Islam Kristen 0.75
Kristen Islam 0.75

Misalkan terdapat data baru sebagai berikut.


Jenis Kelamin : L, Pendidikan : SMA, dan Agama : Kristen

Menghitung kedekatan dengan kasus No. 1


A : Kedekatan
BASIS PENGETAHUAN (KNOWLEDGE BASE)
Ada 2 bentuk pendekatan basis pengetahuan :
a. Penalaran berbasis aturan (rule-based reasoning)
Pengetahuan direpresentasikan dengan menggunakan aturan
berbentuk IF-THEN. Bentuk ini digunakan apabila kita memiliki
sejumlah pengetahuan pakar pada suatu permasalahan
tertentu, dan si pakar dapat menyelesaikan masalah tersebut
secara berurutan. Disamping itu, bentuk ini juga digunakan
apabila dibutuhkan penjelasan tentang jejak (langkah-langkah)
pencapaian solusi.

Contoh : aturan identifikasi hewan


Rule 1 : IF hewan berambut dan menyusui THEN hewan
mamalia
Rule 2 : IF hewan mempunyai sayap dan bertelur THEN hewan
jenis burung
Rule 3 : IF hewan mamalia dan memakan daging THEN hewan
karnivora
Dst...
b. Penalaran berbasis kasus (case-based reasoning)
Basis pengetahuan akan berisi solusi-solusi yang
telah dicapai sebelumnya, kemudian akan
diturunkan suatu solusi untuk keadaan yang terjadi
sekarang (fakta yang ada). Bentuk ini digunakan
apabila user menginginkan untuk tahu lebih banyak
lagi pada kasus-kasus yang hampir sama (mirip).
Selain itu bentuk ini juga digunakan bila telah
memiliki sejumlah situasi atau kasus tertentu dalam
basis pengetahuan.
REPRESENTASI
PENGETAHUAN
TRISTYANTI YUSNITASARI
AGENDA

1. APA ITU REPRESENTASI


PENGETAHUAN
2. BERBAGAI JENIS
PENGETAHUAN
3. SIKLUS REPRESENTASI
PENGETAHUAN
4. HUBUNGAN ANTARA
PENGETAHUAN DAN
KECERDASAN
5. TEKNIK REPRESENTASI
PENGETAHUAN
01. APA ITU REPRESENTASI
PENGETAHUAN

Knowledge Representation and reasoning


– Representasi pengetahuan dan
penalaran adalah representasi informasi
dari dunia nyata bagi komputer untuk
memahami dan kemudian menggunakan
pengetahuan ini untuk memecahkan
masalah kehidupan nyata seperti
berkomunikasi dengan manusia dalam
Bahasa alami.
02. JENIS PENGETAHUAN
1.Objek/benda
2.Event/peristiwa
3.Performa
4.Fakta
5.Meta – Knowledge
6.Dasar Pengetahuan (Knowledge Base)
5 Pengetahuan
Dalam AI
PENGETAHUAN DEKLARATIF
Mencakup konsep, fakta dan objek dan
diekspresikan dalam kalimat deklaratif
PENGETAHUAN STRUKTURAL
Pengetahuan dasar untuk pemecahan masalah yang
menggambarkan hubungan antara konsep dan objek
PENGETAHUAN PROSEDURAL
Jenis pengetahuan yang bertanggung jawab untuk
mengetahui bagaimana melakukan sesuatu dan
termasuk aturan, strategi, prosedur dll
META KNOWLEDGE
Pengetahuan tentang pengetahuan pengetahuan
lainnya
HEURISTIC KNOWLEDGE
Mempresentasikan pengetahuan beberapa ahli
dalam suatu bidang atau subjek
03. SIKLUS REPRESENTASI
PENGETAHUAN DALAM AI
■ Terdapat beberapa Komponen diantaranya adalah
– Perception
– Learning
– Knpwledge Representation and Reasoning
– Planning
– Execution
04. HUBUNGAN
ANTARA
PENGETAHUAN DAN
KECERDASAN
05. TEKNIK
REPRESENTASI
PENGETAHUAN
REPRESENTASI LOGIS
Representasi logis adalah Bahasa dengan beberapa aturan yang pasti yang
berhubungan dengan proposisi dan tidak memiliki ambiguitas dalam
representasi

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

Contoh Penalaran Deduktif


Premis Mayor : Jika hujan turun saya tidak akan pergi kekampus
Premis Minor : Pagi ini hujan turun
Konklusi : Pagi ini saya tidak akan pergi kekampus

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

PREDIKAT [individu[objek]1, induvidu[objek]2]


Contoh:
Mobil berada di dalam garasi
Dinyatakan menjadi :
Di dalam (mobil, garasi)

Contoh lain :
1. Robert suka Julia
2. Pintu Tertutup
REPRESENTASI
JARINGAN
SEMANTIK
- Dapat merepresentasikan
pengetahuan dalam bentuk grafik

-Jaringan ini terdiri dari node yang


mewakili objek dan busur yang
menggambarkan hubungan antara
objek-objek tersebut

- Jaringan semantik juga


mengkategorikan objek dalam
berbagai bentuk dan
menghubungkan objek-objek
tersebut
REPRESENTASI JARINGAN SEMANTIK
■ TERDIRI DARI 2 JENIS HUBUNGAN
– Relasi IS- A (Warisan)
– Jenis Hubungan

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)

Bingkai menambahkan kecerdasan pada


representasi data dan mengijinkan obyek
untuk menurunkan nilai dari obyek yang lain.
ATURAN PRODUKSI
■ Sistem aturan produksi terdiri dari pasangan (Kondisi,
Tindakan) yang berarti “JIKA Kondisi MAKA Tindakan”
■ JIKA masukan MAKA keluaran
■ JIKA anteseden MAKA konsekuen
■ JIKA Tindakan MAKA tujuan

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

 Analogi dengan ekspresi klasik Wirth :


ALGORITMA + STRUKTUR DATA = PROGRAM
 Knowledge pada ES :
KNOWLEDGE + INFERENSI = ES
Hirarki Knowledge

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

Teknik Representasi Pengetahuan :


“Menangkap sifat penting masalah dan membuat informasi dapat
diakses oleh prosedur pemecahan masalah”

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

<determine> digunakan untuk menunjukkan item


tertentu
Parse Tree atau Derivation Tree adalah
representasi grafik dari kalimat yang diuraikan
ke dalam seluruh terminal dan nonterminal
yang digunakan untuk mendapatkan kalimat.

Bagaimana derivative tree??


Jawab
<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

Subject Phrase Verb Object Phrase

Determiner Noun Determiner Adjective Noun

the man was a heavy eater


• Keuntungan Aturan Produksi :
– sederhana dan mudah dipahami
– implementasi secara straightforward sangat
dimungkinkan dalam computer
– dasar bagi berbagai variant
• Kelemahan Aturan Produksi :
– implementasi yang sederhana sering
menyebabkan inefisien
– beberapa tipe pengetahuan sulit
direpresentasikan dalam aturan produksi
2. Jaringan Semantic
• 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

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

ISA ISA ISA


Goodb
Spririt of Airforce
ye ar
St.Louis 1
Blimp

Keterangan : AKO = jenis dari


ISA = adalah
Has shape = berbentuk
• Perluasan Jaringan Semantik

Wings

HAS
IS A
Canary Bird

TRAVEL
Fly

• Penambahan dapat dilakukan dalam 3 cara :


– Objek yang sama
– Objek yang lebih khusus
– Objek yang lebih umum
Wings Air

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.

How do you How do you How do you


Travel ? Travel ? Travel ?
USER Tweety Canary Bird
Fly Fly Fly
TRAVEL

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.

Ada 3 hal yaitu OBJECT, ATTRIBUTE, VALUE (OAV)


Triplet, yang sering digunakan untuk membangun
jaringan semantic.
OBJECT : dapat berupa fisik atau konsepsi
ATTRIBUTE : karakteristik objek
VALUE : ukuran spesifik dari atribut dalam situasi
tertentu
Contoh :
Objek Atribut Nilai
Apel Warna Merah
Apel Tipe MCintosh
Apel Jumlah 100
Anggur Warna Merah
Anggur Tipe Seedless
Anggur Jumlah 500

Triplet OAV secara khusus digunakan untuk


mrepresentasikan fakta dan pola guna
menyesuaikan fakta dalam aturan yang antecedent.
Jaringan semantic untuk beberapa sistem terdiri
dari node untuk objek, atribut dan nilai yang
dihubungakan dengan IS A dan HAS A.
SCHEMATA
• Jaringan semantik contoh dari Shallow
knowledge Structure karena seluruh
pengetahuan jaringan semantik diisikan dalam
link dan node
• Concept schema : dengan skema tsb kita
dapat menunjukkan konsep.
• Contoh konsep mengenai binatang, setiap
orang mempunyai persepsi sendiri mengenai
binatang (berkaki 4 atau 2 , berbulu atau
bersisik dsb)
• Banyak pengetahuan yang digunakan dalam
proses penalaran kita sehari hari yang sudah
pasti dan sudah dikenal dengan baik. Hal ini
didasarkan kepada berbagai penampilan
situasi dan objek-objek khusus, dan proses
yang tak bervariasi.
• Pengetahuan semacam itu kita sebut
pengetahuan stereotype.
• Skema adalah satu metoda pengorganisasian,
presentasi dan penggunaan pengetahuan
stereotype agar komputer bisa menalar
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

 Analogi dengan ekspresi klasik Wirth :


ALGORITMA + STRUKTUR DATA = PROGRAM
 Knowledge pada ES :
KNOWLEDGE + INFERENSI = ES
Hirarki Knowledge

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

Teknik Representasi Pengetahuan :


“Menangkap sifat penting masalah dan membuat informasi dapat
diakses oleh prosedur pemecahan masalah”

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

<determine> digunakan untuk menunjukkan item


tertentu
 Parse Tree atau Derivation Tree adalah
representasi grafik dari kalimat yang diuraikan ke
dalam seluruh terminal dan nonterminal yang
digunakan untuk mendapatkan kalimat.

<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

Subject Phrase Verb Object Phrase

Determiner Noun Determiner Adjective Noun

the man was a heavy eater


• Keuntungan Aturan Produksi :
– sederhana dan mudah dipahami
– implementasi secara straightforward sangat
dimungkinkan dalam computer
– dasar bagi berbagai variant
• Kelemahan Aturan Produksi :
– implementasi yang sederhana sering
menyebabkan inefisien
– beberapa tipe pengetahuan sulit
direpresentasikan dalam aturan produksi
2. Jaringan Semantic
• 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

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

ISA ISA ISA


Goodb
Spririt of Airforce
ye ar
St.Louis 1
Blimp

Keterangan : AKO = jenis dari


ISA = adalah
Has shape = berbentuk
• Perluasan Jaringan Semantik

Wings

HAS
IS A
Canary Bird

TRAVEL
Fly

• Penambahan dapat dilakukan dalam 3 cara :


– Objek yang sama
– Objek yang lebih khusus
– Objek yang lebih umum
Wings Air

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.

How do you How do you How do you


Travel ? Travel ? Travel ?
USER Tweety Canary Bird
Fly Fly Fly
TRAVEL

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.

Ada 3 hal yaitu OBJECT, ATTRIBUTE, VALUE (OAV)


Triplet, yang sering digunakan untuk membangun
jaringan semantic.
OBJECT : dapat berupa fisik atau konsepsi
ATTRIBUTE : karakteristik objek
VALUE : ukuran spesifik dari atribut dalam situasi
tertentu
Contoh :
Objek Atribut Nilai
Apel Warna Merah
Apel Tipe MCintosh
Apel Jumlah 100
Anggur Warna Merah
Anggur Tipe Seedless
Anggur Jumlah 500

Triplet OAV secara khusus digunakan untuk


mrepresentasikan fakta dan pola guna
menyesuaikan fakta dalam aturan yang antecedent.
Jaringan semantic untuk beberapa sistem terdiri
dari node untuk objek, atribut dan nilai yang
dihubungakan dengan IS A dan HAS A.
SCHEMATA
• Jaringan semantik contoh dari Shallow
knowledge Structure karena seluruh
pengetahuan jaringan semantik diisikan dalam
link dan node
• Concept schema : dengan skema tsb kita
dapat menunjukkan konsep.
• Contoh konsep mengenai binatang, setiap
orang mempunyai persepsi sendiri mengenai
binatang (berkaki 4 atau 2 , berbulu atau
bersisik dsb)
• Banyak pengetahuan yang digunakan dalam
proses penalaran kita sehari hari yang sudah
pasti dan sudah dikenal dengan baik. Hal ini
didasarkan kepada berbagai penampilan
situasi dan objek-objek khusus, dan proses
yang tak bervariasi.
• Pengetahuan semacam itu kita sebut
pengetahuan stereotype.
• Skema adalah satu metoda pengorganisasian,
presentasi dan penggunaan pengetahuan
stereotype agar komputer bisa menalar
Sistem Berbasis
Pengetahuan
Minggu 3 & 4
5. Logika dan Himpunan
O Representasi pengetahuan dengan symbol
logika merupakan bagian dari penalaran
eksak.

O Bagian yang paling penting dalam penalaran


adalah mengambil kesimpulan dari premis.
O Logika dikembangkan oleh filusuf Yunani,
Aristoteles (abad ke 4 SM) didasarkan pada
silogisme, dengan dua premis dan satu
konklusi.
Contoh :
Premis : Semua laki-laki adalah makhluk
hidup
Premis : Socrates adalah laki-laki
Konklusi : Socrates adalah makhluk hidup
O Cara lain merepresentasikan pengetahuan adalah dengan
Diagram Venn.

Socrates

Laki-laki
Makhluk Hidup
O Diagram Venn merepresentasikan
sebuah himpunan yang merupakan
kumpulan objek.

O Objek dalam himpunan disebut


elemen.
A ={1,3,5,7}
B = {….,-4,-2,0,2,4,…..}
C = {pesawat, balon}
O Symbol epsilon  menunjukkan bahwa
suatu elemen merupakan anggota dari
suatu himpunan, contoh : 1  A . Jika
suatu elemen bukan anggota dari suatu
himpunan maka symbol yang digunakan
, contoh : 2  A.

O Jika suatu himpunan sembarang, misal X


dan Y didefinisikan bahwa setiap elemen
X merupakan elemen Y, maka X adalah
subset dari Y, dituliskan : X  Y atau Y 
X.
O Operasi-operasi Dasar dalam Diagram Venn:

O Interseksi (Irisan) U

A C B

C=AB
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=AB
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)

 Implikasi/Kondisional (IF…THEN…./ JIKA… MAKA ….)

 Equivalensi/Bikondisional
(IF AND ONLY IF / JIKA DAN HANYA JIKA)
p  q  (pq)  (qp)
- Kondisional merupakan operator yang analog
dengan production rule.
Contoh 1 :
“ Jika hujan turun sekarang maka saya tidak pergi
ke pasar”

Kalimat di atas dapat ditulis : p  q


Dimana : p = hujan turun
q = saya tidak pergi ke pasar
Contoh 2 :
p = “Anda berusia 21 atau sudah tua”
q = “Anda mempunyai hak pilih”
Kondisional p  q dapat ditulis/berarti :
Kondisional Berarti
p implies q Anda berusia 21 tahun atau sudah tua implies
Anda mempunyai hak pilih.
Jika p maka q Jika Anda berusia 21 tahun atau sudah tua,
maka Anda mempunyai hak pilih.
p hanya jika q Anda berusia 21 tahun atau sudah tua, hanya
jika Anda mempunyai hak pilih.
p adalah (syarat cukup Anda berusia 21 tahun atau sudah tua adalah
untuk q) syarat cukup Anda mempunyai hak pilih.
q jika p Anda mempunyai hak pilih, jika Anda berusia
21 tahun atau sudah tua.
q adalah (syarat perlu Anda mempunyai hak pilih adalah syarat perlu
untuk p) Anda berusia 21 tahun atau sudah tua.
- Tautologi : pernyataan gabungan yang
selalu bernilai benar.
- Kontradiksi : pernyataan gabungan
yang selalu bernilai salah.
- Contingent : pernyataan yang bukan
tautology ataupun kontradiksi.
- Tabel Kebenaran untuk logika konektif :
p q pq pq pq pq
T T T T T T
T F F T F F
F T F T T F
F F F F T T

- Tabel kebenaran untuk negasi konektif :


p ~p

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).

Variable : digunakan untuk merancang


kelas objek atau sifat-sifat secara umum
dalam semesta pembicaraan. Penulisannya
diawali dengan huruf besar, seperti : Bill,
Kate.
Fungsi : pemetaan (mapping) dari satu
atau lebih elemen dalam suatu himpunan
yang disebut domain fungsi ke dalam
sebuah elemen unik pada himpunan lain
yang disebut range fungsi. Penulisannya
dimulai dengan huruf kecil. Suatu ekspresi
fungsi merupakan symbol fungsi yang
diikuti argument.
Argument adalah elemen-elemen dari fungsi,
ditulis diapit tanda kurung dan dipisahkan
dengan tanda koma.
Contoh : f(X,Y)
ayah(david)
plus(2,3)

Predikat : menamai hubungan antara nol atau


lebih objek dalam semesta pembicaraan.
Penulisannya dimulai dengan huruf kecil,
seperti : equals, samadengan, likes, near.
Contoh kalimat dasar :
teman(george,allen)
teman(ayah_dari(david),ayah_dari(andrew))
dimana :

argument : ayah_dari(david) adalah george


argument : ayah_dari(andrew) adalah allen
predikat : teman
Operator logika konektif : ,,
-
~, , .
- Logika kalkulus orde pertama mencakup
symbol universal quantifier  dan
existensial quantifier .

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)
AB  x (x  A  x  B)
AB  x (x  A  x  B)
AB  x (x  A  x  B)
 (universe) T (True)
 (empty set) F (False)

- Relasi A proper subset dari B ditulis A  B,


dibaca “semua elemen A ada pada B”, dan
“paling sedikit satu elemen B bukan bagian
dari A”
Contoh :
Diketahui : E = elephant
R = reptile
G = gray
F = four legged
D = dogs
M = mammals
Set expression Berarti
“elephant termasuk mammals”,
EM tetapi tidak semua mammals adalah
elephant
“elephant yang berwarna gray dan
(E  G  F)  M memiliki four legged termasuk
mammals”
“tidak ada gajah yang termasuk
ER=
reptile”
EG “beberapa gajah berwarna gray”
“tidak ada gajah yang berwarna
EG=
gray”
“beberapa elephants tidak
E  G’  
berwarana gray”
“semua elephants berwarna gray
E  (G  F)
dan memiliki four legged”
“semua elephants dan dogs
(E  D)  M
termasuk mammals”
“beberapa elephants memiliki four
(E  F  G)  
legged dan berwarna gray”
Hukum de Morgan berlaku untuk analogi himpunan
dan bentuk logika :

Himpunan Logika

(AB)A’B’ ~(pq) p ~q

(AB)A’B’ ~(pq) p ~q


SISTEM BERBASIS
PENGETAHUAN

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

 Pihak lain. Misalnya: system builder, tool


builder, vendor, staf pendukung.
37
Elemen Manusia Dalam Sistem
Pakar (2)
Umumnya user yang dimaksud ini adalah:
(1) Klien (yaitu bukan pakar) yang menginginkan
advis/nasehat. Disini, Sistem Pakar bertindak seperti
seorang konsultan atau penasehat.
(2) Learner (pelajar) untuk mempelajari bagaimana
Sistem Pakar menyelesaikan permasalahan. Di sini,
Sistem Pakar bertindak sebagai seorang instruktur.
(3) Expert system builder (pembangun sistem pakar)
yang ingin meningkatkan knowledge base-nya. Di
sini, Sistem Pakar bertindak sebagai seorang rekan.
(4) Pakar. Di sini, Sistem Pakar bertindak sebagai
seorang kolega atau asisten.
38
Elemen Manusia Dalam Sistem
Pakar (3)

Gambar Diagram peranan manusia dalam Sistem Pakar


39
Jenis-jenis Sistem Pakar (1)
 Sistem Pakar vs. Knowledge-based
Systems. Sistem Pakar mendapatkan
pengetahuannya dari para pakar, sedang
KBS dari sumber-sumber terdokumentasi.
KBS lebih murah dan lebih cepat dibangun
dibandingkan Sistem Pakar.
 Rule-Based Expert Systems. Pengetahuan
direpresentasikan sebagai serangkaian rule-
rule (production rules).
40
Jenis-jenis Sistem Pakar (2)
 Hybrid Systems
Melibatkan berbagai pendekatan representasi
pengetahuan, paling tidak frame dan rule, tapi biasanya
lebih dari itu.
 Model-Based Systems
Tersusun di sekitar model yang melakukan simulasi
struktur dan fungsi dari sistem yang dipelajari. Model
digunakan untuk menghitung nilai-nilai, yang
dibandingkan dengan yang sedang diamati.
Pembandingan tersebut memicu aksi (jika diperlukan)
atau diagnosis lebih lanjut.
41
Jenis-jenis Sistem Pakar (3)
 Frame-Based Systems.
Pengetahuan direpresentasikan sebagai
frame, yaitu representasi dari pendekatan
Pemrograman Berbasis Objek (OOP).
 Sistem siap pakai (off-the-Shelf Systems).
Sebagai hasil dari produksi masal
membuatnya lebih murah dibandingkan
dengan sistem yang memenuhi keinginan
user
42
Jenis-jenis Sistem Pakar (4)
 Sistem yang diklasifikasikan oleh sifat alamiahnya.
Ada 3 jenis. (1) berhubungan dengan evidence gathering
(pengumpulan bukti-bukti), (2) stepwise refinement
system. Sistem ini berhubungan dengan sejumlah besar
keluaran dari level-level detil sesudahnya. (3) stepwise
assembly, dimana domain subjek dapat mempunyai
jumlah keluaran yang luar biasa besar yang mungkin.
Jenis khusus dari ini disebut dengan catalog selection.
Sistem ini berhubungan dengan masalah seperti
pemilihan bahan kimia, baja yang benar.

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

Durkin 94, p.133 47


Inference Engine Cycle (1)
 Conflict resolution
Memilih rule dengan prioritas tertinggi dari
agenda
 Execution
Menjalankan aksi pada rule yang terpilih
berikutnya
Menghapus rule dari agenda

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

Logika Fuzzy 1/28


Pengantar Kecerdasan Buatan (AK045218)

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

Logika Fuzzy 2/28


Pengantar Kecerdasan Buatan (AK045218)

2. Pelayan restoran memberi-


kan pelayanan terhadap
tamu, kemudian tamu akan
memberikan tip yang sesuai
atas baik tidaknya pelayanan
yang diberikan
3. Penumpang taksi berkata
pada sopir taksi seberapa
cepat laju kendaraan yang
diinginkan, sopir taksi akan
mengatur pijakan gas
taksinya

Logika Fuzzy 3/28


Pengantar Kecerdasan Buatan (AK045218)

Salah satu contoh pemetaan


suatu input-output dalam
bentuk grafis seperti terlihat
dibawah ini :
Ruang Input Ruang utput
(semua total (semua jumlah
persediaan barang produksi barang
yang mungkin) yang mungkin)

Kotak
Persediaan Persediaan
Persediaan
barang
Hitam Persediaan
barangakhir
akhir barang
barangesok
esok

Pemetaan Input-output pada masalah produksi


Diberikan data persediaan barang, berapa jumlah barang
yang harus diproduksi?

Logika Fuzzy 4/28


Pengantar Kecerdasan Buatan (AK045218)

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)

4. Logika fuzzy mampu


memodelkan fungsi-fungsi
nonlinear yang sangat kompleks
5. Logika fuzzy dapat membangun
dan mengaplikasikan
pengalaman-pengalaman para
pakar secara langsung tanpa
harus melalui proses pelatihan
6. Logika fuzzy dapat bekerjasama
dengan teknik-teknik kendali
secara konvensional.
7. Logika fuzzy didasarkan pada
bahasa alami

Logika Fuzzy 6/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.

Logika Fuzzy 7/28


Pengantar Kecerdasan Buatan (AK045218)

3. Kereta bawah tanah Sendai


mengontrol pemberhentian
otomatis pada area tertentu
4. Ilmu kedokteran dan biologi,
seperti sistem diagnosis yang
didasarkan pada logika fuzzy
5. Manajemen dan pengambilan
keputusan, seperti
manajemen basisdata, tata
letak pabrik, pembuatan
games yang didasarkan pada
logika fuzzy
6. Ekonomi, pemodelan fuzzy
pada sistem pemasaran yang
kompleks
Logika Fuzzy 8/28
Pengantar Kecerdasan Buatan (AK045218)

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

Logika Fuzzy 9/28


Pengantar Kecerdasan Buatan (AK045218)

• 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 :

Logika Fuzzy 10/28


Pengantar Kecerdasan Buatan (AK045218)

MUDA umur < 35 tahun


PAROBAYA 35 ≤ umur ≤ 55 thn
TUA umur > 55 tahun
Maka dengan himpunan crisp
disimpulkan:
• Apabila seseorang tidak berusia 34
tahun, maka ia dikatakan MUDA
(µMUDA [34] = 1)
• Apabila seseorang berusia 35
tahun, maka ia dikatakan TIDAK
MUDA (µMUDA [35] = 0)

Jika pada himpunan crisp, nilai


keanggotaan hanya ada 2
kemungkinan yaitu 0 dan 1, maka
pada himpunan fuzzy nilai
keanggotaan terletak pada rentang
0 sampai 1
Logika Fuzzy 11/28
Pengantar Kecerdasan Buatan (AK045218)

• Himpunan fuzzy memiliki 2


atribut :
a. Linguistik, yaitu penamaan
suatu grup yang mewakili
suatu keadaan atau kondisi
tertentu dengan
menggunakan bahasa alami,
seperti : MUDA, PAROBAYA,
TUA
b. Numeris, yaitu suatu nilai
(angka) yang menunjukan
ukuran dari suatu variabel
seperti : 40, 25, 35

Logika Fuzzy 12/28


Pengantar Kecerdasan Buatan (AK045218)

• Hal-hal yang terdapat pada


sistem fuzzy :
a. Variabel Fuzzy, merupakan
variabel yang hendak dibahas
dalam suatu sistem fuzzy, seperti
umur, temperatur, dsb
b. Himpunan Fuzzy, merupakan
suatu grup yang mewakili suatu
kondisi atau keadaan tertentu
dalam suatu variabel fuzzy
c. Semesta Pembicaraan, adalah
keseluruhan nilai yang
diperbolehkan untuk dioperasikan
dalam suatu variabel fuzzy
d. Domain, adalah keseluruhan nilai
yang diijinkan dalam semesta
pembicaraan dan boleh
dioperasikan dalam suatu
himpunan fuzzy.

Logika Fuzzy 13/28


Pengantar Kecerdasan Buatan (AK045218)

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 :

Logika Fuzzy 14/28


Pengantar Kecerdasan Buatan (AK045218)

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

Representasi Linear Naik

Fungsi Keanggotaan :
0; x≤ a
µ[x] = (x-a)/(b – a) ; a≤x≤b
1; x≥b

Logika Fuzzy 15/28


Pengantar Kecerdasan Buatan (AK045218)

2. Garis lurus dimulai dari nilai domain


dengan derajat keanggotaan tertinggi
pada sisi kiri, kemudian bergerak
menurun ke nilai domain yang
memiliki derajat keanggotaan lebih
rendah

Representasi Linear Turun

Fungsi Keanggotaan :
(x-a)/(b – a) ; a ≤ x ≤ b
µ[x] =
0; x≥b

Logika Fuzzy 16/28


Pengantar Kecerdasan Buatan (AK045218)

b. Representasi Kurva Segitiga


c. Representasi Kurva Trapesium
d. Representasi Kurva bentuk Bahu
e. Representasi Kurva-S
f. Representasi Kurva Bentuk
Lonceng, ada 3 jenis, Kurva PI,
Kurva Beta dan Kurva GAUSS
g. Koordinat Keanggotaan
Niliai keanggotaan :
Skalar(i)/Derajat(i)
Skalar : nilai yang digambar dari
domain himpunan
Derajat : derajat keanggotaan
himpunan fuzzynya

Logika Fuzzy 17/28


Pengantar Kecerdasan Buatan (AK045218)

Operator Dasar Zadeh


• Operator AND
Operator ini berhubungan dengan
operasi interseksi pada himpunan.
α-predikat sebagai hasil operasi
dengan operator AND diperoleh
dengan mengambil nilai
keanggotaan terkecil antar elemen
pada himpunan-himpunan yang
bersangkutan
µA∩B = min(µA[x], µB[y])
• Operator OR
Operator ini berhubungan dengan
perasi union pada himpunan.

Logika Fuzzy 18/28


Pengantar Kecerdasan Buatan (AK045218)

α-predikat sebagai hasil operasi


dengan operator AND diperoleh
dengan mengambil nilai
keanggotaan terkecil antar elemen
pada himpunan-himpunan yang
bersangkutan
µAUB = max(µA[x], µB[y])

• 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]

Logika Fuzzy 19/28


Pengantar Kecerdasan Buatan (AK045218)

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

Logika Fuzzy 21/28


Pengantar Kecerdasan Buatan (AK045218)

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

Logika Fuzzy 22/28


Pengantar Kecerdasan Buatan (AK045218)

• 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

Logika Fuzzy 23/28


Pengantar Kecerdasan Buatan (AK045218)

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.

Logika Fuzzy 24/28


Pengantar Kecerdasan Buatan (AK045218)

• Beberapa metode defuzzifi-


kasi aturan MAMDANI :
a. Metode Centroid (Composite
Moment)
b. Metode Bisektor
c. Metode Mean of Maximun
(MOM)
d. Metode Largest of Maximum
(LOM)
e. Metode Smallest of Maximum
(SOM)

Logika Fuzzy 25/28


Pengantar Kecerdasan Buatan (AK045218)

• 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)

b. Model Fuzzy Sugeno Orde-


Satu
Bentuk Umum :
IF (X1 is A1) y….y (XNis AN)
THEN z = p1* x1 + … + pN *
XN + q
dengan Ai adalah himpunan
fuzzy ke-I sebagai
anteseden, dan pi adalah
suatu konstanta ke-I dan q
merupakan konstanta dalam
konsekuen

Logika Fuzzy 27/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.

Logika Fuzzy 28/28

Anda mungkin juga menyukai