An extended supporting hyperplane algorithm for convex MINLP problems

Similar documents
An extended supporting hyperplane algorithm for convex MINLP problems

A NEW SEQUENTIAL CUTTING PLANE ALGORITHM FOR SOLVING MIXED INTEGER NONLINEAR PROGRAMMING PROBLEMS

The Supporting Hyperplane Optimization Toolkit A Polyhedral Outer Approximation Based Convex MINLP Solver Utilizing a Single Branching Tree Approach

A Center-Cut Algorithm for Quickly Obtaining Feasible Solutions and Solving Convex MINLP Problems

Comparison of Some High-Performance MINLP Solvers

LaGO - A solver for mixed integer nonlinear programming

Review of Mixed-Integer Nonlinear and Generalized Disjunctive Programming Methods

SBB: A New Solver for Mixed Integer Nonlinear Programming

LECTURE NOTES Non-Linear Programming

LaGO. Ivo Nowak and Stefan Vigerske. Humboldt-University Berlin, Department of Mathematics

Modern Benders (in a nutshell)

Benders in a nutshell Matteo Fischetti, University of Padova

ALGORITHMS AND SOFTWARE FOR CONVEX MIXED INTEGER NONLINEAR PROGRAMS

Penalty Alternating Direction Methods for Mixed- Integer Optimization: A New View on Feasibility Pumps

Fundamentals of Integer Programming

mixed-integer convex optimization

A New Multistart Algorithm. Marcel Hunting AIMMS Optimization Specialist

Advanced Use of GAMS Solver Links

Stochastic Separable Mixed-Integer Nonlinear Programming via Nonconvex Generalized Benders Decomposition

OPTIMIZATION AND SYSTEMS ENGINEERING

Branch-and-cut implementation of Benders decomposition Matteo Fischetti, University of Padova

A Lifted Linear Programming Branch-and-Bound Algorithm for Mixed Integer Conic Quadratic Programs

Rapid Application Prototyping using GAMS

Standard dimension optimization of steel frames

LP SCIP NEOS URL. example1.lp 2.1 LP 1. minimize. subject to, bounds, free, general, binary, end. .lp 1 2.2

The AIMMS Outer Approximation Algorithm for MINLP

The AIMMS Outer Approximation Algorithm for MINLP

GAMS. General Algebraic Modeling System. EURO 2009 Bonn. Michael Bussieck Jan-Hendrik Jagla

FilMINT: An Outer-Approximation-Based Solver for Nonlinear Mixed Integer Programs 1

A Nonlinear Presolve Algorithm in AIMMS

GAMS/DICOPT: A Discrete Continuous Optimization Package

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING

The Efficient Modelling of Steam Utility Systems

Selected Topics in Column Generation

LECTURE 13: SOLUTION METHODS FOR CONSTRAINED OPTIMIZATION. 1. Primal approach 2. Penalty and barrier methods 3. Dual approach 4. Primal-dual approach

The MINLP approach to structural optimization

Recent enhancements in. GAMS Software GmbH GAMS Development Corporation

A novel approach to include limited equipment connectivity in State-Task Network models

GLOBAL OPTIMIZATION WITH BRANCH-AND-REDUCE

Exact solutions to mixed-integer linear programming problems

Best practices for using the multistart algorithm in AIMMS. Marcel Hunting AIMMS Optimization Specialist

An Extension of the Multicut L-Shaped Method. INEN Large-Scale Stochastic Optimization Semester project. Svyatoslav Trukhanov

Integer Programming Chapter 9

Interactions between a Modeling System and Advanced Solvers. GAMS Development Corporation

lpsymphony - Integer Linear Programming in R

Learning a classification of Mixed-Integer Quadratic Programming problems

The MIP-Solving-Framework SCIP

Cutting Planes for Some Nonconvex Combinatorial Optimization Problems

3 INTEGER LINEAR PROGRAMMING

GAMS. How can I make this work... arrgghh? GAMS Development Corporation

The MINLP optimization in civil engineering

First steps to solve MINLP problems with Muriqui Optimizer

Mixed-integer non-linear programming approach to structural optimization

PLEASE SCROLL DOWN FOR ARTICLE. Full terms and conditions of use:

Optimization Methods. Final Examination. 1. There are 5 problems each w i t h 20 p o i n ts for a maximum of 100 points.

Ellipsoid Algorithm :Algorithms in the Real World. Ellipsoid Algorithm. Reduction from general case

RENS. The optimal rounding. Timo Berthold

Bilinear Modeling Solution Approach for Fixed Charged Network Flow Problems (Draft)

Solving Large-Scale Nonlinear Programming Problems by Constraint Partitioning

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

