Skip to main content
Log in

Undercover: a primal MINLP heuristic exploring a largest sub-MIP

  • Full Length Paper
  • Series A
  • Published:
Mathematical Programming Submit manuscript

Abstract

We present Undercover, a primal heuristic for nonconvex mixed-integer nonlinear programs (MINLPs) that explores a mixed-integer linear subproblem (sub-MIP) of a given MINLP. We solve a vertex covering problem to identify a smallest set of variables to fix, a so-called cover, such that each constraint is linearized. Subsequently, these variables are fixed to values obtained from a reference point, e.g., an optimal solution of a linear relaxation. Each feasible solution of the sub-MIP corresponds to a feasible solution of the original problem. We apply domain propagation to try to avoid infeasibilities, and conflict analysis to learn additional constraints from infeasibilities that are nonetheless encountered. We present computational results on a test set of mixed-integer quadratically constrained programs (MIQCPs) and MINLPs. It turns out that the majority of these instances allows for small covers. Although general in nature, we show that the heuristic is most successful on MIQCPs. It nicely complements existing root-node heuristics in different state-of-the-art solvers and helps to significantly improve the overall performance of the MINLP solver SCIP.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Notes

  1. Alternatively, we could recompute the reference solution to obtain values within the current bounds.

  2. If we want to apply Undercover more aggressively, we can try to recover from infeasibility by reordering the fixing sequence, e.g., such that the variable for which the fixing failed will be the first one in the reordered sequence. This is a simple version of a restarting mechanism. Restarting techniques are commonly used in solving SAT problems [35].

  3. If we want to apply Undercover aggressively and allow for solving the covering problem multiple times, the following two strategies can be used. First, during the fix-and-propagate routine, variables outside the precomputed cover may be fixed simultaneously. In this case, the fixing of some of the yet unfixed variables in the cover might become redundant. Recomputing the cover with \(\alpha _i = 1\) for all \(i\) with local bounds \(\hat{L}_i = \hat{U}_i\) may yield a smaller number of remaining variable fixings. Second, if no feasible fixings for the cover variables in \(\mathcal C \) are found, we can solve the covering problem again with an additional cutoff constraint \(\sum _{i\in \mathcal C } (1 - \alpha _i) + \sum _{i\not \in \mathcal C } \alpha _i \ge 1\) and try once more. However, both techniques appear to be computationally too expensive for the standard setting that we explored in our computational experiments.

  4. The source code is publicly available within SCIP  2.1.1 and can be found at [47].

  5. With a stall node limit, we terminate if no improving solutions are found within a certain number of branch-and-bound nodes after the discovery of the current incumbent.

  6. For one instance, the feasibility status had not been decided within 500 nodes.

  7. A primal cutoff is an upper bound on the objective function that results in branch-and-bound nodes with worse dual bound not being explored.

