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.
Similar content being viewed by others
Notes
Alternatively, we could recompute the reference solution to obtain values within the current bounds.
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].
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.
The source code is publicly available within SCIP 2.1.1 and can be found at [47].
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.
For one instance, the feasibility status had not been decided within 500 nodes.
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
Achterberg, T.: Conflict analysis in mixed integer programming. Discret. Optim. 4(1), 4–20 (2007). doi:10.1016/j.disopt.2006.10.006
Achterberg, T.: Constraint Integer Programming. Ph.D. thesis, Technische Universität Berlin (2007). http://vs24.kobv.de/opus4-zib/frontdoor/index/index/docId/1018
Achterberg, T.: SCIP: solving constraint integer programs. Math. Program. Comput. 1(1), 1–41 (2009). doi:10.1007/s12532-008-0001-1
Achterberg, T., Berthold, T.: Improving the feasibility pump. Discret. Optim. 4(1), 77–86 (2007). doi:10.1016/j.disopt.2006.10.004
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
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
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
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
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
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)
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
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
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
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
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
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
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
Dinur, I., Safra, S.: On the hardness of approximating vertex cover. Ann. Math. 162, 439–485 (2005). doi:10.4007/annals.2005.162.439
Fischetti, M., Glover, F., Lodi, A.: The feasibility pump. Math. Program. 104(1), 91–104 (2005). doi:10.1007/s10107-004-0570-3
Fischetti, M., Lodi, A.: Local branching. Math. Program. 98(1–3), 23–47 (2003). doi:10.1007/s10107-003-0395-5
Fischetti, M., Salvagnin, D.: Feasibility Pump 2.0. Math. Program. Comput. 1(2–3), 201–222 (2009). doi:10.1007/s12532-009-0007-3
Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., New York (1979)
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
Griewank, A., Walther, A.: Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation. Society for Industrial and Applied Mathematics (2008)
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
Hansen, P., Jaumard, B.: Reduction of indefinite quadratic programs to bilinear programs. J. Glob. Optim. 2(1), 41–60 (1992). doi:10.1007/BF00121301
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
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
Konno, H.: A cutting plane algorithm for solving bilinear programs. Math. Program. 11, 14–27 (1976). doi:10.1007/BF01580367
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
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
Lin, Y., Schrage, L.: The global solver in the LINDO API. Optim. Methods Softw. 24(4–5), 657–668 (2009). doi:10.1080/10556780902753221
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
Misener, R., Floudas, C.A.: GloMIQO: Global mixed-integer quadratic optimizer. J. Glob. Optim. (2012). Online publication. doi:10.1007/s10898-012-9874-7
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
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
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
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
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)
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
CppAD. A Package for Differentiation of C++ Algorithms. http://www.coin-or.org/CppAD
GloMIQO 2.0. http://helios.princeton.edu/GloMIQO/
IBM, ILOG CPLEX Optimizer. http://www.cplex.com
LindoGlobal. Lindo Systems, Inc. http://www.lindo.com
MINOTAUR: a toolkit for MINLP. http://wiki.mcs.anl.gov/minotaur
SBB. ARKI Consulting & Development A/S and GAMS Inc. http://www.gams.com/solvers/solvers.htm#SBB
SCIP. Solving Constraint Integer Programs. http://scip.zib.de
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
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10107-013-0635-2
Keywords
- Primal heuristic
- Mixed-integer nonlinear programming
- Large neighborhood search
- Mixed-integer quadratically constrained programming
- Nonconvex optimization