Advertisement

Annals of Operations Research

, Volume 184, Issue 1, pp 209–231 | Cite as

Leveraging belief propagation, backtrack search, and statistics for model counting

  • Lukas Kroc
  • Ashish Sabharwal
  • Bart Selman
Article

Abstract

We consider the problem of estimating the model count (number of solutions) of Boolean formulas, and present two techniques that compute estimates of these counts, as well as either lower or upper bounds with different trade-offs between efficiency, bound quality, and correctness guarantee. For lower bounds, we use a recent framework for probabilistic correctness guarantees, and exploit message passing techniques for marginal probability estimation, namely, variations of the Belief Propagation (BP) algorithm. Our results suggest that BP provides useful information even on structured, loopy formulas. For upper bounds, we perform multiple runs of the MiniSat SAT solver with a minor modification, and obtain statistical bounds on the model count based on the observation that the distribution of a certain quantity of interest is often very close to the normal distribution. Our experiments demonstrate that our model counters based on these two ideas, BPCount and MiniCount, can provide very good bounds in time significantly less than alternative approaches.

Keywords

Boolean satisfiability SAT Number of solutions Model counting BPCount MiniCount Lower bounds Upper bounds 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bacchus, F., Dalmao, S., & Pitassi, T. (2009). Solving #SAT and Bayesian inference with backtracking search. Journal of Artificial Intelligence Research, 34, 391–442. Google Scholar
  2. Bayardo, R. J. Jr., Pehoushek, J. D. (2000). Counting models using connected components. In Proceedings of AAAI-00: 17th national conference on artificial intelligence (pp. 157–162), Austin, TX, July. Google Scholar
  3. Darwiche, A. (2004). New advances in compiling CNF into decomposable negation normal form. In Proceedings of ECAI-04: 16th European conference on artificial intelligence, Valencia, Spain, Aug. (pp. 328–332). Google Scholar
  4. Darwiche, A. (2005). The quest for efficient probabilistic inference, July 2005. Invited talk. In IJCAI-05. Google Scholar
  5. Davis, M., Logemann, G., & Loveland, D. (1962). A machine program for theorem proving. Communications of the ACM, 5, 394–397. CrossRefGoogle Scholar
  6. Davis, M., & Putnam, H. (1960). A computing procedure for quantification theory. Communications of the ACM, 7, 201–215. Google Scholar
  7. Eén, N., & Sörensson, N. (2005). MiniSat: a SAT solver with conflict-clause minimization. In Proceedings of SAT-05: 8th international conference on theory and applications of satisfiability testing, St. Andrews, UK, June. Google Scholar
  8. Feller, W. (1968). An introduction to probability theory and its applications (3rd edn., Vol. 1). New York: Wiley. Google Scholar
  9. Gogate, V., & Dechter, R. (2007). Approximate counting by sampling the backtrack-free search space. In Proceedings of AAAI-07: 22nd conference on artificial intelligence, Vancouver, BC, July (pp. 198–203). Google Scholar
  10. Gomes, C. P., Sabharwal, A., & Selman, B. (2006). Model counting: a new strategy for obtaining good bounds. In Proceedings of AAAI-06: 21st conference on artificial intelligence, Boston, MA, July (pp. 54–61). Google Scholar
  11. Gomes, C. P., Hoffmann, J., Sabharwal, A., & Selman, B. (2007a). From sampling to model counting. In Proceedings of IJCAI-07: 20th international joint conference on artificial intelligence, Hyderabad, India, Jan. (pp. 2293–2299). Google Scholar
  12. Gomes, C. P., van Hoeve, W.-J., Sabharwal, A., & Selman, B. (2007b). Counting CSP solutions using generalized XOR constraints. In Proceedings of AAAI-07: 22nd conference on artificial intelligence, Vancouver, BC, July (pp. 204–209). Google Scholar
  13. Hsu, E. I., & McIlraith, S. A. (2006). Characterizing propagation methods for boolean satisfiability. In Lecture notes in computer science : Vol. 4121. Proceedings of SAT-06: 9th international conference on theory and applications of satisfiability testing, Seattle, WA, August 2006 (pp. 325–338). Berlin: Springer. CrossRefGoogle Scholar
  14. Kroc, L., Sabharwal, A., & Selman, B. (2008). Leveraging belief propagation, backtrack search, and statistics for model counting. In Lecture notes in computer science : Vol. 5015. CP-AI-OR-08: 5th international conference on integration of AI and OR techniques in constraint programming, Paris, France, May 2008 (pp. 127–141). Berlin: Springer. Google Scholar
  15. Littman, M. L., Majercik, S. M., & Pitassi, T. (2001). Stochastic Boolean satisfiability. Journal of Automated Reasoning, 27(3), 251–296. CrossRefGoogle Scholar
  16. Maneva, E., Mossel, E., & Wainwright, M. J. (2007). A new look at survey propagation and its generalizations. Journal of the ACM, 54(4), 17. CrossRefGoogle Scholar
  17. Mooij, J. M., Wemmenhove, B., Kappen, H. J., & Rizzo, T. (2007). Loop corrected belief propagation. In Proceedings of AISTATS-07: 11th international conference on artificial intelligence and statistics, San Juan, Puerto Rico, Mar. Google Scholar
  18. Park, J. D. (2002). MAP complexity results and approximation methods. In Proceedings of UAI-02: 18th conference on uncertainty in artificial intelligence, Edmonton, Canada, Aug. (pp. 388–396). Google Scholar
  19. Pearl, J. (1988). Probabilistic reasoning in intelligent systems: networks of plausible inference. San Mateo: Morgan Kaufmann. Google Scholar
  20. Pipatsrisawat, K., & Darwiche, A. (2006). RSat 1.03: SAT solver description (Technical Report D–152). Automated Reasoning Group, Computer Science Department, UCLA. Google Scholar
  21. Pretti, M. (2005). A message-passing algorithm with damping. Journal of Statistical Mechanics, P11008. Google Scholar
  22. Roth, D. (1996). On the hardness of approximate reasoning. Artificial Intelligence, 82(1–2), 273–302. CrossRefGoogle Scholar
  23. Sang, T., Bacchus, F., Beame, P., Kautz, H. A., & Pitassi, T. (2004). Combining component caching and clause learning for effective model counting. In Proceedings of SAT-04: 7th international conference on theory and applications of satisfiability testing, Vancouver, BC, May. Google Scholar
  24. Sang, T., Beame, P., & Kautz, H. A. (2005a). Heuristics for fast exact model counting. In Lecture Notes in Computer Science : Vol. 3569. Proceedings of SAT-05: 8th international conference on theory and applications of satisfiability testing, St. Andrews, UK, June 2005 (pp. 226–240). Berlin: Springer. Google Scholar
  25. Sang, T., Beame, P., & Kautz, H. A. (2005b). Performing Bayesian inference by weighted model counting. In Proceedings of AAAI-05: 20th national conference on artificial intelligence, Pittsburgh, PA, July (pp. 475–482). Google Scholar
  26. Selman, B., Kautz, H., & Cohen, B. (1996). Local search strategies for satisfiability testing. In D. S. Johnson, & M. A. Trick (Eds.) DIMACS series in discrete mathematics and theoretical computer science : Vol. 26. Cliques, coloring and satisfiability: the second DIMACS implementation challenge (pp. 521–532). Providence: American Mathematical Society. Google Scholar
  27. Thode, H. C. (2002). Testing for normality. Boca Raton: CRC Press. CrossRefGoogle Scholar
  28. Valiant, L. G. (1979). The complexity of computing the permanent. Theoretical Computer Science, 8, 189–201. CrossRefGoogle Scholar
  29. Wei, W., Erenrich, J., & Selman, B. (2004). Towards efficient sampling: Exploiting random walk strategies. In Proceedings of AAAI-04: 19th national conference on artificial intelligence, San Jose, CA, July (pp. 670–676). Google Scholar
  30. Wei, W., & Selman, B. (2005). A new approach to model counting. In Lecture notes in computer science : Vol. 3569. Proceedings of SAT-05: 8th international conference on theory and applications of satisfiability testing, St. Andrews, UK, June 2005 (pp. 324–339). Berlin: Springer. Google Scholar
  31. Yedidia, J. S., Freeman, W. T., & Weiss, Y. (2000). Generalized belief propagation. In Proceedings of NIPS-00: 14th conference on advances in neural information processing systems, Denver, CO, Nov. (pp. 689–695). Google Scholar
  32. Yedidia, J. S., Freeman, W. T., & Weiss, Y. (2005). Constructing free-energy approximations and generalized belief propagation algorithms. IEEE Transactions on Information Theory, 51(7), 2282–2312. CrossRefGoogle Scholar
  33. Yuille, A. L. (2002). CCCP algorithms to minimize the Bethe and Kikuchi free energies: convergent alternatives to belief propagation. Neural Computation, 14(7), 1691–1722. CrossRefGoogle Scholar
  34. Zhou, X.-H., & Sujuan, G. (1997). Confidence intervals for the log-normal mean. Statistics In Medicine, 16, 783–790. CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  1. 1.Department of Computer ScienceCornell UniversityIthacaUSA

Personalised recommendations