Kecerdasan Buatan/
Artificial Intelligence
Agen Logika
Imam Cholissodin, S.Si., M.Kom.
Pokok Bahasan
1. Agen Logika
2. Agen Berbasis Pengetahuan
3. Logika Proposisi
4. Metode Pembuktian
5. Latihan Individu + Tugas Kelompok
Agen Logika
Agen logika merupakan agen yang memiliki
kemampuan bernalar secara logika.
Ketika beberapa solusi tidak secara eksplisit
diketahui, maka diperlukan suatu agen berbasis logika.
Logika sebagai Bahasa Representasi Pengetahuan
memiliki kemampuan untuk merepresentasikan fakta
sedemikian sehingga dapat menarik kesimpulan
(fakta baru, jawaban).
Sedangkan pengetahuan merupakan komponen yang
penting, sehingga terdapat perbedaan jika diterapkan
pada dua agent, yakni problem solving agent dan
knowledge-based agent.
Agen Logika
Perbedaan dua agent, problem solving agent dan
knowledge-based agent.
o Problem solving agent : memilih solusi di antara
kemungkinan yang ada. Apa yang ia “ketahui” tentang
dunia, pengetahuannya tidak berkembang untuk
mencapai problem solution (initial state, successor
function, goal test)
o Knowledge-based agent : lebih “pintar”. Ia
“mengetahui” hal-hal tentang dunia dan dapat
melakukan reasoning (berpikir, bernalar) mengenai:
• Hal-hal yang tidak diketahui sebelumnya
(imprefect/ partial information).
• Tindakan yang paling baik untuk diambil (best
action).
Agen Berbasis Pengetahuan
Agen Berbasis Pengetahuan :
Knowledge Base (KB) menyatakan apa yang “diketahui” oleh
si agent.
Pendekatan deklaratif membangun agent: “beritahu”
informasi yang relevan, simpan dalam KB (TELL).
Agen dapat ditanya (atau bertanya diri sendiri) apa yang
sebaiknya dilakukan berdasarkan KB (ASK).
Maka sebuah agen berbasis pengetahuan harus bisa :
Merepresentasikan world, state, action, dst.
Menerima informasi baru (dan meng-update
representasinya).
Menyimpulkan pengetahuan lain yang tidak eksplisit
(hidden property).
Menyimpulkan action apa yang perlu diambil.
Agen Berbasis Pengetahuan
Agen Berbasis Pengetahuan :
Knowledge Base (KB) merupakan :
o Himpunan representasi fakta yang diketahui tentang
lingkungannya.
o Tiap fakta disebut sebagai sentence.
o Fakta tersebut dinyatakan dalam bahasa formal sehingga
bisa diolah.
o TELL: menambahkan sentence baru ke KB.
Inference Engine merupakan :
o Menentukan fakta baru yang dapat diturunkan dari
pengetahuan yang sudah ada dalam KB.
o Menjawab pertanyaan (ASK) berdasarkan KB yang sudah
ada.
Agen Berbasis Pengetahuan
Agen Berbasis Pengetahuan :
Dalam representasi, agent dapat dipandang dari knowledge
level : Apa saja informasi yang diketahui?
Misal : sebuah robot “mengetahui” bahwa gedung B di antara
gedung A dan gedung C.
Agent dapat dipandang dari implementation level :
Bagaimana representasi informasi yang diketahuinya?
o Logical sentence : di_antara(gdB, gdA, gdC).
o Natural language : “Gedung B ada di antara gedung A dan
gedung C”.
o Tabel posisi koordinat gedung-gedung.
o Gambar diagram peta (dalam bitmap atau vektor).
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World :
o Performance measure : emas +1000, mati -1000, gerak -1,
panah -10.
o Environment : Matriks 4x4 ruang dengan initial state [1,1]. Ada
gold, wumpus, dan pit yang lokasinya dipilih secara acak.
o Percept terdiri dari:
Breeze : kamar di samping lubang jebakan ada hembusan
angin.
Glitter : kamar di mana ada emas ada kilauan/ sinar.
Smell : kamar di samping Wumpus berbau busuk (stench).
o Action : maju, belok kiri 900,belok kanan 900, tembak panah
(hanya 1!), ambil benda.
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Sifat dari Wumpus World:
o Fully observable? Tidak,
hanya bisa berpersepsi
lokal.
o Deterministic? Ya, hasil
tindakan jelas dan pasti.
o Episodic? Tidak,
tergantung action
sequence.
o Static? Ya, gold,
wumpus, pit tidak
bergerak.
o Discrete? Ya
o Single agent? Ya
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World:
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World (Finish):
Agen Berbasis Pengetahuan
Wumpus World (Kondisi Khusus):
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World (Other) :
Agen Berbasis Pengetahuan
Contoh Aturan Permainan dalam Wumpus World (Other) :
Agen Berbasis Pengetahuan
Bahasa Representasi Pengetahuan (Knowledge Representation
Language) :
o Menyatakan suatu bahasa yang digunakan untuk menyatakan fakta
tentang “dunia”.
o Suatu bahasa representasi pengetahuan didefinisikan dalam dua
aspek, yakni:
Sintaks dari bahasa merupakan aturan yang mendefinisikan
sentence yang sah dalam bahasa.
Semantik menyatakan aturan yang mendefinisikan “arti” sebuah
sentence, misalkan: kebenaran sentence dalam dunia.
Contoh KRL (Knowledge Representation Language) dalam
bahasa aritmetika :
o Secara Sintaks dituliskan:
x + 2 ≥ y adalah kalimat sah.
x2 + y ≥ bukan kalimat sah.
Agen Berbasis Pengetahuan
Contoh KRL (Knowledge Representation Language) dalam bahasa
aritmetika :
o Secara semantik: x + 2 ≥ y benar jika dan hanya jika bilangan x + 2
tidak lebih kecil dari bilangan y:
x + 2 ≥ y benar dalam “dunia” di mana x=7, y=1
x + 2 ≥ y benar dalam “dunia” di mana x=0, y=6
Contoh KRL dalam bahasa Indonesia :
o Secara Sintaks dituliskan:
“Jakarta adalah ibu kota Indonesia” adalah kalimat sah.
“Ibu Indonesia kota Jakarta adalah” bukan kalimat sah.
o Maka secara Semantik: “X adalah ibukota Y” benar jika dan hanya
jika X adalah pusat pemerintahan negara Y.
“Jakarta adalah ibukota Indonesia” benar dalam “dunia” kita
sekarang.
“Jakarta adalah ibukota Indonesia” salah dalam “dunia” tahun
1948 (Yogya? Bukitinggi?)
Agen Berbasis Logika
Logika sebagai Bahasa Representasi Pengetahuan memiliki pengertian:
o Logika sebagai bahasa formal untuk merepresentasikan fakta
sedemikian sehingga kesimpulan (fakta baru, jawaban) dapat ditarik.
o Ada banyak metode inference yang diketahui.
o Sehingga kita bisa membangun agent Wumpus World dengan
logika : memanfaatkan perkembangan logika dari ahli matematika.
Entailment dapat diartikan sebagai suatu fakta bisa disimpulkan dari
(kumpulan) fakta lain.
o KB |= α berarti KB melakukan entailment sentence α jika dan hanya
jika α true dalam “dunia” di mana KB true.
Contoh :
o KB mengandung dua sentence, yakni “ Anto Genius” dan “Ani Cantik”.
o KB |= α1: “Anto Genius dan Ani Cantik” (artinya: hasil entailment bisa
berupa kalimat gabungan dari dua kalimat)
o KB |≠ α2 : “Anto Tampan”
o x + y = 4 =| 4= x+y
Agen Berbasis Logika
Otak manusia melakukan proses reasoning dalam suatu bentuk
sintak dapat diilustrasikan sebagaimana gambar berikut:
o Model merupakan suatu “dunia” di mana kebenaran suatu sentence
bisa diuji.
o m adalah model α jika dan hanya jika true di “dalam” m.
o M(α) adalah himpunan semua model dari α.
o KB |= α jika dan hanya jika M(KB) subset dari M(α), sehingga bisa
dilihat pada ilustrasi gambar berikut:
Misalkan :
KB= Anto Genius dan Ani Cantik
α = Anto Genius
Hal ini bisa diartikan bahwasanya sentence Anto Genius lebih luas
konotasinya dibandingkan dengan sentence Anto Genius dan Ani
Cantik.
Agen Berbasis Logika
Inferensi merupakan proses atau algoritma yang
“menurunkan” fakta baru dari fakta-fakta lama.
o KB|-i α: sentence α bisa diturunkan dari KB oleh
prosedur i.
o Soundness: i dikatakan sah (sound) jika untuk
semua KB|-i α, KB |= α benar.
o Completeness: i dikatakan lengkap (complete) jika
untuk semua KB |= α, KB|-i α benar.
Logika Proposisi
Logika Proposisi
o Merupakan logika yang paling sederhana. Sebuah sentence
dinyatakan sebagai simbol proposional P1, P2, dst.
o Sintaks dari logika proposisi
Jika S adalah kalimat, ⌐S adalah kalimat (negasi)
Jika S1 dan S2 adalah kalimat, S1 Ʌ S2 adalah kalimat
(conjunction)
Jika S1 dan S2 adalah kalimat, S1 V S2 adalah kalimat
(disjunction)
Jika Jika S1 dan S2 adalah kalimat, S1 → S2 adalah kalimat
(implication)
Jika S1 dan S2 adalah kalimat, S1 ↔ S2 adalah kalimat
(biconditional)
Logika Proposisi
Logika Proposisi
o Semantik dari logika proposisi
Sebuah model memberi nilai true/ false terhadap setiap
proposisi, misal P1,2 = true, P2,2 = true, P3.1 = false.
Sebuah proses rekursif bisa mengevaluasi kalimat
sembarang: ⌐P1,2 Ʌ (P2,2 V P3,1) = true Ʌ (false V true) = true
Ʌ true = true.
Logika Proposisi
Logika Proposisi
o Semantik dari logika proposisi
Maka kalimat yang digunakan untuk merepresentasikan
Wumpus World
Secara semantik :
• Pi,j = true menyatakan kalau ada lubang jebakan (pit) di [i, j].
• Bi,j = true menyatakan kalau ada hembusan angin (breeze).
Aturan main dalam Wumpus World : kamar di samping
lubang jebakan ada hembusan angin:
• B1,1↔ (P1,2 V P2,1) Menyatakan KB untuk dibuktikan
• B2,1↔ (P1,2 V P2,2 V P3,1) misalnya dengan tabel kebenaran.
Hasil pengamatan (percept):
• ⌐P1,1
• ⌐ B1,1 Menyatakan kamar i,j tersebut (αi) aman atau tidak.
• B2,1
Logika Proposisi
Logika Proposisi
o Dasar Manipulasi Rules
• ¬(¬A) = A Double negation
• ¬(A ^ B) = (¬A) V (¬B) Negated “and”
• ¬(A V B) = (¬A) ^ (¬B) Negated “or”
• A ^ (B V C) = (A ^ B) V (A ^ C) Distributivity of ^ on V
• A => B = (¬A) V B by definition
• ¬(A => B) = A ^ (¬B) using negated or
• A B = (A => B) ^ (B => A) by definition
• ¬(A B) = (A ^ (¬B))V(B ^ (¬A)) using negated and & or
• …
Logika Proposisi
Logika Proposisi
o Contoh :
Logika Proposisi
Logika Proposisi
o Solusi :
Logika Proposisi
Logika Proposisi
o Inferensi bisa dilakukan menggunakan tabel kebenaran
untuk membuktikan entailment dari suatu knowledge.
Sehingga kita dapat membuktikan apakah KB |= α1
menggunakan tabel kebenaran (sejenis model checking), di
mana α1 menyatakan kamar di [1, 2] aman sebagaimana tabel
di bawah ini.
Tugas Kelompok
1. Diketahui KB = ( B1,1 (P2,1 P3,1)) B1,1 dan α = P2,1 P3,1.
Buktikan dengan tabel kebenaran berikut, apa saja kondisi yang
memenuhi KB|=α !
B1,1 P2,1 P3,1 P2,1 P3,1 B1,1 (P2,1 P3,1) KB α
1 F F F
2 F F T
3 F T F
4 F T T
5 T F F
6 T F T
7 T T F
8 T T T
Tugas Kelompok
1. Jelaskan konsep dasar dari agen berbasis pengetahuan dan hal-hal apa
saja yang harus dipenuhi ketika membuat agen tersebut!
2. Diketahui KB = “bebas”, α = “bebas”, letak Smell, Breeze “bebas”.
Buktikan dengan tabel kebenaran, apa kondisi yang memenuhi KB|=α !
Bi,j Pi,j Pi,j ……. KB α
F F F
F F T
F T F
F T T
T F F
T F T
T T F
T T T
Selesai