References

  1. Achterberg, T.: Conflict analysis in mixed integer programming. Discret. Optim. 4(1), 4–20 (2007). doi:10.1016/j.disopt.2006.10.006

    Article  MATH  MathSciNet  Google Scholar 

  2. Achterberg, T.: Constraint Integer Programming. Ph.D. thesis, Technische Universität Berlin (2007). http://vs24.kobv.de/opus4-zib/frontdoor/index/index/docId/1018

  3. Achterberg, T.: SCIP: solving constraint integer programs. Math. Program. Comput. 1(1), 1–41 (2009). doi:10.1007/s12532-008-0001-1

  4. Achterberg, T., Berthold, T.: Improving the feasibility pump. Discret. Optim. 4(1), 77–86 (2007). doi:10.1016/j.disopt.2006.10.004

    Article  MATH  MathSciNet  Google Scholar 

  5. Belotti, P., Lee, J., Liberti, L., Margot, F., Wächter, A.: Branching and bounds tightening techniques for non-convex MINLP. Optim. Methods Softw. 24, 597–634 (2009). doi:10.1080/10556780903087124

    Google Scholar 

  6. Berthold, T.: Primal Heuristics for Mixed Integer Programs. Diploma thesis, Technische Universität Berlin (2006). http://vs24.kobv.de/opus4-zib/frontdoor/index/index/docId/1029

  7. Berthold, T.: RENS–the Optimal Rounding. ZIB-Report 12–17, Zuse Institute Berlin (2012). http://vs24.kobv.de/opus4-zib/frontdoor/index/index/docId/1520

  8. Berthold, T., Heinz, S., Pfetsch, M.E., Vigerske, S.: Large neighborhood search beyond MIP. In: Gaspero, L.D., Schaerf, A., Stützle, T. (eds.) Proceedings of the 9th Metaheuristics International Conference (MIC 2011), pp. 51–60 (2011). Available as Matheon Preprint # 856. urn:nbn:de:0296-matheon-9752

  9. Berthold, T., Heinz, S., Vigerske, S.: Extending a CIP framework to solve MIQCPs. In: Lee, J., Leyffer, S. (eds.) Mixed Integer Nonlinear Programming, The IMA Volumes in Mathematics and its Applications, vol. 154, pp. 427–444. Springer (2011). doi:10.1007/978-1-4614-1927-3_15

  10. Bixby, R., Fenelon, M., Gu, Z., Rothberg, E., Wunderling, R.: MIP: Theory and practice–closing the gap. In: Powell, M., Scholtes, S. (eds.) Systems Modelling and Optimization: Methods, Theory, and Applications, pp. 19–49. Kluwer, Dordrecht (2000)

  11. 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. Discret. Optim. 5, 186–204 (2008). doi:10.1016/j.disopt.2006.10.011

    Article  MATH  Google Scholar 

  12. Bonami, P., Cornuéjols, G., Lodi, A., Margot, F.: A feasibility pump for mixed integer nonlinear programs. Math. Program. 119(2), 331–352 (2009). doi:10.1007/s10107-008-0212-2

    Article  MATH  MathSciNet  Google Scholar 

  13. Bonami, P., Gonçalves, J.: Heuristics for convex mixed integer nonlinear programs. Comput. Optim. Appl. 51, 729–747 (2012). doi:10.1007/s10589-010-9350-6

    Article  MATH  MathSciNet  Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  15. Bussieck, M.R., Vigerske, S.: MINLP solver software. In: Cochran, J.J., Cox, L.A., Keskinocak, P., Kharoufeh, J.P., Smith, J.C. (eds.) Wiley Encyclopedia of Operations Research and Management Science. Wiley, London (2010). Online publication. doi:10.1002/9780470400531.eorms0527

  16. D’Ambrosio, C., Frangioni, A., Liberti, L., Lodi, A.: Experiments with a feasibility pump approach for nonconvex MINLPs. In: Festa, P. (ed.) Experimental Algorithms, Lecture Notes in Computer Science, vol. 6049, pp. 350–360. Springer, Berlin (2010). doi:10.1007/978-3-642-13193-6_30

  17. Danna, E., Rothberg, E., Pape, C.L.: Exploring relaxation induced neighborhoods to improve MIP solutions. Math. Program. 102(1), 71–90 (2004). doi:10.1007/s10107-004-0518-7

    Article  Google Scholar 

  18. Dinur, I., Safra, S.: On the hardness of approximating vertex cover. Ann. Math. 162, 439–485 (2005). doi:10.4007/annals.2005.162.439

    Article  MATH  MathSciNet  Google Scholar 

  19. Fischetti, M., Glover, F., Lodi, A.: The feasibility pump. Math. Program. 104(1), 91–104 (2005). doi:10.1007/s10107-004-0570-3

    Article  MATH  MathSciNet  Google Scholar 

  20. Fischetti, M., Lodi, A.: Local branching. Math. Program. 98(1–3), 23–47 (2003). doi:10.1007/s10107-003-0395-5

    Article  MATH  MathSciNet  Google Scholar 

  21. Fischetti, M., Salvagnin, D.: Feasibility Pump 2.0. Math. Program. Comput. 1(2–3), 201–222 (2009). doi:10.1007/s12532-009-0007-3

  22. Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., New York (1979)

    MATH  Google Scholar 

  23. Ghosh, S.: DINS, a MIP improvement heuristic. In: Fischetti, M., Williamson, D.P. (eds.) Integer Programming and Combinatorial Optimization, Proceedings of the 12th International IPCO Conference, LNCS, vol. 4513, pp. 310–323. Springer, Berlin (2007). doi:10.1007/978-3-540-72792-7_24

  24. Griewank, A., Walther, A.: Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation. Society for Industrial and Applied Mathematics (2008)

  25. Halperin, E.: Improved approximation algorithms for the vertex cover problem in graphs and hypergraphs. SIAM J. Comput. 31, 1608–1623 (2002). doi:10.1137/S0097539700381097

    Article  MATH  MathSciNet  Google Scholar 

  26. Hansen, P., Jaumard, B.: Reduction of indefinite quadratic programs to bilinear programs. J. Glob. Optim. 2(1), 41–60 (1992). doi:10.1007/BF00121301

    Article  MATH  MathSciNet  Google Scholar 

  27. Karakostas, G.: A better approximation ratio for the vertex cover problem. ACM Trans. Algorithms, 5, 41:1–41:8 (2009). doi:10.1145/1597036.1597045

    Google Scholar 

  28. Khot, S., Regev, O.: Vertex cover might be hard to approximate to within \(2-\epsilon \). J. Comput. Syst. Sci. 74(3), 335–349 (2008). doi: 10.1016/j.jcss.2007.06.019

    Article  MATH  MathSciNet  Google Scholar 

  29. Konno, H.: A cutting plane algorithm for solving bilinear programs. Math. Program. 11, 14–27 (1976). doi:10.1007/BF01580367

    Article  MATH  MathSciNet  Google Scholar 

  30. Land, A.H., Doig, A.G.: An automatic method of solving discrete programming problems. Econometrica, 28(3), 497–520 (1960). http://www.jstor.org/stable/1910129

    Google Scholar 

  31. Liberti, L., Mladenović, N., Nannicini, G.: A recipe for finding good solutions to MINLPs. Math. Program. Comput. 3, 349–390 (2011). doi:10.1007/s12532-011-0031-y

    Article  MATH  MathSciNet  Google Scholar 

  32. Lin, Y., Schrage, L.: The global solver in the LINDO API. Optim. Methods Softw. 24(4–5), 657–668 (2009). doi:10.1080/10556780902753221

    Article  MATH  MathSciNet  Google Scholar 

  33. Misener, R., Floudas, C.A.: Global Optimization of Mixed-Integer Quadratically-Constrained Quadratic Programs (MIQCQP) Through Piecewise-Linear and Edge-Concave Relaxations. Mathematical Programming (2012). Online publication. doi:10.1007/s10107-012-0555-6

  34. Misener, R., Floudas, C.A.: GloMIQO: Global mixed-integer quadratic optimizer. J. Glob. Optim. (2012). Online publication. doi:10.1007/s10898-012-9874-7

  35. Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., Malik, S.: Chaff: engineering an efficient SAT solver. In: Proceedings of the 38th Annual Design Automation Conference (DAC ’01), pp. 530–535 (2001). doi:10.1145/378239.379017

  36. Nannicini, G., Belotti, P.: Rounding-based heuristics for nonconvex MINLPs. Math. Program. Comput. 4(1), 1–31 (2012). doi:10.1007/s12532-011-0032-x

    Article  MATH  MathSciNet  Google Scholar 

  37. Nannicini, G., Belotti, P., Liberti, L.: A local branching heuristic for MINLPs. ArXiv e-print 0812.2188, Cornell University (2008). http://arxiv.org/abs/0812.2188

  38. Tawarmalani, M., Sahinidis, N.V.: Global optimization of mixed-integer nonlinear programs: a theoretical and computational study. Math. Program. 99, 563–591 (2004). doi:10.1007/s10107-003-0467-6

    Article  MATH  MathSciNet  Google Scholar 

  39. Vigerske, S.: Decomposition in Multistage Stochastic Programming and a Constraint Integer Programming Approach to Mixed-Integer Nonlinear Programming. Ph.D. thesis, Humboldt-Universität zu Berlin (2012) (to appear)

  40. 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). doi:10.1007/s10107-004-0559-y

    Article  MATH  MathSciNet  Google Scholar 

  41. CppAD. A Package for Differentiation of C++ Algorithms. http://www.coin-or.org/CppAD

  42. GloMIQO 2.0. http://helios.princeton.edu/GloMIQO/

  43. IBM, ILOG CPLEX Optimizer. http://www.cplex.com

  44. LindoGlobal. Lindo Systems, Inc. http://www.lindo.com

  45. MINOTAUR: a toolkit for MINLP. http://wiki.mcs.anl.gov/minotaur

  46. SBB. ARKI Consulting & Development A/S and GAMS Inc. http://www.gams.com/solvers/solvers.htm#SBB

  47. SCIP. Solving Constraint Integer Programs. http://scip.zib.de

Download references

Acknowledgments

Many thanks to Tobias Achterberg, J. Christopher Beck, Christina Burt, Angela Glover, Stefan Vigerske, the associate editor, and two anonymous reviewers for their valuable comments. This research has been supported by the DFG Research Center Matheon Mathematics for key technologies in Berlin, http://www.matheon.de.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Timo Berthold.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Berthold, T., Gleixner, A.M. Undercover: a primal MINLP heuristic exploring a largest sub-MIP. Math. Program. 144, 315–346 (2014). https://doi.org/10.1007/s10107-013-0635-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10107-013-0635-2

Keywords

Mathematics Subject Classification (2000)

Navigation