Anda di halaman 1dari 18

Anggota Kelompok

Desi Nur Rahmawati


Aan Nova A.
Dian Imam N.
Endri Cahyaningrum
Lis Mahanani
Aryani Ristyabudi
Pradani Sariningrum
Devi Widayanti
Dewi Nurhasanah

L200110106
L200120022
L200120026
L200120044
L200120045
L200120049
L200120053
L200120056
L200120058

BACKWARD
CHAINING

Pendahuluan (1)

Inferensi adalah proses untuk menghasilkan


informasi dari fakta yang diketahui atau diasumsikan.

Merupakan konklusi logis atau implikasi berdasarkan


informasi yang tersedia.

Dilakukan dalam suatu modul yang disebut inference


engine.
Metode yang digunakan yaitu Forward Chaining dan
Backward Chaining.

Pendahuluan (2)
Chain (rantai) adalah perkalian inferensi yang
menghubungkan suatu permasalahan dengan solusinya.
Backward chaining :
Suatu rantai yang dilintasi dari suatu hipotesa kembali ke fakta
yang mendukung hipotesa tersebut.
Cara lain menggambarkannya adalah dalam hal tujuan yang
dapat dipenuhi dengan pemenuhan sub tujuannya.

Contoh rantai inferensi :


gajah(x) mamalia(x)
mamalia(x) binatang(x)

Backward Chaining
Menggunakan pendekatan goal-driven, dimulai
dari harapan apa yang akan terjadi (hipotesis)
dan kemudian mencari bukti yang mendukung
(atau berlawanan) dengan harapan kita.
Pada metode inferensi dengan backward chaining
akan mencari aturan atau rule yang memiliki
konsekuen (Then klause) yang mengarah kepada
tujuan yang diskenariokan / diinginkan.
Backward biasa digunakan untuk masalah
diagnosis (kapan backward chaining digunakan)

Karakteristik

diagnosis
disajikan untuk masa lalu
konsekuen ke antecedent
tujuan memandu, penalaran dari atas ke
bawah
bekerja ke belakang untuk mendapatkan
fakta yang mendukung hipotesis
depth first search dimudahkan
konsekuen menentukan pencarian
penjelasan difasilitasi

Contoh (1)
Misalkan dari Jogjakarta kita akan ke
Bangkok, maka cara penyelesaian dengan
menggunakan Backward Chaining:
Mencari semua penerbangan yang
menuju ke Bangkok (berbasis tujuan)

Contoh (2)
Misalkan terdapat suatu sistem dengan tujuan: Goal_1. Untuk
mencapai tujuan Goal_1 tersebut dibutuhkan fakta A yang bernilai 1
dan fakta B yang bernilai 1. (Asumsi nilai fakta adalah boolean 1
dan 0). Fakta A sendiri akan diperoleh jika ada fakta C yang bernilai
1. Bagaimana rancangan sistem pakar dan aturan yang akan dibuat:
Langkah 1: Buat aturan standar untuk menyatakan Goal_1
If A = 1 and B = 1 Then Goal_1
Langkah 2: Buat aturan yang menyatakan bahwa jika C bernilai 1
maka A
If C = 1Then A = 1
Terlihat bahwa konsekuen (Then..) tidak harus mengarah kepada
Goal_1, akan tetapi ditujukan kepada antisendent yang dalam hal ini
adalah A. Dengan demikian sistem akan mengetahui bahwa
antisendent C akan ditanyakan dengan antisendent B untuk
menghasilkan Goal_1.

Algoritma Backward Chaining


1. Catat GOAL pada TOS (top of stack)
2. Catat semua rule yang memenuhi GOAL
3. Untuk setiap rule :
a. Jika semua premis terpenuhi, maka eksekusi rule untuk mendapat
konklusi, proses selesai
b. Jika sebuah premis tidak terpenuhi, cari rule yang menurunkan nilai dari
parameter premis tsb. Maka Jika ada, maka asumsi parameter tsb
adalah SUBGOAL, letakkan pada TOS.
c. Jika tidak ada, maka tanyakan kepada user apa nilai dari parameter tsb.
Jika nilai ini sesuai premis, lanjutkan pada premis berikutnya. Jika premis
tidak sesuai lanjutkan ke rule berikutnya.

