Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 MCMC Style Sampling / Counting for SAT Can we extend SAT/CSP techniques to solve harder counting/sampling problems? Such an extension would lead us to.

Similar presentations


Presentation on theme: "1 MCMC Style Sampling / Counting for SAT Can we extend SAT/CSP techniques to solve harder counting/sampling problems? Such an extension would lead us to."— Presentation transcript:

1 1 MCMC Style Sampling / Counting for SAT Can we extend SAT/CSP techniques to solve harder counting/sampling problems? Such an extension would lead us to a wide range of new applications. SAT testing counting/sampling logic inference probabilistic reasoning NP / co-NP-complete #P-complete Note: counting solutions and sampling solutions are computationally near equivalent. Related work: Kautz et al. ’06; Bacchus et al. ’07; Darwich ’04 & ’08; Littman ‘03.

2 2 Standard Methods for Sampling: Markov Chain Monte Carlo (MCMC) Based on setting up a Markov chain with a predefined stationary distribution. E.g. simulated annealing. Draw samples from the stationary distribution by running the Markov chain for a sufficiently long time. Problem: for many interesting problems, such as SAT, Markov chain takes exponential time to converge to its stationary distribution. Bottom line: standard MCMC (e.g. SA) too slow.

3 3 First attempt Use specialized local search style algorithm: Biased random walk = a random walk with greedy bias. Example: WalkSat (Selman et al, 1993), effective on SAT. Can we use it to sample from solution space? – Does WalkSat reach all solutions? – How uniform/non-uniform is the sampling? (Wei Wei and Selman ’04; ’05)‏ Aside: Can ask same questions about SP.

4 WalkSat visited 500,000 times visited 60 times Hamming distance 75 var random 3SAT 2,500 solutions 50,000,000 runs All solns reached but highly non-uniform!

5 Probability Ranges for Different Domains InstanceRunsHits RarestHits Common Common-to - Rare Ratio Random 50  10 6 53 9  10 5 1.7  10 4 Logistics 1  10 6 84 4  10 3 50 Verif. 1  10 6 453187

6 Improving the Uniformity of Sampling SampleSat: With probability p, the algorithm makes a biased random walk move With probability 1-p, the algorithm makes a SA (simulated annealing) move WalkSat Nonergodic Quickly reach sinks Ergodic Slow convergence Ergodic But does not satisfy DBC SA= SampleSat+

7 7 Comparison Between WalkSat and SampleSat WalkSatSampleSat 10 4 10

8 WalkSat Hamming distance

9 SampleSat Hamming Distance SampleSAT Note: Uniform sampling within clusters.

10 InstanceRunsHits RarestHits Most Common Common-to - Rare Ratio WalkSat Ratio SampleSat Random 50  10 6 53 9  10 5 1.7  10 4 10 Logistics planning 1  10 6 84 4  10 3 5017 Hardware verification 1  10 6 4531874 For some formal properties, see Wei Wei and Selman (‘04 ). So, improved sampling. How about larger instances? How about counting?

11 11 From Sampling to Counting: Recursively Divide and Conquer! X=1 X=0 Space of truth assignments 1/3 2/3 2/3 of soln. samples have X=1 # solns. = 3/2 * #solns. _with_X=1 Multiplier from sampling Count smaller formula with fixed X=1

12 12 From Sampling to Counting Algorithm works as follows (Jerrum and Valiant, 1986) ‏  Pick a variable X in current formula  Draw K samples from the solution space  Set variable X to its most sampled value t, and the multiplier for X is K/#(X=t). Aside: 1  multiplier  2  Repeat step 1-3 until all variables are set  The number of solutions of the original formula is the product of all multipliers.

13 instance#variables#solutionsApproxCountAverage Error / var P(30,20)‏600 7  10 25 7  10 24 0.4% P(20,10)‏200 7  10 11 2  10 11 0.6% instance#variablesExact count ApproxCountAverage Error / var prob004-log-a1790 2.6  10 16 1.4  10 16 0.03% wff.3.200.810200 3.6  10 12 3.0  10 12 0.09% dp02s02.shuffled319 1.5  10 25 1.2  10 25 0.07% Comparison to exact counting (DPLL-style ). Beyond exact model counters Note: final numbers obtained by multiplying 100s of (estimated) factors.

14 Summary: Counting & Sampling Results show potential for modified SAT (CSP?) solvers (local search) for counting / sampling solutions. Can handle solution spaces with 10^25 and more solutions. Range of potential applications: e.g. many forms of probabilistic (Bayesian) reasoning.


Download ppt "1 MCMC Style Sampling / Counting for SAT Can we extend SAT/CSP techniques to solve harder counting/sampling problems? Such an extension would lead us to."

Similar presentations


Ads by Google