Skip to main content
Log in

The confined primal integral: a measure to benchmark heuristic MINLP solvers against global MINLP solvers

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

Abstract

It is a challenging task to fairly compare local solvers and heuristics against each other and against global solvers. How does one weigh a faster termination time against a better quality of the found solution? In this paper, we introduce the confined primal integral, a new performance measure that rewards a balance of speed and solution quality. It emphasizes the early part of the solution process by using an exponential decay. Thereby, it avoids that the order of solvers can be inverted by choosing an arbitrarily large time limit. We provide a closed analytic formula to compute the confined primal integral a posteriori and an incremental update formula to compute it during the run of an algorithm. For the latter, we show that we can drop one of the main assumptions of the primal integral, namely the knowledge of a fixed reference solution to compare against. Furthermore, we prove that the confined primal integral is a transitive measure when comparing local solves with different final solution values. Finally, we present a computational experiment where we compare a local MINLP solver that uses certain classes of cutting planes against a solver that does not. Both versions show very different tendencies w.r.t. average running time and solution quality, and we use the confined primal integral to argue which of the two is the preferred setting.

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

Similar content being viewed by others

Notes

  1. This is a slight, but common, abuse of notation. Of course, the feasible set of a convex MINLP will be nonconvex in general, due to the discrete variables.

  2. The following numbers are transcendental and have been rounded to four digits.

References

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

    Article  MathSciNet  Google Scholar 

  2. Balas, E.: Facets of the knapsack polytope. Math. Program. 8(1), 146–164 (1975)

    Article  MathSciNet  Google Scholar 

  3. Belotti, P., Berthold, T., Neves, K.: Algorithms for discrete nonlinear optimization in FICO Xpress. In: 2016 IEEE Sensor Array and Multichannel Signal Processing Workshop (SAM), pp. 1–5. IEEE (2016)

  4. Berthold, T.: Measuring the impact of primal heuristics. Oper. Res. Lett. 41(6), 611–614 (2013)

    Article  MathSciNet  Google Scholar 

  5. Berthold, T.: Heuristic Algorithms in Global MINLP Solvers. Verlag Dr, Hut Munich (2014)

    Google Scholar 

  6. Berthold, T., Farmer, J., Heinz, S., Perregaard, M.: Parallelization of the FICO xpress-optimizer. Optim. Methods Softw. 33(3), 518–529 (2018)

    Article  MathSciNet  Google Scholar 

  7. Berthold, T., Lodi, A., Salvagnin, D.: Ten years of feasibility pump, and counting. EURO J. Comput. Optim. 7(1), 1–14 (2019)

    Article  MathSciNet  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  9. Caprara, A., Fischetti, M.: \(\{\)0, 1/2\(\}\)-Chvátal–Gomory cuts. Math. Program. 74(3), 221–235 (1996)

    Article  Google Scholar 

  10. Crowder, H.P., Dembo, R.S., Mulvey, J.M.: Reporting computational experiments in mathematical programming. Math. Program. 15, 316–329 (1978)

    Article  MathSciNet  Google Scholar 

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

    Article  MathSciNet  Google Scholar 

  12. Gleixner, A., Hendel, G., Gamrath, G., Achterberg, T., Bastubbe, M., Berthold, T., Christophel, P., Jarck, K., Koch, T., Linderoth, J., et al.: MIPLIB 2017: data-driven compilation of the 6th mixed-integer programming library. Tech. rep, Technical report, Optimization Online (2019)

  13. Gomory, R.E.: Outline of an algorithm for integer solutions to linear programs and an algorithm for the mixed integer problem. In: 50 Years of Integer Programming 1958–2008, pp. 77–103. Springer (2010)

  14. Hoffman, A., Mannos, M., Sokolowsky, D., Wiegmann, N.: Computational experience in solving linear programs. J. Soc. Ind. Appl. Math. 1(1), 17–33 (1953)

    Article  MathSciNet  Google Scholar 

  15. Hooker, J.: Needed: an empirical science of algorithms. Oper. Res. 42(2), 210–212 (1993)

    Google Scholar 

  16. Jackson, R.H.F., Boggs, P.T., Nash, S.G., Powell, S.: Guidelines for reporting results of computational experiments. Report of the ad hoc committee. Math. Program. 49, 413–425 (1991)

    Article  MathSciNet  Google Scholar 

  17. McGeoch, C.C.: Toward an experimental method for algorithm simulation. INFORMS J. Comput. 8(1), 1–15 (1996)

    Article  Google Scholar 

  18. Padberg, M.W., Van Roy, T.J., Wolsey, L.A.: Valid linear inequalities for fixed charge problems. Oper. Res. 33(4), 842–861 (1985)

    Article  MathSciNet  Google Scholar 

  19. Palacios-Gomez, F., Lasdon, L., Engquist, M.: Nonlinear optimization by successive linear programming. Manag. Sci. 28(10), 1106–1120 (1982)

    Article  Google Scholar 

Download references

Acknowledgements

We would like to thank the two anonymous reviewers for their constructive feedback that improved the quality of the paper a lot.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Timo Berthold.

Additional information

Publisher's Note

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

Appendix

Appendix

Lemma 2

