210 likes | 261 Views
Automated Planning. Dr. H é ctor Mu ñ oz-Avila. Domain-configurable Planning Domain independent planning algorithm Add domain-specific search control Examples: SHOP TLPlan. What is Planning? Classical Definition. Planning: finding a sequence of actions to achieve a goal.
E N D
Automated Planning Dr. Héctor Muñoz-Avila
Domain-configurable Planning • Domain independent planning algorithm • Add domain-specific search control • Examples: • SHOP • TLPlan What is Planning? Classical Definition • Planning: finding a sequence of actions to achieve a goal • Domain Independent: symbolic descriptions of the problems and the domain. The plan generation algorithm remains the same • Domain Specific: The plan generation algorithm depends on the particular domain Advantage: - opportunity to have clear semantics Disadvantage: - symbolic description requirement Advantage: - can be very efficient Disadvantage: - lack of clear semantics - knowledge-engineering for adaptation
Plan adaptation Classical Assumptions (I) • A0: Finite system • finitely many states,actions, and events • A1: Fully observable • the controller alwaysknows what state is in • A2: Deterministic • each action or event hasonly one possible outcome • A3: Static • No exogenous events: no changes except those performed by the controller
Plan space planning TLPlan HTN planning Classical Assumptions (II) A4: Attainment goals • a set of goal states Sg A5: Sequential plans • a plan is a linearlyordered sequence of actions (a1, a2, … an) A6 :Implicit time • no time durations • linear sequence of instantaneous states A7: Off-line planning • planner doesn’t know the execution status Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/
Plan Representation • Classical representation • Predicates, variables, constants • Most of our systems used it • Set-theoretic representation • Predicates and constants (no variables!) • Useful in algorithms that manipulate ground atoms directly • Used in internal representations: planning graphs (Chapter 6), satisfiability (Chapters 7) • State-variable representation • Keeps track of the value of each variable: loc(truck) = l1
Expressive Power • Any problem that can be represented in one representation can also be represented in the other two • Can convert in linear time and space, except when converting to set-theoretic (where we get an exponential blowup) P(x1,…,xn) becomes fP(x1,…,xn)=1 trivial Set-theoretic representation Classical representation State-variable representation write all of the groundinstances f(x1,…,xn)=y becomes Pf(x1,…,xn,y) Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/
State space • V: set of states • E: set of transitions (s, (s,a)) • But: computed graph is a subset of state space • Search modes: • Forward • Backward • Sussman Anomaly • Generally thought to be slow • But: Fastforward, TLPlan, SHOP are state-space planners • How come? State-Space Planning C A B C A B C B A B A C B C B A B C C A B A C A A B C A A B C B C C B A A B C
Plan space • V: set of plans • E: plan refinement transitions • As before: computed graph is a subset of plan space • Least commitment: • Does not commit on action ordering • Threats • Open conditions • Solves the Sussman anomaly • Also thought to be slow • But: VHPOP Plan-Space Planning Initial plan complete plan for goals
Plan Adaptation • Transformational analogy: transforms an input plan • Derivational analogy: reuses the derivational trace that led to a plan • Therefore requires more knowledge to be provided • Both forms of adaptation have been developed for state-space, plan-space, hierarchical (HTN) planning • All can be subsumed in the Universal Classical Planning framework • Interesting: some authors have proposed using planning graphs during adaptation (is this derivational? Transformational?)
P0 A1 P1 Planning Graphs • Planning graphs encode an inclusive disjunction of actions • Since some actions in a disjunction may interfere with one another (mutex), it keeps track of incompatible propositions • Solution extracted via backward chaining in the planning graph • Must consider mutex • Can improve performance • More crucially: used for defining heuristics (FF,…) B A B C C A Clear(C) On(B, table) On(B, C) On(A, B) On(A,table) Clear(B) On(B, A) Clear(A) On(C,table) Move(B,C,table) A Clear(B) On(B, C) Clear(A) On(A, table) On(C,table) B C Move(A,table,B) Move(B,C,A) B C A
Planning as Satisfiability • Encodes the planning problem as a logical formula • For example: • The initial state is represented as: • Applicability of Actions as: • Davis-Putnam procedure: finds truth assignments that make the formula true • Blackbox: encodes the planning graph rather than the planning problem • Trial and error process
State space • V: set of states • E: set of transitions (s, (s,a)) • (s,G): estimates how far is s from achieving G • This estimate is made by constructing the goal graph… • …on a relaxation of the problem: domain with no negative effects • A greedy strategy is selected (pick the one with highest value) after performing breadth-first search Heuristics in Planning C A B C A B C B A B A C B C B A B C C A B A C A A B C A A B C B C C B A A B C
State space • V: set of states • E: set of transitions (s, (s,a)) • Uses temporal logic to prune potential actions / states • υ (until), □ (always), ◊ (eventually), ○ (next), GOAL • Example rule: “Don’t move container if position is consistent with goal” • Formula progress(Φ,si) is true in si+1 iff Φ is true in si. Search Control Rules in Planning C A B C A B C B A B A C B C B A B C C A B A C A A B C A A B C B C C B A A B C
Reasoning with Time in Planning • Extends search control rules representation as in TLPlan • After all this representation is based on temporal logics • Example: (def-adl-operator (drive ?t ?l ?l’) (pre (?t) (truck ?t) (?l) (loc ?l) (?l’) (loc ?l’) (at ?t ?l)) (del (at ?t ?l)) (delayed-effect (/ (dist ?l ?l’) (speed ?t) (add (at ?t ?l’)))) • It associates a time stamp with every state • Transformations between states with same time stamp are instantaneous • Crucial: each state has an associated event queue (future updates)
Distinguishes between primitive and non-primitive tasks • Primitive tasks: concrete actions (instances of operators) • Compound task: high-level goals (decomposed by methods) • Operators: standard STRIPS knowledge • Methods: domain-configurable constructs Hierarchical Planning Order in which subtasks are fulfilled Non-primitive task method instance precond Non-primitive task primitive task primitive task operator instance operator instance precond effects precond effects s0 s1 s2
Final Summary • Classical Planning • State-space • Plan-Space • Plan adaptation • Neo Classical planning • Planning graphs • Planning as Satisfiability • Heuristics in Planning • Domain-configurable planners • Search control rules • Reasoning with time • Hierarchical Planning • Complexity of Planning