CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Module IV Lecture Notes – PART- I
[Knowledge And Reasoning]
Syllabus
Knowledge Representation: Logical Agents: Knowledge based agents, the wumpus world, and logic.
Propositional Logic: A very simple logic, reasoning patterns in propositional logic.
.
Concepts
Knowledge-based agents
Example: The wumpus world
Logic in general—models and entailment
Propositional (Boolean) logic
Equivalence, validity, satisfiability
Inference rules and theorem proving
– forwardchaining
– backward chaining
– resolution
First Order Logic
Knowledge Based Agents
A knowledge-based agent needs a KB and an inference mechanism. It operates by storing sentences
in its knowledge base, inferring new sentences with the inference mechanism, and using them to
deduce which actions to take The interpretation of a sentence is the fact to which it refers.
Knowledge Bases:
domain−independent
Inference engine algorithms
domain−specific content
Knowledge base
¾ B.Tech , Department of Computer Science and Engineering, GU Page 2 of 2
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Knowledge base = set of sentences in a formal language
Declarative approach to building an agent (or other system):
Tell it what it needs to know
Then it can Ask itself what to do—answers should follow from the KB Agents can be viewed at
the knowledge level i.e., what they know, regardless of how implemented or at the implementation
level i.e.,data structures in KB and algorithms that manipulate them.
The Wumpus World:
A variety of "worlds" are being used as examples for Knowledge Representation, Reasoning, and
Planning. Among them the Vacuum World, the Block World, and the Wumpus World.
The Wumpus World was introduced by Genesereth, and is discussed in Russell-Norvig. The Wumpus
World is a simple world (as is the Block World) for which to represent knowledge and to reason.
It is a cave with a number of rooms, represented as a 4x4 square.
Rules of the Wumpus World
The neighborhood of a node consists of the four squares north, south, east, west of the given square.
In a square the agent gets a vector of percepts, with components
Stench, Breeze, Glitter, Bump, Scream
For example [Stench, None, Glitter, None, None]
¾ B.Tech , Department of Computer Science and Engineering, GU Page 3 of 3
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Stench is perceived at a square iff the wumpus is at this square or in its neighborhood.
Breeze is perceived at a square iff a pit is in the neighborhood of this square.
Glitter is perceived at a square iff gold is in this square
Bump is perceived at a square iff the agent goes Forward into a wall
Scream is perceived at a square iff the wumpus is killed anywhere in the cave
An agent can do the following actions (one at a time):
Turn(Right), Turn(Left), Forward, Shoot, Grab, Release, Climb
The agent can go Forward in the direction it is currently facing, or Turn Right, or Turn Left.
Going Forward into a wall will generate a Bump percept.
The agent has a single arrow that it can Shoot. It will go straight in the direction faced by the
agent until it hits (and kills) the wumpus, or hits (and is absorbed by) a wall.
The agent can Grab a portable object at the current square or it can Release an object that it is
holding.
The agent can Climb out of the cave if at the Start square. The Start square is (1,1) and
initially the agent is facing east. The agent dies if it is in the same square as the wumpus.
The objective of the game is to kill the wumpus, to pick up the gold, and to climb out with it.
Representing our Knowledge about the Wumpus World
Percept(x,y)
where x must be a percept vector and y must be a situation. It means that at situation y the
agent perceives x. For convenience we introduce the following definitions:
Percept([Stench,y,z,w,v],t) = > Stench(t)
Percept([x,Breeze,z,w,v],t) = > Breeze(t)
Percept([x,y,Glitter,w,v],t) = > AtGold(t)
Holding(x,y)
where x is an object and y is a situation. It means that the agent is holding the object x in
situation y.
Action(x,y)
where x must be an action (i.e. Turn(Right), Turn(Left), Forward, ..) and y must be a situation.
It means that at situation y the agent takes action x.
¾ B.Tech , Department of Computer Science and Engineering, GU Page 4 of 4
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
At(x,y,z)
where x is an object, y is a Location, i.e. a pair [u,v] with u and v in {1,2,3,4}, and z is a
situation. It means that the agent x in situation z is at location y.
Present(x,s)
means that object x is in the current room in the situation s.
Result(x,y)
It means that the result of applying action x to the situation y is the situation Result(x,y).
Notethat Result(x,y) is a term, not a statement.
For example we can say
Result(Forward, S0) = S1
Result(Turn(Right),S1) = S2
These definitions could be made more general. Since in the Wumpus World there is a single agent,
there is no reason for us to make predicates and functions relative to a specific agent. In other
"worlds" we should change things appropriately.
Wumpus World : PEAS Description
Performance measure
Gold +1000, death−1000
−1perstep,−10forusingthearrow
Environment
Squares adjacent to wumpus are smelly Squares adjacent to pit are breezy Glitter iff gold
is in the same square
Shooting kills wumpus if youarefacing it Shooting uses up the only arrow Grabbingpicks
upgoldifinsamesquare Releasingdropsthegoldinsamesquare
Actuators
Left turn, Right turn, Forward, Grab, Release, Shoot
Sensors
Breeze, Glitter, Smell
¾ B.Tech , Department of Computer Science and Engineering, GU Page 5 of 5
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Wumpus World Characterization
Observable: NO – Only Local Perception
Deterministic: Yes – Outcomes Exactly Specified
Episodic: No – Sequential at the level of actions
Static: No – Wumpus and Pits Do not Move
Discrete: Yes
Single agent: Yes – Wumpus is essentially a Natural Feature
Exploring a Wumpus World
¾ B.Tech , Department of Computer Science and Engineering, GU Page 6 of 6
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
OK
OK OK
A
S OK
A
OK OK
A
¾ B.Tech , Department of Computer Science and Engineering, GU Page 7 of 7
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
W?
S OK W?
A
OK OK
A
¾ B.Tech , Department of Computer Science and Engineering, GU Page 8 of 8
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
W?
S OK W?
A
OK B OK
A A
¾ B.Tech , Department of Computer Science and Engineering, GU Page 9 of 9
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
W?
W
S OK W?
A OK
OK B OK
A A
P
¾ B.Tech , Department of Computer Science and Engineering, GU Page 10 of 10
CSEN2031: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
W?
W
S O W?
O
A
O B O
A A
P
¾ B.Tech , Department of Computer Science and Engineering, GU Page 11 of 11
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
W? OK
W
S O W? OK
O
A K
O B O
A A
P
P
?
B O P
? Breeze in (1,2) and(2,1)
A ⇒ no safe actions
P Assumingpitsuniformlydistributed,
(2,2) has pit w/ prob 0.86, vs. 0.31
OK O
A A
P
?
Smell in (1,1)
⇒ cannot move
Can use a strategy ofcoercion:
¾ B.Tech , DS
epartment of Computer Science and Engineering, GU Page 12 of 34
A
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
shoot straight ahead
wumpuswasthere ⇒dead⇒safe
wumpuswasn’t there ⇒ safe
Logic in general
Logics are formal languages for representing information such that conclusions can be drawn
Syntaxdefinesthesentencesinthelanguage
Semantics define the ―meaning‖ ofsentences;
i.e., define truth of a sentence in a world
E.g., the language of arithmetic
x +2 ≥ y is a sentence; x2+ y >is not a sentence
x+2≥y istrueiffthenumberx+2 isnolessthanthenumbery x + 2 ≥ y is true in a world where x =7, y =1
x + 2 ≥ y is false in a world where x = 0, y = 6
Entailment
Entailment means that one thing follows fromanother:
KB |= α
A knowledge base KB entails a sentenceα if and only if α is true in all worlds where KB is
true.
E.g.,theKBcontaining―There’sapitahead‖and―There’sgoldtotheleft‖ entails ―Either there’s a pit
ahead or gold to the left‖
E.g., x + y = 4 entails 4 = x + y
Entailment is a relationship between sentences (i.e.,syntax) that is based on semantics
Models
Logicians =typically think in terms of models, whichareformally structured worlds with respect to
which truth can be evaluated
We say m is a model of a sentence α if α is true in m M(α) is the set of all models of α
Then KB |=α if and only if M (KB) ⊆ M(α)
E.g. KB = {there’s a pit ahead, there’s gold to the left }
α = there’s gold to the left
¾ B.Tech , Department of Computer Science and Engineering, GU Page 13 of 13
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
x
x x x
x
x
x xx
M( ) x x xx
x
x x
x
x x x
x x x
x x
x x x x
xx x xx
x x x
xx x
x
x M(KB) x x
x
x
Entailment in the Wumpus World
Situation after detecting nothing in[1,1], moving right, breeze in [2,1]
? ? B
A
Consider possible models for ?s
A
?
assuming only pits
3Booleanchoices ⇒ 8 possible models
Wumpus Models
¾ B.Tech , Department of Computer Science and Engineering, GU Page 14 of 14
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Breeze Breeze
Breeze Breeze Breeze
Breeze Breeze
Breeze
2
2 PIT
1
Breeze
1 PIT Breeze
1 2 3
1 2 3
KB
2
2 PIT PIT
2
1
Breeze
1 Breeze
Breeze PIT
1
1 2 3
1 2 3
1 2 3
2
2 PIT PIT PIT
1
Breeze
1 PIT Breeze
2 PIT PIT
1 2 3
1 2 3
Breeze
1 PIT
¾ B.Tech , Department of Computer Science and Engineering, GU Page 15 of 15
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
KB = wumpus-world rules + observations
2 PIT
2
Breeze
1
Breeze
1 PIT
1 2 3
1 2 3
KB
1
2
2 PIT PIT
2
1
Breeze
1 Breeze
Breeze PIT
1
1 2 3
1 2 3
1 2 3
2
2 PIT PIT PIT
1
Breeze
1 PIT Breeze
2 PIT PIT
1 2 3
1 2 3
Breeze
1 PIT
KB = wumpus-world rules + observations
α1 = ―[1,2] is safe‖, KB |=α1, proved by model checking
¾ B.Tech , Department of Computer Science and Engineering, GU Page 16 of 16
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
2 PIT
2
Breeze
1
Breeze
1 PIT
2
1 2 3
1 2 3
KB
2 PIT
2 PIT
2
Breeze
Breeze
1 PIT
1
Breeze
1
1 2 3
1 2 3
1 2 3
2 PIT PIT
2 PIT
Breeze
1
Breeze
1 PIT
2 PIT PIT
1 2 3
1 2 3
Breeze
1 PIT
KB = wumpus-world rules + observations
α2 = ―[2,2] is safe‖, KB |= α2
Inference
KB ⊢i α = sentence α can be derived from KB by procedure i
Consequences of KB are a hay stack;α is a needle.
Entailment=needle in hay stack;
inference=finding it
Soundness: i is sound if
whenever KB ⊢i α, it is also true that KB |= α
Completeness: i is complete if
whenever KB |= α, it is also true that KB ⊢i α
Preview:wewilldefine a logic(first-orderlogic)whichisexpressiveenough tosayalmostanythingof interest,
andforwhichthereexistsasoundand complete inference procedure.
¾ B.Tech , Department of Computer Science and Engineering, GU Page 17 of 17
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Thatis, theprocedurewill answer anyquestionwhoseanswerfollowsfrom what is known by the KB.
Propositional logic: Syntax
Propositional logic is the simplest logic—illustrates basic ideas The proposition symbols P1,
P2 etc are sentences
If S is a sentence, ¬S is a sentence(negation)
IfS1 andS2 aresentences,S1∧S2 isasentence(conjunction)
IfS1andS2aresentences,S1∨S2isasentence(disjunction)
IfS1andS2aresentences,S1⇒S2isasentence(implication)
IfS1andS2aresentences,S1⇔S2isasentence(biconditional)
Propositional logic: Semantics
Each model specifies true/false for each proposition symbol
P1,2 P2,2 P3,1
TRUE TRUE FALSE
(With these symbols, 8 possible models, can be enumerated automatically.) Rules for
evaluating truth with respect to a model m:
Truth Tables for Connectives
¾ B.Tech , Department of Computer Science and Engineering, GU Page 18 of 18
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Wumpus World Sentences
Let Pi,j be true if there is a pit in [i, j]. LetBi,j be true if there is a breezein[i,j].
¬P1,1
¬B1,1
B2,1
How do we encode ―pits cause breezes in adjacent squares‖?
B1,1 ⇔ (P1,2 ∨ P2,1)
B2,1 ⇔ (P1,1 ∨ P2,2 ∨P3,1)
In other words, ―a square is breezy if and only if there is an adjacent pit‖
Truth Tables for Inference
¾ B.Tech , Department of Computer Science and Engineering, GU Page 19 of 19
19ECS 302: ARTIFICIAL INTELLIGENCE LECTURE NOTES | MODULE IV | PART I
Enumerate rows (different assignments to symbols), if KB is true in row, check that α is too
Inference by Enumeration
Depth-first enumeration of all models is sound and complete
¾ B.Tech , Department of Computer Science and Engineering, GU Page 20 of 20