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

Similar documents
An extended supporting hyperplane algorithm for convex MINLP problems

An extended supporting hyperplane algorithm for convex MINLP problems

Comparison of Some High-Performance MINLP Solvers

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

The AIMMS Outer Approximation Algorithm for MINLP

The AIMMS Outer Approximation Algorithm for MINLP

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

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

LECTURE NOTES Non-Linear Programming

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

Lagrangean relaxation - exercises

Review of Mixed-Integer Nonlinear and Generalized Disjunctive Programming Methods

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

Standard dimension optimization of steel frames

The Branch-and-Sandwich Algorithm for Mixed-Integer Nonlinear Bilevel Problems

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

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

LaGO - A solver for mixed integer nonlinear programming

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

ALGORITHMS AND SOFTWARE FOR CONVEX MIXED INTEGER NONLINEAR PROGRAMS

Solving Large-Scale Nonlinear Programming Problems by Constraint Partitioning

The MINLP approach to structural optimization

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

Surrogate Gradient Algorithm for Lagrangian Relaxation 1,2

Modern Benders (in a nutshell)

SBB: A New Solver for Mixed Integer Nonlinear Programming

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

Benders in a nutshell Matteo Fischetti, University of Padova

Integrating Mixed-Integer Optimisation & Satisfiability Modulo Theories

Solving Large-Scale Nonlinear Programming Problems by Constraint Partitioning

Algorithms for Integer Programming

Bilinear Programming

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

Crash-Starting the Simplex Method

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

Lagrangian Relaxation: An overview

3 INTEGER LINEAR PROGRAMMING

Global Solution of Mixed-Integer Dynamic Optimization Problems

The goal of this paper is to develop models and methods that use complementary

TMA946/MAN280 APPLIED OPTIMIZATION. Exam instructions

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Graph Coloring via Constraint Programming-based Column Generation

OPTIMIZATION METHODS

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

A Nonlinear Presolve Algorithm in AIMMS

Fundamentals of Integer Programming

MINLP applications, part II: Water Network Design and some applications of black-box optimization

15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs

Mixed-integer non-linear programming approach to structural optimization

B553 Lecture 12: Global Optimization

Chapter 3 Numerical Methods

Metaheuristic Optimization with Evolver, Genocop and OptQuest

Nonlinear Programming

5.3 Cutting plane methods and Gomory fractional cuts

mixed-integer convex optimization

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

Computational Methods. Constrained Optimization

is shown that this problem can be modeled as an MILP, a CP, a combined MILP-CP OPL model (Hentenryck (1999)), and a hybrid MILP/CP model. The computat

NOTATION AND TERMINOLOGY

Improving Dual Bound for Stochastic MILP Models Using Sensitivity Analysis

Advanced Use of GAMS Solver Links

Exact Algorithms for Mixed-Integer Bilevel Linear Programming

A New Multistart Algorithm. Marcel Hunting AIMMS Optimization Specialist

MATHEMATICS II: COLLECTION OF EXERCISES AND PROBLEMS

Performance Evaluation of an Interior Point Filter Line Search Method for Constrained Optimization

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

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

APPLIED OPTIMIZATION WITH MATLAB PROGRAMMING

Applied Lagrange Duality for Constrained Optimization

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

Solution Methods Numerical Algorithms

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

On the Global Solution of Linear Programs with Linear Complementarity Constraints

Parallel Branch & Bound

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

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

CONLIN & MMA solvers. Pierre DUYSINX LTAS Automotive Engineering Academic year

The MINLP optimization in civil engineering

The Gurobi Solver V1.0

arxiv: v1 [cs.dm] 6 May 2009

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem

Module 1 Lecture Notes 2. Optimization Problem and Model Formulation

First steps to solve MINLP problems with Muriqui Optimizer

Integer Programming Chapter 9

An Integrated Design Algorithm for Detailed Layouts Based on the Contour Distance

February 19, Integer programming. Outline. Problem formulation. Branch-andbound

Branch and Bound Based Coordinate Search Filter Algorithm for Nonsmooth Nonconvex Mixed-Integer Nonlinear Programming Problems

Lagrangean Relaxation of the Hull-Reformulation of Linear Generalized Disjunctive Programs and its use in Disjunctive Branch and Bound

Brian Borchers and John E. Mitchell. Rensselaer Polytechnic Institute. Abstract. nonlinear programs with convex objective functions and constraints.

Homework 3. Constraint Satisfaction Problems, Optimization problems

Network Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini

