BLACKBOX A New Approach to the Application of Theorem by sjb12334

VIEWS: 4 PAGES: 22

									BLACKBOX: A New Approach to
  the Application of Theorem
  Proving to Problem Solving

              Bart Selman
            Cornell University



        Joint work with Henry Kautz
                AT&T Labs

                                      1
Planning as (Specialized) Deduction
 Situation calculus (McCarthy & Hayes 1969)
       • Conceptually elegant
 Planning as first-order theorem proving (Green 1969)
       • Computationally infeasible
 STRIPS: A New Approach to the Application of Theorem
  Proving to Problem Solving (Fikes & Nilsson 1971)
       • More efficient, but still poor scaling
 Partial-order planning (Tate 1977, Chapman 1985, McAllester 1991)
       • Planning as specialized implementation of a particular
         theorem - the modal truth criteria
       • Can be more efficient, but still hard (Minton, Bresina, &
         Drummond 1994)
 SATPLAN (Kautz and Selman 1992, 1996)
       • Planning as (simply) propositional reasoning

                                                                     2
                        SATPLAN

 problem       axiom
              schemas             instantiate
description                                               instantiated
                                                         propositional
                                                            clauses

                                                length
                        mapping




                                        satisfying          SAT
    plan        interpret
                                         model            engine(s)




                                                                         3
      What SATPLAN Showed
A general propositional theorem prover can be
 competitive with specialized planning
 (specialized theorem proving) systems
    • Good representations
      – propositional, not first-order
      – can combine expressiveness with good
        computational properties
    • Fast SAT engines
      – stochastic search - walksat
      – large SAT/CSP community sharing ideas and code
         + compare: general CPU's versus Lisp-chip
         + specialized engines can catch up, but by then, new
           general techniques




                                                                4
                     Graphplan
Planning as graph search (Blum & Furst 1995)
      Set new paradigm for planning
Like SATPLAN...
      • Two phases: instantiation of propositional
        structure, followed by search
      • Possible to translate planning graph into CNF
       (Kautz & Selman 1996)
Unlike SATPLAN...
     • Interleaves instantiation and pruning of plan graph
     • Employs specialized search engine
     • Graphplan - better instantiation
     • SATPLAN - better search


                                                             5
           Bridging Paradigms
Both SATPLAN and Graphplan are disjunctive
 planners (Kambhampati 1996)
      avoid splitting - more compact representations,
        faster search
IJCAI Challenge in Bridging Plan Synthesis Paradigms
 (Kambhampati 1997)
     • study tradeoffs between refinement (instantiation)
       and extraction (SAT) techniques
Our response: blackbox
     efficient planning system and highly-
       configurable testbed



                                                            6
         Blackbox Architecture
1. Front end: turn STRIPS input into planning graph
      • interleaves instantiation and pruning (specialized
        limited deduction)
2. Translation to CNF
3. Simplification (general limited deduction)
      • critical for hardest problems
        – unit propagation, failed literal, binary failed literal, ...
4. SAT solvers
     • can schedule series of different solvers: walksat,
       satz, rel_sat, etc.
     • new: randomized systematic solvers (more later)




                                                                         7
        Specialized Inference
SATPLAN was proof of concept that general
 deduction is feasible
When do specialized inference techniques have
 the greatest impact?
Two kinds of specialized deduction
    • Planning specific - graphplan's pruning rules
    • General polytime inference - simplification
      performed after CNF generation
      – apply to all CNF formulas, may or may not be
        designed with planning in mind




                                                       8
               Graph Pruning
Graphplan instantiates in a forward direction,
 pruning nodes with incompatible
 preconditions
    • incomplete
    • pair-wise mutex relations computed by
      incremental constraint propagation
       – (see Kambhampati 1997, Euro CP)

In logical terms: limited application of negative
  binary propagation
     • given:  P V  Q,      P V R V S V ...
     • infer:  Q V R V S V ...


                                                    9
            Translation to CNF

     Pre1              Act1
                                          Fact


     Pre2              Act2




                Fact  Act1 V Act2
                Act1  Pre1 & Pre2
Wff is entailed by original SATPLAN hand
 encodings, but more compact, easier to solve
    • compare with Medic (Weld 1997), which translated
      STRIPS  CNF directly

                                                         10
                Simplification
Generated wff can be further simplified by
 additional consistency propagation techniques
Because is in CNF, can take advantage of many
 fast, powerful simplifiers
Compact (Crawford & Auton 1996)
    • failed literal rule: is Wff + { P } unsat by unit
      propagation?
    • binary failed literal rule: is Wff + { P V Q } unsat by
      unit propagation?
Generally reduces number of variables and
 clauses by 30%



                                                                11
 Randomized Sytematic Solvers
Stochastic local search solvers (walksat)
    •   when they work, scale well
    •   cannot show unsat
    •   fail on some domains
    •   must use very simple (fast) heuristics