Consider a series \(C=\{c_1,\dots ,c_k\}\) of incumbent solutions and a new incumbent \(c_{k+1}\) with \(c_{k+1} < c_k\) being found at time \(t_{k+1}\). If \(c_{1} < 0\) (and hence all other \(c_{i} < 0\)) , then \(P^{\text {cor}}_\alpha (t_{k+1},C,\{c_{k+1}\}) = \frac{c_k}{c_{k+1}}P^{\text {obs}}_\alpha (t_{k},C) + \alpha \cdot {\tilde{t}}_{k+1} \frac{c_{k+1}-c_k}{c_{k+1}}\). If \(c_{k+1} > 0\) (and hence all other \(c_{i} > 0\)), then \(P^{\text {cor}}_\alpha (t_{k+1},C,\{c_{k+1}\}) = P^{\text {obs}}_\alpha (t_{k},C) + D(c_{k}-c_{k+1})\) with a dynamic scaling factor \(D=\alpha \sum _{i=2}^{k+1}\frac{{\tilde{t}}_i-{\tilde{t}}_{i-1}}{c_i}\).

Proof

Case 1, \(c_{1} < 0\):

$$\begin{aligned}&P^{\text {cor}}_\alpha (t_{k+1},C,\{c_{k+1}\}) \\&= {\alpha }\sum _{i = 1}^{k+1} (\exp (\nicefrac {t_{i}}{\alpha })-\exp (\nicefrac {t_{i-1}}{\alpha }))p_{\tilde{x} _{\text {opt}}}(t _{i-1})\\&= {\alpha }\Big ({\tilde{t}}_{1}+\sum _{i=2}^{k+1} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k+1}-c_{i-1}}{c_{k+1}}\Big )\\&= {\alpha }\Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k+1}-c_{i-1}}{c_{k+1}} + ({\tilde{t}}_{k+1}-{\tilde{t}}_{k})\frac{c_{k+1}-c_{k}}{c_{k+1}}\Big )\\&= {\alpha }\Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k}-c_{i-1}+c_{k+1}-c_{k}}{c_{k+1}} + ({\tilde{t}}_{k+1}-{\tilde{t}}_{k})\frac{c_{k+1}-c_{k}}{c_{k+1}}\Big )\\&= {\alpha }\Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k}-c_{i-1}}{c_{k+1}}+ \sum _{i=1}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k+1}-c_{k}}{c_{k+1}} + ({\tilde{t}}_{k+1}-{\tilde{t}}_{k})\frac{c_{k+1}-c_{k}}{c_{k+1}}\Big )\\&= {\alpha }\Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k}-c_{i-1}}{c_{k+1}}+ {\tilde{t}}_{k+1}\frac{c_{k+1}-c_{k}}{c_{k+1}}\Big )\\&= {\alpha }\frac{c_{k}}{c_{k+1}}\Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k}-c_{i-1}}{c_{k}}\Big )+ {\alpha }\cdot {\tilde{t}}_{k+1}\frac{c_{k+1}-c_{k}}{c_{k+1}}\\&= \frac{c_{k}}{c_{k+1}}P^{\text {obs}}_\alpha (t_{k},C)+ {\alpha }\cdot {\tilde{t}}_{k+1}\frac{c_{k+1}-c_{k}}{c_{k+1}} \end{aligned}$$

Case 2, \(c_{k+1} > 0\):

$$\begin{aligned} \begin{aligned}&P^{\text {cor}}_\alpha (t_{k+1},C,\{c_{k+1}\}) \\&= \alpha \Big ({\tilde{t}}_{1}+\sum _{i=2}^{k+1} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{i-1}-c_{k+1}}{c_{i-1}}\Big )\\&= \alpha \Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{i-1}-c_{k+1}}{c_{i-1}} + ({\tilde{t}}_{k+1}-{\tilde{t}}_{k})\frac{c_{k}-c_{k+1}}{c_{k}}\Big )\\&= \alpha \Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{i-1}-c_{k}+c_{k}-c_{k+1}}{c_{i-1}} + ({\tilde{t}}_{k+1}-{\tilde{t}}_{k})\frac{c_{k}-c_{k+1}}{c_{k}}\Big )\\&= \alpha \Big ({\tilde{t}}_{1}+\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{i-1}-c_{k}}{c_{i-1}}\\&+ (c_{k}-c_{k+1})\sum _{i=2}^{k} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{1}{c_{i-1}} + ({\tilde{t}}_{k+1}-{\tilde{t}}_{k})\frac{c_{k}-c_{k+1}}{c_{k}}\Big )\\&= P^{\text {obs}}_\alpha (t_{k},C) + \alpha (c_{k}-c_{k+1})\sum _{i=2}^{k+1} ({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{1}{c_{i-1}}\\ \end{aligned} \end{aligned}$$

\(\square \)

Note that in the above proof, all sums including a \(c_{k}\) start with 2, since the case \(c_0= \infty \) requires a special handling. According to Definition 2, the primal gap function is defined to be 1 in this case instead of being a difference of two objective function values divided by the larger one. Since \({\tilde{t}}_{0}=0\), the summand for \(i=0\) becomes \({\tilde{t}}_{1}\) in both cases of the proof, instead of \(({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{k+1}-c_{i-1}}{c_{k+1}}\) in Case 1 or \(({\tilde{t}}_i-{\tilde{t}}_{i-1})\frac{c_{i-1}-c_{k+1}}{c_{i-1}}\) in Case 2.

Also note that the case that the incumbent solution switches the sign during optimization allows for an easy update, too. If the new incumbent at point \(t_{k+1}\) is the first one with a negative sign, then \(P^{\text {cor}}_\alpha (T,C,\{c_{k+1}\})=t_{k+1}\). If the sign switch happens at some point \(t_i\) with \(2<i<k+1\), then the first part (until point i) of both primal integral sums is identical, and the second part (all summands greater i) can be updated as in Case 2 of the proof.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Berthold, T., Csizmadia, Z. The confined primal integral: a measure to benchmark heuristic MINLP solvers against global MINLP solvers. Math. Program. 188, 523–537 (2021). https://doi.org/10.1007/s10107-020-01547-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10107-020-01547-5

Keywords

Mathematics Subject Classification

Navigation