Flexible Planning Ian Miguel AI Group Department of Computer Science University of York
AI Planning <ul><li>Plan : Course of action to achieve pre-specified goals. </li></ul><ul><li>Components of a planning pro...
Example – Initial State <ul><li>Goals: </li></ul><ul><ul><li>Both packages to  c 4 . </li></ul></ul><ul><ul><li>Guard to  ...
Example - Operators <ul><li>Load-truck  (guard present if pkg valuable). </li></ul><ul><li>Unload-truck  (guard present if...
Example – Solution <ul><li>Drive-truck   c 1  to  c 2  via  r 1 . </li></ul><ul><li>Load-truck   pkg 2 . Guard-boards-vehi...
Example - Solution <ul><li>Drive-truck   c 1  to  c 2  via  r 1 . </li></ul><ul><li>Load-truck   pkg 2 . </li></ul>c 1 c 2...
Example - Solution <ul><li>Drive-truck   c 1  to  c 2  via  r 1 . </li></ul><ul><li>Drive-truck   c 2  to  c 3  via  r 2 ....
Example - Solution <ul><li>Drive-truck   c 4  to  c 3  via  r 3 . </li></ul><ul><li>Guard-leaves-vehicle   truck . </li></...
Solving Planning Problems <ul><li>Many and varied approaches (see [Weld99]). </li></ul><ul><li>Focus here on  Graphplan  [...
The Planning Graph <ul><li>Divided into  levels  (equivalent to a step). </li></ul><ul><ul><li>Each contains  action  and ...
Mutual Exclusion Constraints <ul><li>Record that a pair of actions or propositions cannot occur together in this level of ...
Mutual Exclusion Constraints <ul><li>Exclusive  actions : </li></ul><ul><ul><li>Inconsistent effects: </li></ul></ul><ul><...
Mutual Exclusion Constraints <ul><li>Exclusive  propositions : </li></ul><ul><ul><li>Negation: </li></ul></ul><ul><ul><ul>...
Finding a Valid Plan <ul><li>Search for a consistent sub-graph connecting goal propositions and initial conditions. </li><...
The Constraint Satisfaction Problem <ul><li>Given: </li></ul><ul><ul><li>A finite set of  variables . </li></ul></ul><ul><...
The CSP Viewpoint <ul><li>Variables : proposition nodes. </li></ul><ul><li>Domains : actions who assert these propositions...
Memoisation <ul><li>Goal: Solve as few sub-problems as possible. </li></ul><ul><li>Generate  memosets  from unsolvable sub...
Memoset Propagation <ul><li>Memosets are propagated forwards. </li></ul><ul><li>If parent sub-problem has no child leading...
A Weakness of Classical Planning <ul><li>Inability to  compromise : </li></ul><ul><ul><li>All goals must be satisfied. </l...
Flexible Planning Problems <ul><li>Incorporate  preferences  into operators and goals. </li></ul><ul><li>Describe both as ...
Truth Degree <ul><li>From a scale,  K . Endpoints indicate total truth/falsehood. </li></ul><ul><li>Attached to each propo...
Flexible Plan Quality <ul><li>Plan satisfaction degree is combination of all action/goal satisfaction degrees. </li></ul><...
Flexible Example <ul><li>Flexible goals: </li></ul><ul><ul><li>Both packages to  c 4 . </li></ul></ul><ul><ul><ul><li>pkg ...
Flexible Example <ul><li>Operators: </li></ul><ul><ul><li>Drive-truck . </li></ul></ul><ul><ul><ul><li>Avoid mountains or:...
Flexible Planning Graph <ul><li>Actions annotated with their satisfaction degrees. </li></ul><ul><li>CSP variable domains ...
Finding Valid Flexible Plans: Flexible Graphplan <ul><li>Same basic process. </li></ul><ul><li>Sub-problems are now  fuzzy...
Short Compromise Plan <ul><li>Load-truck   pkg 1   truck   l 2 . </li></ul><ul><li>Drive-truck   truck   c 1  to  c 2  via...
Longer Plan, Fewer Compromises <ul><li>Load-truck   pkg 1   truck   l 2 . </li></ul><ul><li>Drive-truck   truck   c 1  to ...
Limited Graph Expansion <ul><li>A plan with satisfaction degree  l   has been found. </li></ul><ul><li>Because of  min  a...
Satisfaction Degree Propagation <ul><li>Action2 has single precondition, effect of Action1. </li></ul><ul><li>Only way to ...
Satisfaction Degree Propagation <ul><li>Stage 1: </li></ul><ul><ul><li>Label proposition nodes with max sat degree of thos...
Satisfaction Degree Propagation <ul><li>Stage 2: </li></ul><ul><ul><li>Action satisfaction degree = Min(own sat degree,   ...
Results: FGP vs Boolean Solving <ul><li>Short compromise plans can often be found very quickly. </li></ul>
Utility of Limited Graph Expansion/Satisfaction Propagation <ul><li>Limited Graph Expansion, Satisfaction Propagation are ...
Flexible Graphplan: Observations <ul><li>It is more expensive to search for a range of plans than for one compromise-free ...
Drowning and Leximin Ordering <ul><li>Low satisfaction degree from one action: </li></ul><ul><ul><li>Drowns  the others be...
Solution (Leximin) <ul><li>Load-truck   pkg 1   truck   l 2 . </li></ul><ul><li>Drive-truck  truck  c 1  to  c 2  via  r 1...
Finding Leximin-optimal Plans: Leximin FGP <ul><li>Again, same basic search process. </li></ul><ul><li>Sub-problems are no...
Enhancements <ul><li>Limited graph expansion works in the same way. </li></ul><ul><li>Must now propagate satisfaction degr...
Satisfaction Degree Vector Propagation <ul><li>Stage 2: </li></ul><ul><ul><li>Action satisfaction degree vector combines s...
Removing Duplicates <ul><li>Not  correct: { l 1 ,  l 1 ,  l 3 } </li></ul><ul><ul><li>Only one instance of  l 1  is guaran...
Results: BBFGP vs. LFGP <ul><li>More compromise plans found effectively. </li></ul>
Results: BBFGP vs. LFGP <ul><li>Effectiveness of satisfaction vector propagation problem-dependent. </li></ul>
Results: BBFGP vs. LFGP <ul><li>Larger  |L|  can mean many possible compromises. </li></ul>
Results: Flexible Logistics <ul><li>Explains time difference. </li></ul><ul><ul><li>LFGP* in particular is solving many mo...
Utility of Satisfaction Degree Vector Propagation <ul><li>Never degrades performance. </li></ul><ul><ul><li>Overhead of pr...
Leximin FGP: Observations <ul><li>More costly than FGP (efficiency is being improved). </li></ul><ul><li>But, effectively ...
Conclusions <ul><li>Flexible planning overcomes the inability to compromise in classical AI planning. </li></ul><ul><li>Fl...
Related Work <ul><li>Conformant Planning: </li></ul><ul><ul><li>Knowledge about possible initial states, and possible outc...
Future Work <ul><li>Reasoning about: </li></ul><ul><ul><li>Time. </li></ul></ul><ul><ul><li>Resources. </li></ul></ul><ul>...
Acknowledgements <ul><li>Qiang Shen, University of Edinburgh. </li></ul><ul><li>Peter Jarvis, SRI International. </li></ul>
Resources <ul><li>www-users.cs.york.ac.uk/~ianm/FlexiblePlanning.html </li></ul><ul><ul><li>FGP, LFGP. </li></ul></ul><ul>...
Upcoming SlideShare
Loading in...5
×

Huddersfield

195

Published on

Huddersfield

Published in: Education, Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
195
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Transcript of "Huddersfield"

    1. 1. Flexible Planning Ian Miguel AI Group Department of Computer Science University of York
    2. 2. AI Planning <ul><li>Plan : Course of action to achieve pre-specified goals. </li></ul><ul><li>Components of a planning problem: </li></ul><ul><ul><li>Plan objects. </li></ul></ul><ul><ul><li>Initial state. </li></ul></ul><ul><ul><li>Goal state. </li></ul></ul><ul><ul><li>Operators. </li></ul></ul>
    3. 3. Example – Initial State <ul><li>Goals: </li></ul><ul><ul><li>Both packages to c 4 . </li></ul></ul><ul><ul><li>Guard to c 3 . </li></ul></ul><ul><li>pkg 1 is valuable. </li></ul><ul><li>pkg 2 is not. </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1 <ul><li>c i : Cities. </li></ul><ul><li>r i : Major roads. </li></ul><ul><li>m i : Mountainous roads. </li></ul>
    4. 4. Example - Operators <ul><li>Load-truck (guard present if pkg valuable). </li></ul><ul><li>Unload-truck (guard present if pkg valuable). </li></ul><ul><li>Guard-boards-vehicle . </li></ul><ul><li>Guard-leaves-vehicle . </li></ul><ul><li>Drive-truck (main roads only). </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1
    5. 5. Example – Solution <ul><li>Drive-truck c 1 to c 2 via r 1 . </li></ul><ul><li>Load-truck pkg 2 . Guard-boards-vehicle truck . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1
    6. 6. Example - Solution <ul><li>Drive-truck c 1 to c 2 via r 1 . </li></ul><ul><li>Load-truck pkg 2 . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1
    7. 7. Example - Solution <ul><li>Drive-truck c 1 to c 2 via r 1 . </li></ul><ul><li>Drive-truck c 2 to c 3 via r 2 . </li></ul><ul><li>Drive-truck c 3 to c 4 via r 1 . </li></ul><ul><li>Unload-truck pkg 1 . Unload-truck pkg 2 . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1
    8. 8. Example - Solution <ul><li>Drive-truck c 4 to c 3 via r 3 . </li></ul><ul><li>Guard-leaves-vehicle truck . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 guard 1 pkg 1 pkg 2
    9. 9. Solving Planning Problems <ul><li>Many and varied approaches (see [Weld99]). </li></ul><ul><li>Focus here on Graphplan [Blum, Furst 97]. </li></ul><ul><ul><li>Sound/complete. </li></ul></ul><ul><ul><li>Optimal in the number of actions/length of plan. </li></ul></ul><ul><ul><li>Constructs a planning graph , of which a valid plan is a sub-graph. </li></ul></ul><ul><ul><li>Easy to translate the search for a consistent sub-graph into a constraint satisfaction problem. </li></ul></ul>
    10. 10. The Planning Graph <ul><li>Divided into levels (equivalent to a step). </li></ul><ul><ul><li>Each contains action and proposition nodes. </li></ul></ul><ul><ul><li>Level 0 contains propositions that capture the initial problem state. </li></ul></ul><ul><ul><li>Graph extended by instantiating operators whose preconditions met by propositions in previous level. </li></ul></ul>Initial Conditions Actions 1 Propositions 1 . . . . . . . . . Goals
    11. 11. Mutual Exclusion Constraints <ul><li>Record that a pair of actions or propositions cannot occur together in this level of a valid plan. </li></ul><ul><li>Restricts the set of sub-graphs that must be considered. </li></ul>
    12. 12. Mutual Exclusion Constraints <ul><li>Exclusive actions : </li></ul><ul><ul><li>Inconsistent effects: </li></ul></ul><ul><ul><ul><li>Drive-truck c 1 to c 2 vs. Drive-truck c 2 to c 3 . </li></ul></ul></ul><ul><ul><ul><li>1 st action: truck at c 2 . 2 nd action: truck not at c 2 . </li></ul></ul></ul><ul><ul><li>Interference: </li></ul></ul><ul><ul><ul><li>Between an effect and a precondition. </li></ul></ul></ul><ul><ul><ul><li>Drive-truck c 1 to c 2 vs. Load-truck at c 1 . </li></ul></ul></ul><ul><ul><ul><li>Truck no longer at c 1 after 1 st action. </li></ul></ul></ul><ul><ul><li>Competing needs: </li></ul></ul><ul><ul><ul><li>Between preconditions. </li></ul></ul></ul><ul><ul><ul><li>Drive-truck c 1 to c 3 vs. Guard-boards-truck at c 2 . </li></ul></ul></ul><ul><ul><ul><li>Truck cannot be at c 1 and c 2 at the same time. </li></ul></ul></ul>
    13. 13. Mutual Exclusion Constraints <ul><li>Exclusive propositions : </li></ul><ul><ul><li>Negation: </li></ul></ul><ul><ul><ul><li>Truck at c 2 vs. ¬ (Truck at c 2 ). </li></ul></ul></ul><ul><ul><li>Inconsistent Support. </li></ul></ul><ul><ul><ul><li>Every way of supporting proposition a is exclusive of every way of supporting proposition b . </li></ul></ul></ul>a b
    14. 14. Finding a Valid Plan <ul><li>Search for a consistent sub-graph connecting goal propositions and initial conditions. </li></ul><ul><li>If no such sub-graph, expand planning graph by one level and try again. </li></ul><ul><li>Approaches: </li></ul><ul><ul><li>Translate into a propositional satisfiability (SAT) problem, use a specialised SAT solver. </li></ul></ul><ul><ul><li>Translate into a constraint satisfaction problem </li></ul></ul><ul><ul><ul><li>Either one large problem, or connected sub-problems. </li></ul></ul></ul>
    15. 15. The Constraint Satisfaction Problem <ul><li>Given: </li></ul><ul><ul><li>A finite set of variables . </li></ul></ul><ul><ul><li>Each variable has an associated finite domain of potential values. </li></ul></ul><ul><ul><li>A set of constraints over these variables. </li></ul></ul><ul><li>Find: </li></ul><ul><ul><li>A complete assignment of values to variables that satisfies all constraints. </li></ul></ul>Specify allowed combinations of assignments of values to variables.
    16. 16. The CSP Viewpoint <ul><li>Variables : proposition nodes. </li></ul><ul><li>Domains : actions who assert these propositions as effects. </li></ul><ul><li>Each sub-problem is a small CSP. </li></ul><ul><li>Goals, and their domains form a first sub-problem. </li></ul><ul><li>Action pre-conditions specify new sub-problems… </li></ul>Goal Sub-problem
    17. 17. Memoisation <ul><li>Goal: Solve as few sub-problems as possible. </li></ul><ul><li>Generate memosets from unsolvable sub-problems. </li></ul><ul><ul><li>New sets of mutually exclusive propositions. </li></ul></ul><ul><ul><li>If a memoset matches the propositions of a sub-problem, prune the search branch immediately. </li></ul></ul>Goal Sub-problem
    18. 18. Memoset Propagation <ul><li>Memosets are propagated forwards. </li></ul><ul><li>If parent sub-problem has no child leading to a solution, propagated information used to create a memoset for it. </li></ul>Goal Sub-problem
    19. 19. A Weakness of Classical Planning <ul><li>Inability to compromise : </li></ul><ul><ul><li>All goals must be satisfied. </li></ul></ul><ul><ul><li>Applicability of an operator in a particular situation is Boolean. </li></ul></ul><ul><li>Solution: </li></ul><ul><ul><li>Introduce flexibility into planning. </li></ul></ul><ul><ul><li>Support compromise . </li></ul></ul>
    20. 20. Flexible Planning Problems <ul><li>Incorporate preferences into operators and goals. </li></ul><ul><li>Describe both as fuzzy relations . </li></ul><ul><ul><li>Map from precondition combinations onto L , a totally ordered satisfaction scale. </li></ul></ul><ul><li>Load-truck </li></ul><ul><ul><li>Truck and (valuable) package in same place: l 1 </li></ul></ul><ul><ul><li>Guard also present: l 2 </li></ul></ul><ul><li>Can relax some preconditions with associated damage to the satisfaction degree of resultant plan. </li></ul>
    21. 21. Truth Degree <ul><li>From a scale, K . Endpoints indicate total truth/falsehood. </li></ul><ul><li>Attached to each proposition. </li></ul><ul><li>For example, can express how valuable a package is: </li></ul><ul><ul><li>valuable pkg a k  . Equivalent to ¬ (valuable pkg a ). </li></ul></ul><ul><ul><li>valuable pkg b k  , valuable pkg b k  … </li></ul></ul><ul><li>Operators and goals can identify ranges of acceptable truth degrees in their preconditions. </li></ul>
    22. 22. Flexible Plan Quality <ul><li>Plan satisfaction degree is combination of all action/goal satisfaction degrees. </li></ul><ul><ul><li>Via min . </li></ul></ul><ul><li>Plan quality: </li></ul><ul><ul><li>Length combined with plan satisfaction degree </li></ul></ul><ul><ul><li>With same satisfaction, shorter preferred. </li></ul></ul><ul><li>Trade length of plan against number and severity of compromises made. </li></ul>
    23. 23. Flexible Example <ul><li>Flexible goals: </li></ul><ul><ul><li>Both packages to c 4 . </li></ul></ul><ul><ul><ul><li>pkg 2 is worth less, don’t deliver: l 1 </li></ul></ul></ul><ul><ul><li>Guard to c 3 . </li></ul></ul><ul><ul><ul><li>Can also leave guard at c 2 or c 4 : l 2 </li></ul></ul></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1 L={l  , l 1 , l 2 , l T }
    24. 24. Flexible Example <ul><li>Operators: </li></ul><ul><ul><li>Drive-truck . </li></ul></ul><ul><ul><ul><li>Avoid mountains or: l 1 </li></ul></ul></ul><ul><ul><li>Load/Unload-truck . </li></ul></ul><ul><ul><ul><li>For valuable package, guard present or: l 2 </li></ul></ul></ul><ul><ul><li>Guard-boards/leaves-truck . </li></ul></ul>c 1 c 2 c 4 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1 L={l  , l 1 , l 2 , l T }
    25. 25. Flexible Planning Graph <ul><li>Actions annotated with their satisfaction degrees. </li></ul><ul><li>CSP variable domains expressed as unary fuzzy constraints. </li></ul><ul><ul><li>Prefer to assign an element with l  , then l T-1 , … </li></ul></ul>Actions 1 Propositions 1 . . . . . . . . . l 2 l 3 l 1
    26. 26. Finding Valid Flexible Plans: Flexible Graphplan <ul><li>Same basic process. </li></ul><ul><li>Sub-problems are now fuzzy CSPs. </li></ul><ul><li>Overall search is branch and bound : </li></ul><ul><ul><li>Find a plan with higher satisfaction degree than highest currently known. </li></ul></ul>Goal Sub-problem
    27. 27. Short Compromise Plan <ul><li>Load-truck pkg 1 truck l 2 . </li></ul><ul><li>Drive-truck truck c 1 to c 2 via r 1 l T . </li></ul><ul><li>Drive-truck truck c 2 to c 4 via m 2 l 1 . </li></ul><ul><li>Unload-truck pkg 1 truck l 2 . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1 L={l  , l 1 , l 2 , l T } 4-steps ( l 1 )
    28. 28. Longer Plan, Fewer Compromises <ul><li>Load-truck pkg 1 truck l 2 . </li></ul><ul><li>Drive-truck truck c 1 to c 2 via r 1 l T . </li></ul><ul><li>Load-truck pkg 2 truck l T . </li></ul><ul><li>Drive-truck truck c 2 to c 3 via r 2 l T . </li></ul><ul><li>Drive-truck truck c 3 to c 4 via r 3 l T . </li></ul><ul><li>Unload-truck pkg 1 truck l 2 , pkg 2 truck l T . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1 L={l  , l 1 , l 2 , l T } 6-steps ( l 2 )
    29. 29. Limited Graph Expansion <ul><li>A plan with satisfaction degree l  has been found. </li></ul><ul><li>Because of min aggregation: </li></ul><ul><ul><li>A plan with a higher satisfaction degree than l  cannot contain any action with satisfaction degree  l  . </li></ul></ul><ul><li>When expanding graph do not add actions with satisfaction degrees  l  . </li></ul><ul><li>Effect: </li></ul><ul><ul><li>Reduce size of planning graph/sub-problems. </li></ul></ul>
    30. 30. Satisfaction Degree Propagation <ul><li>Action2 has single precondition, effect of Action1. </li></ul><ul><li>Only way to support selection of Action2 at level a+1 is by also selecting Action1 at level a . </li></ul><ul><li>If known when solving sub-problem at level a+1 , can possibly prune branch earlier. </li></ul><ul><li>So propagate sat degrees forwards as graph expanded. </li></ul>l 1 Action1 Action2 Level a Level a+1
    31. 31. Satisfaction Degree Propagation <ul><li>Stage 1: </li></ul><ul><ul><li>Label proposition nodes with max sat degree of those attached to all actions that assert it as an effect. </li></ul></ul>l 1 Action1 Action3 Level a Level a+1 l 2 l 2
    32. 32. Satisfaction Degree Propagation <ul><li>Stage 2: </li></ul><ul><ul><li>Action satisfaction degree = Min(own sat degree, min(sat degrees attached to each precondition)). </li></ul></ul>l 1 Action1 Action3 Level a Level a+1 l 2 l 2 l 2
    33. 33. Results: FGP vs Boolean Solving <ul><li>Short compromise plans can often be found very quickly. </li></ul>
    34. 34. Utility of Limited Graph Expansion/Satisfaction Propagation <ul><li>Limited Graph Expansion, Satisfaction Propagation are Complementary. </li></ul>
    35. 35. Flexible Graphplan: Observations <ul><li>It is more expensive to search for a range of plans than for one compromise-free plan. </li></ul><ul><li>But it is often possible to find short, compromise plans quickly. </li></ul><ul><ul><li>Supports anytime behaviour. </li></ul></ul><ul><li>Range of plans trade length versus number and severity of the compromises made. </li></ul>
    36. 36. Drowning and Leximin Ordering <ul><li>Low satisfaction degree from one action: </li></ul><ul><ul><li>Drowns the others because of min aggregation. </li></ul></ul><ul><li>Leximin ordering: </li></ul><ul><ul><li>Sort satisfaction degree vector associated with a solution. </li></ul></ul><ul><ul><li>Compare lexicographically : </li></ul></ul><ul><ul><li>{ l 2 , l 3 , l 3 } > lex { l 2 , l 2 , l 3 } </li></ul></ul><ul><li>Find compromise plans that min based search misses. </li></ul>
    37. 37. Solution (Leximin) <ul><li>Load-truck pkg 1 truck l 2 . </li></ul><ul><li>Drive-truck truck c 1 to c 2 via r 1 l T . </li></ul><ul><li>Load-truck pkg 2 truck l T . </li></ul><ul><li>Drive-truck truck c 2 to c 4 via m 2 l 1 . </li></ul><ul><li>Unload-truck pkg 1 truck l 2 , pkg 2 truck l T . </li></ul>c 1 c 2 c 4 c 3 r 1 r 2 r 3 m 1 m 2 pkg 1 pkg 2 guard 1 L={l  , l 1 , l 2 , l T } 5-steps ( l 1 , l 2 , l 2 , l 2 ) Also finds 2 more plans that FGP misses.
    38. 38. Finding Leximin-optimal Plans: Leximin FGP <ul><li>Again, same basic search process. </li></ul><ul><li>Sub-problems are now leximin fuzzy CSPs. </li></ul><ul><li>Overall search is branch and bound : </li></ul><ul><ul><li>Find a plan with higher satisfaction degree vector than highest currently known. </li></ul></ul>Goal Sub-problem
    39. 39. Enhancements <ul><li>Limited graph expansion works in the same way. </li></ul><ul><li>Must now propagate satisfaction degree vectors. </li></ul><ul><li>Stage 1: </li></ul><ul><ul><li>Label proposition nodes with max sat degree vector of those attached to all actions that assert it as an effect. </li></ul></ul>{ l 1 , l 2 } Action1 Action3 Level a Level a+1 { l 2 , l 3 } { l 2 , l 3 } { l 1 }
    40. 40. Satisfaction Degree Vector Propagation <ul><li>Stage 2: </li></ul><ul><ul><li>Action satisfaction degree vector combines satisfaction degree of this action, and </li></ul></ul><ul><ul><li>Satisfaction degree vectors of each precondition proposition. </li></ul></ul>{ l 1 , l 2 } Action1 Action3 Level a Level a+1 { l 2 , l 3 } { l 2 , l 3 } { l 1 , l 2 , l 3 } Action2
    41. 41. Removing Duplicates <ul><li>Not correct: { l 1 , l 1 , l 3 } </li></ul><ul><ul><li>Only one instance of l 1 is guaranteed by selecting Action2. </li></ul></ul><ul><li>Solution: make satisfaction degrees unique. </li></ul><ul><ul><li>Composite objects referring to the action that created them. </li></ul></ul><ul><ul><li>Simple matter to remove duplicates. </li></ul></ul>{ l 1 } Action1 Action2 Level a Level a+1 {?, l 3 } { l 1 } { l 1 }
    42. 42. Results: BBFGP vs. LFGP <ul><li>More compromise plans found effectively. </li></ul>
    43. 43. Results: BBFGP vs. LFGP <ul><li>Effectiveness of satisfaction vector propagation problem-dependent. </li></ul>
    44. 44. Results: BBFGP vs. LFGP <ul><li>Larger |L| can mean many possible compromises. </li></ul>
    45. 45. Results: Flexible Logistics <ul><li>Explains time difference. </li></ul><ul><ul><li>LFGP* in particular is solving many more sub-problems. </li></ul></ul>
    46. 46. Utility of Satisfaction Degree Vector Propagation <ul><li>Never degrades performance. </li></ul><ul><ul><li>Overhead of propagation and duplicate removal is compensated for by performance gain. </li></ul></ul><ul><li>Sometimes hugely improves performance: </li></ul><ul><ul><li>17 times is best result so far. </li></ul></ul><ul><ul><li>Propagation allows branches of search to be pruned much earlier. </li></ul></ul>
    47. 47. Leximin FGP: Observations <ul><li>More costly than FGP (efficiency is being improved). </li></ul><ul><li>But, effectively produces a greater range of compromise solutions. </li></ul><ul><li>Removes drowning. </li></ul><ul><li>Not limited by size of L . </li></ul><ul><ul><li>In min version, can only be one plan of sat degree l 1 , one of sat degree l 2 … </li></ul></ul>
    48. 48. Conclusions <ul><li>Flexible planning overcomes the inability to compromise in classical AI planning. </li></ul><ul><li>Flexible planners produce a range of solutions from a given input problem from which the user can select. </li></ul><ul><ul><li>Trade length versus compromises made. </li></ul></ul><ul><li>FGP and LFGP planners effectively solve these problems using hierarchical decomposition of the planning graph. </li></ul>
    49. 49. Related Work <ul><li>Conformant Planning: </li></ul><ul><ul><li>Knowledge about possible initial states, and possible outcomes of each action. </li></ul></ul><ul><li>Contingent Planning: </li></ul><ul><ul><li>Sensing actions to detect the state of the world during execution. </li></ul></ul><ul><li>Numerically weighted constraints: </li></ul><ul><ul><li>Quantitative means of differentiating plans. </li></ul></ul><ul><li>Pyrrhus: </li></ul><ul><ul><li>Replaces goal formulae with utility models. </li></ul></ul><ul><ul><li>Does not associate utilities with individual actions. </li></ul></ul>
    50. 50. Future Work <ul><li>Reasoning about: </li></ul><ul><ul><li>Time. </li></ul></ul><ul><ul><li>Resources. </li></ul></ul><ul><ul><ul><li>Truth degrees go some way towards this. </li></ul></ul></ul><ul><li>Further efficiency improvements: </li></ul><ul><ul><li>Improve quality of memoisation. </li></ul></ul><ul><ul><li>Smaller memosets are better. </li></ul></ul>
    51. 51. Acknowledgements <ul><li>Qiang Shen, University of Edinburgh. </li></ul><ul><li>Peter Jarvis, SRI International. </li></ul>
    52. 52. Resources <ul><li>www-users.cs.york.ac.uk/~ianm/FlexiblePlanning.html </li></ul><ul><ul><li>FGP, LFGP. </li></ul></ul><ul><ul><li>Example problems. </li></ul></ul><ul><ul><li>References. </li></ul></ul>

    ×