![Page 1: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/1.jpg)
Planning with Incomplete, Unbounded Information
May 20, 2003
Tal Shaked
![Page 2: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/2.jpg)
Types of Incomplete Information
• Finite set of states (objects, relations)– Uncertain of current state– Realistic?
• Infinite set of states– Many objects and relations (most unknown)– Too large to reason about directly
![Page 3: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/3.jpg)
Example Domains
• Unix/Internet– Puccini and Rodney
• Web– Web services– DAML-S (DAML+OIL)
![Page 4: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/4.jpg)
Topics
• Problems with existing planners– Puccini, PKS
• What is difficult
• LCW review
• Ideas to improve planners
• How PKS works
![Page 5: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/5.jpg)
Two Recent Planners
• PKS (2002)• Petrick and Bacchus• Contingent plans
• Puccini (1998)• Etzioni, Golden, Weld• Internet softbot
![Page 6: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/6.jpg)
Puccini
• Partial-order-planner
• Expressive – SADL
• Interleaves Planning with Execution– Not clear how
• Slow– Required domain-specific knowledge
![Page 7: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/7.jpg)
PKS
• Contingent, forward-chaining planner
• Not Expressive
• Slow
– Constructs a complete, correct plan– Separates plan-time and execution-time effects
– No universal quantification or LCW
– No search control
![Page 8: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/8.jpg)
Some Problems
• Slow– How do we solve these planning problems?– What heuristics can we add?
• Execution model– Are contingent plans practical?– When should actions be executed?
• How can we find structure?
![Page 9: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/9.jpg)
Extending Planning Graph
• What is different?
• Mutexes?
• Scalability?
– LCW– Unlimited sensing, run-time objects/relations– Contingent plans– Interleaved planning and execution
![Page 10: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/10.jpg)
LCW Review
• Why is LCW useful?
• How does it work?
– Avoid repeated sensing– Universal quantification
– Inference– Compression– Lazy evaluation
![Page 11: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/11.jpg)
Querying Ground Conjunction
![Page 12: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/12.jpg)
Querying LCW
How is inference done?
If we know all files in jokes/, then we know if the file giggy is in jokes/
If we know all files in jokes/, and know all dirty jokes, then we know if giggy is dirty and in jokes/
![Page 13: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/13.jpg)
Updating LCW
• Information Gain: A formula that is originally U, becomes T or F– Generally cannot lose LCW
• Information Loss: A formula initially T or F, becomes U– Generally, all LCW “relevant” to that literal are lost
– Know the size of all files in root/. Execute compress root/passwords.txt
![Page 14: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/14.jpg)
Sensing Actions
• Bounded sensing– Set of possible observations
• Unbounded sensing– Generic types and relations
• Consider potential bindings at next level
![Page 15: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/15.jpg)
Finding a Plan
• Search for plans in the graph– Consider one branch at a time
• Heuristics– Reachability
• Amount of sensing to reach a literal
• Depth in planning graph
– Control execution• Agent-centered search?
![Page 16: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/16.jpg)
Scalability
• Mutexes– Same as normal Graphplan– LCW?– Generic types and relations?
• Quick growth due to sensing– Limit to relevant actions– Learn relevance probabilities
![Page 17: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/17.jpg)
Book Trading Example
Predicates:(own ?book)(book_subject ?book ?subject)(at_store ?book ?book_store)
action: trade(?book1 ?book2 ?book_store)precond: ((own ?book1) (at_store ?book2 ?book_store))effect: ((own ?book2) (not (own?book1)))
action: search(?book_store ?subject)precond: ()effect: (forall (!book)
(when (at_store !book ?book_store)(at_store !book ?book_store)(book_subject !book ?subject)))
(LCW((at_store #book ?book_store)(book_subject #book ?subject))
Start: ((own my_book) (book_subject my_book chess))
Goal: ((own ?book)(book_subject ?book go))
![Page 18: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/18.jpg)
Sample Graph
(ow n my_book)
(book_subject my_book chess)
(search amazon go)
(LCW((at_store !b amazon)(book_subject !b go)))
(at_store *b amazon)
(book_subject *b go)
(trade my_book *b amazon)(ow n *b)
(book_subject *b go)
(ow n my_book)
(book_subject my_book chess)
(not (ow n my_book))
(book_subject my_book chess)
(LCW((at_store !b amazon)(book_subject !b go)))
![Page 19: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/19.jpg)
Using the Graph
• Similar Graphplan search
• LPG-like search (local search on graph)
• Propagating sensing action links
• Executing to reach ‘better’ states
• Forward/backward chaining heuristics?
![Page 20: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/20.jpg)
Other Problems
• Agent wants to find a *.pdf file– Try ls
• hope some file exists, possibly a *.pdf file
– latex(paper.tex), dvipdf(paper.dvi)• check for read/write permissions
• How can the agent learn?• Can this be represented in a planning graph?
![Page 21: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/21.jpg)
Knowledge-Based Approach
• Only represent what agent knows
• Actions manipulate knowledge
• Advantages– Compact Representation– Introducing new objects
• Disadvantages?– Unable to distinguish between possible worlds
![Page 22: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/22.jpg)
Modal Logic of Knowledge
• Fancy way of just adding K is true at a particular world w iff it is true
by standard rules
• K() is true at w iff is true at every possible world
can be true, yet the agent may not know
![Page 23: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/23.jpg)
Knowledge Representation
• Databases store agent’s knowledge
• Can be converted to modal logic formulas
• Preconditions as knowledge
• Effects as database modifications
• Goals as knowledge
![Page 24: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/24.jpg)
Databases
• Kf – stores facts like STRIPs
• Kw – agent either knows or negation
– know(this) Kw K(know(this)) v K(¬know(this))
– With variables, can model universal effects– At run time, generates LCW– Construct conditional branches
![Page 25: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/25.jpg)
Databases (continued)
• Kv – function values agent will know
– Plan time just know value will exist– Execution time will know actual value
• Kx – “exclusive or” knowledge
– Exactly one proposition in a set is true
![Page 26: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/26.jpg)
Knowledge State
• Databases are conjunctions of formulas– Limits what the agent can know
• Cannot represent some sets of worlds– w1: P(a), ¬P(b); w2: ¬P(a), P(b)
– {w1, w2} K(P(a) v P(b))
– If a directory contains the file a.out, then it also contains core
![Page 27: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/27.jpg)
Querying Databases
• K() – is known to be true
• K(¬) – is known to be false
• Kw() – is known either true or false
• Kv(t) – is t known to have fixed value
• Negation of the above
• What about LCW?
![Page 28: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/28.jpg)
Planning Problem
• {I, G, A, U}
• I = initial state
• G = goal conditions (primitive queries)
• A = set of actions
• U = domain specific update rules (optional)
![Page 29: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/29.jpg)
Planning AlgorithmPlanPKS
if(goalsSatisfied) return plan
else choose some action, apply it, PlanPKS
or choose some ground instance in Kw
PlanPKS with added to Kf
PlanPKS with ¬ added to Kf
return merged, contingent plan
When does this search terminate?What are some problems and limitations?
![Page 30: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/30.jpg)
Example
Initial State:Kf = {(= (pwd) root), (indir papers root), (indir planner root), (dir root), (dir papers), (dir planner), (file paper_tex)}Kx = {((indir paper_tex planner) | (indir paper_tex papers))}Goal:K(indir paper_tex (pwd))
![Page 31: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/31.jpg)
root
papers planner
Directory Structure
Start: (pwd) = root
Goal: Know paper_tex is in the current directory (pwd)
Exclusive Or: paper_tex is in either papers or planner
Contingent Plan
start
cd-down(papers)
ls(paper_tex, papers)
cd-up(root)
add(Kf, indir(paper_tex, papers)) add(Kf, ¬indir(paper_tex, papers))
cd-down(papers) cd-down(planner)
Is this plan optimal?
What are problems with this representation of plans?
![Page 32: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/32.jpg)
Expressiveness of Goals
• Conditions that hold in final state– No universal quantification
• What about SADL?– Initially?– Restore?– Hands-off?
![Page 33: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/33.jpg)
Reasoning about Conditional Plans
• Conditional plan is a tree– Nodes are knowledge states– Edges are actions
• Each leave corresponds to one branch
• Each branch one linear sequences of worlds
• Reason about each linear sequence– How?
![Page 34: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/34.jpg)
Example
Initial State: bottle of liquid, a healthy lawn
Goal: know whether liquid is poisonous
![Page 35: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/35.jpg)
![Page 36: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/36.jpg)
Inference Procedure
• Consider two consecutive states, s1 and s2, in a linearization and the related action, a newly known in s2 and a does not change , then s1
newly known in s1 and a does not change , then s2
newly known in s1 and a has conditional effect , then s2
– More inferences using similar ideas…
• When can we apply these inferences?– At what points in conditional plans?
• What about initially, restore, hands-off?
![Page 37: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/37.jpg)
Flaws
• Experiments misleading
• Unclear about LCW
• Not clear what is new and important
• More discussion about incompleteness
![Page 38: Planning with Incomplete, Unbounded Information May 20, 2003 Tal Shaked](https://reader030.vdocument.in/reader030/viewer/2022032521/56649d5e5503460f94a3d875/html5/thumbnails/38.jpg)
Future Work
• Heuristic search– Dealing with scalability issues
• Contingent planning with universal quantification
• Further implementation and testing
• Parallel plans
• Probabilistic knowledge