4. Jika semua rule sudah dianalisa dan semuanya gagal, maka GOAL tidak
ada. Hapus GOAL dari stack dan kembali ke langkah 2. Jika stack kosong,
proses selesai

Contoh Kasus
Seseorang ingin berkonsultasi apakah tepat jika dia
berinvestasi pada IBM?
Variabel-variabel:

A = Memiliki 100 juta


B = < 30 tahun
C = Pendidikan Sarjana
D = Pendapatan tahunan <= 400 juta
E = Investasi di bidang asuransi
F = Investasi di saham pertumbuhan
G = Investasi di saham IBM

Setiap variabel dapat bernilai TRUE atau FALSE

Fakta
Fakta:
Memiliki uang 100 juta (A = TRUE)
Berusia 25 tahun (B =TRUE)
Dia ingin meminta nasihat apakah tepat jika
berinvestasi pada IBM?

Aturan (Rule) (1)


Dalam basis pengetahuan terdapat aturan (rule)
sebagai berikut:
R1: JIKA seseorang memiliki 100 juta dan memiliki gelar sarjana
MAKA dia sebaiknya berinvestasi di bidang asuransi
R2: JIKA pendapatan tahunan <= 400 juta dan memiliki gelar
sarjana MAKA dia sebaiknya berinvestasi di saham
pertumbuhan
R3: JIKA seseorang < 30 tahun dan berinvestasi di bidang
asuransi MAKA sebaiknya berinvestasi di saham pertumbuhan
R4: JIKA seseorang < 30 tahun MAKA dia adalah sarjana
R5: JIKA sesorang ingin berinvestasi di saham pertumbuhan
MAKA saham yang dipilih adalah saham IBM

Aturan (Rule) (2)


Aturan di atas dapat juga dituliskan
sebagai berikut:
R1: JIKA A dan C, MAKA E
R2: JIKA D dan C, MAKA F
R3: JIKA B dan E, MAKA F
R4: JIKA B, MAKA C
R5: JIKA F, MAKA G

Proses Backward Chaining (1)


(Step 5)
Fakta, TRUE

R1:

JIKA

DAN

C MAKA

R2:

JIKA

DAN

R3:

JIKA

DAN

Fakta, TRUE

(Step 6)

R4:

JIKA

B MAKA C

R5:

JIKA

F MAKA G
(Step 2)

MAKA F
MAKA

(Step 4)
TRUE, karena
B = TRUE

(Step 3)

START (Step 1)

Proses Backward Chaining (2)

Step 1: G adalah GOAL


Step 2: Jika F maka G R5
Step 3: Jika D dan C maka F R2
Step 4: Jika B dan E maka F R3
Step 5: Jika A dan C maka E R1
Step 6: Jika B maka C R4 = TRUE

Penentuan Metode
Forward atau Backward
Cek hubungan antara rule dengan fakta untuk
menghasilkan konklusi:
Forward Chaining
Sekumpulan hipotesis
banyak pertanyaan
Banyak cara untuk
mendapatkan sedikit
konklusi

Backward Chaining
Sekumpulan fakta
banyak konklusi
Sedikit cara untuk
mendapatkan banyak
konklusi

Untuk pencapaian tujuan, backward lebih dianjurkan

Kelebihan & Kekurangan


Kelebihan :

Kekurangan :

Memudahkan pencarian depth


first. Tree yang baik untuk depth
first adalah yang menyempit dan
dalam.
Pengguna tidak perlu secara
eksplisit menulis aturan untuk sub
tujuan.
Aturan dalam backward chaining
lebih mudah dari pada aturan
dalam forward chaining

Walaupun dapat menuliskan


aplikasi backward chaining ke
sistem forward chaining dan
sebaliknya, sistem tersebut tidak
akan efisien dalam hal pencarian
penyelesaiannya.
Kesulitan yang kedua adalah
konseptual. Pengetahuan
diperoleh dari pakar yang harus
diubah untuk mengimbangi
permintaan dari mesin inferensi.

Terima Kasih