BDDs in a Branch and Cut Framework

  • Bernd Becker
  • Markus Behle
  • Friedrich Eisenbrand
  • Ralf Wimmer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3503)


Branch & Cut is today’s state-of-the-art method to solve 0/1-integer linear programs. Important for the success of this method is the generation of strong valid inequalities, which tighten the linear programming relaxation of 0/1-IPs and thus allow for early pruning of parts of the search tree.

In this paper we present a novel approach to generate valid inequalities for 0/1-IPs which is based on Binary Decision Diagrams (BDDs). BDDs are a datastructure which represents 0/1-vectors as paths of a certain acyclic graph. They have been successfully applied in computational logic, hardware verification and synthesis.

We implemented our BDD cutting plane generator in a branch-and-cut framework and tested it on several instances of the MAX-ONES problem and randomly generated 0/1-IPs. Our computational results show that we have developed competitive code for these problems, on which state-of-the-art MIP-solvers fall short.


Variable Order Longe Path Valid Inequality Separation Problem Linear Programming Relaxation 
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.
    Andreello, G., Caprara, A., Fischetti, M.: Embedding cuts in a branch & cut framework: A computational study with \(\{0, \frac{1}{2}\}\)-cuts. Submitted to INFORMS Journal on Computing (2003)Google Scholar
  2. 2.
    Balas, E.: Facets of the knapsack polytope. Mathematical Programming 8, 146–164 (1975)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers C-35, 677–691 (1986)CrossRefGoogle Scholar
  4. 4.
    Buro, M., Büning, H.K.: Report on a SAT competition. Bulletin of the European Association for Theoretical Computer Science 49, 143–151 (1993)zbMATHGoogle Scholar
  5. 5.
    Codato, G., Fischetti, M.: Combinatorial benders’ cuts. In: Bienstock, D., Nemhauser, G. (eds.) IPCO 2004. LNCS, vol. 3064, pp. 178–195. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  6. 6.
    Crowder, H., Johnson, E.J., Padberg, M.: Solving large-scale 0-1 linear programming problems. Operations Research 31(5), 803–834 (1983)zbMATHCrossRefGoogle Scholar
  7. 7.
    Fujii, H., Ootomo, G., Hori, C.: Interleaving based variable ordering methods for ordered binary decision diagrams. In: Proceedings of the IEEE/ACM International Conference on Computer-Aided Design, pp. 38–41 (1993)Google Scholar
  8. 8.
    Gomory, R.E.: Outline of an algorithm for integer solutions to linear programs. Bulletin of the American Mathematical Society 64, 275–278 (1958)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Grötschel, M., Lovász, L., Schrijver, A.: The ellipsoid method and its consequences in combinatorial optimization. Combinatorica 1(2), 169–197 (1981)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Grötschel, M., Lovász, L., Schrijver, A.: Geometric Algorithms and Combinatorial Optimization. Algorithms and Combinatorics, vol. 2. Springer, Heidelberg (1988)zbMATHGoogle Scholar
  11. 11.
    Hammer, P.L., Johnson, E., Peled, U.N.: Facets of regular 0-1 polytopes. Mathematical Programming 8, 179–206 (1975)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Herbstritt, M., Kmieciak, T., Becker, B.: On the impact of structural circuit partitioning on SAT-based combinational circuit verification. In: Proceedings of 5th IEEE International Workshop on Microprocessor Test and Verification, Austin, USA (2004)Google Scholar
  13. 13.
    Hooker, J.N.: Planning and scheduling by logic-based benders decomposition. Working paper (2004)Google Scholar
  14. 14.
    Hoos, H.H., Stützle, T.: SATLIB: An online resource for research on SAT. In: Gent, I.P., Walsh, T. (eds.) Satisfiability in the year 2000, pp. 283–292. IOS Press, Amsterdam (2000)Google Scholar
  15. 15.
    ILOG. CPLEX 9.0 User’s Manual and Reference Manual. S.A (2003)Google Scholar
  16. 16.
    Jünger, M., Reinelt, G., Rinaldi, G.: The traveling salesman problem. In: Handbook on Operations Research and Management Science, vol. 7, pp. 225–330. Elsevier, Amsterdam (1995)Google Scholar
  17. 17.
    Karp, R.M., Papadimitriou, C.H.: On linear characterizations of combinatorial optimization problems. In: 21st Annual Symposium on Foundations of Computer Science, pp. 1–9. IEEE, New York (1980)Google Scholar
  18. 18.
    Lai, Y.T., Pedram, M., Vrudhula, S.B.K.: FGILP: an integer linear program solver based on function graphs. In: Proceedings of the IEEE/ACM International Conference on Computer-Aided Design, pp. 685–689 (1993)Google Scholar
  19. 19.
    Lai, Y.T., Pedram, M., Vrudhula, S.B.K.: EVBDD-based algorithms for integer linear programming, spectral transformation, and functional decomposition. IEEE Trans. on Computer-Aided Design 13(8), 959–975 (1994)CrossRefGoogle Scholar
  20. 20.
    Lee, C.Y.: Representation of switching circuits by binary-decision programs. The Bell Systems Technical Journal 38, 985–999 (1959)Google Scholar
  21. 21.
    Nemhauser, G.L., Wolsey, L.A.: Integer and Combinatorial Optimization. John Wiley, Chichester (1988)zbMATHGoogle Scholar
  22. 22.
    Padberg, M.W., Rao, M.R.: The russian method for linear programming III: Bounded integer programming. Technical Report 81-39, New York University, Graduate School of Business and Administration (1981)Google Scholar
  23. 23.
    Padberg, M.W., Van Roy, T.J., Wolsey, L.A.: Valid linear inequalities for fixed charge problems. Operations Research 33(4), 842–861 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Padberg, M.W., Wolsey, L.A.: Fractional covers for forests and matchings. Mathematical Programming 29(1), 1–14 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  25. 25.
    Rudell, R.: Dynamic variable ordering for ordered binary decision diagrams. In: Proceedings of the IEEE/ACM International Conference on Computer-Aided Design, pp. 42–47 (1993)Google Scholar
  26. 26.
    Schrijver, A.: Theory of Linear and Integer Programming. John Wiley, Chichester (1986)zbMATHGoogle Scholar
  27. 27.
    Somenzi, F.: CU Decision Diagram Package Release 2.4.0. Department of Electrical and Computer Engineering, University of Colorado at Boulder (2004)Google Scholar
  28. 28.
    Wegener, I.: Branching programs and binary decision diagrams. SIAM Monographs on Discrete Mathematics and Applications. SIAM, Philadelphia (2000)zbMATHCrossRefGoogle Scholar
  29. 29.
    Wolsey, L.A.: Faces for a linear inequality in 0-1 variables. Mathematical Programming 8, 165–178 (1975)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Bernd Becker
    • 1
  • Markus Behle
    • 2
  • Friedrich Eisenbrand
    • 2
  • Ralf Wimmer
    • 1
  1. 1.Albert-Ludwigs-UniversitätFreiburg im BreisgauGermany
  2. 2.Max-Planck-Institut für InformatikSaarbrückenGermany

Personalised recommendations