Skip to main content

A Hybrid BDD and SAT Finite Domain Constraint Solver

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3819))

Abstract

Finite-domain constraint solvers based on Binary Decision Diagrams (BDDs) are a powerful technique for solving constraint problems over finite set and integer variables represented as Boolean formulæ. Boolean Satisfiability (SAT) solvers are another form of constraint solver that operate on constraints on Boolean variables expressed in clausal form. Modern SAT solvers have highly optimized propagation mechanisms and also incorporate efficient conflict-clause learning algorithms and effective search heuristics based on variable activity, but these techniques have not been widely used in finite-domain solvers. In this paper we show how to construct a hybrid BDD and SAT solver which inherits the advantages of both solvers simultaneously. The hybrid solver makes use of an efficient algorithm for capturing the inferences of a finite-domain constraint solver in clausal form, allowing us to automatically and transparently construct a SAT model of a finite-domain constraint problem. Finally, we present experimental results demonstrating that the hybrid solver can outperform both SAT and finite-domain solvers by a substantial margin.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Apt, K., Monfroy, E.: Constraint programming viewed as rule-based programming. TPLP 1(6), 713–750 (2001)

    MATH  MathSciNet  Google Scholar 

  2. Bessière, C., Regin, J.-C.: MAC and combined heuristics: Two reasons to forsake FC (and CBJ?) on hard problems. In: Freuder, E.C. (ed.) CP 1996. LNCS, vol. 1118, Springer, Heidelberg (1996)

    Google Scholar 

  3. Bryant, R.E.: Symbolic Boolean manipulation with ordered binary-decision diagrams. ACM Comput. Surv. 24(3), 293–318 (1992) ISSN 0360-0300

    Google Scholar 

  4. Choi, C., Lee, J., Stuckey, P.J.: Propagation redundancy in redundant modelling. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, pp. 229–243. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  5. Damiano, R., Kukula, J.: Checking satisfiability of a conjunction of BDDs. In: Proceedings of DAC 2003, pp. 818–823. ACM Press, New York (2003)

    Chapter  Google Scholar 

  6. Davis, M., Logemann, G., Loveland, D.: A machine program for theorem-proving. Communications of the ACM 5, 394–397 (1962)

    Article  MATH  MathSciNet  Google Scholar 

  7. Dechter, R.: Constraint Processing. Morgan Kaufmann, San Francisco (2003)

    Google Scholar 

  8. Eén, N., Sörensson, N.: An extensible SAT-solver. In: Giunchiglia, E., Tacchella, A. (eds.) SAT 2003. LNCS, vol. 2919, pp. 502–518. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  9. Eén, N., Sörensson, N.: Minisat+ (2005), http://www.cs.chalmers.se/Cs/Research/FormalMethods/MiniSat/MiniSat+.html

  10. Hawkins, P., Lagoon, V., Stuckey, P.J.: Solving set constraint satisfaction problems using ROBDDs. Journal of Artificial Intelligence Research 24, 109–156 (2005)

    Article  MATH  Google Scholar 

  11. Junker, U.: QUICKXPLAIN: Conflict detection for arbitrary constraint propagation algorithms. In: IJCAI 2001 Workshop on Modelling and Solving problems with constraints (CONS-1) (2001)

    Google Scholar 

  12. Jussien, N., Barichard, V.: The PaLM system: explanation-based constraint programming. In: Proceedings of TRICS: Techniques foR Implementing Constraint programming Systems, a post-conference workshop of CP 2000, pp. 118–133 (2000)

    Google Scholar 

  13. Jussien, N., Debruyne, R., Boizumault, P.: Maintaining arc-consistency within dynamic backtracking. In: Dechter, R. (ed.) CP 2000. LNCS, vol. 1894, pp. 249–261. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  14. Katsirelos, G., Bacchus, F.: Unrestricted nogood recording in CSP search. In: Rossi, F. (ed.) CP 2003. LNCS, vol. 2833, pp. 873–877. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  15. Marriott, K., Stuckey, P.J.: Programming with Constraints: an Introduction. The MIT Press, Cambridge (1998)

    MATH  Google Scholar 

  16. Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., Malik, S.: Chaff: Engineering an efficient SAT solver. In: 39th Design Automation Conference (DAC 2001) (June 2001)

    Google Scholar 

  17. Prosser, P.: Hybrid algorithms for the constraint satisfaction search. Computational Intelligence 9(3), 268–299 (1993)

    Article  Google Scholar 

  18. Somenzi, F.: CUDD: Colorado University Decision Diagram package. [Online, accessed May 31 2004] (2004), http://vlsi.colorado.edu/~fabio/CUDD/

  19. Somogyi, Z., Henderson, F., Conway, T.: The execution algorithm of Mercury, an efficient purely declarative logic programming language. Journal of Logic Programming 29(1–3), 17–64 (1996)

    Article  MATH  Google Scholar 

  20. Thiffault, C., Bacchus, F., Walsh, T.: Solving non-clausal formulas with DPLL search. In: Wallace, M. (ed.) CP 2004. LNCS, vol. 3258, pp. 663–678. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  21. Walsh, T.: SAT vs CSP. In: Dechter, R. (ed.) CP 2000. LNCS, vol. 1894, pp. 441–456. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  22. Zhang, L., Malik, S.: The quest for efficient Boolean satisfiability solvers. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 17–36. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  23. Zhang, L., Madigan, C., Moskewicz, M., Malik, S.: Efficient conflict driven learning in a Boolean satisfiability solver. In: Proceedings of International Conference on Computer Design (ICCAD), pp. 279–285 (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

Hawkins, P., Stuckey, P.J. (2005). A Hybrid BDD and SAT Finite Domain Constraint Solver. In: Van Hentenryck, P. (eds) Practical Aspects of Declarative Languages. PADL 2006. Lecture Notes in Computer Science, vol 3819. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11603023_8

Download citation

  • DOI: https://doi.org/10.1007/11603023_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-30947-5

  • Online ISBN: 978-3-540-31685-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics