Download presentation
Presentation is loading. Please wait.
Published byBridget Thomas Modified over 8 years ago
1
Planning in FOL Systems sequences of actions to achieve goals
2
D Goforth - COSC 4117, fall 20062 Planning Example: Blocks world objects: blocks on a table actions: move blocks ‘on’ one object to ‘on’ another object goals: configurations of blocks plan: sequence of actions to achieve goals T ABC D
3
D Goforth - COSC 4117, fall 20063 Classical Planning - STRIPS STanford Research Institute Problem Solver Closed world assumption facts not in KB are assumed false Predicates in KB must refer to specific objects (no variables, no functions) Goal – conjunction of positive literals No ‘situation calculus’ – current state only
4
D Goforth - COSC 4117, fall 20064 Classical Planning - STRIPS actions: preconditions – predicates that must be in KB effect – some predicates added to KB and some predicates removed (‘negated’) plan – sequence of actions to get goal predicates into KB
5
Blocks world objects: A, B, C, D, T KB: On(A,T)^On(B,T)^On(C,T)^On(D,C) ^Block(A)^Block(B)^Block(C)^Block(D) ^Clear(A) ^Clear(B )^Clear(D) ^Clear(T)* Goal: On(A,B)^On(B,C) T ABC D * Clear(x) means “there is space on x for a block”
6
Blocks world actions: Move(b,x,y) // move b from x to y PRE:On(b,x)^Clear(b)^Clear(y)^Block(b)^Block(y) EFFECT:On(b,x)^Clear(y)^Clear(x)^On(b,y) MoveToTable(b,x) // move b from x to table PRE:On(b,x)^Clear(b) ^Block(b) ^Block(x) EFFECT:On(b,x)^Clear(x)^On(b,T) // remove from KB; add to KB T ABC D
7
D Goforth - COSC 4117, fall 20067 STRIPS requirements need ‘Clear’ because Clear cannot be inferred from the ‘On’ predicates need two Move actions to manage the ‘clear table’ problem unsolved problem: can’t avoid ‘repeated literal’ problem Move(B,C,C)
8
D Goforth - COSC 4117, fall 20068 Planning – state space search current KB is current state applying an action is an edge revised KB is next state from current KB, search for path of actions to state containing goal
9
Blocks world KB: On(A,T)^On(B,T)^On(C,T)^On(D,C) ^Block(A)^Block(B)^Block(C)^Block(D) ^Clear(A)^Clear(B) ^Clear(D) ^Clear(T) T ABC D KB: On(A,D)^On(B,T)^On(C,T)^On(D,C) ^Block(A)^Block(B)^Block(C)^Block(D) ^Clear(A) ^Clear(B) ^Clear(T) T A BC D Move(A,T,D)
10
D Goforth - COSC 4117, fall 200610 Forward search irrelevant action problem: actions that are possible lead to large branching needs good heuristic to be efficient (breaks FOL domain independence)
11
D Goforth - COSC 4117, fall 200611 Backward search actions with goal state as ‘effect’ are ‘regressed’ focus on ‘relevant’ actions avoid actions that undo goal state predicates goal state predicates previous state predicates undo action effects add preconditions
12
Blocks world – preconditions match Goal: On(A,B)^On(B,C) T A B C D On(A,T)^On(B,T)^On(C,T)^On(D,C) ^Block(A)^Block(B)^Block(C)^Block(D) ^Clear(A) ^Clear(B) ^Clear(T) T A BC D Move(A,x,B) {T/x} Preconditions for Move(A,T,B)
13
Blocks world – preconditions not match Goal: On(A,B)^On(B,C) T A B D On(A,T)^On(B,T)^On(C,T)^On(D,C) ^Block(A)^Block(B)^Block(C)^Block(D) ^Clear(A) ^Clear(B)^Clear(D)^Clear(T) T AB C D Move(B,x,C) {T/x} C On(B,T)^ Block(B)^Block(C)^ Clear(C) ^Clear(B) AB DC T MoveToTable(y,C) {D/y}
14
D Goforth - COSC 4117, fall 200614 State space search algorithms heuristics: admissible (don’t overestimate path cost) generic heuristics not domain dependent relaxed problem – reduce preconditions, remove negative effects independent subgoals – achieve goal predicates one at a time: assume one goal does not help or prevent another
15
Blocks world - heuristics Move(b,x,y) PRE:On(b,x)^Clear(b)^Clear(y)^Block(b)^Block(y) EFFECT:On(b,x)^Clear(y)^Clear(x)^On(b,y) MoveToTable(b,x) PRE:On(b,x)^Clear(b)^Block(b) EFFECT:On(b,x)^Clear(x)^On(b,T) For example goal On(A,B) On(B,C): Heuristic “independent subgoals” On(A,B) and On(B,C) simplifies because On(A,B) interferes with On(B,C) Heuristic “relaxed problem” remove preconditions, negatives T ABC D
16
D Goforth - COSC 4117, fall 200616 Partial Order Planning since GPS (General Problem Solver), understood getting the major steps in place first improves planning e.g. car trip including a ferry crossing plans built in mixed order, not just forward or backward
17
D Goforth - COSC 4117, fall 200617 Partial Order Planning in many plans, order of some steps does not matter if parts of goal are independent, does not matter which goal is achieved first T ABCD Goal: On(A,B)^On(C,D)
18
D Goforth - COSC 4117, fall 200618 Partial Order Planning planning takes place in ‘plan space’ of partial plans a partial plan contains: 1.actions, A, B, C,...,Start, Finish 2.ordering constraint between some actions: A must be done before B: A B 3.causal links: A produces a precondition for B: 4.set of unachieved preconditions (empty in final plan)
19
D Goforth - COSC 4117, fall 200619 The empty plan (root of plan search space tree) Action: Start PRE: none EFFECT: start state of space Action: Finish PRE: goal predicates EFFECT: none T A BC D A B D On(A,B) On(B,T) On(D,C) On(C,T) On(A,B) On(B,C) On(C,D) C open{On(B,C),On(C,D)} Start Finish NOTE: some predicates not shown – Clear in KB
20
A partial plan Action: Start PRE: none EFFECT: On(A,B),On(B,T),On(D,C),On(C,T) Action: Finish PRE: On(A,B),On(B,C),On(C,D) EFFECT: none T A BC D A B D C open{On(C,D)} Action: M(B,T,C) PRE: Clear(B),Clear(C) EFFECT: On(B,C) Start M causal On(B,C)
21
A partial plan Action: Start PRE: none EFFECT: On(A,B),On(B,T),On(D,C),On(C,T) Action: Finish PRE: On(A,B),On(B,C),On(C,D) EFFECT: none T A BC D A B D C open{On(A,B),On(C,D)} Action: M(B,T,C) PRE: Clear(B),Clear(C) EFFECT: On(B,C) Action: MT(A,B) PRE: Clear(A) EFFECT: On(A,T),Clear(B)
22
The complete partially ordered plan Action: Start Action: Finish PRE: goal A BC D A B D On(A,B) On(B,T) On(D,C) On(C,T) On(A,B) On(B,C) On(C,D) C Action: MT(A,B)Action: MT(D,C) Action: M(C,T,D) Action: M(B,T,C) Action: M(A,T,B) open{}
23
The total order plans Action: Start Action: Finish PRE: goal Action: MT(A,B) Action: MT(D,C) Action: M(C,T,D) Action: M(B,T,C) Action: M(A,T,B) Action: Start Action: Finish PRE: goal Action: MT(D,C) Action: MT(A,B) Action: M(C,T,D) Action: M(B,T,C) Action: M(A,T,B)
24
D Goforth - COSC 4117, fall 200624 Heuristics for partial order plans size of open precondition set number of unachieved goal predicates overestimates remaining actions if some actions achieve multiple goals underestimates remaining actions if some actions will undo preconditions (e.g. taking A off B)
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.