Reduction and Exact Algorithms for the Disjunctively Constrained Knapsack Problem

Selected Topics in Column Generation

Experiments On General Disjunctions

Unconstrained Optimization Principles of Unconstrained Optimization Search Methods

The MIP-Solving-Framework SCIP

The Size Robust Multiple Knapsack Problem

Lecture 12: Feasible direction methods

Algorithms for Decision Support. Integer linear programming models

Transcription:

EVOLUTIONARY METHODS FOR DESIGN, OPTIMIZATION AND CONTROL P. Neittaanmäki, J. Périaux and T. Tuovinen (Eds.) c CIMNE, Barcelona, Spain 2007 A NEW SEQUENTIAL CUTTING PLANE ALGORITHM FOR SOLVING MIXED INTEGER NONLINEAR PROGRAMMING PROBLEMS Claus Still Process Design Laboratory Åbo Akademi University Biskopsgatan 8, FIN-20500, Åbo, Finland Email: claus.still@abo.fi Web page: http://www.abo.fi/fak/tkf/at/ Abstract. This paper presents a new algorithm for solving mixed integer nonlinear programming problems. The algorithm uses a branch and bound strategy where a nonlinear programming problem is solved in each integer node of the tree. The nonlinear programming problems, at each integer node of the tree, are not solved to optimality, rather one iteration step is taken at each node and then linearizations of the nonlinear constraints are added as cuts to the problem. A Sequential Cutting Plane (SCP) algorithm is used for solving the nonlinear programming problems by solving a sequence of linear programming problems. We present numerical results for the algorithm on a set of block layout problems indicating that the described algorithm is a competitive alternative to other existing algorithms for these types of problems. Key words: Mixed Integer Nonlinear Programming, Cutting Plane Methods, Sequential Cutting Plane Method, Extended Cutting Plane Method, Branch and Bound 1 INTRODUCTION In this paper we study a new algorithm for efficiently solving difficult mixed integer nonlinear programming (MINLP) problems of the form min f(x,y), s.t. g j (x,y) 0, j = 1,...,m, x X, y Y. (1) Here the set X is a bounded, box-constrained set of the form X = {x R nr x LB x x UB }, the set Y is a finite bounded set Y = {y Z nz y LB y y UB } and the functions f and g are convex and continuously differentiable. 1

C. STILL/A New Sequential Cutting Plane Algorithm for MINLP We particularly study performance on a difficult set of block optimization problems. 2 In [2], the Extended Cutting Plane algorithm 9,10 proved to be very efficient for solving these types of optimization problems. Here, the Sequential Cutting Plane algorithm 6 8 is further enhanced by using the ideas from the Extended Cutting Plane algorithm in order to form a new efficient algorithm for solving these difficult MINLP problems. We note that the algorithm can, in fact, be used to solve any convex MINLP problem of the form (1) to the global optimum. It can also be applied on nonconvex MINLP problems, but in that case, global optimality of the solution cannot be guaranteed. 2 SEQUENTIAL CUTTING PLANE ALGORITHM OVERVIEW Our algorithm solves the problem (1) by doing a normal branch and bound on a relaxed version of (1). In each integer node of the tree, we fix the integer variables and thus obtain a nonlinear programming (NLP) subproblem. We perform an NLP iteration on the NLP subproblem. If the iterate is optimal, the solution in the integer node is an upper bound on the optimal solution of the original problem (1) and can be used for dropping nodes from the tree. If not, we add linearizations of the nonlinear constraints in the current iterate as cuts to the relaxed version of (1) and continue the branching process. 2.1 Branch and Bound We construct the root node P 1 of the tree by relaxing (1) such that we drop the integer requirements and the nonlinear constraints from the problem formulation. Note that if there are any linear constraints in g(x,y) 0, we can keep them in our relaxed problem. We then do a normal branch and bound procedure 4 on this linear relaxation until we obtain an integer feasible node P k. In this node, we fix the integer variables y k and do an NLP iteration in order to solve the NLP subproblem min f(x,y k ), s.t. g(x,y k ) 0, x X. (2) We note that it is not necessary to solve this problem to optimality. We may only perform one NLP iteration to get a good approximation of the optimal solution to the subproblem. Let x k be the iterate we obtain as the solution to (2). We then use the iterate (x k,y k ) to add linearizations of the violated and active nonlinear constraints in (x k,y k ), g j (x k,y k ) + g j (x k,y k ) T (x x k,y y k ) 0, j {j : g j (x k,y k ) 0}, (3) to the set of cuts Ω k and call this new set of cuts Ω k+1. If x k is the optimal solution to (2), then f(x k,y k ) is an upper bound of the optimal solution to (1) and can be used to drop unexplored nodes from the branch and bound tree whenever the lower bounds of the nodes are greater than this upper bound.

