sawaya - minlp - Carnegie Mellon University

A useful algebraic representation of disjunctive
convex sets using the perspective function
Kevin Furman1
Nicolas Sawaya2
Ignacio Grossmann3
1ExxonMobil
Research & Engineering
2ExxonMobil Gas & Power Marketing
3Carnegie Mellon University
MINLP 2014, CMU
Motivation
•
Disjunctive convex sets arise in numerous applications
–
–
–
–
–
–
process synthesis (heat exchanger networks and reactor networks)
engineering design (truss structures and feed location in distillation columns)
planning of process networks
optimal positioning of products
financial planning
scheduling of batch and continuous multiproduct batch plants
•
Tight representation of the disjunctive convex set is sought, either to be explicitly used in
the reformulation or to be implicitly exploited through the generation of cutting planes
•
Tightest such representation involves the characterization of the convex hull of the
disjunctive convex set
–
In the most general case, can be explicitly expressed through the use of the perspective function in
higher dimensional space (extended formulation)
•
Number of challenges in using extended formulation in computation including nondifferentiability of perspective function at λ=0.
•
Goal of this work is to propose an algebraic representation of a fairly large
class of disjunctive convex sets using the perspective function that addresses
(some! of) these computational challenges.
,
Background
Convex disjunctive sets
Perspective Function
Convex Hull of Disjunctive Convex Sets
Ceria & Soares [1999] characterize the closure of the convex hull of the set F using the
perspective function (see also Stubbs & Mehrotra [1999] and Jereslow [1987])
Major computational challenge: How do we take care of non-differentiability at λ=0?
What to do?
Stubbs & Mehrotra (1999)
•
•
Do not discuss implementation of perspective relaxation in their paper.
Report numerical convergence issues when using algorithm for continuously differentiable
optimization within the context of generating disjunctive cutting planes
Ceria & Soares (1999)
Min Z  f ( x)  
 ln 
i
iI
s.t.
i gi ( i / i )  0
i  I
x
i  I

i
iI
i  I
x, ,   R n 
i  I
iI
•
s.t.
i gi ( i / i )  0
i  I
x
i  I

i
iI
 1
i  I
i  
i  I
x, ,   R n 
i  I
i
 1
