Pertemuan 10
Introduction to Logic Propositional Logic
Logical Intelligent Agent
Problem solving agent hanya bisa menyelesaikan masalah
yang lingkungannya accessible
Kita membutuhkan agen yang dapat menambah
pengetahuan dan menyimpulkan keadaan
Knowledge based agent
Representasi Pengetahuan yang bersifat general.
Kemampuan beradaptasi sesuai temuan fakta.
Kemampuan menyimpulkan sesuatu dari pengetahuan
Knowledge based agent
E N V I R O N M E N T Mesin Inferensi (Inference Engine) percept aksi Basis Pengetahuan (Knowledge Base) pengetahuan Mula-mula berisi background knowledge Persepsi yang diterima Diubah menjadi pengetahuan Berdasarkan pengetahuan yang dimiliki Agen memilih aksi yang tepat (inferensi)Hasil dari aksi disimpan kembali dalam bentuk pengetahuan
Knowledge Based Agent
Komponen utama dari knowledge based agent adalah
knowledge basenya
Knowledge base (KB) adalah kumpulan representasi fakta
tentang lingkungan atau dunia yang berhubungan atau
menjadi daerah bekerjanya agen
Setiap representasi dalam KB disebut sebagai sebuah
sentence yang diekspresikan dalam sebuah bahasa yakni
knowledge representation language
Knowledge Based Agent
Inferensi adalah proses menyimpulkan fakta dari fakta
fakta yang sudah ada di KB
KB agent memiliki pengetahuan dasar yang disebut sebagai
Agent Control Architecture
Control dipisahkan ke dalam lapisan-lapisan yang
KB agent level
Knowledge level / epistemological layer
Logical level
Syarat Representasi KB
Representational Adequacy
kemampuan merepresentasikan semua pengetahuan yang dibutuhkan dalam domainnya
Inferential Adequacy
kemampuan memanipulasi struktur pengetahuan untuk membentuk struktur baru dalam menampung pengetahuan baru hasil inferensi
Inferential Efficiency
kemampuan untuk manambahkan informasi untuk mempercepat pencarian dalam inferensi
Acquisitional Efficiency
Wumpus World Description
Environment sederhana, berguna untuk menguji dan
menjelaskan logical agent.
Gua gelap dengan banyak ruangan yang dihubungkan dengan
lorong-lorong.
Agent masuk ke gua untuk mengambil emas yang ada di salah
satu ruangan.
Wumpus (monster) bersembunyi di salah satu ruangan. Jika
agent bertemu, ia akan menjadi santapannya.
Terdapat ruang-ruang yang memiliki lubang jebakan yang dapat
membunuh agent.
Agen hanya punya 1 panah yang bisa membunuh wumpus dari
P
erformance Measure:
ketemu emas: +1000, mati: -1000
-1 untuk setiap langkah, -10 untuk memanah
E
nvironment:
Petak yang bersebelahan dengan wumpus berbau busuk (smelly) Petak yang bersebelahan dengan pit (lubang) terasa angin (breezy) Petak tempat emas berada bercahaya (Glitter)
Agent dapat memanah mati wumpus jika berhadapan langsung Memanah perlu 1 panah
A
ctuators:
Left turn, Right turn, Forward, Grab, Release, Shoot
S
ensors:
Breeze, Glitter, Smell,
Bump (jika agent menabrak tembok),
Scream (jika wumpus mati)
Background knowledge :
•
Jika ada bau maka ada wumpus di petak tetangga
•Jika ada angin maka ada lubang di petak tetangga
•
Jika tak ada bau maka tak ada wumpus di petak tetangga
•Jika tak ada angin maka tak ada lubang di petak tetangga
•Jika tak ada lubang dan Wumpus boleh maju
1.
Tak ada angin dan bau di (1,1) maka tak ada Wumpus dan
lubang di (2,1) dan (1,2)
2.
Maju ke (2,1)
3.
Ada angin di (2,1) maka ada lubang di (2,2) atau (3,1)
4.
Tak ada bau di (2,1) maka tak ada Wumpus di (2,2) dan (3,1)
5.Mundur ke (1,1)
6.
Maju ke (1,2)
7.
Ada bau di (1,2) maka ada Wumpus di (3,1)
Breeze di (1,2) dan (2,1)
tidak ada aksi yang aman
Jika distribusi peluang lubang seragam, maka kemungkinan lubang ada di (2,2) lebih besar daripada (1,3)/(3,1)
Smell di (1,1)
wumpus ada di (1,2) atau (2,1), agent tidak dapat bergerak.
bisa menggunakan strategi: panah lurus ke depan
ada wumpus wumpus mati aman tidak ada wumpus aman
What’s next ??
Untuk dapat menyusun sebuah knowledge based agent
maka kita harus terlebih dulu bisa menyusun
knowledge basenya itu sendiri.
Untuk menyusun knowledge base kita perlu
menentukan bagaimana cara kita merepresentasikan
pengetahuan kita (knowledge representation)
Knowledge representation kita harus merupakan
bentuk yang mudah disimpan dan digunakan pada
komputer. Dalam perkuliahan ini kita menggunakan
beberapa macam knowledge representation language
Logika formal adalah salah satu bahasa untuk merepresentasikan informasi
sehingga kesimpulan dapat diambil.
Sintaks mendefinisikan kalimat dalam bahasa.
Semantik mendefinisikan “arti” dari kalimat
(kebenaran dari kalimat tersebut di dunia nyata)
Contoh: bahasa aritmatika:
x + 2 y adalah kalimat; x2 + y > bukan kalimat
x + 2 y benar jika dan hanya jika x + 2 tidak lebih kecil dari y x + 2 y benar di dunia nyata untuk x=7, y=1
Entailment artinya satu hal benar yang mengikuti dari kenyataan lainnya:
KB
Knowledge Base KB entails
jika dan hanya jika benar di seluruh dunia (realitas) di mana KB benar
Contoh:
x + y = 4 entails 4 = y + x
Entailment adalah hubungan antara kalimat (sintaks) berdasarkan semantik
Situasi setelah aman di (1,1),
bergerak ke kanan dan mendeteksi bau di (2,1)
Berapa banyak kemungkinan model untuk ? (dengan mengabaikan kemungkinan wumpus)
KB i jika metode inferensi i dapat menurunkan dari KB
Sifat metode inferensi:
Sound / Truth Preserving
jika semua yang diturunkan adalah kalimat benar (derives only entailed sentences)
Complete
jika semua kalimat benar (sesuai KB) dapat diturunkan juga dengan cara inferensi
(all entailed sentences can be derived)
Inferensi adalah proses penalaran yang kesimpulannya dijamin benar
dalam dunia/realitas di mana basis pengetahuan yang digunakan benar.
Jika KB benar di dunia nyata, maka setiap kalimat yang diturunkan
dari KB dengan metode inferensi yang sound juga benar di dunia nyata.
Jadi proses inferensi berkorespondensi langsung dengan hubungan yang
Simbol proposisi P1, P2, P3, dll adalah kalimat
Setiap kalimat bisa bernilai benar (true) atau salah (false).
Negasi : S Konjungsi : S1 S2 Disjungsi : S1 S2 Implikasi : S1 S2 Bi-kondisional : S1 S2
P
x,y: ada lubang di (x,y)
W
x,y: ada Wumpus di (x,y)
S
x,y: ada bau di (x,y)
B
x,y: ada angin di (x,y)
Knowledge Base:
R1: P1,1 tidak ada lubang di (1,1)
“lubang menimbulkan angin di petak yang bersebelahan” R2: B1,1 (P1,2 P2,1)
R3: B2,1 (P1,1 P2,2 P3,1)
R4: B1,1 tidak ada angin di (1,1) R5: B2,1 ada angin di (2,1)
Coba seluruh kombinasi nilai untuk semua variabel:
Untuk setiap KB yang benar, periksa nilai
Kompleksitas waktu O(2
n)
Metode pembuktian dibagi menjadi dua jenis:
Penerapan dari Aturan Inferensi
Kalimat baru (yang sound) diturunkan dari kalimat-kalimat sebelumnya Bukti = urutan aplikasi aturan inferensi
Biasanya perlu merubah kalimat ke bentuk normal (tanpa „‟ dan „ ‟)
Model Checking
Enumerasi tabel kebenaran (eksponensial, tidak efisien)
Improved Backtracking (misalnya: Davis-Putnam-Logemann-Loveland) Heuristic search di model space (sound tetapi incomplete)
Rules for propositional logic
,
,
i na
a
a
a
a
1 2 3...
n ia
a
a
a
a
...
3 2 1Modus Ponens
Modus Tollens
And Elimination
n n
a
a
a
a
a
a
a
a
...
,...,
,
,
3 2 1 3 2 1Rules for propositional logic
,
,
,
Double negation elimination
Unit Resolution
Resolution
Study Case: Please find the wumpus
Example of input (facts) for Wumpus World
2
,
1
1
,
2
1
,
1
S
S
S
2
,
1
1
,
2
1
,
1
B
B
B
Knowledge base (the RULES)
1
,
1
2
,
2
2
,
1
3
,
1
2
,
1
4
3
,
1
2
,
2
2
,
1
1
,
1
2
,
1
3
1
,
3
2
,
2
1
,
2
1
,
1
1
,
2
2
1
,
2
2
,
1
1
,
1
1
,
1
1
:
:
:
:
W
W
W
W
S
R
W
W
W
W
S
R
W
W
W
W
S
R
W
W
W
S
R
Finding the Wumpus
Apply modus ponens with ~S
1,1and sentence R
11
,
2
2
,
1
1
,
1
1
,
1
1
,
2
2
,
1
1
,
1
1
,
1
1
:
W
W
W
S
W
W
W
S
R
,
Finding the Wumpus (2)
Apply And Elimination we obtain 3 fact
1
,
2
2
,
1
1
,
1
1
,
2
2
,
1
1
,
1
,
,
W
W
W
W
W
W
i na
a
a
a
a
1 2 3...
Finding the Wumpus (3)
Apply modus ponens to ~S
2,1and R
2and apply and
elimination
1
,
3
2
,
2
1
,
2
1
,
1
1
,
2
1
,
3
2
,
2
1
,
2
1
,
1
1
,
2
2
,
,
,
:
W
W
W
W
S
W
W
W
W
S
R
,
Finding the Wumpus (4)
Apply resolution
,
1
,
1
2
,
2
2
,
1
3
,
1
2
,
1
1
,
1
2
,
2
2
,
1
3
,
1
2
,
1
4
:
W
W
W
W
S
W
W
W
W
S
R
Finding the Wumpus (5)
Resolution
2
,
2
2
,
1
3
,
1
1
,
1
1
,
1
2
,
2
2
,
1
3
,
1
W
W
W
W
W
W
W
W
,
Finding the Wumpus (6)
Resolution
2
,
1
3
,
1
2
,
2
2
,
2
2
,
1
3
,
1
W
W
W
W
W
W
,
Finding the Wumpus (7)
Resolution
3
,
1
2
,
1
2
,
1
3
,
1
W
W
W
W
,
Translating knowledge to action
Pengetahuan yang dimiliki agent tidak berguna jika ia tidak
melakukan apapun
Karenanya kita perlu menambahkan aturan agar dia dapat
bergerak (complete the knowledge base).
Misalnya :
Forward
W
East
Propositional logic weakness
Too many preposition need to be handle
No relationship between objects
Latihan.
Cobalah menjalankan logika preposisi seperti contoh inferensi
pada wumpus world dengan input (facts) yang berbeda, sbb:
Kalimat manakah dari input yang merupakan entailment dari KB?
Apakah wumpus masih dapat ditemukan?
Ambil asumsi untuk lokasi B dan G
Coba tuliskan bagaimana proses inferensinya
Representasi lokasi: P(y, x)
3 , 1 2 , 2 1 , 3 2 , 3 1 , 4 2 , 1 , 1 , 2 1 , 1