EVOLUTIONARY METHODS FOR DESIGN, OPTIMIZATION AND CONTROL (EUROGEN 2007) 2.2 NLP Iteration We solve (2) by performing an NLP iteration. 6,8 In an NLP iteration, a sequence of linear programming (LP) subiterations is performed. In each subiteration (i) within the NLP iteration, an LP problem LP(x (i) ) is generated in the current iterate (x (i),y k ). The LP problem LP(x (i) ) is of the form min f(x (i),y k ) T d + Ct, s.t. g j (x (i),y k ) + g j (x (i),y k ) T d t 0, j = 1,...,m, (d (r) ) T H (i) d = 0, r = 1,...,i 1 ; i > 1, t 0, x (i) + d x X,d y = 0, (4) where d = (d x,d y ), and d (r),r = 1,...,i 1, are the previously obtained search directions within the NLP iteration. Also, H (i) is the current estimate of the Hessian of the Lagrangian m L(x,λ) = f(x,y k ) + λ j g j (x,y k ). (5) The BFGS update formula was used in our implementation of the algorithm to approximate H (i). The dual optimal solution to the LP problem LP(x (i) ) provides a Lagrange multiplier estimate, which can further be used for estimating the Hessian of the Lagrangian. Thus, the Hessian approximation can be updated in each LP subiteration. The solution to each LP problem LP(x (i) ) provides a search direction d (i) = (d (i) x,0). A line search is then performed in the obtained search direction minimizing a modified function based on the Lagrangian of (2), j=1 m m L(x,λ) = f(x,y k ) + λ j g j (x,y k ) + + ρ (g j (x,y k ) + ) 2, (6) j=1 j=1 where g j (x,y k ) + = max(g j (x,y k ), 0) and ρ (> 0) is a penalty parameter. The current iterate (x (i),y k ) is then updated using the solution α (i) of the line search such that x (i+1) = x (i) + α (i) d (i) x, where α (i) is the step length found in the line search. A new LP problem is then constructed in the updated iterate (x (i+1),y k ). The new LP problem is constructed in a similar way as the previous LP problem with equality constraints requiring the new search direction to be a conjugate direction to the previously obtained search directions with respect to the current estimate of the Hessian of the Lagrangian. The linear equality constraints (d (r) ) T H (i) d = 0, r = 1,...,i 1, (7) are cutting hyperplanes ensuring that d will be a conjugate direction to the old directions d (r). The new LP problem is then solved, a new line search performed and the iterate updated again. The procedure is repeated until the LP problem becomes infeasible,

C. STILL/A New Sequential Cutting Plane Algorithm for MINLP Algorithm 1 Pseudo-code for the SCP algorithm Initialize: Do a number of NLP iterations on the continuous relaxation of (1) to obtain the initial iterate for the problem. Construct the relaxed node P 1 as described in Section 2.1 and insert it into the branch and bound tree as the top node and set the upper bound U =. Add cutting planes for the initial iterate to the set of cutting planes Ω 1. Let k = 1. While (there are unexamined nodes in the tree) do 1. Do normal branching on the branch and bound tree including the cutting planes Ω k as linear cuts until integer solution ( x k, y k ) found. 2. Fix y k and perform an NLP iteration on (2). Let the iterate after the NLP iteration be x k. 3. If solution x k optimal for (2) Then update upper bound U := min{u, f(x k, y k )}. 4. If (2) is found to be infeasible Then let x k be the last iterate from the NLP iteration. 5. Let Ω k+1 = Ω k. Add cutting planes generated in (x k, y k ) for the active and violated constraints and add them to Ω k+1. Let k := k + 1. End While a sufficient number of steps have been taken or the current solution to the LP problem is sufficiently close to zero. Normally, the NLP iteration would then be repeated until we find an optimal point. However, in this version of the algorithm we perform only one NLP iteration in each integer node of the branch and bound tree in order to improve the performance of the algorithm. Convergence properties of the NLP version of the SCP algorithm have been analyzed in earlier papers. 6,8 2.3 Algorithm Pseudo-Code We summarize the algorithm in Algorithm 1. 3 NUMERICAL RESULTS We tested this new algorithm on a set of difficult block optimization problems. The problems concerned optimizing the arrangement of a number of departments with unequal area requirements. The problems can be formed as mixed integer nonlinear programming problems where the constraints are department and floor area requirements as well as department locational restrictions. The target is to optimize the cost associated with the projected interactions between departments. 2 In [2], the Extended Cutting Plane method was compared to a number of commercial algorithms and proved to be superior to the other solvers. In Table 1 the results in [2] are summarized for the solvers in terms of the number of problems solved to optimality, number of problems for which a feasible solution was obtained and number of problems for which no solution was obtained within 12 hours of CPU time. More information about the solvers used can be found in [1]. The results are excellent for the α-ecp algorithm on these test problems. It