Systematic solvers (Davis Putnam)
    •   complete
    •   fail on (often different) domains
    •   might use more sophisticated (costly) heuristics
    •   seem to scale badly
Can we combine best features of each
 approach?

                                                           12
               Heavy Tails
Bad scaling of systematic solvers can be
 caused by heavy tailed distributions
Deterministic algorithms get stuck on particular
 instances
    • but that same instance might be easy for
      a different deterministic algorithm!
Expected (mean) solution time increases
 without limit over large distributions




                                                   13
Heavy Tailed Cost Distribution

                   1
log( 1 - F(x) )




                  0.1
                        1   10   100         1000    10000   100000
                                 log( Backtracks )




                                                                      14
        Randomized Restarts
Solution: randomize the systematic solver
     • Add noise to the heuristic branching
       (variable choice) function
     • Cutoff and restart search after a fixed
       number of backtracks
Eliminates heavy tails
In practice: rapid restarts with low cutoff can
  dramatically improve performance




                                                  15
                               Rapid Restart Speedup

                     1000000
log ( backtracks )




                     100000




                      10000




                       1000
                               1   10   100      1000         10000   100000   1000000
                                              log( cutoff )



                                                                                         16
Blackbox as Experimental Testbed
 All components of blackbox are parameterized

 Can experiment with different schedules for
  instantiating, simplifying, and solving
  problems

     blackbox -solver -maxsec 20 graphplan
        -then compact -l
        -then satz -cutoff 20 -restart 100
        -then walksat -cutoff 1000000 -restart 10




                                                    17
                   Blackbox Results

10000

1000

 100
                                                     Graphplan
                                                     BB-walksat
  10
                                                     BB-rand-sys
                                                     Handcoded-walksat
    1

  0.1

 0.01
   rocket.a rocket.b log.a   log.b   log.c   log.d




                                                                         18
blackbox version 9B
command line: blackbox -o logistics.pddl -f logistics_prob_d_len.pddl
  -solver compact -l -then satz -cutoff 25 -restart 10

----------------------------------------------------
Converting graph to wff
6151 variables
243652 clauses
Invoking simplifier compact
Variables undetermined: 4633
Non-unary clauses output: 139866
----------------------------------------------------
Invoking solver satz version satz-rand-2.1
Wff loaded
[1] begin restart
[1] reached cutoff 25 --- back to root
[2] begin restart
[2] reached cutoff 25 --- back to root
[3] begin restart
[3] reached cutoff 25 --- back to root
[4] begin restart
[4] reached cutoff 25 --- back to root
[5] begin restart
**** the instance is satisfiable *****
**** verification of solution is OK ****

total elapsed seconds = 25.930000
----------------------------------------------------
Begin plan
1 drive-truck_ny-truck_ny-central_ny-po_ny


                                                                        19
