1 / 27

Spock Kirk’s real TPN Planner

Spock Kirk’s real TPN Planner. Jonathan Kennell. Traditional Model-based Programming. New Model-based Programming. Mission Planning Spock. Mission Planning Ex. Europa. Scientist. Model-based Executive Kirk. Model-based Executive Ex. Titan. Robot. Planner Requirements. Optimal

ezra
Download Presentation

Spock Kirk’s real TPN Planner

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SpockKirk’s real TPN Planner Jonathan Kennell

  2. Traditional Model-based Programming New Model-based Programming Mission Planning Spock Mission Planning Ex. Europa Scientist Model-based Executive Kirk Model-based Executive Ex. Titan Robot

  3. Planner Requirements • Optimal • Robots are expensive – non-optimal technology cannot be trusted • Flexible Time-bounds • Planners that use an idealized representation of time are not robust when applied to real-world problems • Rich Activity Representation • Vehicle models require expressive language

  4. Existing Technology • Task-decomposition Planners • i.e. SHOP2, present-day Kirk • Not optimal • (don’t actually solve planning problem) • Plan-graph-based Planners • i.e. Graphplan, LPGP • Not optimal over metrics other than makespan • Can’t handle flexible time-bounds • Local-search Planners • i.e. LPG • Not optimal

  5. Our Solution - Spock • Representation - Complete • Based on Temporal Plan Networks • Inherits from • Constraint programming • i.e. TCC, HCC • Simple temporal networks • Supports optimality, temporal flexibility, and rich activities • Algorithm – Work Ongoing • Needs to be fast • Could be a challenge, since optimality and expressiveness usually come at a cost of speed • Needs to be optimal (systematic) • Future work • Incorporate relaxed plan cost heuristic • Use conflicts to focus search • Adapt for solving via SAT-solver (i.e. Blackbox)

  6. The Big Idea… • Plan by building a TPN • The TPN satisfies the control program by adding in primitive activities • Key issues • TPN should be consistent • Should explore systematically

  7. [500,800] s e Tell(PATH1=OK) Tell(PROCEED) [10,10] [0,] 14 15 16 17 [450,450] [200,200] What is a TPN? [0,] [0,] [450,540] 1 2 Group Traverse Group Wait Ask(PATH1=OK) Ask(PROCEED) 4 9 5 10 [405,486] [0,54] Science Target 3 8 13 Group Traverse Group Transmit Ask(PATH2=OK) [0,] 6 7 11 12 [405,486] [0,2]

  8. Enforcing Consistency • Temporal Consistency • Structure based on STN • Use STN temporal consistency checks between iterations • Incremental temporal consistency checker would be useful… thanks I-hsiang

  9. Enforcing Consistency • Symbolic Consistency • Objective • Want to make sure all Asks are supported • Want to make sure no Tells conflict • Solution • Only insert asks when satisfying tell exists • When inserting ask, add ordering arcs that ensure support • Only insert Tells when existing tells do not conflict • Add ordering arcs between mutex tells Inserted Enabled Tell F = true Not Enabled Tell F = false Ask F = true

  10. Enablement • A node is enabledwhen • All predecessors have been inserted • Any Asks that follow this node can be matched with active Tells • Any Tells that follow this node are consistent with the active Tells

  11. Enforcing Systematic Search (A V B V C)… C A B B B A C A C Repeated States

  12. Enforcing Systematic Search (A V B V C)… Not A A That’s Search-tastic! B Not B B Not B C C Not C Not C Not C Not C C C

  13. Spock’s Systematic Search • Same idea… • Each node is either inserted, or “blocked” • “Blocked” nodes can never be inserted via the “blocked” enabling set

  14. Example Problem main start A 0 +INF (:tell A = true) start B 0 +INF B C 0 +INF (:ask B = true) activity 1 start mid1 0 10 (:ask A = true) mid1 mid2 0 0 mid2 end 2 4 (:tell B = true) (:tell A = false) Control Program Tell A = true A [0,+INF] start Ask B = true B C [0,+INF] [0,+INF] Primitive Activity Tell B = true Tell A = false Ask A = true start mid1 mid2 end [0,10] [0,0] [2,4]

  15. Initialization Control Program Tell A = true A start [0,+INF] Ask B = true B C [0,+INF] [0,+INF] Primitive Activity Ask A = true start mid1 [0,10] [0,0] Tell B = true Tell A = false mid2 end [2,4]

  16. Step 1

  17. Step 2

  18. Step 3

  19. Step 4

  20. Step 5

  21. Step 6

  22. Step 7

  23. Step 8

  24. Complete Plan

  25. Rich Activities • Spock’s TPN Control Program and Primitive Activities are super-flexible • PDDL+ Operators can be mapped in their entirety into TPNs Tell B PDDL+: Start preconditions AStart effects BInvariant conditions CInvariant effects DEnd preconditions EEnd effects FDuration G [0,+INF] Tell D Ask E Ask A Ask C [0,0] [0,0] [G,G] Tell F [0,+INF]

  26. Future Work… • Make Fast Algorithm • Incorporate relaxed plan cost heuristic • Use conflicts to focus search • Adapt for solving via SAT-solver (i.e. Blackbox) • Problem… • Detecting symmetry • Detecting no progress

  27. The End

More Related