Journal of Automated Reasoning

, Volume 46, Issue 1, pp 81–102 | Cite as

A Framework for Certified Boolean Branch-and-Bound Optimization

  • Javier Larrosa
  • Robert Nieuwenhuis
  • Albert Oliveras
  • Enric Rodríguez-Carbonell


We consider optimization problems of the form (S, cost), where S is a clause set over Boolean variables x 1 ... x n , with an arbitrary cost function \(\mathit{cost}\colon \mathbb{B}^n \rightarrow \mathbb{R}\), and the aim is to find a model A of S such that cost(A) is minimized. Here we study the generation of proofs of optimality in the context of branch-and-bound procedures for such problems. For this purpose we introduce \(\mathtt{DPLL_{BB}}\), an abstract DPLL-based branch-and-bound algorithm that can model optimization concepts such as cost-based propagation and cost-based backjumping. Most, if not all, SAT-related optimization problems are in the scope of \(\mathtt{DPLL_{BB}}\). Since many of the existing approaches for solving these problems can be seen as instances, \(\mathtt{DPLL_{BB}}\) allows one to formally reason about them in a simple way and exploit the enhancements of \(\mathtt{DPLL_{BB}}\) given here, in particular its uniform method for generating independently verifiable optimality proofs.


SAT Optimization Proofs 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Makhorin, A.: GLPK 4.25 (GNU Linear Programming Kit). Available at (2007)
  2. 2.
    Amgoud, L., Cayrol, C., Berre, D.L.: Comparing arguments using preference ordering for argument-based reasoning. In: ICTAI, pp. 400–403 (1996)Google Scholar
  3. 3.
    Asín, R., Nieuwenhuis, R., Oliveras, A., Rodríguez-Carbonell, E.: Efficient generation of unsatisfiability proofs and cores in SAT. In: Proceedings of LPAR’08. Lecture Notes in Computer Science, vol. 5330, pp. 16–30. Springer, Heidelberg (2008)Google Scholar
  4. 4.
    Aspvall, B., Plass, M.F., Tarjan, R.E.: A linear-time algorithm for testing the truth of certain quantified boolean formulas. Inf. Process. Lett. 8(3), 121–123 (1979)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Boros, E., Hammer, P.L.: Pseudo-boolean optimization. Discrete Appl. Math. 123(1–3), 155–225 (2002)MATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Cabon, B., de Givry, S., Lobjois, L., Schiex, T., Warners, J.: Radio link frequency assignment. Constraints 4, 79–89 (1999)MATHCrossRefGoogle Scholar
  7. 7.
    Cimatti, A., Griggio, A., Sebastiani, R.: A simple and flexible way of computing small unsatisfiable cores in SAT Modulo Theories. In: Proceedings of SAT’07. Lecture Notes in Computer Science, vol. 4501, pp. 334–339. Springer, Heidelberg (2007)Google Scholar
  8. 8.
    Coudert, O.: On solving binate covering problems. In: Proceedings of DAC’96, pp. 197–202. ACM (1996)Google Scholar
  9. 9.
    Coudert, O., Madre, J.C.: New ideas for solving covering problems. In: Proceedings of DAC’95, pp. 641–646. ACM (1995)Google Scholar
  10. 10.
    Flores, P.F., Neto, H.C., Marques-Silva, J.P.: An exact solution to the minimum size test pattern problem. ACM Transact. Des. Automat. Electron. Syst. 6(4), 629–644 (2001)CrossRefGoogle Scholar
  11. 11.
    Fu, Z., Malik, S.: Solving the minimum cost satisability problem using SAT based branch-and-bound search. In: Proceedings of ICCAD’06, pp. 852–859 (2006)Google Scholar
  12. 12.
    Hammer, P., Hansen, P., Simeone, B.: Roof duality, complementation and persistency in quadratic 0–1 optimization. Math. Program. 28, 121–155 (1984)MATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Hoos, H.H., Stützle, T.: SATLIB: an online resource for research on SAT. In: Proceedings of SAT’00, pp. 283–292. IOS Press (2000). SATLIB is available online at
  14. 14.
    ILOG S.A.: ILOG CPLEX Version 11.000 (2007).
  15. 15.
    Larrosa, J., Heras, F., de Givry, S.: A logical approach to efficient max-sat solving. Artif. Intell. 172(2–3), 204–233 (2008)MATHCrossRefGoogle Scholar
  16. 16.
    Larrosa, J., Nieuwenhuis, R., Oliveras, A., Rodríguez-Carbonell, E.: Branch and bound for boolean optimization and the generation of optimality certificates. In: 12th International Conference on Theory and Applications of Satisfiability Testing, SAT’09. Lecture Notes in Computer Science, vol. 5584, pp. 453–466 (2009)Google Scholar
  17. 17.
    Li, X.Y.: Optimization Algorithms for the Minimum-Cost Satisfiability Problem. Ph.D. thesis, Dept. Comp. Sc., N. Carolina State Univ. (2004)Google Scholar
  18. 18.
    Liao, S., Devadas, S.: Solving covering problems using LPR-based lower bounds. In: Procs. DAC’97, pp. 117–120. ACM (1997)Google Scholar
  19. 19.
    Manquinho, V.M., Marques-Silva, J.P.: Search pruning conditions for boolean optimization. In: Proceedings of ECAI 2000, pp. 103–107. IOS Press (2000)Google Scholar
  20. 20.
    Manquinho, V.M., Marques-Silva, J.P.: Search pruning techniques in SAT-based branch-and-bound algorithms for the binate covering problem. IEEE Trans. Comput. Aided Des. Integrated Circ. Syst. 21(5), 505–516 (2002)CrossRefGoogle Scholar
  21. 21.
    Manquinho, V.M., Marques-Silva, J.P.: Satisfiability-based algorithms for boolean optimization. Ann. Math. Artif. Intell. 40(3–4), 353–372 (2004)MATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Marques-Silva, J., Sakallah, K.A.: GRASP: a search algorithm for propositional satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)CrossRefMathSciNetGoogle Scholar
  23. 23.
    Moskal, M.: Rocket-fast proof checking for SMT solvers. In: 14th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS’08. Lecture Notes in Computer Science, vol. 4963, pp. 486–500. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  24. 24.
    Nieuwenhuis, R., Oliveras, A.: On SAT Modulo Theories and optimization problems. In: Proceedings of SAT’06. Lecture Notes in Computer Science, vol. 4121, pp. 156–169. Springer, Heidelberg (2006)Google Scholar
  25. 25.
    Nieuwenhuis, R., Oliveras, A., Tinelli, C.: Solving SAT and SAT Modulo Theories: from an abstract Davis–Putnam–Logemann–Loveland procedure to DPLL(T). J. ACM 53(6), 937–977 (2006)CrossRefMathSciNetGoogle Scholar
  26. 26.
    Park, J.D.: Using weighted max-SAT engines to solve MPE. In: Proc. of the 18th AAAI, pp. 682–687. Edmonton, Alberta, Canada (2002)Google Scholar
  27. 27.
    Sandholm, T.: An algorithm for optimal winner determination in combinatorial auctions. In: IJCAI-99, pp. 542–547 (1999)Google Scholar
  28. 28.
    Schrijver, A.: Theory of Linear and Integer Programming. Wiley, Chichester (1986)MATHGoogle Scholar
  29. 29.
    Werner, T.: A Linear Programming Approach to Max-Sum Problem: A Review. Tech. Rep. CTU-CMP-2005-25, Center for Machine Perception, Czech Technical University (2005)Google Scholar
  30. 30.
    Xing, Z., Zhang, W.: Maxsolver: an efficient exact algorithm for (weighted) maximum satisfiability. Artif. Intell. 164(1–2), 47–80 (2005)MATHCrossRefMathSciNetGoogle Scholar
  31. 31.
    Zhang, L., Madigan, C.F., Moskewicz, M.W., Malik, S.: Efficient conflict driven learning in boolean satisfiability solver. In: ICCAD, pp. 279–285 (2001)Google Scholar
  32. 32.
    Zhang, L., Malik, S.: Validating SAT solvers using an independent resolution-based checker: practical implementations and other applications. In: 2003 Conference on Design, Automation and Test in Europe Conference, DATE’03, pp. 10,880–10,885. IEEE Computer Society (2003)Google Scholar

Copyright information

© Springer Science+Business Media B.V. 2010

Authors and Affiliations

  • Javier Larrosa
    • 1
  • Robert Nieuwenhuis
    • 1
  • Albert Oliveras
    • 1
  • Enric Rodríguez-Carbonell
    • 1
  1. 1.Technical Univ. of CataloniaBarcelonaSpain

Personalised recommendations