i
Min Z  f ( x)
iI
Propose a log-barrier approach
o Requires the solution of many convex programs.
o Termination criteria to guarantee equivalence with original problem is not straightforward.
o No readily implemented version of the algorithm is available.
What to do? Three major strategies have been used to tackle non-differentiability:
1. If disjunctive sets have particular structure: generate explicit formulation that avoids problem
2. Generate (specialized or general) cutting planes that implicitly approximate convex hull
3. If disjunctive sets have no particular structure: generate explicit formulation and add small ε-term
to avoid division by 0
Strategy 1: Explicit formulations for special disjunctive sets
Gunluk, Linderoth (2009)
•
•
Indicator induced {0,1} MINLP
Avoid dealing directly with non-differentiability at 0 by virtue of the description of the convex hull
in original space, which is represented as (rotated) second-order cone constraints; can solve as SOCP.
Good computational results, but limited to special disjunctive sets (union of point & convex region)
Strategy 2: Implicitly approximate convex hull by using cutting planes
1) For MINLPs with semi-continuous variables
Frangioni, Gentile (2006, 2009)
Perspective reformulation (tighter relaxation)
•
•
Avoid dealing directly with perspective function by iteratively approximating it using linear “perspective cuts”
Good computational results but limited to special problems (perspective cut equivalent to generating outerapproximation to the convex hull of union of point and disjunctive convex set)
2) For (convex) split disjunctions (i.e. split disjunctions whose terms are convex sets)
Zhu & Kuno (2006)
•
•
Avoid dealing with perspective function by generating cuts from linear outer-approximation to nonlinear relaxation
Cuts can be weak -> Limited computational success on larger problems
Kilinc, Linderoth & Luedtke (2010)
•
•
Avoid dealing with perspective function by generating cuts refined by constraint generation from linear
outer-approximation to nonlinear relaxation
Cuts are strong (equal to Stubbs & Mehrotra at limit), but constraint generation can have slow convergence properties
Bonami (2011)
•
•
•
Generates lift & project cuts in 2 steps: 1) nonlinear separation problem in original space 2) linear outer-approximation
Extends Balas & Perregaard (2002) insight in generating lift & project cuts in original space to nonlinear case
Good computational results, but procedure limited only to split disjunctions
Strategy 3: ε-approximations
Lee & Grossmann (2000)
Replace
y jk g jk ( jk / y jk )  0 by ( y jk   ) g jk ( jk /( y jk   ))  0
1. The divisibility by 0 problem is avoided.
2. The new constraints are equivalent to the original constraints as ε → 0.
3. The LHS of the new constraints are convex.
Problem: When
y jk  0 and g jk (0)  0 the new constraints are infeasible.
Sawaya & Grossmann (2007)
Replace y jk g jk ( jk / y jk )  0 by:
1. ( y jk   ) g jk ( jk /( y jk   ))  max jk , jk ( g jk ( jk /( y jk   )))  0
2. ( y jk   )( g jk ( jk /( y jk   ))  g jk (0)( y jk  1))  0
1. The divisibility by 0 problem is avoided.
2. The new constraints are equivalent to the original constraints as ε → 0.
3. The LHS of the new constraints are convex.
4. When y jk  0 and g jk (0)  0 the new constraints are feasible.
Problem: When y jk  1, approximation is not exact for finite ε. In rare cases,
this may lead to different optimal solution unless ε is exceptionally small, which
causes numerical difficulties.
Our Proposal*
Furman, Sawaya & Grossmann (to be submitted)
Replace y jk g jk ( jk / y jk )  0 by:
((1   ) y jk   )( g jk ( jk /((1   ) y jk   )))   g jk (0)(1  y jk )  0
1. The divisibility by 0 problem is avoided.
2. The new constraints are equivalent to the original constraints as ε → 0.
3. The LHS of the new constraints are convex.
4. When y jk  0 and g jk (0)  0 the new constraints are feasible.
5. The new constraints are equivalent to the original constraints at yjk = 0
and at yjk = 1 regardless of the value of ε.
6. Established criteria to guarantee tightness of formulation relative to big-M.
*Appeared in Sawaya’s thesis (2006) based on personal communication from Furman (2006); also presented at ISMP (2009)
Some theoretical results
Define the disjunctive convex set F
proj(x) (eps-MIP F()) = F
-approximation is convex
Define the set: eps-rel F()
Feasible region of eps-rel F() is compact set
proj(x) (eps-MIP F()) is relaxation of F
proj(x) (eps-MIP F()) equivalent to conv(F) as  ->0
Define the set: eps-MIP F()
Define the set: proj(x) (eps-MIP F())
Application of theory to Generalized Disjunctive
Programming (GDP). What is a GDP?
Raman R. and Grossmann I.E. (1994)
Min Z 
c
k
 f (x )
(GDP)
Objective function
k K
r (x )  0
s.t.

jJ k
Y jk




g
(
x
)

0


 ck   j k 


 Y jk
jJ k
Common constraints
kK
kK
Logic constraints
(Y )  True
x L  x  xU
Y jk True, False j  J k , k  K
ck  R1
Logical OR operator
Disjunctive constraints
k  K
Boolean variables
Transformation of GDP to DP
Sawaya & Grossmann (2012) / Ruiz & Grosmmann (2012)
Min Z 
c
k
 f (x )
Min Z 
kK
 Y jk 


 g ( x)  0 
jJ k 

 ck   j k 
 Y jk

jJ k
k
r (x )  0
s.t .
kK

jJ k
kK
 
1 
jk


 g ( x)  0 
 ck   j k 



1
jk
kK
kK
jJ k
(Y )  True
H  h
x xx
x L  x  xU
Y jk True, False j  J k , k  K
0   jk  1
ck  R1
ck  R
L
 f (x )
k K
r (x)  0
s.t.
c
U
kK
Nonlinear GDP
1
j  Jk , k  K
k  K 
Nonlinear DP
Essentially, GDP problems are {0,1} indicator-induced mixed-integer programs
BIG-M MINLP REFORMULATION for GDP
Lee S. and Grossmann I.E. (2000)
Min Z 
 
