Presentation is loading. Please wait.

Presentation is loading. Please wait.

A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Jan 28 th My lab was hacked and the systems are being rebuilt.. Homepage is.

Similar presentations


Presentation on theme: "A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Jan 28 th My lab was hacked and the systems are being rebuilt.. Homepage is."— Presentation transcript:

1 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Jan 28 th My lab was hacked and the systems are being rebuilt.. Homepage is up now—but may be down intermittently

2 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Agenda G Action representation –PDDL G Planning strategies –Progression/regression proofs –Progression/regression planning strategies –Causal proof and associated planning algorithm (Sketch) G Heuristics –Set-difference –Planning graph heuristics »Mutex analysis –Using planning graph itself as a basis for planning »SAT/CSP/IP encodings.. G Refinement planning framework to look at them all..

3 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati State-Variable Models GStates are modeled in terms of (binary) state-variables -- Complete initial state, partial goal state GActions are modeled as state transformation functions -- Syntax: ADL language (Pednault) -- Apply(A,S) = (S \ eff(A)) + eff(A) (If Precond(A) hold in S) Load(o 1 ) In(o 1 ) At(o 1,l 1 ), At(R,l 1 ) At(R,E) Fly() At(R,M), ¬At(R,E)  x In(x)  At(x,M) & ¬At(x, E) Unload(o 1 ) In(o 1 ) ¬In(o 1 ) Earth At(A,E), At(B,E),At(R,E) At(A,M),At(B,M) ¬In(A), ¬In(B) Effects Prec. Appolo 13

4 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Blocks world State variables: Ontable(x) On(x,y) Clear(x) hand-empty holding(x) Stack(x,y) Prec: holding(x), clear(y) eff: on(x,y), ~cl(y), ~holding(x), hand-empty Unstack(x,y) Prec: on(x,y),hand-empty,cl(x) eff: holding(x),~clear(x),clear(y),~hand-empty Pickup(x) Prec: hand-empty,clear(x),ontable(x) eff: holding(x),~ontable(x),~hand-empty,~Clear(x) Putdown(x) Prec: holding(x) eff: Ontable(x), hand-empty,clear(x),~holding(x) Initial state: Complete specification of T/F values to state variables --By convention, variables with F values are omitted Goal state: A partial specification of the desired state variable/value combinations Init: Ontable(A),Ontable(B), Clear(A), Clear(B), hand-empty Goal: ~clear(B), hand-empty

5 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Why is this more compact? (than explicit transition systems) G In explicit transition systems actions are represented not as state-to-state transitions where in each action will be represented by an incidence matrix of size |S|x|S| G In state-variable model, actions are represented only in terms of state variables whose values they care about, and whose value they affect. G Consider a state space of 1024 states. It can be represented by log 2 1024=10 state variables. If an action needs variable v1 to be true and makes v7 to be false, it can be represented by just 2 bits (instead of a 1024x1024 matrix) –Of course, if the action has a complicated mapping from states to states, in the worst case the action rep will be just as large –The assumption being made here is that the actions will have effects on a small number of state variables.

6 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Some notes on action representation G STRIPS Assumption: Actions must specify all the state variables whose values they change... G No disjunction allowed in effects –Conditional effects are NOT disjunctive »(antecedent refers to the previous state & consequent refers to the next state) G Quantification is over finite universes –essentially syntactic sugaring G All actions can be compiled down to a canonical representation where preconditions and effects are propositional –Exponential blow-up may occur (e.g removing conditional effects) »We will assume the canonical representation

7 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati PDDL—a standard for representing actions

8 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati PDDL Domains

9 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Problems

10 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Gripper World

11 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Gripper Actions

12 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati

13 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati How do we do planning? G Obvious idea –Think of planning as search in the space of states of the transition graph »Go “forward” in the graph (progression) »Go “backward” in the graph (regression) G More general idea –Think of planning as a search in the space of “partial plans” »Progression corresponds to searching in the space of “prefix” plans »Regression corresponds to searching in the space “suffix” plans »We can also search in the space of “precedence-constrained” plans.. (Plan-space refinement) l “Refinement planning” is my idea of trying to think of all of this from one unified perspective

14 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Checking correctness of a plan: The State-based approaches G Progression Proof: Progress the initial state over the action sequence, and see if the goals are present in the result At(A,E) At(R,E) At(B,E) Load(A) progress Load(B) At(B,E) At(R,E) In(A) At(R,E) In(B) progress G Regression Proof: Regress the goal state over the action sequence, and see if the initial state subsumes the result regress At(A,E) At(R,E) At(B,E) Load(A)Load(B) At(B,E) At(R,E) In(A) In(B) regress Easy to verify Resource Capacity Constraints

