Agen Logika

47
Agen Logika Imam Cholissodin, S.Si., M.Kom. Kecerdasan Buatan/ Artificial Intelligence

description

Kecerdasan Buatan / Artificial Intelligence. Agen Logika. Imam Cholissodin, S.Si., M.Kom. Pokok Bahasan. Membahas soal UTS AI Agen Logika Agen Berbasis Pengetahuan Logika Proposisi Metode Pembuktian Latihan Individu + Tugas Kelompok. Agen Logika. - PowerPoint PPT Presentation

Transcript of Agen Logika

Page 1: Agen Logika

Agen Logika

Imam Cholissodin, S.Si., M.Kom.

Kecerdasan Buatan/Artificial Intelligence

Page 2: Agen Logika

Pokok Bahasan

1. Membahas soal UTS AI

2. Agen Logika

3. Agen Berbasis Pengetahuan

4. Logika Proposisi

5. Metode Pembuktian

6. Latihan Individu + Tugas Kelompok

Page 3: Agen Logika

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.

Page 4: Agen Logika

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).

Page 5: Agen Logika

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.

Page 6: Agen Logika

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.

Page 7: Agen Logika

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).

Page 8: Agen Logika

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.

Page 9: Agen Logika

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.

Page 10: Agen Logika

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.

o Action : maju, belok kiri 900,belok kanan 900, tembak panah (hanya 1!), ambil benda.

Page 11: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Sifat dari Wumpus World:o Fully observable? Tidak,

hanya bisa berpresepsi 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? Yao Single agent? Ya

Page 12: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 13: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 14: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 15: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 16: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 17: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 18: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 19: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World (Finish):

Page 20: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World:

Page 21: Agen Logika

Agen Berbasis Pengetahuan

Wumpus World (Kondisi Khusus):

Page 22: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World (Other) :

Page 23: Agen Logika

Agen Berbasis Pengetahuan

Contoh Aturan Permainan dalam Wumpus World (Other) :

Page 24: Agen Logika

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.

Page 25: Agen Logika

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?)

Page 26: Agen Logika

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

Page 27: Agen Logika

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 :

o Model merupakan suatu “dunia” di mana kebenaran suatu sentence bisa diuji.

Page 28: Agen Logika

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.

Page 29: Agen Logika

Agen Berbasis Logika

Entailment dalam Wumpus World bisa diilustrasikan sebagaimana berikut, dengan melihat [1,1] OK, [2,1] Breeze :

Maka model jebakan ada 3 pilihan boolean di [2,1],[2,2],[3,1], dengan 8 kemungkinan model.

Page 30: Agen Logika

Agen Berbasis Logika

KB = pengamatan (percept) + aturan main Wumpus World, maka kita menyatakan apakah kamar [1,2] aman dengan cara melakukan entailment yang mana dibuktikan dengan menggunakan model checking, yakni memeriksa semua kemungkinan M(KB), M(α1).

Sehingga dari ilustrasi diatas menunjukkan bahwasannya : M(KB) subset dari M(α1), sehingga bisa disimpulkan bahwa kamar [1,2] aman.

Page 31: Agen Logika

Agen Berbasis Logika

Lain halnya ketika melakukan pengamatan apakah kamar [2,2] aman, dengan ditunjukkan oleh α2., terlihat sebagaimana ilustrasi berikut :

Dari gambar tersebut menunjukkan bahwasannya M(KB) bukan subset dari M(α2), sehingga bisa disimpulkan bahwa KB |≠ α2, dengan kata lain kamar [2,2] tidak aman.

Page 32: Agen Logika

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.

Page 33: Agen Logika

Logika Proposisi

Logika Proposisio 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)

Page 34: Agen Logika

Logika Proposisi

Logika Proposisio 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.

Page 35: Agen Logika

Logika Proposisi

Logika Proposisio 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)

• B2,1↔ (P1,2 V P2,2 V P3,1)

Hasil pengamatan (percept):• ⌐P1,1

• ⌐ B1,1

• B2,1

dgdMenyatakan kamar i,j tersebut (αi) aman atau tidak.

Menyatakan KB untuk dibuktikan misalnya dengan tabel kebenaran.

Page 36: Agen Logika

Logika Proposisi

Logika Proposisio 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• …

Page 37: Agen Logika

Logika Proposisi

Logika Proposisio Contoh :

Page 38: Agen Logika

Logika Proposisi

Logika Proposisio Solusi :

Page 39: Agen Logika

Logika Proposisi

Logika Proposisio 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.

Page 40: Agen Logika

Metode pembuktian

Metode Pembuktiano 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

Page 41: Agen Logika

Metode pembuktian

Metode Pembuktiano Horn form

Misalkan:

Modus ponen pada Horn form (lengkap pada Horn KB):

Horn form bisa digunakan dengan algoritma forward chaining atau backward chaining

forward chaining adalah aplikasi rule yang premise-nya diketahui benar dalam KB, kemudian tambahkan conclusionnya ke dalam KB, ulangi sampai query (Q) terbukti. Sehingga bisa dikatakan kinerja dari forward chaining merupakan metode bottom up dari fakta menuju konklusi.

Page 42: Agen Logika

Metode pembuktian

Metode Pembuktian forward chaining adalah aplikasi rule yang premise-nya

diketahui benar dalam KB, kemudian tambahkan conclusionnya ke dalam KB, ulangi sampai query (Q) terbukti. Sehingga bisa dikatakan kinerja dari forward chaining merupakan metode bottom up dari fakta menuju konklusi. Misal diilustrasikan sebagai berikut :

Page 43: Agen Logika

Metode pembuktian

Metode Pembuktian Sedangkan konsep dasar dari algoritma backward

chaining digunakan untuk membuktikan query (Q), dengan cara memeriksa Q jika sudah diketahui, atau secara rekursif, dengan membuktikan semua premise rule yang conclusion-nya Q (dikenal sebagai metode top down).

Dalam backward chaining ada beberapa hal yang perlu diketahui : Menghindari loop : dengan cara memeriksa apakah

sub-goal yang baru sudah ada di goal stack. Menghindari perulangan pekerjaan : periksa apakah

sub-goal yang baru sudah dibuktikan benar atau sudah dibuktikan salah.

Page 44: Agen Logika

Kesimpulan

Kesimpulan :o Agen berbasis pengetahuan menggunakan inferensi dan

knowledge base untuk menghasilkan informasi baru atau untuk mengambil keputusan.

o Konsep-konsep dasar logika sebagai knowledge representation language meliputi :

Sintak : struktur kalimat bahasa formal Semantik : arti kalimat sebagai kebenaran terhadao model Entailment : menyimpulkan kalimat baru yang benar Inferensi : proses menurunkan kalimat baru dari kalimat-kalimat lama Soundness : proses menurunkan hanya kalimat yang di-entail Completeness : pross menurunkan SEMUA kalimat yang di-entail

o Forward, backward chaining merupakan proses inferensi complete dan linear untuk Horn form.

Page 45: Agen Logika

Latihan Individu

Membahas Soal UTS AI!

Page 46: Agen Logika

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 = ( 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 αF F F

F F T

F T F

F T T

T F F

T F T

T T F

T T T

Page 47: Agen Logika

Selesai