Solving Large-Scale Nonlinear Programming Problems by Constraint Partitioning

SUBSTITUTING GOMORY CUTTING PLANE METHOD TOWARDS BALAS ALGORITHM FOR SOLVING BINARY LINEAR PROGRAMMING

TIM 206 Lecture Notes Integer Programming

Marcia Fampa Universidade Federal do Rio de Janeiro Rio de Janeiro, RJ, Brazil

NEOS.jl (and other things)

Handling first-order linear constraints with SCIP

Algorithms for Decision Support. Integer linear programming models

Cloud Branching MIP workshop, Ohio State University, 23/Jul/2014

Recent Work. Methods for solving large-scale scheduling and combinatorial optimization problems. Outline. Outline

Financial Optimization ISE 347/447. Lecture 13. Dr. Ted Ralphs

Addressing degeneracy in the dual simplex algorithm using a decompositon approach

Recent Enhancement in GAMS. GAMS Software GmbH GAMS Development Corp.

Benchmarking of Optimization Software

Exploiting Degeneracy in MIP

Notes on the IFPRI Spatial Production Allocation NLP Model

Applying Iterative and Parallel methods to Production Planning in the Pharmaceutical Industry

Research Interests Optimization:

The Gurobi Optimizer. Bob Bixby

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

Tutorial on Integer Programming for Visual Computing

Optimieren mit MATLAB jetzt auch gemischt-ganzzahlig Dr. Maka Karalashvili Application Engineer MathWorks

The University of Jordan Department of Mathematics. Branch and Cut

Experiments On General Disjunctions

B553 Lecture 12: Global Optimization

Embedding Formulations, Complexity and Representability for Unions of Convex Sets

CONVEX HULL RELAXATION (CHR) FOR CONVEX AND NONCONVEX MINLP PROBLEMS WITH LINEAR CONSTRAINTS

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs

Tools for Modeling Optimization Problems A Short Course. Algebraic Modeling Systems. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Assignment 3b: The traveling salesman problem

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

MINLPB4: A Fortran Subroutine for Mixed-Integer Nonlinear Optimization by Branch-and-Bound 1 - User s Guide -

LECTURE 18 LECTURE OUTLINE

From the Separation to the Intersection Sub-problem in Benders Decomposition Models with Prohibitively-Many Constraints

Exact Algorithms for Mixed-Integer Bilevel Linear Programming

1 Unweighted Set Cover

Implementing a B&C algorithm for Mixed-Integer Bilevel Linear Programming

A robust optimization based approach to the general solution of mp-milp problems

GAMS Striving for Innovation and Compatibility

SCIP. 1 Introduction. 2 Model requirements. Contents. Stefan Vigerske, Humboldt University Berlin, Germany

Transcription:

An extended supporting hyperplane algorithm for convex MINLP problems Jan Kronqvist, Andreas Lundell and Tapio Westerlund Center of Excellence in Optimization and Systems Engineering Åbo Akademi University, Finland OSE annual seminar Turku November 14, 2014

2 37 Contents of the talk The extended cutting plane (ECP) algorithm is briefly introduced.

2 37 Contents of the talk The extended cutting plane (ECP) algorithm is briefly introduced. The extended supporting hyperplane (ESH) algorithm, a new algorithm for solving convex MINLP problems to global optimality, is introduced Cutting planes are replaced with supporting hyperplanes using a line search procedure. Two LP preprocessing steps are utilized to quickly get a tight linear relaxation of the part of the feasible region defined by the convex/quasiconvex constraints.

The ECP algorithm

The ECP algorithm 4 37 The extended cutting plane algorithm The ECP algorithm is a solver for generally convex mixed-integer nonlinear programming (MINLP) problems.

The ECP algorithm 4 37 The extended cutting plane algorithm The ECP algorithm is a solver for generally convex mixed-integer nonlinear programming (MINLP) problems. Solves MILP relaxations of the MINLP problem where the nonlinear constraints are approximated using cutting planes.

The ECP algorithm 4 37 The extended cutting plane algorithm The ECP algorithm is a solver for generally convex mixed-integer nonlinear programming (MINLP) problems. Solves MILP relaxations of the MINLP problem where the nonlinear constraints are approximated using cutting planes. Implemented, e.g., in the AlphaECP solver in GAMS and available on the NEOS server.

The ECP algorithm 5 37 The extended cutting plane algorithm First presented in internal report in 1992 Inspired by Kelley s cutting plane method Convex NLP problems Kelley Jr. J., The cutting-plane method for solving convex programs, Journal of the SIAM, vol. 8(4), pp. 703 712, 1960. Published in Computers & Chemical Engineering in 1995 Westerlund T. and Pettersson F., An extended cutting plane method for solving convex MINLP problems, Computers & Chemical Engineering 19, pp. 131 136, 1995.

