pp 1–24 | Cite as

Integrated integer programming and decision diagram search tree with an application to the maximum independent set problem

  • Jaime E. GonzálezEmail author
  • Andre A. Cire
  • Andrea Lodi
  • Louis-Martin Rousseau


We propose an optimization framework which integrates decision diagrams (DDs) and integer linear programming (ILP) to solve combinatorial optimization problems. The hybrid DD-ILP approach explores the solution space based on a recursive compilation of relaxed DDs and incorporates ILP calls to solve subproblems associated with DD nodes. The selection of DD nodes to be explored by ILP technology is a significant component of the approach. We show how supervised machine learning can be useful to detect, on-the-fly, a subproblem structure for ILP technology. We use the maximum independent set problem as a case study. Computational experiments show that, in presence of suitable problem structure, the integrated DD-ILP approach can exploit complementary strengths and improve upon the performance of both a stand-alone DD solver and an ILP solver in terms of solution time and number of solved instances.


Decision diagrams Integrated methods Integer linear programming Hybrid optimization Supervised learning 



We thank the anonymous referees for providing thoughtful, constructive and detailed comments which helped to improve this work.


  1. 1.
    Akers, S. (1978). Binary decision diagrams. IEEE Transactions on Computers, C-27(6), 509–516. Scholar
  2. 2.
    Andersen, H.R., Hadzic, T., Hooker, J.N., Tiedemann, P. (2007). A constraint store based on multivalued decision diagrams. In Bessière, C. (Ed.) Principles and practice of constraint programming – CP 2007: 13th international conference, CP 2007, Providence, RI, USA, September 23-27, 2007. Proceedings (pp. 118–132). Berlin: Springer.Google Scholar
  3. 3.
    Barabási, A.L., & Albert, R. (1999). Emergence of scaling in random networks. Science, 286(5439), 509–512. Scholar
  4. 4.
    Bengio, Y., Lodi, A., Prouvost, A. (2018). Machine learning for combinatorial optimization: a methodological tour d’horizon. arXiv:1811.06128.
  5. 5.
    Bergman, D., & Cire, A.A. (2018). Discrete nonlinear optimization by state-space decompositions. Management Science, 64(10), 4700–4720. Scholar
  6. 6.
    Bergman, D., Cire, A.A., van Hoeve, W.J., Hooker, J. (2014). Optimization bounds from binary decision diagrams. INFORMS Journal on Computing, 26(2), 253–268. Scholar
  7. 7.
    Bergman, D., Cire, A.A., van Hoeve, W.J., Hooker, J. (2016). Discrete optimization with decision diagrams. INFORMS Journal on Computing, 28(1), 47–66. Scholar
  8. 8.
    Bergman, D., Cire, A.A., van Hoeve, W.J., Hooker, J.N. (2012). Variable ordering for the application of BDDs to the maximum independent set problem. In Beldiceanu, N., Jussien, N., Pinson, É. (Eds.) Integration of AI and OR techniques in contraint programming for combinatorial optimzation problems (pp. 34–49). Berlin: Springer.CrossRefGoogle Scholar
  9. 9.
    Bergman, D., Cire, A.A., van Hoeve, W.J., Yunes, T. (2014). Bdd-based heuristics for binary optimization. Journal of Heuristics, 20(2), 211–234. Scholar
  10. 10.
    Bergman, D., Cire, A.A., Hoeve, W.J.v., Hooker, J. (2016). Decision diagrams for optimization, 1st edn. Springer Publishing Company, Incorporated.Google Scholar
  11. 11.
    Bonami, P., Lodi, A., Zarpellon, G. (2018). Learning a classification of mixed-integer quadratic programming problems. In van Hoeve, W.J. (Ed.) Integration of constraint programming, artificial intelligence, and operations research (pp. 595–604). Cham: Springer International Publishing.CrossRefGoogle Scholar
  12. 12.
    Breiman, L. (2001). Random forests. Machine Learning, 45(1), 5–32. Scholar
  13. 13.
    Bryant, R.E. (1986). Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers, C-35(8), 677–691. Scholar
  14. 14.
    Cire, A.A., & van Hoeve, W.J. (2013). Multivalued decision diagrams for sequencing problems. Operations Research, 61(6), 1411–1428.MathSciNetCrossRefGoogle Scholar
  15. 15.
    Cortes, C., & Vapnik, V. (1995). Support-vector networks. Machine Learning, 20(3), 273–297. Scholar
  16. 16.
    Cortés, C.E., Gendreau, M., Rousseau, L.M., Souyris, S., Weintraub, A. (2014). Branch-and-price and constraint programming for solving a real-life technician dispatching problem. European Journal of Operational Research, 238(1), 300–312. Scholar
  17. 17.
    Easton, K., Nemhauser, G., Trick, M. (2004). CP based branch-and-price, (pp. 207–231). Boston: Springer.zbMATHGoogle Scholar
  18. 18.
    Erdös, P., & Rényi, A. (1960). On the evolution of random graphs. In Publications of the mathematical institute of the Hungarian academy of sciences, (Vol. 5 pp. 17–61).Google Scholar
  19. 19.
    Grötschel, M., Lovász, L., Schrijver, A. (1988). Stable sets in graphs, (pp. 272–303). Berlin: Springer.Google Scholar
  20. 20.
    Holme, P., & Kim, B.J. (2002). Growing scale-free networks with tunable clustering. Physical Review E, 65(026107).
  21. 21.
    Hooker, J.N., & van Hoeve, W.J. (2018). Constraint programming and operations research. Constraints, 23(2), 172–195. Scholar
  22. 22.
    Hooker, J.N. (2007). Planning and scheduling by logic-based Benders decomposition. Operations Research, 55(3), 588–602.MathSciNetCrossRefGoogle Scholar
  23. 23.
    Hooker, J.N. (2012). Integrated methods for optimization. Boston: Springer.CrossRefGoogle Scholar
  24. 24.
    Khalil, E.B., Dilkina, B., Nemhauser, G.L., Ahmed, S., Shao, Y. (2017). Learning to run heuristics in tree search. In Proceedings of the twenty-sixth international joint conference on artificial intelligence, IJCAI-17 (pp. 659–666), DOI, (to appear in print).
  25. 25.
    Kinable, J., Cire, A.A., van Hoeve, W.J. (2017). Hybrid optimization methods for time-dependent sequencing problems. European Journal of Operational Research, 259(3), 887–897. Scholar
  26. 26.
    Lee, C. (1959). Representation of switching circuits by binary-decision programs. The Bell System Technical Journal, 38(4), 985–999. Scholar
  27. 27.
    Lodi, A., & Tramontani, A. (2014). Performance variability in mixed-integer programming. In Theory driven by influential applications (pp. 1–12): INFORMS, DOI, (to appear in print).Google Scholar
  28. 28.
    Lozano, L., & Smith, J.C. (2018). A binary decision diagram based algorithm for solving a class of binary two-stage stochastic programs. Mathematical Programming, 1–24.
  29. 29.
    Morrison, D.R., Sewell, E.C., Jacobson, S.H. (2016). Solving the pricing problem in a branch-and-price algorithm for graph coloring using zero-suppressed binary decision diagrams. INFORMS Journal on Computing, 28 (1), 67–82. Scholar
  30. 30.
    Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., Duchesnay, E. (2011). Scikit-learn: machine learning in Python. Journal of Machine Learning Research, 12, 2825–2830. Scholar
  31. 31.
    Tjandraatmadja, C., & van Hoeve, W.J. (2019). Target cuts from relaxed decision diagrams. INFORMS Journal on Computing, 31(2), 285–301. Scholar
  32. 32.
    Watts, D.J., & Strogatz, S.H. (1998). Collective dynamics of ’small-world’ networks. Nature, 393, 440–442. Scholar
  33. 33.
    Xu, L., Hutter, F., Hoos, H.H., Leyton-Brown, K. (2008). SATzilla: portfolio-based algorithm selection for SAT. Journal of Artificial Intelligence Research, 32(1), 565–606. Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2020

Authors and Affiliations

  1. 1.Department of Mathematics and Industrial EngineeringPolytechnique MontréalMontréalCanada
  2. 2.Department of ManagementUniversity of Toronto ScarboroughTorontoCanada

Personalised recommendations