jk
y jk  f ( x)
kK jJ k
r ( x)  0
s.t.
(BIG-M)
Big-M parameters
g jk ( x)  M jk (1  y jk )
j  J k , k  K
y
k  K
jk
1
jJ k
Dy  d
x,  R n  , y jk  0,1
j  J k , k  K
HULL MINLP REFORMULATION for GDP
Lee S. and Grossmann I.E. (2000)
Min Z 
 
jk
y jk  f ( x)
kK jJ k
Replace with:
((1   ) y jk   )( g jk ( jk /((1   ) y jk   )))   g jk (0)(1  y jk )  0
r ( x)  0
s.t.
y jk g jk ( jk / y jk )  0
x
(CH)

jk
j  J k , k  K
k  K
jJ k
 jk  y jkU jk
y
jk
1
j  J k , k  K
k  K
jJ k
Dy  d
x,  R n  , y jk  0,1
j  J k , k  K
GDP EXAMPLE 1:
SYNTHESIS OF PROCESS NETWORK
Problem Statement: Duran & Grossmann (1986)
- Synthesis of process network.
· Superstructure involves possible selection of processes.
· Every process has a fixed cost associated with it.
- Objective is to obtain network that minimizes cost.
x14
x2
x1
A
Raw Material
x4
1
OR
2
x19
x3
x12
x5
4
x13 E
x21
x11
OR
B
x15
x6
x8
5
3
6
x20
OR
7
x24
x22 x23
F
Products
x25
x16 x17
x9
8
C
x10
x18
D
GDP EXAMPLE 2:
RETROFIT & SYNTHESIS PLANNING PROBLEM
Problem Statement: Sawaya & Grossmann (2006)
- Simultaneous Retrofit & Synthesis of Plant
- Retrofit: Redesign of existing plant.
· Improvements such as higher yield, increased capacity, energy reduction.
- Objective is to identify modifications that maximize economic potential,
given time horizon and limited capital investments.
Increase capacity
A
Process 1
D
B
Process 2
E
No modifications
C
Process 3
Increase conversion
and capacity
Plant-wide energy reduction
GDP EXAMPLE 3:
CONSTRAINED LAYOUT
Problem statement: Sawaya &Grossmann (2006)
– Problem consists of placing non-overlapping units represented by
rectangles within the confines of certain designated areas formulated
as circular nonlinear constraints, such that the cost of connecting these
units is minimized.
y
1
3
2
x
COMPUTATIONAL EXPERIMENTS
• Computations performed using nonlinear branch-andbound (GAMS/SBB)
• 5 hour time limit on 2.4 GHz 8GB RAM Linux PC
• Time is reported in seconds
• 52 total instances
– 24 Synthesis
– 22 Retrofit Synthesis
– 6 Constrained Layout
• Used ε values ranging from 10-10 to 0.99
ROOT RELAXATION
Perspective
function used in
hull relaxation
Constrained Layout
Synthesis
Retrofit
Epsilon Avg Gap Low Gap High Gap Avg Gap Low Gap High Gap Avg Gap Low Gap High Gap
1E-10
100%
100%
100%
2%
0%
17%
6%
1%
10%
0.000001
100%
100%
100%
2%
0%
17%
4%
0%
10%
0.00001
100%
100%
100%
2%
0%
17%
4%
0%
10%
0.0001
100%
100%
100%
2%
0%
17%
4%
0%
10%
0.001
100%
100%
100%
2%
0%
17%
4%
0%
10%
0.01
100%
100%
100%
2%
0%
17%
4%
1%
10%
0.1
100%
100%
100%
2%
0%
21%
5%
2%
10%
0.5
100%
100%
100%
5%
0%
44%
12%
2%
25%
0.9
100%
100%
100%
7%
0%
66%
17%
3%
38%
0.99
100%
100%
100%
8%
0%
72%
19%
3%
40%
Big-M
100%
100%
100%
435%
19%
2608%
320%
57%
876%
• For ε of 10-10, 12 of 22 retrofit instances experienced numerical errors
in solving the root relaxation
• Clear increase in relaxation gap as ε increases for synthesis and retrofit
– Big-M is substantially worse
• Constrained layout shows no difference in relaxation between ε and
big-M
SOLVABILITY OF INSTANCES
Constrained Layout (6 instances)
Failure Type
Epsilon Numerical NLP
Time Out
1E-10
1
2
0
0.000001
0
0
0
0.00001
0
1
0
0.0001
0
0
0
0.001
0
0
0
0.01
0
0
0
0.1
0
0
0
0.5
0
0
0
0.9
0
0
0
0.99
0
0
0
Big-M
0
0
0
Total
Solved
3
6
5
6
6
6
6
6
6
6
6
Synthesis (24 instances)
Percent
Solved
50%
100%
83%
100%
100%
100%
100%
100%
100%
100%
100%
Retrofit (22 instances)
Failure Type
Epsilon Numerical NLP
Time Out
1E-10
18
0
0
0.000001
1
0
0
0.00001
0
0
0
0.0001
0
0
0
0.001
0
0
0
0.01
0
0
0
0.1
0
0
0
0.5
0
0
3
0.9
0
0
3
0.99
0
0
2
Big-M
0
0
18
•
•
Total
Solved
16
24
24
24
24
24
24
24
24
24
18
Percent
Solved
67%
100%
100%
100%
100%
100%
100%
100%
100%
100%
75%
Total
Solved
23
51
51
52
52
52
52
49
49
50
28
Percent
Solved
44%
98%
98%
100%
100%
100%
100%
94%
94%
96%
54%
Overall (52 instances)
Total
Solved
4
21
22
22
22
22
22
19
19
20
4
Percent
Solved
18%
95%
100%
100%
100%
100%
100%
86%
86%
91%
18%
Failure Type
Epsilon Numerical NLP
Time Out
1E-10
27
2
0
0.000001
1
0
0
0.00001
0
1
0
0.0001
0
0
0
0.001
0
0
0
0.01
0
0
0
0.1
0
0
0
0.5
0
0
3
0.9
0
0
3
0.99
0
0
2
Big-M
0
0
24
Using a value for ε of 10-10 has an increased instance of failures due to numerical difficulties
As ε increases and the big-M formulations tend to time-out more often
–
•
Failure Type
Epsilon Numerical NLP
Time Out
1E-10
8
0
0
0.000001
0
0
0
0.00001
0
0
0
0.0001
0
0
0
0.001
0
0
0
0.01
0
0
0
0.1
0
0
0
0.5
0
0
0
0.9
0
0
0
0.99
0
0
0
Big-M
0
0
6
most likely due to a weaker relaxation
Wide range of values for ε give good performance (from 10-4 to 10-1 )
CUMULATIVE RESULTS FOR SHARED INSTANCES
Constrained Layout
Synthesis
Retrofit
Epsilon Shared Nodes Time Nodes/Time Shared Nodes Time Nodes/Time Shared Nodes Time Nodes/Time
1E-10
3
3882750 3797
1023
16
108
8
13
4
1328
16
81
0.000001
3
4767347 5491
868
16
113
6
18
4
1265
11
117
0.00001
3
3018376 2760
1094
16
143
6
23
4
1362
10
135
0.0001
3
1797986 1467
1226
16
188
8
25
4
1252
9
143
0.001
3
2204085 1861
1184
16
190
7
27
4
1267
7
183
0.01
3
2204085 1859
1185
16
190
7
27
4
1330
7
186
0.1
3
2497305 1642
1521
16
192
7
27
4
1442
7
193
0.5
3
1424466 727
1960
16
250
8
30
4
3263
19
174
0.9
3
1799602 947
1900
16
408
11
37
4
5594
36
157
0.99
3
1579994 834
1895
16
522
14
38
4
6105
43
143
Big-M
3
382858
43
9006
16
1682571 17801
95
4
990966 1566
633
• Considering instances in which all values of ε and the big-M
formulations were solvable (within the time limit)
• Reporting cumulative number of nodes and amount of time
• As implied by relaxation results, big-M for constrained layout is faster,
but substantially slower for the other two instance sets
• For synthesis and retrofit instance sets, ε in the range of 0.1 to 0.001
appears to be best
CONCLUSIONS
•
An explicit algebraic representation of disjunctive convex sets is presented using the
perspective function
•
•
•
This reformulation avoids the implementation problems of previous attempts dealing
with perspective function formulations of nonlinear disjunctive programs
•
•
•
The proposed reformulation is general and does not depend on the particular structure of
the disjunctions
This facilitates implementation via general purpose algebraic modeling languages and/or
using general purpose solvers
Remains exact for any value of ε between 0 and 1
Wide range of values for ε (from 10-4 to 10-1 ) give good numerical performance
This reformulation can also be used within a cutting plane scheme to generate strong
cuts in original space (although separation problem in extended space)
QUESTIONS?
GDP MODEL FOR SYNTHESIS OF PROCESS NETWORK
9
Min
c
k
 aT x  0.6 log( x12  1)  0.8( x13  8) 2  0.7 exp(  x14  1)  0.5log( x15  2)