The ECP algorithm 6 37 Extensions Pseudoconvex constraints Westerlund T., Skrifvars H., Harjunkoski I. and Pörn R. An extended cutting plane method for solving a class of non-convex MINLP problems. Computers and Chemical Engineering, 22, 357 365, 1998.

The ECP algorithm 6 37 Extensions Pseudoconvex constraints Westerlund T., Skrifvars H., Harjunkoski I. and Pörn R. An extended cutting plane method for solving a class of non-convex MINLP problems. Computers and Chemical Engineering, 22, 357 365, 1998. Pseudoconvex objective function and constraints Westerlund T. and Pörn R. Solving Pseudo-Convex Mixed Integer Optimization Problems by Cutting Plane techniques. Optimization and Engineering, 3, 253 280, 2002.

The ECP algorithm 6 37 Extensions Pseudoconvex constraints Westerlund T., Skrifvars H., Harjunkoski I. and Pörn R. An extended cutting plane method for solving a class of non-convex MINLP problems. Computers and Chemical Engineering, 22, 357 365, 1998. Pseudoconvex objective function and constraints Westerlund T. and Pörn R. Solving Pseudo-Convex Mixed Integer Optimization Problems by Cutting Plane techniques. Optimization and Engineering, 3, 253 280, 2002. Nonsmooth constraints Eronen V.-P., Mäkelä M. M. and Westerlund T. On the generalization of ECP and OA methods to nonsmooth convex MINLP problems, Taylor and Francis, 2014.

The ECP algorithm 7 37 An example minimize c T x = x 1 x 2 subject to g 1 (x 1,x 2 ) = 0.15(x 1 8) 2 + 0.1(x 2 6) 2 + 0.025e x 1x 2 2 5 0 g 2 (x 1,x 2 ) = 1/x 1 + 1/x2 x 0.5 1 x0.5 2 + 4 0 2x 1 3x 2 2 0 1 x 1 20, 1 x 2 20, x 1, x 2. 20 20 15 15 x 2 10 x 2 10 5 5 5 10 15 20 x 1 5 10 15 20 x 1

The ECP algorithm 7 37 An example minimize c T x = x 1 x 2 subject to g 1 (x 1,x 2 ) = 0.15(x 1 8) 2 + 0.1(x 2 6) 2 + 0.025e x 1x 2 2 5 0 g 2 (x 1,x 2 ) = 1/x 1 + 1/x2 x 0.5 1 x0.5 2 + 4 0 2x 1 3x 2 2 0 1 x 1 20, 1 x 2 20, x 1, x 2. 20 20 15 15 x 2 10 x 2 10 5 5 5 10 15 20 x 1 5 10 15 20 x 1

The ECP algorithm 7 37 An example minimize c T x = x 1 x 2 subject to g 1 (x 1,x 2 ) = 0.15(x 1 8) 2 + 0.1(x 2 6) 2 + 0.025e x 1x 2 2 5 0 g 2 (x 1,x 2 ) = 1/x 1 + 1/x2 x 0.5 1 x0.5 2 + 4 0 2x 1 3x 2 2 0 1 x 1 20, 1 x 2 20, x 1, x 2. 20 20 15 15 x 2 10 x 2 10 5 5 5 10 15 20 x 1 5 10 15 20 x 1

The ECP algorithm 7 37 An example minimize c T x = x 1 x 2 subject to g 1 (x 1,x 2 ) = 0.15(x 1 8) 2 + 0.1(x 2 6) 2 + 0.025e x 1x 2 2 5 0 g 2 (x 1,x 2 ) = 1/x 1 + 1/x2 x 0.5 1 x0.5 2 + 4 0 2x 1 3x 2 2 0 1 x 1 20, 1 x 2 20, x 1, x 2. 20 20 15 15 x 2 10 x 2 10 5 5 5 10 15 20 x 1 5 10 15 20 x 1

The ECP algorithm 8 37 In each iteration k of the algorithm a MILP problem is solved to obtain the solution point (x k 1,xk 2 ). First iteration gives x 1 1 = 20,x1 2 = 20.

The ECP algorithm 8 37 In each iteration k of the algorithm a MILP problem is solved to obtain the solution point (x k 1,xk 2 ). First iteration gives x1 1 = 20,x1 2 = 20. g 1 (x1 1,x1 2 ) = 30359.0, g 2(x1 1,x1 2 ) = 15.9.

