Upload
fifi
View
23
Download
0
Embed Size (px)
DESCRIPTION
L11. Planning Agents and STRIPS. Search vs. planning Situation calculus STRIPS operators. Search in problem solving. a b c. Problem solution: A path through the state space tree State space search: Search is a traversal of the tree until the goals is reached. - PowerPoint PPT Presentation
Citation preview
1
• Search vs. planning• Situation calculus• STRIPS operators
2
Search in problem solving
• Problem solution:
A path through the state space tree• State space search:
Search is a traversal of the tree
until the goals is reached.• State transitions is performed
by operators
a b c
abc
3
Search in problem solving
Standard search algorithms seems to fail since the goal test is inadequate.
Difficulty using standard search algorithms
What is “finish”?
4
Search in problem solving
Consider the same task get milk, bananas, and a cordless drill
A planning problem is represented in situation calculus by logical sentences that describe the three main parts of a problem.• Initial state:
At(home, S0) Have(Milk, S0) Have(Banana, S0) Have(Drill, S0)
• Goal state:
s At(home, s) Have(Milk, s) Have(Bananas, s) Have(Drill, s)
• Operators: a, s Have(Milk, Result (a,s)) [ (a=Buy(Milk)) At(Supermarket, s)
(Have(Milk, s) a Drop(Milk) )]
• Plan:
p = [Go(Supermarket), Buy(Milk), Buy(Bananas), Go(HWS), …]
Planning problem in situation calculus
5
Search in problem solving
• Representation of states
PS: Direct assignment of a symbol to each state
PL: Logic sentences• Representation of goals
PS: A goal state symbol
PL: Sentences that describe objective• Representation of actions
PS: Operators that transform one state symbol into another
PL: Addition/deletion of logic sentences describing world state• Representation of plans
PS: Path through state space
PL: Ordered or partially-ordered sequence of actions.
Problem solving vs. planning
6
Search in problem solving
• Uniform language for describing states, goals, actions,
and their effects.• Ability to add actions to a plan whenever they are needed,
not just in an incremental sequence from some initial state.• Ability to capture the fact that most parts of the world are
independent of most other parts.• It performs better for complex worlds over standard search
algorithm since searching space becomes huge when there
are many initial states and operators in standard search
algorithms.
Advantages of Planning Systems
7
The Situation Calculus
A goal can be described by a wff: x On(x, B) if we want to have a block on B Planning: finding a set of actions to achieve a goal wff. Situation Calculus (McCarthy, Hayes, 1969, Green 1969)
– A Predicate Calculus formalization of states, actions, and their effects.– So state in figure can be described by:
On(B, A) On(A, C) On(A, Fl) Clear(B)
we reify the state and include them as arguments The atoms denotes relations over states.
On(B, A, S0) On(A, C, S0) On(C, Fl, S0) Clear(B, S0) We can also have.
x, y, s On(x, y, s) (y = Fl) Clear(y, s)
s Clear(Fl, s)
Wff - well formed formula
8
Reify the actions: denote an action by a symbol– actions are functions
move(B,A,Fl): move block B from block A to Fl move (x,y,z) - action schema do: A function constant, do denotes a function that maps actions and
states into states
Express the effects of actions.– Example: (on, move) (expresses the effect of move on On)– positive effect axiom:
1),( doaction state
Representing actions
))]),,,((,,()(),(),(),,([
szyxmovedozxOnzxszClearsxClearsyxOn
))]),,,((,,()(),(),(),,([
szyxmovedoyxOnzxszClearsxClearsyxOn
9
Effect axioms for (clear, move)
precondition are satisfied withB/x, A/y, S0/s, F1/z
what was true in S0 remains true
move(x, y, z) matching?
STRIPS: describing goals and state
STRIPS: STanford Research Institute Planning System
Basic approach in GPS (general Problem Solver):• Find a “difference” (Something in G that is not provable in S0)
• Find a relevant operator f for reducing the difference• Achieve precondition of f; apply f; from resultant state, achieve G.
STRIPS planning
• STRIPS uses logical formulas to represent the states S0, G, P, etc:
• Description of operator f:
On(B,A) On(A,C) On(C,F1) Clear(B) Clear(Fl) The formula describes a set of world states Planning search for a formula satisfying a goal description
• On(A, C)• On(C, Fl)• On(B, Fl)• Clear(A)• Clear(B)
A STRIPS planning example
A STRIPS operator has 3 parts:– A set, PC - preconditions– A set D - the delete list– A set A - the add list
Usually described by Schema: Move(x,y,z)– PC: On(x,y) and On(Clear(x) and Clear(z)– D: Clear(z) , On(x,y)– A: On(x,z), Clear(y), Clear(F1)
A state S1 is created applying operator O by adding A and deleting D from S1.
STRIPS Description of Operators
Example: The move operator
Example1: The move operator
S0
G
P:On(x,y)
Clear(x)
Clear(z)
f: move(x,y, z) add: On(x,z), Clear(y)
del: On(x,y), Clear(z)
x/B, y/A, z/Fl
f(P):
On(x,z)
Clear(x)
Clear(y)
S0->P
x/B, y/A, z/Fl
f(P)->G
Example1: The move operator
S0
G
P:On(x,y)
Clear(x)
Clear(z)
f: move(x,y, z) add: On(x,z), Clear(y)
del: On(x,y), Clear(z)
x/B, y/A, z/Fl
f(P):
On(x,z)
Clear(x)
Clear(y)
S0->P
x/B, y/A, z/Fl
f(P)->G
Clear(F2)+
ABC
S0->G0
S0->G1
pre: On(B, A)
Clear(B)
Clear(Fl)
G1->S1
Move(B, A Fl)
S1->G0
S0: On(B,A)
On(A,C) On(C,F1) Clear(B) Clear(Fl)
G0: On(A, C)
On(C, Fl) On(B, Fl) Clear(A) Clear(B)
Tree representation