240 likes | 305 Views
Ten Challenges Redux : Recent Progress in Propositional Reasoning & Search A Biased Random Walk. Henry Kautz University of Washington. Challenge 1: Prove that a hard 700 variable random 3-SAT formula is unsatisfiable. 1997
E N D
Ten Challenges Redux: Recent Progress in Propositional Reasoning & SearchA Biased Random Walk Henry Kautz University of Washington
Challenge 1: Prove that a hard 700 variable random 3-SAT formula is unsatisfiable • 1997 • DPLL handles 400 variable random 3-SAT at 4.25 clause/variable ratio (Li & Anbulagan1996) • Walksat handles 10,000 variable satisfiable (Selman, Cohen, & Kautz 1996) • Limit of DPLL due to minimal proof tree size? • 2001 • “Backbone based” variable selection heuristic (Dubois & Dequen) extends DPLL to 700 variables
Backbone Based Heuristics • Backbone • Sat formulas: Set of variables that are fixed in all satisfying assignments • Unsat formulas: backbone of (some) max-sat subset • DPLL heuristic: branch on variables that are likely to be in the backbone • Identify using recursive version of MOM’s
Survey Propagation • 2002 – Survey propagation – identify backbone variables and values for satisfiable random k-SAT (Mézard, Parisi, & Zecchina) • Linear scaling – 1,000,000+ variables at 4.25 • Loopy belief propagation • Challenge 1’: Develop survey propagation techniques for other interesting problem distributions
Challenge 2: Solve the DIMACS 32-bit parity problem • Extend DPLL by detecting chains of equivalent literals • Pre-processing (Warner & van Maaren 1999) • During execution of DPLL (Li 2000) • Local search – clause re-weighting promising (Wu & Wah 1999) • Challenge 2’: Solve the 32-bit problem using local search
Proof Complexity: Beyond DPLL • DPLL < General Resolution < Frege Systems • Challenge 3A: Demonstrate that a proof system more powerful than tree-like resolution can be practical for satisfiability testing • Clause learning (GRASP: Marques-Silva & Sakallah 1996; Rel-Sat: Bayardo & Shrag 1997; SATO: Zhang 1997; Chaff: Moskewicz, Madigan, Zhao, Zhang, & Malik 2001) • Bounded model checking (Velev & Bryant 2001) • Alpha processor – 1M vars, 10M clauses (Bjesse, Leonard, & Mokkdem 2001) • What is formal power of clause learning?
Conflict Clauses zChaff’s 1-UIP scheme t x1 p y a q false x2 t y b x3 Grasp’s Decision scheme (p q b) [Beame, Kautz, Sabharwal ’03] FirstNewCut scheme (x1 x2 x3)
Pebbling Formulas • Structure similar to precedence graphs, planning graphs • No short proofs for DPLL (or even regular resolution) • Short clause learning proofs in all common schemes (t1 t2) (h1 h2) (i1 i2) (e1 e2) (f1 f2) (g1 g2) (a1 a2) (b1 b2) (c1 c2) (d1 d2)
Branching Sequence • B = (x1, x4, x3, x1, x8, x2,x4, x7, x1, x2) • Analysis: can generate domain-dependent “pebbling” branching sequence OLD: “Pick unassigned var x” NEW: “Pick next literalyfrom B; delete it from B; if y already assigned, repeat”
Results: Grid Pebbling Naive DPLL Original zChaff Modified zChaff
Challenge 3B: Demonstrate that a proof system more powerful than general resolution can be made practical for satisfiability testing • Pigeon-hole problems – E. Coli of proof complexity • Detect & break symmetries (Krishnamurphy 1985; Crawford, Ginsberg, Luks & Roy 1996; Aloul, Markov, & Sakallah 2003) • If {A, B} is a symmetry, adding A B preserves satisfiability • If (1, 0) is a model then so is (0, 1) – safe to kill (1,0) • Significant speed-up on real-world problems, but • Can only find “obvious” symmetries – NP-hard in general! • Additional clauses unwieldy – build into DPLL instead?
Formula Caching • New idea: cache residual formulas instead of learned clauses (Bacchus, Dalmao & Pitassi 2003; Beame, Impagliazzo, Pitassi, & Segerlind 2003) • Stronger than general resolution if check cache for subsumed formulas • But not for pigeons… • Best approach for model counting?
Challenge 4: Demonstrate that integer programming can be made practical for satisfiability testing • Cutting planes: • Great in theory, but so far not in practice • Promising: extend DPLL to pseudo-Boolean programming (Dixon & Ginsberg 2002)
Challenge 5: Design a practical local search procedure for proving unsatisfiability • Need: small witnesses! • Backdoor sets? (Williams, Gomes, & Selman 2003)
Challenge 6: Handle variable dependencies more efficiently in local search • Random walk – unit propagation in n2 time (Papadimitriou 1995) • Walksat with unit-prop initialization (UnitWalk: Hirsch & Kojevnikov 2001; Qingting: Li, Stallman, & Brglez 2003) • Pre-process formula • Add clauses that capture long-range dependencies (Wei Wei & Selman 2002)
Challenge 7: Successfully combine stochastic & systematic search • Interleaved DPLL & local search (Maizure, Sais, & Gregoire 1996; Habet, Li, Devendeville, & Vasquez 2002) • Randomized restart DPLL (Gomes, Selman, & Kautz 1998) • Heavy tailed run-time distributions (Gomes, Selman, Crater, & Kautz 2000) • Issue: when to restart?
Complete or no knowledge • Complete knowledge: calculate fixed cutoff to minimize E(Rt) • No knowledge: universal sequence 1, 1, 2, 1, 1, 2, 4, … (Luby 1993) P(t) D T* t
Observation horizon Short Long Median run time Run-Time Observations • Can predict a particular run’s time to solution (very roughly) based on features of a solver’s trace during an initial window • Can improve time to solution by immediately pruning runs that are predicted to be long (Horvitz, Gomes, Kautz, Ruan, Selman 2000-2003)
Partial Knowledge • Can incorporate partial knowledge about an ensemble RTD by updating beliefs after each run • Example: You know RTD of a SAT ensemble and an UNSAT ensemble, but you don’t know which ensemble current problem is from
Challenge 8: Characterize the computational properties of different encodings of real world domains • CSP versus SAT encodings (Walsh 1997; Prestwich 2003; van Beek & Dechter 1997) • Effect of logically redundant clauses on power of unit propagation (local consistency) • Planning as satisfiability (Kautz, McAllester, Selman 1996; Kautz & Selman 1999) • Much to be done!
Challenge 9: Find encodings of real-world domains so that “near models” are near solutions
Challenge 10: Create random problem generator for instances similar to real-world problems • Quasigroup completion problem (Gomes & Selman 1997; Kautz, Ruan, Achlioptas, Gomes, Selman, & Stickel 2001)
Bounded-Model Checking • Growing libraries of real-world instances • No one algorithm best for all – wide range of performance! • Challenge 10’: Relate the specific kinds of structures that appear in BMC problems to different solver techniques.
Score Card http://www.cs.washington.edu/homes/kautz/challenge