The ECP algorithm 8 37 In each iteration k of the algorithm a MILP problem is solved to obtain the solution point (x k 1,xk 2 ). First iteration gives x1 1 = 20,x1 2 = 20. g 1 (x1 1,x1 2 ) = 30359.0, g 2(x1 1,x1 2 ) = 15.9. A new cutting plane is generated for the violated nonlinear constraint g 1 : g 1 (x 1 1,x1 2 ) + g 1(x 1 1,x1 2 )T (x x 1 1,x x1 2 ) 0

The ECP algorithm 9 37 The nonlinear function g 1 (x 1,x 2 )

The ECP algorithm 10 37 The nonlinear function g 1 (x 1,x 2 ) and the cutting plane generated at x 1 = 20,x 2 = 20

The ECP algorithm 11 37 To solve the problem with the ECP algorithm ( = 0.001) it takes 17 iterations (17 MILP problems solved to optimality).

The ECP algorithm 11 37 To solve the problem with the ECP algorithm ( = 0.001) it takes 17 iterations (17 MILP problems solved to optimality). How can we improve performance?

The ECP algorithm 11 37 To solve the problem with the ECP algorithm ( = 0.001) it takes 17 iterations (17 MILP problems solved to optimality). How can we improve performance? Generate cutting planes on the boundary of the feasible set!

The ESH algorithm

The ESH algorithm 13 37 A new interior point based algorithm for solving convex MINLP problems to global optimality.

The ESH algorithm 13 37 A new interior point based algorithm for solving convex MINLP problems to global optimality. Roots: The extended cutting plane algorithm 1995 1 The supporting hyperplane method for unimodal programming, Veinott Jr. A. F., Operations Research, Vol. 15(1), pp. 147 152, 1967.

The ESH algorithm 13 37 A new interior point based algorithm for solving convex MINLP problems to global optimality. Roots: The extended cutting plane algorithm 1995 Kelley s cutting plane algorithm 1960 1 The supporting hyperplane method for unimodal programming, Veinott Jr. A. F., Operations Research, Vol. 15(1), pp. 147 152, 1967.

The ESH algorithm 13 37 A new interior point based algorithm for solving convex MINLP problems to global optimality. Roots: The extended cutting plane algorithm 1995 Kelley s cutting plane algorithm 1960 The supporting hyperplane method 1967 1 1 The supporting hyperplane method for unimodal programming, Veinott Jr. A. F., Operations Research, Vol. 15(1), pp. 147 152, 1967.

The ESH algorithm 13 37 A new interior point based algorithm for solving convex MINLP problems to global optimality. Roots: The extended cutting plane algorithm 1995 Kelley s cutting plane algorithm 1960 The supporting hyperplane method 1967 1 Cutting planes are replaced with supporting hyperplanes using a line search procedure to find the generation point. An interior point is required for the line search. 1 The supporting hyperplane method for unimodal programming, Veinott Jr. A. F., Operations Research, Vol. 15(1), pp. 147 152, 1967.

The ESH algorithm 13 37 A new interior point based algorithm for solving convex MINLP problems to global optimality. Roots: The extended cutting plane algorithm 1995 Kelley s cutting plane algorithm 1960 The supporting hyperplane method 1967 1 Cutting planes are replaced with supporting hyperplanes using a line search procedure to find the generation point. An interior point is required for the line search. Two LP preprocessing steps are utilized to quickly get a tight linear relaxation of the part of the feasible region defined by the convex/quasiconvex constraints. 1 The supporting hyperplane method for unimodal programming, Veinott Jr. A. F., Operations Research, Vol. 15(1), pp. 147 152, 1967.

The ESH algorithm 14 37 The MINLP problem The algorithm finds the optimal solution x to the following convex MINLP problem: x = argmin c T x x C L Y (P) where x = [x 1,x 2,...,x N ] T belongs to the compact set X = { x xi x i x i, i = 1,...,N } n, the feasible region is defined by C L Y, C = {x g m (x) 0, m = 1,...,M, x X }, L = {x Ax a, Bx = b, x X }, Y = {x x i, i I, x X }, and C is a convex set.

The ESH algorithm 15 37 Steps in the ESH algorithm NLP: Obtain a feasible, relaxed interior point (a point in the set C) by solving a NLP problem.

The ESH algorithm 15 37 Steps in the ESH algorithm NLP: Obtain a feasible, relaxed interior point (a point in the set C) by solving a NLP problem. LP1: Solve simple LP problems (initially in X) to add additional supporting hyperplanes.

The ESH algorithm 15 37 Steps in the ESH algorithm NLP: Obtain a feasible, relaxed interior point (a point in the set C) by solving a NLP problem. LP1: Solve simple LP problems (initially in X) to add additional supporting hyperplanes. LP2: Solve simple LP problems (including the constraints in L) to add additional supporting hyperplanes.

