Artificial Intelligence
Agen Logika
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 :
Mereprentasikan 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
Agen Berbasis Pengetahuan :
Pilihan representasi berpengaruh terhadap apa yang bisa
dilakukan inference engine.
Pada pendekatan deklaratif programmer memberitahu
(TELL) agent informasi tentang environment.
Kalau informasi kurang, agen bisa melengkapinya sendiri.
Jika dibandingkan dengan pendekatan prosedural :
programmer secara eksplisit memrogram agen untuk
bertindak.
Sehingga bagaimana jika program tidak benar, maka akan
besar kemungkinan menyebabkan kesalahan.
Agen Berbasis Pengetahuan
Agen Berbasis Pengetahuan :
o Permasalahannya adalah bagaimana representasi yang tepat,
sehingga ada dua hal yang harus diperhatikan :
Expressive : bisa menyatakan fakta tentang environment.
Tractable : bisa mengolah/ memproses inference engine
(dengan cepat).
o Knowledge merupakan power atau kekuatan dari
pemrograman secara deklaratif.
o Representasi dan penalaran membentuk suatu Intelligence.
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:
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 salah 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
Inferensi atau reasoning merupakan pembentukan fakta (sentence)
baru yang meng-entail fakta-fakta lama.
Reasoning bukan dilakukan pada fakta di dunia (berdasarkan semantik),
melainkan representasi fakta dalam bahasa representasi pengetahuan
si agent (secara sintaks).
Otak manusia melakukan proses reasoning dalam suatu bentuk sintak
dapat diilustrasikan sebagaimana 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
Entailment dalam Wumpus World bisa diilustrasikan sebagaimana
berikut, dengan melihat [1,1] OK, [2,1] Breeze :
dgd
Logika Proposisi
Logika Proposisi
o Dasar Manipulasi Rules
• ¬(¬A) = A Double negation
• 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.
Metode pembuktian
Metode Pembuktian
o Secara umum, ada dua jenis metode pembuktian :
Pengaplikasian inference rule
• Dihasilkan kalimat baru yang sah (sound) dari yang lama.
• Bukti (proof) merupakan serangkaian pengaplikasian inference rule
(operator ) dari algoritma search.
• Biasanya, kalimat harus diterjemahkan ke dalam sebuah normal form.
Model checking
• Penjabaran truth table (eksponensial dalam n)
• Backtracking lebih efisien, misalkan: algoritma DPLL
• Heuristic search dalam model space (sound tetapi incomplete), misalkan
: min-conflicts hill –climbing
o Horn Form
Dalam Horn form, KB merupakan conjuction dari Horn Clauses.
Horn Clause terdiri :
• Proposition symbol
• (Conjuction of symbol) symbol
Metode pembuktian
Metode Pembuktian
o Horn form
Misalkan:
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|=α !