BDD-Guided Clause Generation

  • Brian KellEmail author
  • Ashish Sabharwal
  • Willem-Jan van Hoeve
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9075)


Nogood learning is a critical component of Boolean satisfiability (SAT) solvers, and increasingly popular in the context of integer programming and constraint programming. We present a generic method to learn valid clauses from exact or approximate binary decision diagrams (BDDs) and resolution in the context of SAT solving. We show that any clause learned from SAT conflict analysis can also be generated using our method, while, in addition, we can generate stronger clauses that cannot be derived from one application of conflict analysis. Importantly, since SAT instances are often too large for an exact BDD representation, we focus on BDD relaxations of polynomial size and show how they can still be used to generated useful clauses. Our experimental results show that when this method is used as a preprocessing step and the generated clauses are appended to the original instance, the size of the search tree for a SAT solver can be significantly reduced.


Unit Propagation Constraint Programming Binary Decision Diagram Partial Assignment Original Instance 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Achterberg, T.: Conflict analysis in mixed integer programming. Discrete Optimization 4(1), 4–20 (2007)CrossRefzbMATHMathSciNetGoogle Scholar
  2. 2.
    Andersen, H.R., Hadzic, T., Hooker, J.N., Tiedemann, P.: A constraint store based on multivalued decision diagrams. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 118–132. Springer, Heidelberg (2007) CrossRefGoogle Scholar
  3. 3.
    Atserias, A., Fichte, J.K., Thurley, M.: Clause-learning algorithms with many restarts and bounded-width resolution. Journal of Artificial Intelligence Research 40, 353–373 (2011)zbMATHMathSciNetGoogle Scholar
  4. 4.
    Beame, P., Kautz, H., Sabharwal, A.: Understanding and harnessing the potential of clause learning. Journal of Artificial Intelligence Research 22, 319–351 (2004)zbMATHMathSciNetGoogle Scholar
  5. 5.
    Behle, M.: On threshold BDDs and the optimal variable ordering problem. Journal of Combinatorial Optimization 16, 107–118 (2008)CrossRefzbMATHMathSciNetGoogle Scholar
  6. 6.
    Bergman, B., Cire, A., van Hoeve, W.-J., Hooker, J.: Optimization bounds from binary decision diagrams. INFORMS Journal on Computing 26(2), 253–268 (2014)CrossRefMathSciNetGoogle Scholar
  7. 7.
    Bergman, D., Cire, A.A., van Hoeve, W.-J., Yunes, T.: BDD-based heuristics for binary optimization. Journal of Heuristics 20(2), 211–234 (2014)CrossRefGoogle Scholar
  8. 8.
    Bergman, D., van Hoeve, W.-J., Hooker, J.N.: Manipulating MDD relaxations for combinatorial optimization. In: Achterberg, T., Beck, J.C. (eds.) CPAIOR 2011. LNCS, vol. 6697, pp. 20–35. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  9. 9.
    Bollig, B., Wegener, I.: Improving the variable ordering of OBDDs is NP-complete. IEEE Transactions on Computers 45(9), 993–1002 (1996)CrossRefzbMATHGoogle Scholar
  10. 10.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers 35(8), 677–691 (1986)CrossRefzbMATHGoogle Scholar
  11. 11.
    Cire, A., van Hoeve, W.-J.: Multivalued decision diagrams for sequencing problems. Operations Research 61(6), 1411–1428 (2013)CrossRefzbMATHMathSciNetGoogle Scholar
  12. 12.
    Downing, N., Feydy, T., Stuckey, P.: Explaining flow-based propagation. In: Beldiceanu, N., Jussien, N., Pinson, É. (eds.) CPAIOR 2012. LNCS, vol. 7298, pp. 146–162. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  13. 13.
    Hadzic, T., Hooker, J., O’Sullivan, B., Tiedemann, P.: Approximate compilation of constraints into multivalued decision diagrams. In: Stuckey, P.J. (ed.) CP 2008. LNCS, vol. 5202, pp. 448–462. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  14. 14.
    Hoda, S., van Hoeve, W.-J., Hooker, J.: A systematic approach to MDD-based constraint programming. In: Cohen, D. (ed.) CP 2010. LNCS, vol. 6308, pp. 266–280. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  15. 15.
    Katsirelos, G.: Nogood Processing in CSPs. PhD thesis, University of Toronto (2008)Google Scholar
  16. 16.
    Kell, B., van Hoeve, W.-J.: An MDD approach to multidimensional bin packing. In: Gomes, C., Sellmann, M. (eds.) CPAIOR 2013. LNCS, vol. 7874, pp. 128–143. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  17. 17.
    Kilinç-Karzan, F., Nemhauser, G., Savelsbergh, M.: Information-based branching schemes for binary linear mixed integer problems. Mathematical Programming Computation 1(4), 249–293 (2009)CrossRefMathSciNetGoogle Scholar
  18. 18.
    Knuth, D.E.: The Art of Computer Programming, vol. 4, fascicle 1: Bitwise Tricks & Techniques; Binary Decision Diagrams. Addison-Wesley (2009)Google Scholar
  19. 19.
    Lee, C.Y.: Representation of switching circuits by binary-decision programs. Bell System Technical Journal 38(4), 985–999 (1959)CrossRefMathSciNetGoogle Scholar
  20. 20.
    Marques-Silva, J.P., Lynce, I., Malik, S.: CDCL solvers. In: Biere, A., Heule, M., van Maaren, H., Walsh, T., (eds.), Handbook of Satisfiability, chapter 4, pp. 131–154. IOS Press (2009)Google Scholar
  21. 21.
    Ohrimenko, O., Stuckey, P., Codish, M.: Propagation via lazy clause generation. Constraints 14, 357–391 (2009)CrossRefzbMATHMathSciNetGoogle Scholar
  22. 22.
    Pipatsrisawat, K., Darwiche, A.: On the power of clause-learning SAT solvers as resolution engines. Artificial Intelligence 175(2), 512–525 (2011)CrossRefzbMATHMathSciNetGoogle Scholar
  23. 23.
    SAT Challenge 2012. SAT Challenge 2012: Downloads, November 23, 2014.
  24. 24.
    Stuckey, P.: Lazy clause generation: combining the power of SAT and CP (and MIP?) solving. In: Lodi, A., Milano, M., Toth, P. (eds.) CPAIOR 2010. LNCS, vol. 6140, pp. 5–9. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  25. 25.
    Wegener, I.: Branching Programs and Binary Decision Diagrams: Theory and Applications. SIAM Monographs on Discrete Mathematics and Applications. SIAM, Philadelphia (2000) CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Brian Kell
    • 1
    Email author
  • Ashish Sabharwal
    • 2
  • Willem-Jan van Hoeve
    • 3
  1. 1.Department of Mathematical SciencesCarnegie Mellon UniversityPittsburghUSA
  2. 2.Allen Institute for Artificial IntelligenceSeattleUSA
  3. 3.Tepper School of BusinessCarnegie Mellon UniversityPittsburghUSA

Personalised recommendations