The ESH algorithm 15 37 Steps in the ESH algorithm NLP: Obtain a feasible, relaxed interior point (a point in the set C) by solving a NLP problem. LP1: Solve simple LP problems (initially in X) to add additional supporting hyperplanes. LP2: Solve simple LP problems (including the constraints in L) to add additional supporting hyperplanes. MILP: Solve MILP problems to find the optimal solution to (P).

The ESH algorithm 16 37 NLP step If an interior point is not given, obtain a feasible, relaxed interior point (satisfying all the nonlinear constraints in C) by solving a NLP problem. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 17 37 LP1 step (optional) Solve simple LP problems (initially in X) and conduct a line search procedure to obtain supporting hyperplanes giving a first linear relaxation of the convex set C. 20 15 10 5 5 10 15 20

The ESH algorithm 18 37 LP2 step (optional) Continue with a corresponding procedure as in LP1 but now also including the linear constraints in L in the original problem. 20 15 10 5 5 10 15 20

The ESH algorithm 18 37 LP2 step (optional) Continue with a corresponding procedure as in LP1 but now also including the linear constraints in L in the original problem. 20 15 10 5 5 10 15 20

The ESH algorithm 18 37 LP2 step (optional) Continue with a corresponding procedure as in LP1 but now also including the linear constraints in L in the original problem. 20 15 10 5 5 10 15 20

The ESH algorithm 19 37 MILP step Finally include the integer requirements and solve MILP problems using a corresponding procedure to find the optimal solution to (P). 20 15 10 5 5 10 15 20

The ESH algorithm 19 37 MILP step Finally include the integer requirements and solve MILP problems using a corresponding procedure to find the optimal solution to (P). 20 15 10 5 5 10 15 20

The ESH algorithm 19 37 MILP step Finally include the integer requirements and solve MILP problems using a corresponding procedure to find the optimal solution to (P). 20 15 10 5 5 10 15 20

The ESH algorithm 19 37 MILP step Finally include the integer requirements and solve MILP problems using a corresponding procedure to find the optimal solution to (P). 20 15 10 5 5 10 15 20

The ESH algorithm 20 37 NLP step A point in C is required as an endpoint for the line searches to be conducted in the LP1-, LP2- and MILP-steps.

The ESH algorithm 20 37 NLP step A point in C is required as an endpoint for the line searches to be conducted in the LP1-, LP2- and MILP-steps. Assuming that (P) has a solution, the internal point can be obtained from the following NLP problem: x NLP = argminf(x), x X where F(x) := max {g m(x)}. m=1,...,m (P-NLP)

The ESH algorithm 20 37 NLP step A point in C is required as an endpoint for the line searches to be conducted in the LP1-, LP2- and MILP-steps. Assuming that (P) has a solution, the internal point can be obtained from the following NLP problem: x NLP = argminf(x), x X where F(x) := max {g m(x)}. m=1,...,m (P-NLP) F is convex/quasiconvex since it is the maximum of convex/quasiconvex functions.

The ESH algorithm 20 37 NLP step A point in C is required as an endpoint for the line searches to be conducted in the LP1-, LP2- and MILP-steps. Assuming that (P) has a solution, the internal point can be obtained from the following NLP problem: x NLP = argminf(x), x X where F(x) := max {g m(x)}. m=1,...,m (P-NLP) F is convex/quasiconvex since it is the maximum of convex/quasiconvex functions. (P-NLP) may be nonsmooth (if M > 1) even if g m is smooth.

The ESH algorithm 20 37 NLP step A point in C is required as an endpoint for the line searches to be conducted in the LP1-, LP2- and MILP-steps. Assuming that (P) has a solution, the internal point can be obtained from the following NLP problem: x NLP = argminf(x), x X where F(x) := max {g m(x)}. m=1,...,m (P-NLP) F is convex/quasiconvex since it is the maximum of convex/quasiconvex functions. (P-NLP) may be nonsmooth (if M > 1) even if g m is smooth. The point x NLP need not be optimal but then fulfill F( x NLP ) < 0.

The ESH algorithm 20 37 NLP step A point in C is required as an endpoint for the line searches to be conducted in the LP1-, LP2- and MILP-steps. Assuming that (P) has a solution, the internal point can be obtained from the following NLP problem: x NLP = argminf(x), x X where F(x) := max {g m(x)}. m=1,...,m (P-NLP) F is convex/quasiconvex since it is the maximum of convex/quasiconvex functions. (P-NLP) may be nonsmooth (if M > 1) even if g m is smooth. The point x NLP need not be optimal but then fulfill F( x NLP ) < 0. The NLP step can also be formulated as a smooth NLP problem if all functions g m are smooth and convex.

