0% found this document useful (0 votes)
2 views

Unit 3 - Part 2 -Using FOL- Knowledge Engineering - Example Domains

The document discusses knowledge engineering in first-order logic, particularly focusing on inference processes and the wumpus world scenario. It outlines the steps involved in the knowledge-engineering process, including task identification, knowledge assembly, and encoding domain knowledge. Additionally, it explains concepts such as entailment, logical inference, and model checking in relation to propositional and first-order logic.

Uploaded by

lekha6613
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Unit 3 - Part 2 -Using FOL- Knowledge Engineering - Example Domains

The document discusses knowledge engineering in first-order logic, particularly focusing on inference processes and the wumpus world scenario. It outlines the steps involved in the knowledge-engineering process, including task identification, knowledge assembly, and encoding domain knowledge. Additionally, it explains concepts such as entailment, logical inference, and model checking in relation to propositional and first-order logic.

Uploaded by

lekha6613
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

INT310

Artificial Intelligence

Unit 3
Part 2
Knowledge Engineering First Order Logic
Inference in First Order Logic
Propositional vs. FOL

Hemamalini S
Page 1
Page 2
8.3.4 The wumpus world
Percept ([Stench, Breeze, Glitter , None, None], 5) .
Turn(Right ), Turn(Left ), Forward , Shoot , Grab, Climb
ASKVARS(∃ a BestAction(a, 5))
∀ t, s, g, m, c Percept ([s, Breeze, g,m, c], t) ⇒ Breeze(t) ,
∀ t, s, b, m, c Percept ([s, b, Glitter,m, c], t) ⇒ Glitter (t) ,
∀ t Glitter (t) ⇒ BestAction(Grab, t) .
∀ x, y, a, b Adjacent ([x, y], [a, b]) ⇔
(x = a ∧ (y = b − 1 ∨ y = b + 1)) ∨ (y = b ∧ (x = a − 1 ∨ x = a + 1)) .
∀ x, s1, s2, t At(x, s1, t) ∧ At(x, s2, t) ⇒ s1 = s2 .
∀ s, t At(Agent, s, t) ∧ Breeze(t) ⇒ Breezy(s) .
∀ s Breezy(s) ⇔ ∃r Adjacent (r, s) ∧ Pit(r) .
∀ t HaveArrow(t + 1) ⇔ (HaveArrow(t) ∧¬Action(Shoot, t))

Page 3
8.4 KNOWLEDGE ENGINEERING IN FIRST-ORDER LOGIC
- A knowledge engineer is someone who investigates a particular
domain, learns what concepts are important in that domain, and creates a
formal representation of the objects and relations in the domain.
- The following approach is suitable for developing special-purpose
knowledge bases whose domain is carefully circumscribed and whose
range of queries is known in advance.
- General-purpose knowledge bases - cover a broad range of human
knowledge and are intended to support tasks such as natural language
understanding

Page 4
8.4.1 The knowledge-engineering process
1. Identify the task
2. Assemble the relevant knowledge
3. Decide on a vocabulary of predicates, functions, and constants
4. Encode general knowledge about the domain
5. Encode a description of the specific problem instance
6. Pose queries to the inference procedure and get answers
7. Debug the knowledge base

Page 5
Page 6
8.4.2 The electronic circuits domain
- Identify the task
- Assemble the relevant knowledge
- Decide on a vocabulary
- Encode general knowledge of the domain

Page 7
Page 8
Page 9
Encode the specific problem instance

Page 10
Page 11
Page 12
Courtesy

Page 13
Propositional vs First Order Inference

Page 14
The substitution replaces a
variable with a term (a
piece of syntax) to produce
a new sentence, whereas
an interpretation(in
extended interpretations)
maps a variable to an
object in the domain.

Page 15
Page 16
Page 17
Page 18
Page 19
Page 20
ENTAILMENT

This involves the relation of logical entailment between sentences


—the idea that a sentence follows logically from another sentence. In
mathematical notation, we write α |= β to mean that the sentence α entails the
sentence β. The formal definition of entailment is this:
α |= β if and only if, in every model in which α is true, β is also true. Using the
notation just
introduced, we can write
α |= β if and only if M(α) ⊆ M(β) .

α1 = “There is no pit in [1,2].”


α2 = “There is no pit in [2,2].”
We have surrounded the models of
α1 and α2 with dotted lines in
Figures 7.5(a) and 7.5(b),
respectively. By inspection,
we see the following:
in every model in which KB is true,
α1 is also true.
Hence, KB |= α1: there is no pit in [1,2].
We can also see that
in some models in which KB is true, α2 is false.

Page 21
LOGICAL INFERENCE
The preceding example not only illustrates entailment but also shows how
the definition
of entailment can be applied to derive conclusions—that is, to carry out
logical inference.
MODEL CHECKING
The inference algorithm illustrated in Figure 7.5 is called model checking,
because it enumerates all possible models to check that α is true in all
models in which KB is true, that is, that M(KB) ⊆ M(α).

an inference algorithm i can derive α from KB, we write KB |--i α ,


which is pronounced “α is derived from KB by i” or “i derives α from KB.”
SOUND TRUTH-PRESERVING
An inference algorithm that derives only entailed sentences is called
sound or truthpreserving.
Completeness
an inference algorithm is complete if it can derive any sentence that is
entailed.

Page 22

You might also like