overview of generalized disjunctive programming · logic-based: generalized disjunctive programming...

51
Ignacio E. Grossmann Center for Advanced Process Decision-making Carnegie Mellon University Pittsburgh, PA 15213, USA Overview of Generalized Disjunctive Programming EWO Seminar January 22, 2009

Upload: others

Post on 13-Apr-2020

30 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

Ignacio E. GrossmannCenter for Advanced Process Decision-making

Carnegie Mellon University Pittsburgh, PA 15213, USA

Overview of Generalized Disjunctive Programming

EWO SeminarJanuary 22, 2009

Page 2: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

2

• EWO Problems involve Discrete/Continuous Optimization Linear/Nonlinear models0-1 and continuous decisions

• Optimization Models Mixed-Integer Linear Programming (MILP)Mixed-Integer Nonlinear Programming (MINLP)

Motivation

• OutlineModeling with GDP (LOGMIP)Solution methods (relaxations)Example supply chain with contracts for purchasesNew frontiers:

- Improved relaxations (basic steps) (Strip packing problem)- Nonconvex GDPs

Alternative approach:Logic-based: Generalized Disjunctive Programming (GDP)

Page 3: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

3

• Mixed-Integer Linear/Nonlinear Programming

Objective Function

Equality Constraints

mn yRxyxgyx hts

yxfZ

1,0,0,