Begin plan                                            7 drive-truck_bos-truck_bos-airport_bos-central_bos
1 drive-truck_ny-truck_ny-central_ny-po_ny            7 drive-truck_pgh-truck_pgh-po_pgh-airport_pgh
1 drive-truck_sf-truck_sf-airport_sf-po_sf            7 load-truck_package8_ny-truck_ny-airport
1 load-truck_package5_bos-truck_bos-po                8 drive-truck_sf-truck_sf-central_sf-po_sf
1 drive-truck_pgh-truck_pgh-airport_pgh-central_pgh   8 fly-airplane_airplane2_la-airport_pgh-airport
1 fly-airplane_airplane2_pgh-airport_sf-airport       8 unload-truck_package1_pgh-truck_pgh-airport
1 load-truck_package6_bos-truck_bos-po                8 drive-truck_bos-truck_bos-central_bos-po_bos
2 load-truck_package2_pgh-truck_pgh-central           8 drive-truck_ny-truck_ny-airport_ny-central_ny
2 load-truck_package4_ny-truck_ny-po                  8 fly-airplane_airplane1_bos-airport_la-airport
2 load-truck_package7_ny-truck_ny-po                  8 drive-truck_la-truck_la-po_la-airport_la
2 load-truck_package3_pgh-truck_pgh-central           9 unload-airplane_package7_airplane2_pgh-airport
2 drive-truck_bos-truck_bos-po_bos-airport_bos        9 unload-truck_package8_ny-truck_ny-central
2 load-airplane_package8_airplane2_sf-airport         9 unload-airplane_package5_airplane2_pgh-airport
2 fly-airplane_airplane1_pgh-airport_sf-airport       9 unload-truck_package9_sf-truck_sf-po
2 drive-truck_la-truck_la-po_la-airport_la            9 unload-airplane_package3_airplane1_la-airport
3 fly-airplane_airplane2_sf-airport_bos-airport       9 unload-truck_package6_ny-truck_ny-central
3 unload-truck_package6_bos-truck_bos-airport         9 drive-truck_pgh-truck_pgh-airport_pgh-po_pgh
3 drive-truck_pgh-truck_pgh-central_pgh-airport_pgh   9 load-airplane_package1_airplane2_pgh-airport
3 fly-airplane_airplane1_sf-airport_pgh-airport       10 drive-truck_ny-truck_ny-central_ny-po_ny
3 unload-truck_package5_bos-truck_bos-airport         10 fly-airplane_airplane2_pgh-airport_bos-airport
3 drive-truck_ny-truck_ny-po_ny-airport_ny            10 load-truck_package3_la-truck_la-airport
3 drive-truck_sf-truck_sf-po_sf-airport_sf            10 fly-airplane_airplane1_la-airport_ny-airport
4 unload-truck_package3_pgh-truck_pgh-airport         10 drive-truck_pgh-truck_pgh-po_pgh-airport_pgh
4 unload-truck_package2_pgh-truck_pgh-airport         11 drive-truck_bos-truck_bos-po_bos-airport_bos
4 unload-truck_package4_ny-truck_ny-airport           11 drive-truck_ny-truck_ny-po_ny-airport_ny
4 load-airplane_package6_airplane2_bos-airport        11 unload-airplane_package2_airplane1_ny-airport
4 load-airplane_package5_airplane2_bos-airport        11 drive-truck_la-truck_la-airport_la-central_la
4 drive-truck_la-truck_la-airport_la-po_la            11 drive-truck_sf-truck_sf-po_sf-airport_sf
4 drive-truck_bos-truck_bos-airport_bos-central_bos   11 unload-airplane_package1_airplane2_bos-airport
4 unload-truck_package7_ny-truck_ny-airport           11 load-truck_package7_pgh-truck_pgh-airport
5 drive-truck_ny-truck_ny-airport_ny-po_ny            11 load-truck_package5_pgh-truck_pgh-airport
5 drive-truck_bos-truck_bos-central_bos-po_bos        12 drive-truck_sf-truck_sf-airport_sf-po_sf
5 load-airplane_package2_airplane1_pgh-airport        12 load-truck_package1_bos-truck_bos-airport
5 drive-truck_la-truck_la-po_la-central_la            12 fly-airplane_airplane2_bos-airport_la-airport
5 drive-truck_pgh-truck_pgh-airport_pgh-po_pgh        12 load-truck_package2_ny-truck_ny-airport
5 load-airplane_package3_airplane1_pgh-airport        12 fly-airplane_airplane1_ny-airport_pgh-airport
5 fly-airplane_airplane2_bos-airport_ny-airport       12 drive-truck_pgh-truck_pgh-airport_pgh-po_pgh
6 drive-truck_sf-truck_sf-airport_sf-central_sf       12 unload-truck_package3_la-truck_la-central
6 unload-airplane_package6_airplane2_ny-airport       13 drive-truck_ny-truck_ny-airport_ny-po_ny
6 load-airplane_package4_airplane2_ny-airport         13 load-truck_package3_la-truck_la-central
6 drive-truck_la-truck_la-central_la-po_la            13 load-truck_package9_sf-truck_sf-po
6 drive-truck_bos-truck_bos-po_bos-airport_bos        13 drive-truck_bos-truck_bos-airport_bos-po_bos
6 load-airplane_package7_airplane2_ny-airport         13 unload-truck_package5_pgh-truck_pgh-po
6 drive-truck_ny-truck_ny-po_ny-airport_ny            13 unload-airplane_package4_airplane2_la-airport
6 unload-airplane_package8_airplane2_ny-airport       14 unload-truck_package9_sf-truck_sf-po
6 fly-airplane_airplane1_pgh-airport_sf-airport       14 unload-truck_package1_bos-truck_bos-po
6 load-truck_package1_pgh-truck_pgh-po                14 unload-truck_package7_pgh-truck_pgh-po
7 fly-airplane_airplane2_ny-airport_la-airport        14 unload-truck_package2_ny-truck_ny-po
7 fly-airplane_airplane1_sf-airport_bos-airport       14 unload-truck_package3_la-truck_la-central          20
7 load-truck_package9_sf-truck_sf-central             End plan
7 load-truck_package6_ny-truck_ny-airport
                 Summary
Blackbox combines best features of Graphplan,
 SATPLAN, and new randomized systematic
 search engines
Automatic generation of wffs from standard
 STRIPS input
    • No performance penalty over hand-encodings!
Testbed for bridging different planning
 paradigms




                                                    21
       Current Research Issues
Tradeoffs between planning-specific and more general
  limited inference (simplification) techniques
      • More powerful / general rules than mutex
         computation?
Incorporating explicit domain knowledge (Kautz & Selman, 1998)
      • state invariants
      • optimal conditions
Other front-ends: causal encodings (McAllester, Selman, Kautz
  1996), HTN encodings (Mali & Kambhampati 1998)

Download from
 www.research.att.com/~kautz/blackbox



                                                                 22

								
To top