k 1
s.t.
x1  x5  x6
Objective function Minimize cost
x4  x7  x8
x10  x19  x20
Common constraints
Mass Balances
x11  x17  x18
x14  x21  x22
x9  x23  x24
x12  x25  x26
x 1  x2  x3  x4  30
x 9  x10  x11  25
x 12  x13  x14  x15  x16  20
Y1


 x  1.7 log( x  x  1) 
Y1


9
2
5



   x2  x5  x9  0 
x9  0.1  0.2 x5




x5  2 x2
c1  0






c1  2


Y2


 x  0.9 x  0.8 x 
Y2


3
7
 10

   x3  x7  x10  0 
1  x3  x7






x7  x3
c2  0




c2  1


Y3




Y3


1.5 x11  x6  x8 

   x6  x8  x11  0 
x6  x8




x11  1
c3  0






c3  9


Y4


Y4


 x  log( x  1)  0.1
23
 25
   x  x  0
23
25




x25  1
 c4  0 


c4  1.5


Y5


Y5




 x26  1.5log( x24  1)    x  x  0 
26
 24



x26  1
 c5  0 


c5  4


Y6


Y6




2
2
 ( x17  4)  ( x21  4)  12    x  x  0 
17
21




x21  1
 c6  0 


c6  3.7


Y7