15 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Checking correctness of a plan: The Causal Approach G Causal Proof: Check if each of the goals and preconditions of the action are »“established” : There is a preceding step that gives it »“unclobbered”: No possibly intervening step deletes it l Or for every preceding step that deletes it, there exists another step that precedes the conditions and follows the deleter adds it back. Causal proof is –“local” (checks correctness one condition at a time) –“state-less” (does not need to know the states preceding actions) »Easy to extend to durative actions –“incremental” with respect to action insertion »Great for replanning Contd.. Load(B)Load(A) In(A) In(B) At(B,E) At(R,E) At(A,E) At(R,E) At(A,E) At(B,E) At(R,E) In(A) ~At(A,E) In(B) ~At(B,E)

16 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati 1/30 Homework 1—additional questions added and the homework is closed; Due next Tuesday **No office hours today—I dash from class

17 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Operator expressiveness

18 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Partial Order Plan

19 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Progression: An action A can be applied to state S iff the preconditions are satisfied in the current state The resulting state S’ is computed as follows: --every variable that occurs in the actions effects gets the value that the action said it should have --every other variable gets the value it had in the state S where the action is applied Ontable(A) Ontable(B), Clear(A) Clear(B) hand-empty holding(A) ~Clear(A) ~Ontable(A) Ontable(B), Clear(B) ~handempty Pickup(A) Pickup(B) holding(B) ~Clear(B) ~Ontable(B) Ontable(A), Clear(A) ~handempty

20 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Regression: A state S can be regressed over an action A (or A is applied in the backward direction to S) Iff: --There is no variable v such that v is given different values by the effects of A and the state S --There is at least one variable v’ such that v’ is given the same value by the effects of A as well as state S The resulting state S’ is computed as follows: -- every variable that occurs in S, and does not occur in the effects of A will be copied over to S’ with its value as in S -- every variable that occurs in the precondition list of A will be copied over to S’ with the value it has in in the precondition list ~clear(B) hand-empty Putdown(A) Stack(A,B) ~clear(B) holding(A) clear(B) Putdown(B)??

21 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Plan Space Planning: Terminology G Step: a step in the partial plan—which is bound to a specific action G Orderings: s1<s2 s1 must precede s2 G Open Conditions: preconditions of the steps (including goal step) G Causal Link (s1—p—s2): a commitment that the condition p, needed at s2 will be made true by s1 –Requires s1 to “cause” p »Either have an effect p »Or have a conditional effect p which is FORCED to happen l By adding a secondary precondition to S1 G Unsafe Link: (s1—p—s2; s3) if s3 can come between s1 and s2 and undo p (has an effect that deletes p). G Empty Plan: { S:{I,G}; O:{I<G}, OC:{g1@G;g2@G..}, CL:{}; US:{}}

22 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Partial plan representation P = (A,O,L,OC,UL) A: set of action steps in the plan S 0,S 1,S 2 …,S inf O: set of action ordering S i < S j,… L : set of causal links OC: set of open conditions (subgoals remain to be satisfied) UL: set of unsafe links where p is deleted by some action S k p SiSi SjSj p SiSi SjSj S0S0 S1S1 S2S2 S3S3 S inf p ~p g1g1 g2g2 g2g2 oc 1 oc 2 G={g 1,g 2 }I={q 1,q 2 } q1q1 Flaw: Open condition OR unsafe link Solution plan: A partial plan with no remaining flaw Every open condition must be satisfied by some action No unsafe links should exist (i.e. the plan is consistent) POP background

23 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Algorithm 1. Let P be an initial plan 2. Flaw Selection: Choose a flaw f ( either open condition or unsafe link ) 3. Flaw resolution: If f is an open condition, choose an action S that achieves f If f is an unsafe link, choose promotion or demotion Update P Return NULL if no resolution exist 4. If there is no flaw left, return P else go to 2. S0S0 S1S1 S2S2 S3S3 S in f p ~p g1g1 g2g2 g2g2 oc 1 oc 2 q1q1 Choice points Flaw selection (open condition? unsafe link?) Flaw resolution (how to select (rank) partial plan?) Action selection (backtrack point) Unsafe link selection (backtrack point) S0S0 S inf g1g2g1g2 1. Initial plan: 2. Plan refinement (flaw selection and resolution): POP background

24 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Spare Tire Example

25 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Spare Tire Example

26 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Plan-space Planning

27 A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Plan-space planning: Example


Download ppt "A: A Unified Brand-name-Free Introduction to Planning Subbarao Kambhampati Jan 28 th My lab was hacked and the systems are being rebuilt.. Homepage is."

Similar presentations


Ads by Google