Skip to main content
Log in

Minotaur: a mixed-integer nonlinear optimization toolkit

  • Full Length Paper
  • Published:
Mathematical Programming Computation Aims and scope Submit manuscript

Abstract

We present a flexible framework for general mixed-integer nonlinear programming (MINLP), called Minotaur, that enables both algorithm exploration and structure exploitation without compromising computational efficiency. This paper documents the concepts and classes in our framework and shows that our implementations of standard MINLP techniques are efficient compared with other state-of-the-art solvers. We then describe structure-exploiting extensions that we implement in our framework and demonstrate their impact on solution times. Without a flexible framework that enables structure exploitation, finding global solutions to difficult nonconvex MINLP problems will remain out of reach for many applications.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17

Similar content being viewed by others

References

  1. Abhishek, K., Leyffer, S., Linderoth, J.T.: FilMINT: an outer-approximation-based solver for nonlinear mixed integer programs. INFORMS J. Comput. 22, 555–567 (2010). https://doi.org/10.1287/ijoc.1090.0373

    Article  MathSciNet  MATH  Google Scholar 

  2. Achterberg, T.: SCIP: solving constraint integer programs. Math. Program. Comput. 1(1), 1–41 (2009)

    MathSciNet  MATH  Google Scholar 

  3. Achterberg, T., Koch, T., Martin, A.: Branching rules revisited. Oper. Res. Lett. 33, 42–54 (2004)

    MathSciNet  MATH  Google Scholar 

  4. Adjiman, C.S., Androulakis, I.P., Floudas, C.A.: A global optimization method, \(\alpha \)BB, for general twice-differentiable constrained NLPs-II. Implementation and computational results. Comput. Chem. Eng. 22, 1159–1179 (1998)

    Google Scholar 

  5. Beale, E.W.L., Tomlin, J.A.: Special facilities in a general mathematical programming system for non-convex problems using ordered sets of variables. In: Lawrence, J. (ed.) Proceedings of the 5th International Conference on Operations Research, pp. 447–454 (1969)

  6. Belotti, P.: COUENNE: A user’s manual. Technical report. Lehigh University (2009)

  7. Belotti, P., Kirches, C., Leyffer, S., Linderoth, J.T., Luedtke, J., Mahajan, A.: Mixed-integer nonlinear optimization. Acta Numer. 22, 1–131 (2013)

    MathSciNet  MATH  Google Scholar 

  8. Benson, H.Y.: Mixed integer nonlinear programming using interior point methods. Optim. Methods Softw. 26(6), 911–931 (2011)

    MathSciNet  MATH  Google Scholar 

  9. Bonami, P., Biegler, L.T., Conn, A.R., Cornuéjols, G., Grossmann, I.E., Laird, C.D., Lee, J., Lodi, A., Margot, F., Sawaya, N., Wächter, A.: An algorithmic framework for convex mixed integer nonlinear programs. Discrete Optim. 5(2), 186–204 (2008)

    MathSciNet  MATH  Google Scholar 

  10. Bonami, P., Lee, J., Leyffer, S., Wächter, A.: On branching rules for convex mixed-integer nonlinear optimization. J. Exp. Algorithm. 18, 2.6:2.1–2.6:2.31 (2013)

    MathSciNet  MATH  Google Scholar 

  11. Brooke, A., Kendrick, D., Meeraus, A., Raman, R.: GAMS, A User’s Guide. GAMS Development Corporation, Fairfax (1992)

    Google Scholar 

  12. Bussieck, M.R., Drud, A.: SBB: a new solver for mixed integer nonlinear programming. Talk, OR 2001, Section Continuous Optimization (2001)

  13. Bussieck, M.R., Drud, A., Meeraus, A.: MINLPLib—a collection of test models for mixed-integer nonlinear programming. INFORMS J. Comput. 15(1), 114–119 (2003)

    MathSciNet  MATH  Google Scholar 

  14. Byrd, R.H., Nocedal, J., Richard, W.A.: KNITRO: an integrated package for nonlinear optimization. In: Pillo, G., Roma, M. (eds.) Large-Scale Nonlinear Optimization, Volume 83 of Nonconvex Optimization and Its Applications, pp. 35–59. Springer, Berlin (2006)

    Google Scholar 

  15. Christianson, B.: Automatic Hessians by reverse accumulations. IMA J. Numer. Anal. 12(2), 135–150 (1992)

    MathSciNet  MATH  Google Scholar 

  16. CMU-IBM cyber-infrastructure for MINLP (2009). http://www.minlp.org/

  17. COIN-OR: Computational Infrastructure for Operations Research (2014). http://www.coin-or.org

  18. Dakin, R.J.: A tree search algorithm for mixed programming problems. Comput. J. 8, 250–255 (1965)

    MathSciNet  MATH  Google Scholar 

  19. Dolan, E., Moré, J.: Benchmarking optimization software with performance profiles. Math. Program. 91, 201–213 (2002)

    MathSciNet  MATH  Google Scholar 

  20. Drewes, S.: Mixed Integer Second Order Cone Programming. Ph.D. thesis. Technische Universität Darmstadt (2009)

  21. Drewes, S., Ulbrich, S.: Subgradient based outer approximation for mixed integer second order cone programming. Mixed Integer Nonlinear Programming, Volume 154 of the IMA Volumes in Mathematics and Its Applications, pp. 41–59. Springer, New York (2012)

    MATH  Google Scholar 

  22. Duran, M.A., Grossmann, I.: An outer-approximation algorithm for a class of mixed-integer nonlinear programs. Math. Program. 36, 307–339 (1986)

    MathSciNet  MATH  Google Scholar 

  23. Ferreau, H.J., Kirches, C., Potschka, A., Bock, H.G., Diehl, M.: qpOASES: a parametric active-set algorithm for quadratic programming. Math. Program. Comput. 6(4), 327–363 (2014)

    MathSciNet  MATH  Google Scholar 

  24. Fletcher, R.: User Manual for BQPD. University of Dundee, Dundee (1995)

    Google Scholar 

  25. Fletcher, R., Leyffer, S.: Solving mixed integer nonlinear programs by outer approximation. Math. Program. 66, 327–349 (1994)

    MathSciNet  MATH  Google Scholar 

  26. Fletcher, R., Leyffer, S.: User Manual for filterSQP. University of Dundee Numerical Analysis Report NA-181 (1998)

  27. Fletcher, R., Leyffer, S.: Nonlinear programming without a penalty function. Math. Program. 91, 239–270 (2002)

    MathSciNet  MATH  Google Scholar 

  28. Floudas, C.A.: Deterministic Global Optimization: Theory, Algorithms and Applications. Kluwer Academic Publishers, Dordrecht (2000)

    Google Scholar 

  29. Forrest, J.: CLP (2014). http://www.coin-or.org/

  30. Fourer, R., Gay, D.M., Kernighan, B.W.: AMPL: A Modeling Language for Mathematical Programming. The Scientific Press, Cambridge (1993)

    MATH  Google Scholar 

  31. Frangioni, A., Furini, F., Gentile, C.: Approximated perspective relaxations: a project and lift approach. Comput. Optim. Appl. 63, 705–735 (2016). https://doi.org/10.1007/s10589-015-9787-8

    Article  MathSciNet  MATH  Google Scholar 

  32. Frangioni, A., Gentile, C.: Perspective cuts for a class of convex 0–1 mixed integer programs. Math. Program. 106, 225–236 (2006)

    MathSciNet  MATH  Google Scholar 

  33. Frangioni, A., Gentile, C.: SDP diagonalizations and perspective cuts for a class of nonseparable MIQP. Oper. Res. Lett. 35, 181–185 (2007)

    MathSciNet  MATH  Google Scholar 

  34. Frangioni, A., Gentile, C.: A computational comparison of reformulations of the perspective relaxation: SOCP vs cutting planes. Oper. Res. Lett. 37(3), 206–210 (2009)

    MathSciNet  MATH  Google Scholar 

  35. Furman, K., Grossmann, I., Sawaya, N.: An exact MINLP formulation for nonlinear disjunctive programs based on the convex hull. In: Presented at the 20th International Symposium on Mathematical Programming, Chicago, IL (2009)

  36. Gay, D.M.: More AD of nonlinear AMPL models: computing Hessian information and exploiting partial separability. In: Berz, M., Bischof, C., Corliss, G., Griewank, A. (eds.) Computational Differentiation Techniques Applications and Tools. SIAM, Philadelphia (1996)

    Google Scholar 

  37. Gebremedhin, A.H., Tarafdar, A., Pothen, A., Walther, A.: Efficient computation of sparse Hessians using coloring and automatic differentiation. INFORMS J. Comput. 21(2), 209–223 (2009)

    MathSciNet  MATH  Google Scholar 

  38. Geoffrion, A.M.: Generalized Benders decomposition. J. Optim. Theory Appl. 10(4), 237–260 (1972)

    MathSciNet  MATH  Google Scholar 

  39. Gould, N., Scott, J.: A note on performance profiles for benchmarking software. ACM Trans. Math. Softw. 43(2), 1–5 (2016)

    MathSciNet  MATH  Google Scholar 

  40. Griewank, A., Walther, A.: Evaluating Derivatives Principles and Techniques of Algorithmic Differentiation, Second edn. SIAM, Philadelphia (2008)

    MATH  Google Scholar 

  41. Grossmann, I.E., Kravanja, Z.: Mixed-integer nonlinear programming: a survey of algorithms and applications. In: Conn, A.R., Biegler, L.T., Coleman, T.F., Santosa, F.N. (eds.) Large-Scale Optimization with Applications, Part II: Optimal Design and Control. Springer, New York (1997)

    Google Scholar 

  42. Günlük, O., Linderoth, J.: Perspective relaxation of mixed integer nonlinear programs with indicator variables. In: Lodi, A., Panconesi, A., Rinaldi, G. (eds.) IPCO 2008: The Thirteenth Conference on Integer Programming and Combinatorial Optimization, vol. 5035, pp. 1–16 (2008)

  43. Günlük, O., Linderoth, J.T.: Perspective relaxation of mixed integer nonlinear programs with indicator variables. Math. Program. Ser. B 104, 186–203 (2010)

    MATH  Google Scholar 

  44. Günlük, O., Linderoth, J.T.: Perspective reformulation and applications. IMA Vol. 154, 61–92 (2012)

    MathSciNet  MATH  Google Scholar 

  45. Gupta, O.K., Ravindran, A.: Branch and bound experiments in convex nonlinear integer programming. Manag. Sci. 31, 1533–1546 (1985)

    MathSciNet  MATH  Google Scholar 

  46. Gurobi Optimization, Inc. Gurobi Optimizer Reference Manual, Version 5.6 (2014)

  47. Hart, W.E., Watson, J.-P., Woodruff, D.L.: Pyomo: modeling and solving mathematical programs in Python. Math. Program. Comput. 3, 219–260 (2011)

    MathSciNet  Google Scholar 

  48. IBM Corp. IBM ILOG CPLEX V12.6: User’s Manual for CPLEX (2014)

  49. Jeroslow, R.G.: There cannot be any algorithm for integer programming with quadratic constraints. Oper. Res. 21(1), 221–224 (1973)

    MathSciNet  MATH  Google Scholar 

  50. Kannan, R., Monma, C.L.: On the computational complexity of integer programming problems. In: Henn, R., Korte, B., Oettli, W. (eds.) Optimization and Operations Research, Volume 157 of Lecture Notes in Economics and Mathematical Systems, pp. 161–172. Springer, Berlin (1978)

    Google Scholar 

  51. Land, A.H., Doig, A.G.: An automatic method for solving discrete programming problems. Econometrica 28, 497–520 (1960)

    MathSciNet  MATH  Google Scholar 

  52. Lasserre, J.: An explicit exact SDP relaxation for nonlinear 0–1 programs. In: Aardal, K., Gerards, A.M.H. (eds.) Integer Programming and Combinatorial Optimization 2001, Lecture Notes in Computer Science, vol. 2081, pp. 293–303. Springer, Berlin (2001)

    Google Scholar 

  53. Lasserre, J.: Global optimization with polynomials and the problem of moments. SIAM J. Optim. 11(3), 796–817 (2001)

    MathSciNet  MATH  Google Scholar 

  54. Laurent, M.: A comparison of the Sherali–Adams, Lovász–Schrijver, and Lasserre relaxations for 0–1 programming. Math. Oper. Res. 28(3), 470–496 (2003)

    MathSciNet  MATH  Google Scholar 

  55. Leyffer, S.: User Manual for MINLP-BB. University of Dundee, Dundee (1998)

    Google Scholar 

  56. Leyffer, S.: Mixed-Integer PDE-Constrained Optimization. Technical report. Argonne (2015)

  57. Leyffer, S., Linderoth, J.T., Luedtke, J., Miller, A., Munson T.: Applications and algorithms for mixed integer nonlinear programming. In: Journal of Physics: Conference Series, SciDAC 2009, vol. 180, pp. 012014 (2009)

  58. Mahajan, A., Leyffer, S., Kirches, C.: Solving convex mixed-integer nonlinear programs by QP-diving. Preprint ANL/MCS-P1801-101. Argonne National Laboratory (2010)

  59. Mahajan, A., Leyffer, S., Kirches, C.: Solving mixed-integer nonlinear programs by QP-diving. Preprint ANL/MCS-2071-0312. Argonne National Laboratory, Mathematics and Computer Science Division (2012)

  60. McCormick, G.P.: Computability of global solutions to factorable nonconvex programs: part I—convex underestimating problems. Math. Program. 10, 147–175 (1976)

    MATH  Google Scholar 

  61. Misener, R., Floudas, C.A.: GloMIQO: global mixed-integer quadratic optimizer. J. Glob. Optim. 5, 1–48 (2012)

    MATH  Google Scholar 

  62. Misener, R., Floudas, C.A.: ANTIGONE: algorithms for coNTinuous/integer global optimization of nonlinear equations. J. Glob. Optim. 59, 503–526 (2014)

    MathSciNet  MATH  Google Scholar 

  63. Neumaier, A.: Complete search in continuous global optimization and constraint satisfaction. Acta Numer. 13, 271–369 (2004)

    MathSciNet  MATH  Google Scholar 

  64. Nocedal, J., Wright, S.J.: Numerical Optimization. Springer, New York (1999)

    MATH  Google Scholar 

  65. Quesada, I., Grossmann, I.E.: An LP/NLP based branch-and-bound algorithm for convex MINLP optimization problems. Comput. Chem. Eng. 16, 937–947 (1992)

    Google Scholar 

  66. Ryoo, H.S., Sahinidis, N.V.: Global optimization of nonconvex NLPs and MINLPs with applications in process design. Comput. Chem. Eng. 19, 552–566 (1995)

    Google Scholar 

  67. Sahinidis, N.V.: BARON: a general purpose global optimization software package. J. Glob. Optim. 8, 201–205 (1996)

    MathSciNet  MATH  Google Scholar 

  68. Savelsbergh, M.W.P.: Preprocessing and probing techniques for mixed integer programming problems. ORSA J. Comput. 6, 445–454 (1994)

    MathSciNet  MATH  Google Scholar 

  69. Schichl, H.: Global optimization in the COCONUT project. In: Alt, R., Frommer, A., Baker Kearfott, R., Luther, W. (eds.) Numerical Software with Result Verification, Volume 2991 of Lecture Notes in Computer Science, pp. 243–249. Springer, Berlin (2004)

    Google Scholar 

  70. Still, C., Westerlund, T.: Solving convex MINLP optimization problems using a sequential cutting plane algorithm. Comput. Optim. Appl. 34(1), 63–83 (2006)

    MathSciNet  MATH  Google Scholar 

  71. Tawarmalani, M., Sahinidis, N.V.: Convexification and Global Optimization in Continuous and Mixed-Integer Nonlinear Programming: Theory, Algorithms, Software, and Applications. Kluwer Academic Publishers, Boston (2002)

    MATH  Google Scholar 

  72. Van Roy, T.J.: Cross decomposition for mixed integer programming. Math. Program. 25, 145–163 (1983)

    MathSciNet  Google Scholar 

  73. Vigerske, S.: MINLPLib 2. In: Proceedings of the XII Global Optimization Workshop: Mathematical and Applied Global Optimization, pp. 137–140 (2014)

  74. Vigerske, S., Gleixner, A.: SCIP: global optimization of mixed-integer nonlinear programs in a branch-and-cut framework. Optim. Methods Softw. 33(3), 563–593 (2018). https://doi.org/10.1080/10556788.2017.1335312

    Article  MathSciNet  MATH  Google Scholar 

  75. Viswanathan, J., Grossmann, I.E.: A combined penalty function and outer-approximation method for MINLP optimization. Comput. Chem. Eng. 14(7), 769–782 (1990)

    Google Scholar 

  76. Wächter, A., Biegler, L.T.: On the implementation of a primal-dual interior point filter line search algorithm for large-scale nonlinear programming. Math. Program. 106(1), 25–57 (2006)

    MathSciNet  MATH  Google Scholar 

  77. Westerlund, T., Lundqvist, K.: Alpha-ECP, version 5.01: an interactive MINLP-solver based on the extended cutting plane method. Technical Report 01-178-A. Process Design Laboratory at Åbo University (2001)

  78. Westerlund, T., Pettersson, F.: A cutting plane method for solving convex MINLP problems. Comput. Chem. Eng. 19, 131–136 (1995)

    Google Scholar 

  79. Ziena Optimization. KNITRO Documentation (2012)

Download references

Acknowledgements

This material is based upon work supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research, under contract DE-AC02-06CH11357. This work was also supported by the U.S. Department of Energy under Grant DE-FG02-05ER25694.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ashutosh Mahajan.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mahajan, A., Leyffer, S., Linderoth, J. et al. Minotaur: a mixed-integer nonlinear optimization toolkit. Math. Prog. Comp. 13, 301–338 (2021). https://doi.org/10.1007/s12532-020-00196-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12532-020-00196-1

Keywords

Mathematics Subject Classification

Navigation