2
Y7


 x13  7  1.2( x20  3) 
 x  8  ( x  3) 2    x  x  x  0 
20
20
22
 13

 22

x20  1
c7  0






c7  7.4


Y8


 x  1.2 log( x  2) 
Y8


19
 15

 x15  1  0.2 x19    x15  x19  0 




x19  1


 c8  0 


c8  6.5


Common constraints
Design Specifications
Disjunctive constraints
Process Scenarios
Nonlinearities
Y9




Y9


 x16  6  2 log( x18  1) 
 x15  1  0.2 x19    x16  x18  0 




x18  1


 c9  0 


c9  5.2


Y1  Y2  Y3
(Y1  Y2  Y3 )
Y4  Y5
Y1  Y4  Y5
Y4  Y1
Y5  Y1
Y2  Y7  Y8
Y3  Y6  Y9
Y6  Y3
Y8  Y9
Y9  Y3
(Y4  Y5 )  (Y7  Y8  Y9 )
(Y4  Y5 )  (Y7  Y8 )  (Y8  Y9 )  (Y7  Y9 )
0  x j  9, j  1...26
0  ck , Yk  (True, False), k  1...9
Logic constraints
Connect disjunctions
GDP MODEL FOR RETROFIT & SYNTHESIS PLANNING PROBLEM
 
Min
PRs t mf s t 
tT sS prod



PRs t mf s t 
tT sS raw
fc p t 
tT pP
 ec
t
tT
s  S , t  T
mf s t  DEM s t
s  S prod ,t  T
mf s t  SUPs t
s  S raw , t  T

mf s t 

mf s t 
sS n in

mf s t
n  N , t  T

mf s t  unrct p t
p  P, t  T
sS p out




Y pm t


 t

