Professional Documents
Culture Documents
Introduction To Artificial Intelligence: Planning
Introduction To Artificial Intelligence: Planning
Planning
Bernhard Beckert
STRIPS operators
Partial-order planning
Conditional planning
Divide-and-conquer by subgoaling
STRIPS
STandford Research Institute Problem Solver
Efficient algorithms
Example
At(Home), Have(Bread)
Example
At(Home), Have(Bread)
Example
State: At(Home), Have(Bread)
Implicitly: ¬Have(Milk), ¬Have(Bananas), ¬Have(Drill)
Operator schema
Operator applicability
Subst(precond(o)) ⊆ s
Operator applicability
Subst(precond(o)) ⊆ s
Example
Resulting state
Resulting state
Formally
Example
Application of
Drive(a, b)
precond: At(a), Road(a, b)
effect: At(b), ¬At(a)
Example
Application of
Drive(a, b)
precond: At(a), Road(a, b)
effect: At(b), ¬At(a)
to state
Example
Application of
Drive(a, b)
precond: At(a), Road(a, b)
effect: At(b), ¬At(a)
to state
Planning problem
Planning problem
Planning problem
Open condition
Open condition
Note
Note
Complete plan
Complete plan
Si ≺ S j
c ∈ effect(Si )
there is no Sk with Si ≺ Sk ≺ S j and ¬c ∈ effect(Sk )
(otherwise Sk is called a clobberer or threat)
Complete plan
Si ≺ S j
c ∈ effect(Si )
there is no Sk with Si ≺ Sk ≺ S j and ¬c ∈ effect(Sk )
(otherwise Sk is called a clobberer or threat)
Clobberer / threat
Example
Demotion
Promotion
choose a step Sadd from operators or S TEPS( plan) that has c as an effect
if there is no such step then fail
c
add the causal link Sadd −→ Sneed to L INKS( plan)
add the ordering constraint Sadd ≺ Sneed to O RDERINGS( plan)
if Sadd is a newly added step from operators then
add Sadd to S TEPS( plan)
add Start ≺ Sadd ≺ Finish to O RDERINGS( plan)
Incomplete information
Incomplete information
Incorrect information
Incomplete information
Incorrect information
Qualification problem
Conditional planning
Conditional planning
Monitoring/Replanning
Conditional planning
Execution monitoring
Execution monitoring
Action monitoring
Execution monitoring
Action monitoring
Consequence of failure
Need to replan
Simplest
Simplest
Better
POP algorithm