1 / 25

The LPSAT Engine and its Application to Metric Planning

The LPSAT Engine and its Application to Metric Planning. Steve Wolfman University of Washington CS&E Advisor: Dan Weld. Background: Planning Problem. (mappings from preconditions to effects). Given Domain: a set of actions Problem: an initial state and a set of goal states

lsimons
Download Presentation

The LPSAT Engine and its Application to Metric Planning

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. The LPSAT Engine and its Application to Metric Planning Steve Wolfman University of Washington CS&E Advisor: Dan Weld 1

  2. Background: Planning Problem • (mappings from preconditions to effects) • Given • Domain: a set of actions • Problem: an initial state and a set of goal states • Produce a list of actions which leads from the initial state to the goal • Metric planners reason about real-valued variables (usually a partially specified state) 2

  3. Steve Wolfman: Note MAJSAT success Metric Planning • Metric planning • Incorporate metric quantities; e.g. y  2 + x • Important for modeling expendable resources • Fast back end metric solver will help • Shown effective with SAT solvers for planning [Kautz&Selman] • Compile from planning to simple intermediate language • Solve problems in simple language 3

  4. Sample Metric Planning Problem Ship RedVines from one location to another • Fuel used by moving • Maximum fuel level in truck • Maximum load for truck • Limited amount of available RedVines 4

  5. Contributions • Architecture • Intermediate language with metric values • Efficient propositional logic + metric constraints solver • Proof of concept in metric planning domain • System • LCNF intermediate language • LPSAT solver • Metric planning compiler/decoder extended SAT solver to work with metric constraints and Cassowary. Extended Cassowary to discover minimal conflict sets. Designed LCNF language. Designed minimal conflict set discovery technique. Wrote LiPSyNC’s translator from planning to LCNF and the decoder from LCNF solution to plan. 5

  6. Outline input planning language • Motivation • Planning System • LCNF • LPSAT • Experimental Results • Conclusions planning compiler LCNF intermediate language LPSAT solver value assignment planning decoder solution plan 6

  7. Metric Planning Compiler/Decoder • Compiler • inputs planning problems in LPDDL • accepts constraints over operators +, -, *, and  • outputs LCNF problem and mapping tables • Decoder • inputs solution to LCNF problem and mapping tables • outputs plan with instantiated metric values Extension of McDermott’s PDDL So non-linear OK, so far (truth assignment and constraint variable values) 7

  8. Steve Wolfman: I will use this as a running example Sample Metric Planning Domain Action: MOVE-TRUCK(load) preconditions: load 45 ; max. avail. RedVines fuel 7 + load / 2 ; min. required fuel fuel 15 ; fuel capacity load 30 ; load capacity effects: (deliver) if (load = 45) then ; good-trip moves (good-trip) ; all the RedVines 8

  9. Mention unsolvable for goals deliver _and_ good-trip Sample Metric Planning Problem Problem: Too-Big initial conditions: not (deliver) not (good-trip) goal conditions: (deliver) (good-trip) 9

  10. LCNF Language CNF formula with triggered constraints • Boolean variable triggers one (or no) constraint • Constraint triggered iff its trigger variable’s truth assignment is true • Truth/real-value assignment is a solution iff • CNF formula is satisfied • All triggered constraints are satisfied 10

  11. Variable names and, in particular, trigger names added for clarity That’s the front end of the system; the back end simply reads off which actions are assigned true and what the constraint vars values are Sample Problem in LCNF good-trip1 deliver1 move-truck0 max-load move-truck0 max-fuel move-truck0 min-fuel move-truck0 deliver1 (move-truck0 all-loaded)  good-trip1 ... CNF formula Constraint triggers max-load: load 30 max-fuel: fuel  15 min-fuel: fuel  7 + load/2 all-loaded: load = 45 ... Set aside for later use! 11

  12. LPSAT • Inputs LCNF subset • Supports operators +, -, *, and  • Restricts constraints to linear (in)equalities • Outputs truth/real-value assignment or reports failure • Sound • Complete • Satisficing As opposed to optimizing 12

  13. LPSAT Architecture new/revoked constraints input problem Satisfiability Solver Linear Programming System solution consistency info, real variable values 13

  14. LPSAT Design SAT controller calls LP black box • SAT solver based on RelSAT [Bayardo&Schrag] • Systematic solver • Sound and complete • Gradual changes to constraint set • Learning/backjumping based on conflict sets • LP system is Cassowary [Badros&Borning] • supports linear constraints over real variables • fast updates to constraint set Explores all possible truth assignments without repeating any 14

  15. LPSAT Algorithm: Redefinitions Important changes to RelSAT concepts satisfied = statement is empty and active constraint set is consistent inconsistent = clause in statement is empty or active constraint set is inconsistent pure literal = any literal whose negation never appears in statement except positive trigger variables 15

  16. Put on other projector LPSAT Algorithm Procedure LPSAT(φ: LCNF problem) If φ is satisfied, return YES Else if φ is inconsistent, return NO Else if there is a unit clause {} or pure literal in φ, return LPSAT(φ|) Else choose a variable  in φ. If LPSAT(φ|), return YES Else, return LPSAT(φ|) 16

  17. Modifications to RelSAT • Altered to support trigger variables • Constraints tied to variables • Pure literal rule modified • Incorporated constraints in solution • Constraint consistency checked after each add • Real values reported in final solution • Added trigger-aware heuristic function 17

  18. Modifications to Cassowary Support RelSAT learning/backjumping • Global conflict set discovery • Reports entire set of active constraints • Correct but conservative • Minimal conflict set discovery • Set of constraints reported is inconsistent • Every proper subset of the set is consistent • Correct and almost optimal Explain why smaller is better! Minimal, not minimum • Implemented in Cassowary framework • Linear in # of constraints + # of variables • Determines most constraining conflict set 18

  19. Sample Problem Conflict Sets fuel Solution region without load = 45 constraint load 30 load= 45 fuel  15 fuel  7+load/2 load 19

  20. Experimental Results • Tested against Zeno planner • Many times faster than Zeno • Solved problems Zeno could not solve • Tested conflict set discovery techniques • Without learning/backjumping (slow) • With global conflict sets (faster) • With minimal conflict sets (fastest) Under resource bounds (memory) 20

  21. The domain is a metric version of Kautz and Selman’s logistics domain. Log-c is difficult in the original domain even for modern planners Conflict Set Discovery Results 21

  22. Contributions • Created LCNF intermediate language • Implemented LPSAT, an LCNF solver • Solves LCNF with linear constraints • Incorporates new technique for finding conflict sets in incremental Simplex • Implemented a full metric planning system • Compiler translates metric planning to LCNF • Decoder translates LCNF solutions to plans 22

  23. Conclusions • Enhanced satisfiability solvers are effective for solving metric planning problems • Effective heuristics for combined solution processes must use information from both processes • The translate/solve/decode architecture of SAT-based planning can be profitably extended to more complex solvers 23

  24. Future Work: Compiler/Decoder • Optimize current compiler • Speed • Encoding quality • Use metric IPP [Koehler] to compile metric planning problems to LCNF • Compiler/decoders for new domains • Scheduling • Temporal planning • Analog circuit verification 24

  25. Future Work: LPSAT/LCNF • Implement LPSAT with a stochastic SAT solver • Decompose nonlinearities in LCNF • Construct an LCNF solver with native support for nonlinear constraints • Investigate other combinations of solution processes 25

More Related