The ESH algorithm 21 37 LP1 step Starting from k = 1, 0 = X, the problem x k LP = argmin k 1 c T x (P-LP1) is solved, and the point x k is obtained by a line search for F(x k ) = 0 between the internal point x NLP and the solution point to (P-LP1) x k LP : x k = x NLP + (1 ) x LP k, [0,1].

The ESH algorithm 21 37 LP1 step Starting from k = 1, 0 = X, the problem x k LP = argmin k 1 c T x (P-LP1) is solved, and the point x k is obtained by a line search for F(x k ) = 0 between the internal point x NLP and the solution point to (P-LP1) x k LP : x k = x NLP + (1 ) x LP k, [0,1]. Supporting hyperplanes (SHs) l k := F(x k ) + F (x k ) T (x x k ) 0 are generated and added to k. F (x k ) T is a gradient or subgradient of F at x k.

The ESH algorithm 21 37 LP1 step Starting from k = 1, 0 = X, the problem x k LP = argmin k 1 c T x (P-LP1) is solved, and the point x k is obtained by a line search for F(x k ) = 0 between the internal point x NLP and the solution point to (P-LP1) x k LP : x k = x NLP + (1 ) x LP k, [0,1]. Supporting hyperplanes (SHs) l k := F(x k ) + F (x k ) T (x x k ) 0 are generated and added to k. F (x k ) T is a gradient or subgradient of F at x k. Repeted untill F( x k LP ) < LP1 or a maximum number of SHs

The ESH algorithm 22 37 LP2 step This step is otherwise identical to LP1, with the exception that the linear constraints in L are now also included, i.e., x k LP = argmin k 1 L c T x (P-LP2)

The ESH algorithm 22 37 LP2 step This step is otherwise identical to LP1, with the exception that the linear constraints in L are now also included, i.e., x k LP = argmin k 1 L c T x (P-LP2) (P-LP2) is repeatedly solved until F( x k LP ) < LP2 or a maximum number of SHs have additionally been generated.

The ESH algorithm 23 37 MILP step Finally, in order to also fulfill the integer requirements of problem (P), a MILP step is performed.

The ESH algorithm 23 37 MILP step Finally, in order to also fulfill the integer requirements of problem (P), a MILP step is performed. This step is otherwise identical to LP2, with the exception that the integer requirements in Y are now additionally considered, i.e., x k MILP = argmin k 1 L Y c T x. (P-MILP)

The ESH algorithm 23 37 MILP step Finally, in order to also fulfill the integer requirements of problem (P), a MILP step is performed. This step is otherwise identical to LP2, with the exception that the integer requirements in Y are now additionally considered, i.e., x k MILP = argmin k 1 L Y c T x. (P-MILP) (P-MILP) is repeatedly solved until F( x k MILP ) < MILP.

The ESH algorithm 23 37 MILP step Finally, in order to also fulfill the integer requirements of problem (P), a MILP step is performed. This step is otherwise identical to LP2, with the exception that the integer requirements in Y are now additionally considered, i.e., x k MILP = argmin k 1 L Y c T x. (P-MILP) (P-MILP) is repeatedly solved until F( x k MILP ) < MILP. Intermediate (P-MILP) problems do not need to be solved to optimality, but in order to guarantee an optimal solution of (P), the final MILP solution must be optimal.

The ESH algorithm 24 37 Now, consider the same example as earlier minimize c T x = x 1 x 2 subject to 0.15(x 1 8) 2 + 0.1(x 2 6) 2 + 0.025e x 1x 2 2 5 0 1/x 1 + 1/x2 x 0.5 1 x0.5 2 + 4 0 2x 1 3x 2 2 0 1 x 1 20, 1 x 2 20, x 1, x 2. 20 20 15 15 x 2 10 x 2 10 5 5 5 10 15 20 x 1 5 10 15 20 x 1

The ESH algorithm 25 37 NLP step find an interior point x NLP = argmin F(x 1,x 2 ), (x 1,x 2 ) X where F(x 1,x 2 ) := max{g 1 (x 1,x 2 ), g 2 (x 1,x 2 )}. The problem can be found using a suitable NLP solver. Not required to be the optimal point The optimal point here is (7.45, 8.54) 20 15 10 5 5 10 15 20

The ESH algorithm 26 37 LP1-step Iteration 1 Assume initially that 0 = X. 20 15 10 5 5 10 15 20

The ESH algorithm 26 37 LP1-step Iteration 1 Assume initially that 0 = X. k = 1, solve LP in, x k LP = argmin k 1 c T x. 20 15 10 5 5 10 15 20

