UNIVERSITE´ PARIS 13 LABORATOIRE D’INFORMATIQUE DE PARIS NORD
HABILITATION A` DIRIGER DES RECHERCHES
specialit´ e´ SCIENCES (Informatique)
par
Claudia D’Ambrosio
Solving well-structured MINLP problems
Jury:
Emilio Carrizosa Universidad de Sevilla Rapporteur Sourour Elloumi Ecole´ Nationale Superieure´ de Examinateur Techniques Avancees´ Ignacio Grossmann Carnegie Mellon University Rapporteur Jean-Bernard Lasserre CNRS-LAAS Examinateur Ruth Misener Imperial College London Rapporteur Fred´ eric´ Roupin Universite´ Paris 13 Parrain Roberto Wolfler Calvo Universite´ Paris 13 Parrain
Contents
Acknowledgments iii
Keywordsv
Preface vii
I Curriculum Vitae1
II Research Summary 23
1 Introduction to MINLP Problems and Methods 25 1.1 Modeling problems by Mathematical Programming...... 26 1.1.1 Reformulations...... 26 1.1.2 Relaxations...... 27 1.1.3 Approximations...... 27 1.1.4 Solution methods...... 28 1.2 Mixed Integer Linear Programming Technology...... 29 1.3 Non Linear Programming Technology...... 30 1.4 Mixed Integer Non Linear Programming Technology...... 30
2 Exact Methods for MINLP problems 35 2.1 Methods based on strengthening of classic relaxations...... 35 2.1.1 Euclidean Steiner Tree...... 36 2.1.2 The pooling problem and its variant with binary variables..... 38 2.2 On Separable Functions...... 41 2.2.1 SC-MINLP...... 42 2.2.2 Polyopt...... 45
3 Heuristic Methods 47 3.1 General methods...... 47 47subsection.3.1.1
i ii CONTENTS
3.1.2 Optimistic approximation...... 49 3.2 Tailored methods...... 51 3.2.1 Non linear Knapsack Problem...... 51
4 Other contributions 53 4.1 Feasibility issues on Hydro Unit Commitment...... 53 4.2 MILP models for the selection of a small set of well-distributed points... 54 4.3 Well placement in reservoir engineering...... 54 4.4 A heuristic for multiobjective convex MINLPs...... 55 4.5 Bilevel programming and smart grids...... 55 4.6 Feasibility Pump for aircraft deconfliction problems...... 56 4.7 On the Product Knapsack Problem...... 56 4.8 Learning to Solve Hydro Unit Commitment Problems in France...... 57
5 Conclusions and Future Research 59
Bibliography 61
A Selected Publications 67 Acknowledgments
The road that brought me here was long. The more I think about when my passion to Optimization started, the more I’m convinced that it dates back to when I was a third- year bachelor student at University of Bologna. One of the optional classes I choose and attended was Practical Tools for Optimization taught by Professor Andrea Lodi: besides a natural inclination for the topic, the enthusiasm of Andrea was so captivating that for the Master I choose all the classes on Optimization that were offered and a Master Thesis on mixed integer non linear optimization, a topic I got immediately addicted to. In 2006 I started my Ph.D. at University of Bologna where the O.R. group welcomed me warmly from the very beginning. I deeply thank all the members of this wonderful group, with a special thought to Andrea who, as Ph.D. advisor, was and is an inspiration to me. Back in 2007 I had the chance to spend my summer working as intern at the IBM T.J. Watson Research Center: Jon Lee and Andreas Wachter¨ were great manager and tutor, respectively, and all the colleagues at IBM helped to make it a great experience. Then in 2010 I got a post-doc position at University of Wisconsin-Madison and I had the chance to be supervised by Jeff Linderoth and Jim Luedtke. I learned a lot in 6 months and the festive environment made me enjoy very much my Mid-West experience. Thanks also to all the students of the group who were lovely officemates. In October 2011 I moved to France to join the CNRS family and, in particular, I was affiliated to the SYSMO team at LIX, Ecole´ Polytechnique. Among the SYSMO mem- bers, I would like to thank, in particular, Leo Liberti who’s a precious colleague and friend, Evelyne Rayssac who helps me a lot since the very first moment to survive to the crazy bu- reaucracy, the former and current Ph.D. student Claire Lizon, Youcef Sahraoui, Luca Men- carelli, Vy Khac Ky, Gustavo Dias, Oliver Wang, Kostas Tavlaridis-Gyparakis, Gabriele Iommazzo, and the former and current post-docs Sonia Toubaline, Pierre-Louis Poirion, and Dimitri Thomopulos. Moreover, I would like to thank Fabio Roda and Sylvie Tonda who worked and works hard to convince industries about the importance of Optimization. Earlier this year the SYSMO team gave way to the DASCIM team and I thank Michalis Vazirgiannis who took the lead of such challenging project. I hope we have several years of fruitful collaborations ahead. I started discussing about this HDR with Roberto Wolfler-Calvo and Frederic Roupin several years ago, maybe 5 years ago. They immediately accepted to be my tutors and
iii iv ACKNOWLEDGMENTS were kind enough to wait 5 years to make this happen. Thanks a lot for your help and support, it was really precious to me the fact that you did not put pressure on me to finish this when I needed to focus on something else but you did when I needed to finalize the manuscript. I warmly thank also the other members of the HDR, namely the “rapporteurs” Emilio Carrizosa, Ignacio Grossmann, and Ruth Misener, and the “examinateurs” Sourour Elloumi and Jean Bernard Lasserre. It is really an honor to have them in my HDR jury. I made a huge step forward with the writing of this HDR at the end of 2015 when I spent 3 months in Montreal.´ Andrea Lodi invited me to visit him and gave me the opportunity to work in the dynamic environment of GERAD and CIRRELT. I would like to thank him together with all the GERAD and CIRRELT members, in particular Miguel Anjos and Zhao Sun, fantastic collaborators, and Marta Pascoal, with who I shared the office, lunches, and lovely times. I also would like to thank Sonia Vanier & the equipe´ SAMM of Universite´ Paris 1 who was so kind to host me when I had to “hide” to focus on finalizing this manuscript: the nice desk with a view on Paris, the enjoyable coffee break with plenty of chocolate and laughs, and your hospitality helped me a lot to achieve the end of this manuscript writing. During the last ten years I had the chance to meet and collaborate with several col- leagues, each of which taught me a lot and make me enjoy my work. I thank all the co-authors of the works presented in this manuscript and of all my on-going projects: it is also thanks to you that I am still passionate about research! Last but not least, I need to devote a special thought to my parents, my sister, my friends, and, in particular, to Alessandro who supported me constantly and with a unique patience during the last 9 years. I’m really lucky and grateful for having such a generous and understanding husband.
Paris, 2018 Claudia D’Ambrosio Keywords
Mixed integer non linear programming
Non convex problems
Well-structured problems
Real-world applications
Modeling
v vi Keywords Preface
This manuscript summarizes the main research topics I have been working on since my Ph.D. at University of Bologna (Italy). The broader common topic is mixed integer non linear programming (MINLP) problems, i.e., optimization problems in which both contin- uous and integer decision variables are present and, in general, non linear functions define the objective to minimize and the constraints to satisfy. In this context, I have been working both on theoretical aspects and real-world applica- tions. All the research performed aims at solving a class of MINLP problems by exploring and exploiting the specific properties that characterize such class. The manuscript is composed of two parts. PartI includes a complete curriculum vitæ and the most relevant publications. PartII is divided as follows:
In Chapter1 an introduction on MINLP problems and on classical methods to solve it and its most widely used subclasses is presented.
The research concerning exact methods for classes of MINLPs is described in Chap- ter2 . In particular, the chapter is composed of two main parts: i. methods based on the strengthening of classical relaxations and ii. methods based on non standard relaxations.
In Chapter3 we discuss heuristic methods for generic MINLP problems, i.e., Feasi- bility Pump and Optimistic Approximation for non convex MINLPs, and for specific problems like the non linear knapsack and its generalizations. The methods for non convex MINLP show special properties for subclasses of MINLPs. For example, the heuristics for the non linear knapsack problem exploit the fact that the only non linear functions, i.e., the profit and weight functions, are separable and non decreasing.
Other contributions are summarized in Chapter4 .
Finally, conclusions and future research are discussed in Chapter5 .
vii viii PREFACE Part I
Curriculum Vitae
1
Curriculum Vitae
Claudia D’Ambrosio June 11, 2018
CNRS Charg´eede Recherche and Charg´eed’Enseignement at:
LIX, Laboratoire d’Informatique de l’Ecole´ Polytechnique 91128 Palaiseau CEDEX, France Office: LIX 1066 (Batiment Alan Turing, first floor) E-mail address: [email protected] Office phone n.: +33.1.77.57.80.06
Personal Information and Education
From January 2006 to April 2009: PhD student in “Automatic Control and Operations Research” at the Dipartimento di Elettronica, Informatica e Sis- temistica (DEIS), University of Bologna (Italy). Thesis “Application-oriented Mixed Integer Non-Linear Programming”, advisor Prof. Andrea Lodi.
21st March 2005: Master degree in Computer Science Engineering at the Uni- versity of Bologna (Italy). Thesis: “Algorithms for the Water Network De- sign Problem” advisor Prof. Paolo Toth, co-advisors Prof. Andrea Lodi and Dr. Cristiana Bragalli.
Awards
2nd Robert Faure ROADEF prize 2015 (this is the triennial prize of the French OR society, with three laureates at each edition).
EURO Doctoral Dissertation Award 2010 with the PhD Thesis “Application- oriented Mixed Integer Non-Linear Programming”, EURO Conference 2010, Lis- bon (Portugal), 2010. It is the highest European recognition for a Ph.D. thesis in OR.
Funded ongoing projects
Principal Investigator and Supervisory Board member for CNRS, Euro- • pean Project (Marie Curie) “MINOA”, 2018-2021.
1 Leader of the Programme Gaspard Monge pour l’Optimisation project • “Shortest path problem variants for the hydro unit commitment problem”, funded by the Fondation mathematique Jacques Hadamard.
Leader of the Project “Learning to solve Hydro Unit Commitment prob- • lems in France” sponsored by the Siebel Energy Institute seed grant, http://www.siebelenergyinstitute.org/2016-research-grants/. Participant of the Project “From resource to price: machine learning for • Italian electricity network and market” sponsored by the Siebel Energy Institute seed grant, http://www.siebelenergyinstitute.org/2016-research-grants/.
Funded past projects
Leader of the Programme Gaspard Monge pour l’Optimisation project • “Decomposition and feasibility restoration for Cascaded Reservoir Man- agement”, funded by the Fondation mathematique Jacques Hadamard. Participant of the Programme Gaspard Monge pour l’Optimisation project • “R´esolutionde programmes polynomiaux, approche par relaxation quadra- tique convexe”, funded by the Fondation mathematique Jacques Hadamard. Management Commitee member of the COST Action TD1207 Mathe- • matical Optimization in the Decision Support Systems for Efficient and Robust Energy Networks (http://www.cost.eu/domains_actions/ict/ Actions/TD1207).
Leader of the Programme Gaspard Monge pour l’Optimisation project • “Optimality for Tough Combinatorial Hydro Valley Problems”, funded by the Fondation mathematique Jacques Hadamard (http://www.lix. polytechnique.fr/~dambrosio/PGMO.php). Participant of the European Project (Marie Curie) “MINO: Mixed Integer • Nonlinear Optimization” (http://www.mino-itn.unibo.it/). Participant of the ANR jcjc project “ATOMIC: Air Traffic Optimiza- • tion via Mixed Integer Computation” (http://www.recherche.enac.fr/ ~cafieri/atomic.html).
Professional Experience
From October 2015: senior research scientist (formerly charg´eede Recherche 1ere classe) at CNRS in the LIX, Ecole´ Polytechnique (France).
From September 2014: adjunct assistant professor (charg´eed’enseignement) at Ecole´ Polytechnique (France).
From October 2011 to September 2015: research scientist (charg´eede Recherche 2eme classe) at CNRS in the LIX, Ecole´ Polytechnique (France).
2 From November 2010 to August 2011: post-doc in “Algorithms and techniques for MINLP problems with a special attention to optimization problems for unit commitment, scheduling and distribution of electric power” at the Dipartimento di Elettronica, Informatica e Sistemistica (DEIS), University of Bologna (Italy).
From May to October 2010: post-doc in “Mixed Integer NonLinear Program- ming” at the Industrial and System Engineering Department (ISyE), University of Wisconsin - Madison (U.S.A.).
From May 2009 to April 2010: 1-year post-doc in “Algorithms and techniques for MINLP problems with a special attention to optimization problems for unit commitment, scheduling and distribution of electric power” at the Dipartimento di Elettronica, Informatica e Sistemistica (DEIS), University of Bologna (Italy).
From May 2008 to July 2008: consulting for OPTIT on a project with Hera Comm on the optimization of energy cogeneration plants under the supervision of Prof. Andrea Lodi.
From July 2007 to September 2007: working as co-op/intern at IBM TJ Wat- son Research Center (Yorktown, NY) under the supervision of Dr. Jon Lee and Dr. Andreas W¨achter on the research project “Mixed Integer Nonlinear Programming”.
From 2006: tutoring in Operations Research (undergraduate and master level).
From 2006 to 2009: PhD student in “Automatic Control and Operations Re- search” at the Dipartimento di Elettronica, Informatica e Sistemistica (DEIS), University of Bologna (Italy).
From July 2005 to December 2005: collaboration with the Operations Re- search group of the “Dipartimento di Elettronica, Informatica e Sistemistica (DEIS)” of the University of Bologna for the development of algorithms for the Waste Management Problem (UE Project Integrated Urban Waste-Management Model (IUWMM)).
From April 2005 to June 2005: collaboration with the Operations Research group of the “Dipartimento di Elettronica, Informatica e Sistemistica (DEIS)” of the University of Bologna for the development of algorithms for the Capacity Planning Problem (UE Project PARTNER).
Publications
International Journals 1. C. D’Ambrosio, M. Fampa, J. Lee, S. Vigerske. On a Nonconvex MINLP Formulation of the Euclidean Steiner Tree Problem in n-Space: missing proofs, Optimization Letters (accepted). 2. L. Mencarelli, C. D’Ambrosio. Complex Portfolio Selection via Convex
3 Mixed-Integer Quadratic Programming: A Survey, International Trans- actions in Operational Research (accepted).
3. P.-L. Poirion, S. Toubaline, C. D’Ambrosio, L. Liberti. An algorithm for bilevel programming, with applications to smart grids and social networks, Discrete Applied Mathematics (accepted). 4. Y. Sahraoui, P. Bendotti, C. D’Ambrosio. Real-world hydro-power unit- commitment: dealing with numerical errors and feasibility issues, Energy (accepted). 5. S. Cafieri, C. D’Ambrosio. Feasibility Pump algorithms for aircraft decon- fliction with speed regulation, Journal of Global Optimization (online first, https://doi.org/10.1007/s10898-017-0560-7). 6. C. D’Ambrosio, F. Furini, M. Monaci, E. Traversi. On the 0-1 Product Knapsack Problem, Optimization Letters, 2 (4), 691–712, 2018. 7. C. D’Ambrosio, S. Martello, L. Mencarelli. Relaxations and Heuristics for the General Multiple Non-linear Knapsack Problem, Computer & Operations Research, 93, pp. 79–89, 2018.
8. S. Toubaline, C. D’Ambrosio, L. Liberti, P.-L. Poirion, B. Schieber, H. Shachnai. Complexity and inapproximability results for the Power Edge Set problem, Journal of Combinatorial Optimization, 35 (3), pp. 895–905, 2018. 9. C. Buchheim, C. D’Ambrosio. Monomial-wise Optimal Separable Un- derestimators for Mixed-Integer Polynomial Optimization, Journal of Global Optimization, 67 (4), pp. 759–786, 2017. 10. V. Cacchiani, C. D’Ambrosio. A Branch-and-Bound based Heuristic Al- gorithm for Convex Multi-Objective MINLPs, European Journal of Operations Research, 260 (3), pp. 920–933, 2017.
11. C. D’Ambrosio, A. Frangioni, A. Lodi, M. Mevissen. Special issue on: Nonlinear and combinatorial methods for energy optimization. EURO Journal on Computational Optimization, 5(1), pp.1–3, 2017. 12. R. Taktak, C. D’Ambrosio. An Overview on Mathematical Programming Approaches for the Deterministic Unit Commitment Problem in Hydro Valleys, Energy Systems, 8(1), pp. 57–79, 2017. 13. C. D’Ambrosio, K.K. Vu, C. Lavor, L. Liberti, N. Maculan, New error measures and methods for realizing protein graphs from distance data, Discrete & Computational Geometry, 57(2), pp.371–418, 2017.
14. K.K. Vu, C. D’Ambrosio, Y. Hamadi, L. Liberti. Surrogate-based meth- ods for black-box optimization, International Transactions in Oper- ational Research, 24(3), pp. 393–424, 2017. 15. C. D’Ambrosio, G. Nannicini, G. Sartor. MILP models for the selection of a small set of well-distributed points, Operations Research Letters, 45, pp. 46–52, 2017.
4 16. P.-L. Poirion, S. Toubaline, C. D’Ambrosio, L. Liberti. The Power Edge Set problem, Networks, 68 (2), pp. 104–120, 2016. 17. C. D’Ambrosio, A. Lodi, S. Wiese, C. Bragalli. Mathematical Program- ming techniques in Water Network Optimization, European Journal of Operations Research, 243 (3), pp. 774–788, 2015. 18. R. Rovatti, C. D’Ambrosio, A. Lodi, S. Martello. Optimistic MILP Mod- eling of Non-linear Optimization Problems, European Journal of Op- erations Research, 239 (1), pp. 32–45, 2014. 19. G. Costa, C. D’Ambrosio, S. Martello. GraphsJ 3: A Modern Didactic Application for Graph Algorithms, Journal of Computer Science, 10 (7), pp. 1115–1119, 2014. 20. C. D’Ambrosio, A. Lodi. Mixed integer nonlinear programming tools: an updated practical overview, Annals of Operations Research, 204, pp. 301–320, 2013. 21. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. A Storm of Feasibility Pumps for Nonconvex MINLP, Mathematical Programming, 136 (2), pp. 375–402, 2012. 22. C. Bragalli, C. D’Ambrosio, J. Lee, A. Lodi, P. Toth. On the Optimal Design of Water Distribution Networks: a Practical MINLP Approach, Optimization and Engineering, 13, pp. 219–246, 2012. 23. C. D’Ambrosio, A. Lodi. Mixed Integer Non-Linear Programming Tools: a Practical Overview, 4OR: A Quarterly Journal of Operations Research, 9 (4), pp. 329-349, 2011. 24. C. D’Ambrosio, S. Martello. Heuristic algorithms for the general nonlinear separable knapsack problems, Computers and Operations Research, 38 (2), pp. 505-513, 2011. 25. C. D’Ambrosio. Application-oriented Mixed Integer Non-Linear Program- ming. 4OR: A Quarterly Journal of Operations Research, 8 (3), pp. 319- 322, 2010. 26. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. On Interval-subgradient and No-good Cuts, Operations Research Letters, 38, pp. 341-345, 2010 27. G. Costa, C. D’Ambrosio, S. Martello. A free educational Java framework for graph algorithms, Journal of Computer Science, 6 (1), pp. 87-91, 2010. 28. C. D’Ambrosio, A. Lodi, S. Martello. Piecewise linear approximation of functions of two variables in MILP models, Operations Research Letters, 38, pp. 39-46, 2010. 29. A. Borghetti, C. D’Ambrosio, A. Lodi, S. Martello. A MILP Approach for Short-Term Hydro Scheduling and Unit Commitment with Head-Dependent Reservoir, IEEE Transactions on Power Systems 23 (3), pp. 1115– 1124, 2008.
5 Book Chapters (refereed) 1. C. Bragalli, C. D’Ambrosio, J. Lee, A. Lodi, P. Toth. Optimizing the De- sign of Water Distribution Networks Using Mathematical Optimization. In K.G. Murty (ed.) Case Studies in Operations Research: applica- tions of optimum decision making, International Series in Operations Research & Management Science, 212, pp. 183-198, Springer-Verlag New York, 2015.
2. A. Borghetti, C. D’Ambrosio, A. Lodi, S. Martello. Optimal scheduling of a multi-unit hydro power station in a short-term time horizon. In K.G. Murty (ed.) Case Studies in Operations Research: applications of optimum decision making, International Series in Operations Research & Management Science, 212, pp. 167-181, Springer-Verlag New York, 2015.
3. C. D’Ambrosio, J. Lee, A. W¨achter. An algorithmic framework for MINLP with separable non-convexity, J. Lee and S. Leyffer (Eds.): Mixed-Integer Nonlinear Optimization: Algorithmic Advances and Applica- tions, The IMA Volumes in Mathematics and its Applications, Springer New York, 154, pp. 315-347, 2012.
4. C. D’Ambrosio, A. Lodi, S. Martello. Combinatorial Traveling Salesman Problem Algorithms, J.J. Cochran et al. (Eds.),: Wiley Encyclopedia of Operations Research and Management Science, John Wiley and Sons, Inc., 1, pp. 738-747, 2010.
Conferences (refereed) 1. P.-O. Bauguion, C. D’Ambrosio, L. Liberti. Maximum concurrent flow with incomplete data, In Lecture Notes in Computer Science, ISCO 2018, to appear.
2. W. van Ackooij, C. D’Ambrosio, L. Liberti, R. Taktak, D. Thomopulos, S. Toubaline. Shortest Path Problem variants for the Hydro Unit Com- mitment Problem. Electronic Notes in Discrete Mathematics, to appear.
3. W. van Ackooij, C. D’Ambrosio, R. Taktak. Decomposition and feasi- bility restoration for cascaded reservoir management, A. Sforza and C. Sterle (Eds.),: Optimization and Decision Science: Methodologies and Applications: ODS, Sorrento, Italy, September 4-7, 2017, Springer International Publishing, pp. 629–637.
4. C. D’Ambrosio, L. Liberti. Distance geometry in linearizable norms. In Lecture Notes in Computer Science, vol. 10589, Geometric Sci- ence of Information: Third International Conference, GSI 2017, Paris, France, November 7-9, 2017, Proceedings, F. Nielsen and F. Barbaresco eds., Springer International Publishing, pp. 830–837, 2017. 5. L. Liberti, C. D’Ambrosio. The Isomap algorithm in distance geome- try. In Leibniz International Proceedings in Informatics (LIPIcs),
6 vol. 75, 16th International Symposium on Experimental Algorithms (SEA 2017), Costas S. Iliopoulos and Solon P. Pissis and Simon J. Puglisi and Rajeev Raman eds., Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, pp. 5:1–5:13, 2017. ISBN = 978-3-95977-036-1, ISSN = 1868-8969, 6. O. Wang, L. Liberti, C. D’Ambrosio, C. De Sainte Marie, C. Ke. Con- trolling the average behaviour of business rules programs. In Lecture Notes in Computer Science, vol. 9718, Rule Technologies. Research, Tools, and Applications: 10th International Symposium, RuleML 2016 Proceedings, J. J. Alferes et al. eds., Springer International Publishing, pp. 83–96, 2016. 7. S. Toubaline, P.-L. Poirion, C. D’Ambrosio, L. Liberti. Observing the state of a smart grid using bilevel programming. In Lecture Notes in Computer Science, vol. 9486, Combinatorial Optimization and Appli- cations COCOA 2015, Z. Lu et al. eds., Springer International Publish- ing, pp. 364–376, 2015. 8. L. Liberti, C. D’Ambrosio, P.-L. Poirion, S. Toubaline, Measuring smart grids, Proceedings of AIRO 2015: pp. 11-20, 2015. 9. C. D’Ambrosio, M. Fampa, J. Lee, S. Vigerske. On a Nonconvex MINLP Formulation of the Euclidean Steiner Tree Problem in n-Space, Lecture Notes in Computer Science, vol. 9125, International Symposium on Experimental Algorithms SEA 2015, E. Bampis ed., pp. 122–133, 2015. 10. C. Lizon, C. D’Ambrosio, L. Liberti, M. Le Ravalec and D. Sinoquet. A Mixed-integer Nonlinear Optimization Approach for Well Placement and Geometry. In Proceedings of ECMOR XIV - 14th European conference on the mathematics of oil recovery, Catania, Italy, pp. 1838–1848, 2014. 11. C. Buchheim, C. D’Ambrosio. Box-Constrained Mixed-Integer Polyno- mial Optimization Using Separable Underestimators, Lecture Notes in Computer Science vol. 8494, Integer Programming and Combinato- rial Optimization Conference - IPCO 2014, J. Lee and J. Vygen eds., Springer International Publishing, pp. 198–209, 2014. 12. C. D’Ambrosio, J.T. Linderoth, J. Luedtke. Valid Inequalities for the Pooling Problem with Binary Variables, Lecture Notes in Computer Science vol. 6655, Integer Programming and Combinatorial Optimization Conference - IPCO 2011, O. Gunluk and G.J. Woeginger eds., Springer- Verlag, pp. 117-129, 2011. 13. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. Experiments with a Feasibility Pump Approach for Non-Convex MINLPs, Lecture Notes in Computer Science vol. 6049, 9th International Symposium on Experi- mental Algorithms - SEA 2010, P. Festa ed., Springer-Verlag, pp. 350 - 360, 2010. 14. C. D’Ambrosio, J. Lee, A. W¨achter. A global-optimization algorithm for mixed-integer nonlinear programs having separable non-convexity, A. Fiat and P. Sanders (Eds.): ESA 2009 (17th Annual European Symposium.
7 Copenhagen, Denmark, September 2009), Lecture Notes in Computer Science 5757, pp. 107-118, Springer-Verlag Berlin Heidelberg, 2009.
15. C. Bragalli, C. D’Ambrosio, J. Lee, A. Lodi, P. Toth. An MINLP solution method for a Water Network Problem, Y. Azar and T. Erlebach (Eds.): Algorithms - ESA 2006 (14th Annual European Symposium. Zurich, Switzerland, September 2006), Lecture Notes in Computer Science, pp. 696-707. Springer, 2006.
Short papers in Conference (refereed) 1. L. Mencarelli, C. D’Ambrosio, A. Di Zio, S. Martello, Heuristics for the General Multiple Non-linear Knapsack Problem. Electronic Notes in Discrete Mathematics, 55, pp. 69–72, 2016.
2. C. D’Ambrosio, A. Frangioni, C. Gentile. Strengthening Convex Relax- ations of Mixed Integer Non Linear Programming Problems with Separa- ble Non Convexities. In Proceedings of Global Optimization Work- shop 2016 (GOW’16), Braga, Portugal, pp. 49–52, 2016.
3. C. D’Ambrosio, J. Linderoth, J. Luedtke, J. Schweiger. Strong Convex Nonlinear Relaxations of the Pooling Problem, Oberwolfach workshop on “Mixed-integer Nonlinear Optimization: A Hatchery for Modern Math- ematics”, MFO, Oberwolfach, pp. 2715–2716, October 2015. 4. C. Lizon, C. D’Ambrosio, L. Liberti. M´ethode non lin´eairemixte en vari- ables entires et r´eellespour le placement et la g´eom´etriedes puits en ing´enieriede r´eservoir. In Proceedings of Journ´eesPoly`edreset Optimisation Combinatoire (JPOC9), Le Havre, France, 2015. 5. P.-L. Poirion, S. Toubaline, C. D’Ambrosio, L. Liberti. Localization on smart grids. In Proceedings of Mathematical and Applied Global Optimization (GOW’14), Global Optimization Workshop 2014, Malaga, Spain, pp. 101-103, 2014. 6. C. D’Ambrosio, K. Vu Khac, C. Lavor, L. Liberti, N. Maculan. Compu- tational experience on Distance Geometry Problems. In Proceedings of Mathematical and Applied Global Optimization (GOW’14), Global Optimization Workshop 2014, Malaga, Spain, pp. 97-100, 2014.
7. C. D’Ambrosio, S. Martello. A heuristic algorithm for the general nonlin- ear separable knapsack problem. In Proceedings of European Work- shop on Mixed Integer Nonlinear Programming. Marseille, France, pp. 115-117, 2010.
8. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. Feasibility Pump(s) for Non-Convex Mixed-Integer NonLinear Programs. In Proceedings of European Workshop on Mixed Integer Nonlinear Programming. Marseille, France, pp. 25-26, 2010.
8 Technical Reports and Working Papers 1. C. D’Ambrosio, J. Lee, L. Liberti, M. Ovsjanikov. Extrapolating curva- ture lines in rough concept sketches using mixed-integer nonlinear opti- mization (submitted). 2. J. Luedtke, C. D’Ambrosio, J. Linderoth, J. Schweiger. Strong Convex Nonlinear Relaxations of the Pooling Problem: Extreme Points, ZIB Re- port 18-13.
3. J. Luedtke, C. D’Ambrosio, J. Linderoth, J. Schweiger. Strong Convex Nonlinear Relaxations of the Pooling Problem, ZIB Report 18-12 (sub- mitted). 4. M. St´efanon,P. Drobinski, J. Badosa, S. Concettini, A. Creti, C. D’Ambrosio, D. Thomopulos, P. Tankov. Scenario for wind-solar energy mix in Italy from regional climate simulations (submitted). 5. C. D’Ambrosio, L. Liberti, P.-L. Poirion, K. Vu. Random projections for trust-region subproblems with applications to derivative-free optimization (submitted).
6. C. D’Ambrosio, A. Frangioni, C. Gentile. Strengthening the Sequential Convex MINLP Technique by Perspective Reformulations, IASI-CNR, Re- port n. 17-01 (under review).
Divulgation articles 1. C. D’Ambrosio. Non Convex Mixed Integer Non Linear Programming, Bulletin de la ROADEF, 36, pp. 4–7, 2016.
Theses C. D’Ambrosio. Application-oriented Mixed Integer Non-Linear Program- • ming, PhD Thesis (April 2009). Under the supervision of Prof. Andrea Lodi (University of Bologna). C. D’Ambrosio. Algorithms for the Water Network Design Problem, Mas- • ter Thesis (March 2005). Under the supervision of Dr. Cristiana Bragalli, Prof. Andrea Lodi, Prof. Paolo Toth (University of Bologna). C. D’Ambrosio. Query with Preferences: the Best Operator, Bachelor • Thesis (December 2002). Under the supervision of Prof. Paolo Ciaccia (University of Bologna).
Plenary Talks
1. C. D’Ambrosio, Challenging Problems in Energy Optimization: the Hydro Unit Commitment, Havana, Cuba, December 2017.
2. C. D’Ambrosio, Challenging Problems in Energy in Optimization: the Hydro Unit Commitment, Blumenau, Brasil, August 2017.
9 3. C. D’Ambrosio, Using Bilevel Programming to Monitor Smart Grids, Workshop on Nonlinear Optimization Algorithms and Industrial Appli- cations, Toronto, Canada, June 2016.
4. C. D’Ambrosio, On Black-Box Mixed Integer Non Linear Programming, MIP, Mixed Integer Programming Workshop 2016, Miami, FL, USA, May 2016. 5. C. D’Ambrosio, Strong Convex Nonlinear Relaxations of the Pooling Prob- lem, Oberwolfach workshop on “Mixed-integer Nonlinear Optimization: A Hatchery for Modern Mathematics”, MFO, Oberwolfach, October 2015. 6. C. D’Ambrosio, Optimization based on mixed integer nonlinear program- ming (MINLP) method, Workshop “Modelling Smart Grids: A New Chal- lenge for Stochastics and Optimization”, University of Prague, Czech Re- public, September 2015. 7. C. D’Ambrosio, Global optimization for MINLPs with separable noncon- vexities: convex relaxations and perspective reformulations, 2nd Sevilla Workshop on “Mixed Integer Nonlinear Programming: Theory, algorithms and applications”, University of Seville, Spain, March 2015.
8. C. D’Ambrosio. MINO/COST training school, University of Tilburg, The Netherlands, March 2015. 9. C. D’Ambrosio, On the Mathematical Models and Methods for the Hydro Unit Commitment Challenges, COST Workshop on Mathematical Models and Methods for Energy Optimization (CWM3EO), September 2014.
10. C. D’Ambrosio, 5th Porto Meeting on Mathematics for Industry, April 2014. Three talks: Basic notions of Mixed Integer Non-Linear Programming • MINLP applications, part I: Hydro Unit Commitment and Pooling • Problem MINLP applications, part II: Water Network Design and some ap- • plications of black-box optimization 11. C. D’Ambrosio, Mathematical Programming Approaches for Water Net- work Design, Journ´eeOptimisation des R´eseaux,November 2013.
12. C. D’Ambrosio, Real-world Mixed Integer NonLinear Programming appli- cations: MILP and MINLP approaches, NATCOR Combinatorial Opti- mization course, Southampton, UK, September 2011. 13. C. D’Ambrosio, Optimistic MILP Modeling of Non-linear Optimization Problems, MIP, Mixed Integer Programming Workshop 2011, Waterloo, ON, Canada, June 2011 (Invited by Prof. Ted Ralphs). 14. C. D’Ambrosio, A Tutorial on Convex Mixed-Integer Nonlinear Program- ming, 3rd LANCS Workshop on Discrete and Non-Linear Optimisation. Lancaster, UK, April 2011. (Invited by Prof. Adam Letchford.)
10 15. C. D’Ambrosio, A feasibility pump for non-convex MINLPs, 2nd LANCS Workshop on Discrete and Non-Linear Optimisation. Southampton, UK, March 2010. (Invited by Prof. Adam Letchford.)
16. C. D’Ambrosio, A Feasibility Pump Heuristic for Non-Convex MINLPs, Spring Workshop on Computational Issues in Mixed Integer Nonlinear Programming. Bordeaux, France, March 2009. (Invited by Prof. Andrew J. Miller.)
Seminars
1. C. D’Ambrosio, Classical formulations and strong valid inequalities for the pooling problem, S´eminaireParisien d’Optimisation at Institut Henri Poincar´e(France), February 2017.
2. C. D’Ambrosio, Smart Grids Observability using Bilevel Programming, CORE O.R. Seminars at Universit´eCatholique de Louvain (Belgium), April 2016. 3. C. D’Ambrosio, On the standard pooling problem and strong valid inequal- ities, CPSE Seminar Series at Imperial College (UK), February 2016.
4. C. D’Ambrosio, The pooling problem: classical formulations and stronger relaxations, IBM TJ Watson Research Center (USA), November 2015. 5. C. D’Ambrosio, The pooling problem: classical formulations and strong valid inequalities, GERAD, Ecole´ Polytechnique de Montreal (Canada), November 2015. 6. C. D’Ambrosio, A Tutorial on the Methods and Practice of Mixed Integer Nonlinear Programming, Universit´ede Li`ege(Belgium), March 2015. 7. C. D’Ambrosio, The importance of being... separable!, University of Cal- ifornia Davis, USA, November 2014.
8. C. D’Ambrosio, A branch-and-bound method for box constrained integer polynomial optimization, LIPN, Paris 13, December 2013. 9. C. D’Ambrosio, A branch-and-bound method for box constrained inte- ger polynomial optimization, Integer Programming for Lunch, IBM TJ Watson Reseach Center, USA, October 2013. 10. C. D’Ambrosio, Mixed Integer Linear Programming, EDF R&D, Clamart, France, September 2013 (2 lectures plus 2 exercises sessions). 11. C. D’Ambrosio, Fundamentals of the Theory and Practice of Mixed Inte- ger Nonlinear Programming, Universit`aPolitecnica delle Marche, Ancona, June 2013. 12. C. D’Ambrosio, Branch-and-bound method for box-constrained polyno- mial optimization, Universit´ecatholique de Louvain, Louvain-la-Neuve, June 2013.
11 13. C. D’Ambrosio, Linear approximation techniques for mixed integer nonlin- ear programming: methods and a real-world application, Singapore Uni- versity of Technology and Design, Singapore, January 2013.
14. C. D’Ambrosio, From Hydro Scheduling and UC with Head-Dependent Reservoir to Linear Approximation Techniques for Nonlinear Functions, EDF R&D, Clamart, France, December 2012. 15. C. D’Ambrosio, Optimality for Tough Combinatorial Hydro Valley Prob- lems, PGMO Seminars, Palaiseau, France, November 2012 16. C. D’Ambrosio, Feasibility Pump, heuristic methods for nonconvex Mixed Integer Nonlinear Programming problems, Technische Universit¨atDort- mund, Germany, April 2012. 17. C. D’Ambrosio, Pooling problem with binary variables: mixed integer programming relaxations and valid inequalities, LIF, Marseille, France, February 2012. 18. C. D’Ambrosio, Mixed integer nonlinear programming: heuristic and exact methods, INRIA, Bordeaux, France, March 2011.
19. C. D’Ambrosio, Linear approximation techniques for mixed integer non- linear programming: methods and a real-world application, INRIA, Bor- deaux, France, January 2011. 20. C. D’Ambrosio, Water Network Design: An MINLP approach, COPTA Talks. University of Wisconsin - Madison, USA, June 2010.
21. C. D’Ambrosio, Water Network Design by Mixed Integer Nonlinear Pro- gramming, University of Heidelberg, Germany, December 2009. 22. C. D’Ambrosio, Methods and Algorithms for Solving Non-Convex MINLP Problems, IBM T.J. Watson Research Center. Yorktown Heights, USA, September 2007.
Conference Talks
1. C. D’Ambrosio, A. Frangioni, C. Gentile. Strengthening Convex Relax- ations of Mixed Integer Non Linear Programming Problems with Separa- ble Non Convexities. GOW’16, Braga, Portugal, September 2016. 2. C. D’Ambrosio, J. Linderoth, J. Luedtke, J. Schweiger. Strong Valid Inequalities for the Standard Pooling Problem, ICCOPT 2016. Tokyo, Japan, August 2016. 3. C. D’Ambrosio, J. Linderoth, J. Luedtke, A. Miller. Valid Inequalities for the Pooling Problem, ECCO 2015. Catania, Italy, May 2015. 4. C. D’Ambrosio. Presentation of the 2me Prix Robert Faure 2015, Roadef 2015. Marseille, France, February 2015.
12 5. A. Conn, C. D’Ambrosio, L. Liberti, C. Lizon, D. Sinoquet, K. Vu Khac. A trust region method for solving grey-box MINLP, INFORMS 2014. San Francisco, USA, November 2014.
6. C. Buchheim, C. D’Ambrosio. A branch-and-bound method for box con- strained integer polynomial optimization, IFORS 2014. Barcelona, Spain, July 2014. 7. C. Buchheim, C. D’Ambrosio. A Branch-and-Bound Method for Box- Constrained Mixed-Integer Polynomial Optimization Using Separable Un- derestimators, Roadef 2014. Bordeaux, France, February 2014. 8. C. Buchheim, C. D’Ambrosio. New underestimators for box constrained integer polynomial optimization, INFORMS 2013. Minneapolis, USA, October 2013.
9. C. Buchheim, C. D’Ambrosio. A fast exact method for box constrained polynomial optimization, ECCO 2013. Paris, France, May 2013. 10. W. van Ackooij, C. D’Ambrosio, G. Doukopoulos, A. Frangioni, C. Gen- tile, F. Roupin, T. Simovic. Optimality for Tough Combinatorial Hydro Valley Problems, Roadef 2013. Troyes, France, February 2013.
11. C. D’Ambrosio, A. Lodi, S. Martello, R. Rovatti. Optimistic modeling of non-linear optimization problems by mixed-integer linear programming, ISMP 2012. Berlin, Germany, August 2012. 12. C. D’Ambrosio, A. Lodi, S. Martello, R. Rovatti. Optimistically Approx- imating Non-linear Optimization Problems through MILP, EURO 2012. Vilnius, Lithuania, July 2012. 13. C. D’Ambrosio, A. Frangioni, L. Liberti A. Lodi. Extending Feasibil- ity Pump to nonconvex mixed integer nonlinear programming problems, Roadef 2012. Angers, France, April 2012.
14. C. D’Ambrosio, A. Frangioni, L. Liberti A. Lodi. Feasibility Pump al- gorithms for nonconvex Mixed Integer Nonlinear Programming problems, APMOD 2012. Paderborn, Germany, March 2012. 15. C. D’Ambrosio, J. Linderoth, J. Luedtke. Valid Inequalities for the Pool- ing problem with Binary Variables, IPCO Conference. Armonk, NY, USA., June 2011. 16. C. D’Ambrosio, J. Linderoth, J. Luedtke. Pooling problem with binary variables, SIAM Conference on Optimization. Darmstadt, Germany, May 2011. 17. C. D’Ambrosio, J. Linderoth, J. Luedtke. Valid inequalities for the pooling problem with binary variables, XV International Workshop on Combina- torial Optimization. Aussois, France, January 2011. 18. C. D’Ambrosio, J. Linderoth, J. Luedtke, A. Miller. Pooling Problems with Binary Variables, Modeling and Optimization: Theory and Applica- tion (MOPTA) Conference. Bethlehem, USA, August 2010.
13 19. C. D’Ambrosio. Application-oriented Mixed Integer Non-Linear Program- ming, 24th European Conference on Operations Research. Lisbon, Portu- gal, July 2010.
20. C. D’Ambrosio, S. Martello. A heuristic algorithm for the general nonlin- ear separable knapsack problem, European Workshop on Mixed Integer Nonlinear Programming. Marseille, France, April 2010. 21. C. D’Ambrosio, J. Lee, A. W¨achter. An exact algorithm for separable non-convex MINLPs, XIV International Workshop on Combinatorial Op- timization. Aussois, France, January 2010. 22. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. A Feasibility Pump Algorithm for Non-Convex Mixed Integer Non-Linear Programming Prob- lems, XL AIRO Annual Conference. Siena, Italy, September 2009. (In- vited Session organized by Andrea Lodi and myself.) 23. C. D’Ambrosio, A. Lodi. Application-oriented Mixed Integer Non-Linear Programming, XL AIRO Annual Conference. Siena, Italy, September 2009. 24. C. D’Ambrosio, J. Lee, A. W¨achter. A global-optimization algorithm for mixed-integer nonlinear programs having separable non-convexity, 17th Annual European Symposium on Algorithms (ESA). Copenhagen, Den- mark, September 2009. 25. C. D’Ambrosio, J. Lee, A. W¨achter. An Algorithmic Framework for Sepa- rable Non-convex MINLP, 20th International Symposium of Mathematical Programming (ISMP). Chicago, USA, August 2009. (Invited Session or- ganized by Pietro Belotti.) 26. C. D’Ambrosio, A. Lodi, S. Martello. On the piecewise linear approxima- tion of functions of two variables in MILP models, AIRO Winter 2009. Cortina d’Ampezzo, Italy, January 2009.
27. C. D’Ambrosio , M. Fischetti, A. Lodi, A. W¨achter. Finding Mixed- Integer Linear Solutions through Non-Linear Programming, XXXIX AIRO Annual Conference. Ischia, Italy, September 2008. 28. A. Borghetti, C. D’Ambrosio, A. Lodi, S. Martello. MILP techniques for solving hydro scheduling and unit commitment problem, XXXIX AIRO Annual Conference. Ischia, Italy, September 2008. 29. C. D’Ambrosio , J. Lee, A. W¨achter. An Algorithmic Framework for a Class of Non-Convex Minlp Problems, SIAM Conference on Optimization 2008. Boston, USA, May 2008.
30. A. Borghetti, C. D’Ambrosio, A. Lodi, S. Martello. MILP Techniques for Solving Hydro Scheduling and Unit Commitment Problems, 2nd FIMA International Conference. Champoluc, Italy, January 2008. 31. C. Bragalli, C. D’Ambrosio, J. Lee, A. Lodi, P. Toth. An MINLP solution method for a Water Network Problem, XXXVII AIRO Annual Conference. Cesena, Italy, September 2006.
14 Posters
1. Wim van Ackooij, Claudia D’Ambrosio, Grace Doukopouloss, Antonio Frangioni, Claudio Gentile, Frederic Roupin, Youcef Sahraoui, and Tomas Simovic. Optimality for Tough Combinatorial Hydro Valley Problems. PGMO Opening Conference, Palaiseau, France, October 2013. 2. Wim van Ackooij, Claudia D’Ambrosio, Grace Doukopouloss, Antonio Frangioni, Claudio Gentile, Frederic Roupin, and Tomas Simovic. Opti- mality for Tough Combinatorial Hydro Valley Problems. PGMO Opening Conference, Palaiseau, France, September 2012.
3. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. On Interval-subgradient and No-good Cuts. MIP 2010 Workshop on Mixed Integer Programming. Atlanta, USA, July 2010. 4. C. Bragalli, C. D’Ambrosio, J. Lee, A. Lodi, P. Toth. Water Network De- sign by MINLP. IMA Workshop on Mixed-Integer Nonlinear Optimization: Algorithmic Advances and Applications. Minneapolis, USA, November 2008. 5. C. D’Ambrosio , M. Fischetti, A. Lodi, A. W¨achter. Non-Linear Program- ming based heuristic for Mixed-Integer Linear Programming. MIP 2008 Workshop on Mixed Integer Programming. New York, USA, August 2008.
Editorial Activities
Associate Editor of Optimization Methods & Software (since September 2016).
Associate Editor of Optimization and Engineering (since July 2016).
Guest Editor of EJOC (EURO Journal on Computational Optimiza- tion) for a special issue on “Nonlinear and Combinatorial Methods for Energy Optimization”.
Associate Editor of 4OR – A Quarterly Journal of Operations Research jointly published by the Belgian, French, and Italian Operations Research So- cieties (since June 2014).
Professional Duties
Scientific committee member at EUROPT Workshop 2018, Almeria, Spain (07/2018)
Organizer of the Energy stream at ISMP 2018, Bordeaux, France (07/2018).
Poster Award Committee member at MIP Workshop 2017, Montr´eal,Canada (06/2017).
15 President of the Ph.D. awarding committee of Faisal WAHID, Ecole´ Polytech- nique (06/2017).
Recruitment committee member for a Assistant Professor position at the Paris Dauphine (05/2017).
Recruitment committee member for an adjunct assistant professor position (charg´eed’enseignement) at Ecole´ Polytechnique (04/2017).
Scientific committee co-chair of the Mathematical Optimization in the Decision Support Systems for Efficient and Robust Energy Networks Final Conference 29/31 March 2017 Modena (Italy)
Recruitment committee member for a Professor position at the ENSTA (2016).
Head of Program “Optimisation”, Ecole´ Polytechnique (since academic year 2015-2016).
Chef d’´equipe (team leader) of the SYSMO team, LIX, Ecole´ Polytechnique (2014-2017).
Project Board Member of TREND-X, Transdisciplinary analysis of Renewable Energies at Ecole´ Polytechnique (since December 2014).
Organizing committee member of MINO/COST PhD School 2016.
Recruitment committee member for a Maitre de Conference position at the Laboratoire Jean Kuntzmann, Grenoble (2015).
Member of the Ph.D. awarding committee of Sell´eTour´e, Universit´ede Greno- ble (October 2014).
Recruitment committee member for a Maitre de Conference position at CNAM (2014).
Committee member of the Award for the Best EJOR Paper (EABEP) 2014.
Scientific committee member of ROADEF 2014.
Co-chair of the COST Workshop on Mixed Integer NonLinear Programming (CWMINLP) 2013.
Selection committee member for the LIX-Qualcomm-Carnot postdoc 2013-14.
Organizer of the Mixed-Integer Non Linear Programming stream at the EURO- INFORMS 2013.
Organizer of Mixed Integer Programming (MIP) workshop 2012.
Organizer of the Mixed-Integer Non Linear Programming stream at the EURO
16 2012.
Organizer of many sessions at the AIRO Annual Conference.
Scientific Community Contribution
Contributor of open-source solver ROSE (COIN-OR).
Contributor of open-source solver BONMIN (COIN-OR).
Teaching Experience
Responsible for the course: Big Data (INF442), Ecole´ Polytechnique, France for the academic years 2017-2018.
Assistant for the course: Big Data (INF442), Ecole´ Polytechnique, France for the academic years 2014-2015, 2015-2016, 2016-2017.
Co-responsible for the course: Initiation to Research, Master Parisien de Recherche Op´erationnelle,France for the academic year 2013-2014, 2014-2015, 2015-2016, 2016-2017.
Lecturer and responsible for the course: Advanced Mathematical Program- ming (PMA), Master Parisien de Recherche Op´erationnelle,France for the aca- demic year 2012-2013, 2013-2014, 2014-2015, 2015-2016, 2016-2017.
Assistant for the course: Constraint Programming and Mathematical Programming (INF580), Ecole´ Polytechnique, France for the academic year 2013-2014, 2014-2015.
Lecturer for the course: Introduction to C++ (INF585), Ecole´ Polytech- nique, France for the academic year 2012-2013.
Lecturer for the course: Optimization in Health Care of the Master in In- gegneria Clinica, COFIMP, Bologna (together with Professor Silvano Martello) for the academic years 2008-2009/2009-2010/2010-2011.
Tutor for the course: Operations Research M with Professor Silvano Martello at the Faculty of the Engineering of the University of Bologna (Italy) for the academic year 2009-2010/2010-2011.
Tutor for the course: Fundamentals of Operations Research L-A with Professor Silvano Martello at the Faculty of the Engineering of the University of Bologna (Italy) for the academic years 2006-2007/2007-2008/2008-2009/2009- 2010.
Tutor for the course: Operations Research L-S with Professor Silvano Martello
17 at the Faculty of the Engineering of the University of Bologna (Italy) for the academic years 2006-2007/2007-2008/2008-2009.
Tutor for the course: Lab of Optimization Tools L with Professor Andrea Lodi at the Faculty of the Engineering of the University of Bologna (Italy) for the academic years 2006-2007/2007-2008/2008-2009.
Tutor for the course: Lab of Operations Research L-A with Professor An- drea Lodi at the Faculty of the Engineering of the University of Bologna (Italy) for the academic years 2006-2007/2007-2008/2008-2009.
Languages
Italian: mother tongue.
English: good knowledge.
French: B2.
Computer Skills
Programming Languages: C, C++, Java, JSP.
Operating Systems: Linux, Windows.
Software for Optimization: AMPL, Arena, COIN-OR solvers, Cplex, GAMS, Julia, JuMP, LaTex, Matlab, MPL, Porta, SCIP.
PhD Students Current Gabriele Iommazzo: PhD co-advisor.
Past Luca Mencarelli: PhD co-advisor (European Project MINO).
Olivier Wang: PhD co-advisor (thesis CIFRE with IBM).
Youcef Sahraoui: PhD co-advisor (thesis CIFRE with EDF).
Claire Lizon: PhD co-advisor (thesis CIFRE with IFPEN).
18 Master and Bachelor Students Current Francesco Vita (Universit`aPolitecnica delle Marche, Italy).
Past Gabriele Iommazzo: co-advisor of the Master thesis in Master of Science in Business Informatics (2017). Now PhD student at Ecole´ Polytechnique.
Angelo Di Zio: co-advisor of the Master thesis in Computer Science Engineering (2012). Now at Ferrari S.P.A.
Enrico Galassi: co-advisor of the Bachelor thesis in Computer Science Engi- neering (2011).
Simone Bacchilega: co-advisor of the Bachelor thesis in Computer Science En- gineering (2011).
Michele Dinardo: co-advisor of the Master thesis in Computer Science Engi- neering (2010). Now at KPMG.
Gianluca Costa: co-advisor of the Bachelor thesis in Computer Science En- gineering (2009). Now at YOOX Group.
Paolo Magini: co-advisor of the Master thesis in Industrial Engineering (2006). Now at Reply.
19 22 Part II
Research Summary
23
Chapter 1
Introduction
Mathematical Programming (MP) allows the modeling of an extremely wide variety of optimization problems. From the user’s point of view, this means that instead of thinking about how to solve a problem, it suffices to think about how to formulate the problem — the solution will be delegated to one of several “general purpose solvers” available in the sci- entific literature. This “formulate-and-solve” approach makes the practice of optimization much more accessible to the average practitioner. However, keeping in mind the solution method characteristics when modeling is a non trivial task that could drastically influence the performance of the general purpose solvers. Within MP, Mixed-Integer Non Linear Programming (MINLP) is currently one of the largest class of problems for which a general purpose solver exists. MINLPs may involve linear and non linear functions of continuous, binary, and integer decision variables. As such, it captures an incredibly diverse variety of optimization problems. Real problems arising in engineering, industry, or the natural sciences often come with a lot of techni- cal overhead, which somehow obfuscates the essential underlying difficulties. We use two types of problem models: decision and optimization problems. The difference between a decision and an optimization problem concerns the type of admissible answer. A deci- sion problem is a formal question that only admits “yes” or “no” as an answer; a solution consists of the answer together with a certificate (or formal proof) of correctness — this certificate need not be unique. An optimization problem is also endowed with an “objective function” that maps certificates to scalars, and an optimization direction (either minimiza- tion or maximization). One then wants to find the best solution of the problem in terms of the objective function value. From a complexity viewpoint, MINLP is an NP-hard combinatorial problem, because it includes MILP [62], and it is typically very challenging also in practice. Worse, non convex integer optimization problems are in general undecidable, see [33]. In this paper the author presents an example of a quadratically constrained integer program and shows that no computing device exists that can compute the optimum for all problems in this class. In the remainder, we concentrate on the case where MINLP is decidable, which we can achieve by ensuring that each variable has finite lower and upper bound.
25 26 CHAPTER 1. INTRODUCTION TO MINLP PROBLEMS AND METHODS
In this work, we are mainly interested in techniques that improve the phase of solving optimization problems. In this chapter, we summarize the main classic aspects of formula- tions and algorithms in mathematical programming.
1.1 Modeling problems by Mathematical Programming
We could define the most general optimization problem that can be modeled as an MP prob- n1+n2 lem as follows: given positive integers n, n1, n2, m, an objective function f : R R, n1+n2 → and a set of functions gi : R R for any i = 1, . . . , m, the MATHEMATICAL PRO- → GRAMMING (MP) problem is:
min f(x) x g (x) 0 i = 1, . . . , m (1.1) i ≤ ∀ x X ∈ n1 n2 where X R N and n = n1 + n2. ⊆ × Notice that MP requires the functions f, g = g , . . . , g as part of its input; this im- { 1 m} plies the existence of an uncountably infinite set of instances. The vector x = (x1, . . . , xn) is known as the decision vector, and each of its components is a decision variable. The inequality g (x) 0 is called a constraint. We can focus on minimization problems and on i ≤ inequalities and neglect equalities without loss of generality. Expressing a problem as a subclass of MP instances is also called “modeling a problem by MP”. Most often, an MP model of a given problem fixes f, g to specific functional forms expressed in terms of parameters and the solution in the decision vector x. A (potentially infinite) set of MP instances where f, g have been fixed to given functional forms is called a formulation.
1.1.1 Reformulations
An MP reformulation is a symbolic algorithm for transforming an MP formulation into an- other one with more desirable features. Reformulations are a tool to address the following question: any problem can be modeled as an MP in infinitely many ways: is there a best formulation for a given algorithm? The concept of “best” is relative and, in particular, we refer either to more tractable reformulations, i.e., reformulations that are easier to solve, or to stronger reformulations, i.e., reformulations which tractable relaxation is closer to the original problem. In the next two sections, we introduce the notion of relaxations and approximations that can be considered to an extend reformulations too, see [41]. 1.1. MODELING PROBLEMS BY MATHEMATICAL PROGRAMMING 27
1.1.2 Relaxations Relaxations are formulations that “relax” the original problem, i.e., optimization problems such that min f¯(y) y g¯i(y) 0 i = 1, . . . , r (1.2) ≤ ∀ y Y ∈ q1 q2 ¯ where X Y R N , q1 n1, q2 n2, f(y) f(x) for all x y, and ⊆ ⊆ × ≥ ≥ ≤ ⊆ x g(x) 0 Proj y g¯(y) 0 . The typical advantage of solving (1.2) instead of { | ≤ } ⊆ x{ | ≤ } (1.1) is that the former is easier (typically both from a theoretical and practical viewpoint) than the latter. In particular, usually, the relaxation is built in such a way so that if the optimal solution of the relaxation is feasible for the original problem, then it is also optimal for it. For this reason, relaxations play an important role in algorithms aimed at solving MP problems as explained in Sections 1.2,1.3, and 1.4. Some classic relaxations are: - continuous: obtained by relaxing x Rn1 Nn2 to x Rn ∈ × ∈ - linear: obtained by defining f¯(y) = c0y and g¯(y) = Ay b − - convex: obtained by defining f¯ and g¯ to be convex functions. The classic relaxation of specific formulations can be strengthened by adding constraints to the formulation itself. In particular, the aim of the strengthening is making the relaxation closer to the original problem. This brings to speed up the classic algorithms. As a practical example, the strengthening of a continuous/linear/convex relaxation of an MI(N)LP prob- lem aims at characterizing the convex hull of the original problem. Examples of strength- ening for special classes of MINLPs are presented in Section 2.1. In the MILP case, if the constraints that characterize the convex hull of the problem are provided to a branch- and-bound solver, it will solve the problem at the root node without the need of exploring further nodes as the continuous relaxation solution shows already the integrality property, considering non degenerate cases. However, finding the convex hull of a MILP is typi- cally hard and it could be characterized by an exponential number of constraints. Thus, the strengthening of the continuous relaxation of a MILP aims at getting as close as possible to the convex hull of the MILP while keeping the relaxation tractable.
1.1.3 Approximations Approximations are reformulations of a given problem where not all (or none of) the con- ditions mentioned for the relaxations are valid, i.e., min f˜(z) z g˜i(z) 0 i = 1, . . . , s (1.3) ≤ ∀ z Z ∈ 28 CHAPTER 1. INTRODUCTION TO MINLP PROBLEMS AND METHODS
where Z Rp1 Np2 . The typical advantage of solving (1.3) instead of (1.1) is that ⊆ × the former is much easier (typically both from a theoretical and practical viewpoint) than the latter. As no particular property holds that links variables and function of the original problem and its approximation, we have no guarantee that if an optimal solution of the approximation is feasible for the original problem then it is optimal for it too. Keeping this in mind, approximations are in general useful when they are conceived to be as “close as possible” to the original problem but, at the same time, tractable. Note that further issues arise when solving an approximation of an optimization problem. However, the impact of these issues depends also on what we approximate. For example, when the approximation differs from the original problem only because of the objective function, the solution of the approximation will always be feasible for the original problem, but maybe non optimal. On the contrary, approximating the feasible region of the original problem typically results in providing solutions that might be infeasible in the original problem. This is also true for relaxations. An improvement of the approximation (as a strengthening of a relaxation) might bring to converge to identify a feasible solution for the original problem. However, in general, this process is not guaranteed to converge to a feasible solution, while it is typically the case for relaxations strengthening procedures like branching, cutting planes, etc (see Section 1.4 for further details). A generic and a tailored approximation method are discussed in Sections 3.1.2 and 3.2.1, respectively.
1.1.4 Solution methods
No algorithm currently exists that can solve any MP instance efficiently (even just from an empirical point of view). Instead, there are algorithms for solving subclasses of the MP problem, such as for example Linear Programs (LP), Integer Linear Programs (ILP), Mixed-Integer Linear Programs (MILP), convex Non Linear Programs (cNLP) and others. In general, MP algorithms are divided into two classes: exact and heuristic. Infor- mally speaking, exact algorithms provide a guarantee that the solution is globally optimal, whereas heuristic algorithms do not. Heuristic algorithms are usually conceived using some sort of “common sense” intuition and are aimed at finding good quality solutions in a short amount of time. Thus, they are very used in practice to solve real-world applications. If the formulation involves non linear functions and continuous variables, it is likely that solutions may not be representable exactly using floating point numbers; we still talk about “exact algorithms” in this setting if they provide an ε guarantee on the optimality of the (approximated) solution they find. More precisely, let x∗ be a global optimum of a MINLP problem whose components involve irrational numbers; and let A be an algorithm can find an approximated solution x¯ such that f(¯x) f(x∗) < ε. Then we still include A | − | in the class of exact algorithms. In the next three sections, we introduce fundamentals of the classic methods that are used to solve MILP, NLP, and MINLP problems, respectively. 1.2. MIXED INTEGER LINEAR PROGRAMMING TECHNOLOGY 29 1.2 Mixed Integer Linear Programming Technology
In this section we present considerations about MILP solvers, limited to aspects related to MINLP1. Until recent years, the standard approach for handling MINLP problems (especially by practitioners or scientists with a combinatorial optimization background) has basically been to solve an MILP approximation of it, i.e., problem (1.3) such that f˜ and g˜ are linear. Let us stress again that solving an MILP approximation of an MINLP does not necessarily mean solving a relaxation of it. The optimal solution of the MILP might be neither optimal nor feasible for the original problem, if no assumption is made on the MINLP structure. Standard techniques to approximate special classes of MINLP problems with an MILP model are, for example, piecewise linear approximation and, when non linear functions are univariate, Special Ordered Sets of type 2 can be defined to model the convex combinations that form the piecewise linear approximation. By defining a set of variables to be a special ordered set of type 2, one imposes that at most 2 such variables can take a nonzero value and that they must be adjacent (see, e.g., Beale and Tomlin [5]). In some of the available MILP solvers, the definition of special ordered sets of type 1 and 2 is recognized and these sets of variables are treated through special branching rules. However, it is possible to use any kind of MILP solver and to define a piecewise linear approximations of general MINLP by adding suitable binary variables, see, for example, [72]. In presence of special properties of the approximated functions, (even) a standard piece- wise linear approximation might result in a relaxation of the original problem (see, for ex- ample, Section 3.1.2). However, this is, in general, not the case. Alternatively, methods tailored for solving MINLPs can be employed, which consist in solving MILP relaxations of the MINLP problem. Algorithms in this category are, for example, outer approxima- tion, generalized Benders decomposition, and extended cutting plane (see, for example, Grossmann [28]). In these cases, an MILP is obtained starting from the original MINLP, but the approximation is constructed on purpose to provide a relaxation, and it is tightened runtime. Contributions in this field and examples of practical applications are discussed in Sec- tion 3.1. From a software viewpoint, another important role MILP plays in the solution of MINLP problems is that some MINLP techniques use MILP solvers as black-boxes to address care- fully defined MILP subproblems. These techniques are described as well in Section 1.4. Finally, we conclude this section by mentioning some MILP solvers, like the commer- cial ones GUROBI, IBM-CPLEX, XPRESSOptimizer, and the open-source solvers CBC and SCIP. For a survey of the development of methods and software for MILPs the reader is referred, e.g., to Lodi [48], and, for detailed discussions, to [1] and [45].
1Note that we do not consider MINLPs that can be exactly reformulated as MILP problems. 30 CHAPTER 1. INTRODUCTION TO MINLP PROBLEMS AND METHODS 1.3 Non Linear Programming Technology
Non Linear programming subproblems play a fundamental role in the solution of MINLPs. Different approaches to the solution of NLPs are possible. Thus, different types of solvers are available, both commercial and open-source. The most commonly used and effective NLP solvers need the first and usually second derivatives of the non linear functions involved in the model. Thus, the non linear functions are assumed to be smooth. However, the information about derivatives sometimes cannot be computed. In this case, derivative free optimization methods can be applied. For details on this topic, the reader is referred to the book by Conn et al. [14]. An additional aspect that NLP solvers have typically in common is that they only guar- antee that the solution provided is a local optimum. Thus, when we use standard NLP solvers, we might not obtain the globally optimal solution. This is why some MINLP solvers are exact algorithms for convex MINLPs (where local optima of their continuous relaxation are also global optima) but only heuristics for non convex MINLPs. We discuss further this issue in Section 1.4. An alternative would be solving NLP relaxations of (non convex) MINLPs to optimality by means of global optimization algorithms. Of course that would be at the cost of the solver’s efficiency, and, for this reason, global optimization techniques are usually not used in MINLP solvers for handling the NLP subproblems. Any serious discussion about NLP algorithms would lead us outside the scope of the present manuscript. We refer the reader to Nocedal and Wright [54], where, at the end of each chapter describing an NLP method, a discussion about software is also provided. Examples of the most widely used solvers are CONOPT, FILTERSQP, IPOPT, KNITRO, MINOS, MOSEK, NPSOL, SNOPT. For an overview of the NLP software, the reader is referred to Leyffer and Mahajan [37].
1.4 Mixed Integer Non Linear Programming Technology
In this section, we describe the most commonly used algorithms for solving non convex MINLPs. We do not describe special-purpose methods, such as, for example, those for Semi-Definite programming, mixed integer Quadratic programming, or convex MINLPs (MINLP for which the continuous relaxation has a feasible region that is a convex set) but only general-purpose MINLP techniques. The interested reader is referred to (among many possible references) the recent MINLP Software survey in the Wiley Encyclopedia of Operations Research and Management Science [11] and to the recent comprehensive introduction to MINLP [6]. For a collection of some of the most exciting latest advances on MINLP, we refer the reader to [35]. Coming back to problem (1.1), in the case of convex MINLPs, extensions of MILP al- gorithms such as branch-and-bound, cutting planes, or branch-and-cut have been proposed, see, for example, [16, 29, 25, 59, 60]. However, if we do not make any convexity assump- 1.4. MIXED INTEGER NON LINEAR PROGRAMMING TECHNOLOGY 31 tion on the objective function and the constraints, then one of the main issues is that the NLP problems obtained by dropping the integrality requirements have, in general, local minima which are not global. This implies, that, if the NLP method used to solve the NLP subproblems of the branch-and-bound/cut does not guarantee that the solution provided is a global optimum (and this is usually the case for the main NLP solvers, e.g., those discussed in Section 1.3), feasible and even optimal solutions might be fathomed, for example, by comparison with an invalid lower bound. Moreover, the linearization cuts used by classic algorithms for convex MINLP are in general not valid for non convex constraints. It fol- lows that the linearization cuts might cut off not only infeasible points but also parts of the feasible region as depicted in Figure 1.1. Adding the cut represented by the dashed line
Figure 1.1: Example of “unsafe” linearization cut generated from a non convex constraint. in the figure would result in cutting off the upper part of the non convex feasible region, i.e., that above the cut. For this reason, if non convex constraints are involved, one has to carefully use linearization cuts or accept that the final solution might be not the optimal one. As for the methods for specifically handle non convexities, the first approach is to fully reformulate the problem. The exact reformulation is possible only in limited cases of non convex MINLPs and allows one to obtain an equivalent convex formulation of the non convex MINLP in the sense that: (i) all feasible x Rn1 Nn2 are mapped to unique and ∈ × 32 CHAPTER 1. INTRODUCTION TO MINLP PROBLEMS AND METHODS
feasible points of the feasible region of the convex formulation; and (ii) no other mixed integer (infeasible) solution x Rn1 Nn2 belongs to it. All the techniques tailored for ∈ × convex MINLPs can then be (safely) applied to the reformulated MINLP. For a detailed description of exact reformulations to standard forms, see, for example, Liberti et al. [42]. In this work, we focus on a second approach, which applies to a larger subset of non convex MINLPs, based on the use of convex envelopes or underestimators of the non con- vex feasible region, i.e., a relaxation like (1.2) where f¯ and g¯ are convex (or linear). Roughly speaking, the first step to reformulate the non convex problem (1.1) is to asso- ciate a convex relaxation with each part of the original model. This is obtained by adding auxiliary variables that “linearize” the non linearities of the original constraints. This way, complex non linearities are subdivided into simpler non linearities, at the cost of addi- tional variables and constraints. The basic non linearities are then relaxed using simple envelopes/underestimators. This type of reformulation by pieces only applies to factorable functions, i.e., functions that can be expressed as summations and products of univariate functions after appropriate recursive splitting. More precisely, a function f is factorable if it can be rewritten as:
f = fhk(x), Xh Yk where fhk(x) are univariate functions for all h, k. These functions can be reduced and reformulated into simpler non linear functions, adding auxiliary variables and constraints
such as shk = fhk(x), sh0 = k shk, sk00 = h sh0 . This modeling trick allows reformulating the model through predetermined operators for which convex underestimators are known, such as, for example, bilinear,Q trilinear, orP fractional terms (see, e.g., [40, 50, 68]). The use of underestimators makes the feasible region larger: if the optimal solution of the relaxation is feasible for the non convex MINLP, then it is also its global optimum. Oth- erwise, a refinement of the underestimation is needed. This is done by branching, not only on integer variables but also on continuous ones as depicted in Figure 1.2. This technique allows one to have a lower bound on the non convex MINLP optimum that can be used within an algorithm, like branch-and-bound specialized versions for global optimization, namely spatial branch-and-bound [68, 36, 38,7], branch-and-reduce [63, 64, 70], α-BB [4,2], Branch-and-Cut [34, 56]. Such algorithms provide a solution that is guaranteed to be a global optimum. The above specialized branch-and-bound methods for global opti- mization mainly differ on the techniques used to strengthen the relaxations and the branch- ing scheme adopted, namely, they might either concentrate first on discrete variables (until an integer feasible solution is found), then branch on continuous variables, or branch on both variable types without a prefixed priority. From the algorithmic viewpoint, one could also branch on continuous variables appearing in non convex terms first (see, e.g., [3] for details), but, to the best of our knowledge, this option is not available in the solvers. It is clear that algorithms of this type are very time-consuming in general and can be employed only for small- to medium-size instances. This is the price one has to pay for the guarantee of the global optimality of the solution provided. 1.4. MIXED INTEGER NON LINEAR PROGRAMMING TECHNOLOGY 33
Figure 1.2: Linear underestimators before and after branching on continuous variables.
From an implementation viewpoint, some complex structures are needed for imple- menting global optimization algorithms, such as the so-called symbolic expression trees (see, Smith and Pantelides [68] for their use in (global) optimization). For a detailed de- scription of the issues arising in developing and implementing a global optimization algo- rithm the reader is referred to Liberti [40]. The documentation of the specific solvers is also very useful. For an overview of the way to define functions f¯ and g¯ for non convex functions f and g with a specific structure, the reader is referred to [38, 39, 50, 55]. Finally, it is worth mentioning that some of the primal heuristic algorithms developed for MILP or convex MINLPs have been generalized to the non convex setting by specifically taking into account the non convexity issues described above. Actually, this is a very active research topic on which several contributions are on the way, see, e.g., [44, 19, 17, 53], to mention a few, and Section 3.1.1. Finally, as we did in the previous two sections, we list some general purpose solvers for non convex MINLP problems: ANTIGONE, BARON, Couenne, LINDO-global, and SCIP. In summary, the mathematical structure of the formulation has a major impact on solver performance. Moreover, formulations can be applied in sequence so as to guarantee certain mathematical properties of the resulting formulation (for example, a sequence of exact reformulations results in an exact reformulation [41]). 34 CHAPTER 1. INTRODUCTION TO MINLP PROBLEMS AND METHODS Chapter 2
Exact Methods for MINLP problems
In this chapter, we present exact methods for special classes of MINLP problems. As we mentioned in Section 1.4, in this manuscript we define “exact” the methods with a guarantee to converge to a global optimum within an ε-tolerance, thus we do not refer to exact rational solvers as, for example, [15]. This chapter is divided into two parts. Section 2.1 is devoted to methods aimed at the strengthening of classic relaxations such as continuous ones. In particular, we focus on spe- cial subclasses of MINLPs, i.e., the Euclidean Steiner Tree problem (2.1.1) and the Pooling problem (2.1.2). In Section 2.2 we describe two methods, namely SC-MINLP (2.2.1) and Polyopt (2.2.2), which are based on alternative relaxations of two special classes of separa- ble MINLPs, i.e., MINLPs with separable non convexities and box-constrained polynomial optimization problems. The alternative relaxations are obtained by exploiting the structure and properties of the specific class of problems, which make the methods tailored and non straightforwardly generalizable but more effective than the general methods. In both sections, the final aim is to explore the advantages and disadvantages of standard and non standard approaches that deeply exploit the structure of special subclasses of mixed integer non linear programs.
2.1 Methods based on strengthening of classic relaxations
As mentioned in Chapter1, the general purpose methods for MINLP problems are based on classic relaxations as continuous and linear/convex relaxations. In the next this section we introduce two problems, i.e., the Euclidean Steiner Tree problem and the Pooling problem, and two solution approaches that aim at strengthening their classic relaxations.
35 36 CHAPTER 2. EXACT METHODS FOR MINLP PROBLEMS
2.1.1 Euclidean Steiner Tree1
The Euclidean Steiner Tree problem (ESTP) is a challenging optimization problem for- mally defined as follows: we are given a set of points in Rn called terminals, find a tree of minimal Euclidean length spanning these points, using or not additional points, called Steiner points. The optimal solution of the ESTP is called Steiner minimal tree (SMT) and is characterized by the following properties:
each Steiner point in an SMT has degree 3 •
a Steiner point and its adjacent nodes lie in a plane, and the angles between the edges • connecting the point to its adjacent nodes are 120 degrees
a terminal in an SMT has degree between 1 and 3 •
an SMT on p terminals has at most p 2 Steiner points (see [31, 24]). • −
Examples of Steiner Minimal Trees are represented in Figure 2.1, where the blue dots represent the terminals and the red dots represent the Steiner points.
Figure 2.1: Euclidean Steiner Trees with n = 3 and n = 4.
A non convex MINLP formulation of the EST was proposed by Maculan et al. [49]. Before presenting the formulation, let us introduce some notation. Let P := 1, 2, ..., p be { } the indices associated with the given terminals a1, a2, ..., ap and S := p+1, p+2, ..., 2p { − 2 be the indices associated with the Steiner points which coordinates in Rn are represented } p+1 p+2 2p 2 by x , x , ..., x − . Let G = (V,E) be the corresponding graph with V = P S. Let ∪ us denote by (i, j) an edge of G, with i, j V such that i < j and define E := E E , ∈ 1 ∪ 2 where E := (i, j): i P, j S and E := (i, j): i S, j S . We introduce 1 { ∈ ∈ } 2 { ∈ ∈ } binary variables y for each edge (i, j) E, where y = 1 if the edge (i, j) is present in ij ∈ ij
1This section summarizes the contribution proposed in: C. D’Ambrosio, M. Fampa, J. Lee, S. Vigerske. On a Nonconvex MINLP Formulation of the Euclidean Steiner Tree Problem in n-Space, Lecture Notes in Computer Science, vol. 9125, International Symposium on Experimental Algorithms SEA 2015, E. Bampis ed., pp. 122–133, 2015. 2.1. METHODS BASED ON STRENGTHENING OF CLASSIC RELAXATIONS 37 the SMT and 0 otherwise. The ESTP is then formulated as follows:
(MMX) min ai xj y + xi xj y (2.1) k − k ij k − k ij (i,j) E1 (i,j) E2 X∈ X∈ y = 1 i P (2.2) ij ∀ ∈ j S X∈ y + y + y = 3 j S (2.3) ij kj jk ∀ ∈ i P k the sum of the distance with respect to the closest terminal to i and j respectively, then they cannot be connected just through two Steiner points. Note that we also reformulate MMX and all the additional valid inequalities so as to get rid of the non differentiability represented by the Euclidean norm, which might prevent NLP solvers to converge. The smoothing was carried over carefully so as to obtain a relaxation of MMX. The reader is referred to the published paper for the formal and complete definition of the valid inequalities and for details on the smoothing procedure. To test the effectiveness of the valid inequalities, we first provided the MMX model to a global optimization solver, namely SCIP. Then we provided it with MMX model with adjoint a different set of the new valid inequalities so as to test separately the effectiveness of each of them. Finally, we selected the three most effective valid inequality types and added all of them to MMX. The computational results are promising: we show that the lower bounds were better and the running time was shorter. 2.1.2 The pooling problem and its variant with binary variables2 The pooling problem consists of finding the optimal composition of final products obtained by blending in pools different percentages of raw materials. Formally, we are given a directed graph G = (V,A) where V is the set of vertices that is partitioned in three sets, i.e., the set of inputs or raw materials I, the set of pools or intermediate products L, and the set of outputs or final products J. Arcs (i, j) A link inputs to pools or outputs and ∈ pools to outputs, see, for example, Figure 2.2. Each node and arc is subject to capacity constraints but the “complicating constraints” concern the requirements on the quality of certain attributes of the final products. The quality is a linear combination of the attributes of the raw materials and intermediate products that compose the final product. As the quality of the attributes of the intermediate products is not known in advance, the constraint shows bilinear terms. We introduce the PQ-formulation [61, 69], the strongest known formulation for the standard pooling problem. 2This section summarizes the contribution presented in: J. Luedtke, C. D’Ambrosio, J. Linderoth, J. Schweiger. Strong Convex Nonlinear Relaxations of the Pooling Problem, ZIB Report 18-12 (submitted) and C. D’Ambrosio, J.T. Linderoth, J. Luedtke. Valid Inequalities for the Pooling Problem with Binary Variables, Lecture Notes in Computer Science vol. 6655, Integer Programming and Combinatorial Optimization Conference - IPCO 2011, O. Gunluk and G.J. Woeginger eds., Springer-Verlag, pp. 117-129, 2011. 2.1. METHODS BASED ON STRENGTHENING OF CLASSIC RELAXATIONS 39 Inputs I Pools L Outputs J Figure 2.2: Representation of the set of interest min cijxij (2.7) (i,j) A X∈ x + x C i I (2.8) il ij ≤ i ∀ ∈ l L:(i,l) A j J:(i,j) A ∈ X∈ ∈ X ∈ x C l L (2.9) lj ≤ l ∀ ∈ j J:(l,j) A ∈ X ∈ x + x C j J (2.10) lj ij ≤ j ∀ ∈ l L:(l,j) A i I:(i,j) A ∈ X ∈ ∈ X∈ q = 1 l L (2.11) il ∀ ∈ i I:(i,l) A ∈ X∈ w = q x i I, l L, j J :(i, j) A, (l, j)(2.12)A ilj il lj ∀ ∈ ∈ ∈ ∈ ∈ x = w i I, l L :(i, l) A (2.13) il ilj ∀ ∈ ∈ ∈ j J:(l,j) A ∈ X ∈ (γ γ )x + ik − jk ij iinI:(i,j) A X ∈ (γ γ )w 0 j J, k K (2.14) ik − jk ilj ≤ ∀ ∈ ∈ linL:(l,j) A iinI:(i,l) A X ∈ X ∈ w = x l L, j J :(l, j) A (2.15) ilj lj ∀ ∈ ∈ ∈ i I:(i,l) A ∈ X∈ w C q i I, l L :(i, l) A (2.16) ilj ≤ l il ∀ ∈ ∈ ∈ j J:(j,l) A ∈ X ∈ 0 x C i I L, j L J :(i, j) A (2.17) ≤ ij ≤ ij ∀ ∈ ∪ ∈ ∪ ∈ 0 q 1 i I, l L :(i, l) A. (2.18) ≤ il ≤ ∀ ∈ ∈ ∈ 40 CHAPTER 2. EXACT METHODS FOR MINLP PROBLEMS where, i I L, j L J :(i, j) A, x represents the flow going from node i to node ∀ ∈ ∪ ∈ ∪ ∈ ij j and, i I, l L :(i, l) A, q is the proportion of material in pool l coming from ∀ ∈ ∈ ∈ il source i. The objective function (2.7) minimizes the cost of production while satisfying the maximum capacity (2.8)-(2.10) at nodes in I, L, and J, respectively. Constraints (2.11) force the proportions for a given l to sum up to 1 and constraints (2.12) give the definition of dependent variables wilj. Note that this set of constraints is also the only non linear one. Constraints (2.13) define the relationship between x and w and constraints (2.14) represent an upper bound on the quality of each final product. Constraints (2.15) and (2.16) are the so-called Reformulation Linearization Technique [67] constraints which are redundant as they are obtained by the combination of previously introduced constraints. However, they are not redundant in the standard linear relaxation of the problem (McCormick envelopes [50] of constraints (2.12)) and, on the contrary, help to strengthen the linear relaxation of (2.7)-(2.18). Finally, constraints (2.17) and (2.18) are simple bounds on variables x and q, respectively. Main contribution. The aim of the submitted paper is to strengthen the PQ-formulation. To derive a stronger relaxation of the pooling problem, we identify a simple relaxation of the pooling problem step by step. First, we consider only one single attribute k K and ∈ relax all constraints concerning the other attributes. Next, we consider only one output j J, remove all nodes and arcs which are not in a path to output j. In particular, this ∈ involves also other outputs. Then, we focus on pool l L with the intention to split flows ∈ into two categories, i.e., the flow through pool l and aggregated flow on all paths not pass- ing through pool l. Finally, we aggregate all the flow from the inputs to pool l. We can then project the remaining variables and constraints on a 5-variables set T that is a non con- vex relaxation of the pooling problem. We performed an extreme points analysis, derive valid inequalities that fully characterize the convex hull of set T and lift back them on the original space to derive valid inequalities of the pooling problem. Computational results demonstrate that the inequalities can significantly strengthen the convex relaxation of even the most sophisticated formulations of the pooling problem. Let us now consider the pooling problem with binary variables, i.e., a variant of the standard pooling problem where the topology of the network is not fixed. The reader is referred to the exhaustive survey [52] for a larger view on pooling problem variants. The pooling problem with binary variables can be modeled as a non convex MINLP. Let us add a few parameters and constraints. Parameters fil, which represent the fixed cost that has to be paid if the arc from input stream i I to pool l L is used. ∈ ∈ The new decision variables in the formulation are vil, binary variables with value 1 if the arc from input i I to pool l L is used, 0 otherwise. ∈ ∈ The objective is (2.7) is modified as follow: min cijxij + filvil. (i,j) A i I l L X∈ X∈ X∈ The q variables must satisfy properties of proportion and only be positive if the associated 2.2. ON SEPARABLE FUNCTIONS 41 arc was opened. Thus, (2.11) is replaced by q 1 l L; il ≤ ∀ ∈ i I X∈ and the following constraints are adjoined q v i I, l L. il ≤ il ∀ ∈ ∀ ∈ Main contribution. Also in this case, we focus on a single output and a single attribute and we extract an interesting set for which we derive valid inequalities. The set is a relaxation of the pooling problem with binary variables and a generalization of the well-known single- node fixed-charge flow set [57]. We introduce four classes of inequalities for this set. We call the first three classes quality inequalities because they are based on the constraints on the quality upper bound for a final product. The final class of valid inequalities is called pooling flow cover inequalities, as they are related to, but dominate, standard flow cover inequalities for the single-node fixed-charge flow set. We show that there are exponentially many pooling flow cover inequalities, but also that they can be separated in polynomial time. Our new valid inequalities are shown to be quite useful computationally on large instances. Inequalities generated at the root node of a branch-and-bound tree were added to a standard model for the problem and given to the global optimization solver BARON. With the strengthened model on a test suite of 76 instances solvable by BARON in 2 hours, adding the inequalities reduced BARON’s CPU time by a factor 2. 2.2 On Separable Functions In the following, we present two global optimization methods that exploit the properties of separable functions. In particular, in Section 2.2.1 we aim at solving MINLP with con- straints including non convex separable functions which are underestimating by distin- guishing their convex and concave part. In Section 2.2.2 we use separable underestimators for solving box-constrained polynomial optimization problems. 42 CHAPTER 2. EXACT METHODS FOR MINLP PROBLEMS 2.2.1 SC-MINLP3 In this section we focus on MINLP problems with separable non convexities defined as follows: min Cjxj j N X∈ f (x) + g (x ) 0 i M i ik k ≤ ∀ ∈ k H X∈ i L x U j N j ≤ j ≤ j ∀ ∈ x integer j I j ∀ ∈ where: n fi : R R are convex functions i M, → ∀ ∈ gik : R R are non convex univariate function i M, k Hi, → ∀ ∈ ∀ ∈ H N i M, and i ⊆ ∀ ∈ I N. ⊆ For j H we assume that the bounds are finite i M. Note also that, if H is empty, ∈ i ∀ ∈ i the corresponding i-th constraint defines a convex set. The problem, that we will call P in the following, is an MINLP problem with separable non convexities represented by terms k H gik(xk) i M with Hi non empty. ∈ i ∀ ∈ Main contribution. We propose the Sequential Convex MINLP (SC-MINLP) algo- rithm,P a global optimization method for solving mixed integer non linear programming problems with separable non convexities. It is based on a sequence of convex mixed in- teger non linear programming relaxation and non convex non linear programming restric- tions of the problem. These subproblems are solved at each iteration of the algorithm. The SC-MINLP algorithm provides at each iteration a lower bound, as solution of the convex MINLP relaxation of P , and an upper bound, as solution of the non convex NLP restriction of P . Both problems are solved through solvers used as “black-box”. Let us now introduce first the convex MINLP relaxation and then the non convex non linear programming restriction. Convex MINLP relaxation. For simplicity, let us consider a term of the form g(xk) := gik(xk) such that g : R R is a univariate non convex function of xk , for some k (k N). → ∈ 3This section summarizes the contribution presented in: C. D’Ambrosio, J. Lee, A. Wachter.¨ An algo- rithmic framework for MINLP with separable non-convexity, J. Lee and S. Leyffer (Eds.): Mixed-Integer Nonlinear Optimization: Algorithmic Advances and Applications, The IMA Volumes in Mathematics and its Applications, Springer New York, 154, pp. 315-347, 2012 and C. D’Ambrosio, J. Lee, A. Wachter.¨ A global-optimization algorithm for mixed-integer nonlinear programs having separable non-convexity, A. Fiat and P. Sanders (Eds.): ESA 2009 (17th Annual European Symposium. Copenhagen, Denmark, September 2009), Lecture Notes in Computer Science 5757, pp. 107-118, Springer-Verlag Berlin Heidelberg, 2009. 2.2. ON SEPARABLE FUNCTIONS 43 As the term g(xk) is univariate, it is possible to automatically detect the concavity/convexity intervals and to compute the following parameters and sets: [Pp 1,Pp] := the p-th subinterval of the domain of g (p 1 ... p ); − ∈ { } Hˇ := the set of indices of subintervals on which g is convex; Hˆ := the set of indices of subintervals on which g is concave. The main idea is to find a relaxation of P that keeps the convex parts of g(xk) while replaces the concave intervals with a piecewise linear relaxation, see Figure 2.3. 2.5 2.5 2 2 1.5 1.5 1 1 0.5 0.5 0 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Figure 2.3: Univariate function g(xk) on the left and its convex MINLP relaxation on the right To do this, we replace the term g(xk) with: p 1 p Hˇ g(Pp 1 + δp) + p Hˆ (αpg(Pp) + (1 αp)g(Pp 1)) p=1− g(Pp) , ∈ − ∈ − − − and we includeP the following setP of new variables P δp: a continuous variable assuming a positive value iff xk Pp 1 (p 1,..., p¯ ); ≥ − ∈ { } z 0, 1 : binary variable taking value 1 iff x P (p 1,..., p¯ 1 ); p ∈ { } k ≥ p ∈ { − } α [0, 1]: the weight of the breakpoints of subinterval p (p Hˆ ); p ∈ ∈ and new constraints: p xk = P0 + δp p=1 X δp (Pp Pp 1)zp p Hˇ Hˆ ≥ − − ∀ ∈ ∪ δp (Pp Pp 1)zp 1 p Hˇ Hˆ ≤ − − − ∀ ∈ ∪ δp = (Pp Pp 1)αp p Hˆ − − ∀ ∈ 44 CHAPTER 2. EXACT METHODS FOR MINLP PROBLEMS with two dummy variables z0 := 1, zp := 0. Note that in [21, 22] the piecewise linear part of the relaxation is improved iteration by iteration by adding other breakpoints. However, we do not discuss this aspect as it is not the focus of this work. Non convex non linear restriction. At each iteration, an upper bound is obtained by fix- ing the integer variables to the value taken at the solution of the convex MINLP relaxation and then by solving the resulting non convex non linear programming problem to local optimality. If the lower bound and the upper bound coincide, then the corresponding solution is optimal for P . If this is not the case, we improve the convex MINLP relaxation by adding a breakpoint to each concave part which presents a non negligible error at the solution of the lower bound, see, for example, Figure 2.4. This provides a theoretical convergence 2.5 2.5 2 2 1.5 1.5 1 1 0.5 0.5 0 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Figure 2.4: Initial convex MINLP relaxation on the right and improvement guarantee to SC-MINLP. More recently, we worked on the strengthening of the convex MINLP relaxation based on Perspective Reformulation (PR), see [27], that can be applied as the lower bounding problem is a piecewise convex problem. In particular, we use a PR of each convex piece. More formally, let us consider a convex piece p Hˇ and let us define ∆p = Pp Pp 1. ∈ − − The relevant parts of the convex MINLP relaxation are g(Pp 1 +δp) g(Pp 1) and ∆pzp − − − ≤ δp ∆pzp 1 with zp 1 0, 1 and zp 0, 1 that define the non convex function ≤ − − ∈ { } ∈ { } 0 if zp 1 = 0 and δp = 0 − g(δp, zp 1) = g(Pp 1 + δp) g(Pp 1) if zp 1 = 1 and δp ∆p − − − − − ≤ + otherwise ∞ and its convex envelope 0 if zp 1 = 0 and δp = 0 − δp g˜(δp, zp 1) = zp 1g(Pp 1 + ) g(Pp 1) if zp 1 (0, 1] and δp ∆p zp 1 − − − − − − − ∈ ≤ + otherwise. ∞ 2.2. ON SEPARABLE FUNCTIONS 45 We use the function g˜(δp, zp 1) to define the PR of the lower bounding problem that is − stronger than the one presented in the previous section. Preliminary computational results show that this approach outperforms the standard algorithm implemented in Bonmin and the standard linearization of convex MINLPs solved via Cplex. 2.2.2 Polyopt4 In this section we focus on solution methods for a different subclass of MINLPs, namely the box-constrained mixed-integer polynomial optimization problems: min f(x) s.t. x [l, u] (MIPO) ∈ xi Z i I, ∈ ∀ ∈ n n α where l, u R (with l u and [l, u] := i=1[li, ui]) and f = α A cαx is an arbitrary ∈ ≤ ∈ polynomial of maximum degree d N and I 1, . . . , n . We can assume without loss ∈ Q ⊆ { } P of generality that li, ui Z for all i I. ∈ ∈ The method we propose, called PolyOpt, is a branch-and-bound method based on non n convex, separable underestimators of the form g(x) = i=1 gi(xi) (where gi(xi) are uni- ¯ ¯ 1 variate polynomials of degree at most d). We consider d = 2 2 d that is the smallest value that ensures the existence of g(x). P We show in the following how to get such underestimators and that their minimization is very fast and provide a good trade-off between approximation quality and tractability, which is very important so solve quickly non convex MINLPs in general. First of all, we note that finding the optimal underestimator g(x) for f(x) is an in- tractable problem. Thus, we decide to simplify the underestimator construction phase by considering monomial by monomial. An underestimator g(x) can then be obtained by summing up the underestimators of each monomial. Note that g(x) is typically not the best underestimator of f(x), but computing it monomial by monomial makes the underestimator building phase efficient. Moreover, we observe that, given an underestimator of a mono- mial defined on variable bounds [-1,+1], we can efficiently compute the underestimator of the monomial with variable bounds defined in any interval. Thanks to the previous simplifications and observations, we follow the following phases to build g(x). First, we compute the optimal underestimator of all monomials of degree d ≤ with variables domain defined in [ 1, +1]. In practice, we do it for d 4 (we refer the − ≤ 4This section summarizes the contribution presented in: C. Buchheim, C. D’Ambrosio. Monomial-wise Optimal Separable Underestimators for Mixed-Integer Polynomial Optimization, Journal of Global Op- timization, 67 (4), pp. 759–786, 2017 and C. Buchheim, C. D’Ambrosio. Box-Constrained Mixed-Integer Polynomial Optimization Using Separable Underestimators, Lecture Notes in Computer Science vol. 8494, Integer Programming and Combinatorial Optimization Conference - IPCO 2014, J. Lee and J. Vygen eds., Springer International Publishing, pp. 198–209, 2014. 46 CHAPTER 2. EXACT METHODS FOR MINLP PROBLEMS reader to [9, 10] for the related proofs). This step can be done offline and just once. Then, at each node of the branch-and-bound, we perform the following steps: shift each variable so as to have the bounds defined symmetric with respect to 0 • scale each variable domain so as that each variable bounds are [ 1, +1] • − replace each monomial with its predefined underestimator • sum up the so obtained univariate monomials and simplify them • scale the variables back • shift the variables back by obtaining g(x). • As (MIPO) has not constraints linking more than one variable, replacing f(x) with its un- derestimator g(x) makes the problem separable, i.e., it is possible to solve n subproblems, one for each variable, to minimize g(x). To solve each subproblem, it is sufficient to find the d¯ 1 points satisfying the first order condition g0(x) = 0. This can be done analyti- − i cally for d¯ 5, numerically otherwise. The only possible minima are these points and the ≤ variable bounds. If the variables are integer, the only possible minima are the rounding up or rounding down of these points and the variables bounds. Thus, the minimization of each subproblem is extremely fast. Moreover, it is possible to obtain an upper bound of (MIPO) by re-evaluating the solution of the underestimating problem with respect to f. We developed PolyOpt, the resulting branch-and-bound, and compare it against stan- dard software for mixed integer non linear optimization such as BARON [64], Couenne [7], and SCIP [66] and one of the best performing solvers for continuous polynomial optimiza- tion, i.e., GloptiPoly [30]. PolyOpt results to outperform all the other solvers on continuous, integer, and mixed-integer instances with variables bounds equal to [ 10, 10], [ 1, 1], and − − [0, 1] the only exception being the binary case where, though, it is still competitive. Chapter 3 Heuristic Methods In this section, we present heuristic methods. In particular, Section 3.1 is devoted to heuris- tic methods for general MINLPs such as Feasibility Pump, and Optimistic Approximation. Section 3.2 includes methods for specific classes of MINLPs, in particular, the nonlinear knapsack problem. 3.1 General methods We present in the following two methods for general MINLP problems which are meant to provide good quality solutions in short time. The first, namely Feasibility Pump, is based on two main simpler relaxations of MINLP problems, while the second, namely Optimistic Approximation, is based on a new linearization strategy of the non linear objective function and constraints. Even though these two methods can be applied to general MINLPs, they are characterized by special, nice properties for subclasses of MINLPs. 3.1.1 Non convex Feasibility Pump1 Feasibility Pump was introduced by Fischetti et al. [26] for mixed integer linear program- ming problems with binary variables, then extended to convex MINLPs [8] and to non convex MINLPs [18, 19]. It is an iterative algorithm that, at each iteration, solves two easier-to-solve relaxations of the original problem obtained by relaxing two disjoint subsets of constraints. Thus, at each iteration k, two solutions xˆk and xˇk, one for each relaxation, are produced. The aim is to make the two sequences xˆ1,..., xˆt and xˇ1,..., xˇt converge to the same point xˆt =x ˇt with t > 0, which is, by definition of the relaxations, a feasible so- lution of the original problem. To this end, the objective functions of the two subproblems 1This section summarizes the contribution presented in: C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. A Storm of Feasibility Pumps for Nonconvex MINLP, Mathematical Programming, 136 (2), pp. 375–402, 2012 and C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. Experiments with a Feasibility Pump Approach for Non-Convex MINLPs, Lecture Notes in Computer Science vol. 6049, 9th International Symposium on Experimental Algorithms - SEA 2010, P. Festa ed., Springer-Verlag, pp. 350 - 360, 2010. 47 48 CHAPTER 3. HEURISTIC METHODS are not the original objective function f(x), but the distance with respect to the last optimal solution found for the other subproblem. If we consider a MILP [26], (1.1) can be written as min c>x x Ax b 0 i = 1, . . . , m − ≤ ∀ x X ∈ where X includes simple bounds and integrality requirements. The two subproblems are defined as k 1 min x xˇ − x k − k Ax b 0 i = 1, . . . , m − ≤ ∀ x Rn ∈ and min x xˆk x k − k x X ∈ where in the first subproblem the integrality requirements are relaxed while in the sec- ond subproblem the constraints (bounds and integrality requirements excluded) are re- laxed. The objective function of the first subproblem is simplified to make it linear and, 2 thus, effectively solvable, i.e., minx j N 2:ˇx =0 xj + j N 2:ˇx =1(1 xj) where N = ∈ j ∈ j − n + 1, . . . , n . As for the second subproblem, as no constraint is left besides the sim- { 1 2} P P ple bounds and the integrality requirements, solving it corresponds to a rounding phase. Thus, both subproblems are fast to solve. However, the convergence can be reached only if the solutions of the two subproblems are not explored more than once, i.e., if cycles in the sequences of solutions are avoided. Fischetti et al. proposed to avoid cycles by flipping ran- domly the value of solutions xˇ if it is already present in a “taboo list”, filled iteration after iteration. The resulting algorithm shows good performances in finding feasible solutions in short time on MILP problems from the literature. In the case of convex MINLP studied by Bonami et al. [8], the two subproblems are k 1 min x xˇ − 2 (3.1) x k − k g (x) 0 i = 1, . . . , m (3.2) i ≤ ∀ x X (3.3) ∈ and k min x xˆ 1 (3.4) x k − k g (x) 0 i = 1, . . . , m, k K (3.5) ik ≤ ∀ ∀ ∈ x X (3.6) ∈ 3.1. GENERAL METHODS 49 k where gik(x) is the outer-approximation linearization of gi(x) at xˆ . Note that the first subproblem is a convex NLP and the second can be written as a MILP. Set K is enriched at each iteration, thus the MILP relaxation is improved iteration after iteration. Moreover, the sequence of solutions xˇ cannot cycle. Main contribution. We further extended the FP algorithm to non convex MINLPs. We also introduced the interpretation of FP as a Successive Projection Method (SPM) for finding a point x . In fact, it was proved that this feasibility problem can be rewritten ∈ A∩B as xˆ xˇ xˆ and ˇ . This is useful if optimizing over and separately is {k − k| ∈ A § ∈ B} A B easier than optimizing over . Given an initial point xˇ0, the SPM generates a sequence k k Ak ∩ B k 1 k k of points (ˆx , xˇ ) such that xˆ = xˆ xˇ − xˆ and xˇ = xˆ xˇ xˇ . {k − k | ∈ A} {k − k | ∈ B} It is easy to see that, as discussed below, each iteration improves the objective function of the two subproblems, so that one can hope that the sequence will converge to some fixed point, which therefore provides a positive answer to the feasibility problem. The similarities of SPM with FP are clear: represents the feasible set of the first subproblem, A while represents the feasible set of the second subproblem. Two of the main differences B are the following: (i) and are typically convex sets in SPM but not in FP; (ii) the norms A B used in the objective function of the two subproblems are the same in SPM, while not in FP. This is motivated by the wish of preserving the practical tractability of the subproblems as, for example, for the outer-approximation linearization subproblem for the FP for convex MINLPs. However, in case the norms do not coincide, it is not granted that the objective functions of the two subproblems improve at each iteration, as for SPM. To cope with this issue while retaining the local convergence properties of standard SPMs we propose the introduction of appropriate norm constraints in the subproblems, i.e., adding a norm constraint to the first subproblem. These observations allow us to design many possible different variants of the FP, de- pending on how several different (orthogonal) implementation choices are taken. Different variants were tested and compared in [?] on MINLP instances from the literature. The new interpretation of FP as a SPM provides a wider framework that can be, if needed, tailored for a specific subclass of MINLPs. For example, in Section 4.6 we briefly describe how we tailored the FP algorithm to solve a challenging real-world problem, i.e., the aircraft de- confliction with speed regulation which is a crucial problem of aircraft conflict avoidance arising in air traffic management. 3.1.2 Optimistic approximation2 One of the classic method used in the past and nowadays, especially when one is inter- ested to find a feasible solution of a MINLP in a short time, is to approximate the non linear functions in the objective function and constraints of the MINLP thanks to piecewise 2This section summarizes the contribution presented in: R. Rovatti, C. D’Ambrosio, A. Lodi, S. Martello. Optimistic MILP Modeling of Non-linear Optimization Problems, European Journal of Operations Re- search, 239 (1), pp. 32–45, 2014. 50 CHAPTER 3. HEURISTIC METHODS linear approximations. The standard approximations based on the affine combination of breakpoints are known to be underestimators for concave functions and overestimators for convex functions. However, when the functions are neither convex nor concave, the ap- proximation is neither a relaxation nor a restriction, thus it does not provide lower or upper bounds. In the literature many different ways to model piecewise linear approximations were presented, see, for example, [72] for an extensive overview. All these models assume that, given a non linear function of n variables, on each piece in which the variables domain is divided the non linear function is approximated by a hyperplane defined by n+1 non de- generate breakpoints. Thus, each hyperplane is uniquely defined as an affine combination of the n + 1 breakpoints. For example, in 3D we divide the variables domain into triangles and, on each triangle, the hyperplane is uniquely defined by the 3 vertices of the triangle, evaluated at the non linear function the hyperplane approximates. Main contribution. Our approach differs because we do not assume that each hyper- plane composing the piecewise linear approximation should be uniquely defined. On the contrary, we divide each variable domain into intervals, which implies that the variables domain is divided into hyper rectangles. At each hyper rectangle of the variables domain, the non linear function is approximated as an affine combination of the vertices of the hy- per rectangle evaluated at the non linear function. Consequently, we leave a higher degree of freedom to the approximation that is represented by a thicker portion of space than hy- perplanes. Let us consider the 3D case: the portion of the space approximating the non linear function, in this case, would be the one between the two couples of hyperplanes that would be identified in the standard approach by dividing the rectangle of interest into two triangles by considering either one diagonal or the other (see Figure 3.1). The feasible set Figure 3.1: The portion of the space approximating the non linear function lies between the two triangles in grey. is larger than the one of the standard approach, thus the objective function will drive the optimization to pick one of the points approximating the function. This is why we call this approach “the optimistic approximation”. The model resulting from this approach is a MILP, as in the standard approaches, but with a lower number of binary variables, formally, 3.2. TAILORED METHODS 51 it is of the order of the sum of the number of intervals in which each variable domain is divided instead of the order of their product. The positive impact of the reduction of binary variables is confirmed by the results of extensive computational tests. The proposed approximation own several interesting properties like continuity, a bound on the approximation error which corresponds to the one of the standard approach worse case, it provides the best possible linear interpolation of the given breakpoints in the case of minimization of a convex function and the best possible lower bound in the case of max- imization of a concave function. These properties make the approach even more interesting to approximate specific classes of MINLP problems. 3.2 Tailored methods The heuristic methods for specific subclasses of MINLP problems exploit even more inten- sively the structure and characteristics of the problem at hand. In this following, we report an example of a challenging problem, namely the non linear knapsack problem. 3.2.1 Non linear Knapsack Problem3 Given n items and a knapsack, the non linear knapsack problem (KP) consists in deciding how many units of item j to load in the knapsack so as to maximize the profit provided by the loaded quantity of each item and to satisfy the knapsack capacity. A mathematical programming formulation can be the following max fj(xj) (3.7) j N X∈ g (x ) c (3.8) j j ≤ j N X∈ 0 x u j N (3.9) ≤ j ≤ j ∀ ∈ x integer j N N (3.10) j ∀ ∈ ⊂ where N = 1, ..., n and x are the decision variables. The objective function represents { } j the total profit while the first constraint concerns the knapsack capacity. The second set of constraints are simple bounds on the variables (non negative quantity and upper bound u on the availability of each item j with j N) and the last set of constraints model the j ∈ fact that some items are indivisible. We assume that f(x) and g(x) are twice continuously differentiable, separable, non linear, non negative, non decreasing functions. The proposed heuristic exploits these properties of f(x) and g(x). 3This section summarizes the contribution presented in: C. D’Ambrosio, S. Martello. Heuristic algorithms for the general nonlinear separable knapsack problems, Computers and Operations Research, 38 (2), pp. 505-513, 2011. 52 CHAPTER 3. HEURISTIC METHODS Main contribution. The main ingredient of the constructive heuristic is the discretiza- tion of the solution space. Given a positive integer s, the variables domain is divided into s intervals of equal length. At each of the resulting s + 1 discretization points, the profit and the weight is computed and the profit-to-weight ratios are computed. Taking some ideas from heuristics for the 01-KP, i.e., the knapsack problem with binary variables and linear profit and weight functions, we identify the item j and discretization point k with the best profit-to-weight ratio. The best item j is inserted in the knapsack up a quantity that is as large as possible but for which the profit-to-ratio is still better than the one of the second best item (thus, at least the quantity corresponding to discretization point k is inserted). Moreover, in a refinement step, the interval after the inserted quantity is further divided into smaller intervals and potentially a larger quantity of item j is taken. After the upper bound on item j, the knapsack capacity, and the profit-to-weight ratios are updated, the sec- ond best item is considered and so on. To improve the solution found by the constructive heuristic, a local search algorithm is deployed so as to explore, for each couple of items, a potential increase of the quantity of one and decrease of the other. Extensive computational results clearly show that the proposed methods outperform all the solvers in finding a good feasible solution in short CPU time. The heuristic algorithm was recently extended to the multiple non linear knapsack prob- lem in [51]. Also in this case, it exploits the fact that the profit and the weight functions are non decreasing and that their value at 0 is 0. Chapter 4 Other contributions In this chapter, we briefly report some contributions in other research topics like mixed inte- ger linear programming, black-box optimization, multiobjective programming, and bilevel programming. 4.1 Feasibility issues on Hydro Unit Commitment It is a well known fact that electricity cannot be stored easily, and that one of the most effi- cient and long-term methods for storing it is to turn it into potential energy by pumping wa- ter up mountain valleys into natural or artificial water basins. A system of interconnected valleys presents several issues when storing and re-using stored electricity. Specifically, scheduling the pumps, basins, and valleys is known as the Hydro Unit Commitment (HUC) problem. In France, hydroelectricity production represents the second source of production after nuclear power. HUC problems are usually modeled using mathematical programming and solved using a range of algorithms going from heuristic to exact. We study this crucial problem for Electricite´ de France (EDF) (see [65]). Hydro valleys are composed of inter- connected reservoirs and hydro-power plants distributed all along the valley. We simplify the problem by linearizing the non linear functions via piecewise linear approximation. Thus, the problem can be formulated as a mixed integer linear program. Besides physi- cal and classic constraints, at EDF they consider two additional specifications, namely the discrete definition of operational points of the power-flow curves and the target volumes. These “strategic” constraints can generate feasibility issues, that is the focus of our work. However, possible sources of feasibility issues are the standard issues affecting real-world data. Our contribution consists in proposing a method to analyze and detect the different sources of infeasibility so as to be able to isolate and fix them. We proceed via a step-by- step approach to identify one source of infeasibility at a time, i.e., numerical errors and model infeasibilities. The former is analyzed and fixed through tools like exact solvers and a preliminary processing on the model. The remaining infeasibilities are dealt with thanks 53 54 CHAPTER 4. OTHER CONTRIBUTIONS to a biobjective lexicographic approach. The first phase consists on solving the MILP that minimize the deviation from target volumes while making the problem feasible. In the second phase, we solve a slightly relaxed problem, i.e., the original problem but allowing a possible deviation from the target volumes as calculated in the first stage. Computational results on 66 real-world instances provided by EDF showed that the lexicographic method is able to recover feasibility in short amount of time and compute quickly a solution in the great majority of the cases. 4.2 MILP models for the selection of a small set of well- distributed points In [23], we consider the design of experiment phase of constrained black-box optimization, an initialization step that aims at sampling an unknown function hidden behind a black- box for fitting a surrogate model of the set of selected points. Well-known measures of quality of the selection of the points are good space-filling and orthogonality properties. In particular, these are the properties that make the latin hypercube design interesting and useful in general. However, when the problem is strongly constrained, the latin hypercube design approach fails. Our method addresses this difficult case. Assuming we are given a large set of feasible points, our method selects a smaller sub- set of these points such that these properties are guaranteed. We do it by modeling the selection process as four different MILP model and show that the corresponding optimiza- tion problems are NP-hard. We tested our method and showed that our models select points that are well-distributed in the space and, on average, reduce the variance of model fitting errors. Clearly, our models might be too difficult to solve in real-world applications. How- ever, it can be an effective method to find good feasible solutions thanks to a compromise between practical complexity and meaningfulness of the good properties measure. 4.3 The well placement and design problem in reservoir engineering In [47] and [46] we study the problem of placement and design of wells in reservoir engi- neering. The objective is to maximize the estimated profit from oil production considering a long term horizon of 10 to 50 years. The main difficulty with this problem is that the forecasted oil production is computed through time consuming simulations which makes it a black-box optimization problem. Our decision variables consist of (i) number of wells, and, for each active well, (ii) their location and type and (iii) the number of their branches and their trajectories. We propose a method in two-steps. In the first step, only vertical wells without branches are considered and decisions are taken on variables of type (i) and (ii) to maximize oil production. This is achieved thanks to a direct search method coupled 4.4. A HEURISTIC FOR MULTIOBJECTIVE CONVEX MINLPS 55 with surrogate models approximating the objective function to obtain a good estimation of the optimal number, location, and type of wells while limiting the number of simula- tions. A mixed integer Kriging model with adapted correlation functions is sequentially constructed during the direct search algorithm and is used in the exploration phase to iden- tify good candidates to be evaluated. In the second step, we fix the decisions taken in step 1 and consider only variables of type (iii). Specifically, we analyze the responses provided by the fluid flow simulator (e.g., oil saturation distribution over space and time) and model the problem of defining the geometry of the rectilinear well branches as a MINLP problem. We, then, solve it through standard MINLP solvers and potentially improve the current so- lution. We tested our approach on small instances and obtained promising results. We plan to extend our tests to realistic problems so as to validate our method. 4.4 A branch-and-bound based heuristic for multiobjec- tive convex MINLPs In [12], we study an algorithm for finding a good approximated set of non dominated points for convex multiobjective Mixed Integer Non Linear Programming problems. The proposed heuristic is based on a branch-and-bound algorithm. In the initialization step, the problem is solved with an ε-constraint method, where a single objective model that incorporates the other objective functions as constraints is solved using different right- hand-sides for each additional constraint. In the branch-and-bound tree search, dual bound vectors are computed by solving continuous, convex NLP relaxation considering one ob- jective function at a time. At leaf nodes, the corresponding convex multiobjective NLP is solved heuristically through the classic weighted sum approach. As the use of this meth- ods does not guarantee that the solutions found are non dominated, we designed a tailored refinement procedure to remove and improve dominated points. Finally, we tested the proposed algorithm on instances of nonlinear knapsack problem and HUC, comparing it with well-known scalarization methods, showing the effectiveness of the proposed method. 4.5 An algorithm for bilevel programming with an appli- cation to smart grids In papers [43], [71], and [58] we considered the observability problem in smart grids. The observability of a network is provided by devices like Phasor Measurement Units (PMUs) that are capable of estimating the state of the grid. More formally, given an undirected graph representing the network, the problem of PMU placement consists of finding the minimum number of PMUs to place on the edges such that the graph is fully observed. This problem is also known as Power Edge Set problem, a variant of the Power Dominating Set problem. 56 CHAPTER 4. OTHER CONTRIBUTIONS We identified two observability propagation rules derived from Ohm’s and Kirchoff’s laws and designed two mathematical programs to model the problem. The first, a MILP model, is based on variables indexes representing the observability process iterations. The second, a bilevel model, includes the decisions on the PMU placement in the upper-level problem, while the observability propagation appears in the lower-level problem. This is possible by exploiting the fact that the observability propagation can be written as a minimal fixed-point of a specific function. We propose to solve the bilevel problem in two different ways: first, the problem can be rewritten as a single-level MILP obtained by writing in the upper-level the KKT conditions of the lower-level problem; second, a tailored cutting plane algorithm was designed to solve the bilevel problem. Computational results show that the cutting plane method is the only one that scales to large size networks. 4.6 Feasibility Pump algorithms for aircraft deconfliction with speed regulation In [13] we tackle the problem of aircraft deconfliction with speed regulation which is a crucial problem of aircraft conflict avoidance arising in air traffic management. In this context, it is particularly important to provide fast feasible solutions to solve the critical, dangerous situation of aircraft trajectories to be too close to each other or, worse, aircraft collision. The aim of our study, founded by the ANR project “ATOMIC”, was to propose tailored heuristics to find a good quality heuristic solution in short time. The problem can be modeled as a mixed integer nonlinear optimization problem, whose solution can be very computationally demanding. For this reason, we specialized the framework of Fea- sibility Pump for non convex MINLP problems (Section 3.1.1) to the problem of aircraft deconfliction with speed regulation by identifying two complementary and easier to solve relaxations, namely a tailored non convex continuous relaxation and a tailored mixed inte- ger linear relaxation. In this version of FP, at each iteration, we solve alternatively these two subproblems, minimizing the distance between their solutions. We tested our algorithm on instances from the literature showing that, on the considered test problems, good-quality, in some cases optimal, feasible solutions are always obtained, thus improving the best results from the literature. 4.7 On the Product Knapsack Problem In [20] we study the Product Knapsack Problem (PKP). In this knapsack problem variant, where each item is characterized by a profit and a weight, we aim at maximizing the product of the profits of the selected items. We first show that PKP is weakly NP-hard and present a Dynamic Programming algorithm adapted to this variant. Moreover, we introduce mixed integer linear and non linear programming formulations for the PKP. We test extensively and compare all the methods on a large set of instances. 4.8. LEARNING TO SOLVE HYDRO UNIT COMMITMENT PROBLEMS IN FRANCE57 4.8 Learning to Solve Hydro Unit Commitment Problems in France We focus on the mixed integer linear programming version of the HUC problem and aim at solving it exactly in short time. To do so, we focus on the configuration of the MILP solver and devise supervised Machine Learning (ML) techniques to learn a good solver configuration. In particular, we designed a Support Vector Regression (SVR) method to automatically learn a performance model of a complex system with many parameters, in function of the numerical and structural properties of the instance being solved. After we learn the performance model thanks to the SVR method, each time we need to solve an in- stance of the HUC problem, we optimize the performance model so as to obtain the solver configuration that corresponds to the best performance. Preliminary results can be found in the master thesis [32] and, thanks to a PhD grant, we will perform a more extensive com- putational study and generalize the approach so as to learn how to solve other optimization problems. 58 CHAPTER 4. OTHER CONTRIBUTIONS Chapter 5 Conclusions and Future Research In this manuscript, we summarize the main contributions of our research of the last 12 years. Our main research interests are theoretical and applied aspects of mixed integer non linear programming, i.e., optimization problems in which both continuous and integer decision variables are present and, in general, non linear functions define the objective to minimize and the constraints to satisfy. The strategy to tackle this kind of problems was to analyze and take advantage of specific properties that characterize (subclasses of) MINLPs. After an introduction on MINLPs and classical methods to solve them and the most widely used MINLP subclasses such as mixed integer linear programming and non linear programming, we present exact methods for special classes of MINLPs based either on the strengthening of classical relaxations or on non standard relaxations. Then, we describe heuristic methods for generic MINLPs or specific subclasses of MINLPs like the non linear knapsack and its generalizations. In the future, we plan to focus on the following methodological aspects of MINLP: - valid inequalities for new classes of MINLP - heuristics for new classes of MINLP - applications as Energy Optimization and Data Science. The first topic is particularly interesting for challenging classes of optimization prob- lems such as, for example, mixed integer non linear bilevel programming. For the EU project on “Mixed-Integer Non-Linear Optimisation: Algorithms and Applications” (MI- NOA) (https://minoa-itn.fau.de/) we plan to attack this kind of problems with cutting planes and branch and cut methods. In this context, the development of both linear and non linear valid inequalities, thus, we propose to strengthen linear relaxations and study non linear relaxations of the problems. As for the heuristic methods, there is a wide variety of problems which are very difficult to solve both in theory and in practice. Thus, sometimes exact methods cannot deal with them or, even worse, cannot find any feasible solution. Consequently, heuristic methods 59 60 CHAPTER 5. CONCLUSIONS AND FUTURE RESEARCH still play an important role in general purpose optimization solvers and in real-world appli- cations of MINLPs, for example in Data Science problems like classification and clustering. Also in this case it is often possible to identify some properties or characteristics that can be exploited or some effective algorithms for MILPs that can be extended and generalized to subclasses of MINLPs. For example, we are currently working on hybrid linearization methods for MINLPs which combines several methodologies to improve standard piece- wise linear approaches and produce efficient heuristics. Finally, we would like to continue investigating the applied optimization aspects of re- search in energy, with a particular attention to renewable energy and smart grids. We are very interested in interdisciplinary research and the TREND-X initiative of Ecole´ Polytech- nique is a perfect environment to create and develop synergies on this topic. An example of the potential results of this kind of research is the recently submitted paper on “Scenario for wind-solar energy mix in Italy from regional climate simulations” by M. Stefanon,´ P. Drobinski, J. Badosa, S. Concettini, A. Creti, C. D’Ambrosio, D. Thomopulos, P. Tankov. The other application we started being interested in more recently is Data Science and, in particular, Machine Learning. We think that the Optimization community can be very helpful to the Machine Learning community and vice-versa. We hope that the creation and consolidation of the DASCIM team (http://www.lix.polytechnique.fr/dascim/) will be a good occasion to make the two community closer than they used to be. The work mentioned in Section 4.8 is a first attempt to go in this direction. Bibliography [1] T. Achterberg. Constraint Integer Programming. PhD thesis, Technische Universitat¨ Berlin, 2007. [2] C.S. Adjiman, I.P. Androulakis, and C.A. Floudas. Global optimization of MINLP problems in process synthesis and design. Computers and Chemical Engineering, 21:445–450, 1997. [3] C.S. Adjiman, I.P. Androulakis, and C.A. Floudas. Global Optimization of Mixed- Integer Nonlinear Problems. AIChE Journa, 46:1769–1797, 2000. [4] I.P. Androulakis, C.D. Maranas, and C.A. Floudas. αbb: A global optimization method for general constrained nonconvex problems. Journal of Global Optimiza- tion, 7:337–363, 1995. [5] E.M.L. Beale and J.A. Tomlin. Special facilities in a general mathematical program- ming system for non-convex problems using ordered sets of variables. In J. Lawrence, editor, OR 69. Proceedings of the Fifth International Conference on Operational Re- search, pages 447–454. Tavistock Publications, 1970. [6] P. Belotti, C. Kirches, S. Leyffer, J. Linderoth, J. Luedtke, and A. Mahajan. Mixed- integer nonlinear optimization. Acta Numerica, 22:1–131, 2013. [7] P. Belotti, J. Lee, L. Liberti, F. Margot, and A. Wachter.¨ Branching and bounds tightening techniques for non-convex MINLP. Optimization Methods and Software, 24(4):597–634, 2009. [8] P. Bonami, G. Cornuejols,´ A. Lodi, and F. Margot. A feasibility pump for mixed integer nonlinear programs. Mathematical Programming, 119(2):331–352, 2009. [9] C. Buchheim and C. D’Ambrosio. Box-constrained mixed-integer polynomial opti- mization using separable underestimators. In Integer Programming and Combina- torial Optimization – 17th International Conference, IPCO 2014, volume 8494 of LNCS, pages 198–209, 2014. 61 62 BIBLIOGRAPHY [10] C. Buchheim and C. D’Ambrosio. Monomial-wise optimal separable underestima- tors for mixed-integer polynomial optimization. Journal of Global Optimization, 67(4):759–786, 2017. [11] M.R. Bussieck and S. Vigerske. MINLP Solver Software. John Wiley & Sons, Inc., 2011. [12] V. Cacchiani and C. D’Ambrosio. A branch-and-bound based heuristic algorithm for convex multi-objective MINLPs. European Journal of Operational Research, 260(3):920 – 933, 2017. [13] S. Cafieri and C. D’Ambrosio. Feasibility pump for aircraft deconfliction with speed regulation. Journal of Global Optimization, to appear. [14] A.R. Conn, K. Scheinberg, and L.N. Vicente. Introduction to derivative free Opti- mization. MPS/SIAM Book Series on Optimization, SIAM, Philadelphia, 2008. [15] W. Cook, T. Koch, D.E. Steffy, and K. Wolter. An exact rational mixed-integer pro- gramming solver. In O. Gunl¨ uk¨ and G.J. Woeginger, editors, Integer Programming and Combinatoral Optimization, pages 104–116, Berlin, Heidelberg, 2011. Springer Berlin Heidelberg. [16] R.J. Dakin. A tree-search algorithm for mixed integer programming problems. The Computer Journal, 8(3):250–255, 1965. [17] C. D’Ambrosio. Application-oriented mixed integer non-linear programming. 4OR: A Quarterly Journal of Operations Research, 8:319–322, 2010. [18] C. D’Ambrosio, A. Frangioni, L. Liberti, and A. Lodi. Experiments with a feasibility pump approach for nonconvex MINLPs. In P. Festa, editor, Experimental Algorithms, pages 350–360, Berlin, Heidelberg, 2010. Springer Berlin Heidelberg. [19] C. D’Ambrosio, A. Frangioni, L. Liberti, and A. Lodi. A storm of feasibility pumps for nonconvex MINLP. Mathematical Programming B, 136(2):375–402, 2012. [20] C. D’Ambrosio, F. Furini, M. Monaci, and E. Traversi. On the product knapsack problem. Optimization Letters, 12(4):691–712, 2018. [21] C. D’Ambrosio, J. Lee, and A. Wachter.¨ A global-optimization algorithm for mixed- integer nonlinear programs having separable non-convexity. In Algorithms—ESA 2009, volume 5757 of LNCS, pages 107–118. Springer, Berlin, 2009. [22] C. D’Ambrosio, J. Lee, and A. Wachter.¨ An algorithmic framework for minlp with separable non-convexity. In Jon Lee and Sven Leyffer, editors, Mixed Integer Nonlin- ear Programming, volume 154 of The IMA Volumes in Mathematics and its Applica- tions, pages 315–347. Springer New York, 2012. BIBLIOGRAPHY 63 [23] C. D’Ambrosio, G. Nannicini, and G. Sartor. MILP models for the selection of a small set of well-distributed points. Operations Research Letters, 45(1):46 – 52, 2017. [24] D. Du and X. Hu. Steiner tree problems in computer communication networks. World Scientific Publishing Co. Pte. Ltd., Hackensack, NJ, 2008. [25] M. Duran and I. Grossmann. An outer-approximation algorithm for a class of mixed- integer nonlinear programs. Mathematical Programming, 36:307–339, 1986. [26] M. Fischetti, F. Glover, and A. Lodi. The feasibility pump. Mathematical Program- ming, 104:91–104, 2004. [27] A. Frangioni and C. Gentile. Perspective cuts for a class of convex 0-1 mixed integer programs. Mathematical Programming, 106(2):225–236, 2006. [28] I.E. Grossmann. Review of nonlinear mixed-integer and disjunctive programming techniques. Optimization and Engineering, 3:227–252, 2002. [29] O.K. Gupta and V. Ravindran. Branch and bound experiments in convex nonlinear integer programming. Management Science, 31:1533–1546, 1985. [30] D. Henrion, J. B. Lasserre, and J. Loefberg. Gloptipoly 3: moments, optimization and semidefinite programming. Optimization Methods and Software, 24:761–779, 2009. [31] F.K. Hwang, D.S. Richards, and W. Winter. The Steiner tree problem, volume Ann. of Disc. Math. 53. Elsevier, Amsterdam, 1992. [32] G. Iommazzo. Combining ML and Mathematical Optimization techniques to tackle automatic IBM ILOG CPLEX configuration on Hydro Unit Commitment problems. PhD thesis, Master’s thesis, 2017. [33] R. Jeroslow. There cannot be any algorithm for integer programming with quadratic constraints. Operations Research, 21:221–224, 1973. [34] P. Kesavan and P.I. Barto. Generalized branch-and-cut framework for mixed-integer nonlinear optimization problems. Computers and Chemical Engineering, 24:1361– 1366, 2000. [35] J. Lee and Editors S. Leyffer. Mixed Integer Nonlinear Programming, The IMA Vol- umes in Mathematics and its Applications, Vol. 154. Springer, 2012. [36] S. Leyffer. Integrating SQP and branch-and-bound for mixed integer nonlinear pro- gramming. Computational Optimization and Applications, 18:295–309, 2001. [37] S. Leyffer and A. Mahajan. Software For Nonlinearly Constrained Optimization. John Wiley & Sons, Inc., 2011. 64 BIBLIOGRAPHY [38] L. Liberti. Reformulation and Convex Relaxation Techniques for Global Optimiza- tion. PhD thesis, Imperial College London, UK, 2004. [39] L. Liberti. Reformulation and convex relaxation techniques for global optimization. 4OR: A Quarterly Journal of Operations Research, 2:255–258, 2004. [40] L. Liberti. Writing global optimization software. In L. Liberti and N. Maculan, edi- tors, Global Optimization: from Theory to Implementation, pages 211–262. Springer, Berlin, 2006. [41] L. Liberti. Reformulations in mathematical programming: Definitions and systemat- ics. RAIRO-RO, 43(1):55–86, 2009. [42] L. Liberti, S. Cafieri, and F. Tarissan. Reformulations in mathematical programming: A computational approach. In A. Abraham, A.E. Hassanien, and P. Siarry, editors, Foundations on Computational Intelligence, Vol. 3, Studies in Computational Intelli- gence, volume 203, pages 153–234. Springer, New York, 2009. [43] L. Liberti, C. D’Ambrosio, P.-L. Poirion, and S. Toubaline. Measuring smart grids. In Proceedings of AIRO 2015, Pisa, Italy, pages 11–20. 2015. [44] L. Liberti, G. Nannicini, and N. Mladenovic. A good recipe for solving MINLPs. In V. Maniezzo, T. Stutzle,¨ and S. Voss, editors, MATHEURISTICS: Hybridizing meta- heuristics and mathematical programming, volume 10 of Annals of Information Sys- tems, pages 231–244. Springer, 2009. [45] J.T. Linderoth and A. Lodi. MILP Software. John Wiley & Sons, Inc., 2011. [46] C. Lizon, C. D’Ambrosio, and L. Liberti. Methode´ non lineaire´ mixte en variables entires et reelles´ pour le placement et la geom´ etrie´ des puits en ingenierie´ de reservoir.´ In Proceedings of Journees´ Polyedres` et Optimisation Combinatoire (JPOC9), Le Havre, France. 2015. [47] C. Lizon, C. D’Ambrosio, L. Liberti, M. Le Ravalec, and D. Sinoquet. A mixed- integer nonlinear optimization approach for well placement and geometry. In Pro- ceedings of ECMOR XIV - 14th European conference on the mathematics of oil re- covery, Catania, Italy, pages 1838–1848. 2014. [48] A. Lodi. Mip computation and beyond. In M. Junger, T. Liebling, D. Naddef, W. Pul- leyblank, G. Reinelt, G. Rinaldi, and L. Wolsey, editors, 50 Years of Integer Program- ming 1958-2008. Springer Verlag, 2008. [49] N. Maculan, P. Michelon, and A.E. Xavier. The Euclidean Steiner tree problem in Rn: A mathematical programming formulation. Ann. OR, 96(1-4):209–220, 2000. BIBLIOGRAPHY 65 [50] G.P. McCormick. Computability of global solutions to factorable nonconvex pro- grams: Part I - convex underestimating problems. Mathematical Programming, 10:147–175, 1976. [51] L. Mencarelli, C. D’Ambrosio, A. Di Zio, and S. Martello. Heuristics for the general multiple non-linear knapsack problem. Electronic Notes in Discrete Mathematics, 55(Supplement C):69 – 72, 2016. 14th Cologne-Twente Workshop on Graphs and Combinatorial Optimization (CTW16). [52] R. Misener and C.A. Floudas. Advances for the pooling problem: Modeling, global optimization, & computational studies. Applied and Computational Mathematics, 8:3–22, 2009. [53] G. Nannicini and P. Belotti. Rounding-based heuristics for nonconvex minlps with binary variables. Technical report, Working paper, 2009. [54] J. Nocedal and S.J. Wright. Numerical Optimization. Springer Series in Operations Research, 2006. [55] I. Nowak. Relaxation and Decomposition Methods for Mixed Integer Nonlinear Pro- gramming. International Series of Numerical Mathematics, Birkhauser¨ Verlag, 2005. [56] I. Nowak and S. Vigerske. LaGO - a (heuristic) branch and cut algorithm for non- convex MINLPs. Central European Journal of Operations Research, 16:127–138, 2008. [57] M. Padberg, T. J. Van Roy, and L. Wolsey. Valid linear inequalities for fixed charge problems. Operations Research, 33:842–861, 1985. [58] P.-L. Poirion, S. Toubaline, C. D’Ambrosio, and L. Liberti. The power edge set problem. Networks, 68(2):104–120, 2016. [59]R.P orn¨ and T. Westerlund. A cutting plane method for minimizing pseudo-convex functions in the mixed-integer case. Computers and Chemical Engineering, 24:2655– 2665, 2000. [60] I. Quesada and I.E. Grossmann. An LP/NLP based branch and bound algorithm for convex MINLP optimization problems. Computer and Chemical Engineering, 16:937–947, 1992. [61] I. Quesada and I.E. Grossmann. Global optimization of bilinear process networks and multicomponent flows. Computers & Chemical Engineering, 19(12):1219–1242, 1995. [62] R.Kannan and C. Monma. On the computational complexity of integer programming problems. Lecture Notes in Economics and Mathematical Systems, 157:161–17, 1978. [63] H. Ryoo and N.V. Sahinidis. A branch-and-reduce approach to global optimization. Journal of Global Optimization, 8:107–138, 1996. [64] N.V. Sahinidis. BARON: a general purpose global optimization software package. Journal of Global Optimization, 8:201–205, 1996. [65] Y. Sahraoui, P. Bendotti, and C. D’Ambrosio. Real-world hydro-power unit- commitment: Dealing with numerical errors and feasibility issues. Energy, to appear. [66] SCIP. http://scip.zib.de/scip.shtml. [67] H.D. Sherali and W.P. Adams. A Reformulation-Linearization Technique for Solv- ing Discrete and Continuous Nonconvex Problems. Kluwer Academic Publishers, Dodrecht, 1999. [68] E.M.B. Smith and C.C. Pantelides. A symbolic reformulation/spatial branch and bound algorithm for the global optimization of nonconvex MINLPs. Computers and Chemical Engineering, 23:457–478, 1999. [69] M. Tawarmalani and N. Sahinidis. Convexification and Global Optimization in Con- tinuous and Mixed-Integer Nonlinear Programming : Theory, Algorithms, Software, and Applications. Kluwer, Dordrecht, 2002. [70] M. Tawarmalani and N. V. Sahinidis. Global optimization of mixed-integer nonlin- ear programs: A theoretical and computational study. Mathematical Programming, 99:563–591, 2004. [71] S. Toubaline, P.-L. Poirion, C. D’Ambrosio, and L. Liberti. Observing the state of a smart grid using bilevel programming. In Z. Lu, D. Kim, W. Wu, W. Li, and D.-Z. Du, editors, Combinatorial Optimization and Applications, pages 364–376, Cham, 2015. Springer International Publishing. [72] J. P. Vielma, S. Ahmed, and G. Nemhauser. Mixed-integer models for nonsepara- ble piecewise-linear optimization: Unifying framework and extensions. Operations Research, 58(2):303–315, 2010. Appendix A Selected Publications 1. C. D’Ambrosio, A. Lodi. Mixed integer nonlinear programming tools: an updated practical overview, Annals of Operations Research, 204, pp. 301–320, 2013. 2. C. D’Ambrosio. Application-oriented Mixed Integer Non-Linear Programming. 4OR: A Quarterly Journal of Operations Research, 8 (3), pp. 319-322, 2010. 3. C. D’Ambrosio, M. Fampa, J. Lee, S. Vigerske. On a Nonconvex MINLP Formu- lation of the Euclidean Steiner Tree Problem in n-Space, Lecture Notes in Com- puter Science, vol. 9125, International Symposium on Experimental Algorithms SEA 2015, E. Bampis ed., pp. 122–133, 2015. 4. C. D’Ambrosio, J.T. Linderoth, J. Luedtke. Valid Inequalities for the Pooling Prob- lem with Binary Variables, Lecture Notes in Computer Science vol. 6655, Integer Programming and Combinatorial Optimization Conference - IPCO 2011, O. Gunluk and G.J. Woeginger eds., Springer-Verlag, pp. 117-129, 2011. 5. C. D’Ambrosio, J. Lee, A. Wachter.¨ An algorithmic framework for MINLP with separable non-convexity, J. Lee and S. Leyffer (Eds.): Mixed-Integer Nonlinear Optimization: Algorithmic Advances and Applications, The IMA Volumes in Mathematics and its Applications, Springer New York, 154, pp. 315-347, 2012. 6. C. Buchheim, C. D’Ambrosio. Monomial-wise Optimal Separable Underestimators for Mixed-Integer Polynomial Optimization, Journal of Global Optimization, 67 (4), pp. 759–786, 2017. 7. C. D’Ambrosio, A. Frangioni, L. Liberti, A. Lodi. A Storm of Feasibility Pumps for Nonconvex MINLP, Mathematical Programming, 136 (2), pp. 375–402, 2012. 8. R. Rovatti, C. D’Ambrosio, A. Lodi, S. Martello. Optimistic MILP Modeling of Non-linear Optimization Problems, European Journal of Operations Research, 239 (1), pp. 32–45, 2014. 67 9. C. D’Ambrosio, S. Martello. Heuristic algorithms for the general nonlinear separable knapsack problems, Computers and Operations Research, 38 (2), pp. 505-513, 2011. Ann Oper Res DOI 10.1007/s10479-012-1272-5 Mixed integer nonlinear programming tools: an updated practical overview Claudia D’Ambrosio · Andrea Lodi © Springer Science+Business Media New York 2013 Abstract We present a review of available tools for solving mixed integer nonlinear pro- gramming problems. Our aim is to give the reader a flavor of the difficulties one could face and to discuss the tools one could use to try to overcome such difficulties. 1 Introduction Despite the fact that Jeroslow (1973) proved that mixed integer nonlinear programming (MINLP) is undecidable, in recent years there has been a renewed interest in practically solving MINLP problems. Indeed, under the often reasonable assumption of boundedness of integer variables, it is well-known that MINLP problems are -hard because they are the NP generalization of mixed integer linear programming (MILP) problems, which are -hard NP themselves. Such a renewed interest can be explained by different considerations: (i) the large improvement on the performance of solvers handling nonlinear constraints; (ii) the increased awareness that many real-world applications can be modeled as MINLP problems; and (iii) the challenging nature of this very general class of problems. Indeed, many real- world optimization problems can be cast in this interesting class of problems, such as the ones arising from portfolio optimization, design of water distribution networks, design of complex distillation systems, optimization of manufacturing, cutting-stock problems, and transportation logistics, just to mention a few. The (general) mixed integer nonlinear programming problem, which we are interested in, has the following form: This is an updated version of the paper that appeared in 4OR, 9(4), 329Ð349 (2011). C. D’Ambrosio CNRS LIX, Ecole Polytechnique, 91128 Palaiseau, France e-mail: [email protected] A. Lodi () DEI, University of Bologna, viale Risorgimento 2, 40136 Bologna, Italy e-mail: [email protected] Ann Oper Res MINLP min f(x,y) (1) g(x,y) ≤ 0(2) n x ∈ X ∩ Z (3) y ∈ Y, (4) × × where f : Rn p → R, g : Rn p → Rm,andX and Y are two polyhedra of appropriate di- mension (including bounds on the variables). We assume that f and g are twice continuously differentiable, but we do not make any further assumptions on the characteristics of these functions or their convexity/concavity. In the following, we will call problems of this type nonconvex mixed integer nonlinear programming problems. The most complex aspect one needs to have in mind when working with nonconvex MINLPs is that their continuous relaxation, i.e., the problem obtained by relaxing the in- tegrality requirement on the x variables, might have (and usually has) local optima, i.e., solutions that are optimal within a restricted part of the feasible region (neighborhood), but are not optimal with respect to the entire feasible region. This does not happen when f and g are convex (or linear): in such cases the local optima are also global optima. Contribution of the paper The aim of this paper is to present tools for “practically” solv- ing MINLPs, i.e., finding a high quality feasible solution, neglecting the difference between local and global solutions. In particular, the focus is not on globally solving a nonconvex MINLP, i.e., unless otherwise stated, when we use the term “solving” in the following we do not intend exactly (globally). Note that this is a “reasonable” setting for real-world appli- cations, especially those involving nonconvex constraints. On the other hand, proving global optimality for nonconvex MINLPs is, with some extent, possible and we briefly overview the most commonly used methods, refereed to as Global Optimization algorithms. It is easy to see that global optimality comes at the price of (much) more computationally challenging and expensive algorithmic approaches that result to be impractical for large-scale problems. In Sect. 2 we point out some difficulties arising from handling nonlinear functions within an optimization model and how modeling languages can help to overcome some of them. We then review the solvers for special classes of MINLP: mixed integer linear programming in Sect. 3 and nonlinear programming (NLP) in Sect. 4. In these two cases, only aspects closely related to MINLP problems are presented, but references to books and papers on MILP and NLP are provided to the interested reader. On the other hand, the main focus is on MINLP methods (Sect. 5) and solvers (Sect. 6). We devote Sect. 7 to the description of “NEOS, server for optimization” NEOS. Conclusions follow in Sect. 8. The first version of this survey (D’Ambrosio and Lodi 2011) has been published in the international journal 4OR in 2011. 2 Modeling languages Modeling languages are used to express optimization models (linear programming—LP—, NLP, MILP, MINLP) with an intuitive syntax avoiding the need for the user to implement software using programming languages. They translate a model from a form that is easy to read for the user to a form readable by the solvers. The most intuitive modeling languages are the Algebraic Modeling Languages (AML), widely used in (mixed integer) nonlinear Ann Oper Res programming. Their syntax is similar to the mathematical notation, which makes the re- sulting models easy to read for the user. It is also flexible, allowing the user to implement complicated algorithms within the modeling language framework, and compact, thanks to the use of abstract entities like sets and indices, making also large instances easy to write. Another important feature of AMLs is the nonlinear interpreter: using symbolic and/or au- tomatic differentiation, it provides the NLP solver the information about the evaluation of functions, and the first and second derivatives at a given point. This feature makes AMLs a fundamental tool for (mixed integer) nonlinear programming because the most widely used methods for solving such problems need this information. The basic functionalities of AMLs are: (a) reading the model and the data provided by the user; (b) expanding this compact problem formulation into the problem instantiation (expand the indexes, substitute the parameters, etc.); (c) providing the solver an appropriate form of the problem instantiation; (d) providing, when needed, the value of the function, its first and second derivative at a point given by the solver; and (e) reading the solution provided by the solver and translate it in a form readable by the user. Note that AMLs do not have solver capabilities and use external solvers as black-boxes, but provide standard interfaces to the most common solvers. Moreover, they usually provide effective preprocessing techniques to detect trivial infeasibility and simplify the models. The two most widely used algebraic modeling languages in MINLP are AMPL (Fourer et al. 2003)andGAMS (Brooke et al. 1992). They are commercial products, but an evaluation version of both modeling languages is available for students (allowing a maximum number of constraints and variables equal to 300). 3 Mixed integer linear programming technology In this section we present considerations about MILP solvers, limited to aspects related to MINLP.1 Until recent years, the standard approach for handling MINLP problems (especially by scientists with a combinatorial optimization background) has basically been to solve an MILP “approximation” of it. Note that, solving an MILP approximation of an MINLP does not necessarily mean solving a relaxation of it. The optimal solution of the MILP might be neither optimal nor feasible for the original problem, if no assumption is made on the MINLP structure. Standard techniques to approximate special classes of MINLP problems with an MILP model are, for example, piecewise linear approximation (when nonlinear functions are uni- variate) and, in this case, Special Ordered Sets (SOS) of type 2 can be defined to model the convex combinations that form the piecewise linear approximation. By defining a set of variables to be a special ordered set of type 2 (SOS2), one imposes that at most 2 such variables can take a nonzero value, and that they must be adjacent (see, e.g., Beale and Tom- lin 1970). In some of the available MILP solvers, the definition of special ordered sets of types 1 and 2 is recognized and these sets of variables are treated through special branching rules. However, it is possible to use any kind of MILP solver and to define a piecewise linear function by adding suitable binary variables. In presence of special properties of the approximated functions, (even) a standard piece- wise linear approximation might result in a relaxation of the original problem. However, 1Note that we do not consider MINLPs that can be exactly reformulated as MILP problems. Ann Oper Res this is in general not the case. Alternatively, methods tailored for solving MINLPs can be employed, which consist in solving MILP relaxations of the MINLP problem. Algorithms in this category are, for example, outer approximation, generalized Benders decomposition and extended cutting plane (see Sect. 5 and Grossmann 2002). In these cases an MILP is obtained starting from the original MINLP, but the approximation is constructed on purpose to provide a relaxation, and it is tightened runtime. From a software viewpoint, another important role MILP plays in the solution of MINLP problems is that some MINLP techniques use MILP solvers as black-boxes to address care- fully defined MILP subproblems. These techniques are described as well in Sect. 5. We conclude this section by noting that in the MILP case there are at least a couple of standard file formats widely used by the MILP solvers, namely, MPS and LP files. No fully accepted file format is available for models in which nonlinear functions are involved, although the AMPL NL file format has recently become quite standard. We will further discuss this issue in Sects. 4 and 6. Finally, examples of MILP solvers are the commercial ones GUROBI, (GUROBI), IBM- CPLEX, (IBM-CPLEX), XPRESSOptimizer, (XPRESS), and the open-source (or par- tially open-source) solvers CBC (CBC) and SCIP (SCIP). For a survey of the development of methods and software for MILPs the reader is referred, e.g., to Lodi (2009), and, for detailed discussions, to Achterberg (2007) and Linderoth and Lodi (2011). 4 Nonlinear programming technology Nonlinear programming subproblems play a fundamental role in the solution of MINLPs. Different approaches to the solution of NLPs are possible. Thus, different types of solvers are available, both commercial and open-source. The most commonly used and effective NLP solvers need the first and usually second derivatives of the nonlinear functions involved in the model. Thus, the nonlinear functions are assumed to be smooth. The necessity of derivatives is also the cause of the lack of a fully accepted file format to express NLP/MINLP problems. Providing the first and, possibly, the second derivative at a given point is not straightforward for non-expert users and can easily be a source of errors. The use of modeling languages helps to partially overcome such difficulties. However, the information about derivatives sometimes cannot be computed. In this case, derivative free optimization methods can be applied. For details on this topic, the reader is referred to the book by Conn et al. (2008). An additional aspect that NLP solvers have in common is that they only guarantee that the solution provided is a local optimum. Thus, when we use standard NLP solvers, we might not obtain the globally optimal solution. This is why some MINLP solvers are ex- act algorithms for convex MINLPs (where local optima are also global optima) but only heuristics for nonconvex MINLPs. We will discuss this issue in detail in Sect. 5. An alternative would be solving NLP relaxations of (nonconvex) MINLPs to optimality by means of global optimization algorithms. Of course that would be at the cost of the solver’s efficiency, and, for this reason, global optimization techniques are usually not used in MINLP solvers for handling the NLP subproblems. Any serious discussion about NLP algorithms would lead us outside the scope of the present paper. We refer the reader to Nocedal and Wright (2006), where, at the end of each chapter describing an NLP method, a discussion about software is also provided. Examples of the most widely used solvers are CONOPT, FILTERSQP, IPOPT, KNITRO, MINOS, MOSEK, NPSOL, SNOPT. For an overview of the NLP software, the reader is referred to Leyffer and Mahajan (2011). Ann Oper Res 5 Mixed integer nonlinear programming In this section we first describe the most commonly used algorithms for solving convex MINLP problems, and then introduce some specific considerations on nonconvex MINLPs. Although, as mentioned in the Introduction, the focus of the paper is on tools proving local solutions for MINLPs, nevertheless if a problem is recognized to have a convex NLP relax- ation, then special methods can be exploited and, in addition, these methods provide local solutions for nonconvex MINLPs as well. We do not describe special-purpose methods, such as, for example, those for Semi- Definite programming, or mixed integer Quadratic programming, but only general-purpose MINLP techniques. The interested reader is referred to (among many possible references) the recent MINLP Software survey in the Wiley Encyclopedia of Operations Research and Management Science (Bussieck and Vigerske 2011). For a collection of some of the most exciting latest advances on MINLP, we refer the reader to the recent book (Lee and Leyffer 2012). 5.1 Convex MINLP Algorithms studied for convex MINLPs basically differ on the way subproblems, namely MILPs and NLPs, are defined and used. Unless otherwise stated, we assume that those sub- problems are solved to optimality, which is reasonable in this setting for NLPs because of the convexity assumption. In the following, we briefly present some of the most commonly used algorithms and refer the reader to the paper by Grossmann (2002) for an exhaustive discussion. At the end of the section, we summarize the different characteristics of the pre- sented algorithms in Table 1. Ð Branch-and-Bound (BB): Originally proposed for MILP problems (see Land and Doig 1960),itwasfirstappliedtoconvexMINLPsbyDakin(1965) and Gupta and Ravindran (1985). The first step solves the continuous relaxation of the MINLP, NLP0. Then, given ∗ ∗ ∗ a fractional value xj in the solution of the continuous relaxation (x ,y ), the problem ≤ ∗ is divided into two subproblems, by alternatively adding the constraint xj xj or the ≥ ∗+ constraint xj xj 1. Each of these new constraints represents a “branching decision” (imposed by simply changing the bounds on the variables) because the partition of the problem into subproblems is represented with a tree structure, the BB tree. The process is iterated for each node, until the solution of the continuous relaxation of the subproblem is integer feasible, or is infeasible, or the lower bound value associated with the subproblem is not smaller than the value of the current incumbent solution, i.e., the best feasible solution encountered so far. In these three cases, the node is fathomed. The algorithm stops when no node is left to explore, returning the incumbent solution, which is proven to be optimal. The basic difference between the BB for MILPs and for MINLPs is that, at each node, the subproblem solved is an LP in the former case, and an NLP in the latter. We do not discuss specific approaches for branching variable selection, tree exploration strategy, etc. The reader is referred to Abhishek (2008), Bonami et al. (2008), Gupta and Ravindran (1985), Leyffer (1999) for details. Ð Outer-Approximation (OA): Proposed by Duran and Grossman (1986), it exploits the outer approximation linearization technique. Namely, given a point (x∗,y∗), we can de- rive the OA cut ∗ ∗ ∗ ∗ ∗ T x − x g x ,y +∇g x ,y ≤ 0. j j y − y∗ Ann Oper Res Note that, by convexity, the OA cut is “safe”, i.e., it does not cut off any solution of the MINLP. OA is an iterative method in which, at each iteration k, two subproblems are solved: • k k−12 NLPx , an NLP defined by fixing the integer variables to the values x ;and • MILPk , an MILP relaxation of the original MINLP obtained by the OA cuts generated k ≤ so far from the solutions of NLPx with k k. The former subproblem, if feasible, gives an upper bound on the solution of the MINLP, k while the latter always provides a lower bound. If the NLPx subproblem is not feasi- ble, a “feasibility NLP subproblem” is solved and its optimal solution (x∗,y∗) is used to derive the new OA cuts for MILPk . The feasibility NLP subproblem is defined as min{u | g(xk−1,y)≤ u, y ∈ Y,u ≥ 0} where u is an additional variable that represents the maximum constraints violation, which is minimized. At each iteration lower and upper k bounds might be improved. In particular, the definition of NLPx changes because the x vector changes. Moreover, the definition of MILPk changes because of the addition, at each iteration, of OA cuts, which make the solution of the previous iteration infeasible. The algorithm ends when the gap between the two bounds is within a fixed tolerance. Ð Generalized Benders Decomposition (GBD): Proposed by Geoffrion (1972), this is the extension to MINLP of the famous work of Benders (1962) for MILP. The basic idea of this iterative method is to decompose, at each iteration, the MINLP into: (i) a simpler NLP subproblem obtained by fixing the x variables; and (ii) a (MILP) master problem that is the relaxation of the projection of the MINLP on the x-space. In the spirit of OA cuts, if the NLP is feasible, a so-called optimality cut (obtained projecting on the x-space the weighted combination of the linearizations of objective function and active constraints) is added to the master problem. Otherwise, a so-called feasibility cut (obtained projecting on the x-space the weighted combination of the linearizations of active constraints) is added to it. This method is strongly related to the OA method, the unique difference being the form of the MILPk subproblem. The MILPk of the GBD method is a surrogate relaxation of the one of the OA method. Thus, the lower bound given by the OA is stronger than (i.e., greater than or equal to) the one given by the GBD (for details, see Duran and Grossmann 1986). Even if, on average, the GBD method requires more iterations than the OA method, the fact that MILPk subproblems of the former are more “tractable” (smaller) can make sometimes convenient using GBD instead of OA. Ð Extended Cutting Plane (ECP): Introduced by Westerlund and Pettersson (1995), the method is based on the iterative resolution of an MILPk subproblem and, when its solution (xk,yk) is infeasible for the MINLP, on the determination of the most violated constraint k ∗ k k (or constraints) J ={j ∈ arg{max{gj (x ,y ), ∀j = 1,...,m}}}. The linearization of such a constraint is added to the next MILPk . The produced lower bound increases at each iteration, but generally a large number of iterations is needed to reach the optimal solution. Obviously, whenever (xk,yk) becomes feasible for MINLP, such solution is optimal and the algorithm terminates. An extension to pseudo-convex MINLP problems3 has been presented. Ð LP/NLP based Branch-and-Bound (QG): Introduced by Quesada and Grossmann (1992), the method can be seen as the extension of the Branch-and-Cut approach to con- vex MINLPs. The idea is to use BB to solve the MILPk obtained from the solution (x0,y0) 2If k = 1, no fixing is performed. 3A pseudo-convex MINLP is an MINLP involving pseudo-convex functions. Informally, a function is pseudo- convex if behaves like a convex function with respect to finding its local minima, but need not actually be convex, see, e.g., Mangasarian (1965). Ann Oper Res Table 1 Number of MILP and NLP subproblems solved by each algorithm of Sect. 5.1. #MILP #NLP Note BB 0 # nodes OA # iterations # iterations GBD # iterations # iterations weaker lower bound w.r.t. OA ECP # iterations 0 QG 1 1 + # explored MILP solutions Hyb (Abhishek et al. 2010) 1 1 + # explored MILP solutions stronger lower bound w.r.t. QG Hyb (Bonami et al. 2008) 1 [# explored MILP solutions,# nodes] of the NLP relaxation. Whenever an integer feasible solution x of MILPk is found, an k k k k k NLPx subproblem is solved obtaining (x ,y ). OA cuts generated from (x ,y ) are added to all the open nodes of the current BB tree. QG algorithm differs from ECP because at some nodes NLP subproblems are solved, from BB because they are not solved at each node. Ð Hybrid algorithms (Hyb): Proposed by Bonami et al. (2008) and Abhishek et al. (2010), they are enhanced versions of the QG algorithm. They are called hybrid because they combine BB and OA methods. The version proposed by Bonami et al. (2008) differs from the QG algorithm because: k (i) at “some” nodes (not only when an integer solution is found like in QG) the NLPx subproblem is solved to generate OA cuts (like in BB); and (ii) local search is performed at some nodes of the tree by partial enumeration of the associated MILP relaxations. This is done to improve the bounds and collect OA cuts early in the tree. If the local k enumeration is not limited, the algorithm reduces to OA, while when the NLPx is solved at each node, it reduces to BB. The version proposed by Abhishek et al. (2010) differs from the one proposed by Bonami et al. (2008) in the way linearizations are added and how these linearizations are managed. In particular, NLP subproblems are solved only when an integer MILP feasible solution is found (like in the original QG algorithm), but linearization cuts are added runtime also at other nodes (with fractional x’s). When no linearization cut is added at any other nodes, the algorithm reduces to QG, while when linearization cuts are added at each node, it reduces to ECP. As anticipated, Table 1 summarizes the differences in the way the algorithms presented above address convex MINLPs. Specifically, the table gives an estimation of the number of MILP and NLP subproblems solved by each method, and summarizes some of the discussed relationships between pair of algorithms. We end the section by briefly mentioning that an important role in the practical effec- tiveness of the discussed algorithms is played by (primal) heuristics, i.e., algorithms aimed at improving the incumbent solution (upper bound) within the various phases of the enu- merative schemes. Part of the heuristic algorithms studied for MILPs have been adapted to convex MINLP problems. For details about primal heuristics the reader is referred, e.g., to Abhishek (2008), Bonami et al. (2009), Bonami and Gonçalves (2008). Ann Oper Res Fig. 1 Example of “unsafe” linearization cut generated from a nonconvex constraint 5.2 Nonconvex MINLP Coming back to the first model seen in this paper, MINLP, if we do not make any convexity assumption on the objective function and the constraints, then one of the main issues is that the NLP problems obtained by dropping the integrality requirements have, in general, local minima which are not global. This implies, that, if the NLP solver used to solve the NLP subproblems does not guarantee that the solution provided is a global optimum (and this is usually the case for the main NLP solvers, e.g., those discussed in Sect. 4), feasible and even optimal solutions might be fathomed, for example, by comparison with an invalid lower bound. As a result, methods like BB, QG, and Hyb that are exact for convex MINLPs work as heuristics for nonconvex MINLPs. A second issue involves methods like OA, GBD, ECP, QG, and Hyb: the linearization cuts used by these algorithms are in general not valid for nonconvex constraints. It follows that the linearization cuts might cut off not only infeasible points, but also parts of the feasible region as depicted in Fig. 1. Adding the cut represented by the dashed line in the figure would result in cutting off the upper part of the nonconvex feasible region, i.e., that above the cut. For this reason, if nonconvex constraints are involved, one has to carefully use linearization cuts or accept that the final solution might be not the optimal one. As for the methods for specifically handle nonconvexities, the first approach is to fully reformulate the problem. The exact reformulation is possible only in limited cases of non- convex MINLPs and allows one to obtain an equivalent convex formulation of the noncon- vex MINLP in the sense that: (i) all feasible pairs (x, y) ∈ Zn × Rp are mapped to unique and feasible points of the feasible region of the convex formulation; and (ii) no other mixed integer (infeasible) solution (x, y) ∈ Zn × Rp belongs to it. All the techniques described in Sect. 5.1 can then be (safely) applied to the reformulated MINLP. For a detailed description of exact reformulations to standard forms, see, for example, Liberti et al. (2009a). The second approach, which applies to a larger subset of nonconvex MINLPs, is based on the use of convex envelopes or underestimators of the nonconvex feasible region. The relaxation of the original problem has the form: rMINLP min z (5) f (x, y) ≤ z (6) g(x, y) ≤ 0(7) n x ∈ X ∩ Z (8) y ∈ Y, (9) Ann Oper Res Fig. 2 Linear underestimators before and after branching on continuous variables where z is an auxiliary variable introduced as a standard modeling trick to have a linear × × objective function, see (5)and(6). Moreover, f : Rn p → R and g : Rn p → Rm are convex (in some cases, linear) functions such that f (x, y) ≤ f(x,y) and g(x, y) ≤ g(x,y) within the (x, y) feasible space. Roughly speaking, the first step to reformulate the nonconvex problem MINLP to a “tractable” form like the mathematical programming problem (5)Ð(9) is to associate a convex relaxation with each part of the original model. This is obtained by adding aux- iliary variables that “linearize” the nonlinearities of the original constraints. This way, complex nonlinearities are subdivided into simpler nonlinearities, at the cost of addi- tional variables and constraints. The basic nonlinearities are then relaxed using simple en- velopes/underestimators. This type of reformulation by pieces only applies to factorable functions, i.e., functions that can be expressed as summations and products of univariate functions after appropriate recursive splitting. More precisely, a function f is factorable if it can be rewritten as: f = fhk(x), h k where fhk(x) are univariate functions for all h, k. These functions can be reduced and refor- mulated into simpler nonlinear functions, adding auxiliary variables and constraints such as = = = shk fhk(x), sh k shk , sk h sh. This modeling trick allows reformulating the model through predetermined operators for which convex underestimators are known, such as, for example, bilinear, trilinear, or fractional terms (see, e.g., Liberti 2006; McCormick 1976; Smith and Pantelides 1999). The use of underestimators makes the feasible region larger: If the optimal solution of rMINLP is feasible for the nonconvex MINLP, then it is also its global optimum. Other- wise, a refinement of the underestimation is needed. This is done by branching, not only on integer variables but also on continuous ones as depicted in Fig. 2. This technique al- lows one to have a lower bound on the nonconvex MINLP optimum that can be used within an algorithm, like branch-and-bound specialized versions for global optimization, namely spatial branch-and-bound (Smith and Pantelides 1999;Leyffer2001; Liberti 2004a; Belotti et al. 2009), branch-and-reduce (Ryoo and Sahinidis 1996; Sahinidis 1996;Tawar- malani and Sahinidis 2004), α-BB (Androulakis et al. 1995; Adjiman et al. 1997), Branch- and-Cut (Kesavan and Barto 2000; Nowak and Vigerske 2008). Such algorithms provide a solution that is guaranteed to be a global optimum. The above specialized branch-and-bound methods for global optimization mainly differ on the branching scheme adopted, namely, Ann Oper Res they might either concentrate first on discrete variables (until an integer feasible solution is found), then branch on continuous variables, or branch on both variable types without a prefixed priority. From the algorithmic viewpoint, one could also branch on continuous variables appearing in nonconvex terms first (see, e.g., Adjiman et al. 2000 for details), but, this option is not available in the solvers, at least those we consider in Sect. 6. It is clear that algorithms of this type are very time-consuming in general and can be employed only for small- to medium-size instances. This is the price one has to pay for the guarantee of the global optimality of the solution provided (of course, within a fixed tolerance). From an implementation viewpoint, some complex structures are needed for implement- ing global optimization algorithms, such as the so-called symbolic expression trees (see, Smith and Pantelides 1999 for their use in (global) optimization). For a detailed description of the issues arising in developing and implementing a global optimization algorithm the reader is referred to Liberti (2006). The documentation of the specific solvers is also very useful. For an overview of the way to define functions f (x, y) and g(x, y) for nonconvex functions f and g with specific structure the reader is referred to Liberti (2004a, 2004b), McCormick (1976), Nowak (2005). Finally, it is worth mentioning that some of the primal heuristic algorithms developed for convex MINLPs have been generalized to the nonconvex setting by specifically taking into account the nonconvexity issues described above. Actu- ally, this is a very active research topic on which several contributions are on the way, see, e.g., Liberti et al. (2009b), D’Ambrosio et al. (2010), D’Ambrosio (2010), Nannicini and Belotti (2011), to mention a few. 6 Mixed integer nonlinear programming solvers This section is devoted to MINLP solvers. For each solver, we give a brief summary of its characteristics (often taken from manuals, web pages, and experience) and a list containing the following information: Ð Implemented algorithms: the algorithm implemented within the solver. Examples of such algorithms are branch-and-bound (either standard or spatial), outer approximation, branch-and-cut (see Sect. 5). If present, special tools, aimed at speeding-up the solver, are mentioned, such as, e.g., bound reduction techniques. Ð Type of algorithm: type of solution (exact/heuristic) and assumptions on the MINLP problem (for example, convexity of the MINLP). Recall that exact algorithms for convex MINLPs can be used as (generally very inaccurate) heuristics for the nonconvex case. We will point out if the solver has specific options to mitigate the inaccuracy due to the nonconvexities. Ð Available interface: how the user can interface with the solver. The most common pos- sibilities are: (i) the solver is available as stand-alone application, which receives the description of the model as a file; (ii) the user can provide information about the MINLP problem to be solved by implementing some routines linked to the solver libraries; and (iii) the user can write the model under a modeling language environment which is di- rectly linked to the solver and call the solver from the environment. Clearly, the lack of a fully accepted file format for NLPs impacts MINLPs as well. Some of the difficulties in expressing nonlinear functions are partially overcome by mod- eling languages (see Sect. 2). Moreover, a useful tool for the conversion of files within the most common file formats can be found at http://www.gamsworld.org/performance/ paver/convert_submit.htm. Ann Oper Res Ð Open-source software: “yes” if the software is open-source, i.e., the source code is avail- able and can be modified by the user. Ð Programming language: the programming language used to implement the software. This information is only given if the solver is open-source. Ð Authors: the authors of the software, and the main published reference, if any. Ð Web site: the web site of the solver where information and user manual can be found. Ð Dependencies: the external software which the solver depends on if it uses (parts of) other software to exploit capabilities, such as, e.g., interfacing to specific environments, solving special classes of MINLPs (like NLP/MILP subproblems) or generating cuts. A notation like XX/YY indicates that the considered software relies either on software XX or on software YY, to solve a special class of subproblems. As extensively discussed in Sect. 5, methods for MINLP are usually based on decompo- sition/relaxation of the problem into simpler subproblems, which are typically NLPs and MILPs. For this reason, fundamental ingredients of MINLP solvers are often reliable and fast NLP and MILP solvers. The improvements on such solvers highly influence general- purpose software for MINLPs, and the recent success of MINLP solvers in solving real- world applications is also due to them. The kind of problems MINLP solvers are able to handle depends, in turn, on the NLP and MILP solvers integrated as part of the solving phase. From a development viewpoint, the use of available NLP and MILP solvers makes the work of a developer easier, and allows one to concentrate on aspects and issues typical of MINLP problems, exploiting more stable techniques for NLP and MILP problems (see, e.g., Bonami et al. 2007). Finally, the order in which the solvers are presented is alphabetic. 6.1 ALPHA-ECP ALPHA-ECP is an MINLP solver based on the extended cutting plane method. The ECP method is an extension of Kelley’s (1960) cutting plane algorithm which was originally given for convex NLP problems. In Westerlund and Pettersson (1995) the method was ex- tended to convex MINLP problems, and in Westerlund et al. (1998) to MINLP problems with f and g pseudo-convex functions. Pseudo-convex functions are those that satisfy the following property: ∇h(x∗)(x − x∗)<0ifh(x) 6.2 BARON BARON (Branch-and-Reduce Optimization Navigator) is a computational system for the solution of nonconvex optimization problems to global optimality. The solver combines branch-and-bound techniques specialized for nonconvex MINLPs with bound reduction based on both feasibility and optimality reasoning, which improve its performance. It is currently one of the most effective solvers in global optimization. In summary: Ð Implemented algorithm: branch-and-reduce. Ð Type of algorithm: exact. Ð Available interface: AIMMS and GAMS. Ð Open-source software: no. Ð Authors: M. Tawarmalani and N.V. Sahinidis (Ref. Sahinidis 1996). Ð Web site: http://archimedes.cheme.cmu.edu/baron/baron.html. Ð Dependencies: IBM-CPLEX, either MINOS or SNOPT. 6.3 BONMIN BONMIN (Basic Open-source Nonlinear Mixed INteger programming) is an open-source code for solving MINLP problems. It is distributed within COIN-OR (http://www.coin-or. org) under Common Public License (CPL). There are several algorithmic options that can be selected within BONMIN. B-BB is an NLP-based branch-and-bound algorithm, B-OA is an outer-approximation decomposition algorithm, B-QG is an implementation of Quesada and Grossmann’s branch-and-cut algorithm, and B-Hyb is a hybrid outer-approximation based branch-and-cut algorithm. Some of the algorithmic choices require the ability to solve MILP and NLP problems. The default solvers for them are the COIN-OR codes CBC and IPOPT, respectively. The four algorithms above are exact for convex MINLPs. To solve (heuristically) a problem with nonconvex constraints, one should only use the Branch-and-Bound algorithm B-BB. Some options have been specifically designed in BON- MIN to treat problems whose continuous relaxation is not convex. Specifically, in the context of nonconvex problems, the NLP solver may find different local optima when started from different starting points. Two options allow for solving the root node or each node of the tree with a user-specified number of different randomly-chosen starting points, saving the best solution found. The function generating a starting point chooses a random point (uniformly) between the variable bounds. Because the solution given by the NLP solver does not give a valid lower bound, another option of BONMIN allows the user to change the fathoming rule to continue branching even when the solution value of the current node is worse than the best-known solution. In summary: Ð Implemented algorithms: Branch-and-Bound, Outer-Approximation, LP/NLP based Branch-and-Bound, Hybrid. Ð Type of algorithm: exact for convex MINLPs, options for nonconvex MINLPs, see above. Ð Available interface: AMPL, GAMS, stand-alone application (reading NL files), invocation through C/C++ program, MATLAB interface through OPTIToolBox. Ð Open-source software: yes. Ð Programming language: C++. Ð Authors: P. Bonami et al. (see the web page) (2008). Ð Web site: https://projects.coin-or.org/Bonmin. Ð Dependencies: CBC/IBM-CPLEX, IPOPT/FILTERSQP (beside Blas, HSL/MUMPS, optionally ASL, Lapack). Ann Oper Res 6.4 COUENNE COUENNE (Convex Over and Under ENvelopes for Nonlinear Estimation) is a spatial branch-and-bound algorithm to solve MINLP problems. COUENNE aims at finding global optima of nonconvex MINLPs. It implements linearization, bound reduction, and branching methods within a branch-and-bound framework. Its main components are: (i) an “expression library”, i.e., a library of predetermined operators that can be used to reformulate general nonlinear functions; (ii) separation of linearization cuts; (iii) branching rules; and (iv) bound tightening methods. It is distributed within COIN-OR under CPL. In summary: Ð Implemented algorithms: spatial branch-and-bound, bound reduction. Ð Type of algorithm: exact. Ð Available interface: AMPL, GAMS, stand-alone application (reading NL files), invocation through C/C++ program. Ð Open-source software: yes. Ð Programming language: C++. Ð Authors: P. Belotti et al. (see the web page) (2009). Ð Web site: https://projects.coin-or.org/Couenne. Ð Dependencies: CBC, IPOPT (beside Blas, HSL/MUMPS, optionally ASL, Lapack). 6.5 DICOPT DICOPT (DIscrete and Continuous OPTimizer) is a software for solving MINLP problems where nonlinearities involve only continuous variables. Binary and integer variables appear only in linear functions. The implementation is based on outer approximation, equality re- laxation and augmented penalty, i.e., equality constraints are relaxed obtaining inequalities and adding a penalization factor in the objective function. The MINLP algorithm inside DICOPT solves a series of NLP and MILP subproblems. These subproblems can be solved using any NLP or MILP solver that runs under GAMS. The solver can handle nonconvexities, but in such case it does not necessarily obtain the global optimum. According to the web- page, the GAMS/DICOPT software has been designed with two main goals in mind: (i) to build on existing modeling concepts and to introduce a minimum of extensions to the ex- isting modeling language; and (ii) to use existing optimizers to solve the subproblems. This concept favors an effective exploitation of any new development and enhancement in the NLP and MILP solvers. In summary: Ð Implemented algorithms: outer approximation, equality relaxation, augmented penalty. Ð Type of algorithm: exact for convex MINLPs with binary and integer variables appearing only in linear constraints. Ð Available interface: GAMS. Ð Open-source software: no. Ð Authors: J. Viswanathan and I.E. Grossmann (1989). Ð Web site: http://www.gams.com/dd/docs/solvers/dicopt.pdf. Ð Dependencies: GAMS, IBM-CPLEX/XPRESS/XA, CONOPT/MINOS/SNOPT. 6.6 FILMINT FILMINT is a solver for convex MINLPs. It is based on the LP/NLP branch-and-bound algorithm of Quesada and Grossmann (1992). FILMINT combines the MINTO branch-and- cut framework (Nemhauser et al. 1994) for MILP with FILTERSQP used to solve the non- linear programs that arise as subproblems in the algorithm. The MINTO framework allows Ann Oper Res one to employ cutting planes, primal heuristics, and other well-known MILP enhancements to the MINLP context. FILMINT offers techniques for generating and managing lineariza- tions for a wide range of MINLPs. In summary: Ð Implemented algorithm: LP/NLP based branch-and-bound. Ð Type of algorithm: exact for convex MINLPs. Ð Available interface: AMPL, stand-alone application (reading NL files). Ð Open-source software: no. Ð Authors: K. Abhishek, S. Leyffer, and J. Linderoth (2010). Ð Web site: http://www.mcs.anl.gov/~leyffer/papers/fm.pdf. Ð Dependencies: MINTO, FILTERSQP (beside ASL). 6.7 LAGO LAGO (LAgrangian Global Optimizer) is a Branch-and-Cut algorithm to solve MINLPs. A linear outer approximation is constructed from a convex relaxation of the problem. Be- cause LAGO does not have an algebraic representation of the problem, reformulation tech- niques for the construction of the convex relaxation cannot be applied, and sampling tech- niques are used in case of non-quadratic nonconvex functions. The linear relaxation is fur- ther improved by general purpose cutting planes. Bound reduction techniques are applied to improve efficiency. The algorithm assumes the existence of procedures for evaluating func- tion values, gradients, and Hessians of the functions. According to the webpage, by relying on such black-box functions LAGO has the advantage of handling very general functions, but has the disadvantage that advanced reformulations and bound reduction techniques cannot be used. Hence, when sampling methods are applied, no deterministic global optimization is guaranteed. LAGO is distributed within COIN-OR under CPL.4 In summary: Ð Implemented algorithms: branch-and-cut (reformulation, relaxation, linear cut generator). Ð Type of algorithm: exact for mixed integer quadratically constrained quadratic program- ming problems and convex MINLPs. Ð Available interface: AMPL, GAMS, stand-alone application (reading NL files), invocation through C/C++ program. Ð Open-source software: yes. Ð Programming language: C++. Ð Authors: I. Nowak and S. Vigerske (2008). Ð Web site: https://projects.coin-or.org/LaGO. Ð Dependencies: IPOPT, CGL, CLP, optionally IBM-CPLEX (beside ASL/GAMSIO, METIS, ranlib, TNT, optionally Lapack). 6.8 LINGO and LINDOGlobal LINGO is an optimization suite that handles virtually any mathematical programming prob- lem including MINLP. It implements branch-and-cut methods for global optimization but, in case a global solution is computationally too costly (or not ‘needed’), LINGO solution method can be turned into a heuristic that uses special features like multistart techniques for solving NLPs. The LINGO package also provides an internal modeling language and Spreadsheet/Database capabilities. LINDOGlobal is the GAMS version of the suite, which comes with a model size limitation of 3,000 variables and 2,000 constraints. In summary: 4The development of LAGO is currently ceased but the software is open-source, so we prefer to keep it into the list because future development is possible. Ann Oper Res Ð Implemented algorithm: branch-and-cut. Ð Type of algorithm: exact. Ð Available interface: GAMS. Ð Open-source software: no. Ð Authors: LINDO Systems. Ð Web site: http://www.lindo.com/,and http://www.gams.com/solvers/solvers.htm#LINDOGLOBAL. Ð Dependencies (for LINDOGlobal): GAMS, CONOPT, optionally MOSEK. 6.9 MINLPBB MINLPBB is a package of FORTRAN 77 subroutines for finding solutions to MINLP prob- lems. The package implements the branch-and-bound method in a nonlinear setting. The package must be used in conjunction with FILTERSQP and BQPD (Nocedal and Wright 2006) for solving NLPs. Problems are specified in the same way as for FILTERSQP (i.e., either via subroutines or via AMPL or CUTE Bongartz et al. 1995). The additional integer structure is specified using a vector to identify the indices of integer variables. The user can influence the choice of the branching variable by providing priorities. In summary: Ð Implemented algorithm: branch-and-bound. Ð Type of algorithm: exact for convex MINLPs. Ð Available interface: AMPL, CUTE, stand-alone application (reading NL files), MATLAB through TOMLAB. Ð Open-source software: no. Ð Authors: S. Leyffer. Ð Web site: http://www-unix.mcs.anl.gov/~leyffer/solvers.html. Ð Dependencies: FILTERSQP, BQPD (beside CUTE/ASL). 6.10 MINOPT MINOPT is a package that comprehends solvers for virtually any mathematical program- ming problem including MINLP. Specifically, MINOPT provides implementations of GBD and variants of OA. In addition, the MINOPT algorithmic framework provides a modeling language and has connections to a number of solvers. In summary: Ð Implemented algorithms: generalized Benders decomposition, outer approximation, gen- eralized cross decomposition. Ð Type of algorithm: exact. Ð Available interface: stand-alone application, MINOPT modeling language. Ð Open-source software: no. Ð Authors: C.A. Schweiger and C.A. Floudas (1998a, 1998b). Ð Web site: http://titan.princeton.edu/MINOPT. Ð Dependencies: IBM-CPLEX/LPSOLVE, MINOS/NPSOL/SNOPT. 6.11 MINOTAUR MINOTAUR (Mixed Integer Nonlinear Optimization Toolkit: Algorithms, Underestimators, Relaxations) is an open-source toolkit for solving Mixed Integer Nonlinear Optimiza- tion Problems. It provides different solvers that implement state-of-the-art algorithms for MINLP. The Minotaur library can also be used to customize algorithms to exploit on spe- cific problem structures. In summary: Ann Oper Res Ð Implemented algorithms: NLP based Branch-and-Bound for convex MINLPs, Branch- and-Bound for global optimization of mixed integer quadratically constrained quadratic programming problems. Ð Type of algorithm: exact. Ð Available interface: stand-alone application, AMPL. Ð Open-source software: yes. Ð Programming language: C++. Ð Authors: A. Mahajan, S. Leyffer, J. Linderoth, J. Luedtke, and T. Munson. Ð Web site: http://wiki.mcs.anl.gov/minotaur/index.php/Main_Page. Ð Dependencies: Lapack (and optionally CLP, IBM-CPLEX, FILTERSQP, IPOPT with MUMPS/HSL). 6.12 SBB SBB is a GAMS solver for MINLP models. It is based on a combination of the standard branch-and-bound method for MILP and some of the standard NLP solvers already sup- ported by GAMS. Currently, SBB can use CONOPT, MINOS,andSNOPT as solvers for sub- problems. SBB supports all types of discrete variables supported by GAMS, including binary, integer, semicontinuous, semiinteger, SOS1, SOS2. In summary: Ð Implemented algorithm: branch-and-bound. Ð Type of algorithm: exact for convex MINLPs. In the nonconvex case one can limit the fathoming of infeasible nodes. Ð Available interface: GAMS. Ð Open-source software: no. Ð Authors: ARKI Consulting and Development (Bussieck and Drud). Ð Web site: http://www.gams.com/solvers/solvers.htm#SBB. Ð Dependencies: GAMS, CONOPT/MINOS/SNOPT. 6.13 SCIP SCIP (Solving Constraint Integer Programs) is a solver developed by the Optimization De- partment at the Zuse Institute Berlin and its collaborators. For academic institutions, it is available in source code and as standalone binary and is distributed within GAMS. SCIP en- sures global optimal solutions for convex and nonconvex MINLPs. It implements a spatial branch-and-bound algorithm that utilizes LPs for bounding. Similar to BARON, the outer- approximation is generated from a reformulation of the MINLP. Note, that the support for non-quadratic nonlinear constraints is still in a BETA-stadium and not yet as robust as the rest of SCIP. In summary: Ð Implemented algorithms: spatial Branch-and-Bound, bound tightening. Ð Type of algorithm: exact. Ð Available interface: GAMS, invocation through C program. Ð Open-source software: yes. Ð Programming language: C. Ð Authors: S. Vigerske for the MINLP extension (Vigerske 2012; Achterberg 2007; Berthold et al. 2012). Ð Web site: http://scip.zib.de/. Ð Dependencies: SoPlex/IBM-CPLEX, CppAD (optionally IPOPT). Ann Oper Res 7 NEOS, server for optimization Most of the solvers described in the previous sections can be freely accessed on the In- ternet through “NEOS (Network-Enabled Optimization System): Server for Optimization” (NEOS), maintained by the Optimization Technology Center of Northwestern University, the Argonne National Laboratory and the University of Wisconsin-Madison. A user can sub- mit an optimization problem to the server and obtain the solution and running time statistics using the preferred solver through different interfaces. In particular, three ways to interact with the server are available: 1. Web Interface: from the web site the user can submit a problem, typically written with the AMPL or GAMS modeling languages, and obtain results and statistics via email. 2. Client Interface: the user can communicate with the server using a client implementation with different programming languages such as Python, Perl, PHP, C, C++, Java, Ruby (see NEOS and XML-RPC for details). 3. Kestrel Interface: the user can submit a problem to the server and use the results within a modeling environment. In the client machine, an executable file is called in order to directly communicate with the server within the AMPL or GAMS environment (see http://www-neos.mcs.anl.gov/neos/kestrel.html for details). The chance to access different solvers is a great opportunity for the optimization community, both because a user can test the performance of different solvers and decide which one is most suitable for a specific model and because some of the available solvers are commercial solvers that cannot be used in other ways by users who do not own a license. The uniformity of the interfaces available for the different solvers makes switching from one solver to an- other easy, without any additional work. Moreover, it is intuitive to use, not requiring a deep expertise in optimization. 8 Conclusions In this paper we have presented an overview of software for solving mixed integer nonlinear programming problems. We have introduced such problems and their theoretical and prac- tical difficulties. Because the solution of MINLPs often requires the solution of NLP and/or MILP subproblems, we have briefly discussed the relationship among these problems and mentioned their specific methods. We have introduced the most important algorithms and the most commonly used solvers for MINLPs, pointing out their crucial characteristics. For a reader interested in testing the developed algorithms on literature test instances, among the library of MINLP problems we cite the most widely used: CMU/IBM Library (http://egon.cheme.cmu.edu/ibm/page.htm), the new CMU-IBM Cyber-Infrastructure for MINLP collaborative site (http://www.minlp.org), the MacMINLP library maintained by Leyffer (http://www.mcs.anl.gov/~leyffer/macminlp/index.html), and the MINLPlib (http:// www.gamsworld.org/minlp/minlplib.htm). Finally, we point out that benchmark results on optimization solvers, which are beyond the scope of this paper, can be found at the web sites http://plato.asu.edu/bench.html and http://www.gamsworld.org. Acknowledgements We are grateful to Silvano Martello for precious suggestions. Thanks are also due to Stefan Vigerske for useful comments and discussions. Ann Oper Res References Abhishek, K. (2008). Topics in mixed integer nonlinear programming. Ph.D. thesis, Lehigh University. Abhishek, K., Leyffer, S., & Linderoth, J. (2010). FilMINT: an outer-approximation-based solver for nonlin- ear mixed integer programs. INFORMS Journal on Computing, 22, 555Ð567. Achterberg, T. (2007). Constraint integer programming. Ph.D. thesis, Technische Universität Berlin. Adjiman, C., Androulakis, I., & Floudas, C. (1997). Global optimization of MINLP problems in process synthesis and design. Computers & Chemical Engineering, 21, 445Ð450. Adjiman, C., Androulakis, I., & Floudas, C. (2000). Global optimization of mixed-integer nonlinear prob- lems. AIChE Journal, 46, 1769Ð1797. Androulakis, I., Maranas, C., & Floudas, C. (1995). αBB: a global optimization method for general con- strained nonconvex problems. Journal of Global Optimization, 7, 337Ð363. Beale, E., & Tomlin, J. (1970). Special facilities in a general mathematical programming system for non- convex problems using ordered sets of variables. In J. Lawrence (Ed.), Proceedings of the Fifth Interna- tional Conference on Operational Research: OR 69 (pp. 447Ð454). London: Tavistock. Belotti, P., Lee, J., Liberti, L., Margot, F., & Wächter, A. (2009). Branching and bounds tightening techniques for non-convex MINLP. Optimization Methods & Software, 24, 597Ð634. Benders, J. (1962). Partitioning procedures for solving mixed-variables programming problems. Numerische Mathematik, 4, 267Ð299. Berthold, T., Heinz, S., & Vigerske, S. (2012). Extending a CIP framework to solve MIQCPs. In J. Lee & S. Leyffer (Eds.), IMA volumes in mathematics and its applications: Vol. 154. Mixed-integer nonlinear optimization: algorithmic advances and applications (pp. 427Ð444). Berlin: Springer. Bonami, P., & Gonçalves, J. (2008). Primal heuristics for mixed integer nonlinear programs (Tech. Rep.). IBM Research Report RC24639. Bonami, P., Forrest, J., Lee, J., & Wächter, A. (2007). Rapid development of an MINLP solver with COIN- OR. Optima, 75, 1Ð5. Bonami, P., Biegler, L., Conn, A., Cornuéjols, G., Grossmann, I., Laird, C., Lee, J., Lodi, A., Margot, F., Sawaya, N., & Wächter, A. (2008). An algorithmic framework for convex mixed integer nonlinear programs. Discrete Optimization, 5, 186Ð204. Bonami, P., Cornuéjols, G., Lodi, A., & Margot, F. (2009). A feasibility pump for mixed integer nonlinear programs. Mathematical Programming, 119, 331Ð352. Bongartz, I., Conn, A. R., Gould, N., & Toint, P. L. (1995). CUTE: constrained and unconstrained testing environment. ACM Transactions on Mathematical Software, 21, 123Ð160. doi:10.1145/200979.201043. Brooke, A., Kendrick, D., & Meeraus, A. (1992). GAMS: a user’s guide.URLciteseer.ist.psu.edu/ brooke92gams.html. Bussieck, M., & Drud, A. SSB: a new solver for mixed integer nonlinear programming. In Recent advances in nonlinear mixed integer optimization, INFORMS Fall, Invited talk. Bussieck, M., & Vigerske, S. (2011). MINLP solver software. In J. Cochran (Ed.), Wiley encyclopedia of operations research and management science. New York: Wiley. CBC. URL https://projects.coin-or.org/Cbc. Conn, A., Scheinberg, K., & Vicente, L. (2008). MPS/SIAM book series on optimization. Introduction to derivative free optimization. Philadelphia: SIAM. Dakin, R. (1965). A tree-search algorithm for mixed integer programming problems. Computer Jour- nal, 8(3), 250Ð255. doi:10.1093/comjnl/8.3.250.URLhttp://comjnl.oxfordjournals.org/content/8/3/250. abstract. D’Ambrosio, C. (2010). Application-oriented mixed integer non-linear programming. 4OR, 8, 319Ð322. D’Ambrosio, C., Frangioni, A., Liberti, L., & Lodi, A. (2010). A storm of feasibility pumps for nonconvex MINLP (Tech. Rep. OR/10/13). Università di Bologna. To appear in Mathematical Programming. D’Ambrosio, C., & Lodi, A. (2011). Mixed integer non-linear programming tools: a practical overview. 4OR: A. 4OR, 9, 329Ð349. Duran, M., & Grossmann, I. (1986). An outer-approximation algorithm for a class of mixed-integer nonlinear programs. Mathematical Programming, 36, 307Ð339. Fourer, R., Gay, D., & Kernighan, B. (2003). AMPL: a modeling language for mathematical programming (2nd ed.). Monterey: Duxbury Press/Brooks/Cole Publishing Co. Geoffrion, A. (1972). Generalized Benders decomposition. Journal of Optimization Theory and Applications, 10, 237Ð260. Grossmann, I. (2002). Review of nonlinear mixed-integer and disjunctive programming techniques. Opti- mization and Engineering, 3, 227Ð252. Gupta, O., & Ravindran, V. (1985). Branch and bound experiments in convex nonlinear integer programming. Management Science, 31, 1533Ð1546. GUROBI. URL http://www.gurobi.com/. Ann Oper Res IBM-CPLEX.URLhttp://www-01.ibm.com/software/integration/optimization/cplex/. (v. 12.0). Jeroslow, R. (1973). There cannot be any algorithm for integer programming with quadratic constraints. Operations Research, 21, 221Ð224. Kelley, J. E. Jr. (1960). The cutting-plane method for solving convex programs. Journal of the Society for Industrial and Applied Mathematics, 8, 703Ð712. Kesavan, P., & Barto, P. (2000). Generalized branch-and-cut framework for mixed-integer nonlinear opti- mization problems. Computers & Chemical Engineering, 24, 1361Ð1366. Kocis, G., & Grossmann, I. (1989). Computational experience with DICOPT solving MINLP problems in process systems engineering. Computers & Chemical Engineering, 13, 307Ð315. Land, A., & Doig, A. (1960). An automatic method of solving discrete programming problems. Economet- rica, 28(3), 497Ð520. URL http://www.jstor.org/stable/1910129. Lee, J., & Leyffer, S. (Eds.) (2012). IMA volumes in mathematics and its applications: Vol. 154. Mixed integer nonlinear programming. Berlin: Springer. Leyffer, S. (1999). User manual for MINLP_BB (Tech. Rep.). University of Dundee. Leyffer, S. (2001). Integrating SQP and branch-and-bound for mixed integer nonlinear programming. Com- putational Optimization and Applications, 18, 295Ð309. Leyffer, S., & Mahajan, A. (2011). Software for nonlinearly constrained optimization. New York: Wiley. Liberti, L. (2004a). Reformulation and convex relaxation techniques for global optimization. Ph.D. thesis, Imperial College, London, UK. Liberti, L. (2004b). Reformulation and convex relaxation techniques for global optimization. 4OR, 2, 255Ð 258. Liberti, L. (2006). Writing global optimization software. In L. Liberti & N. Maculan (Eds.), Global optimiza- tion: from theory to implementation (pp. 211Ð262). Berlin: Springer. Liberti, L., Cafieri, S., & Tarissan, F. (2009a). Reformulations in mathematical programming: a computa- tional approach. In A. Abraham, A. Hassanien, & P. Siarry (Eds.), Studies in computational intelligence: Vol. 203. Foundations on computational intelligence, vol. 3 (pp. 153Ð234). New York: Springer. Liberti, L., Nannicini, G., & Mladenovic, N. (2009b). A good recipe for solving MINLPs. In V. Maniezzo, T. Stützle, & S. Voss (Eds.), Annals of information systems: Vol. 10. MATHEURISTICS: hybridizing metaheuristics and mathematical programming (pp. 231Ð244). Berlin: Springer. Linderoth, J., & Lodi, A. (2011). MILP software. In J. Cochran (Ed.), Wiley encyclopedia of operations research and management science (Vol. 5, pp. 3239Ð3248). New York: Wiley. Lodi, A. (2009). Mixed integer programming computation. In M. Jünger, T. Liebling, D. Naddef, G. Nemhauser, W. Pulleyblank, G. Reinelt, G. Rinaldi, & L. Wolsey (Eds.), 50 Years of integer program- ming 1958–2008: from the early years to the state-of-the-art (pp. 619Ð645). Berlin: Springer. Mangasarian, O. (1965). Pseudo-convex functions. Journal of the Society for Industrial and Applied Mathe- matics, 3, 281Ð290. McCormick, G. (1976). Computability of global solutions to factorable nonconvex programs: Part I—convex underestimating problems. Mathematical Programming, 10, 147Ð175. Nannicini, G., & Belotti, P. (2011). Rounding based heuristics for nonconvex MINLPs (Tech. Rep.). Tepper, School of Business, Carnegie Mellon University. March. Nemhauser, G., Savelsbergh, M., & Sigismondi, G. (1994). MINTO, a mixed INTeger optimizer. Operations Research Letters, 15, 47Ð585. NEOS. URL www-neos.mcs.anl.gov/neos (v. 5.0). Nocedal, J., & Wright, S. (2006). Springer series in operations research. Numerical optimization. Nowak, I. (2005). International series of numerical mathematics. Relaxation and decomposition methods for mixed integer nonlinear programming. Berlin: Birkhäuser. Nowak, I., & Vigerske, S. (2008). LaGO—a (heuristic) branch and cut algorithm for nonconvex MINLPs. Central European Journal of Operations Research, 16, 127Ð138. Quesada, I., & Grossmann, I. (1992). An LP/NLP based branch and bound algorithm for convex MINLP optimization problems. Computers & Chemical Engineering, 16, 937Ð947. Ryoo, H., & Sahinidis, N. (1996). A branch-and-reduce approach to global optimization. Journal of Global Optimization, 8, 107Ð138. Sahinidis, N. (1996). BARON: a general purpose global optimization software package. Journal of Global Optimization, 8, 201Ð205. Schweiger, C., & Floudas, C. (1998a). MINOPT: a modeling language and algorithmic framework for lin- ear, mixed-integer, nonlinear, dynamic, and mixed-integer nonlinear optimization. Princeton: Princeton University Press. Schweiger, C., & Floudas, C. (1998b). MINOPT: a software package for mixed-integer nonlinear optimiza- tion(3rded.). SCIP. URL http://scip.zib.de/scip.shtml. Ann Oper Res Smith, E., & Pantelides, C. (1999). A symbolic reformulation/spatial branch and bound algorithm for the global optimization of nonconvex MINLPs. Computers & Chemical Engineering, 23, 457Ð478. Tawarmalani, M., & Sahinidis, N. (2004). Global optimization of mixed-integer nonlinear programs: a theo- retical and computational study. Mathematical Programming, 99, 563Ð591. Vigerske, S. (2012). Decomposition in multistage stochastic programming and a constraint integer program- ming approach to mixed-integer nonlinear programming. PhD Thesis, Humboldt-Universität zu Berlin. Westerlund, T., & Pettersson, F. (1995). A cutting plane method for solving convex MINLP problems. Com- puters & Chemical Engineering, 19, S131ÐS136. Westerlund, T., & Pörn, R. (2002). Solving pseudo-convex mixed integer problems by cutting plane tech- niques. Optimization and Engineering, 3, 253Ð280. Westerlund, T., Skrifvars, H., Harjunkoski, I., & Pörn, R. (1998). An extended cutting plane method for solving a class of non-convex MINLP problems. Computers & Chemical Engineering, 22, 357Ð365. XML-RPC. URL http://www.xmlrpc.com. XPRESS. URL http://www.fico.com/en/Products/DMTools/Pages/FICO-Xpress-Optimization-Suite.aspx. 4OR-Q J Oper Res DOI 10.1007/s10288-010-0118-8 PHD THESIS Application-oriented mixed integer non-linear programming Claudia D’Ambrosio Received: 9 January 2010 / Revised: 17 January 2010 © Springer-Verlag 2010 Abstract This is a summary of the author’s PhD thesis supervised by Andrea Lodi and defended on 16 April 2009 at the University of Bologna. The thesis is writ- ten in English and available for download at http://www.or.deis.unibo.it/staff_pages/ dambrosio/Phd_Th_DAmbrosio.tar.gz. The main topic of the thesis is Mixed Integer Non-Linear Programming, with focus on non-convex problems (i.e., problems for which the feasible region of the continuous relaxation is a non-convex set) and real- world applications. Different kinds of algorithms are presented: linearization methods, heuristic and global optimization algorithms. Also, different kinds of real-world appli- cations are solved, arising, for example, from Hydraulic and Electrical Engineering problems. The last part of the thesis is devoted to software and tools for mixed integer non-linear programming problems. Keywords Mixed integer non-linear programming · Real-world application · Non-convex · Algorithms · MINLP tools Mathematics Subject Classification (2000) 90C11 · 90C26 · 90C90 · 65K05 1 Introduction In the most recent years there has been a renovated interest for mixed integer non-linear programming (MINLP) problems, the main motivations being: (i) the performance of solvers handling non-linear constraints, which was largely improved; (ii) the aware- ness that most of the applications from the real-world can be modeled as an MINLP problem; (iii) the challenging nature of this very general class of problems. C. D’Ambrosio (B) DEIS, University of Bologna, Viale Risorgimento 2, 40136 Bologna, Italy e-mail: [email protected] 123 C. D’Ambrosio Besides being hard from a theoretical viewpoint, MINLPs are, in general, also very difficult to solve in practice. We address non-convex MINLPs, i.e., problems having non-convex continuous relaxations: the presence of non-convexities within the model makes them usually even harder to solve. The aim of this PhD thesis is to examine different possible approaches that one can study to attack MINLP problems with non-convexities: linearizations and approxi- mations, heuristic methods and global optimization algorithms. A special attention is given to real-world problems. In the introductory part of the thesis we introduce the problem and present the three most important special cases of general MINLPs and the most effective methods used to solve them. These techniques play a fundamental role in the resolution of general MINLP problems. We then describe algorithms addressing general MINLPs. The main contributions of the thesis are described in the next two sections, where methods for MINLP and real-world application are presented. The last part of the thesis is devoted to software and tools useful for solving MINLP problems. 2 Modeling and solving non-convexities Four different methods, aimed at solving different classes of MINLP problems, are presented. A feasibility pump heuristic for non-convex MINLPs We present a new feasi- bility pump (FP) algorithm tailored for general non-convex MINLP problems. Dif- ferences with the previously proposed FP algorithms and difficulties arising from non-convexities in the models are extensively discussed. The basic idea of FP iter- ative algorithms is that, at each iteration, two simpler subproblems are solved and the distance of the solutions of the two subproblems decreases. The main meth- odological innovations of this variant are: (a) the first subproblem is a non-con- vex continuous Non-Linear Program, which is solved using heuristic techniques; (b) the solution method for the second subproblem, a Mixed Integer Linear Pro- gramming (MILP), is complemented by a tabu list. We exhibit computational results showing the good performance of the algorithm on instances taken from the MINLP- Lib. Morover, for the first time we point out the strong relationship between no-good and interval-gradient cuts, then formalized in D’Ambrosio et al. (2009). A global optimization method for a class of MINLP problems We propose a global optimization algorithm for separable non-convex MINLPs, i.e., MINLPs in which the non-convex functions involved are sums of univariate functions. There are many problems that are already in such a form, or can be brought into such a form via some simple substitutions. We developed a simple algorithm, implemented at the level of a modeling language, to attack such separable problems. First, we identify subintervals of convexity and concavity for the univariate functions using external tools for symbolic analysis. With such an identification at hand, we develop a convex MINLP relaxation of the problem. We work on each subinterval of convexity and con- cavity separately, using linear relaxation on only the “concave side” of each function on the subintervals. The subintervals are glued together using binary variables. Next, 123 Application-oriented mixed integer non-linear programming we repeatedly refine our convex MINLP relaxation by modifying it at the model- ing level. Finally, by fixing the integer variables in the original non-convex MINLP, and then locally solving the associated non-convex Non-Linear Programming (NLP) relaxation, we get an upper bound on the global minimum. Preliminary computational experiments on different instances are presented in D’Ambrosio et al. (2009a,b). Approximating non-linear functions of two variables We consider three meth- ods for the piecewise linear approximation of functions of two variables for inclusion within MILP models. The simplest one applies the classical one-variable technique over a discretized set of values of the second independent variable. A more complex approach is based on the definition of triangles in the three-dimensional space. The third method we describe can be seen as an intermediate approach, recently used within an applied context, which appears particularly suitable for MILP modeling. We show that the three approaches do not dominate each other, and give a detailed description of how they can be embedded in a MILP model. Advantages and drawbacks of the three methods are discussed on the basis of some numerical examples. These results are presented in D’Ambrosio et al. (2010). NLP-based heuristics for MILP problems We present preliminary computational results on heuristics for Mixed Integer Linear Programming. A heuristic for hard MILP problems based on NLP techniques is presented: the peculiarity of our approach to MILP problems is that we reformulate integrality requirements treating them in the non-convex objective function, ending up with a mapping from the MILP feasibility problem to NLP problem(s). 3 Applications A relevant part of the thesis is devoted to real-world applications: two different prob- lems and approaches to MINLPs are presented, namely scheduling and unit commit- ment for hydro-plants, and water network design problems. The results show that each of these different methods has advantages and disadvantages. Hydro scheduling and unit commitment We study a unit commitment problem of a generation company whose aim is to find the optimal scheduling of a multi- unit pump-storage hydro power station, for a short term period in which the electricity prices are forecasted. The problem has a mixed-integer non-linear structure, that makes very hard to handle the corresponding mathematical models. However, modern MILP software tools have reached a high efficiency, both in terms of solution accuracy and computing time. Hence we introduce MILP models of increasing complexity, that allow to accurately represent most of the hydro-electric system characteristics, and turn out to be computationally solvable. In particular, we present a model that takes into account the head effects on power production through an enhanced linearization technique, and turns out to be more general and efficient than those available in the literature. The practical behavior of the models is analyzed through computational experiments on real-world data which are reported in Borghetti et al. (2008). 123 C. D’Ambrosio Water network design problem We present a solution method for a water-network optimization problem using a non-convex continuous NLP relaxation and a MINLP search. Our approach employs a relatively simple and accurate model that pays some attention to the requirements of the solvers that we employ. In this way, we exploit the complicated and effective algorithms implemented in the MINLP solver for calcu- lating good feasible solutions. We report successful computational experience using available open-source MINLP software on problems from the literature and on diffi- cult real-world instances. The method is extensively described in Bragalli et al. (2006, 2008). 4 Tools for MINLP The last part of the thesis contains a review of tools commonly used for general MINLP problems. We start by describing the main characteristics of solvers for the most commonly used special cases of MINLP. Then we examine solvers for general MINLPs: for each solver a brief description, taken from the manuals, is given together with a schematic table containing the most importart information, such as, e.g., the class of problems they address, the implemented algorithms, the dependencies on external software. Tools for MINLP, especially open-source software, constituted an important part of the development of this PhD thesis. The great majority of the methods presented in Sects. 2 and 3 were completely developed using such solvers. A notable example of the importance of open-source solvers is represented by the resolution method of the Water Network Design problem described in Sect. 3: we present an algorithm for solving this non-convex MINLP problem, using the open-source software BONMIN. The solver was originally tailored for convex MINLPs. However, some accommoda- tions were made to handle non-convex problems and they were developed and tested in the context of the thesis, in which additional details on these features can be found. References Borghetti A, D’Ambrosio C, Lodi A, Martello S (2008) An MILP approach for short-term hydro scheduling and unit commitment with head-dependent reservoir. IEEE Trans Power Syst 23(3):1115–1124 Bragalli C, D’Ambrosio C, Lee J, Lodi A, Toth P (2006) An MINLP solution method for a water network problem. In: Azar Y, Erlebach T (eds) Algorithms—ESA 2006 (14th Annual European symposium. Zurich, Switzerland, September 2006), Lecture Notes in Computer Science, Springer, pp 696–707 Bragalli C, D’Ambrosio C, Lee J, Lodi A, Toth P (2008) Water network design by MINLP. IBM Research Report RC24495 D’Ambrosio C, Frangioni A, Liberti L, Lodi A (2009) On interval-subgradient and no-good cuts. Technical Report OR-09-09, University of Bologna D’Ambrosio C, Lee J, Wächter A (2009a) An algorithmic framework for MINLP with separable non-con- vexity. IBM Research Report RC24810 D’Ambrosio C, Lee J, Wächter A (2009b) A global-optimization algorithm for mixed-integer nonlinear programs having separable non-convexity. In: Fiat A, Sanders P (eds) ESA 2009 (17th Annual Euro- pean symposium. Copenhagen, Denmark, September 2009), Lecture Notes in Computer Science 5757. Springer, Berlin, pp 107–118 D’Ambrosio C, Lodi A, Martello S (2010) Piecewise linear approximation of functions of two variables in MILP models. Oper Res Lett 38(1):39–46 123 On a nonconvex MINLP formulation of the Euclidean Steiner tree problems in n-space Claudia D’Ambrosio1, Marcia Fampa2, Jon Lee3, and Stefan Vigerske4 1 LIX CNRS (UMR7161), Ecole´ Polytechnique 91128 Palaiseau Cedex, France. [email protected] 2 Instituto de Matem´aticaand COPPE, Universidade Federal do Rio de Janeiro, Rio de Janeiro, RJ, Brazil. [email protected] 3 IOE Department, University of Michigan. Ann Arbor, Michigan, USA. [email protected] 4 ZIB (Konrad-Zuse-Zentrum f¨ur Informationstechnik Berlin), Berlin, Germany. [email protected] Abstract. The Euclidean Steiner Tree Problem in dimension greater than 2 is notoriously difficult. Successful methods for exact solution are not based on mathematical-optimization — rather, they involve very so- phisticated enumeration. There are two types of mathematical-optimiza- tion formulations in the literature, and it is an understatement to say that neither scales well enough to be useful. We focus on a known nonconvex MINLP formulation. Our goal is to make some first steps in improving the formulation so that large instances may eventually be amenable to solution by a spatial branch-and-bound algorithm. Along the way, we de- veloped a new feature which we incorporated into the global-optimization solver SCIP and made accessible via the modeling language AMPL, for han- dling piecewise-smooth univariate functions that are globally concave. 1 Introduction The Euclidean Steiner tree problem (ESTP) in IRn is: Given a set of finite points in IRn, find a tree of minimal Euclidean length spanning these points, using or not additional points. Original points are terminals and additional nodes in the tree are Steiner points. The ESTP is NP-Hard [9], and interest in the problem stems from both the mathematical challenge and its potential applications (e.g., communications, infrastructure networks). In biology, [3] gives an application of the ESTP to phylogenetic analysis (i.e., the construction of evolutionary trees). Basic properties of an optimal solution, called a Steiner minimal tree (SMT), are: (i) A Steiner point in an SMT has degree 3; a Steiner point and its adjacent nodes lie in a plane, and the angles between the edges connecting the point to its adjacent nodes are 120 degrees. (ii) A terminal in an SMT has degree between 1 and 3. (iii) An SMT on p terminals has at most p 2 Steiner points (see [12,5])). The topology of a Steiner tree is the tree for which− we have fixed the number of Steiner points and the edges between all points, but not the position of the Steiner points. A topology is a Steiner topology if each Steiner point has degree 3 and each terminal has degree 3 or less. A Steiner topology with p terminals is a full Steiner topology if there are p 2 Steiner points and each terminal has degree 1. A full Steiner tree is a Steiner− tree corresponding to a full Steiner topology. A Steiner tree corresponding to some topology, but with certain edges shrunk to zero length, is degenerate. Any SMT with a non-full Steiner topology can be associated with a full Steiner topology for which the tree is degenerate. Many papers have addressed exact solution in IR2, and impressive results were obtained with the GeoSteiner algorithm [18]. But these algorithms cannot be applied when n 3, and only a few papers have considered exact solution in this case. [11] proposed≥ solving the problem in IRn by enumerating all Steiner topologies and computing a min-length tree associated with each topology, which in practice, can only solve very small instances because of the fast growth of the number of topologies as p increases. A branch-and-bound (b&b) algorithm for finding SMTs in IRn was proposed by Smith [14]. He presented a scheme for im- plicitly enumerating all full Steiner topologies on a given set of terminals, and he gave computational results sufficient to disprove for all 3 n 9, an important conjecture of Gilbert and Pollak on the “Steiner ratio”. Fampa≤ ≤ and Anstreicher [6] used Smiths’s enumeration scheme and proposed a conic formulation for the problem of locating the Steiner points for a given topology, to obtain a lower bound on the min tree length and to implement a “strong branching” technique. [15] presented geometric conditions that are satisfied by Steiner trees with a full topology and applied those conditions to eliminate candidate topologies in Smith’s scheme. The best computational results for the ESTP for n 3 are presented in these two last papers. ≥ None of the works mentioned above have considered a math-programming formulation for the ESTP, which was presented only in [13] and [7]. [13] formu- lated the ESTP as a non-convex mixed-integer nonlinear programming (MINLP) problem and proposed a b&b algorithm using Lagrangian dual bounds. [7] pre- sented a convex MINLP formulation that could be implemented in a b&b al- gorithm using bounds computable from conic problems. Both formulations use 0/1 variables to indicate whether the edge connecting two nodes is present in a Steiner topology. The presence of these 0/1 variables leads to a natural branching scheme, however neither [13] nor [7] present computational results. We did some preliminary experiments with the nonconvex model. We solved some randomly generated instances using SCIP [1,16], and the results are dismal. Two difficulties observed have motivated this research: the weakness of the lower bounds given by the relaxations, and non-differentiability at points where the solution degenerates. In what follows, we investigate strategies to deal with these difficulties: (i) the use of approximate differentiable functions for the Euclidean norm, and (ii) nonconvex cuts based on geometric considerations. 2 A Nonconvex MINLP formulation [13] formulates the ESTP as a nonconvex MINLP problem, first defining a special graph G = (V,E). Let P := 1, 2, ..., p be the indices associated with the given { } terminals a1, a2, ..., ap and S := p + 1, p + 2, ..., 2p 2 be the indices associated p+1 p{+2 2p 2 − } with the Steiner points x , x , ..., x − . Let V = P S. Denote by [i, j] ∪ an edge of G, with i, j V such that i < j. Define E := E1 E2, where E := [i, j]: i P, j ∈S and E := [i, j]: i S, j S . Define∪ a 0/1 y 1 { ∈ ∈ } 2 { ∈ ∈ } ij for each edge [i, j] E, where yij = 1 if the edge [i, j] is present in the SMT and 0 otherwise. The ESTP∈ is then formulated as (MMX) min ai xj y + xi xj y , (1) k − k ij k − k ij [i,j] E [i,j] E X∈ 1 X∈ 2 y = 1, for i P, (2) ij ∈ j S X∈ y + y + y = 3, for j S, (3) ij kj jk ∈ i P k 3 Dealing with the non-differentiability The continuous relaxation of MMX is a nonconvex NLP problem. Convergence of most NLP solvers (e.g. Ipopt [17]) requires that functions be twice continuously differentiable. This is not the case for MMX due to the non-differentiability of the Euclidean norm when the solution degenerates (i.e., when the norm is zero); and it is easy to see examples where the optimal solution does degenerate. In water- network optimization, [2] smooths away non-differentiability at zero of another function (modeling the pressure drop due to friction of the turbulent flow of water in a pipe). There are different ways that we can deal with the non-differentiability that we face. Let w(xi xj) := xi xj 2, so that xi xj = w(xi xj). In this way, we can focus− on √ , thek source− k of the non-differentiability.k − k − · p 3.1 Implicit square roots One possibility is to introduce an auxiliary variable z, and use the additional inequality z2 + w 0 and the nonnegativity constraint z 0. In this way, − ≤ ≥ any optimal solution will have z = √w. This looks possibly attractive, but the overhead of so many additional nonnegatively-constrained variables and the difficulty of many additional nonconvex constraints is prohibitive. On the other hand, while nonconvex, these functions z2 +w manifest them- selves as z2 + n v2, with v = xi xj. The nonconvexity− in z2 + n v2 is − ij l=1 l − − ij l=1 l isolated to z2 , so it may be possible to adapt the techniques of [4] (exploiting ijP P concave separability),− though we have to deal with the multiplication of distance variables zij by 0/1 variables yij in the objective function of MMX. Another view is that z2 + w 0 is equivalent to √w z, which is mani- − ≤ i j 2 ≤ fested as the second-order cone constraint x x zij. We can try to exploit methods for handling such constraints, thoughk − wek have≤ to deal with the multi- plication of distance variables zij by 0/1 variables yij in the objective function. 3.2 Shifting A simple fix is to approximate √w by h(w) := √w + δ √δ for some small δ > 0. Then we underestimate all positive distances (via the− triangle inequality). Because our objective function is increasing in each distance, we get a relaxation of MMX. But a strong downside is that we underestimate all positive distances, and the error in each distance calculation rapidly approaches √δ as w increases. 3.3 Linear extrapolation The following approximation, depending on the choice of a σ > 0, was proposed in [10] to avoid non-differentiability of the Euclidean-distance function for the “traveling-salesman problem with neighborhoods.” √w, if w σ2; l(w) := σ + 1 w, if w ≥ σ2. 2 2σ ≤ The function l is well-defined at w = σ2. It is analytic except when w = σ2, and in this case, it is still differentiable once. In fact, l simply uses the tangent at w = σ2 of the graph of the strictly concave function √w to overestimate √w on [0, σ2). We already see that because l is not twice continuously differentiable, we should not expect good behavior from most NLP solvers. A strong shortcoming for our context is that l miscalculates zero distances; that is, l(0) = σ/2, while obviously √0 = 0. Because l(w) is an upperbound on √w, and because our objective function is increasing in distances, using the approximation l, we do not get a relaxation of MMX. Moreover, for degenerate Steiner trees, we will systematically overestimate distances that should be zero. 3.4 Smooth under-estimation We propose another piecewise smoothing, using a particular homogeneous cubic depending on the choice of a λ > 0, that has very nice properties: √w, if w λ2; c(w) := 15 w 5 w2 + 3 w3, if w ≥ λ2. 8λ − 4λ3 8λ5 ≤ We have depicted all of these smoothings in Fig. 1. Fig. 1: Behavior of all smoothings (λ2 = σ2 = 0.01): – the solid curve (——–) is the true √ function. · – the “smooth underestimation” c, which we advocate, follows the dotted curve ( ) ·········· below w = 0.01. – the “linear extrapolation” l follows the dot-dashed line ( - - - ) below w = 0.01. · · · · – both piecewise-defined functions c and l follow the true √ function above w = 0.01. · – the “shift” h (with δ = (4λ/15)2 chosen so that it has the same derivative as c does at 0) follows the consistent underestimate given by the dashed curve (- - - -). The next result makes a very strong case for the smoothing c. Thm. 1. 1. c(w) agrees with √w in value at w = 0; 2. c(w) agrees with √w in value, derivative and second derivative at w = λ2; hence c is twice continuously differentiable; 3. c is strictly concave on [0, + ] (just like √ ); ∞ · 4. c is strictly increasing on [0, + ] (just like √ ); consequently, c( xi xj 2) is quasiconvex (just like xi ∞xj ); · k − k k − k 5. √w c(w) 0 on [0, + ]; − ≥ ∞ 6. For all λ > 0, max (√w c(w))/λ : w [0, + ] is the real root γ of 168750+1050625x+996300{ − x2+236196x3, which∈ is∞ approximately} 0.141106. − Because distances only appear in the objective, and in a very simple manner, the approximation with c is a relaxation (due to (5) of Thm. 1). Meaning that the objective value of a global optimum using distance approximation is a lower bound on the true global optimum. And plugging the obtained solution into the true objective function gives an upper bound on the value of a true global optimum. So, in the end we get a solution and a bound on how close to optimal we can certify it to be. To be precise, for any λ > 0, let MMX(λ) denote MMX with all square roots in the norms replaced by the function c. Cor. 2. The optimal value of MMX is between the optimal value of MMX(λ) and the optimal value of MMX(λ) plus λγ(2p 3) (γ 0.141106). − ≈ We note that the upper bound of Cor. 2 is a very pessimistic worst case — only achievable when the optimal tree has a full Steiner topology and all edges are very short. If such were the case, certainly λ should be decreased. Furthermore, we emphasize that if the length of every edge in the SMT that solves MMX(λ) is either zero (degenerate case) or greater than or equal to λ, then the optimal values of MMX and MMX(λ) are the same. 2 For δ = (4λ/15) , we have c0(0) = h0(0). That is, at this value of δ we can expect that c and h will have the same numerical-stability properties near 0. Prop. 3. For δ = (4λ/15)2, we have h(w) < c(w) on (0, + ). Moreover c(w) h(w) is strictly increasing on [0, + ). ∞ − ∞ Hence the relaxation provided using c is always at least as strong as the relaxation provided using h. In fact, strictly stronger in any realistic case (specifically, when there is more than 1 terminal). We make a few further observations about c: 15 Choosing λ. Note that c0(0) = 8λ , so we should not be too aggressive in picking λ extremely small. But a large derivative at 0 is the price that we pay for getting everything else; in particular, any concave function f that agrees with √w at 2 1 w = 0 and w = λ has f 0(0) λ . By Cor. 2, choosing λ to be around 2p 1 would seem to make sense, thus guaranteeing≥ that our optimal solution of MMX(− λ) is within a universal additive constant of the optimal value of MMX. If the points are quite close together, either they should be scaled up or λ can be decreased. Secant lower bound. Owing to the strict concavity, in the context of an sbb algorithm, c is always best lower bounded by a secant on any subinterval. Of course, it can be an issue whether a sbb solver can recognize and exploit this. In general, such solvers (e.g., Baron and Couenne) do not yet support general piecewise-smooth concave functions, while conceptually they could and should. However, we implemented a feature in SCIP (version 3.2) that allowed us to solve the proposed relaxation. In particular, by using the modeling-language AMPL interface and its general suffix facility (see [8]), we are able to specify to SCIP to treat a piecewise-defined constraint as globally concave. With this new SCIP feature we were able to solve the secant relaxation — see Section 5. 4 Tightening relaxations 4.1 Integer extreme points Here, we examine the continuous relaxation of the feasible region of MMX, just in the space of the y-variables. That is, the set of yij [0, 1] satisfying (2- 4). The coefficient matrix of the system (2-4) is not totally∈ unimodular (TU). However, for each j S p + 1 , we can subtract the equation of (4) from the ∈ − { } corresponding equation of (3) to arrive at the system: y = 1, for i P, (6) ij ∈ j S X∈ 3, for j = p + 1, y + y = (7) ij jk 2, for j S p + 1 , i P k>j,k S ∈ − { } X∈ X∈ y = 1, for j S p + 1 . (8) kj ∈ − { } k Thm. 4. The set of y [0, 1] satisfying (2-4) has integer extreme points. ij ∈ Cor. 5. No valid linear inequality in the y-variables alone can improve the linear relaxation of the equations (2-4) describing full Steiner topologies. This is not to say that optimality-based (linear) inequalities in the y-variables alone cannot be derived (see 4.2.2). § Cor. 6. Given a globally-optimal solution of the continuous relaxation of MMX, in polynomial time we can calculate a globally-optimal solution of MMX. The relevant b-matching problem is depicted in Fig. 2. There is a node for every constraint of (6-8) and an edge for every variable. To the right of each node is its required degree. All possible edges exist between nodes at levels (6) and (7); i.e., those node sets induce a complete bipartite graph. All possible edges extending “down to the right” exist between nodes at levels (7) and (8); i.e., between nodes at level (7) and all nodes of greater number at level (8). A feasible choice of edges (selecting a full Steiner topology) is one that meets the degree requirements. E.g., we can see that we must choose the edge between node p + 1 of level (7) and node p + 2 of level (8). 4.2 Geometric cuts Based on various geometric considerations concerning optimal solutions, we can derive several families of valid inequalities seeking to improve relaxations of our formulation. Some of these are nonlinear, and it is an ongoing challenge to take advantage of them computationally. Until we address it in 4.2.3, assume that all norms are taken exactly — not smoothed. § i Let ηi be the distance from terminal a to the nearest other terminal; i.e., i j ηi := min a a , i P. (9) j P, j=i{k − k} ∀ ∈ ∈ 6 1 1 1 1 2 p ··· (6) 3 2 2 2 p+1 p+2 j 2p-2 ··· ··· (7) 1 1 1 1 p+2 p+3 j+1 2p-2 ··· ··· (8) Fig. 2: The bipartite b-matching model for selecting a full Steiner topology 4.2.1 Non-combinatorial cuts. Thm. 7. For all n 2, we have ≥ y xk ai η , i P, k S. (10) ik k − k ≤ i ∀ ∈ ∈ Lem. 8. Among triangles with edge lengths a, b, c and corresponding angles x,y,z, with c and z fixed, the one maximizing a + b is isosceles (that is a = b, x = y). Thm. 9. For all n 2, we have ≥ y y xk ai + xk aj 2 ai aj , i, j P, i < j, k S. (11) ik jk k − k k − k ≤ √3 k − k ∀ ∈ ∈ In computations, we treat the bilinear term yikyjk by replacing it with a variable yijk and using the standard McCormick inequalities. Another way to try and use the same principle is as follows: Thm. 10. For all n 2, we have ≥ y y xk ai xk aj xk ai 1 ai aj = 0, i, j P, i < j, k S. ik jkk − kk − k k − k − √3 k − k ∀ ∈ ∈ (12) Thms. 9 and 10 easily extends to the case where the Steiner point xk is adjacent to only 1 terminal in the SMT and also to the case where xk is not adjacent to any terminal. In the such cases, we have y y xk ai + xk xl 2 ai xl , i P, k, l S, k < l; (13) ik kl k − k k − k ≤ √3 k − k ∀ ∈ ∈ y y xk xl + xk xm 2 xl xm , k, l, m S, k < l < m. (14) kl km k − k k − k ≤ √3 k − k ∀ ∈ Via another geometric principle, we have the following result. Thm. 11. For n = 3 and i, j P, i < j, k, l S, k < l, we have ∈ ∈ ai aj xk xl y y y det = 0. (15) ik jk kl · 1 1 1 1 We note that the determinant of the 4 4 matrix in Thm. 11 is quadratic in the x-variables — actually bilinear between× xk and xl. In computations, we treat the trilinear term yikyjkykl by replacing it with a variable yijkl and using the standard inequalities y y , y y , y y , ijkl ≤ ik ijkl ≤ jk ijkl ≤ kl y + y + y 2 + y . ik jk kl ≤ ijkl Thm. 11 easily extends to dimensions n > 3. Thm. 12. For n 3, i, j P, i < j, k, l S, k < l, and for every 3 4 submatrix B = [bi,≥ bj, ξk, ξl] ∈of the n 4 matrix∈ ai, aj, xk, xl , we have × × bi bj ξk ξl y y y det = 0. (16) ik jk kl · 1 1 1 1 4.2.2 Combinatorial cuts. In this section, we introduce some valid linear inequalities satisfied by optimal topologies of the ESTP. Thm. 13. For n 2 and i, j P, i < j, we have ≥ ∈ If ai aj > η + η , then y + y 1, k S. (17) k − k i j ik jk ≤ ∀ ∈ Considering the valid inequalities in (17), we note that the inequalities (11) can i j only be active for i, j P, i < j, k S, such that a a ηi +ηj. Therefore, only such valid inequalities∈ should be∈ included in MMX.k − Furthermore,k ≤ the result in Thm. 13 extends to the more general case addressed in Thm. 14. Thm. 14. Let H be a graph with vertex set P , and such that i and j are adjacent i j if a a > ηi + ηj. Then for each k S, the set of i P such that yik = 1 in ank optimal− k solution is a stable set of H∈. Therefore, every∈ valid linear inequality i P αiyi ρ for the stable set polytope of H yields a valid linear inequality ∈ ≤ i P αiyik ρ for each k S. P ∈ ≤ ∈ P Let T be a min-length spanning tree on terminals ai, i P . For i, j P , let ∈ ∈ i j βij := length of the longest edge on the path between a and a in T . (18) The proof of the following well-known lemma can be found for example in [12]. We use it to prove the validity of cuts presented in Cor. 16. Lem. 15. An SMT contains no edge of length greater than βij on the unique path between ai and aj, for all i, j P . ∈ Cor. 16. For n 2 and i, j P, i = j, we have ≥ ∈ 6 If ai aj > η + η + β , then y + y + y 2, k, l S, k < l. (19) k − k i j ij ik kl jl ≤ ∀ ∈ 4.2.3 Smoothing in the context of cuts. In the definition and derivation of all cuts, we assumed that norms are taken exactly — not smoothed. Now, we confront the issue that we prefer to work with smoothed norms in the context of mathematical optimization. First of all, for any norm that just involves data and no variables, we do not smooth. This pertains to all occurrences of ai aj , and hence also all occur- rences of the parameters defined in (9) and (18).k − Anyk valid equation or inequality based only on such use of norms (or not based on norms at all) is valid for the original problem. So, these equations and inequalities do not exclude optimal solutions of the original problem, and so these solutions are candidate solutions to the problem where distances are smoothly underestimated (employing h or c), possibly with lower objective value. Therefore, any such equation or inequality is valid for the problem with distances smoothly underestimated. This applies to (15), (16), (17), inequalities based on Thm. 14, and (19). For (10) and (11), norms involving variables occur only on the low side of the inequalities, so smooth underestimation of these norms, employing h or c, keeps them valid. Inequalities (13,14) also contain norms involving variables on the high side of those inequalities. For those norms, we should replace them with smooth overestimates. For example, we could use an “overestimating shift” hˆ(w) := √w + δ, or the linear extrapolation l (possibly with a different breakpoint). In fact, by choosing the breakpoint for l at σ2 := (4λ/15)2, where λ2 is the breakpoint for c, we get c0(0) = l0(0) (= 15/8λ). That is, if we can numerically tolerate a breakpoint for the underestimate c at w = λ2, then we can equally tolerate a breakpoint for the overestimate l at w = σ2 = (4λ/15)2. While global sbb solvers do not yet support piecewise functions, at the modeling level we could utilize tangents of the concave √ at a few values of w greater than (4λ/15)2. I.e., 2 · 2 2 2 σi 1 choose some values σ > > σ > σ := (4λ/15) , let τσ (w) := + w, r ··· 1 0 i 2 2σi and we can instantiate (13) and (14) r + 1 times each, replacing the √ implicit · on the high side of these inequalities with τσi , for i = 0, 1, . . . , r. Finally, we have the equation (12). The norms xk ai and xk aj can be smoothed in any way that correctly evaluatesk the− normk at 0,k and− thek equation remains valid. So employing h or c leaves the equation valid. The norm involving xk in the multiplicand xk ai ai aj /√3 is thornier. One k − k − k − k way to address it is to simply replace it with xk ai 2 ai aj 2/3 , with these (smooth) squared norms calculated exactly.k − k − k − k 5 Experiments In this section, we demonstrate the impact of our cuts on the solution of the ESTP, with results on 25 instances in IR3, where the terminals are randomly distributed in the cube [0, 10]3. For each value of p from 4 to 8, we created five instances. We show the effect of the cuts by solving the instances a few times with the sbb code SCIP, adding different cuts each time to MMX. In our experiments, we considered cuts (10,11, 13–15, 17). We compare the performance of SCIP on eight models, running with a time limit of 2 hours. The first model is MMX, with no cuts, the following six are MMX with the independent addition of cuts, and the last model is MMX with the addition of the three most effective cuts on the previous experiments. Summarizing our results, we have that adding the cuts have significant ef- fect on improving the lower bounds and decreasing the running time. The three classes of cuts, (10), (14) and (17) together improve the lower bound computed in the time limit, in the only two instances still not solved to optimality in 51% and 52%, and decreased the overall running time in 61% on average. Three extra instances, all with p = 8, were solved to optimality in the time limit, after the addition of the cuts. In Table 1, we show for each value of p, the average percent- age improvements on the running time of each model tested, when compared to MMX (100(Time(MMX) Time(Model))/Time(MMX)). (Negative values indi- cate worse times with the− addition of the cuts) p MMX+ (10) (11) (13) (14) (15) (17) (10,14,17) 4 51 2 20 0 -21 24 41 5 44 -10 21 0 -82 4 56 6 92 72 91 88 -462 93 93 7 81 -274 48 56 -654 76 84 8 29 0 0 6 0 15 32 Table 1: Average % improvements on running time compared to MMX Although these are still preliminary results, we see that our cuts can poten- tially improve the quality of the lower bounds computed by SCIP. The two other cuts proposed (16,19) have a positive effect in instances with more terminals or in higher dimensions. Finally, we see that using several families of cuts together can bring further improvements. 6 Conclusions The ESTP is very difficult to solve for n > 2, and the application of sbb solvers to test instances using the MMX formulation points out considerable drawbacks, concerned with the non-differentiability of the Euclidean norm, and also to the extreme weakness of the lower bounds given by relaxations. MMX in its original form, with today’s sbb solvers, leads to dismal results. We presented different approximations for the square-roots — the source of our non-differentiability, which can be judiciously applied in the context of valid inequalities. In particular, we introduced a smooth underestimation func- tion, and we established several very appealing properties. We implemented this smoothing with a new feature of SCIP that we developed. This feature could be specialized to automatically smooth roots and other power functions. To improve the quality of lower bounds computed in an sbb algorithm, we presented a variety of valid inequalities, based on known geometric properties of a SMT. Preliminary numerical experiments demonstrates the potential of these cuts in improving lower bounds. Many of these cuts are nonconvex, and it is an interesting research direction to apply similar ideas to other nonconvex gloabl- optimization models. We demonstrated that the performance of the MMX model can be significantly improved, though it is still not the best method for ESTP with n > 2. So more work is needed to make the MMX approach competitive. Acknowledgments J. Lee was partially supported by NSF grant CMMI–1160915 and ONR grant N00014-14-1-0315, and Laboratoire d’Informatique de l’Ecole´ Polytechnique. M. Fampa was partially supported by CNPq and FAPERJ. References 1. T. Achterberg. SCIP: Solving constraint integer programs. Mathematical Program- ming Computation, 1(1):1–41, 2009. 2. C. Bragalli, C. D’Ambrosio, J. Lee, A. Lodi, and P. Toth. On the optimal design of water distribution networks. Optim. Eng., 13(2):219–246, 2012. 3. L. Cavalli-Sforza and A. Edwards. Phylogenetic analysis: Models and estimation procedures. Evolution, 21:550–570, 1967. 4. C. D’Ambrosio, J. Lee, and A. W¨achter. A global-optimization algorithm for mixed-integer nonlinear programs having separable non-convexity. In Algorithms— ESA 2009, volume 5757 of LNCS, pages 107–118. Springer, Berlin, 2009. 5. D. Du and X. Hu. Steiner tree problems in computer communication networks. World Scientific Publishing Co. Pte. Ltd., Hackensack, NJ, 2008. 6. M. Fampa and K. M. Anstreicher. An improved algorithm for computing Steiner minimal trees in Euclidean d-space. Discrete Optimization, 5(2):530–540, 2008. 7. M. Fampa and N. Maculan. Using a conic formulation for finding Steiner minimal trees. Numerical Algorithms, 35(2-4):315–330, 2004. 8. R. Fourer, D. M. Gay, and B. W. Kernighan. AMPL: A Modeling Language for Mathematical Programming. Duxbury Press, Nov. 2002. 9. M. Garey, R. Graham, and D. Johnson. The complexity of computing Steiner minimal trees. SIAM J. Applied Mathematics, 1977. 10. I. Gentilini, F. Margot, and K. Shimada. The travelling salesman problem with neighbourhoods: MINLP solution. Opt. Meth. and Soft., 28(2):364–378, 2013. 11. E. Gilbert and H. Pollack. Steiner minimal trees. SIAM J. Applied Math., 1968. 12. F. Hwang, D. Richards, and W. Winter. The Steiner tree problem, volume Ann. of Disc. Math. 53. Elsevier, Amsterdam, 1992. 13. N. Maculan, P. Michelon, and A. Xavier. The Euclidean Steiner tree problem in Rn: A mathematical programming formulation. Ann. OR, 96(1-4):209–220, 2000. 14. W. D. Smith. How to find Steiner minimal trees in Euclidean d-space. Algorithmica, 7(1-6):137–177, 1992. 15. J. W. Van Laarhoven and K. M. Anstreicher. Geometric conditions for Euclidean Steiner trees in Rd. Comput. Geom., 46(5):520–531, 2013. 16. S. Vigerske. Decomposition of multistage stochastic programs and a constraint integer programming approach to MINLP. PhD thesis, Humboldt-U. Berlin, 2013. 17. A. W¨achter and L. Biegler. On the implementation of an interior-point filter line- search algorithm for large-scale NLP. Math. Prog., 106:25–57, 2006. 18. D. Warme, P. Winter, and M. Zachariasen. Exact algorithms for plane Steiner tree problems: a computational study. Advances in Steiner Trees, pages 81–116, 1998. Computer Sciences Department Valid Inequalities for the Pooling Problem with Binary Variables Claudia D’Ambrosio Jeff Linderoth James Luedtke Technical Report #1682 November 2010 Valid Inequalities for the Pooling Problem with Binary Variables Claudia D’Ambrosio, Jeff Linderoth, James Luedtke∗ November 15, 2010 Abstract The pooling problem consists of finding the optimal quantity of final products to obtain by blending different compositions of raw materials in pools. Bilinear terms are required to model the quality of products in the pools, making the pooling problem a non-convex continuous optimization problem. In this paper we study a generalization of the standard pooling problem where binary variables are used to model fixed costs associated with using a raw material in a pool. We derive four classes of strong valid inequalities for the problem and demonstrate that the inequalities dominate classic flow cover inequalities. The inequalities can be separated in polynomial time. Computational results are reported that demonstrate the utility of the inequalities when used in a global optimization solver. ∗Department of Industrial and Systems Engineering, University of Wisconsin-Madison, Mechanical Engineering Building, 1513 University Ave., Madison, WI 53706, USA, cdambrosio;linderoth;jrluedt1 @wisc.edu { } 1 Introduction The pooling problem is to optimize the net cost of products whose composition is determined by blending different raw materials. The blending network consists of three types of nodes: the input streams, represent- ing the raw materials; the pools, where the materials are blended; and the output streams, representing the final products. By deciding the flow quantity passing through the arcs of the this network, the composition of the final products is determined. There are many applications areas for the pooling problem, including petroleum refining, wastewater treatment, and general chemical engineering process design [2, 12, 1, 4]. Different variants of the pooling problem have been introduced in the literature. In the standard pooling problem, the topology of the net- work is fixed—the pools are fed only by the input streams and connected only to the output streams. The standard pooling problem may be modeled as a non-convex nonlinear program (NLP), where the nonlinear- ities are bilinear terms that are present to model the (linear) blending process that occurs. The generalized pooling problem involves discrete decisions, where the activation of arcs connecting different nodes of the network is to be decided. This problem can be modeled as a non-convex Mixed Integer Nonlinear Program (MINLP). In the extended pooling problem, the Environmental Protection Agency limits on complex emis- sions are considered and modeled. In this case, extra variables are introduced and the additional constraints are non-smooth. In many applications of the pooling problem finding the (certified) global optimum can result in significant monetary savings, so a significant research effort has been undertaken on global opti- mization approaches for the problem. For an overview of the pooling problem variants and the optimization techniques that have been applied successfully for solving such problems, the reader is referred to the recent and exhaustive survey [9]. The focus of this paper is on a special case of the generalized pooling problem, where the topology of a portion of the network is also to be decided. Specifically, there are yes-no decisions associated with connecting the input streams and the pools. For example, this variant of the pooling problem is relevant for crude oil scheduling operations [6, 14], where the input streams represent supply ships feeding the storage tanks of a refinery. Starting from a mathematical formulation of the pooling problem called the PQ-formulation, we detect an interesting set X for which we derive valid inequalities. The set X is a generalization of the well- known single-node fixed-charge flow set [10]. We introduce three classes of inequalities for this set that we call quality inequalities, because they are based on the quality target for a final product. A final class of valid inequalities introduced are called pooling flow cover inequalities, as they are related to, but dominate, standard flow cover inequalities for the single-node fixed-charge flow set. There are exponentially many pooling flow cover inequalities, and we demonstrate that they can be separated in polynomial time. The present work is one of the first attempts to generate valid inequalities for a variant of the stan- dard pooling problem that uses specific structures present in the problem. Other approaches have applied general-purpose convexification techniques, such as the reformulation-linearization technique [8] or dis- junctive programming [5]. Simultaneously (and independently), Papageorgiou et al. [11] take an approach related to ours. Specifically, they study a polyhedral set that serves as a relaxation to a blending problem with fixed-charge structure. The focus of [11] is on developing inequalities for the single product, uncapacitated case, and they are able to find facet-defining inequalities that are useful in computation. Our new valid inequalities were validated to be quite useful computationally both on instances available in the open literature and on randomly generated instances. Inequalities generated at the root node of a 1 branch-and-bound tree were added to a standard model for the problem and given to the state-of-the-art global optimization solver BARON. With the strengthened model on a test suite of 76 instances solvable by BARON in 2 hours, adding the inequalities resulted reducing BARON’s CPU time by a factor 2. An interesting observation from this study is that these useful valid inequalities for this mixed-integer nonconvex set were derived by studying a mixed-integer linear relaxation of the set. This suggests that it may be a useful approach in general to study mixed-integer linear relaxations of global optimization problems. The remainder of the paper is divided into three sections. Section 2 gives a mathematical description of the problem we study. Section 3 describes the classes of inequalities we have derived, and Section 4 gives the computational results. 2 The Pooling Problem In this section, we introduce our variant of the standard pooling problem, in which a portion of the topology of the network must be decided. In this variant, a fixed cost is paid if an arc connecting an input stream to a pool is utilized. 2.1 Mathematical formulation Sahinidis and Tawarmalani [13] introduced the PQ-formulation for the standard pooling problem and demon- strated that it provided a tighter relaxation when the standard McCormick [7] approximation is used to relax the bilinear terms and obtain a Mixed Integer Linear Programming (MILP) problem. The PQ-formulation is used as the starting point for our model. 2.1.1 Notation Input to the pooling problem consists of a network G = (N,A), where the nodes are partitioned into three sets N = I L J. The set I is the set of the input streams, the nodes representing the raw ∪ ∪ materials; the set L is the pool set, where the raw materials are blended; and J is the set of the output streams, the nodes representing the final products. For ease of notation, we will assume that there is a complete interconnection network between the nodes of I and L and between the nodes of L and J. That is, A = (i, l) i I, l L (l, j) l L, j J . The inequalities we derive later can easily be { | ∈ ∈ } ∪ { | ∈ ∈ } generalized to sparse networks. K is a set of input and output attributes. Each input stream i I has an associated unit cost c and availability A . Each output stream j J ∈ i i ∈ has an associated unit revenue d and demand bound D . Each pool l L has a size capacity S . The j j ∈ l parameters C denote the level of attribute k K found in input stream i I. For each output stream ik ∈ ∈ j J, P U is the upper bound on the composition range of attribute k K in the final product j. Finally, ∈ jk ∈ there are the parameters fil, which represent the fixed cost that has to be paid if the arc from input stream i I to pool l L is used. ∈ ∈ Decision variables in the formulation are the following: q : proportion of flow from input i I to pool l L. • il ∈ ∈ y : flow from intermediate pool node l L to output j J. • lj ∈ ∈ v : binary variable with value 1 if the arc from input i I to pool l L is used, 0 otherwise. • il ∈ ∈ w : flow from input i I to output j J through pool l L. • ilj ∈ ∈ ∈ 2 2.1.2 The PQ-formulation The objective is to maximize net profit: min c w d y + f v . i ilj − j lj il il j J l L i I l L ! i I l L X∈ X∈ X∈ X∈ X∈ X∈ There are simple constraints that bound raw material availability, pool capacity, and final product demand: w A i I; y S l L; y D j J. ilj ≤ i ∀ ∈ lj ≤ l ∀ ∈ lj ≤ j ∀ ∈ l L j J j J l L X∈ X∈ X∈ X∈ A distinguishing feature of the pooling problem is that there is an upper bound on the target value for each attribute of each product: C w P U y j J, k K. (1) ik ilj ≤ jk lj ∀ ∈ ∀ ∈ l L i I l L X∈ X∈ X∈ The q variables must satisfy properties of proportion and only be positive if the associated arc was opened: q 1 l L; 0 q v i I, l L. il ≤ ∀ ∈ ≤ il ≤ il ∀ ∈ ∀ ∈ i I X∈ The w variables are related to the other decision variables as w = q y i I, l L, j J. (2) ilj il lj ∀ ∈ ∀ ∈ ∀ ∈ Finally, in the PQ-formulation, two redundant sets of constraints are added to the formulation to make subsequent relaxations stronger: w = y l L, j J; w q S i I, l L. ilj lj ∀ ∈ ∀ ∈ ilj ≤ il l ∀ ∈ ∀ ∈ i I j J X∈ X∈ This formulation, augmented with appropriate bounds on the variables is given to the global optimization def solver BARON in our subsequent computational experiments. Let Ylj = min Sl,Dj, i I Ai be an { ∈ } upper bound on the flow on from l L to j J. By replacing the nonlinear equations (2) with the ∈ ∈ P well-known McCormick inequalities [7], a linear relaxation of the problem is formed. The McCormick inequalities in this context reduce to the following: 0 w q Y ; w y ; w Y q + y Y i I, l L, j J. ≤ ilj ≤ il lj ilj ≤ lj ilj ≥ lj il lj − lj ∀ ∈ ∀ ∈ ∀ ∈ Branching on the continuous variables q and y, as well as the binary variables v is required in order to converge to a globally optimal solution. 2.2 Example 3 Figure 1: Pooling problem example. To demonstrate the valid inequalities we derive, we w 1 , C will use the following simple example shown in 1 = 3 Figure 1. There is a single pool, a single product, w2,C2 = 1 100 and a single attribute ( L = J = K = 1). ≤ | | | | | | = 2 3 The three input streams have input quality C1 = 3, ,C w3 C2 = 1, C3 = 2, and there is an upper bound of P U = 2.5 on the target quality. There is an upper bound of Y = 100 on the final product. 3 Valid inequalities In this section, we extract an appropriate subset of the constraints of the formulation presented in Section 2 and derive a number of strong valid inequalities for this relaxation. To that end, we focus on a single output stream and a single attribute and define the sets + U U I = i I C P 0 , and I− = i I C P < 0 , { ∈ | i − ≥ } { ∈ | i − } where we have dropped the irrelevant indices on the parameters. Next, we define α = C P U i I, i | i − | ∀ ∈ substitute into equation (1) and use the fact that yl = i I wil, to extract the set ∈ 2 I L I L P X = (w, q, v) R | || | 0, 1 | || | αiwil αiwil 0; ∈ × { } | − ≤ l L i I+ l L i I n X∈ X∈ X∈ X∈ − q 1 l L; w Y q , q v , i I, l L , il ≤ ∀ ∈ il ≤ l il il ≤ il ∀ ∈ ∀ ∈ i I X∈ o which is a relaxation of the set of feasible solutions to the pooling problem presented in Section 2. The set X is composed of a single-node flow constraint, upper bounds on the flow variables based on the proportions q (coming from the McCormick inequalities), variable upper bounds on the proportion variables q, and the definition equations on the proportion variables q. 3.1 Quality inequalities We define the following two classes of inequalities i I+, i I , l L: ∀ ∈ ∀ ∗ ∈ − ∀ ∈ α1 α1 α1 α1 wil 1 Yl(vi0l qi0l) Yl(vil qil) αi0 wi0l0 0 (3) αi∗ − αi∗ − − − αi − − αiαi∗ ≤ i I−(α ) l0=l i0 I− 0∈ X> i∗ X6 X∈ α w (α α )w α Y (v q ) α w 0 (4) i il − i0 − i∗ i0l − i∗ l il − il − i0 i0l0 ≤ i I−(α ) l0=l i0 I− 0∈ X> i∗ X6 X∈ where α1 = maxi I αi and I>−(αi ) = i I− αi > αi . 0∈ − { 0 } ∗ { ∈ | ∗ } + Proposition 3.1. Inequality (3) is valid for X i I , i∗ I−, l L. ∀ ∈ ∀ ∈ ∀ ∈ 4 Proof. Case v = 0: (3) becomes α1 1 Y (v q ) + α1 α w 0. il i I−(α ) α l i0l i0l αiα l =l i I i0 i0l0 0∈ > i∗ i∗ − − i∗ 06 0∈ − ≥ v = 0 Case i I−(α ) i0l : it reduces to 0∈ > i∗ P P P P α w α Y (1 q ) + α w = α Y ( q + q ) + α w i il ≤ i∗ l − il i0 i0l0 i∗ l i0l i0l i0 i0l0 l =l i I i I i I+:i =i l =l i I X06 0X∈ − 0X∈ − 0∈X06 X06 0X∈ − α w α Y q + α w , that is always valid. i il ≤ i∗ l i0l i0 i0l0 i I I−(α ) l0=l i0 I− 0∈ −X\ > i∗ X6 X∈ v > 0 Case i I−(α ) i0l : 0∈ > i∗ P α1 α1 α1 α1 wil 1 Yl(1 qi0l) Yl(1 qil) + αi0 wi0l0 αi∗ − αi∗ − − ≤ αi − αiαi∗ i I−(α ) l0=l i0 I− 0∈ X> i∗ X6 X∈ α1 α1 α1 α1 wil 1 Ylqil Yl qi0l + αi0 wi0l0 αi∗ − αi∗ − ≤ αi αiαi∗ i I l0=l i I 0X∈ − X6 0X∈ − α1 α1 Ylqil Yl qi0l + αi0 wi0l0 ≤ αi αiαi i I ∗ l =l i I 0X∈ − X06 0X∈ − α1 αiYlqil α1Yl qi0l αi0 wi0l0 0, always valid because weaker than − − αi ≤ i I ∗ l =l i I 0X∈ − X06 0X∈ − α w α w α w 0. i0 i0l − i0 i0l − i0 i0l0 ≤ i I+ i I l =l i I 0X∈ 0X∈ − X06 0X∈ − + Proposition 3.2. Inequality (4) is valid for X i I , i∗ I−, l L. ∀ ∈ ∀ ∈ ∀ ∈ v = 0 (α α )w + α w 0 Proof. Case il : it reduces to i I−(α ) i0 i∗ i0l l =l i I i0 i0l0 . 0∈ > i∗ − 06 0∈ − ≥ Otherwise P P P α w α w (α α )w + α Y (1 q ) i il − i0 i0l0 ≤ i0 − i∗ i0l i∗ l − il l0=l i0 I− i I−(α ) X6 X∈ 0∈ X> i∗ α w α w (α w + α (Y q w )) + α Y q i il − i0 i0l0 ≤ i0 i0l i∗ l i0l − i0l i∗ l i0l l0=l i0 I− i I−(α ) i I I−(α ) X6 X∈ 0∈ X> i∗ 0∈ −X\ > i∗ α w α w α w i il − i0 i0l0 ≤ i0 i0l l =l i I i I X06 0X∈ − 0X∈ − In order to make the definition of inequalities (3) and (4) more clear, consider the example of Section 2.2. For the example, α = 0.5, α = 1.5, α = 0.5 and I+ = 1 , I = 2, 3 . The inequalities (3) and 1 2 3 { } − { } (4), defined for indices i = 1, i∗ = 3, respectively, are 3w 200(v q ) 300(v q ) 0 (5) 1 − 2 − 2 − 1 − 1 ≤ 0.5w w 50(v q ) 0. (6) 1 − 2 − 1 − 1 ≤ A final valid inequality limits the flow from inputs that exceed the target quality. 5 Proposition 3.3. The following valid inequality is valid for X i I+, l L: ∀ ∈ ∀ ∈ α w Y α (v q ) v Y α 0. (7) i il − l 1 il − il − il l0 1 ≤ l =l X06 Proof. We consider two cases. Case v = 0: inequality (7) reduces to 0 0. Otherwise, using the inequal- il ≤ ity qil 1 i I qi0l we see that (7) is weaker than αiwil Ylα1 i I qi0l l =l Yl0 α1 0 which ≤ − 0∈ − − 0∈ − − 06 ≤ is valid because it is weaker than the valid inequality l L i I+ αi0 wi0l0 l L i I αi0 wi0l0 . P 0∈ 0∈ P ≤ 0∈P 0∈ − Let us consider again the example of Section 2.2.P InequalityP (7) for i = 1 isP P 0.5w 150(v q ) 0 0. (8) 1 − 1 − 1 − ≤ None of the three classes of inequalities introduced dominates the other, as in general, they can cut off different fractional solutions. Specifically, for the example problem, consider the solution q = (0.1; 0.9; 0), y = 100, w = (10; 90; 0), v = (0.15; 0.9; 0). The inequali- • 0 0 0 ties reduce to: 30 0 15 0; 5 90 2.5 0 0; 5 7.5 0 and only the first inequality − − ≤ − − − ≤ − ≤ cuts off this infeasible solution. Consider the solution q = (0.5; 0.1; 0.4), y = 100, w = (50; 10; 40), v = (0.7; 0.9; 0.4). The • 0 0 0 inequalities reduce to: 150 160 60 0; 25 10 10 0; 25 30 0 and only the second − − ≤ − − ≤ − ≤ one excludes the fractional solution. Finally, consider the solution q = (0.5; 0.5; 0), y = 100, w = (50; 50; 0), v = (0.6; 1; 0). The • 0 0 0 inequalities reduce to: 150 100 30 0; 25 50 5 0; 25 15 0 and only the last − − ≤ − − ≤ − ≤ inequality cuts off the fractional solution. 3.2 Pooling flow cover inequalities In this section, we focus on the case of a single pool, and hence for notational convenience drop the index l from the discussion. The primary result of the section is the generalization of a flow cover inequality: + + Proposition 3.4. Let C I with λ = i C+ αiY > 0, S− I−, and define uC∗ + = maxi C+ αiY . ⊆ ∈ ⊆ ∈ The following pooling flow cover inequality is valid for X: P α w [u∗ + (v q )] α w 0. (9) i i − C i − i − i i ≤ i C+ i S i I S X∈ X∈ − ∈ X−\ − Proof. Let (w, q, v) X and define the set T = i v = 1 . If S T = 0, inequality (9) reduces to ∈ { | i } | − ∩ | i C+ αiwi i I S αiwi 0 which is valid because wi = 0 for all i S−. Now suppose S− T ∈ − ∈ −\ − ≤ ∈ | ∩ | ≥ 1. Since i I S αiwi 0 because wi 0 i I, it is sufficient to prove that i C+ αiwi P − P∈ −\ − ≤ ≥ ∀ ∈ ∈ − i S [uC∗ + (vi qi)] 0. First, observe that ∈ − P − ≤ P P 1 αiwi αiwi [uC∗ + (vi qi)] (vi qi) qi (vi qi). u∗ + − − ≤ αiY − − ≤ − − C i C+ i S i C+ i S i C+ i S X∈ X∈ − X∈ X∈ − X∈ X∈ − Thus, we will be done if we prove that i C+ qi i S (vi qi) 0, which follows from ∈ − ∈ − − ≤ q (1 Pq ) = Pq + q S− T 0 i − − i i i − | ∩ | ≤ i C+ i S T i C+ i S T X∈ ∈X−∩ X∈ ∈X−∩ 6 since S T 1. | − ∩ | ≥ The next simple proposition shows that the inequalities (9) are stronger than the generalized flow cover inequalities (see [15]): α w λv α w 0. (10) i i − i − i i ≤ i C+ i S i I S X∈ X∈ − ∈ X−\ − + + Proposition 3.5. Inequalities (10) are implied by (9), for every C I such that λ = i C+ αiY > 0 ⊆ ∈ and S I . − ⊆ − P Proof. By definition, uC∗ + λ, and hence i S uC∗ + (vi qi) i S uC∗ + vi i S λvi. ≤ − ∈ − − ≥ − ∈ − ≥ − ∈ − Now let us consider the multiple-pool, oneP output stream and oneP attribute case. (Thus,P we add index l L back to the variables.) ∈ + + l Proposition 3.6. For each pool l L, subset of inputs S− I−, and cover C I , define u∗ + = ∈ ⊆ ⊆ C maxi C+ αiYl. The following inequalities are valid for X: ∈ α w [u∗l (v q )] α w α w 0 (11) i il − C+ il − il − i il − i il0 ≤ i C+ i S i I S i I l L l X∈ X∈ − ∈ X−\ − X∈ − 0∈X\{ } Proof. The proof of 3.4 is valid also in this case. 3.2.1 The separation problem Given a fractional solution (w , q , v ) X we want to find C+ I+, S I and pool l L such that ∗ ∗ ∗ 6∈ ⊆ − ⊆ − ∈ (11) is violated. Let the maximum violation of such constraints be z = max αiwil∗ min(uC∗ + (vil∗ qil∗ ), αiwil∗ ) αiwil∗ . SEP C+ I+,l L − − − 0 ⊆ ∈ i C+ i I i I l L l X∈ X∈ − X∈ − 0∈X\{ } If z > 0, inequality (11) is violated for (C+,S , l) with S = i I u (v q ) < α w . Note SEP − − { ∈ −| C∗ + il∗ − il∗ i il∗ } that the solution with the maximum violation has the following nice property: if i C+, then i C+ ∈ 0 ∈ i0 such that αi0 αi. (This follows since, by the definition of uC∗ + , the if αi0 αi, the inequality can ∀ ≤ + ≤ only be made more violated by including i0 in C .) Thus, the separation problem may be solved exactly in polynomial time by considering all the α (i I+) in non-increasing order over all the pools. Algorithm 1 i ∈ gives pseudocode for the separation algorithm. 4 Computational results The utility of the quality and pooling flow cover inequalities for solving instances of our version of the gener- alized pooling problem was tested using a cut-and-branch approach. Models were created using the GAMS modeling language both for the original problem and for the continuous linear relaxation of the problem, wherein the nonlinear constraints wilj = qilylj are replaced by their McCormick envelopes (as described in Section 2.1) and the constraints v 0, 1 are replaced with 0 v 1. The continuous relaxation il ∈ { } ≤ il ≤ 7 Algorithm 1 Algorithm for solving the separation problem. 1: set σˆ = , cˆ = , ˆl = ; −∞ −∞ −∞ + 2: order αi such that α1 α2 α I+ (i I ); ≤ ≤ · · · ≤ | | ∈ 3: for c = 1,..., I+ do | | 4: for l L do ∈ c 5: σ = i=1 αiwil∗ i I min(αcYl(vil∗ qil∗ ), αiwil∗ ) i I l L l αiwil∗ ; − ∈ − − − ∈ − 0∈ \{ } 0 6: if σ > σˆ then P P P P 7: set σˆ = σ, cˆ = c and ˆl = l; 8: end if 9: end for 10: end for 11: if σˆ > 0 then + + ˆ 12: add cut for (C ,S−, l) with C = 1,..., cˆ , l = l and S− = i I− u∗ + (v∗ q∗ ) < α w∗ ; { } { ∈ | C il − il i il} 13: end if is iteratively solved, where at each iteration, if the solution is fractional and the separation problems find violated inequalities, they are added to the linear relaxation, and the relaxation is resolved. The process re- peats until the fractional solution can no longer be separated, after which all inequalities generated are added to the MINLP model. The augmented MINLP model is solved with BARON [13] using a CPU time limit of 2 hours. We compare against the performance of BARON on the model without adding the separated quality and pooling flow cover inequalities. Computational results were obtained on a heterogeneous cluster of computers. For each instance, the model was solved on the same machine both with and without cuts, so while the CPU times cannot be compared between instances, the relative times between the performance of BARON with and without cuts are comparable. Our first test suite consisted of 11 instances from the literature, collected by Sahinidis and Tawarmalani [13]. For these instances, a fixed cost of 500 was added to every input arc. Some of these instances contain bypass arcs, or arcs that connect input streams directly to outputs are present. Bypass arcs are treated as additional pools with only one input in the inequalities. Results of the experiment are given in Table 1, where we report for each instance, the value of the global optimum, the number of nodes and the CPU time needed for BARON to find the optimum both with and without the addition of the violated quality and pooling flow cover inequalities, and the number of inequalities found. In general, the instances from the literature were far too small to draw any meaningful conclusions. The number of nodes is fewer in 4 of 11 cases, in 6 cases it is the same, and in one case, more nodes are taken after adding the inequalities. A second test set consisted of 90 randomly generated instances of various sizes. The random instances were parameterized by the average graph density β, the number of inputs I , the number of pools L , the | | | | number of outputs J , and the number of attributes K , and named β I L J K based on their | | | | − | | − | | − | | − | | size. For each combination of tested parameters, 10 instances were generated, and we report average perfor- mance results over all instances in the family. All the instances are available at the webpage http://www. or.deis.unibo.it/research pages/ORinstances/ORinstances.htm. Results of this ex- periment are summarized in Table 2. Without adding inequalities, BARON is able to solve 76 of the 90 instances. Adding the inequalities, BARON is able to solve three additional instances of the 90. Averages in Table 2 are taken only over the instances that both methods can solve. Complete results detailed the computational performance on specific instances are given on the web site http://www.or.deis.unibo.it/research pages/ 8 Table 1: BARON Performance With and Without Cutting Planes no cuts with cuts GO # nodes CPU time # cuts # nodes CPU time adhya1 630.0 7 0.14 20 7 0.14 adhya2 630.0 1 0.07 15 5 0.11 adhya3 978.0 17 0.43 8 1 0.12 adhya4 529.2 17 0.84 12 7 0.54 bental4 500.0 9 0.02 4 1 0.02 bental5 -2000.0 1 0.12 0 1 0.13 foulds2 266.7 1 0.04 6 1 0.02 haverly1 500.0 9 0.01 4 1 0.01 haverly2 400.0 9 0.01 4 9 0.01 haverly3 100.0 1 0.01 4 1 0.01 rt2 -1672.6 356 1.02 0 356 1.05 Table 2: Average Performance of BARON With and Without Cutting Planes No Cuts With Cuts Instance Family # Solved Avg Nodes Avg Time Avg # Cuts Avg Nodes Avg Time 20-15-10-10-1 9 1052 14.9 11.1 383 7.3 20-15-10-10-2 10 7850 638.2 15.3 3338 440.3 20-15-10-10-4 10 2637 109.5 11.9 2241 168.5 30-15-5-10-1 9 22009 520.5 12.8 13095 367.4 30-15-5-10-2 8 7384 406.8 19.6 3988 239.0 30-15-5-10-4 10 6041 361.1 27.0 1884 109.9 30-15-8-10-1 3 21971 1689.6 11.7 6504 478.3 30-15-8-10-2 9 15663 823.9 19.7 4303 337.6 30-15-8-10-4 8 30424 1035.3 22.0 5472 457.2 9 ORinstances/ORinstances.htm. For the 76 solved instances, the total CPU time required to solve the instances reduces from 39927 seconds to 20602 seconds when the cuts are added to the model before calling BARON. The total number of nodes required to solve the 76 instances reduces from 882173 to 329851 by adding cuts. The most significant performance improvement seems to occur on the instances that have 30% network density and 8 pools (in the 30-15-8-10-x family), indicating that larger, denser instances may benefit most from the additional of the quality and pooling flow cover inequalities. A performance profile of the CPU time of the 79 instances solvable by either method is given in Figure 2. In the curves shown in Figure 2, the point (X, p) is on the graph for the associated method if a fraction p of the 79 instances solved by either method were solved within a factor X of the best of the two methods. For a more complete description of performance profiles, the reader is referred to [3]. From the results of the second experiment, it is clear that the addition of the inequalities has a significant beneficial impact on computational performance. Figure 2: Performance Profile of Solution Time 1 0.8 p 0.6 0.4 0.2 With Cuts Without Cuts 0 5 10 15 20 25 X Acknowledgement The authors would like to thank Ahmet Keha for bringing reference [11] to their attention. This work benefitted from numerous insightful discussions with Andrew Miller. 10 References [1] M. Bagajewicz. A review of recent design procedures for water networks in refineries and process plants. Computers & Chemical Engineering, 24:2093–2113, 2000. [2] C.W. DeWitt, L.S. Lasdon, A.D. Waren, D.A. Brenner, and S. Melham. OMEGA: An improved gasoline blending system for Texaco. Interfaces, 19:85–101, 1989. [3] Elizabeth Dolan and Jorge More.´ Benchmarking optimization software with performance profiles. Mathematical Programming, 91:201–213, 2002. [4] J. Kallrath. Mixed integer optimization in the chemical process industry: Experience, potential and future perspectives. Chemical Engineering Research and Design, 78:809–822, 2000. [5] R. Karuppiah and I.E. Grossmann. Global optimization for the synthesis of integrated water systems in chemical processes. Computers & Chemical Engineering, 30:650–673, 2006. [6] H.M. Lee, J.M. Pinto, I.E. Grossmann, and S. Park. Mixed-integer linear programming model for refinery short-term scheduling of crude oil unloading with inventory management. Industrial & Engi- neering Chemistry Research, 35:1630–1641, 1996. [7] G.P. McCormick. Computability of global solutions to factorable nonconvex programs: Part 1 - convex underestimating problems. Mathematical Programming, 10:147–175, 1976. [8] C.A. Meyer and C.A. Floudas. Global optimization of a combinatorially complex generalized pooling problem. AIChE Journal, 52:1027–1037, 2006. [9] R. Misener and C.A. Floudas. Advances for the pooling problem: Modeling, global optimization, & computational studies. Applied and Computational Mathematics, 8:3–22, 2009. [10] M. Padberg, T. J. Van Roy, and L. Wolsey. Valid linear inequalities for fixed charge problems. Opera- tions Research, 33:842–861, 1985. [11] D. J. Papageorgiou, A. Toriello, G. L. Nemhauser, and M.W.P. Savelsbergh. Fixed-charge transporta- tion with product blending. Unpublished manuscript. [12] B. Rigby, L.S. Lasdon, and A.D. Waren. The evolution of Texaco’s blending systems: From OMEGA to StarBlend. Interfaces, 25:64–83, 1995. [13] N.V. Sahinidis and M. Tawarmalani. Accelerating branch-and-bound through a modeling language construct for relaxation-specific constraints. Journal of Global Optimization, 32:259–280, 2005. [14] N. Shah. Mathematical programming techniques for crude oil scheduling. Computers & Chemical Engineering, 20:S1227–S1232, 1996. [15] L.A. Wolsey and G.L. Nemhauser. Integer and Combinatorial Optimization. Wiley, New York, NY, USA, 1988. AN ALGORITHMIC FRAMEWORK FOR MINLP WITH SEPARABLE NON-CONVEXITY CLAUDIA D’AMBROSIO∗, JON LEE†, AND ANDREAS WACHTER¨ ‡ Abstract. We present an algorithm for Mixed-Integer Nonlinear Programming (MINLP) problems in which the non-convexity in the objective and constraint functions is manifested as the sum of non-convex univariate functions. We employ a lower bounding convex MINLP relaxation obtained by approximating each non-convex function with a piecewise-convex underestimator that is repeatedly refined. The algorithm is implemented at the level of a modeling language. Favorable numerical results are presented. Key words. mixed-integer nonlinear programming, global optimization, spatial branch-and-bound, separable, non-convex AMS(MOS) subject classifications. 65K05, 90C11, 90C26, 90C30 1. Introduction. The global solution of practical instances of Mixed-Integer NonLinear Pro- gramming (MINLP) problems has been considered for some decades. Over a considerable period of time, technology for the global optimization of convex MINLP (i.e., the continuous relaxation of the problem is a convex program) had matured (see, for example, [8, 17, 9, 3]), and rather recently there has been considerable success in the realm of global optimization of non-convex MINLP (see, for example, [18, 16, 13, 2]). Global optimization algorithms, e.g., spatial branch-and-bound approaches like those imple- mented in codes like BARON [18] and COUENNE [2], have had substantial success in tackling com- plicated, but generally small scale, non-convex MINLPs (i.e., mixed-integer nonlinear programs having non-convex continuous relaxations). Because they are aimed at a rather general class of problems, the possibility remains that larger instances from a simpler class may be amenable to a simpler approach. We focus on MINLPs for which the non-convexity in the objective and constraint functions is manifested as the sum of non-convex univariate functions. There are many problems that are already in such a form, or can be brought into such a form via some simple substitutions. In fact, the first step in spatial branch-and-bound is to bring problems into nearly such a form. For our purposes, we assume that the model already has this form. We have developed a simple algorithm, implemented at the level of a modeling language (in our case AMPL, see [10]), to attack such separable problems. First, we identify subintervals of convexity and concavity for the univariate functions using external calls to MATLAB [14]. With such an identification at hand, we develop a convex MINLP relaxation of the problem (i.e., as a mixed-integer nonlinear programs having a convex continuous relaxations). Our convex MINLP relaxation differs from those typically employed in spatial branch-and-bound; rather than relaxing the graph of a univariate function on an interval to an enclosing polygon, we work on each subinterval of convexity and concavity separately, using linear relaxation on only the “concave side” of each function on the subintervals. The subintervals are glued together using binary variables. Next, we employ ideas of spatial branch-and-bound, but rather than branching, we repeatedly refine our convex MINLP relaxation by modifying it at the modeling level. We attack our convex MINLP relaxation, to get lower bounds on the global minimum, using the code BONMIN [3, 4] as a black-box convex MINLP solver. Next, by fixing the integer variables in the original non-convex MINLP, and then locally solving the associated non-convex NLP restriction, we get an upper bound on the global minimum, using the code IPOPT [19]. We use the solutions found by BONMIN and IPOPT to guide our choice of further refinements. We implemented our framework using the modeling language AMPL. In order to obtain all of the information necessary for the execution of the algorithm, external software, specifically the ∗Dept. of ECSS, University of Bologna, Italy. Email: [email protected] †IBM T.J. Watson Research Center, NY, U.S.A. Email: [email protected] ‡IBM T.J. Watson Research Center, NY, U.S.A. Email: [email protected] 1 2 CLAUDIA D’AMBROSIO, JON LEE & ANDREAS WACHTER¨ tool for high-level computational analysis MATLAB, the convex MINLP solver BONMIN, and the NLP solver IPOPT, are called directly from the AMPL environment. A detailed description of the entire algorithmic framework, together with a proof of its convergence, is provided in §2. We present computational results in §3. Some of the instances arise from specific applications; in particular, Uncapacitated Facility Location problems, Hydro Unit Commitment and Scheduling problems, and Nonlinear Continuous Knapsack problems. We also present computational results on selected instances of GLOBALLib and MINLPLib. We have had significant success in our preliminary computational experiments. In particular, we see very few major iterations occurring, with most of the time being spent in the solution of a small number of convex MINLPs. As we had hoped, our method does particularly well on problems for which the non-convexity is naturally separable. An advantage of our approach is that it can be implemented easily using existing software components and that further advances in technology for convex MINLP will immediately give us a proportional benefit. Finally, we note that a preliminary shorter version of the present paper appeared as [7]. 2. Our algorithmic framework. We focus now on MINLPs, where the non-convexity in the objective and constraint functions is manifested as the sum of non-convex univariate functions. Without loss of generality, we take them to be of the form min j N Cj xj subject∈ to P f(x) 0 ; ≤ ( ) ri(x)+ gik(xk) 0 , i M ; P k H(i) ≤ ∀ ∈ L x U∈ , j N ; j jP j x integer,≤ ≤ j ∀I ,∈ j ∀ ∈ n p n where N := 1, 2,...,n , f : R R and ri : R R i M , are convex functions, H(i) N { } → → ∀ ∈ ⊆ i M , the gik : R R are non-convex univariate function i M, and I N. Letting ∀ ∈ → ∀ ∈ ⊆ H := i M H(i), we can take each Lj and Uj to be finite or infinite for j N H , but for j H we assume∪ ∈ that these are finite bounds. ∈ \ ∈ We assume that the problem functions are sufficiently smooth (e.g., twice continuously dif- ferentiable) with the exception that we allow the univariate gik to be continuous functions defined piecewise by sufficiently smooth functions over a finite set of subintervals of [Lk,Uk]. Without loss of generality, we have taken the objective function as linear and all of the constraints to be inequalities, and further of the less-then-or-equal variety. Linear equality constraints could be included directly in this formulation, while we assume that nonlinear equalities have been split into two inequality constraints. Our approach is an iterative technique based on three fundamental ingredients: A reformulation method with which we obtain a convex MINLP relaxation of the orig- • inal problem . Solving the convex MINLP relaxation , we obtain a lowerQ bound of our original problemP ; Q A non-convex NLPP restriction of the original MINLP problem obtained by fixing the • R P variables within the set xj : j I . Locally solving the non-convex NLP restriction , we obtain an upper bound{ of our∈ original} problem ; R A refinement technique aimed at improving, at eachP iteration, the quality of the lower • bound obtained by solving the convex MINLP relaxation . The main idea of our algorithmic framework is to iterativelyQsolve a lower-bounding relax- ation and an upper-bounding restriction so that, in case the value of the upper and the lowerQ bound are the same, the global optimalityR of the solution found is proven; otherwise we make a refinement to the lower-bounding relaxation . At each iteration, we seek to decrease the gap between the lower and the upper bound, andQ hopefully, before too long, the gap will be within a tolerance value, or the lower bounding solution is deemed to be sufficiently feasible for the original problem. In these cases, or in the case a time/iteration limit is reached, the algorithm stops. If the gap is closed, we have found a global optimum, otherwise we have a heuristic solu- tion (provided that the upper bound is not + ). The lower-bounding relaxation is a convex ∞ Q AN ALGORITHMIC FRAMEWORK FOR MINLP WITH SEPARABLE NON-CONVEXITY 3 relaxation of the original non-convex MINLP problem, obtained by approximating the concave part of the non-convex univariate functions using piecewise linear approximation. The novelty in this part of the algorithmic framework is the new formulation of the convex relaxation: The function is approximated only where it is concave, while the convex parts of the functions are not approximated, but taken as they are. The convex relaxation proposed is described in details § in §2.1. The upper-bounding restriction , described in 2.2, is obtained simply by fixing the variables with integrality constraints. TheR refinement technique consists of adding one or more breakpoints where needed, i.e., where the approximation of the non-convex function is bad and the solution of the lower-bounding problem lies. Refinement strategies are described in §2.3, and once the ingredients of the algorithmic framework are described in detail, we give a pseudo-code description of our algorithmic framework (see §2.4). Here, we also discuss some considerations about the general framework and the similarities and differences with popular global optimization § methods. Theoretical convergence guarantees are discussed in §2.5. In 3, computational experi- ments are presented, detailing the performance of the algorithm and comparing the approach to other methods. 2.1. The lower-bounding convex MINLP relaxation . To obtain our convex MINLP relaxation of the MINLP problem , we need to locate the subintervalsQ of the domain of each Q P univariate function gi for which the function is uniformly convex or concave. For simplicity of notation, rather than refer to the constraint r (x)+ g (x ) 0, we consider a term of i k H(i) ik k ≤ the form g(x ) := g (x ), where g : is a univariate∈ non-convex function of x , for some k k ik k R R P k (1 k n). → ≤ ≤ We want to explicitly view each such g as a piecewise-defined function, where on each piece the function is either convex or concave. This feature also allows us to handle functions that are already piecewise defined by the modeler. In practice, for each non-convex function g , we compute the points at which the convexity/concavity may change, i.e., the zeros of the second derivative of g , using MATLAB. In case a function g is naturally piecewise defined, we are essentially refining the piecewise definition of it in such a way that the convexity/concavity is uniform on each piece. Example 1. Consider the piecewise-defined univariate function 1 + (x 1)3 , for 0 x 2 ; g(x ) := k k k 1 + (x − 3)2 , for 2 ≤ x ≤ 4 , k − ≤ k ≤ depicted in Fig. 1. In addition to the breakpoints xk = 0, 2, 4 of the definition of g, the convex- ity/concavity changes at xk = 1, so by utilizing an additional breakpoint at xk = 1 the convex- ity/concavity is now uniform on each piece. 2.5 2.5 2.5 2 2 2 1.5 1.5 1.5 1 1 1 0.5 0.5 0.5 0 0 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Fig. 1. A piecewise-defined Fig. 2. A piecewise-convex Fig. 3. Improved piecewise- univariate function lower approximation convex lower approximation Now, on each concave piece we can use a secant approximation to give a piecewise-convex lower approximation of g . Example 1, continued. Relative to g(xk) of Example 1, we have the piecewise-convex 4 CLAUDIA D’AMBROSIO, JON LEE & ANDREAS WACHTER¨ lower approximation xk , for 0 xk 1 ; g(x ) := 1 + (x 1)3 , for 1 ≤ x ≤ 2 ; k k k 1 + (x − 3)2 , for 2 ≤ x ≤ 4 , k − ≤ k ≤ depicted in Fig. 2. We can obtain a better lower bound by refining the piecewise-linear lower approximation on the concave pieces. We let L =: P < P < < P := U (2.1) k 0 1 · · · p k be the ordered breakpoints at which the convexity/concavity of g changes, including, in the case of piecewise definition of g, the points at which the definition of g changes. We define: [Pp 1, Pp] := the p-th subinterval of the domain of g (p 1 . . . p ); − ∈{ } Hˇ := the set of indices of subintervals on which g is convex; Hˆ := the set of indices of subintervals on which g is concave. On the concave intervals, we will allow further breakpoints. We let Bp be the ordered set of breakpoints for the concave interval indexed by p Hˆ . We denote these breakpoints as ∈ Pp 1 =: Xp,1