The LPSAT Engine and its Application to Metric Planning - PowerPoint PPT Presentation

About This Presentation
Title:

The LPSAT Engine and its Application to Metric Planning

Description:

The LPSAT Engine and its Application to Metric Planning Steve Wolfman University of Washington CS&E Advisor: Dan Weld – PowerPoint PPT presentation

Number of Views:69
Avg rating:3.0/5.0
Slides: 26
Provided by: SteveW185
Category:

less

Transcript and Presenter's Notes

Title: The LPSAT Engine and its Application to Metric Planning


1
The LPSAT Engine and its Application to Metric
Planning
  • Steve Wolfman
  • University of Washington CSE
  • Advisor Dan Weld

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)
3
Metric Planning
Steve Wolfman Note MAJSAT success
  • 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
    KautzSelman
  • Compile from planning to simple intermediate
    language
  • Solve problems in simple language

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

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 LiPSyNCs translator from
planning to LCNF and the decoder from LCNF
solution to plan.
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
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 McDermotts PDDL
So non-linear OK, so far
(truth assignment and constraint variable values)
8
Sample Metric Planning Domain
Steve Wolfman I will use this as a running
example
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
9
Sample Metric Planning Problem
Mention unsolvable for goals deliver _and_
good-trip
Problem Too-Big initial conditions not
(deliver) not (good-trip) goal
conditions (deliver) (good-trip)
10
LCNF Language
  • CNF formula with triggered constraints
  • Boolean variable triggers one (or no) constraint
  • Constraint triggered iff its trigger variables
    truth assignment is true
  • Truth/real-value assignment is a solution iff
  • CNF formula is satisfied
  • All triggered constraints are satisfied

11
Sample Problem in LCNF
Variable names and, in particular, trigger names
added for clarity
Thats the front end of the system the back end
simply reads off which actions are assigned true
and what the constraint vars values are
CNF formula
Constraint triggers
  • good-trip1
  • deliver1
  • move-truck0 ? max-load
  • move-truck0 ? max-fuel
  • move-truck0 ? min-fuel
  • move-truck0 ? deliver1
  • (move-truck0 ? all-loaded)
  • ? good-trip1
  • ...

max-load load ? 30 max-fuel fuel ?
15 min-fuel fuel ? 7 load/2 all-loaded
load 45 ...
Set aside for later use!
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
13
LPSAT Architecture
new/revoked constraints
input problem
Satisfiability Solver
Linear Programming System
solution
consistency info, real variable values
14
LPSAT Design
  • SAT controller calls LP black box
  • SAT solver based on RelSAT BayardoSchrag
  • Systematic solver
  • Sound and complete
  • Gradual changes to constraint set
  • Learning/backjumping based on conflict sets
  • LP system is Cassowary BadrosBorning
  • supports linear constraints over real variables
  • fast updates to constraint set

Explores all possible truth assignments without
repeating any
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

16
LPSAT Algorithm
Put on other projector
  • Procedure LPSAT(f LCNF problem)
  • If f is satisfied, return YES
  • Else if f is inconsistent, return NO
  • Else if there is a unit clause ? or pure
    literal ? in f, return LPSAT(f?)
  • Else choose a variable ? in f. If LPSAT(f?),
    return YES
  • Else, return LPSAT(f??)

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

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
19
Sample Problem Conflict Sets
fuel
Solution region without load 45 constraint
load ? 30
load 45
fuel ? 15
fuel ? 7load/2
load
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)
21
Conflict Set Discovery Results
The domain is a metric version of Kautz and
Selmans logistics domain. Log-c is difficult in
the original domain even for modern planners
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

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

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

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
Write a Comment
User Comments (0)
About PowerShow.com