EVOLUTIONARY METHODS FOR DESIGN, OPTIMIZATION AND CONTROL (EUROGEN 2007) Solution BARON DICOPT MINLPbb SBB α-ecp Optimal 13 5 5 5 31 Feasible 16 2 27 23 1 No solution 3 25 0 4 0 Table 1: Performance of the solvers on the block layout problem as reported in [2] only failed to solve one problem to global optimality and obtained the best integer feasible solution for the problem it could not solve to global optimality. In Figure 1 we compare our new SCP algorithm with the α-ecp algorithm using a performance profile. 3 We also compare the results with a version where we solve each integer node to optimality by repeating the NLP iterations until an optimal solution to (2) is found. This version of the SCP algorithm is denoted SCP-NLP. Note that if you solve the integer nodes to optimality, the procedure is similar to the method described in [5]. CPLEX was used as the MILP solver and the NLP part of the algorithm was implemented in MATLAB. As we can see from the results, the SCP algorithm performed very well on the test problems. In more than half of the cases it was the fastest solver. Considering that some of these problems can take several hours to solve, the performance improvement is significant. Performance Profile 100 90 Proportion of problems solved (Percentage) 80 70 60 50 40 30 20 ECP SCP SCP-NLP 10 0 1 1.5 2 2.5 3 3.5 4 4.5 5 CPU time in proportion to best solver Figure 1: Performance profile comparing CPU times for solving the block layout problems

C. STILL/A New Sequential Cutting Plane Algorithm for MINLP 4 CONCLUSIONS We have presented a new cutting plane-based method for solving mixed integer nonlinear programming problems. The numerical results clearly show that it can be used to solve challenging block layout problems. One advantage of the algorithm is that it will efficiently find a good feasible solution to a problem, even if the problem is not solved to optimality. Thus, the SCP algorithm can be combined with metaheuristics to solve difficult combinatorial optimization problems in realworld applications. REFERENCES [1] M. R. Bussieck and A. Pruessner, Mixed-Integer Nonlinear Programming, SIAG/OPT Newsletter: Views-and-News, 14, 19-22, (2003). [2] I. Castillo, J. Westerlund, S. Emet and T. Westerlund, Optimization of Block Layout Design Problems with Unequal Areas: A Comparison of MILP and MINLP Optimization Methods, Computers and Chemical Engineering, 30, 54-69, (2005). [3] E. D. Dolan and J. J. Moré, Benchmarking Optimization Software with Performance Profiles, Mathematical Programming, 91, 201-213, (2002). [4] A. H. Land and A. G. Doig, An Automatic Method of Solving Discrete Programming Problems, Econometrica, 28, 497-520, (1960). [5] I. Quesada and I. E. Grossmann, An LP/NLP Based Branch and Bound Algorithm for Convex MINLP Optimization Problems, Computers and Chemical Engineering, 16, 937-947, (1992). [6] C. Still and T. Westerlund, A Sequential Cutting Plane Algorithm for Solving Convex NLP Problems, European Journal of Operational Research, 173, 444-464, (2006). [7] C. Still and T. Westerlund, Solving Convex MINLP Optimization Problems Using a Sequential Cutting Plane Algorithm, Computational Optimization and Applications, 34, 63-83, (2006). [8] C. Still and T. Westerlund, A Linear Programming-Based Optimization Algorithm for Solving Nonlinear Programming Problems, European Journal of Operational Research, Submitted, (2007). [9] T. Westerlund, H. Skrifvars, I. Harjunkoski and R. Pörn, An Extended Cutting Plane Method for a Class of Non-Convex MINLP Problems, Computers and Chemical Engineering, 22, 357-365, (1998). [10] T. Westerlund and R. Pörn, Solving Pseudo-Convex Mixed Integer Optimization Problems by Cutting Plane Techniques, Optimization and Engineering, 3, 253-280, (2002).