1
CAK2HAB3 - Dasar Kecerdasan Artifisial
REASONING
First-Order Logic
Prof. Suyanto
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
First-Order Logic
• Propositional Logic kurang efisien
• First-Order Logic lebih efisien
• First-Order Logic = Predicate Logic = Predicate Calculus
First-Order Logic
• Propositional Logic kurang efisien
• First-Order Logic lebih efisien
• First-Order Logic = Predicate Logic = Predicate Calculus
First-Order Logic
1. Objects: sesuatu dengan identitas individual (people, houses, colors, …)
2. Properties: sifat yang membedakannya dari object yang lain (red, circle, …)
3. Relations: hubungan antar object (brother of, bigger than, part of, ...)
4. Functions: relation yang mempunyai satu nilai (father of, best friend, …)
First-Order Logic
1. Objects: sesuatu dengan identitas individual (people, houses, colors, …)
2. Properties: sifat yang membedakannya dari object yang lain (red, circle, …)
3. Relations: hubungan antar object (brother of, bigger than, part of, ...)
4. Functions: relation yang mempunyai satu nilai (father of, best friend, …)
5
6
CAK2HAB3 - Dasar Kecerdasan Artifisial
Tata Bahasa
First-Order Logic
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
Sentence ® AtomicSentence
| Sentence Connective Sentence
| Quantifier Variable, … Sentence
| ¬ Sentence
| (Sentence)
AtomicSentence ® Predicate(Term,…) | Term = Term
Term ® Function(Term,…)
| Constant
| Variable
Connective ® Þ | Ù | Ú | Û
Quantifier ® " | $
Constant ® A | X1 | John | …
Variable ® a | x | s | …
Predicate ® Before | HasColor | Raining | …
Function ® MotherOf | LeftLegOf | …
Sentence ® AtomicSentence
| Sentence Connective Sentence
| Quantifier Variable, … Sentence
| ¬ Sentence
| (Sentence)
AtomicSentence ® Predicate(Term,…) | Term = Term
Term ® Function(Term,…)
| Constant
| Variable
Connective ® Þ | Ù | Ú | Û
Quantifier ® " | $
Constant ® A | X1 | John | …
Variable ® a | x | s | …
Predicate ® Before | HasColor | Raining | …
Function ® MotherOf | LeftLegOf | …
8
Sentence ® AtomicSentence
| Sentence Connective Sentence
| Quantifier Variable, … Sentence
| ¬ Sentence
| (Sentence)
AtomicSentence ® Predicate(Term,…) | Term = Term
Term ® Function(Term,…)
| Constant
| Variable
Connective ® Þ | Ù | Ú | Û
Quantifier ® " | $
Constant ® A | X1 | John | …
Variable ® a | x | s | …
Predicate ® Before | HasColor | Raining | …
Function ® MotherOf | LeftLegOf | …
9
Sentence ® AtomicSentence
| Sentence Connective Sentence
| Quantifier Variable, … Sentence
| ¬ Sentence
| (Sentence)
AtomicSentence ® Predicate(Term,…) | Term = Term
Term ® Function(Term,…)
| Constant
| Variable
Connective ® Þ | Ù | Ú | Û
Quantifier ® " | $
Constant ® A | X1 | John | …
Variable ® a | x | s | …
Predicate ® Before | HasColor | Raining | …
Function ® MotherOf | LeftLegOf | …
10
Sentence ® AtomicSentence
| Sentence Connective Sentence
| Quantifier Variable, … Sentence
| ¬ Sentence
| (Sentence)
AtomicSentence ® Predicate(Term,…) | Term = Term
Term ® Function(Term,…)
| Constant
| Variable
Connective ® Þ | Ù | Ú | Û
Quantifier ® " | $
Constant ® A | X1 | John | …
Variable ® a | x | s | …
Predicate ® Before | HasColor | Raining | …
Function ® MotherOf | LeftLegOf | …
11
Atomic sentences
• Atomic sentences dibentuk dari Predicate(Term,
...) atau Term = Term.
• Misalnya:
§ Sepatu(Budi)
§ Saudara(Andi,Budi)
§ Memberi(Andi,Budi,KueCoklat)
§ Saudara(Andi) = Budi, dan sebagainya
Complex sentences
• Complex Sentence dibangun menggunakan
connective
• Contoh:
Saudara(Andi,Budi) Þ Memberi(Andi,Budi,Kue)
14
CAK2HAB3 - Dasar Kecerdasan Artifisial
Inferensi pada
First-Order Logic
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
Inferensi pada First-Order Logic
•
First-Order Logic menggunakan tujuh aturan propositional logic
1.
2.
3.
4.
5.
6.
7.
•
Modus Ponens
And-Elimination
And-Introduction
Or-Introduction
Double-Negation-Elimination
Unit Resolution
Resolution
Ditambah tiga aturan yang berhubungan dengan quantifier:
8. Universal Elimination
9. Existential Elimination
10. Existential Introduction
15
Universal Quantifiers (")
• Universal Quantifiers menyatakan sesuatu yang bersifat umum
• Simbol " (huruf A terbalik) dibaca ’For All’
• AnakKecil(Andi)
• Suka(Andi,Permen)
16
Universal Quantifiers (")
• Universal Quantifiers menyatakan sesuatu yang bersifat umum
• Simbol " (huruf A terbalik) dibaca ’For All’
• AnakKecil(Andi)
• Suka(Andi,Permen)
• "x AnakKecil(x) Þ Suka(x,Permen)
17
Existential Quantifiers ($)
• Existential Quantifiers Menyatakan sesuatu yang berlaku sebagian
• Simbol $ (huruf E menghadap ke kiri) dibaca ’There Exist’, yang berarti
ada satu atau beberapa
18
Existential Quantifiers ($)
• Existential Quantifiers Menyatakan sesuatu yang berlaku sebagian
• Simbol $ (huruf E menghadap ke kiri) dibaca ’There Exist’, yang berarti
ada satu atau beberapa
• $x AnakKecil(x) Þ Suka(x,Permen)
19
20
CAK2HAB3 - Dasar Kecerdasan Artifisial
Generalized Modus Ponens
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
Generalized Modus Ponens
•
•
Sangat efisien
Gabungkan tiga aturan inferensi: And-Introduction, Universal Elimination, dan
Modus Ponens
21
Generalized Modus Ponens
•
•
•
Sangat efisien
Gabungkan tiga aturan inferensi: And-Introduction, Universal Elimination, dan
Modus Ponens
Dari tiga kalimat berikut ini:
§ AnakKandung(Wati,Budi)
§ SaudaraKandung(Budi,Andi)
§ "x,y,z AnakKandung(x,y) Ù SaudaraKandung(y,z) Þ Keponakan(x,z)
dapat dilakukan inferensi dalam satu langkah untuk menghasilkan suatu kalimat
baru, yaitu: Keponakan(Wati,Andi)
22
Masalah: Hukum Pernikahan
• Hukum pernikahan menyatakan bahwa suatu pernikahan
adalah tidak sah jika kedua mempelai memiliki hubungan
keponakan.
• Wati menikah dengan Andi.
• Dimana Wati adalah anak kandung Budi sedangkan Andi
adalah saudara kembar Budi.
• Dengan First-Order Logic, buktikan bahwa pernikahan Andi
dan Wati adalah tidak sah.
23
Langkah pertama
"x,y Keponakan(x,y) Ù Menikah(x,y) Þ ¬Sah(Menikah(x,y))
(1)
Menikah(Wati,Andi)
(2)
AnakKandung(Wati,Budi)
(3)
SaudaraKembar(Budi,Andi)
(4)
"x,y SaudaraKembar(x,y) Þ SaudaraKandung(x,y)
(5)
"x,y,z AnakKandung(x,y) Ù SaudaraKandung(y,z) Þ Keponakan(x,z)
(6)
24
Langkah ke dua
Dari (3.5) dan Universal Elimination:
SaudaraKembar(Budi,Andi) Þ SaudaraKandung(Budi,Andi)
(7)
Dari (3.4), (3.7), dan Modus Ponens:
SaudaraKandung(Budi,Andi)
(8)
Dari (3.6) dan Universal Elimination:
AnakKandung(Wati,Budi) Ù SaudaraKandung(Budi,Andi) Þ Keponakan(Wati,Andi)
(9)
Dari (3.3), (3.8), dan And-Intoduction:
AnakKandung(Wati,Budi) Ù SaudaraKandung(Budi,Andi)
(10)
25
Langkah ke dua
Dari (3.9), (3.10), dan Modus Ponens:
Keponakan(Wati,Andi)
(11)
Dari (3.1) dan Universal Elimination:
Keponakan(Wati,Andi) Ù Menikah(Wati,Andi) Þ ¬Sah(Menikah(Wati,Andi))
(12)
Dari (3.11), (3.2) dan And-Intoduction:
Keponakan(Wati,Andi) Ù Menikah(Wati,Andi)
(13)
Dari (3.12), (3.13), dan Modus Ponens:
¬Sah(Menikah(Wati,Andi))
(14)
26
27
CAK2HAB3 - Dasar Kecerdasan Artifisial
Unification
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
Unification
•
•
•
UNIFY(p,q) = q dimana SUBST(q,p) = SUBST(q,q)
q disebut unifer dari dua kalimat tersebut
Suka(Andi,x) Þ Beli(Andi,x) berarti “Andi beli apapun yang dia sukai.”
28
Unification
• Suka(Andi,Roti)
• Suka(y,Apel)
• Suka(y,Masakan(y))
• Suka(x,Wortel)
Pengaplikasian unifikasi premise atau antecedent menghasilkan:
• UNIFY(Suka(Andi,x), Suka(Andi,Roti)) = {x/Roti}
• UNIFY(Suka(Andi,x), Suka(y,Apel)) = {x/Apel,y/Andi}
• UNIFY(Suka(Andi,x), Suka(y,Masakan(y))) = {y/Andi,x/Masakan(Andi)}
• UNIFY(Suka(Andi,x), Suka(x,Wortel)) = fail
29
Unification
• Suka(Andi,Roti)
• Suka(y,Apel)
• Suka(y,Masakan(y))
• Suka(x,Wortel)
Pengaplikasian unifikasi premise atau antecedent menghasilkan:
• UNIFY(Suka(Andi,x), Suka(Andi,Roti)) = {x/Roti}
• UNIFY(Suka(Andi,x), Suka(y,Apel)) = {x/Apel,y/Andi}
• UNIFY(Suka(Andi,x), Suka(y,Masakan(y))) = {y/Andi,x/Masakan(Andi)}
• UNIFY(Suka(Andi,x), Suka(x,Wortel)) = fail
30
31
CAK2HAB3 - Dasar Kecerdasan Artifisial
Generalized Resolution
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
Generalized Resolution
•
•
Resolution bisa dinyatakan sebagai Disjunctions dan Implications
Generalized Disjunctions
Untuk pi dan qi, di mana UNIFY(pj, ¬qk) = q , maka:
p1 Ú ... p j ... Ú pm
q1 Ú ... qk ... Ú qn
SUBST(q , ( p1 Ú ... p j -1 Ú p j +1 Ú pm Ú q1 Ú ... qk -1 Ú qk +1... Ú qn ))
32
Generalized Resolution
•
•
Resolution bisa dinyatakan sebagai Disjunctions dan Implications
Generalized Disjunctions
Untuk pi dan qi, di mana UNIFY(pj, ¬qk) = q , maka:
p1 Ú ... p j ... Ú pm
q1 Ú ... qk ... Ú qn
SUBST(q , ( p1 Ú ... p j -1 Ú p j +1 Ú pm Ú q1 Ú ... qk -1 Ú qk +1... Ú qn ))
•
Generalized Implications
Untuk atom pi, qi, ri, si dimana UNIFY(pj, qk) = q, maka:
p1 Ù ... p j ... Ù pn1 Þ r1 Ú ... Ú rn 2
s1 Ù ... Ù sn 3 Þ q1 Ú ... qk ... Ú qn 4
SUBST(q , ( p1 Ù ... p j -1 Ù p j +1 Ú pn1 Ù s1 Ù ... sn 3 Þ r1 Ú ... rn 2 Ú q1 Ú ... qk -1 Ú qk +1... Ú qn 4 ))
33
34
CAK2HAB3 - Dasar Kecerdasan Artifisial
Representasi Pengetahuan
First-Order Logic
S1 Informatika – Fakultas Informatika
Semester Genap 2024/2025
Dunia Wumpus
"s,b,u,c,t Percept([s,b,Glitter,u,c],t) Þ Action(Grab,t)
35
Dunia Wumpus
"s,b,u,c,t Percept([s,b,Glitter,u,c],t) Þ Action(Grab,t)
36
Dunia Wumpus
"s,b,u,c,t Percept([s,b,Glitter,u,c],t) Þ Action(Grab,t)
"b,g,u,c,t Percept([Stench,b,g,u,c],t) Þ Stench(t)
"s,g,u,c,t Percept([s,Breeze,g,u,c],t) Þ Breeze(t)
"s,b,u,c,t Percept([s,b,Glitter,u,c],t) Þ AtGold(t)
37
Dunia Wumpus
"s,b,u,c,t Percept([s,b,Glitter,u,c],t) Þ Action(Grab,t)
"b,g,u,c,t Percept([Stench,b,g,u,c],t) Þ Stench(t)
"s,g,u,c,t Percept([s,Breeze,g,u,c],t) Þ Breeze(t)
"s,b,u,c,t Percept([s,b,Glitter,u,c],t) Þ AtGold(t)
"t AtGold(t) Þ Action(Grab,t)
38
39
Permainan Catur
40
Permainan Catur
Awalnya, langkah untuk Putih
1. a2(PP) Ù Kosong(a3) Þ Gerakkan(PP,a2,a3)
2. a2(PP) Ù Kosong(a3) Ù Kosong(a4) Þ Gerakkan(PP,a2,a4)
…
6. c2(PP) Ù Kosong(c3) Ù Kosong(c4) Þ Gerakkan(PP,c2,c4)
…
19. g1(KP) Ù Kosong(f3) Þ Gerakkan(KP,g1,f3)
20. g1(KP) Ù Kosong(h3) Þ Gerakkan(KP,g1,h3)
41
42
Terima Kasih
42
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )