Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase...
Transcript of Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase...
![Page 1: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/1.jpg)
Mixed Integer Nonlinear Programming (MINLP)
Sven Leyffer
MCS DivisionArgonne National [email protected]
Jeff Linderoth
ISE DepartmentLehigh [email protected]
1 / 160
![Page 2: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/2.jpg)
Overview
1 Introduction, Applications, and Formulations
2 Classical Solution Methods
3 Modern Developments in MINLP
4 Implementation and Software
2 / 160
![Page 3: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/3.jpg)
Part I
Introduction, Applications, and Formulations
3 / 160
![Page 4: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/4.jpg)
The Problem of the Day
Mixed Integer Nonlinear Program (MINLP)minimize
x ,yf (x , y)
subject to c(x , y) ≤ 0x ∈ X , y ∈ Y integer
f , c smooth (convex) functions
X ,Y polyhedral sets, e.g. Y = y ∈ [0, 1]p | Ay ≤ by ∈ Y integer ⇒ hard problem
f , c not convex ⇒ very hard problem
4 / 160
![Page 5: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/5.jpg)
The Problem of the Day
Mixed Integer Nonlinear Program (MINLP)minimize
x ,yf (x , y)
subject to c(x , y) ≤ 0x ∈ X , y ∈ Y integer
f , c smooth (convex) functions
X ,Y polyhedral sets, e.g. Y = y ∈ [0, 1]p | Ay ≤ b
y ∈ Y integer ⇒ hard problem
f , c not convex ⇒ very hard problem
5 / 160
![Page 6: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/6.jpg)
The Problem of the Day
Mixed Integer Nonlinear Program (MINLP)minimize
x ,yf (x , y)
subject to c(x , y) ≤ 0x ∈ X , y ∈ Y integer
f , c smooth (convex) functions
X ,Y polyhedral sets, e.g. Y = y ∈ [0, 1]p | Ay ≤ by ∈ Y integer ⇒ hard problem
f , c not convex ⇒ very hard problem
6 / 160
![Page 7: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/7.jpg)
The Problem of the Day
Mixed Integer Nonlinear Program (MINLP)minimize
x ,yf (x , y)
subject to c(x , y) ≤ 0x ∈ X , y ∈ Y integer
f , c smooth (convex) functions
X ,Y polyhedral sets, e.g. Y = y ∈ [0, 1]p | Ay ≤ by ∈ Y integer ⇒ hard problem
f , c not convex ⇒ very hard problem
7 / 160
![Page 8: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/8.jpg)
Why the MI?
We can use 0-1 (binary) variables for a variety of purposes
Modeling yes/no decisionsEnforcing disjunctionsEnforcing logical conditionsModeling fixed costsModeling piecewise linear functions
If the variable is associated with a physical entity that is indivisible,then it must be integer
Number of aircraft carriers to to produce. Gomory’s Initial Motivation
8 / 160
![Page 9: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/9.jpg)
Why the MI?
We can use 0-1 (binary) variables for a variety of purposes
Modeling yes/no decisionsEnforcing disjunctionsEnforcing logical conditionsModeling fixed costsModeling piecewise linear functions
If the variable is associated with a physical entity that is indivisible,then it must be integer
Number of aircraft carriers to to produce. Gomory’s Initial Motivation
9 / 160
![Page 10: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/10.jpg)
A Popular MINLP Method
Dantzig’s Two-Phase Method for MINLP Adapted by Leyffer and Linderoth
1 Convince the user that he or she does not wish to solve a mixedinteger nonlinear programming problem at all!
2 Otherwise, solve the continuous relaxation (NLP) and round off theminimizer to the nearest integer.
For 0− 1 problems, or those in which the |y | is “small”, thecontinuous approximation to the discrete decision is not accurateenough for practical purposes.
Conclusion: MINLP methods must be studied!
10 / 160
![Page 11: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/11.jpg)
A Popular MINLP Method
Dantzig’s Two-Phase Method for MINLP Adapted by Leyffer and Linderoth
1 Convince the user that he or she does not wish to solve a mixedinteger nonlinear programming problem at all!
2 Otherwise, solve the continuous relaxation (NLP) and round off theminimizer to the nearest integer.
For 0− 1 problems, or those in which the |y | is “small”, thecontinuous approximation to the discrete decision is not accurateenough for practical purposes.
Conclusion: MINLP methods must be studied!
11 / 160
![Page 12: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/12.jpg)
A Popular MINLP Method
Dantzig’s Two-Phase Method for MINLP Adapted by Leyffer and Linderoth
1 Convince the user that he or she does not wish to solve a mixedinteger nonlinear programming problem at all!
2 Otherwise, solve the continuous relaxation (NLP) and round off theminimizer to the nearest integer.
For 0− 1 problems, or those in which the |y | is “small”, thecontinuous approximation to the discrete decision is not accurateenough for practical purposes.
Conclusion: MINLP methods must be studied!
12 / 160
![Page 13: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/13.jpg)
A Popular MINLP Method
Dantzig’s Two-Phase Method for MINLP Adapted by Leyffer and Linderoth
1 Convince the user that he or she does not wish to solve a mixedinteger nonlinear programming problem at all!
2 Otherwise, solve the continuous relaxation (NLP) and round off theminimizer to the nearest integer.
For 0− 1 problems, or those in which the |y | is “small”, thecontinuous approximation to the discrete decision is not accurateenough for practical purposes.
Conclusion: MINLP methods must be studied!
13 / 160
![Page 14: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/14.jpg)
Example: Core Reload Operation (Quist, A.J., 2000)
max. reactor efficiency after reloadsubject to diffusion PDE & safety
diffusion PDE ' nonlinear equation⇒ integer & nonlinear model
avoid reactor becoming sub-critical
14 / 160
![Page 15: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/15.jpg)
Example: Core Reload Operation (Quist, A.J., 2000)
max. reactor efficiency after reloadsubject to diffusion PDE & safety
diffusion PDE ' nonlinear equation⇒ integer & nonlinear model
avoid reactor becoming overheated
15 / 160
![Page 16: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/16.jpg)
Example: Core Reload Operation (Quist, A.J., 2000)
look for cycles for moving bundles:e.g. 4 → 6 → 8 → 10i.e. bundle moved from 4 to 6 ...
model with binary xilm ∈ 0, 1xilm = 1⇔ node i has bundle l of cycle m
16 / 160
![Page 17: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/17.jpg)
AMPL Model of Core Reload Operation
Exactly one bundle per node:
L∑l=1
M∑m=1
xilm = 1 ∀i ∈ I
AMPL model:var x I,L,M binary ;
Bundle i in I: suml in L, m in M x[i,l,m] = 1 ;
Multiple Choice: One of the most common uses of IP
Full AMPL model c-reload.mod atwww.mcs.anl.gov/~leyffer/MacMINLP/
17 / 160
![Page 18: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/18.jpg)
Gas Transmission Problem (De Wolf and Smeers, 2000)
Belgium has no gas!
All natural gas is importedfrom Norway, Holland, orAlgeria.
Supply gas to all demandpoints in a network in aminimum cost fashion.
Gas is pumped through thenetwork with a series ofcompressors
There are constraints on thepressure of the gas withinthe pipe
18 / 160
![Page 19: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/19.jpg)
Gas Transmission Problem (De Wolf and Smeers, 2000)
Belgium has no gas!
All natural gas is importedfrom Norway, Holland, orAlgeria.
Supply gas to all demandpoints in a network in aminimum cost fashion.
Gas is pumped through thenetwork with a series ofcompressors
There are constraints on thepressure of the gas withinthe pipe
19 / 160
![Page 20: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/20.jpg)
Gas Transmission Problem (De Wolf and Smeers, 2000)
Belgium has no gas!
All natural gas is importedfrom Norway, Holland, orAlgeria.
Supply gas to all demandpoints in a network in aminimum cost fashion.
Gas is pumped through thenetwork with a series ofcompressors
There are constraints on thepressure of the gas withinthe pipe
20 / 160
![Page 21: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/21.jpg)
Pressure Loss is Nonlinear
Assume horizontal pipes andsteady state flows
Pressure loss p across a pipe isrelated to the flow rate f as
p2in − p2
out =1
Ψsign(f )f 2
Ψ: “Friction Factor”
21 / 160
![Page 22: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/22.jpg)
Gas Transmission: Problem Input
Network (N,A). A = Ap ∪ Aa
Aa: active arcs have compressor. Flow rate can increase on arcAp: passive arcs simply conserve flow rate
Ns ⊆ N: set of supply nodes
ci , i ∈ Ns : Purchase cost of gas
s i , s i : Lower and upper bounds on gas “supply” at node i
pi, pi : Lower and upper bounds on gas pressure at node i
si , i ∈ N: supply at node i .
si > 0⇒ gas added to the network at node isi < 0⇒ gas removed from the network at node i to meet demand
fij , (i , j) ∈ A: flow along arc (i , j)
f (i , j) > 0⇒ gas flows i → jf (i , j) < 0⇒ gas flows j → i
22 / 160
![Page 23: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/23.jpg)
Gas Transmission: Problem Input
Network (N,A). A = Ap ∪ Aa
Aa: active arcs have compressor. Flow rate can increase on arcAp: passive arcs simply conserve flow rate
Ns ⊆ N: set of supply nodes
ci , i ∈ Ns : Purchase cost of gas
s i , s i : Lower and upper bounds on gas “supply” at node i
pi, pi : Lower and upper bounds on gas pressure at node i
si , i ∈ N: supply at node i .
si > 0⇒ gas added to the network at node isi < 0⇒ gas removed from the network at node i to meet demand
fij , (i , j) ∈ A: flow along arc (i , j)
f (i , j) > 0⇒ gas flows i → jf (i , j) < 0⇒ gas flows j → i
23 / 160
![Page 24: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/24.jpg)
Gas Transmission Model
min∑j∈Ns
cjsj
subject to ∑j |(i ,j)∈A
fij = si ∀i ∈ N
sign(fij)f2ij −Ψij(p
2i − p2
j ) = 0 ∀(i , j) ∈ Ap
sign(fij)f2ij −Ψij(p
2i − p2
j ) ≥ 0 ∀(i , j) ∈ Aa
si ∈ [s i , s i ] ∀i ∈ Npi ∈ [p
i, pi ] ∀i ∈ N
fij ≥ 0 ∀(i , j) ∈ Aa
24 / 160
![Page 25: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/25.jpg)
Your First Modeling Trick
Don’t include nonlinearities or nonconvexities unless necessary!
Replace p2i ← ρi
sign(fij)f2ij −Ψij(ρi − ρj) = 0 ∀(i , j) ∈ Ap
f 2ij −Ψij(ρi − ρj) ≥ 0 ∀(i , j) ∈ Aa
ρi ∈ [√pi,√
pi ] ∀i ∈ N
This trick only works because1 p2
i terms appear only in the bound constraints2 Also fij ≥ 0 ∀(i , j) ∈ Aa
This model is nonconvex: sign(fij)f2ij is a nonconvex function
Some solvers do not like sign
25 / 160
![Page 26: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/26.jpg)
Your First Modeling Trick
Don’t include nonlinearities or nonconvexities unless necessary!
Replace p2i ← ρi
sign(fij)f2ij −Ψij(ρi − ρj) = 0 ∀(i , j) ∈ Ap
f 2ij −Ψij(ρi − ρj) ≥ 0 ∀(i , j) ∈ Aa
ρi ∈ [√pi,√pi ] ∀i ∈ N
This trick only works because1 p2
i terms appear only in the bound constraints2 Also fij ≥ 0 ∀(i , j) ∈ Aa
This model is nonconvex: sign(fij)f2ij is a nonconvex function
Some solvers do not like sign
26 / 160
![Page 27: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/27.jpg)
Your First Modeling Trick
Don’t include nonlinearities or nonconvexities unless necessary!
Replace p2i ← ρi
sign(fij)f2ij −Ψij(ρi − ρj) = 0 ∀(i , j) ∈ Ap
f 2ij −Ψij(ρi − ρj) ≥ 0 ∀(i , j) ∈ Aa
ρi ∈ [√pi,√pi ] ∀i ∈ N
This trick only works because1 p2
i terms appear only in the bound constraints2 Also fij ≥ 0 ∀(i , j) ∈ Aa
This model is nonconvex: sign(fij)f2ij is a nonconvex function
Some solvers do not like sign
27 / 160
![Page 28: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/28.jpg)
Dealing with sign(·): The NLP Way
Use auxiliary binary variables to indicate direction of flow
Let |fij | ≤ F ∀(i , j) ∈ Ap
zij =
1 fij ≥ 0 fij ≥ −F (1− zij)0 fij ≤ 0 fij ≤ Fzij
Note thatsign(fij) = 2zij − 1
Write constraint as
(2zij − 1)f 2ij −Ψij(ρi − ρj) = 0.
28 / 160
![Page 29: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/29.jpg)
Special Ordered Sets
Sven thinks this ’NLP trick’ is pretty cool
It is not how it is done in De Wolf and Smeers (2000).
Heuristic for finding a good starting solution, then a localoptimization approach based on a piecewise-linear simplex method
Another (similar) approach involves approximating the nonlinearfunction by piecewise linear segments, but searching for the globallyoptimal solution: Special Ordered Sets of Type 2
If the “multidimensional” nonlinearity cannot be removed, resort toSpecial Ordered Sets of Type 3
29 / 160
![Page 30: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/30.jpg)
Special Ordered Sets
Sven thinks this ’NLP trick’ is pretty cool
It is not how it is done in De Wolf and Smeers (2000).
Heuristic for finding a good starting solution, then a localoptimization approach based on a piecewise-linear simplex method
Another (similar) approach involves approximating the nonlinearfunction by piecewise linear segments, but searching for the globallyoptimal solution: Special Ordered Sets of Type 2
If the “multidimensional” nonlinearity cannot be removed, resort toSpecial Ordered Sets of Type 3
30 / 160
![Page 31: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/31.jpg)
Special Ordered Sets
Sven thinks this ’NLP trick’ is pretty cool
It is not how it is done in De Wolf and Smeers (2000).
Heuristic for finding a good starting solution, then a localoptimization approach based on a piecewise-linear simplex method
Another (similar) approach involves approximating the nonlinearfunction by piecewise linear segments, but searching for the globallyoptimal solution: Special Ordered Sets of Type 2
If the “multidimensional” nonlinearity cannot be removed, resort toSpecial Ordered Sets of Type 3
31 / 160
![Page 32: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/32.jpg)
Portfolio Management
N: Universe of asset to purchase
xi : Amount of asset i to hold
B: Budget
minx∈R|N|+
u(x) |
∑i∈N
xi = B
Markowitz: u(x)def= −αT x + λxTQx
α: Expected returnsQ: Variance-covariance matrix of expected returnsλ: Risk aversion parameter
32 / 160
![Page 33: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/33.jpg)
Portfolio Management
N: Universe of asset to purchase
xi : Amount of asset i to hold
B: Budget
minx∈R|N|+
u(x) |
∑i∈N
xi = B
Markowitz: u(x)def= −αT x + λxTQx
α: Expected returnsQ: Variance-covariance matrix of expected returnsλ: Risk aversion parameter
33 / 160
![Page 34: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/34.jpg)
More Realistic Models
b ∈ R|N| of “benchmark” holdings
Benchmark Tracking: u(x)def= (x − b)TQ(x − b)
Constraint on E[Return]: αT x ≥ r
Limit Names: |i ∈ N : xi > 0| ≤ K
Use binary indicator variables to model the implicationxi > 0⇒ yi = 1Implication modeled with variable upper bounds:
xi ≤ Byi ∀i ∈ N∑i∈N yi ≤ K
34 / 160
![Page 35: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/35.jpg)
More Realistic Models
b ∈ R|N| of “benchmark” holdings
Benchmark Tracking: u(x)def= (x − b)TQ(x − b)
Constraint on E[Return]: αT x ≥ r
Limit Names: |i ∈ N : xi > 0| ≤ K
Use binary indicator variables to model the implicationxi > 0⇒ yi = 1Implication modeled with variable upper bounds:
xi ≤ Byi ∀i ∈ N∑i∈N yi ≤ K
35 / 160
![Page 36: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/36.jpg)
Even More Models
Min Holdings: (xi = 0) ∨ (xi ≥ m)
Model implication: xi > 0⇒ xi ≥ mxi > 0⇒ yi = 1⇒ xi ≥ mxi ≤ Byi , xi ≥ myi ∀i ∈ N
Round Lots: xi ∈ kLi , k = 1, 2, . . .xi − ziLi = 0, zi ∈ Z+ ∀i ∈ N
Vector h of initial holdings
Transactions: ti = |xi − hi |Turnover:
∑i∈N ti ≤ ∆
Transaction Costs:∑
i∈N ci ti in objective
Market Impact:∑
i∈N γi t2i in objective
36 / 160
![Page 37: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/37.jpg)
Even More Models
Min Holdings: (xi = 0) ∨ (xi ≥ m)
Model implication: xi > 0⇒ xi ≥ mxi > 0⇒ yi = 1⇒ xi ≥ mxi ≤ Byi , xi ≥ myi ∀i ∈ N
Round Lots: xi ∈ kLi , k = 1, 2, . . .xi − ziLi = 0, zi ∈ Z+ ∀i ∈ N
Vector h of initial holdings
Transactions: ti = |xi − hi |Turnover:
∑i∈N ti ≤ ∆
Transaction Costs:∑
i∈N ci ti in objective
Market Impact:∑
i∈N γi t2i in objective
37 / 160
![Page 38: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/38.jpg)
Even More Models
Min Holdings: (xi = 0) ∨ (xi ≥ m)
Model implication: xi > 0⇒ xi ≥ mxi > 0⇒ yi = 1⇒ xi ≥ mxi ≤ Byi , xi ≥ myi ∀i ∈ N
Round Lots: xi ∈ kLi , k = 1, 2, . . .xi − ziLi = 0, zi ∈ Z+ ∀i ∈ N
Vector h of initial holdings
Transactions: ti = |xi − hi |Turnover:
∑i∈N ti ≤ ∆
Transaction Costs:∑
i∈N ci ti in objective
Market Impact:∑
i∈N γi t2i in objective
38 / 160
![Page 39: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/39.jpg)
Multiproduct Batch Plants (Kocis and Gross-
mann, 1988)
M: Batch Processing Stages
N: Different Products
H: Horizon Time
Qi : Required quantity of product i
tij : Processing time product i stage j
Sij : “Size Factor” product i stage j
Bi : Batch size of product i ∈ N
Vj : Stage j size: Vj ≥ SijBi ∀i , jNj : Number of machines at stage j
Ci : Longest stage time for product i : Ci ≥ tij/Nj ∀i , j
39 / 160
![Page 40: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/40.jpg)
Multiproduct Batch Plants (Kocis and Gross-
mann, 1988)
M: Batch Processing Stages
N: Different Products
H: Horizon Time
Qi : Required quantity of product i
tij : Processing time product i stage j
Sij : “Size Factor” product i stage j
Bi : Batch size of product i ∈ N
Vj : Stage j size: Vj ≥ SijBi ∀i , jNj : Number of machines at stage j
Ci : Longest stage time for product i : Ci ≥ tij/Nj ∀i , j40 / 160
![Page 41: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/41.jpg)
Multiproduct Batch Plants
min∑j∈M
αjNjVβjj
s.t.
Vj − SijBi ≥ 0 ∀i ∈ N,∀j ∈ MCiNj ≥ tij ∀i ∈ N,∀j ∈ M∑
i∈N
Qi
BiCi ≤ H
Bound Constraints on Vj ,Ci ,Bi ,Nj
Nj ∈ Z ∀j ∈ M
41 / 160
![Page 42: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/42.jpg)
Modeling Trick #2
Horizon Time and Objective Function Nonconvex. :-(
Sometimes variable transformations work!
vj = ln(Vj), nj = ln(Nj), bi = ln(Bi ), ci = lnCi
min∑j∈M
αjeNj+βjVj
s.t. vj − ln(Sij)bi ≥ 0 ∀i ∈ N,∀j ∈ Mci + nj ≥ ln(τij) ∀i ∈ N,∀j ∈ M∑
i∈NQie
Ci−Bi ≤ H
(Transformed) Bound Constraints on Vj ,Ci ,Bi
42 / 160
![Page 43: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/43.jpg)
Modeling Trick #2
Horizon Time and Objective Function Nonconvex. :-(
Sometimes variable transformations work!
vj = ln(Vj), nj = ln(Nj), bi = ln(Bi ), ci = lnCi
min∑j∈M
αjeNj+βjVj
s.t. vj − ln(Sij)bi ≥ 0 ∀i ∈ N, ∀j ∈ Mci + nj ≥ ln(τij) ∀i ∈ N,∀j ∈ M∑
i∈NQie
Ci−Bi ≤ H
(Transformed) Bound Constraints on Vj ,Ci ,Bi
43 / 160
![Page 44: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/44.jpg)
Modeling Trick #2
Horizon Time and Objective Function Nonconvex. :-(
Sometimes variable transformations work!
vj = ln(Vj), nj = ln(Nj), bi = ln(Bi ), ci = lnCi
min∑j∈M
αjeNj+βjVj
s.t. vj − ln(Sij)bi ≥ 0 ∀i ∈ N, ∀j ∈ Mci + nj ≥ ln(τij) ∀i ∈ N,∀j ∈ M∑
i∈NQie
Ci−Bi ≤ H
(Transformed) Bound Constraints on Vj ,Ci ,Bi
44 / 160
![Page 45: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/45.jpg)
How to Handle the Integrality?
But what to do about the integrality?
1 ≤ Nj ≤ N j ∀j ∈ M,Nj ∈ Z ∀j ∈ M
nj ∈ 0, ln(2), ln(3), . . . ...
Ykj =
1 nj takes value ln(k)0 Otherwise
nj −K∑
k=1
ln(k)Ykj = 0 ∀j ∈ M
K∑k=1
Ykj = 1 ∀j ∈ M
This model is available at http://www-unix.mcs.anl.gov/
~leyffer/macminlp/problems/batch.mod
45 / 160
![Page 46: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/46.jpg)
A Small Smattering of Other Applications
Chemical Engineering Applications:
process synthesis (Kocis and Grossmann, 1988)batch plant design (Grossmann and Sargent, 1979)cyclic scheduling (Jain, V. and Grossmann, I.E., 1998)design of distillation columns (Viswanathan and Grossmann, 1993)pump configuration optimization (Westerlund, T., Pettersson, F. andGrossmann, I.E., 1994)
Forestry/Paper
production (Westerlund, T., Isaksson, J. and Harjunkoski, I., 1995)trimloss minimization (Harjunkoski, I., Westerlund, T., Porn, R. andSkrifvars, H., 1998)
Topology Optimization (Sigmund, 2001)
46 / 160
![Page 47: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/47.jpg)
Part II
Classical Solution Methods
47 / 160
![Page 48: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/48.jpg)
Classical Solution Methods for MINLP
1 Classical Branch-and-Bound
2 Outer Approximation & Benders Decomposition3 Hybrid Methods
LP/NLP Based Branch-and-BoundIntegrating SQP with Branch-and-Bound
48 / 160
![Page 49: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/49.jpg)
Branch-and-Bound
Solve relaxed NLP (0 ≤ y ≤ 1 continuous relaxation). . . solution value provides lower bound
Branch on yi non-integral
Solve NLPs & branch until1 Node infeasible ... •2 Node integer feasible ... ⇒ get upper bound (U)
3 Lower bound ≥ U ...⊗
y = 1
y = 0i
i
dominated by upper bound
infeasible
integer feasibleetc.
etc.
Search until no unexplored nodes on tree
49 / 160
![Page 50: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/50.jpg)
Variable Selection for Branch-and-BoundAssume yi ∈ 0, 1 for simplicity ...(x , y) fractional solution to parent node; f = f (x , y)
1 maximal fractional branching: choose yi closest to 12
maximin(1− yi , yi )
2 strong branching: (approx) solve all NLP children:
f+/−i ←
minimize
x ,yf (x , y)
subject to c(x , y) ≤ 0x ∈ X , y ∈ Y , yi = 1/0
branching variable yi that changes objective the most:
maxi
min(f +
i , f−i )
50 / 160
![Page 51: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/51.jpg)
Variable Selection for Branch-and-BoundAssume yi ∈ 0, 1 for simplicity ...(x , y) fractional solution to parent node; f = f (x , y)
1 maximal fractional branching: choose yi closest to 12
maximin(1− yi , yi )
2 strong branching: (approx) solve all NLP children:
f+/−i ←
minimize
x ,yf (x , y)
subject to c(x , y) ≤ 0x ∈ X , y ∈ Y , yi = 1/0
branching variable yi that changes objective the most:
maxi
min(f +
i , f−i )
51 / 160
![Page 52: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/52.jpg)
Node Selection for Branch-and-Bound
Which node n on tree T should be solved next?1 depth-first search: select deepest node in tree
minimizes number of NLP nodes storedexploit warm-starts (MILP/MIQP only)
2 best estimate: choose node with best expected integer soln
minn∈T
fp(n) +∑
i :yi fractional
mine+i (1− yi ), e
−i yi
where fp(n) = value of parent node, e+/−i = pseudo-costs
summing pseudo-cost estimates for all integers in subtree
52 / 160
![Page 53: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/53.jpg)
Node Selection for Branch-and-Bound
Which node n on tree T should be solved next?1 depth-first search: select deepest node in tree
minimizes number of NLP nodes storedexploit warm-starts (MILP/MIQP only)
2 best estimate: choose node with best expected integer soln
minn∈T
fp(n) +∑
i :yi fractional
mine+i (1− yi ), e
−i yi
where fp(n) = value of parent node, e+/−i = pseudo-costs
summing pseudo-cost estimates for all integers in subtree
53 / 160
![Page 54: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/54.jpg)
Outer Approximation (Duran and Grossmann, 1986)
Motivation: avoid solving huge number of NLPs• Exploit MILP/NLP solvers: decompose integer/nonlinear part
Key idea: reformulate MINLP as MILP (implicit)• Solve alternating sequence of MILP & NLP
NLP subproblem yj fixed:
NLP(yj)
minimize
xf (x , yj)
subject to c(x , yj) ≤ 0x ∈ X
Main Assumption: f , c are convex
(y )jNLP
MILP
54 / 160
![Page 55: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/55.jpg)
Outer Approximation (Duran and Grossmann, 1986)
• let (xj , yj) solve NLP(yj)• linearize f , c about (xj , yj) =: zj• new objective variable η ≥ f (x , y)• MINLP (P) ≡ MILP (M)
f(x)
η
(M)
minimizez=(x ,y),η
η
subject to η ≥ fj +∇f Tj (z − zj) ∀yj ∈ Y
0 ≥ cj +∇cTj (z − zj) ∀yj ∈ Y
x ∈ X , y ∈ Y integer
SNAG: need all yj ∈ Y linearizations
55 / 160
![Page 56: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/56.jpg)
Outer Approximation (Duran and Grossmann, 1986)
(Mk): lower bound (underestimate convex f , c)NLP(yj): upper bound U (fixed yj)
NLP( ) subproblemylinearizationNLP gives
MILP findsnew y
MILP infeasible?
Yes
STOP
No
MILP master program
⇒ stop, if lower bound ≥ upper bound
56 / 160
![Page 57: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/57.jpg)
Outer Approximation & Benders Decomposition
Take OA cuts for zj := (xj , yj) ... wlog X = Rn
η ≥ fj +∇f Tj (z − zj) & 0 ≥ cj +∇cTj (z − zj)
sum with (1, λj) ... λj multipliers of NLP(yj)
η ≥ fj + λTj cj + (∇fj +∇cjλj)T (z − zj)
KKT conditions of NLP(yj) ⇒ ∇x fj +∇xcjλj = 0... eliminate x components from valid inequality in y
⇒ η ≥ fj + (∇y fj +∇ycjλj)T (y − yj)
NB: µj = ∇y fj +∇ycjλj multiplier of y = yj in NLP(yj)References: (Geoffrion, 1972)
57 / 160
![Page 58: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/58.jpg)
LP/NLP Based Branch-and-Bound
AIM: avoid re-solving MILP master (M)
Consider MILP branch-and-bound
interrupt MILP, when yj found⇒ solve NLP(yj) get xj
linearize f , c about (xj , yj)⇒ add linearization to tree
continue MILP tree-search
... until lower bound ≥ upper bound
58 / 160
![Page 59: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/59.jpg)
LP/NLP Based Branch-and-Bound
AIM: avoid re-solving MILP master (M)
Consider MILP branch-and-bound
interrupt MILP, when yj found⇒ solve NLP(yj) get xj
linearize f , c about (xj , yj)⇒ add linearization to tree
continue MILP tree-search
integerfeasible
... until lower bound ≥ upper bound
59 / 160
![Page 60: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/60.jpg)
LP/NLP Based Branch-and-Bound
AIM: avoid re-solving MILP master (M)
Consider MILP branch-and-bound
interrupt MILP, when yj found⇒ solve NLP(yj) get xj
linearize f , c about (xj , yj)⇒ add linearization to tree
continue MILP tree-search
... until lower bound ≥ upper bound
60 / 160
![Page 61: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/61.jpg)
LP/NLP Based Branch-and-Bound
AIM: avoid re-solving MILP master (M)
Consider MILP branch-and-bound
interrupt MILP, when yj found⇒ solve NLP(yj) get xj
linearize f , c about (xj , yj)⇒ add linearization to tree
continue MILP tree-search
... until lower bound ≥ upper bound
61 / 160
![Page 62: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/62.jpg)
LP/NLP Based Branch-and-Bound
need access to MILP solver ... call back exploit good MILP (branch-cut-price) solver (Akrotirianakis et al., 2001) use Gomory cuts in tree-search
preliminary results: order of magnitude faster than OA same number of NLPs, but only one MILP
similar ideas for Benders & Extended Cutting Plane methods
recent implementation by CMU/IBM group
References: (Quesada and Grossmann, 1992)
62 / 160
![Page 63: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/63.jpg)
Integrating SQP & Branch-and-Bound
AIM: Avoid solving NLP node to convergence.
Sequential Quadratic Programming (SQP)→ solve sequence (QPk) at every node
(QPk)
minimize
dfk +∇f Tk d + 1
2dTHkd
subject to ck +∇cTk d ≤ 0xk + dx ∈ X
yk + dy ∈ Y .
Early branching:After QP step choose non-integral yk+1
i , branch & continue SQPReferences: (Borchers and Mitchell, 1994; Leyffer, 2001)
63 / 160
![Page 64: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/64.jpg)
Integrating SQP & Branch-and-Bound
SNAG: (QPk) not lower bound⇒ no fathoming from upper bound
minimized
fk +∇f Tk d + 12d
THkd
subject to ck +∇cTk d ≤ 0xk + dx ∈ X
yk + dy ∈ Y .
Remedy: Exploit OA underestimating property (Leyffer, 2001):
add objective cut fk +∇f Tk d ≤ U − ε to (QPk)
fathom node, if (QPk) inconsistent
NB: (QPk) inconsistent and trust-region active ⇒ do not fathom
64 / 160
![Page 65: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/65.jpg)
Integrating SQP & Branch-and-Bound
SNAG: (QPk) not lower bound⇒ no fathoming from upper bound
minimized
fk +∇f Tk d + 12d
THkd
subject to ck +∇cTk d ≤ 0xk + dx ∈ X
yk + dy ∈ Y .
Remedy: Exploit OA underestimating property (Leyffer, 2001):
add objective cut fk +∇f Tk d ≤ U − ε to (QPk)
fathom node, if (QPk) inconsistent
NB: (QPk) inconsistent and trust-region active ⇒ do not fathom
65 / 160
![Page 66: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/66.jpg)
Comparison of Classical MINLP Techniques
Summary of numerical experience
1 Quadratic OA master: usually fewer iterationMIQP harder to solve
2 NLP branch-and-bound faster than OA... depends on MIP solver
3 LP/NLP-based-BB order of magnitude faster than OA. . . also faster than B&B
4 Integrated SQP-B&B up to 3× faster than B&B' number of QPs per node
5 ECP works well, if function/gradient evals expensive
66 / 160
![Page 67: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/67.jpg)
Part III
Modern Developments in MINLP
67 / 160
![Page 68: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/68.jpg)
Modern Methods for MINLP
1 Formulations
RelaxationsGood formulations: big M ′s and disaggregation
2 Cutting Planes
Cuts from relaxations and special structuresCuts from integrality
3 Handling Nonconvexity
EnvelopesMethods
68 / 160
![Page 69: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/69.jpg)
Relaxations
z(S)def= minx∈S f (x)
z(T )def= minx∈T f (x)
S
T
Independent of f , S ,T :z(T ) ≤ z(S)
If x∗T = arg minx∈T f (x)
And x∗T ∈ S , then
x∗T = arg minx∈S f (x)
69 / 160
![Page 70: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/70.jpg)
Relaxations
z(S)def= minx∈S f (x)
z(T )def= minx∈T f (x)
S
T
Independent of f , S ,T :z(T ) ≤ z(S)
If x∗T = arg minx∈T f (x)
And x∗T ∈ S , then
x∗T = arg minx∈S f (x)
70 / 160
![Page 71: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/71.jpg)
Relaxations
z(S)def= minx∈S f (x)
z(T )def= minx∈T f (x)
S
T
Independent of f , S ,T :z(T ) ≤ z(S)
If x∗T = arg minx∈T f (x)
And x∗T ∈ S , then
x∗T = arg minx∈S f (x)
71 / 160
![Page 72: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/72.jpg)
UFL: Uncapacitated Facility LocationFacilities: J
Customers: Imin
∑j∈J
fjxj +∑i∈I
∑j∈J
fijyij
∑j∈J
yij = 1 ∀i ∈ I∑i∈I
yij ≤ |I |xj ∀j ∈ J (1)
OR yij ≤ xj ∀i ∈ I , j ∈ J (2)
Which formulation is to be preferred?
I = J = 40. Costs random.
Formulation 1. 53,121 seconds, optimal solution.Formulation 2. 2 seconds, optimal solution.
72 / 160
![Page 73: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/73.jpg)
UFL: Uncapacitated Facility LocationFacilities: J
Customers: Imin
∑j∈J
fjxj +∑i∈I
∑j∈J
fijyij
∑j∈J
yij = 1 ∀i ∈ I∑i∈I
yij ≤ |I |xj ∀j ∈ J (1)
OR yij ≤ xj ∀i ∈ I , j ∈ J (2)
Which formulation is to be preferred?
I = J = 40. Costs random.
Formulation 1. 53,121 seconds, optimal solution.Formulation 2. 2 seconds, optimal solution.
73 / 160
![Page 74: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/74.jpg)
UFL: Uncapacitated Facility LocationFacilities: J
Customers: Imin
∑j∈J
fjxj +∑i∈I
∑j∈J
fijyij
∑j∈J
yij = 1 ∀i ∈ I∑i∈I
yij ≤ |I |xj ∀j ∈ J (1)
OR yij ≤ xj ∀i ∈ I , j ∈ J (2)
Which formulation is to be preferred?
I = J = 40. Costs random.
Formulation 1. 53,121 seconds, optimal solution.Formulation 2. 2 seconds, optimal solution.
74 / 160
![Page 75: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/75.jpg)
UFL: Uncapacitated Facility LocationFacilities: J
Customers: Imin
∑j∈J
fjxj +∑i∈I
∑j∈J
fijyij
∑j∈J
yij = 1 ∀i ∈ I∑i∈I
yij ≤ |I |xj ∀j ∈ J (1)
OR yij ≤ xj ∀i ∈ I , j ∈ J (2)
Which formulation is to be preferred?
I = J = 40. Costs random.
Formulation 1. 53,121 seconds, optimal solution.Formulation 2. 2 seconds, optimal solution.
75 / 160
![Page 76: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/76.jpg)
Valid Inequalities
Sometimes we can get a better formulation by dynamicallyimproving it.
An inequality πT x ≤ π0 is a valid inequality for S ifπT x ≤ π0 ∀x ∈ S
Alternatively: maxx∈SπT x ≤ π0
Thm: (Hahn-Banach). Let S ⊂ Rn bea closed, convex set, and let x 6∈ S .Then there exists π ∈ Rn such that
πT x > maxx∈SπT x S
xπTx = π0
76 / 160
![Page 77: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/77.jpg)
Valid Inequalities
Sometimes we can get a better formulation by dynamicallyimproving it.
An inequality πT x ≤ π0 is a valid inequality for S ifπT x ≤ π0 ∀x ∈ S
Alternatively: maxx∈SπT x ≤ π0
Thm: (Hahn-Banach). Let S ⊂ Rn bea closed, convex set, and let x 6∈ S .Then there exists π ∈ Rn such that
πT x > maxx∈SπT x S
xπTx = π0
77 / 160
![Page 78: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/78.jpg)
Nonlinear Branch-and-Cut
Consider MINLPminimize
x ,yf Tx x + f Ty y
subject to c(x , y) ≤ 0y ∈ 0, 1p, 0 ≤ x ≤ U
Note the Linear objective
This is WLOG:
min f (x , y) ⇔ min η s.t. η ≥ f (x , y)
78 / 160
![Page 79: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/79.jpg)
It’s Actually Important!
We want to approximate the convex hull of integer solutions, butwithout a linear objective function, the solution to the relaxationmight occur in the interior.
No Separating Hyperplane! :-(
min(y1 − 1/2)2 + (y2 − 1/2)2
s.t. y1 ∈ 0, 1, y2 ∈ 0, 1
η ≥ (y1 − 1/2)2 + (y2 − 1/2)2
y1
y2
(y1, y2)
79 / 160
![Page 80: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/80.jpg)
It’s Actually Important!
We want to approximate the convex hull of integer solutions, butwithout a linear objective function, the solution to the relaxationmight occur in the interior.
No Separating Hyperplane! :-(
min(y1 − 1/2)2 + (y2 − 1/2)2
s.t. y1 ∈ 0, 1, y2 ∈ 0, 1
η ≥ (y1 − 1/2)2 + (y2 − 1/2)2
y1
y2
(y1, y2)
η
80 / 160
![Page 81: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/81.jpg)
Valid Inequalities From Relaxations
Idea: Inequalities valid for a relaxation are valid for original
Generating valid inequalities for a relaxation is often easier.
T
Sx
πTx
=π
0
Separation Problem over T:Given x ,T find (π, π0) suchthat πT x > π0,πT x ≤ π0∀x ∈ T
81 / 160
![Page 82: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/82.jpg)
Simple Relaxations
Idea: Consider one row relaxations
If P = x ∈ 0, 1n | Ax ≤ b, then for any row i ,Pi = x ∈ 0, 1n | aTi x ≤ bi is a relaxation of P.
If the intersection of the relaxations is a good approximation to thetrue problem, then the inequalities will be quite useful.
Crowder et al. (1983) is the seminal paper that shows this to be truefor IP.
MINLP: Single (linear) row relaxations are also valid ⇒ sameinequalities can also be used
82 / 160
![Page 83: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/83.jpg)
Simple Relaxations
Idea: Consider one row relaxations
If P = x ∈ 0, 1n | Ax ≤ b, then for any row i ,Pi = x ∈ 0, 1n | aTi x ≤ bi is a relaxation of P.
If the intersection of the relaxations is a good approximation to thetrue problem, then the inequalities will be quite useful.
Crowder et al. (1983) is the seminal paper that shows this to be truefor IP.
MINLP: Single (linear) row relaxations are also valid ⇒ sameinequalities can also be used
83 / 160
![Page 84: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/84.jpg)
Simple Relaxations
Idea: Consider one row relaxations
If P = x ∈ 0, 1n | Ax ≤ b, then for any row i ,Pi = x ∈ 0, 1n | aTi x ≤ bi is a relaxation of P.
If the intersection of the relaxations is a good approximation to thetrue problem, then the inequalities will be quite useful.
Crowder et al. (1983) is the seminal paper that shows this to be truefor IP.
MINLP: Single (linear) row relaxations are also valid ⇒ sameinequalities can also be used
84 / 160
![Page 85: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/85.jpg)
Simple Relaxations
Idea: Consider one row relaxations
If P = x ∈ 0, 1n | Ax ≤ b, then for any row i ,Pi = x ∈ 0, 1n | aTi x ≤ bi is a relaxation of P.
If the intersection of the relaxations is a good approximation to thetrue problem, then the inequalities will be quite useful.
Crowder et al. (1983) is the seminal paper that shows this to be truefor IP.
MINLP: Single (linear) row relaxations are also valid ⇒ sameinequalities can also be used
85 / 160
![Page 86: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/86.jpg)
Simple Relaxations
Idea: Consider one row relaxations
If P = x ∈ 0, 1n | Ax ≤ b, then for any row i ,Pi = x ∈ 0, 1n | aTi x ≤ bi is a relaxation of P.
If the intersection of the relaxations is a good approximation to thetrue problem, then the inequalities will be quite useful.
Crowder et al. (1983) is the seminal paper that shows this to be truefor IP.
MINLP: Single (linear) row relaxations are also valid ⇒ sameinequalities can also be used
86 / 160
![Page 87: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/87.jpg)
Knapsack Covers
K = x ∈ 0, 1n | aT x ≤ b
A set C ⊆ N is a cover if∑
j∈C aj > b
A cover C is a minimal cover if C \ j is not a cover ∀j ∈ C
If C ⊆ N is a cover, then the cover inequality∑j∈C
xj ≤ |C | − 1
is a valid inequality for S
Sometimes (minimal) cover inequalities are facets of conv(K )
87 / 160
![Page 88: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/88.jpg)
Knapsack Covers
K = x ∈ 0, 1n | aT x ≤ b
A set C ⊆ N is a cover if∑
j∈C aj > b
A cover C is a minimal cover if C \ j is not a cover ∀j ∈ C
If C ⊆ N is a cover, then the cover inequality∑j∈C
xj ≤ |C | − 1
is a valid inequality for S
Sometimes (minimal) cover inequalities are facets of conv(K )
88 / 160
![Page 89: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/89.jpg)
Other Substructures
Single node flow: (Padberg et al., 1985)
S =
x ∈ R|N|+ , y ∈ 0, 1|N| |∑j∈N
xj ≤ b, xj ≤ ujyj ∀ j ∈ N
Knapsack with single continuous variable: (Marchand and Wolsey,
1999)
S =
x ∈ R+, y ∈ 0, 1|N| |∑j∈N
ajyj ≤ b + x
Set Packing: (Borndorfer and Weismantel, 2000)
S =y ∈ 0, 1|N| | Ay ≤ e
A ∈ 0, 1|M|×|N|, e = (1, 1, . . . , 1)T
89 / 160
![Page 90: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/90.jpg)
The Chvatal-Gomory Procedure
A general procedure for generating valid inequalities for integerprograms
Let the columns of A ∈ Rm×n be denoted by a1, a2, . . . anS = y ∈ Zn
+ | Ay ≤ b.1 Choose nonnegative multipliers u ∈ Rm
+2 uTAy ≤ uTb is a valid inequality (
∑j∈N uTajyj ≤ uTb).
3∑
j∈NbuTajcyj ≤ uTb (Since y ≥ 0).4∑
j∈NbuTajcyj ≤ buTbc is valid for S since buTajcyj is an integer
Simply Amazing: This simple procedure suffices to generate everyvalid inequality for an integer program
90 / 160
![Page 91: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/91.jpg)
The Chvatal-Gomory Procedure
A general procedure for generating valid inequalities for integerprograms
Let the columns of A ∈ Rm×n be denoted by a1, a2, . . . anS = y ∈ Zn
+ | Ay ≤ b.1 Choose nonnegative multipliers u ∈ Rm
+2 uTAy ≤ uTb is a valid inequality (
∑j∈N uTajyj ≤ uTb).
3∑
j∈NbuTajcyj ≤ uTb (Since y ≥ 0).4∑
j∈NbuTajcyj ≤ buTbc is valid for S since buTajcyj is an integer
Simply Amazing: This simple procedure suffices to generate everyvalid inequality for an integer program
91 / 160
![Page 92: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/92.jpg)
The Chvatal-Gomory Procedure
A general procedure for generating valid inequalities for integerprograms
Let the columns of A ∈ Rm×n be denoted by a1, a2, . . . anS = y ∈ Zn
+ | Ay ≤ b.1 Choose nonnegative multipliers u ∈ Rm
+2 uTAy ≤ uTb is a valid inequality (
∑j∈N uTajyj ≤ uTb).
3∑
j∈NbuTajcyj ≤ uTb (Since y ≥ 0).4∑
j∈NbuTajcyj ≤ buTbc is valid for S since buTajcyj is an integer
Simply Amazing: This simple procedure suffices to generate everyvalid inequality for an integer program
92 / 160
![Page 93: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/93.jpg)
Extension to MINLP (Cezik and Iyengar, 2005)
This simple idea also extends to mixed 0-1 conic programmingminimizezdef= (x ,y)
f T z
subject to Az K by ∈ 0, 1p, 0 ≤ x ≤ U
K: Homogeneous, self-dual, proper, convex cone
x K y ⇔ (x − y) ∈ K
93 / 160
![Page 94: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/94.jpg)
Gomory On Cones (Cezik and Iyengar, 2005)
LP: Kl = Rn+
SOCP: Kq = (x0, x) | x0 ≥ ‖x‖SDP: Ks = x = vec(X ) | X = XT ,X p.s.d
Dual Cone: K∗ def= u | uT z ≥ 0 ∀z ∈ K
Extension is clear from the following equivalence:
Az K b ⇔ uTAz ≥ uTb ∀u K∗ 0
Many classes of nonlinear inequalities can be represented as
Ax Kq b or Ax Ks b
94 / 160
![Page 95: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/95.jpg)
Gomory On Cones (Cezik and Iyengar, 2005)
LP: Kl = Rn+
SOCP: Kq = (x0, x) | x0 ≥ ‖x‖SDP: Ks = x = vec(X ) | X = XT ,X p.s.d
Dual Cone: K∗ def= u | uT z ≥ 0 ∀z ∈ K
Extension is clear from the following equivalence:
Az K b ⇔ uTAz ≥ uTb ∀u K∗ 0
Many classes of nonlinear inequalities can be represented as
Ax Kq b or Ax Ks b
95 / 160
![Page 96: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/96.jpg)
Gomory On Cones (Cezik and Iyengar, 2005)
LP: Kl = Rn+
SOCP: Kq = (x0, x) | x0 ≥ ‖x‖SDP: Ks = x = vec(X ) | X = XT ,X p.s.d
Dual Cone: K∗ def= u | uT z ≥ 0 ∀z ∈ K
Extension is clear from the following equivalence:
Az K b ⇔ uTAz ≥ uTb ∀u K∗ 0
Many classes of nonlinear inequalities can be represented as
Ax Kq b or Ax Ks b
96 / 160
![Page 97: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/97.jpg)
Using Gomory Cuts in MINLP (Akrotirianakis et al., 2001)
LP/NLP Based Branch-and-Bound solves MILP instances:minimizezdef= (x ,y),η
η
subject to η ≥ fj +∇f Tj (z − zj) ∀yj ∈ Y k
0 ≥ cj +∇cTj (z − zj) ∀yj ∈ Y k
x ∈ X , y ∈ Y integer
Create Gomory mixed integer cuts from
η ≥ fj +∇f Tj (z − zj)
0 ≥ cj +∇cTj (z − zj)
Akrotirianakis et al. (2001) shows modest improvements
Research Question: Other cut classes?
Research Question: Exploit “outer approximation” property?
97 / 160
![Page 98: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/98.jpg)
Using Gomory Cuts in MINLP (Akrotirianakis et al., 2001)
LP/NLP Based Branch-and-Bound solves MILP instances:minimizezdef= (x ,y),η
η
subject to η ≥ fj +∇f Tj (z − zj) ∀yj ∈ Y k
0 ≥ cj +∇cTj (z − zj) ∀yj ∈ Y k
x ∈ X , y ∈ Y integer
Create Gomory mixed integer cuts from
η ≥ fj +∇f Tj (z − zj)
0 ≥ cj +∇cTj (z − zj)
Akrotirianakis et al. (2001) shows modest improvements
Research Question: Other cut classes?
Research Question: Exploit “outer approximation” property?
98 / 160
![Page 99: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/99.jpg)
Using Gomory Cuts in MINLP (Akrotirianakis et al., 2001)
LP/NLP Based Branch-and-Bound solves MILP instances:minimizezdef= (x ,y),η
η
subject to η ≥ fj +∇f Tj (z − zj) ∀yj ∈ Y k
0 ≥ cj +∇cTj (z − zj) ∀yj ∈ Y k
x ∈ X , y ∈ Y integer
Create Gomory mixed integer cuts from
η ≥ fj +∇f Tj (z − zj)
0 ≥ cj +∇cTj (z − zj)
Akrotirianakis et al. (2001) shows modest improvements
Research Question: Other cut classes?
Research Question: Exploit “outer approximation” property?
99 / 160
![Page 100: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/100.jpg)
Disjunctive Cuts for MINLP (Stubbs and Mehrotra, 1999)
Extension of Disjunctive Cuts for MILP: (Balas, 1979; Balas et al., 1993)
Continuous relaxation (zdef= (x , y))
Cdef= z |c(z) ≤ 0, 0 ≤ y ≤ 1, 0 ≤ x ≤ U
C def= conv(x ∈ C | y ∈ 0, 1p)
C0/1j
def= z ∈ C |yj = 0/1
letMj(C )def=
z = λ0u0 + λ1u1
λ0 + λ1 = 1, λ0, λ1 ≥ 0u0 ∈ C 0
j , u1 ∈ C 1j
⇒ Pj(C ) := projection of Mj(C ) onto z
y
x
continuousrelaxation
⇒ Pj(C ) = conv (C ∩ yj ∈ 0, 1) and P1...p(C ) = C
100 / 160
![Page 101: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/101.jpg)
Disjunctive Cuts for MINLP (Stubbs and Mehrotra, 1999)
Extension of Disjunctive Cuts for MILP: (Balas, 1979; Balas et al., 1993)
Continuous relaxation (zdef= (x , y))
Cdef= z |c(z) ≤ 0, 0 ≤ y ≤ 1, 0 ≤ x ≤ U
C def= conv(x ∈ C | y ∈ 0, 1p)
C0/1j
def= z ∈ C |yj = 0/1
letMj(C )def=
z = λ0u0 + λ1u1
λ0 + λ1 = 1, λ0, λ1 ≥ 0u0 ∈ C 0
j , u1 ∈ C 1j
⇒ Pj(C ) := projection of Mj(C ) onto z
y
x
convexhull
⇒ Pj(C ) = conv (C ∩ yj ∈ 0, 1) and P1...p(C ) = C
101 / 160
![Page 102: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/102.jpg)
Disjunctive Cuts for MINLP (Stubbs and Mehrotra, 1999)
Extension of Disjunctive Cuts for MILP: (Balas, 1979; Balas et al., 1993)
Continuous relaxation (zdef= (x , y))
Cdef= z |c(z) ≤ 0, 0 ≤ y ≤ 1, 0 ≤ x ≤ U
C def= conv(x ∈ C | y ∈ 0, 1p)
C0/1j
def= z ∈ C |yj = 0/1
letMj(C )def=
z = λ0u0 + λ1u1
λ0 + λ1 = 1, λ0, λ1 ≥ 0u0 ∈ C 0
j , u1 ∈ C 1j
⇒ Pj(C ) := projection of Mj(C ) onto z
y
x
integerfeasible
set
⇒ Pj(C ) = conv (C ∩ yj ∈ 0, 1) and P1...p(C ) = C
102 / 160
![Page 103: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/103.jpg)
Disjunctive Cuts: Example
minimizex ,y
x | (x − 1/2)2 + (y − 3/4)2 ≤ 1,−2 ≤ x ≤ 2, y ∈ 0, 1
C 0j C 1
j
z = (x , y)
y
xGiven z with yj 6∈ 0, 1 find separatinghyperplane
⇒
minimize
z‖z − z‖
subject to z ∈ Pj(C )
103 / 160
![Page 104: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/104.jpg)
Disjunctive Cuts ExampleC 0j C 1
j
z = (x , y)
z∗
z∗def= arg min ‖z − z‖
s.t. λ0u0 + λ1u1 = zλ0 + λ1 = 1(
−0.160
)≤ u0 ≤
(0.66
1
)(−0.47
0
)≤ u1 ≤
(1.47
1
)λ0, λ1 ≥ 0
NONCONVEX
104 / 160
![Page 105: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/105.jpg)
Disjunctive Cuts ExampleC 0j C 1
j
z = (x , y)
z∗
z∗def= arg min ‖z − z‖2
2
s.t. λ0u0 + λ1u1 = zλ0 + λ1 = 1(
−0.160
)≤ u0 ≤
(0.66
1
)(−0.47
0
)≤ u1 ≤
(1.47
1
)λ0, λ1 ≥ 0
NONCONVEX
105 / 160
![Page 106: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/106.jpg)
Disjunctive Cuts ExampleC 0j C 1
j
z = (x , y)
z∗
z∗def= arg min ‖z − z‖∞
s.t. λ0u0 + λ1u1 = zλ0 + λ1 = 1(
−0.160
)≤ u0 ≤
(0.66
1
)(−0.47
0
)≤ u1 ≤
(1.47
1
)λ0, λ1 ≥ 0
NONCONVEX
106 / 160
![Page 107: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/107.jpg)
Disjunctive Cuts ExampleC 0j C 1
j
z = (x , y)
z∗
z∗def= arg min ‖z − z‖
s.t. λ0u0 + λ1u1 = zλ0 + λ1 = 1(
−0.160
)≤ u0 ≤
(0.66
1
)(−0.47
0
)≤ u1 ≤
(1.47
1
)λ0, λ1 ≥ 0
NONCONVEX
107 / 160
![Page 108: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/108.jpg)
What to do? (Stubbs and Mehrotra, 1999)
Look at the perspective of c(z)
P(c(z), µ) = µc(z/µ)
Think of z = µz
Perspective gives a convex reformulation of Mj(C ): Mj(C ), where
C :=
(z , µ)
∣∣∣∣∣∣µci (z/µ) ≤ 00 ≤ µ ≤ 10 ≤ x ≤ µU, 0 ≤ y ≤ µ
c(0/0) = 0 ⇒ convex representation
108 / 160
![Page 109: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/109.jpg)
What to do? (Stubbs and Mehrotra, 1999)
Look at the perspective of c(z)
P(c(z), µ) = µc(z/µ)
Think of z = µz
Perspective gives a convex reformulation of Mj(C ): Mj(C ), where
C :=
(z , µ)
∣∣∣∣∣∣µci (z/µ) ≤ 00 ≤ µ ≤ 10 ≤ x ≤ µU, 0 ≤ y ≤ µ
c(0/0) = 0 ⇒ convex representation
109 / 160
![Page 110: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/110.jpg)
Disjunctive Cuts Example
C =
x
yµ
∣∣∣∣∣∣∣∣µ[(x/µ− 1/2)2 + (y/µ− 3/4)2 − 1
]≤ 0
−2µ ≤ x ≤ 2µ0 ≤ y ≤ µ0 ≤ µ ≤ 1
C 0j C 1
j y
x
µ
C 0j
C 1jy
x
µ
C 0j
C 1j
y
x
µ
110 / 160
![Page 111: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/111.jpg)
Example, cont.
C 0j = (z , µ) | yj = 0 C 1
j = (z , µ) | yj = µ
Take v0 ← µ0u0 v1 ← µ1u1
min ‖z − z‖
s.t. v0 + v1 = zµ0 + µ1 = 1(v0, µ0) ∈ C 0
j
(v1, µ1) ∈ C 1j
µ0, µ1 ≥ 0
Solution to example:(x∗
y∗
)=
(−0.4010.780
)
separating hyperplane: ψT (z − z), where ψ ∈ ∂‖z − z‖
111 / 160
![Page 112: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/112.jpg)
Example, cont.
C 0j = (z , µ) | yj = 0 C 1
j = (z , µ) | yj = µ
Take v0 ← µ0u0 v1 ← µ1u1
min ‖z − z‖
s.t. v0 + v1 = zµ0 + µ1 = 1(v0, µ0) ∈ C 0
j
(v1, µ1) ∈ C 1j
µ0, µ1 ≥ 0
Solution to example:(x∗
y∗
)=
(−0.4010.780
)
separating hyperplane: ψT (z − z), where ψ ∈ ∂‖z − z‖
112 / 160
![Page 113: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/113.jpg)
Example, Cont.C 0j C 1
j
z = (x , y)
z∗
0.198x + 0.061y = −0.032
ψ =
(2x∗ + 0.5
2y∗ − 0.75
)0.198x + 0.061y ≥ −0.032
113 / 160
![Page 114: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/114.jpg)
Nonlinear Branch-and-Cut (Stubbs and Mehrotra, 1999)
Can do this at all nodes of the branch-and-bound tree
Generalize disjunctive approach from MILP
solve one convex NLP per cut
Generalizes Sherali and Adams (1990) and Lovasz and Schrijver(1991)
tighten cuts by adding semi-definite constraint
Stubbs and Mehrohtra (2002) also show how to generate convexquadratic inequalities, but computational results are not thatpromising
114 / 160
![Page 115: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/115.jpg)
Generalized Disjunctive Programming (Raman and Grossmann,
1994; Lee and Grossmann, 2000)
Consider disjunctive NLP
minimizex ,Y
∑fi + f (x)
subject to
Yi
ci (x) ≤ 0fi = γi
∨ ¬Yi
Bix = 0fi = 0
∀i ∈ I
0 ≤ x ≤ U, Ω(Y ) = true, Y ∈ true, falsep
Application: process synthesis• Yi represents presence/absence of units• Bix = 0 eliminates variables if unit absentExploit disjunctive structure• special branching ... OA/GBD algorithms
115 / 160
![Page 116: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/116.jpg)
Generalized Disjunctive Programming (Raman and Grossmann,
1994; Lee and Grossmann, 2000)
Consider disjunctive NLP
minimizex ,Y
∑fi + f (x)
subject to
Yi
ci (x) ≤ 0fi = γi
∨ ¬Yi
Bix = 0fi = 0
∀i ∈ I
0 ≤ x ≤ U, Ω(Y ) = true, Y ∈ true, falsep
Big-M formulation (notoriously bad), M > 0:
ci (x) ≤ M(1− yi )−Myi ≤ Bix ≤ Myifi = yiγi Ω(Y ) converted to linear inequalities
116 / 160
![Page 117: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/117.jpg)
Generalized Disjunctive Programming (Raman and Grossmann,
1994; Lee and Grossmann, 2000)
Consider disjunctive NLP
minimizex ,Y
∑fi + f (x)
subject to
Yi
ci (x) ≤ 0fi = γi
∨ ¬Yi
Bix = 0fi = 0
∀i ∈ I
0 ≤ x ≤ U, Ω(Y ) = true, Y ∈ true, falsep
convex hull representation ...
x = vi1 + vi0, λi1 + λi0 = 1λi1ci (vi1/λi1) ≤ 0, Bivi0 = 00 ≤ vij ≤ λijU, 0 ≤ λij ≤ 1, fi = λi1γi
117 / 160
![Page 118: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/118.jpg)
Dealing with Nonconvexities
Functional nonconvexity causesserious problems.
Branch and bound must havetrue lower bound (globalsolution)
Underestimate nonconvexfunctions. Solve relaxation.Provides lower bound.
If relaxation is not exact, thenbranch
118 / 160
![Page 119: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/119.jpg)
Dealing with Nonconvexities
Functional nonconvexity causesserious problems.
Branch and bound must havetrue lower bound (globalsolution)
Underestimate nonconvexfunctions. Solve relaxation.Provides lower bound.
If relaxation is not exact, thenbranch
119 / 160
![Page 120: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/120.jpg)
Dealing with Nonconvexities
Functional nonconvexity causesserious problems.
Branch and bound must havetrue lower bound (globalsolution)
Underestimate nonconvexfunctions. Solve relaxation.Provides lower bound.
If relaxation is not exact, thenbranch
120 / 160
![Page 121: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/121.jpg)
Dealing with Nonconvex Constraints
If nonconvexity in constraints,may need to overestimate andunderestimate the function toget a convex region
121 / 160
![Page 122: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/122.jpg)
Envelopes
f : Ω→ R
Convex Envelope (vexΩ(f )):Pointwise supremum of convexunderestimators of f over Ω.
Concave Envelope (cavΩ(f )):Pointwise infimum of concaveoverestimators of f over Ω.
122 / 160
![Page 123: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/123.jpg)
Envelopes
f : Ω→ R
Convex Envelope (vexΩ(f )):Pointwise supremum of convexunderestimators of f over Ω.
Concave Envelope (cavΩ(f )):Pointwise infimum of concaveoverestimators of f over Ω.
123 / 160
![Page 124: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/124.jpg)
Branch-and-Bound Global Optimization Methods
Under/Overestimate “simple” parts of (Factorable) Functionsindividually
Bilinear TermsTrilinear TermsFractional TermsUnivariate convex/concave terms
General nonconvex functions f (x) can be underestimated over aregion [l , u] “overpowering” the function with a quadratic functionthat is ≤ 0 on the region of interest
L(x) = f (x) +n∑
i=1
αi (li − xi )(ui − xi )
Refs: (McCormick, 1976; Adjiman et al., 1998; Tawarmalani andSahinidis, 2002)
124 / 160
![Page 125: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/125.jpg)
Branch-and-Bound Global Optimization Methods
Under/Overestimate “simple” parts of (Factorable) Functionsindividually
Bilinear TermsTrilinear TermsFractional TermsUnivariate convex/concave terms
General nonconvex functions f (x) can be underestimated over aregion [l , u] “overpowering” the function with a quadratic functionthat is ≤ 0 on the region of interest
L(x) = f (x) +n∑
i=1
αi (li − xi )(ui − xi )
Refs: (McCormick, 1976; Adjiman et al., 1998; Tawarmalani andSahinidis, 2002)
125 / 160
![Page 126: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/126.jpg)
Bilinear Terms
The convex and concave envelopes of the bilinear function xy over arectangular region
Rdef= (x , y) ∈ R2 | lx ≤ x ≤ ux , ly ≤ y ≤ uy
are given by the expressions
vexxyR(x , y) = maxlyx + lxy − lx ly , uyx + uxy − uxuycavxyR(x , y) = minuyx + lxy − lxuy , lyx + uxy − ux ly
126 / 160
![Page 127: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/127.jpg)
Worth 1000 Words?xy
127 / 160
![Page 128: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/128.jpg)
Worth 1000 Words?vexR(xy)
128 / 160
![Page 129: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/129.jpg)
Worth 1000 Words?cavR(xy)
129 / 160
![Page 130: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/130.jpg)
Summary
MINLP: Good relaxations are important
Relaxations can be improved
Statically: Better formulation/preprocessingDynamically: Cutting planes
Nonconvex MINLP:
Methods exist, again based on relaxations
Tight relaxations is an active area of research
Lots of empirical questions remain
130 / 160
![Page 131: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/131.jpg)
Part IV
Implementation and Software
131 / 160
![Page 132: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/132.jpg)
Implementation and Software for MINLP
1 Special Ordered Sets
2 Implementation & Software Issues
132 / 160
![Page 133: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/133.jpg)
Special Ordered Sets of Type 1
SOS1:∑λi = 1 & at most one λi is nonzero
Example 1: d ∈ d1, . . . , dp discrete diameters
⇔ d =∑λidi and λ1, . . . , λp is SOS1
⇔ d =∑λidi and
∑λi = 1 and λi ∈ 0, 1
. . . d is convex combination with coefficients λi
Example 2: nonlinear function c(y) of single integer
⇔ y =∑
iλi and c =∑
c(i)λi and λ1, . . . , λp is SOS1
References: (Beale, 1979; Nemhauser, G.L. and Wolsey, L.A., 1988;Williams, 1993) . . .
133 / 160
![Page 134: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/134.jpg)
Special Ordered Sets of Type 1
SOS1:∑λi = 1 & at most one λi is nonzero
Branching on SOS1
1 reference row a1 < . . . < ape.g. diameters
2 fractionality: a :=∑
aiλi
3 find t : at < a ≤ at+1
4 branch: λt+1, . . . , λp = 0or λ1, . . . , λt = 0
a < at
a > at+1
134 / 160
![Page 135: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/135.jpg)
Special Ordered Sets of Type 1
SOS1:∑λi = 1 & at most one λi is nonzero
Branching on SOS1
1 reference row a1 < . . . < ape.g. diameters
2 fractionality: a :=∑
aiλi3 find t : at < a ≤ at+1
4 branch: λt+1, . . . , λp = 0or λ1, . . . , λt = 0 a < a
ta > a
t+1
135 / 160
![Page 136: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/136.jpg)
Special Ordered Sets of Type 2
SOS2:∑λi = 1 & at most two adjacent λi nonzero
Example: Approximation of nonlinear function z = z(x)
z(x)
x
breakpoints x1 < . . . < xp
function values zi = z(xi )
piece-wise linear
x =∑λixi
z =∑λizi
λ1, . . . , λp is SOS2
. . . convex combination of two breakpoints . . .
136 / 160
![Page 137: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/137.jpg)
Special Ordered Sets of Type 2
SOS2:∑λi = 1 & at most two adjacent λi nonzero
Example: Approximation of nonlinear function z = z(x)
z(x)
x
breakpoints x1 < . . . < xp
function values zi = z(xi )
piece-wise linear
x =∑λixi
z =∑λizi
λ1, . . . , λp is SOS2
. . . convex combination of two breakpoints . . .
137 / 160
![Page 138: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/138.jpg)
Special Ordered Sets of Type 2
SOS2:∑λi = 1 & at most two adjacent λi nonzero
Branching on SOS2
1 reference row a1 < . . . < ape.g. ai = xi
2 fractionality: a :=∑
aiλi
3 find t : at < a ≤ at+1
4 branch: λt+1, . . . , λp = 0or λ1, . . . , λt−1
tx > ax < a
t
138 / 160
![Page 139: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/139.jpg)
Special Ordered Sets of Type 2
SOS2:∑λi = 1 & at most two adjacent λi nonzero
Branching on SOS2
1 reference row a1 < . . . < ape.g. ai = xi
2 fractionality: a :=∑
aiλi3 find t : at < a ≤ at+1
4 branch: λt+1, . . . , λp = 0or λ1, . . . , λt−1 t
x > ax < at
139 / 160
![Page 140: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/140.jpg)
Special Ordered Sets of Type 3
Example: Approximation of 2D function u = g(v ,w)
Triangularization of [vL, vU ]× [wL,wU ] domain
1 vL = v1 < . . . < vk = vU2 wL = w1 < . . . < wl = wU
3 function uij := g(vi ,wj)
4 λij weight of vertex (i , j)
v =∑λijvi
w =∑λijwj
u =∑λijuij
1 =∑λij is SOS3 . . .
140 / 160
![Page 141: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/141.jpg)
Special Ordered Sets of Type 3
Example: Approximation of 2D function u = g(v ,w)
Triangularization of [vL, vU ]× [wL,wU ] domain
1 vL = v1 < . . . < vk = vU2 wL = w1 < . . . < wl = wU
3 function uij := g(vi ,wj)
4 λij weight of vertex (i , j)
v =∑λijvi
w =∑λijwj
u =∑λijuij
v
w
1 =∑λij is SOS3 . . .
141 / 160
![Page 142: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/142.jpg)
Special Ordered Sets of Type 3
Example: Approximation of 2D function u = g(v ,w)
Triangularization of [vL, vU ]× [wL,wU ] domain
1 vL = v1 < . . . < vk = vU2 wL = w1 < . . . < wl = wU
3 function uij := g(vi ,wj)
4 λij weight of vertex (i , j)
v =∑λijvi
w =∑λijwj
u =∑λijuij
v
w
1 =∑λij is SOS3 . . .
142 / 160
![Page 143: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/143.jpg)
Special Ordered Sets of Type 3
SOS3:∑λij = 1 & set condition holds
1 v =∑λijvi ... convex combinations
2 w =∑λijwj
3 u =∑λijuij
λ11, . . . , λkl satisfies set condition
⇔ ∃ trangle ∆ : (i , j) : λij > 0 ⊂ ∆ v
w
violates set condn
i.e. nonzeros in single triangle ∆
143 / 160
![Page 144: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/144.jpg)
Branching on SOS3
λ violates set condition
compute centers:v =
∑λijvi &
w =∑λijwi
find s, t such thatvs ≤ v < vs+1 &ws ≤ w < ws+1
branch on v or w
v
w
violates set condn
144 / 160
![Page 145: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/145.jpg)
Branching on SOS3
λ violates set condition
compute centers:v =
∑λijvi &
w =∑λijwi
find s, t such thatvs ≤ v < vs+1 &ws ≤ w < ws+1
branch on v or w
vertical branching:∑L
λij = 1∑R
λij = 1
145 / 160
![Page 146: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/146.jpg)
Branching on SOS3
λ violates set condition
compute centers:v =
∑λijvi &
w =∑λijwi
find s, t such thatvs ≤ v < vs+1 &ws ≤ w < ws+1
branch on v or w
horizontal branching:∑T
λij = 1∑B
λij = 1
146 / 160
![Page 147: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/147.jpg)
Extension to SOS-k
Example: electricity transmission network:
c(x) = 4x1 − x22 − 0.2 · x2x4 sin(x3)
(Martin et al., 2005) extend SOS3 to SOSk models for any k⇒ function with p variables on N grid needs Np λ’s
Alternative (Gatzke, 2005):
exploit computational graph' automatic differentiation
only need SOS2 & SOS3 ...replace nonconvex parts
piece-wise polyhedral approx.
147 / 160
![Page 148: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/148.jpg)
Extension to SOS-k
Example: electricity transmission network:
c(x) = 4x1 − x22 − 0.2 · x2x4 sin(x3)
(Martin et al., 2005) extend SOS3 to SOSk models for any k⇒ function with p variables on N grid needs Np λ’s
Alternative (Gatzke, 2005):
exploit computational graph' automatic differentiation
only need SOS2 & SOS3 ...replace nonconvex parts
piece-wise polyhedral approx.
148 / 160
![Page 149: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/149.jpg)
Extension to SOS-k
Example: electricity transmission network:
c(x) = 4x1 − x22 − 0.2 · x2x4 sin(x3)
(Martin et al., 2005) extend SOS3 to SOSk models for any k⇒ function with p variables on N grid needs Np λ’s
Alternative (Gatzke, 2005):
exploit computational graph' automatic differentiation
only need SOS2 & SOS3 ...replace nonconvex parts
piece-wise polyhedral approx.
149 / 160
![Page 150: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/150.jpg)
Extension to SOS-k
Example: electricity transmission network:
c(x) = 4x1 − x22 − 0.2 · x2x4 sin(x3)
(Martin et al., 2005) extend SOS3 to SOSk models for any k⇒ function with p variables on N grid needs Np λ’s
Alternative (Gatzke, 2005):
exploit computational graph' automatic differentiation
only need SOS2 & SOS3 ...replace nonconvex parts
piece-wise polyhedral approx.
150 / 160
![Page 151: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/151.jpg)
Software for MINLP
Outer Approximation: DICOPT++ (& AIMMS)NLP solvers: CONOPT, MINOS, SNOPTMILP solvers: CPLEX, OSL2
Branch-and-Bound Solvers: SBB & MINLPNLP solvers: CONOPT, MINOS, SNOPT & FilterSQPvariable & node selection; SOS1 & SOS2 support
Global MINLP: BARON & MINOPT underestimators & branchingCPLEX, MINOS, SNOPT, OSL
Online Tools: MINLP World, MacMINLP & NEOS MINLP Worldwww.gamsworld.org/minlp/
NEOS server www-neos.mcs.anl.gov/
151 / 160
![Page 152: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/152.jpg)
COIN-OR
http://www.coin-or.org
COmputational INfrastructure for Operations Research
A library of (interoperable) software tools for optimization
A development platform for open source projects in the ORcommunity
Possibly Relevant Modules:
OSI: Open Solver InterfaceCGL: Cut Generation LibraryCLP: Coin Linear Programming ToolkitCBC: Coin Branch and CutIPOPT: Interior Point OPTimizer for NLPNLPAPI: NonLinear Programming API
152 / 160
![Page 153: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/153.jpg)
MINLP with COIN-OR
New implementation of LP/NLP based BB
MIP branch-and-cut: CBC & CGL
NLPs: IPOPT interior point ... OK for NLP(yi )
New hybrid method:
solve more NLPs at non-integer yi⇒ better outer approximationallow complete MIP at some nodes⇒ generate new integer assignment
... faster than DICOPT++, SBB
simplifies to OA and BB at extremes ... less efficient
... see Bonami et al. (2005) ... coming in 2006.
153 / 160
![Page 154: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/154.jpg)
Conclusions
MINLP rich modeling paradigm most popular solver on NEOS
Algorithms for MINLP: Branch-and-bound (branch-and-cut) Outer approximation et al.
“MINLP solvers lag 15 years behind MIP solvers”
⇒ many research opportunities!!!
154 / 160
![Page 155: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/155.jpg)
Conclusions
MINLP rich modeling paradigm most popular solver on NEOS
Algorithms for MINLP: Branch-and-bound (branch-and-cut) Outer approximation et al.
“MINLP solvers lag 15 years behind MIP solvers”
⇒ many research opportunities!!!
155 / 160
![Page 156: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/156.jpg)
Part V
References
156 / 160
![Page 157: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/157.jpg)
C. Adjiman, S. Dallwig, C. A. Floudas, and A. Neumaier. A global optimization method, aBB,for general twice-differentiable constrained NLPs - I. Theoretical advances. Computers andChemical Engineering, 22:1137–1158, 1998.
I. Akrotirianakis, I. Maros, and B. Rustem. An outer approximation based branch-and-cutalgorithm for convex 0-1 MINLP problems. Optimization Methods and Software, 16:21–47, 2001.
E. Balas. Disjunctive programming. In Annals of Discrete Mathematics 5: DiscreteOptimization, pages 3–51. North Holland, 1979.
E. Balas, S. Ceria, and G. Corneujols. A lift-and-project cutting plane algorithm for mixed 0-1programs. Mathematical Programming, 58:295–324, 1993.
E. M. L. Beale. Branch-and-bound methods for mathematical programming systems. Annalsof Discrete Mathematics, 5:201–219, 1979.
P. Bonami, L. Biegler, A. Conn, G. Cornuejols, I. Grossmann, C. Laird, J. Lee, A. Lodi,F. Margot, N. Saaya, and A. Wachter. An algorithmic framework for convex mixed integernonlinear programs. Technical report, IBM Research Division, Thomas J. Watson ResearchCenter, 2005.
B. Borchers and J. E. Mitchell. An improved branch and bound algorithm for Mixed IntegerNonlinear Programming. Computers and Operations Research, 21(4):359–367, 1994.
R. Borndorfer and R. Weismantel. Set packing relaxations of some integer programs.Mathematical Programming, 88:425 – 450, 2000.
M. T. Cezik and G. Iyengar. Cuts for mixed 0-1 conic programming. MathematicalProgramming, 2005. to appear.
H. Crowder, E. L. Johnson, and M. W. Padberg. Solving large scale zero-one linearprogramming problems. Operations Research, 31:803–834, 1983.
157 / 160
![Page 158: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/158.jpg)
D. De Wolf and Y. Smeers. The gas transmission problem solved by an extension of thesimplex algorithm. Management Science, 46:1454–1465, 2000.
M. Duran and I. E. Grossmann. An outer-approximation algorithm for a class of mixed–integernonlinear programs. Mathematical Programming, 36:307–339, 1986.
A. M. Geoffrion. Generalized Benders decomposition. Journal of Optimization Theory andApplications, 10:237–260, 1972.
I. E. Grossmann and R. W. H. Sargent. Optimal design of multipurpose batch plants.Ind. Engng. Chem. Process Des. Dev., 18:343–348, 1979.
Harjunkoski, I., Westerlund, T., Porn, R. and Skrifvars, H. Different transformations forsolving non-convex trim-loss problems by MINLP. European Journal of OpertationalResearch, 105:594–603, 1998.
Jain, V. and Grossmann, I.E. Cyclic scheduling of continuous parallel-process units withdecaying performance. AIChE Journal, 44:1623–1636, 1998.
G. R. Kocis and I. E. Grossmann. Global optimization of nonconvex mixed–integer nonlinearprogramming (MINLP) problems in process synthesis. Industrial Engineering ChemistryResearch, 27:1407–1421, 1988.
S. Lee and I. Grossmann. New algorithms for nonlinear disjunctive programming. Computersand Chemical Engineering, 24:2125–2141, 2000.
S. Leyffer. Integrating SQP and branch-and-bound for mixed integer nonlinear programming.Computational Optimization & Applications, 18:295–309, 2001.
L. Lovasz and A. Schrijver. Cones of matrices and setfunctions, and 0-1 optimization. SIAMJournal on Optimization, 1, 1991.
H. Marchand and L. Wolsey. The 0-1 knapsack problem with a single continuous variable.Mathematical Programming, 85:15–33, 1999.
158 / 160
![Page 159: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/159.jpg)
A. Martin, M. Moller, and S. Moritz. Mixed integer models for the stationary case of gasnetwork optimization. Technical report, Darmstadt University of Technology, 2005.
G. P. McCormick. Computability of global solutions to factorable nonconvex programs: PartI—Convex underestimating problems. Mathematical Programming, 10:147–175, 1976.
Nemhauser, G.L. and Wolsey, L.A. Integer and Combinatorial Optimization. John Wiley,New York, 1988.
M. Padberg, T. J. Van Roy, and L. Wolsey. Valid linear inequalities for fixed charge problems.Operations Research, 33:842–861, 1985.
I. Quesada and I. E. Grossmann. An LP/NLP based branch–and–bound algorithm for convexMINLP optimization problems. Computers and Chemical Engineering, 16:937–947, 1992.
Quist, A.J. Application of Mathematical Optimization Techniques to Nuclear ReactorReload Pattern Design. PhD thesis, Technische Universiteit Delft, Thomas StieltjesInstitute for Mathematics, The Netherlands, 2000.
R. Raman and I. E. Grossmann. Modeling and computational techniques for logic basedinteger programming. Computers and Chemical Engineering, 18:563–578, 1994.
H. D. Sherali and W. P. Adams. A hierarchy of relaxations between the continuous andconvex hull representations for zero-one programming problems. SIAM Journal on DiscreteMathematics, 3:411–430, 1990.
O. Sigmund. A 99 line topology optimization code written in matlab. StructuralMultidisciplinary Optimization, 21:120–127, 2001.
R. Stubbs and S. Mehrohtra. Generating convex polynomial inequalities for mixed 0-1programs. Journal of Global Optimization, 24:311–332, 2002.
R. A. Stubbs and S. Mehrotra. A branch–and–cut method for 0–1 mixed convexprogramming. Mathematical Programming, 86:515–532, 1999.
159 / 160
![Page 160: Mixed Integer Nonlinear Programming - UZH - ZCCFE · A Popular MINLP Method Dantzig’s Two-Phase Method for MINLP Adapted by Ley er and Linderoth 1 Convince the user that he or she](https://reader035.fdocuments.in/reader035/viewer/2022062918/5edc41a5ad6a402d6666d95d/html5/thumbnails/160.jpg)
M. Tawarmalani and N. V. Sahinidis. Convexification and Global Optimization in Continuousand Mixed-Integer Nonlinear Programming: Theory, Algorithms, Software, andApplications. Kluwer Academic Publishers, Boston MA, 2002.
J. Viswanathan and I. E. Grossmann. Optimal feed location and number of trays fordistillation columns with multiple feeds. I&EC Research, 32:2942–2949, 1993.
Westerlund, T., Isaksson, J. and Harjunkoski, I. Solving a production optimization problem inthe paper industry. Report 95–146–A, Department of Chemical Engineering, Abo Akademi,Abo, Finland, 1995.
Westerlund, T., Pettersson, F. and Grossmann, I.E. Optimization of pump configurations asMINLP problem. Computers & Chemical Engineering, 18(9):845–858, 1994.
H. P. Williams. Model Solving in Mathematical Programming. John Wiley & Sons Ltd.,Chichester, 1993.
160 / 160