1 BLACKBOX: A New Approach to the Application of Theorem Proving to Problem Solving Bart Selman...

Preview:

Citation preview

1

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

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

Bart SelmanCornell University

Joint work with Henry Kautz

AT&T Labs

2

Planning as (Specialized) DeductionPlanning 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

3

SATPLANSATPLAN

axiomschemas instantiated

propositionalclauses

satisfyingmodelplan

mapping

length

problemdescription

SATengine(s)

instantiate

interpret

4

What SATPLAN ShowedWhat 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

5

GraphplanGraphplan

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

6

Bridging ParadigmsBridging 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

7

Blackbox ArchitectureBlackbox 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)

8

Specialized InferenceSpecialized 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

9

Graph PruningGraph 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 ...

10

Translation to CNFTranslation to CNF

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

Act1

Act2

Fact

Pre1

Pre2

11

SimplificationSimplification

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%

12

Randomized Sytematic SolversRandomized 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?

13

Heavy TailsHeavy 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

14

Heavy Tailed Cost DistributionHeavy Tailed Cost Distribution

0.1

1

1 10 100 1000 10000 100000

log( Backtracks )

log

( 1

- F

(x)

)

15

Randomized RestartsRandomized 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

16

Rapid Restart SpeedupRapid Restart Speedup

1000

10000

100000

1000000

1 10 100 1000 10000 100000 1000000

log( cutoff )

log

( b

ackt

rack

s )

17

Blackbox as Experimental TestbedBlackbox 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

18

Blackbox ResultsBlackbox Results

0.01

0.1

1

10

100

1000

10000

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

Graphplan

BB-walksat

BB-rand-sys

Handcoded-walksat

19

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

----------------------------------------------------Converting graph to wff6151 variables243652 clausesInvoking simplifier compactVariables undetermined: 4633Non-unary clauses output: 139866----------------------------------------------------Invoking solver satz version satz-rand-2.1Wff 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 plan1 drive-truck_ny-truck_ny-central_ny-po_ny

20

Begin plan1 drive-truck_ny-truck_ny-central_ny-po_ny1 drive-truck_sf-truck_sf-airport_sf-po_sf1 load-truck_package5_bos-truck_bos-po1 drive-truck_pgh-truck_pgh-airport_pgh-central_pgh1 fly-airplane_airplane2_pgh-airport_sf-airport1 load-truck_package6_bos-truck_bos-po2 load-truck_package2_pgh-truck_pgh-central2 load-truck_package4_ny-truck_ny-po2 load-truck_package7_ny-truck_ny-po2 load-truck_package3_pgh-truck_pgh-central2 drive-truck_bos-truck_bos-po_bos-airport_bos2 load-airplane_package8_airplane2_sf-airport2 fly-airplane_airplane1_pgh-airport_sf-airport2 drive-truck_la-truck_la-po_la-airport_la3 fly-airplane_airplane2_sf-airport_bos-airport3 unload-truck_package6_bos-truck_bos-airport3 drive-truck_pgh-truck_pgh-central_pgh-airport_pgh3 fly-airplane_airplane1_sf-airport_pgh-airport3 unload-truck_package5_bos-truck_bos-airport3 drive-truck_ny-truck_ny-po_ny-airport_ny3 drive-truck_sf-truck_sf-po_sf-airport_sf4 unload-truck_package3_pgh-truck_pgh-airport4 unload-truck_package2_pgh-truck_pgh-airport4 unload-truck_package4_ny-truck_ny-airport4 load-airplane_package6_airplane2_bos-airport4 load-airplane_package5_airplane2_bos-airport4 drive-truck_la-truck_la-airport_la-po_la4 drive-truck_bos-truck_bos-airport_bos-central_bos4 unload-truck_package7_ny-truck_ny-airport5 drive-truck_ny-truck_ny-airport_ny-po_ny5 drive-truck_bos-truck_bos-central_bos-po_bos5 load-airplane_package2_airplane1_pgh-airport5 drive-truck_la-truck_la-po_la-central_la5 drive-truck_pgh-truck_pgh-airport_pgh-po_pgh5 load-airplane_package3_airplane1_pgh-airport5 fly-airplane_airplane2_bos-airport_ny-airport6 drive-truck_sf-truck_sf-airport_sf-central_sf6 unload-airplane_package6_airplane2_ny-airport6 load-airplane_package4_airplane2_ny-airport6 drive-truck_la-truck_la-central_la-po_la6 drive-truck_bos-truck_bos-po_bos-airport_bos6 load-airplane_package7_airplane2_ny-airport6 drive-truck_ny-truck_ny-po_ny-airport_ny6 unload-airplane_package8_airplane2_ny-airport6 fly-airplane_airplane1_pgh-airport_sf-airport6 load-truck_package1_pgh-truck_pgh-po7 fly-airplane_airplane2_ny-airport_la-airport7 fly-airplane_airplane1_sf-airport_bos-airport7 load-truck_package9_sf-truck_sf-central7 load-truck_package6_ny-truck_ny-airport