GMAs t
t
t
) ETApm 
 f s  f plmt (
GMAplmt




mf s t  CAPpm t


sS p in





s  S p out , p  P, t  T
Disjunctive constraints
Conversion/Capacity scenarios


Objective function
Maximize economic potential
Common constraints
Mass balances
sS n out
sS p in
mM
t
tT
t
mf s t  f s t MWs
s.t.
 PRSTqst   PRWTqwt
tT


W pm t


t
t
fc

FC

pm 
 p

t
 mf s CPs (Ts out t  Ts in
p  P, t  T
mM
qsk
t
k
qsk t  mf s t CPs (Ts in
t
k
 Ts out
t
)
s  S cold ,k  K , t  T
t
)
s  S hot ,k  K , t  T
k
k


X 2t


 t



t
t
t
X 1t
qsk t 
qsk t 
 rk  rk 1  qst k  qwt k 





s

S

s

S
hot
cold


t

qsk t   
t
t
 qst 
qst

qst


k
kK sScold


k K




t
t


qwt

q
t
t
t
sk 

qwt  rK 
qwt k




kK sS hot


kK



 


 




V
V2 t
 t
   t

t
t
 ec  EFC1 

 ec  EFC2 



Y1


 x  1.7 log( x  x  1) 
Y1


2
5
 9


   x2  x5  x9  0 
x9  0.1  0.2 x5






x5  2 x2
c1  0






c1  2


Y2


 x  0.9 x  0.8 x 
Y2


3
7
 10

   x3  x7  x10  0 
1  x3  x7






x7  x3
c2  0






c2  1


t
1

fc p t  ec t 
pP
Y p1 t  W p1 t

sS raw
PRs t mf s t  PRSTqst t  PRWTqwt t  INV t
p  P, t  T , m  M \ m1
X j t   X j
t  T , j  J \ j1
V j t   V1 t
t  T , j  J \ j1
X 1 t  V1 t
t  T
X j t  X j   V j t
t  T , j  J \ j1
 t
 t
 t
k  K , t  T
Disjunctive constraints
Energy reduction scenarios
t  T
Disjunctive constraints
Process Scenarios
Nonlinearities
t  T
Common constraint Investment limit
p  P, t  T
Y pm t  Y pm   W pm t
 t

Logic constraints
Connect disjunctions
GDP MODEL FOR CONSTRAINED LAYOUT
Q
Min
Objective function
Minimize Cost
 c (delx  dely )
ij
i
ij
ij
j
s.t.
delxij  xi  x j
i, j  N , i  j
delxij  x j  xi
i, j  N , i  j
delyij  yi  y j
i, j  N , i  j
delyij  y j  yi
i, j  N , i  j






Z
Z ij
Z ij

  
  
 
 xi  Li / 2  x j  L j / 2 
 x j  L j / 2  xi  Li / 2 
 yi  H i / 2  y j  H j / 2 
Warea ,i



2
2
2
 ( xi  Li / 2  xbararea )  ( yi  H i / 2  ybararea )  rarea 
 ( x  L / 2  xbar ) 2  ( y  H / 2  ybar ) 2  r 2 
i  N
area
i
i
area
area 
 i i
areaJ i
( xi  Li / 2  xbararea ) 2  ( yi  H i / 2  ybararea ) 2  rarea 2 


2
2
2
 ( xi  Li / 2  xbararea )  ( yi  H i / 2  ybararea )  rarea 
xi  UB1i
i  N
1
ij
2
3


Z 4ij

 i, j  N , i  j
 y j  H j / 2  yi  H i / 2 

xi  LB1i
i  N
yi  UB
2
yi  LB
2
i  N
i
i  N
i
delxij , delyij  R , Z , Z ij , Z ij , Z ij ,Warea ,i True, Falsei, j  N , i  j
1

1
ij
2
3
4
Common constraints
Distance Constraints
between units
Disjunctive constraints
No overlap of units
Disjunctive constraints
Circular Regions
Nonlinearities
NUMERICAL EXAMPLES
MINLP Problems obtained from CMU/IBM test library
http://egon.cheme.cmu.edu/ibm/page.htm
- Test problems were gathered from different sources or
created by the authors.
- Mainly applications from OR and Chemical Engineering.
- Over 150 (convex) problems from 9 different classes, in
GAMS and AMPL format, including:
- Synthesis of process networks
- Simultaneous retrofit and synthesis of process networks
- Design of Multi-product batch plants
- Safety layout
- Constrained layout
- Farm layout
- Water Networks