Artificial Intelligence
Program Studi Teknik Informatika
UNIKOM
---------------------------
Nelly Indriani Widiastuti S.Si., M.T
objektif
Tujuan : Memahami konsep dan teknik
Reasoning
Rencana kegiatan : materi, latihan & tugas
Cakupan materi :
Teknik reasoning
Reasoning dalam Knowledge Base
Teknik Reasoning
Cara penyelesaian masalah dengan cara
merepresentasikan masalah ke dalam
basis pengetahuan menggunakan logic
atau bahasa formal.
Pendekatan
Logika pasti (propotitional, first
order/predicate)
Logika tidak pasti (fuzzy logic)
Searching vs Reasoning
SEARCHING REASONING
Represent State dan ruang masalah Basis pengetahuan
asi :
Teknik : strategi pencarian Penalaran
Tujuan : Menemukan nilai Menghasilkan
tertentu kesimpulan
Masalah : Kelengkapan Kelengkapan aturan
representasi state
Jenis logic
shallow reasoning
Nama lain dari experiential reasoning
Bertujuan untuk mendeskripsikan aspek-aspek lingkungan
secara heuristically
Short inference chains
Memungkinkan aturan yang kompleks
deep reasoning
Disebut juga causal reasoning
Bertujuan membangun model lingkungan yang berlaku
seperti hal nyata.
Long inference chains
Simple rules yang mendeskripsikan hubungan sebab dan
akibat
Contoh Shallow dan Deep Reasoning
IFacarhas IFthebatteryisgood
shallow reasoning
THENthereiselectricity
agoodbattery
IFthereiselectricityAND
goodsparkplugs
goodsparkplugs
gas THENthesparkplugswillfire
goodtires IFthesparkplugsfireAND
deep reasoning
THENthecarcanmove thereisgas
THENtheenginewillrun
IFtheenginerunsAND
therearegoodtires
THENthecarcanmove
Forward Chaining
Diberikan sejumlah fakta dasar,
bagaimana menghasilkan kesimpulan ?
Contoh : What can we conjecture about
Clyde? IFelephant(x)THENmammal(x)
IFmammal(x)THENanimal(x)
elephant(Clyde)
modus ponens:
unification:
IFpTHENq
p find compatible values for
variables
q
Forward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q
IFelephant(x)THENmammal(x)
elephant(Clyde)
Forward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q
IFelephant(Clyde)THENmammal(Clyde)
elephant(Clyde)
Forward Chaining Example
IFelephant(x)THENmammal(x)
IFmammal(x)THENanimal(x)
elephant(Clyde)
modus ponens:
IFpTHENq unification:
p find compatible values for
variables
q
IFmammal(x)THENanimal(x)
IFelephant(Clyde)THENmammal(Clyde)
elephant(Clyde)
Forward Chaining Example
IFelephant(x)THENmammal(x)
unification:
IFmammal(x)THENanimal(x) find compatible values for
elephant(Clyde) variables
modus ponens:
IFpTHENq
p
q
IFmammal(Clyde)THENanimal(Clyde)
IFelephant(Clyde)THENmammal(Clyde)
elephant(Clyde)
Forward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(x)
IFmammal(Clyde)THENanimal(Clyde)
IFelephant(Clyde)THENmammal(Clyde)
elephant(Clyde)
Forward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(Clyde)
IFmammal(Clyde)THENanimal(Clyde)
IFelephant(Clyde)THENmammal(Clyde)
elephant(Clyde)
Backward Chaining
Mencoba menemukan bukti pendukung (i.e.
facts) untuk suatu hypothesis
Contoh : apakah ada bukti bahwa Clyde adalah
seekor binatang
IFelephant(x)THENmammal(x)
IFmammal(x)THENanimal(x)
elephant(Clyde)
modus ponens:
unification:
IFpTHENq
p find compatible values for
variables
q
Backward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(Clyde) ?
IFmammal(x)THENanimal(x)
Backward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
?
p
animal(Clyde)
q
IFmammal(Clyde)THENanimal(Clyde)
Backward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(Clyde) ?
IFmammal(Clyde)THENanimal(Clyde) ?
IFelephant(x)THENmammal(x)
Backward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(Clyde) ?
IFmammal(Clyde)THENanimal(Clyde) ?
IFelephant(Clyde)THENmammal(Clyde)
Backward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(Clyde) ?
IFmammal(Clyde)THENanimal(Clyde) ?
IFelephant(Clyde)THENmammal(Clyde)
elephant(x) ?
Backward Chaining Example
IFelephant(x)THENmammal(x) unification:
IFmammal(x)THENanimal(x) find compatible values for
variables
elephant(Clyde)
modus ponens:
IFpTHENq
p
q animal(Clyde)
IFmammal(Clyde)THENanimal(Clyde)
IFelephant(Clyde)THENmammal(Clyde)
elephant(Clyde)
Forward vs. Backward Chaining
Forward Chaining
Munculnya fakta baru pada saat
inferensi:
Aturan Fakta Baru
R-3 F
R-4 G
R-5 D
R-6 H
R-9 J
R-10 K
Motor Inferensi (contd)
Backward Chaining
Alur inferensi: Fakta
R-10 C A
K J I
R-8 R-7 R-1
A H B
Tidak
diketahui
(a) Pertama: Gagal
Fakta
R-10 R-9 R-4
K J G A
Contoh:
Implikasi : Tanah menjadi basah jika terjadi hujan
(rule)
Aksioma : Tanah menjadi basah (fact)
Metode Inferensi Yang Lain
Contoh :
Jika tidak ada kesalahan program dapat
mengkompile
Program dapat mengkompile
Tidak ada kesalahan
Tentukan validitasnya !