The ESH algorithm 26 37 LP1-step Iteration 1 Assume initially that 0 = X. k = 1, solve LP in, x k LP = argmin k 1 c T x. 20 15 10 5 5 10 15 20 Do line search x k = x NLP + (1 ) x k LP.

The ESH algorithm 26 37 LP1-step Iteration 1 Assume initially that 0 = X. k = 1, solve LP in, x k LP = argmin k 1 c T x. 20 15 10 5 5 10 15 20 Do line search x k = x NLP + (1 ) x k LP. Generate supporting hyperplane in x k and add to.

The ESH algorithm 27 37 LP1-step Iteration 2 1 = {x l 1 (x) 0, x X}. l 1 (x) = 3.26x 1 + 0.313x 2 33.9 20 15 10 5 5 10 15 20

The ESH algorithm 27 37 LP1-step Iteration 2 1 = {x l 1 (x) 0, x X}. l 1 (x) = 3.26x 1 + 0.313x 2 33.9 k = 2, solve LP in, 20 15 10 5 x k LP = argmin k 1 c T x. 5 10 15 20

The ESH algorithm 27 37 LP1-step Iteration 2 1 = {x l 1 (x) 0, x X}. l 1 (x) = 3.26x 1 + 0.313x 2 33.9 k = 2, solve LP in, 20 15 10 5 x k LP = argmin k 1 c T x. 5 10 15 20 Do line search x k = x NLP + (1 ) x k LP.

The ESH algorithm 27 37 LP1-step Iteration 2 1 = {x l 1 (x) 0, x X}. l 1 (x) = 3.26x 1 + 0.313x 2 33.9 k = 2, solve LP in, 20 15 10 5 x k LP = argmin k 1 c T x. 5 10 15 20 Do line search x k = x NLP + (1 ) x k LP. Generate supporting hyperplane in x k and add to.

