Professional Documents
Culture Documents
CHAPTER 13
Pg No 247 - 262
What does planning involve?
• Planning problems are hard problems:
• They are certainly non-trivial.
• Solutions involve many aspects that we have studied
so far:
– Search and problem solving strategies
– Knowledge Representation schemes
– Problem decomposition -- breaking problem into
smaller pieces and trying to solve these first.
Operator(stack(X,Y))
• Precond : [holding(X),clear(Y)]
• Add : [handempty,on(X,Y),clear(X)],
• Delete : [holding(X),clear(Y)],
Operator(putdown(X))
• Precond : [holding(X)]
• Add : [ontable(X),handempty,clear(X)]
• Delete : [holding(X)]
Method 2
ON(B,D)
ON(C,A)
ON(C,A) ^ ON(B,D) ^ ONTABLE(A) ^ ONTABLE(D)
Method 1
ON(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ ONTABLE(A) ^ ONTABLE(D)
First check whether ON(C,A) is true in the current state. Here false. How to make it true?
Out of 4 operators, STACK can make it true. Put STACK (C,A) on stack in the place of
ON(C,A) which yields as
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ ONTABLE(A) ^ ONTABLE(D)
CLEAR(A)
HOLDING(C )
CLEAR(A) ^ HOLDING(C )
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ ONTABLE(A) ^Unit
5/14/2022 ONTABLE(D)
3 - Planning - R.Jayabhaduri 25
• Check whether CLEAR(A) is true. False. UNSTACK(B,A) alone
can make it true resulting in the goal stack
ON(B,A)
CLEAR(B)
ARMEMPTY
ON(B,A) ^ CLEAR(B) ^ ARMEMPTY
UNSTACK (B,A)
HOLDING(C )
CLEAR(A) ^ HOLDING(C )
STACK(C,A)
ON(B,D)
ON(C,A) ^ ON(B,D) ^ ONTABLE(A) ^ ONTABLE(D)
Solution
1. UNSTACK(B,A)
2. STACK(B,D)
3. PICKUP(C)
4. STACK(C,A)
Ontable(A) Ontable(B)
Ontable(B) Ontable(C)
On(D,A) On(D,B)
On(C,D) On(A,D)
Clear(C) Clear(A)
Clear(B) Clear(C)
Handempty
5/14/2022
Handempty
Unit 3 - Planning - R.Jayabhaduri 32
Operators of the Blocks World