0),(..),(min

∈∈

≤=

=

)(

MINLP: f(x,y) and g(x,y) – commonly assumed to be convex and boundedoften not true in practice => nonconvex

f(x,y) and g(x,y) commonly linear in y often true in practice

Inequality Constraints

MI(N)LP

MILP: f(x,y) and g(x,y) linear in x and y

Page 4: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

4

Codes MILP: Commercial : CPLEX, XPRESS, (GUROBI ?) XA, OSLOpen Source (COIN-OR) : CBC, SYMPHONY Codes MINLP: SBB GAMS simple B&B MINLP-BB (AMPL)Fletcher and Leyffer (1999)

Bonmin (COIN-OR) Bonami et al (2006) FilMINT Linderoth and Leyffer (2006)

DICOPT (GAMS) Viswanathan and Grossman (1990) AOA (AIMSS)

α−ECP Westerlund and Peterssson (1996) MINOPT Schweiger and Floudas (1998)

BARON Sahinidis et al. (1998) Global solvers Couenne (COIN-OR) Belottti et al. (2008)

Mixed-integer Nonlinear Programming

Page 5: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

5

Generalized Disjunctive Programming

Motivation

1. Facilitate modeling of discrete/continuous optimization problems through use algebraic constraints andsymbolic logic expressions

2. Improve combinatorial search effort3. Improve handling nonlinearities

Page 6: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

6

Definition of GDPRaman, R. and I.E. Grossmann, "Modeling and Computational Techniques for Logic Based IntegerProgramming," Computers and Chemical Engineering, 18, 563 (1994).

Logic-based Outer-ApproximationTurkay, M. and I.E. Grossmann, "Logic-Based MINLP Algorithms For the Optimal Synthesis ofProcess Networks," Computers and Chemical Engineering , 20, 959-978 (1996).

Convex hull nonlinear disjunctionsLee, S. and I.E. Grossmann, "New Algorithms for Nonlinear Generalized Disjunctive Programming,”Computers and Chemical Engineering, 24, pp.2125-2141 (2000).

Established relation with DPSawaya, N. and I.E. Grossmann, “Reformulations, Relaxations and Cutting Planes for Linear Generalized Disjunctive Programming,” submitted for publication Math. Prog. (2008).

Basic References

LOGMIPVecchietti, A. and I.E. Grossmann, "LOGMIP: A Disjunctive 0-1 Nonlinear Optimizer for Process Systems Models, Computers and Chemical Engineering 23, 555-565 (1999).

Page 7: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

7

Background reading

Balas E., “Disjunctive Programming and a Hierarchy of Relaxations for Discrete ContinuousOptimization Problems”, SIAM J. Alg. Disc. Meth., Vol. 6, No. 3, 1985.

Jeroslow R.G., “Logic-Based Decision Support: Mixed-Integer Model Formulation”, Annals of Discrete Mathematics, 40, North Holland (Amsterdam), 1989.

Hooker J., “Logic-based methods for optimization: combining optimization and constraintsatisfaction”, John Wiley & Sons, 2000.

Page 8: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

8

“Typical” disjunction for scheduling

Product A and Product B must be processed on same line

Sequencing decision:A before B OR B before ALet TA, TB be starting times (variables)Let pA, pB be processing times (parameters)

[ ] [ ]A A B B B AT p T T p T+ ≤ + ≤∨

Disjunction

A before B OR B before A

TA TB TB TA

Page 9: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

9

Generalized Disjunctive Programming (GDP)

( )

1

min ( )

( ) 0

( ) 0

Ω

kk

jk

jkk

k jk

nk

jk

Z c f x

s.t. r x

Y

g x k K j J

c γ

Y true

x R , c RY true, false

= +

⎡ ⎤⎢ ⎥

≤ ∈⎢ ⎥∈ ⎢ ⎥=⎣ ⎦=

∈ ∈

Objective Function

Common Constraints

Continuous Variables

Boolean Variables

Logic Propositions

OR operator

Disjunction

Fixed Charges

Constraints

Quantitative/Symbolic Optimization Model

•Raman and Grossmann (1994) (Extension Balas, 1979)

Page 10: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

10

1 2

1 2

1 2 2

3 3

1 2 1

1 2 3

2 3

1 2

min 2. .

2 0 2 05 7

1 0

0 5 0 5, 0

,j

Z c x xs t

Y Yx x x

c c

Y Yx x x

Y Y Y(Y Y )

x , x c Y true fa

= + +

⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥− + + ≤ ∨ − ≤⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥= =⎣ ⎦ ⎣ ⎦

¬⎡ ⎤ ⎡ ⎤∨⎢ ⎥ ⎢ ⎥− ≤ =⎣ ⎦ ⎣ ⎦

∧ ¬ ⇒ ¬¬ ∧

≤ ≤ ≤ ≤ ≥∈ , 1,2,3.lse j =

Small GDP Problem

Page 11: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

11

SET I /1*3/;SET J /1*2/;BINARY VARIABLES Y(I);POSITIVE VARIABLES X(J), C;VARIABLE Z;EQUATIONS EQUAT1, EQUAT2, EQUAT3, EQUAT4,

EQUAT5, EQUAT6, DUMMY, OBJECTIVE;

EQUAT1.. X('2')- X('1') + 2 =L= 0;EQUAT2.. C =E= 5;EQUAT3.. 2 - X('2') =L= 0;EQUAT4.. C =E= 7;EQUAT5.. X('1')-X('2') =L= 1;EQUAT6.. X('1') =E= 0;DUMMY.. SUM(I, Y(I)) =G= 0;OBJECTIVE.. Z =E= C + 2*X('1') + X('2');X.UP(J)=20;C.UP=7;

Input file LOGMIP (GAMS)$ONTEXT BEGIN LOGMIPDISJUNCTION D1, D2;D1 ISIF Y('1') THEN

EQUAT1;EQUAT2;

ELSIF Y('2') THENEQUAT3;EQUAT4;

ENDIF;

D2 ISIF Y('3') THEN

EQUAT5;ELSE

EQUAT6;ENDIF;Y('1') and not Y('2') -> not Y('3');Y('2') -> not Y('3') ;Y('3') -> not Y('2') ;$OFFTEXT END LOGMIPOPTION MIP=LOGMIPM;MODEL PEQUE2 /ALL/;SOLVE PEQUE2 USING MIP MINIMIZING Z;

Big-MFormulation

Page 12: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

12

LogMIP

Part of GAMS Modeling System-Disjunctions specified with IF Then ELSE statementsDISJUNCTION D1(I,K,J);D1(I,K,J)

with (L(I,K,J)) ISIF Y(I,K,J) THEN

NOCLASH1(I,K,J);ELSE

NOCLASH2(I,K,J);ENDIF;

-Logic can be specified in symbolic form (⇒, OR, AND, NOT )or special operators (ATMOST, ATLEAST, EXACTLY)

-Linear case: MILP reformulation big-M, convex hull-Nonlinear: Logic-based OA

http://www.ceride.gov.ar/logmip/

Aldo Vecchietti, INGAR

Page 13: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

13

Generalized Disjunctive Programming (GDP)

( )

1

min ( )

( ) 0

( ) 0

Ω

kk

jk

jkk

k jk

nk

jk

Z c f x

s.t. r x

Y

g x k K j J

c γ

Y true

x R , c RY true, false

= +

⎡ ⎤⎢ ⎥

≤ ∈⎢ ⎥∈ ⎢ ⎥=⎣ ⎦=

∈ ∈

Objective Function

Common Constraints

Disjunction

Fixed Charges

Continuous Variables

Boolean Variables

Logic Propositions

OR operator Constraints

Solution methods: Relaxation?

Page 14: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

14

Systematic Procedure to Derive LinearInequalities for Logic Propositions

Goal is to Convert Logical Expression intoConjunctive Normal Form (CNF): Q1 ∧ Q2 ∧ . . . ∧ Qs

where clause Qi : P1 ∨ P2 ∨ . . . ∨ Prand Pi is a literal

3. Recursively distribute or over and(P1 ∧ P2) ∨ P3 ⇔ (P1 ∨ P3) ∧ (P2 ∨ P3)

2. Move negation inward applying De Morgan’s theorem¬ (P1 ∧ P2) ⇔ ¬ P1 ∨ ¬ P2¬ (P1 ∨ P2) ⇔ ¬ P1 ∧ ¬ P2

1)1( ≥−+⇒ ∑∑∈∈

iNegiNonnegi

i yy

Linear inequality

Steps to obtain CNF (Clocksin, Melish, 1981)

1. Replace implication by disjunctionP1 ⇒ P2 ⇔ ¬ P1 ∨ P2 ¬ negation

Page 15: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

15

ExampleIf prod A or prod B implies reactor 3 or reactor 4

P1 P2 P3 P4

P1 ∨ P2 ⇒ P3 ∨ P4

1. Remove implication¬(P1 ∨ P2) ∨ (P3 ∨ P4)

2. Apply De Morgan’s(¬ P1 ∧ ¬ P2 )∨ (P3 ∨ P4)

3. Distribute OR over AND(¬ P1 ∨ P3 ∨ P4) ∧ (¬ P2 ∨ P3 ∨ P4) => CNF !

clause 1 clause 2from clause 1 from clause 21 – y1 + y3 + y4 ≥ 1 1 – y2 + y3 + y4 ≥ 1

y3 + y4 ≥ y1y3 + y4 ≥ y2

Page 16: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

16

Big-M MI(N)LP (BM)

• MINLP reformulation of GDP

min ( )

. . ( ) 0 ( ) (1 ) , ,

1,

0, 0,1

k

k

jk jkk K j J

jk jk jk k

jkj J

jk

Z f x

s t r xg x M j J k K

k K

A a x

γ λ

λ

λ

λλ

∈ ∈

= +

≤≤ − ∈ ∈

= ∈

≤≥ ∈

∑ ∑

Big-M Parameter

Logic constraints

LP/NLP Relaxation 0 1jkλ≤ ≤

Page 17: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

17

Convex Hull Formulation (CH)

• Consider Disjunction k ∈ K( ) 0

k

jk

jkj J

jk

Y

g x

c γ∈

⎡ ⎤⎢ ⎥

≤⎢ ⎥⎢ ⎥=⎢ ⎥⎣ ⎦

Theorem: Convex Hull of Disjunction k (Lee, Grossmann, 2000)Disaggregated variables ν j

λj - weights for linear combination

, 0)/(

1,0 ,1

,0

, ,|),(

kjk

jk

jkjk

jkJj

jk

kjkjk

jk

Jjjkjk

Jj

jk

Jjvg

JjUv

cvxcx

k

k

∈≤

≤<=∑

∈≤≤

∑=∑=

∈∈

λλ

λλ

λ

γλ

Convex Constraints=>

k

Convex for g(x) convex

Page 18: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

18

Remark I

kjk jkj J

A x b∈

⎡ ⎤≤⎣ ⎦∨For linear disjunctions

Convex-hull

1

0 1

k

k

jkj J

jk jk jk jk k

jkj J

jk k

x

A b j J

j J

ν

ν λ

λ

λ

=

≤ ∈

=

≤ ≤ ∈

( )jk jk jkg x A x b= −set

Balas (1985)

Page 19: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

19

Remark II

For special cases disaggregated variables can be eliminated

0Y Y

L x U x¬⎡ ⎤ ⎡ ⎤

∨⎢ ⎥ ⎢ ⎥≤ ≤ =⎣ ⎦ ⎣ ⎦Example

x0 L U

Convex hull formulation1 2

1

2 0*(1 )0,1

xL U

ν ν

λ ν λ

ν λλ

= +

≤ ≤

= −=

0,1L x Uλ λλ

≤ ≤=

Since ν2 = 0 ⇒

w-MIP representable (Raman, G, 1994)

See also John Hooker EWO SeminarTour Modeling Techniques

Page 20: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

20

Remark III

0, ( )( (0)) (0) 0 0jk jk jkif g gλ ε ε= ⇒ − = ≤

1, ((1)( ( / (1)) (0)(0) (1) ( / (1)) 0jk jk jk jk jk jkif g g gλ ν ε ν= ⇒ − = ≤

a. Exact approximation of the original constraints as ε → 0.

c. The LHS of the new constraint is convex.

b. The constraints are exact at λjk = 0 and at λjk = 1 regardless of value of ε.

Replace by:( / ) 0jk jk jk jkgλ ν λ ≤ 0 jk jkUν λ≤ ≤where

((1 ) )( ( / ((1 ) ))) (0)(1 ) 0jk jk jk jk jk jkg gε λ ε ν ε λ ε ε λ− + − + − − ≤

Furman, Sawaya & Grossmann (2009)

( / ) 0jk jk jk jkgλ ν λ ≤How to implement for zero ?jkλ

Nonlinear disjunctions

Page 21: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

21

MI(N)LP Reformulation (CH)

, 1,0 ,0 ,

, ,0)/(

, 1

, ,0

,

0)( ..

)( min

Kk JjxaA

Kk Jjg

Kk

Kk JjU

Kk x

xrts

xfZ

kjk

jk

kjk

jk

jkjk

Jjjk

kjkjk

jk

Jj

jk

Kk Jjjkjk

k

k

k

∈∈=≥≤

∈∈≤

∈=∑

∈∈≤≤

∈∑=

+∑ ∑=

∈ ∈

λλ

λλ

λ

λ

λγ

ν

ν

ν

ν

LP/NLP Relaxation 0 1jkλ≤ ≤

Page 22: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

Convex Hull vs Big-M

Proposition: The projected relaxation of (CH) onto the space of (BM) is always as tight or tighter than that of (BM) (Grossmann I.E. , S. Lee, 2003)

Trade-off: Big-M fewer vars/weaker relaxation vs Convex-Hull tighter relaxation/more vars

(CH) Relaxed Projected Feasible Region

.

(BM) Relaxed

Feasible Region

Page 23: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

23

Logic based methods

Branch and bound(Lee & Grossmann, 2000)

DecompositionOuter-Approximation

(Turkay & Grossmann, 1997)

Methods Generalized Disjunctive Programming

Convex-hull Big-M

Reformulation MI(N)LP

LP-based B&BOuter-Approximation

Extended Cutting Plane

GDP

Page 24: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

24

A Branch and Bound Algorithm for GDP

• Tree Search NLP subproblem at each node

• Solve Relaxation GDP (CRP)lower bound

CRP

+ fix a term indisjunction

CRPCRP

+ convex hullof remaining

terms

• Branching Rule Set the largest λj as 1 Dichotomy rule

• Logic inferenceCNF unit resolution (Raman & Grosmann, 1993)

• Depth first searchWhen all the terms are fixed

upper bound • Repeat Branching until ZL > ZU.

Page 25: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

25

Process Network with Fixed Charges• Türkay and Grossmann (1997)

Superstructure of the process

1

2

6

7

4

3

5 8

x1

x4

x6

x21

x19

x13

x14

x11

x7

x8

x12

x15

x9

x16 x17

x25x18

x10

x20

x23x22 x24x5

x3x2

A

B

: Unitj

Y1 ∨ Y2

Y6 ∨ Y7

Y4 ∨ Y5

C

D

F

E

Yi ∨ Yj

Specifications

Page 26: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

26

Minimum Cost: $ 68.01M/year

2

6

4

8

x1

x4

x19

x13

x14

x11

x12

x18

x20

x23 x24x5A

B

: Unitj

D

F

E

RawMaterial ProductsReactor Reactor

Optimal solution

x7

x6x10

x17

x25

x8

Page 27: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

27

Proposed BB MethodZL = 62.48

λ = [0.31,0.69,0.03,1.0,1,0,1]

ZU = 68.01 = Z*λ = [0,1,0,0,1.0,1,0,1]

Optimal Solution

ZU = 71.79λ = [0,1,1,1.0,1,0,1]

Feasible Solution

ZL = 75.01 > ZU

λ = [1,0,0.022,1.0,1,0,1]

ZL = 65.92λ = [0,1,0.022,1.0,1,0,1]

0

32

41

Fix λ2 = 1

Fix λ3 = 1 Fix λ3 = 0

Fix λ2 = 0

Stop

5 nodes vs. 17 nodes of Standard BB (lower bound = 15.08)

Proposed BB

0

ZL = 15.08 Big-M Std. BB

1 2

43

1413 5 6

812111615 7

10*9

Y4 = 0 Y4 = 1

Y6 = 0 Y6 = 1

Y8 = 0Y8 = 1

Y1 = 0 Y1 = 1

Y8 = 0 Y8 = 1

Y2 = 0 Y2 = 1 Y1 = 1

Y3 = 0 Y3 = 1

Page 28: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

28

Logic-based Outer ApproximationMain point: avoids solving MINLP in full space

Turkay, Grossmann (1997)

SDkiiDifalseYforc

xB

SDkDitrueYforc

xhxgts

xfcZ

kikk

i

kkiikk

ik

SDkk

∈≠∈=⎭⎬⎫

==

∈∈=⎭⎬⎫

=≤

+= ∑∈

,ˆ,0

0

,ˆ0)(0)(..

)(min

ˆγ (NLPD)

x ∈ Rn, ci ∈ Rm,

NLP Subproblem:(reduced)

α+= ∑k

kcZMin

(MGDP)1,...,= 0)()()()()()(..

Lxxxgxg

xxxfxftsT

T

llll

lll

⎪⎭

⎪⎬⎫

≤−∇+

−∇+≥α

SDk

cL

xxxhxh

Y

ikk

ik

Tikik

ik

Di k

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

=∈

≤−∇+∨∈

γl

lll 0)()()(

Ω (Y) = True α ∈ R, x ∈ Rn, c ∈ Rm, Y ∈ true, falsem

Master Problem:

Proceed as OA. Requires initialization several NLPs to cover all disjunctions

Redundant constraints are eliminated with falsevalues

Master problem solved with disjunctive branch and bound orwith MILP reformulation

Page 29: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

29

Process Network with Fixed Charges• Türkay and Grossmann (1997)

Superstructure of the process

1

2

6

7

4

3

5 8

x1

x4

x6

x21

x19

x13

x14

x11

x7

x8

x12

x15

x9

x16 x17

x25x18

x10

x20

x23x22 x24x5

x3x2

A

B

: Unitj

Y1 ∨ Y2

Y6 ∨ Y7

Y4 ∨ Y5

C

D

F

E

Yi ∨ Yj

Specifications

Page 30: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

30

11

22

66

77

44

33

55 88

x1

x4

x6

x21

x19

x13

x14

x11

x7

x8

x12

x15

x9

x16 x17

x25x18

x10

x20

x23x22 x24x5

x3x2

A

B

C

D

F

E

NLP1 = 73.7

11

22

66

77

44

33

55 88

x1

x4

x6

x21

x19

x13

x14

x11

x7

x8

x12

x15

x9

x16 x17

x25x18

x10

x20

x23x22 x24x5

x3x2

A

B

C

D

F

E

NLP2 = 103.6

11

22

66

77

44

33

55 88

x1

x4

x6

x21

x19

x13

x14

x11

x7

x8

x12

x15

x9

x16 x17

x25x18

x10

x20

x23x22 x24x5

x3x2

A

B

C

D

F

E

NLP3 = 133.8 MIP = 67.9Lower bound

LOGMIP- Logic Based OA

11

22

66

77

44

33

55 88

x1

x4

x6

x21

x19

x13

x14

x11

x7

x8

x12

x15

x9

x16 x17

x25x18

x10

x20

x23x22 x24x5

x3x2

A

B

C

D

F

E

NLP4 = 68.0

Optimum!

Page 31: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

31

1

2

5

7

9

10

11

13

14

15

17

18

19

23

25

26

27

28

29

30

3

4

6

8

12

16

20

21

22

24

31

32 32"

33

34

35

36 36"37

38

ACRYLONITRILE

ACETYLENE

PROPYLENE

NAPHTA

CUMENE

ISOPROPANOL

CHLOROBENZENE

ETHYLOBENZENE

ACETONE

STYRENE

PHENOL

ACETALDEHYDE

ETHANOL

BENZENE

ETHYLENE

ACETIC ACID

ETHYLENE

CHLOROHYDRIN

ESTERS

ACETIC ANHYDRIDE

ETHYLENE GLYCOL

VINYL ACETATE

CARBON MONOXIDE

FORMALDEHYDE

METHANOL

GLYCOLIC ACID

ACRYLONITRILE

Local marketInternational

HCN

BYPRODUCTS

ETHYLENE DICHLORIDE

LP Multiperiod PlaningModel38 processes28 chemicals10 monthsPossibility contracts:Naphtha, Ethylene,Acetylene

Example: Optimal Production Planning with Contracts

Purchases:Fixed priceDiscount after amountBulk discount after amountContracts fixed time

Park, Park, Melle, Grossmann (2006)I&EC Res., 45, 5013-5026

Page 32: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

32

Multiperiod Production Planning LP Model

i

jt jt jt jtj J t T j J t T

it ijt jt jt jt jti I j JM t T j J t T j J t T

Max PROFIT S P

W V SF

ψ φ

δ ξ θ∈ ∈ ∈ ∈

∈ ∈ ∈ ∈ ∈ ∈ ∈

= −

− − −

∑∑ ∑∑

∑ ∑ ∑ ∑∑ ∑∑

TtJMjJjIiWW iitijijijt ∈∈∈∈= ,',,'μ

TtJMjIiQW iitijt ∈∈∈≤ ,,

TtJjdSd

aPaUjtjt

Ljt

Ujtjt

Ljt

∈∈⎪⎭

⎪⎬⎫

≤≤

≤≤,

, 1 ,j j

j t ijt jt jt ijt jti O i I

V W P V W S j J t T−∈ ∈

+ + = + + ∈ ∈∑ ∑

TtJjSdSF jtU

jt jt∈∈−≥ ,

TtJjSFSF Ujtjt ∈∈≤≤ ,0

TtJjVV Ujtjt ∈∈≤ ,

, , , 0jt jt it jtS P W V ≥

Mass balance process

Capacity

Mass balance chemicals

Shortfalls

Purchases

Sales

Limit inventory

Fixed price purchases

What if prices not fixedbut given by contracts?

Page 33: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

33

. Discount after djtσ amount.

TtJRjPPCOST djt

djt

djt

djt

djt ∈∈+= ,2211 ϕϕ

TtJRj

P

P

y

P

P

y

djt

djt

djt

djt

djt

djt

djt

djt

∈∈

⎥⎥⎥⎥

⎢⎢⎢⎢

=∨

⎥⎥⎥⎥

⎢⎢⎢⎢

=

≤≤ ,

00

02

1

2

2

1

1

σσ

TtJRjPPP djt

djt

djt ∈∈+= ,21

Disjunctive modelTtJRjPPCOST d

jtdjt

djt

djt

djt ∈∈+= ,2211 ϕϕ

TtJRjPPP djt

djt

djt ∈∈+= ,21

TtJRjPPP djt

djt

djt ∈∈+= ,12111

TtJRjyP djt

djt

djt ∈∈≤≤ ,0 111 σ

TtJRjyP djt

djt

djt ∈∈= ,212 σ

TtJRjUyP djt

djt

djt ∈∈≤≤ ,0 22

TtJRjyyy djt

djt

djt ∈∈=+ ,21

1,0, 21 ∈djt

djt yy

MILP model (Convex hull)

Price drops after amount σ

Page 34: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

34

Bulk discount

TtJRj

P

PCOST

y

P

PCOST

y

bjt

bjt

bjt

bjt

bjt

bjt

bjt

bjt

bjt

bjt

bjt

bjt

∈∈

⎥⎥⎥⎥

⎢⎢⎢⎢

=∨

⎥⎥⎥⎥

⎢⎢⎢⎢

≤≤

= ,

0

2

2

1

1

σ

ϕ

σ

ϕ

Disjunctive Model

TtJRjPPCOST bjt

bjt

bjt

bjt

bjt ∈∈+= ,2211 ϕϕ

TtJRjPPP bjt

bjt

bjt ∈∈+= ,21

TtJRjyP bjt

bjt

bjt ∈∈≤≤ ,0 11 σ

TtJRjyUPy bjt

bjt

bjt

bjt

bjt ∈∈≤≤ ,222σ

TtJRjyyy bjt

bjt

bjt ∈∈=+ ,21

1,0, 21 ∈bjt

bjt yy

MILP Model (Convex Hull)

Price for total amount drops after amount σ

Page 35: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

35

Fixed-duration contracts

TtJRj

P

P

P

PCOST

PCOST

PCOST

y

P

P

PCOST

PCOST

y

P

PCOST

y

ljt

ltj

ljt

ltj

ljt

ljt

ltj

ljt

ltj

ltj

ljt

ltj

ljt

ljt

ljt

ljt

ljt

ltj

ljt

ljt

ltj

ljt

ltj

ljt

ljt

ljt

ljt

ljt

ljt

ljt

ljt

ljt

ljt

∈∈

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

=

=

=

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

=

=

⎥⎥⎥⎥

⎢⎢⎢⎢

=

+

+

++

++

+

++ ,

32,

31,

3

2,3

2,

1,3

1,

3

3

21,

2

1,2

1,

2

2

1

1

1

σ

σ

σ

ϕ

ϕ

ϕ

σ

σ

ϕ

ϕ

σ

ϕ

Disjunctive ModelTtJRjPCOST

LCp T

lptj

lpj

ljt

pt

∈∈= ∑ ∑∈ ∈

ττϕ

TtJRjPPLCp T

lptj

ljt

pt

∈∈= ∑ ∑∈ ∈

τ

LCpTTTTtJRjyUPy pt

plpj

lj

lptj

lpj

lpj ∈⊂∈⊂∈∈≤≤ ,,, τσ τττττ

TJRjyy lj

LCp

lpj ∈∈≤∑

τττ ,

1,0∈lpjy τ , 3,2,1=LC

MILP Model

Price gradually drops ifamount σ purchased fixednumber of months

Page 36: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

36

22,073.06100.9546,00240,6066,1602

18,085.95100.1813,41612,60601

Profit[103 $]

Time periods

CPU time [s]ConstraintsCont.

variables0-1

variablesCase

Computational Results

0

100

200

300

400

500

600

700

800

900

1000

1 2 3 4 5 6 7 8 9 10

Time periods

Qau

ntiti

es [k

ton]

fixed Ethyfixed Acetfixed Naphdiscount Ethydiscount Acetdiscount Naphbulk Ethybulk Acetbulk Naphlength Ethylength Acetlength Naph

Purchases raw materials

0

10000

20000

30000

40000

50000

60000

70000

80000

90000

PROFIT REVENUES PURCHASES OPERATION STORAGE*100 SHORTFALLS

1E5

$ Without ContractsWith Contracts

Comparison without/with contracts

Page 37: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

37

Computational Results

ILOG CPLEX Dec 1, 2008 22.9.2 LNX 7311.8080 LX3 x86/Linux Cplex 11.2.0, GAMS Link 34 MIP Presolve eliminated 44425 rows and 38571 columns. Reduced MIP has 909 rows, 1367 columns, and 3267 nonzeros. Reduced MIP has 270 binaries, 0 generals, 0 SOSs, and 0 indicators.

Implied bound cuts applied: 3 Flow cuts applied: 40 Gomory fractional cuts applied: 15 MIP Solution: 22073.060039 (959 iterations, 21 nodes)

MODEL STATISTICS BLOCKS OF EQUATIONS 47 SINGLE EQUATIONS 46,002 BLOCKS OF VARIABLES 30 SINGLE VARIABLES 40,606 NON ZERO ELEMENTS 85,033 DISCRETE VARIABLES 6,160

S O L V E S U M M A R Y MODEL MULT OBJECTIVE NPV TYPE MIP DIRECTION MAXIMIZE SOLVER CPLEX FROM LINE 878 **** SOLVER STATUS 1 NORMAL COMPLETION **** MODEL STATUS 1 OPTIMAL **** OBJECTIVE VALUE 22073.0600 RESOURCE USAGE, LIMIT 0.470 10000.000 ITERATION COUNT, LIMIT 1437 1000000

Page 38: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

38

Carnegie Mellon

1

. .

( )

, ,

jk

k

jk

k

Tk

k K

jk jk

j Jk j k

j J

L U

jk k

k

Min Z c d x

s t Bx bY

A x a k Kc

Y k K

Y Truex x xY True False j J k K

c

γ

= +

⎡ ⎤⎢ ⎥

≥ ∈⎢ ⎥⎢ ⎥=⎣ ⎦

∨ ∈

Ω =

≤ ≤∈ ∈ ∈

R k K∈

Linear Generalized Disjunctive ProgrammingLGDP Model

Objective function

Common constraints

Disjunctive constraints

Logic constraints

Boolean variables

Logical OR operator

Continuous variables

Can we obtain stronger relaxations?How to deal with Boolean and logic constraints in Disjunctive Programming?

Sawaya N.W. and Grossmann I.E. (2008)

Page 39: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

39

Carnegie Mellon

Reformulating LGDP into DisjunctiveProgramming Formulation

1

. .

( )

, ,

jk

k

jk

k

Tk

k K

jk jk

j Jk j k

j J

L U

jk k

k

Min Z c d x

s t Bx bY

A x a k Kc

Y k K

Y Truex x xY True False j J k K

c

γ

= +

⎡ ⎤⎢ ⎥

≥ ∈⎢ ⎥⎢ ⎥=⎣ ⎦

∨ ∈

Ω =

≤ ≤∈ ∈ ∈

R k K∈

LGDP

1

. . 1

1

0 1 ,

jk

k

k

Tk

k K

jk jk

j Jk j k

jkj J

L U

jk k

k

Min Z c d x

s t Bx b

A x a k Kc

k K

H hx x x

j J k K

c

λ

γ

λ

λ

λ

= +

=⎡ ⎤⎢ ⎥

≥ ∈⎢ ⎥⎢ ⎥=⎣ ⎦

= ∈

≤ ≤≤ ≤ ∈ ∈

R k K ∈

LDP => Integrality λ guaranteed

Proposition. LGDP and LDP have equivalent solutions.

Page 40: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

40

Carnegie Mellon

Equivalent Forms in DP Through Basic Steps

tt TF S

∈= ∩

,t T∈ , a polyhedron, .t

t i i ti QS P P i Q

∈= ∪ ∈

Thus the RF is:

where for

There are many forms between CNF and DNF that are equivalent

Regular Form (RF): form represented by intersection of unions of polyhedra

Proposition 1 (Theorem 2.1 in Balas (1979)). Let F be a disjunctive set in RF. Then F

can be brought to DNF by | | 1T − recursive applications of the following basic steps,

which preserve regularity:

For some , , ,r s T r s∈ ≠ bring r sS S∩ to DNF, by replacing it with:

( ).rs

rs i ti Qt Q

S P P∈∈

= ∪ ∩

⇒ as basic steps are performed tighter relaxations are obtained

Page 41: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

41

Carnegie Mellon

Illustrative Example: Hierarchy of Relaxations

1 2

1 2

1 1

2 2

0.5 01 0

0 10 1 0 1

x xx xx x

x x

− + ≥− − + ≥

= =⎡ ⎤ ⎡ ⎤∨⎢ ⎥ ⎢ ⎥≤ ≤ ≤ ≤⎣ ⎦ ⎣ ⎦

1 2 1 2

1 2 1 2

1 1

2 2

0.5 0 0.5 01 0 1 0

0 10 1 0 1

x x x xx x x x

x xx x

− + ≥ − + ≥⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥− − + ≥ − − + ≥⎢ ⎥ ⎢ ⎥∨⎢ ⎥ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥

≤ ≤ ≤ ≤⎣ ⎦ ⎣ ⎦

Application of 2 Basic Steps

Convex Hull of disjunction

Convex Hull of disjunction

1x

2x

TighterRelaxation!

LP Relaxation

Page 42: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

42

Carnegie Mellon

y

xL = ?

W

(0,0)

Set of small rectangles

ij

ji

j

(xi,yi)

j

Numerical Example:Strip-packing problem

Problem statement: Hifi (1998)Given a set of small rectangles with width Hi and length Li.Large rectangular strip of fixed width W and unknown length L.Objective is to fit small rectangles onto strip without overlap and rotation while minimizing length L of the strip.

Page 43: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

43

Carnegie Mellon

. . i i

Min ltst lt x L≥ +

1 2 3 4

, ,

ij ij ij ij

i i j j j i i i j j j i

i i i

i N

Y Y Y Yi j N i j

x L x x L x y H y y H y

x UB L

∀ ∈

⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤∨ ∨ ∨ ∀ ∈ <⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥

+ ≤ + ≤ − ≥ − ≥⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦≤ −

i i

i NH y W i N

∀ ∈

≤ ≤ ∀ ∈1 1 2 3 4

, , , , , , , , , i i ij ij ij ijlt x y Y Y Y Y True False i j N i j+∈ ∈ ∀ ∈ <R

GDP/DP Model forStrip-packing problem

Objective functionMinimize length

Disjunctive constraintsNo overlap between rectangles

Bounds on variables

Page 44: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

44

Carnegie Mellon

25 Rectangle Problem Optimal solution= 31

Original CH1,112 0-1 variables4,940 cont vars7,526 constraintsLP relaxation = 9

Strengthened1,112 0-1 variables5,783 cont vars8,232 constraintsLP relaxation = 27!

=>

31 Rectangle Problem Optimal solution= 38

Original CH2,256 0-1 variables9,716 cont vars14,911 constraintsLP relaxation = 10.64

Strengthened2,256 0-1 variables11,452 cont vars15,624 constraintsLP relaxation = 33!

=>

Page 45: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

45

Nonconvex GDP

( )

1

m in ( )

( ) 0

( ) 0

Ω

kk

jk

jkk

k jk

nk

jk

Z c f x

s.t. r x

Y

g x k K j J

c γ

Y true

x R , c RY true, fa lse

= +

⎡ ⎤⎢ ⎥

≤ ∈⎢ ⎥∈ ⎢ ⎥=⎣ ⎦=

∈ ∈

Objective Function

Common Constraints

Disjunctions

Logic Propositions

OR operator

f, g and r: nonconvex

Page 46: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

46

• Introducing convex underestimators

Convex Underestimator GDP (R)

( )

1

m in ( )

( ) 0

( ) 0

Ω

, :

kk

jk

jkk

k jk

nk

jk

j

Z c f x

s .t. r xY

g x k K J

c γ

Y tru e

x R , c RY tru e , fa lse

f r a n d g co n vex

= +

⎡ ⎤⎢ ⎥

≤ ∈⎢ ⎥⎢ ⎥=⎢ ⎥⎣ ⎦

=

∈ ∈

Convex underestimatorsBilinear: LinearMcCormick (1976), Al-Khayyal (1992)

Linear fractional: Convex nonlinearQuesada and Grossmann (1995)

Concave separable: Linear secant

Problem (R) yields a valid lower bound to Problem (GDP)

Page 47: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

47

Convex envelopesConcave function

xba

Secant g(x)

[ ( ) ( )]( ) ( ) ( )f b f ag x f a x ab a

−= + −

f(x)

Page 48: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

48

Bilinearw = xy

L U L Ux x x y y y≤ ≤ ≤ ≤

L L L L

U U U U

L U L U

U L U L

w x y y x x y

w x y y x x y

w x y y x x y

w x y y x x y

≥ + −

≥ + −

≤ + −

≤ + −

McCormick convex envelopes

For other convex envelopes/underestimators see:Tawarmalani, M. and N. V. Sahinidis, Convexification and Global Optimization in Continuous and Mixed-Integer Nonlinear Programming: Theory, Algorithms, Software, and Applications, Vol. 65, Nonconvex Optimization And Its Applications series, Kluwer Academic Publishers, Dordrecht, 2002

Page 49: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

49

Carnegie Mellon

Proposed framework to obtainstronger relaxations for nonconvex GDP

(Bilinear and Concave GDP)

The framework consists of two main phases:

1- Generate a valid Linear Generalized Disjunctive Program (LGDP) relaxation for the nonconvex GDP problem (e.g. bilinear and concave).

2- Strengthen the continuous relaxation of the LGDP obtained in phase 1 by applying a set of basic steps

(Ruiz & Grossmann, 2008)

Page 50: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

50

Carnegie Mellon

Relaxation Results

-5241-5468-5515-4640Example 5

431.90431.90400.661214.87Example 4

97858.8694925.7791671.18114384.78Example 3

6.086.085.656.31Example 2

-1.10-1.10-1.28-1.01Example 1

DNF Lower Bound

Lower Bound (Proposed

Relaxation)

Lower Bound (Lee & Grossmann

Relaxation)Global

Optimum

Remarks

-Often, it is not necessary to reach the DNF form to have good lower bounds. Note that examples 1, 2 and 4 show that the lower bound is the same as the lower bound of the DNF

-Proposed methodology leads to improvements in the lower bounds.

-The lower bound of the DNF is the best lower bound attainable for a given LGDP.

Page 51: Overview of Generalized Disjunctive Programming · Logic-based: Generalized Disjunctive Programming (GDP) 3 ... Raman, R. and I.E. Grossmann, "Modeling and Computational Techniques

51

Carnegie Mellon

Conclusions

Unified Linear GDP with Disjunctive Programming- Developed DP equivalent formulation for GDP- Numerical results have shown great improvement in lower bound

for strip packing problem

Nonconvex GDPs- Tighter lower bounds can be obtained in bilinear and concave

problems by applying basic steps

GDP modeling framework- Provides a logic-based framework for linear and nonlinear

discrete-continuous optimization- big-M and convex hull alternative formulations different relaxations- Solution methods: reformulation, branch and bound, decomposition- Numerical example of planning problem with contracts has shown

the impact of the convex hull formulation (with help of CPLEX)