7 drive-truck_bos-truck_bos-airport_bos-central_bos7 drive-truck_pgh-truck_pgh-po_pgh-airport_pgh7 load-truck_package8_ny-truck_ny-airport8 drive-truck_sf-truck_sf-central_sf-po_sf8 fly-airplane_airplane2_la-airport_pgh-airport8 unload-truck_package1_pgh-truck_pgh-airport8 drive-truck_bos-truck_bos-central_bos-po_bos8 drive-truck_ny-truck_ny-airport_ny-central_ny8 fly-airplane_airplane1_bos-airport_la-airport8 drive-truck_la-truck_la-po_la-airport_la9 unload-airplane_package7_airplane2_pgh-airport9 unload-truck_package8_ny-truck_ny-central9 unload-airplane_package5_airplane2_pgh-airport9 unload-truck_package9_sf-truck_sf-po9 unload-airplane_package3_airplane1_la-airport9 unload-truck_package6_ny-truck_ny-central9 drive-truck_pgh-truck_pgh-airport_pgh-po_pgh9 load-airplane_package1_airplane2_pgh-airport10 drive-truck_ny-truck_ny-central_ny-po_ny10 fly-airplane_airplane2_pgh-airport_bos-airport10 load-truck_package3_la-truck_la-airport10 fly-airplane_airplane1_la-airport_ny-airport10 drive-truck_pgh-truck_pgh-po_pgh-airport_pgh11 drive-truck_bos-truck_bos-po_bos-airport_bos11 drive-truck_ny-truck_ny-po_ny-airport_ny11 unload-airplane_package2_airplane1_ny-airport11 drive-truck_la-truck_la-airport_la-central_la11 drive-truck_sf-truck_sf-po_sf-airport_sf11 unload-airplane_package1_airplane2_bos-airport11 load-truck_package7_pgh-truck_pgh-airport11 load-truck_package5_pgh-truck_pgh-airport12 drive-truck_sf-truck_sf-airport_sf-po_sf12 load-truck_package1_bos-truck_bos-airport12 fly-airplane_airplane2_bos-airport_la-airport12 load-truck_package2_ny-truck_ny-airport12 fly-airplane_airplane1_ny-airport_pgh-airport12 drive-truck_pgh-truck_pgh-airport_pgh-po_pgh12 unload-truck_package3_la-truck_la-central13 drive-truck_ny-truck_ny-airport_ny-po_ny13 load-truck_package3_la-truck_la-central13 load-truck_package9_sf-truck_sf-po13 drive-truck_bos-truck_bos-airport_bos-po_bos13 unload-truck_package5_pgh-truck_pgh-po13 unload-airplane_package4_airplane2_la-airport14 unload-truck_package9_sf-truck_sf-po14 unload-truck_package1_bos-truck_bos-po14 unload-truck_package7_pgh-truck_pgh-po14 unload-truck_package2_ny-truck_ny-po14 unload-truck_package3_la-truck_la-centralEnd plan

21

SummarySummary

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

22

Current Research IssuesCurrent 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 conditionsOther front-ends: causal encodings (McAllester, Selman, Kautz

1996), HTN encodings (Mali & Kambhampati 1998)

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

Recommended