Skip to main content

Heuristics for Fast Exact Model Counting

  • Conference paper
Theory and Applications of Satisfiability Testing (SAT 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3569))

Abstract

An important extension of satisfiability testing is model-counting, a task that corresponds to problems such as probabilistic reasoning and computing the permanent of a Boolean matrix. We recently introduced Cachet, an exact model-counting algorithm that combines formula caching, clause learning, and component analysis. This paper reports on experiments with various techniques for improving the performance of Cachet, including component-selection strategies, variable-selection branching heuristics, randomization, backtracking schemes, and cross-component implications. The result of this work is a highly-tuned version of Cachet, the first (and currently, only) system able to exactly determine the marginal probabilities of variables in random 3-SAT formulas with 150+ variables. We use this to discover an interesting property of random formulas that does not seem to have been previously observed.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Lalas, G., Kaporis, A., Kirousis, L.: The probabilistics analysis of a greedy satisfiability algorithm. In: Möhring, R.H., Raman, R. (eds.) ESA 2002. LNCS, vol. 2461, pp. 574–585. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  2. Bacchus, F., Dalmao, S., Pitassi, T.: Algorithms and Complexity Results for #SAT and Bayesian inference. In: Proceedings 44th Annual Symposium on Foundations of Computer Science, Boston, MA, October 2003. IEEE, Los Alamitos (2003)

    Google Scholar 

  3. Bacchus, F., Dalmao, S., Pitassi, T.: Value elimination: Bayesian inference via backtracking search. In: Uncertainty in Artificial Intelligence (UAI 2003), pp. 20–28 (2003)

    Google Scholar 

  4. Bayardo Jr., R.J., Pehoushek, J.D.: Counting models using connected components. In: Proceedings, AAAI 2000: 17th National Conference on Artificial Intelligence, pp. 157–162 (2000)

    Google Scholar 

  5. Beame, P., Impagliazzo, R., Pitassi, T., Segerlind, N.: Memoization and DPLL: Formula Caching proof systems. In: Proceedings Eighteenth Annual IEEE Conference on Computational Complexity, Aarhus, Denmark, July 2003, pp. 225–236 (2003)

    Google Scholar 

  6. Goldberg, E., Novikov, Y.: Berkmin: a fast and robust sat-solver. In: Proceedings of the Design and Test in Europe Conference, March 2002, pp. 142–149 (2002)

    Google Scholar 

  7. Majercik, S.M., Littman, M.L.: Using caching to solve larger probabilistic planning problems. In: Proceedings of the 14th AAAI, pp. 954–959 (1998)

    Google Scholar 

  8. Marques Silva, J.P., Sakallah, K.A.: GRASP – a new search algorithm for satisfiability. In: Proceedings of the International Conference on Computer Aided Design, San Jose, CA, November 1996, pp. 220–227. ACM/IEEE (1996)

    Google Scholar 

  9. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: Proceedings of the 38th Design Automation Conference, Las Vegas, NV, June 2001, pp. 530–535. ACM/IEEE (2001)

    Google Scholar 

  10. Sang, T., Bacchus, F., Beame, P., Kautz, H., Pitassi, T.: Combining component caching and clause learning for effective model counting. In: Hoos, H.H., Mitchell, D.G. (eds.) SAT 2004. LNCS, vol. 3542. Springer, Heidelberg (2005)

    Google Scholar 

  11. Sang, T., Beame, P., Kautz, H.: Solving bayeian networks by weighted model counting (2005) (submitted)

    Google Scholar 

  12. Marques Silva, J.P.: The impact of branching heuristics in propositional satisfiability algorithms. In: Proceedings of the 9th Portuguese Conference on Artificial Intelligence: Progress in Artificial Intelligence, pp. 62–74 (1999)

    Google Scholar 

  13. Zhang, H.: SATO: An efficient propositional prover. In: McCune, W. (ed.) CADE 1997. LNCS (LNAI), vol. 1249, pp. 272–275. Springer, Heidelberg (1997)

    Google Scholar 

  14. Zhang, L., Madigan, C.F., Moskewicz, M.H., Malik, S.: Efficient conflict driven learning in a boolean satisfiability solver. In: Proceedings of the International Conference on Computer Aided Design, San Jose, CA, November 2001, pp. 279–285. ACM/IEEE (2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sang, T., Beame, P., Kautz, H. (2005). Heuristics for Fast Exact Model Counting. In: Bacchus, F., Walsh, T. (eds) Theory and Applications of Satisfiability Testing. SAT 2005. Lecture Notes in Computer Science, vol 3569. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11499107_17

Download citation

  • DOI: https://doi.org/10.1007/11499107_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-26276-3

  • Online ISBN: 978-3-540-31679-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics