Transcript Pertemuan IX
Pertemuan IX
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 Agent seperti ini kita beri nama knowledge based agent
Knowledge based agent
Representasi Pengetahuan yang bersifat general.
Kemampuan beradaptasi sesuai temuan fakta.
Kemampuan menyimpulkan sesuatu dari pengetahuan yang sudah ada.
Knowledge based agent
Persepsi yang diterima Diubah menjadi pengetahuan Berdasarkan pengetahuan yang dimiliki Mula-mula berisi background knowledge
Basis Pengetahuan (Knowledge Base)
pengetahuan
Mesin Inferensi (Inference Engine) percept E N V I R O N M E N T aksi
Hasil dari aksi disimpan kembali dalam bentuk pengetahuan Agen memilih aksi yang tepat (inferensi)
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 background knowledge
Robot Sonar
Agent Control Architecture
Control dipisahkan ke dalam lapisan-lapisan yang merespons tingkah laku
Contoh Control Architecture
Generic KB-Agent
KB agent level
Knowledge level / epistemological layer Logical level Implementation 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
kemampuan untuk menambah informasi baru secara mudah
The Wumpus World
Wumpus World Description
Environment sederhana, berguna menjelaskan logical agent.
untuk menguji dan 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 jarak jauh.
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 Agent bisa mengambil emas jika berada di petak emas tersebut ada
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 dst.
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) (karena tidak ada Wumpus di (2,2))
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 tidak ada wumpus aman 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 x + 2 y salah di dunia nyata untuk x=0, y=6
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 yang berlaku
Situasi setelah aman di (1,1), bergerak ke kanan dan mendeteksi bau di (2,1) Berapa banyak kemungkinan model untuk ?
(dengan mengabaikan kemungkinan wumpus) 3 variabel boolean 8 kemungkinan
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 dari KB dengan metode inferensi yang sound juga benar di dunia nyata.
yang diturunkan Jadi proses inferensi berkorespondensi langsung dengan hubungan yang terjadi di dunia nyata
Simbol proposisi P
1
, P
2
, P
3
, dll adalah kalimat Setiap kalimat bisa bernilai benar (true) atau salah (false).
Negasi Konjungsi Disjungsi Implikasi Bi-kondisional :
S
: S
1
: S
1
: S
1
: S
1
S 2
S 2 S 2
S 2
Tabel Kebenaran:
P x,y W x,y S x,y B x,y : ada lubang di (x,y) : ada Wumpus di (x,y) : ada bau di (x,y) : ada angin di (x,y) Knowledge Base: R 1 : P 1,1 tidak ada lubang di (1,1) “lubang menimbulkan angin di petak yang bersebelahan” R R 2 3 : B : B 1,1 2,1 (P (P 1,2 1,1 P P 2,1 2,2 ) P 3,1 ) R 4 : B 1,1 R 5 : B 2,1 tidak ada angin di (1,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) misalnya min-conflict hill-climbing
Rules for propositional logic
Modus Ponens
,
Modus Tollens
,
And introduction
a
1
a
1
a
, 2
a
2 ,
a
3
a
3 ,......, ......
a n
a n
And Elimination
a
1
a
2
a
3 ......
a n a i
Or introduction
a
1
a
2
a a i
.....
3
a n
Rules for propositional logic
Double negation elimination
Resolution
,
Or Unit Resolution
, ,
Study Case:
Please find the wumpus
Example of input (
facts)
for Wumpus World
S S
1 ,
S
2 1 , 1 2 , 1
B
1 , 1
B
2 , 1
B
1 , 2
Knowledge base (the RULES)
R
1 :
S
1 , 1
R
2 :
S
2 , 1
W
1 , 1
W
1 , 2
W
1 , 1
W
2 , 1
W
2 , 1
W
2 , 2
R R
3 4 : :
S
1 , 2
S
1 , 2
W
1 , 1
W
1 , 2
W
1 , 3
W
1 , 2
W
2 , 2
W
2 , 2
W
1 , 1
W
3 , 1
W
1 , 3 Can be construct as many as needed!
Finding the Wumpus
Apply modus ponens with ~S 1,1 and sentence R 1 ,
R
1 :
S
1 , 1
S
1 , 1
W
1 , 1
W
1 , 2
W
2 , 1
W
1 , 1
W
1 , 2
W
2 , 1
Finding the Wumpus (2)
Apply And Elimination we obtain 3 fact
a
1
a
2
a
3 ......
a n a i
W
1 , 1
W
1 , 2
W
2 , 1
W
1 , 1 ,
W
1 , 2 ,
W
2 , 1
Finding the Wumpus (3)
Apply modus ponens to ~S 2,1 elimination and R 2 and apply and ,
R
2 :
S
2 , 1
S
2 , 1
W
1 , 1
W
2 , 1
W
2 , 2
W
3 , 1
W
1 , 1 ,
W
2 , 1 ,
W
2 , 2 ,
W
3 , 1
Finding the Wumpus (4)
Apply resolution
R
4 :
S
1 , 2
W
1 , 3
W
1 , 2
W
2 , 2
W
1 , 1
S
1 , 2
W
1 , 3
W
1 , 2
W
2 , 2
W
1 , 1 ,
Finding the Wumpus (5)
Resolution
W
1 , 3
W
1 , 1
W
1 , 2
W
2 , 2
W
1 , 1
W
1 , 3
W
1 , 2
W
2 , 2 ,
Finding the Wumpus (6)
Resolution
W
1 , 3
W
2 , 2
W
1 , 2
W
2 , 2
W
1 , 3
W
1 , 2 ,
Finding the Wumpus (7)
Resolution
W
1 , 3
W
1 , 2
W
1 , 2
W
1 , 3 ,
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 :
A
1 , 1
East
A
W
2 , 1
Forward
Propositional logic weakness
Too many preposition need to be handle No relationship between objects Everything is connected by the logical operator
Latihan.
Cobalah menjalankan logika preposisi seperti contoh inferensi pada
wumpus world
dengan
input
(
facts
) yang berbeda, sbb:
S
1 , 1 ,
S
2 , 1 ,
S
1 , 2 ,
S
4 , 1 ,
S
3 , 2 ,
S
3 , 1 ,
S
2 , 2 ,
S
1 , 3 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)