Agen Logika
1. Pengetahuan Berbasis Agen
Agen
Berbasis Pengetahuan, Knowledge Base (KB) menyatakan apa yang “diketahui” oleh
si agent Pendekatan deklaratif membangun agent: “beritahu” informasi yang
relevan, simpan dalam KB. Agen dapat ditanya (atau bertanya diri sendiri) apa
yang sebaiknya dilakukan berdasarkan KB. 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). q Menyimpulkan action apa yang
perlu diambil.
Agen
Berbasis Pengetahuan atau Knowledge Base (KB) merupakan Himpunan representasi
fakta yang diketahui tentang lingkungannya. Tiap fakta disebut sebagai
sentence. Fakta tersebut dinyatakan dalam bahasa formal sehingga bisa diolah,
menambahkan sentence baru ke KB. Inference Engine merupakan menentukan fakta
baru yang dapat diturunkan dari pengetahuan yang sudah ada dalam KB.
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?
Logical sentence di_antara(gdB, gdA, gdC). Natural language “Gedung B ada di
antara gedung A dan gedung C”.
Agen Berbasis Pengetahuan,
pilihan representasi berpengaruh terhadap apa yang bisa dilakukan inference
engine. Pada pendekatan deklaratif programmer memberitahu 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,
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). Knowledge
merupakan power atau kekuatan dari pemrograman secara deklaratif. Representasi
dan penalaran membentuk suatu Intelligence.
2.
Logika
Secara
etimologis, logika adalah istilah yang dibentuk dari
kata logikosyang berasal
dari kata benda logos. Kata logos, berarti sesuatu yang diutarakan, suatu
pertimbangan akal (pikiran), kata, percakapan, atau ungkapan lewat bahasa. Kata logikos, berarti mengenal kata,
mengenai percakapan atau yang berkenaan dengan ungkapan lewat bahasa. Dengan demikian, dapatlah dikatan bahwa logika
adalah suatu pertimbangan akal atau pikiran yang diutrakan lewat kata
dan dinyatakan dalam bahasa.
3.
Logika Proposi / Logika Sederhana
a.
Sintaks
·
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)
- Semantik
·
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.
c.
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.
d. Ekuivalen
Berdasarkan kamus besar
Bahasa Indonesia kata ekuivalen itu bermakna nilai yang sebanding. Jadi dalam
formula logika proposisi. Terdapat formula-formula yang memiliki operator
logika yang berbeda tetapi nilai kebenaran dari formula tersebut bernilai sama,
entah itu bernilai TRUE atau FALSE.
e. Validitas
Konklusi sebaiknya diturunkan dari premis-premis atau
premis-premis selayaknya mengimplikasikan konklusi. Dalam argumentasi yang
valid, konklusi akan bernilai benar jika setiap premis yang digunakan di dalam
argumen juga bernilai benar. Jadi validitas argumen tergantung pada bentuk
argumen itu dan dengan bantuan tabel kebenaran.Konklusi itu benar jika
mengikuti hukum-hukum logika yang valid dari aksioma-aksioma sistem itu, dan
negasinya adalah salah. Untuk menentukan validitas suatu argumen dengan selalu
mengerjakan tabel kebenarannya tidaklah praktis. Cara yang lebih praktis banyak
bertumpu pada tabel kebenaran dasar dan bentuk kondisional. Bentuk argumen yang
paling sederhana dan klasik adalah Modus ponens dan Modus tolens.
4.
Pola Penalaran pada Logika
Proposisi
·
forward chaining :
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.
·
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.
5. Inferensi Proposisi yang Efektif
1. Algoritma Backtraking
Algoritma backtracking merupakan salah satu metode pemecahan masalah yang
termasuk dalam strategi yang berbasis pencarian pada ruang status. Algoritma
backtracking bekerja secara rekursif dan melakukan pencarian solusi persoalan
secara sistematis
pada semua kemungkinan solusi yang ada. Oleh karena algoritma ini berbasis pada
algoritma Depth-First Search (DFS), maka pencarian solusi dilakukan dengan
menelusuri struktur berbentuk pohon berakar secara preorder. Algoritma
backtracking merupakan bentuk tipikal dari algoritma rekursif.Saat
ini algoritma backtracking banyak diterapkan untuk program games (seperti
permainan tic-tac-toe, menemukan jalan keluar dalam sebuah labirin, catur, dll)
dan masalah-masalah pada bidang kecerdasan buatan (artificial
intelligence).
6. Agen Berbasis Logika Proposisi
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.
Perbedaan dua agent, problem solving agent dan
knowledge-based agent. 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) tetapi jika 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).
Sumber:
terimakasih atas infonya, sangat bermanfaat sekali :)
BalasHapus