The ESH algorithm 28 37 LP1-step Iteration 3 2 = {x l j (x) 0, j {1,2}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 20 15 10 5 5 10 15 20

The ESH algorithm 28 37 LP1-step Iteration 3 2 = {x l j (x) 0, j {1,2}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 20 15 10 5 k = 3, solve LP in, 5 10 15 20 x k LP = argmin k 1 c T x.

The ESH algorithm 28 37 LP1-step Iteration 3 2 = {x l j (x) 0, j {1,2}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 20 15 10 5 k = 3, solve LP in, 5 10 15 20 x k LP = argmin k 1 c T x. Do line search, generate supporting hyperplane and add to.

The ESH algorithm 28 37 LP1-step Iteration 3 2 = {x l j (x) 0, j {1,2}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 20 15 10 5 k = 3, solve LP in, 5 10 15 20 x k LP = argmin k 1 c T x. Do line search, generate supporting hyperplane and add to. Terminate LP1-step since F( x k LP ) < LP1.

The ESH algorithm 29 37 LP2-step Iteration 4 3 = {x l j (x) 0, j {1,2,3}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 l 3 (x) = 1.66x 1 + 0.951x 2 26.2 20 15 10 5 5 10 15 20

The ESH algorithm 29 37 LP2-step Iteration 4 3 = {x l j (x) 0, j {1,2,3}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 l 3 (x) = 1.66x 1 + 0.951x 2 26.2 20 15 10 5 5 10 15 20 k = 4, solve LP now in L, x k LP = argmin k 1 L c T x.

The ESH algorithm 29 37 LP2-step Iteration 4 3 = {x l j (x) 0, j {1,2,3}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 l 3 (x) = 1.66x 1 + 0.951x 2 26.2 20 15 10 5 5 10 15 20 k = 4, solve LP now in L, x k LP = argmin k 1 L c T x. Do line search, generate supporting hyperplane and add to.

The ESH algorithm 29 37 LP2-step Iteration 4 3 = {x l j (x) 0, j {1,2,3}, x X} l 1 (x) = 3.26x 1 + 0.313x 2 33.9 l 2 (x) = 0.332x 1 + 1.30x 2 19.2 l 3 (x) = 1.66x 1 + 0.951x 2 26.2 20 15 10 5 5 10 15 20 k = 4, solve LP now in L, x LP k = argmin k 1 L c T x. Do line search, generate supporting hyperplane and add to. Terminate LP2-step since F( x LP k ) < LP2.

The ESH algorithm 30 37 MILP step Iterations 5 and 6 20 MILP k = 5 20 MILP k = 6 15 15 10 10 5 5 5 10 15 20 5 10 15 20 In this step the integer requirements in Y are also considered, i.e., initially k = 5, = k 1 L Y. The MILP steps are required to guarantee an integer-feasible solution.

The ESH algorithm 31 37 Solution and comparisons to other solvers Solving the MINLP problem with the supporting hyperplane algorithm gives the following solution Type Iteration Obj. funct. x 1 x 2 F(x 1,x 2 ) LP1 1 40.0000 20.0000 20.0000 30 359 LP1 2 28.4720 8.47199 20.0000 14.9321 LP1 3 21.6378 9.19722 12.4406 0.957382 LP2 4 21.1639 8.56022 12.6037 0.229455 MILP 5 20.9065 8.90647 12 0.00442134 MILP 6 20.9036 8.90362 12 4.22619 10 6

The ESH algorithm 31 37 Solution and comparisons to other solvers Solving the MINLP problem with the supporting hyperplane algorithm gives the following solution Type Iteration Obj. funct. x 1 x 2 F(x 1,x 2 ) LP1 1 40.0000 20.0000 20.0000 30 359 LP1 2 28.4720 8.47199 20.0000 14.9321 LP1 3 21.6378 9.19722 12.4406 0.957382 LP2 4 21.1639 8.56022 12.6037 0.229455 MILP 5 20.9065 8.90647 12 0.00442134 MILP 6 20.9036 8.90362 12 4.22619 10 6 Solution times compared to some other MINLP solvers: Solver Subproblems solved Time (s) Implementation ESH 1 NLP + 4 LP + 2 MILP 0.04 Early prototype ECP 21 MILP (10 OPT) + 1 NLP 1.4 GAMS 24.2 + CPLEX DICOPT 10 NLP + 10 MILP 1.5 GAMS 24.2 + CONOPT + CPLEX

The ESH algorithm 32 37 Solver comparison The test problems are taken from MINLPlib2, which is a collection Mixed Integer Nonlinear Programming models. Solver fo7-ar4-1 fo9-ar3-1 jit1 m7-ar5-1 ESH 32.51 169.15 0.12 1.06 ECP 79.45 612.68 0.25 4.84 ANTIGONE 33.58 1.36 1.61 BARON 0.1 166.62 DICOPT # # # # SBB # # 0.03 # SCIP 34.12 393.22 0.01 13.15 Variables 112 180 25 112 Binaries 0 0 0 0 Integers 42 72 4 42 Type MINLP MINLP MINLP MINLP

The ESH algorithm 33 37 Solver comparison Solver batchs101006m enpro56pb o7 rsyn0805m04h rsyn0830m04h sssd25-08 ESH 17.89 1.34 461.75 6.64 111.63 58.71 ECP 17.8 2.37 4.46 25.02 ANTIGONE 15.68 0.75 668.71 BARON 161.81 7.75 66.87 DICOPT 1.75 0.34 # 2.31 4.57 SBB # # # 10.8 171.91 # SCIP 11.68 1.48 13.63 Variables 278 127 114 1,400 1,956 256 Binaries 129 73 42 296 416 224 Integers 0 0 0 0 0 0 Type MBNLP MBNLP MBNLP MBNLP MBNLP MBNLP

The ESH algorithm 34 37 Solver comparison Solver alan fac3 netmod-dol2 netmod-kar1 slay05h ESH 0.01 0.76 94.19 21.87 38.49 ECP 0.28 0.22 467.35 82.54 84.46 ANTIGONE 0.33 92.75 113.9 157.01 0.61 BARON 0.14 1.31 # 1,067.14 DICOPT 0.14 0.53 # # 0.19 SBB 0.01 0.20 # 23.26 6.13 SCIP 0.01 0.23 43.57 4.04 1.24 Variables 8 66 1,998 456 230 Binaries 4 12 462 136 40 Integers 0 0 0 0 0 Type MBQP MBQP MBQP MBQP MBQP

The ESH algorithm 35 37 Solver du-opt ex4 ESH 33.3 1.01 ECP 22.98 0.75 ANTIGONE 0.22 BARON 13.74 2.62 DICOPT # 0.44 SBB 0.33 1.06 SCIP 0.7 0.45 Variables 20 36 Binaries 0 25 Integers 13 0 Type MIQP MBQCQP Solver comparison

The ESH algorithm 36 37 Future work Implementations of the algorithm Mathematica / Wolfram Language. Early prototype available. COIN-OR: Utilize the Optimization Services and Open Solver Interface APIs. GAMS

The ESH algorithm 36 37 Future work Implementations of the algorithm Mathematica / Wolfram Language. Early prototype available. COIN-OR: Utilize the Optimization Services and Open Solver Interface APIs. GAMS Development of the algorithm Pseudoconvex constraints and objective functions. Selection (update) strategies of the interior point. Strategies for the LP1/LP2 steps.

The ESH algorithm 37 37 Thank you!