Mixed Integer LP

58
INTEGER LINEAR PROGRAMMING ANTONIO J. CONEJO 2002

Transcript of Mixed Integer LP

Page 1: Mixed Integer LP

INTEGER LINEAR PROGRAMMING

ANTONIO J. CONEJO

2002

Page 2: Mixed Integer LP

CONTENTS

1) REFERENCES

2) INTEGER LINEAR PROGRAMING• PURE INTEGER LINEAR PROGRAMMING

⇒ BRANCH AND BOUND• MIXED INTEGER LINEAR PROGRAMMING

⇒ BRANCH AND BOUND⇒ GOMORY CUTS

3) AVAILABLE SOFTWARE

Page 3: Mixed Integer LP

REFERENCES

1. G.L. NEMHAUSER, L.A. WOLSEY. “INTEGER AND COMBINATORIAL OPTIMIZATION”. JOHN WILEY AND SONS. NEW YORK, 1988

2. S.P. BRADLEY, A.C. HAX, T.L. MAGNANTI. “APPLIED MATHEMATICAL PROGRAMMING”. ADDISON-WESLEY PUBLISHING COMPANY. READING, MASSACHUSETTES, 1977

Page 4: Mixed Integer LP

Antonio Conejo 4

INTEGER LINEAR PROGRAMMING (1/2)

c xj jj

n

=∑

1

MINIMIZE

SUBJECT TO a b mij jj

n

i x i=∑ = =

112, , ,K

x nj ≥ =0 12 j , , ,K

n,1,2,j some or all for Ix j K=∈

Page 5: Mixed Integer LP

INTEGER LINEAR PROGRAMMING (2/2)

POSSIBILITIES

• PURE INTEGER LINEAR PROGRAMMING• MIXED INTEGER LINEAR PROGRAMMING• 0/1 MIXED INTEGER LINEAR PROGRAMMING

SOLUTION METHODS

• BRANCH AND BOUND• GOMORY CUTS• BRANCH & CUT

Page 6: Mixed Integer LP

PURE INTEGER LINEAR PROGRAMMING

VIABRANCH AND BOUND

Page 7: Mixed Integer LP

PROCEDURE

1. SET UP OF BOUNDS

2. BRANCHING STRATEGY

3. SYSTEMATIC SOLUTION OF FURTHER CONSTRAINED LP PROBLEMS

4. TITHING OF BOUNDS

z z z< <∗

Page 8: Mixed Integer LP

OBSERVATIONS

1. AN UPPER BOUND OF THE SOLUTION (OBJECTIVE FUNCTION VALUE) OF AN INTEGER LINEAR PROGRAMMING PROBLEM IS THE LOWEST VALUE OF ANY FEASIBLE INTEGER SOLUTION ENCOUNTERED

2. A LOWER BOUND OF THE SOLUTION OF AN INTEGER LINEAR PROGRAMMING PROBLEM IS THE OPTIMAL SOLUTION OF THE ASSOCIATED LINEAR PROGRAMMING PROBLEM

Page 9: Mixed Integer LP

BRANCHING (1/3)IF IS NOT INTEGER BUT SHOULD BE

⇓BRANCHING

xj

x a bj = .

x aj ≤ x aj ≥ + 1

xxxj

j

j= ⇒

≤≥

3 7534.

Page 10: Mixed Integer LP

BRANCHING (2/3)

LP0

x = a.b j

LP 1 LP 2

xj ≤ a xj ≥ a+1

Page 11: Mixed Integer LP

BRANCHING (3/3)PROCEDURE

1. BY SYSTEMATIC BRANCHING TIGHTER BOUNDS OF THE FORM

z z z< <∗

ARE PROGRESSIVELY GENERATED2. THE BRANCHING REQUIRES THE SOLUTION OF MULTIPLE

LP'S WITH ADDITIONAL CONSTRAINTS, THEREFORE THE DUAL SIMPLEX ALGORITHM SHOULD BE USED

Page 12: Mixed Integer LP

THE PRIMAL PROBLEMWITH AN ADDITIONAL CONSTRAINT

MINIMIZE

SUBJECT TO

[ ]− −

3 5

2 x1

x

−−

− −

−−−

1 00 23 2

0 1

41218

4

1

2L L L x

x

xx

1

2

26

=

INFEASIBLE

Page 13: Mixed Integer LP

THE DUAL PROBLEMWITH AN ADDITIONAL CONSTRAINT

MAXIMIZE

SUBJECT TO [ ]

[ ]λ λ λ λ1 4, ,

41218

42 3

---

-L

[ ]λ λ λ λ1 4

1 00 23 2

0 1

3, , , - 52 3

−−

− −

≤ −L L

[ ] [ ]λ λ λ λ1 4 0, , , 0, 0 02 3 ≥λλλ

λ

1

2

3

4

03 2

1

0

=

L

L

/

FEASIBLE BUT NOT OPTIMAL

Page 14: Mixed Integer LP

CUTTING RULESIT IS NOT REQUIRED TO FURTHER SUBDIVIDE BRANCH Lj IF

1. THE LP OVER Lj IS INFEASIBLE2. THE OPTIMAL LP SOLUTION OVER Lj IS INTEGER3. THE OPTIMAL LP SOLUTION zj IS SUCH THAT

(A VALUE LARGER THAN THE CURRENT UPPER BOUND)

IT IS SAID THAT Lj IS "FATHOMED" BY1. INFEASIBILITY2. INTEGRALITY3. BOUNDS

z zj >

Page 15: Mixed Integer LP

OBSERVATION

IF ALL OBJETIVE FUNCTION COEFICIENTS ARE INTEGER AND ALL VARIABLES ARE INTEGER, THE BOUND

z* ≥ - a.b

IS EQUIVALENT TO THE BOUNDz* ≥ - a

AND THE BOUNDz* ≥ a.b

IS EQUIVALENT TO THE BOUNDz* ≥ a + 1

Page 16: Mixed Integer LP

EXAMPLE (1/2)

MINIMIZE -5 x1 -8 x2 = z

SUBJECT TO x1 + x2 ≤ 6

5 x1 +9 x2 ≤ 45

x1 ≥ 0 & INTEGER

x2 ≥ 0 & INTEGER

Page 17: Mixed Integer LP

EXAMPLE (2/2) L 0

x = 2.251

x ≥ 4 2 x ≤ 3 2

x = 3.752 z = - 41.25

z* ≥ - 41.25

L 1x = 1.8 1x = 4 2z = - 41

L 2x = 3 1x = 3 2z = - 39

x ≥ 2 1

L 3 L 4x = 1 1x = 4.44 2z = - 40.55

INFEASIBLE

* z* ≥ - 40.55

*

L 5x = 1 1x = 4 2z = - 37

L 6x = 0 1x = 5 2z = - 40

x ≤ 4 2 x ≥ 5 2

z* ≤ - 37

z* ≤ - 40 * *

z* ≤ - 39x ≤ 1 1

z* ≥ - 41

z* = - 40x*1 = 0x*2 = 5

Page 18: Mixed Integer LP

MIXED INTEGER LINEAR PROGRAMMING

VIABRANCH AND BOUND

Page 19: Mixed Integer LP

MIXED INTEGER LINEAR PROGRAMMING

JUST THE SAME THING THAT PURE INTEGER LINEAR PROGRAMMING BUT BRANCHING ONLY THOSE VARIABLES WHICH HAVE TO BE INTEGER

Page 20: Mixed Integer LP

EXAMPLE (1/2)MINIMIZE 3x1 +2x2 -10 = z

SUBJECT TO x1 -2x2 +x3 = 5/2

2x1 +x2 +x4 = 3/2

x1 ≥ 0

x2 ≥ 0

x3 ≥ 0

x4 ≥ 0x2, x3 INTEGER

Page 21: Mixed Integer LP

EXAMPLE (2/2) L 0

x = 0 ,1

x ≤ 2 3 x ≥ 3 3

x = 0 2

z = -10

z* ≥ -10

x ≤ 0 2 x ≥ 1 2

x = 2.5 , 3 x = 1.5 4

L 1x = 0 .5, 1 x = 0 2

z = -8.5

x = 2 ,3 x = 0.5 4

L 2x = 0 ,1 x = 0.252

z = -9.5

x = 3 ,3 x = 1.254z* ≤ - 8.5

L 3 L 4x = 0 ,1 x = 1 2

z = -8

x = 4.5 , 3 x = 0.5 4INFEASIBLE

*

* *

z* ≥ -9.5

(z* ≥ -8)

z* = - 8.5

x*1 = 0.5x*2 = 0x*3 = 2x*4 = 0.5

Page 22: Mixed Integer LP

MIXED INTEGER LINEAR PROGRAMMING

VIAGOMORY CUTSANTONIO J. CONEJO

2002

Page 23: Mixed Integer LP

GOMORY ALGORITHM (1/2)CONSTRAINTS

Ax b=

[ ]B NM L x

x b

B

N

=

Bx Nx bB N+ =

x B Nx B bB N+ =− −1 1

[ ]I B Nx

xb

B

N

M L− −

=1 1 B

[ ]I Yx

xb

B

N

M L

= ~

x Yx bB N+ = ~

Page 24: Mixed Integer LP

GOMORY ALGORITHM (2/2)

• SELECT xBi NONINTEGRAL, THEN(1)

BECAUSE xNj ARE NON BASIC, IS NONINTEGRAL

• EACH Yij AND IS WRITTEN AS THE SUM OF AN INTEGER AND A NONNEGATIVE FRACTION LESS THAN 1, SO

x Y x bBi ij Nj i+ =∑ ~

Y I Fij ij= +ij

~ ~ ~b i fi = +i i

~bi

~bi

Page 25: Mixed Integer LP

GOMORY ALGORITHM (2/2)

SOME Fij MAY BE 0, BUT IS GUARANTEED TO BE POSITIVE

• EQUATION (1) BECOMES

OR(2)

( )x I F x i fBi ij Nj i i+ + = +∑ ij~ ~

x I x i f F xBi Nj i i ij Nj+ − = −∑ ∑ij~ ~

~fi

Page 26: Mixed Integer LP

GOMORY OBSERVATION• IF EACH VARIABLE IS REQUIRED TO BE INTEGRAL, THE

LEFT-HAND SIDE OF (2) SHOULD BE INTEGRAL, AND AS A RESULT, THE RIGHT-HAND SIDE TOO

• EACH AND IS NONNEGATIVE, SO TOO

• THEN, THE RIGHT-HAND SIDE OF (2) IS AN INTEGER WHICH IS SMALLER THAN A POSITIVE FRACTION LESS THAN ONE; THAT IS, A NONPOSITIVE INTEGER

OR(3)

• (3) IS THE SO CALLED GOMORY CUT

F x fij Nj − ≥∑ i 0

Fij xNjF xij Nj∑

~f F xij Nj i − ≤∑ 0

~

Page 27: Mixed Integer LP

GOMORY ALGORITHM (1/2)

SELECT ONE (ANY) NONINTEGRAL BASIC VARIABLE, AND WITHOUT ASSIGNING ZERO VALUES TO THE NONBASIC VARIABLES, CONSIDER THE CONSTRAINT EQUATION REPRESENTED BY THE ROW OF THE SELECTED VARIABLE

REWRITE EACH FRACTIONAL COEFFICIENT AND CONSTANT IN THE CONSTRAINT EQUATION OBTAINED FROM STEP 1 AS THE SUM OF AN INTEGER AND A POSITIVE FRACTION BETWEEN 0 AND 1

STEP 1

STEP 2

Page 28: Mixed Integer LP

GOMORY ALGORITHM (2/2)

THEN, REWRITE THE EQUATION SO THAT THE LEFT-HAND SIDE CONTAINS ONLY TERMS WITH FRACTIONAL COEFFICIENTS AND A FRACTIONAL CONSTANT, WHILE THE RIGHT-HAND SIDE CONTAINS ONLY TERMS WITH INTEGRAL COEFFICIENTS AND AN INTEGRAL CONSTANT

REQUIRE THE LEFT-HAND SIDE OF THE REWRITTEN EQUATION TO BE NONNEGATIVE. THE RESULTING INEQUALITY IS THE NEW CONSTRAINT

STEP 3

STEP 4

Page 29: Mixed Integer LP

GOMORY CUTS EXAMPLE 1/14

CONSIDER THE PROBLEM:

RELAXED AND IN STANDARD FORM:

IN x IN, x 0 x 0 x 28 8x 7x 6 x 2x TO SUBJECT

80x120xZ MAXIMIZE

21

2

1

21

21

21

∈∈≥≥≤+≤+

+=

0x ,x ,x ,x 28 x 8x 7x 6 x x 2x TO SUBJECT

80x120xZ MAXIMIZE

4321

421

321

21

≥=++=++

+=

Page 30: Mixed Integer LP

GOMORY CUTSEXAMPLE 2/14

THE SOLUTION IS

AND

THE EQUATION ASSOCIATED TO x2 IS USED TO GENERATE A CUT:

391.11z* =

.

92

97

91

98

Y;

914

920

x

xBxb~ *

*2

*1*

=

=

==

914x

92x

97x 432 =+−

Page 31: Mixed Integer LP

GOMORY CUTSEXAMPLE 3/14

THEREFORE:

AND THE CUT

OR(1)2

5xx 43 ≥+

95f~

951

914f~i~b~

92f

920

92fiy

92f

921

97fiy

2222

22222222

21212121

=⇒+=⇔+=

=⇒+=⇔+=

=⇒+−=−⇔+=

95x

92x

920

xx

92

92

95

434

3 ≥+⇔≤

Page 32: Mixed Integer LP

GOMORY CUTSEXAMPLE 4/14

THE CUT CAN BE EXPRESSED AS A FUNCTION OF x1 AND x2

TAKING INTO ACCOUNT THAT

THE CUT BECOMES

(1)

THE FEASIBILITY REGION IS REDUCED WITHOUT ELIMINATING INTEGER SOLUTIONS

2xx 21 ≤+

214

213

8x7x28xx2x6x−−=

−−=

7

Page 33: Mixed Integer LP

GOMORY CUTSEXAMPLE 5/14

NEXT PROBLEM TO SOLVE IS

0x,x,x,x,x2

5xxx

28x8x7x6xx2xTOSUBJECT

80x120xZMAXIMIZE

54321

543

421

321

21

=−+

=++

=++

+=

THE GOMORY CUT HAS BEEN INCLUDED USING SLACK VARIABLE x5

Page 34: Mixed Integer LP

GOMORY CUTSEXAMPLE 6/14

THE SOLUTION IS

380z* =

=

=

=

921

11911

Y;

1

2525

x

x

x

Bx; *

*3

*2

*1

*

Page 35: Mixed Integer LP

GOMORY CUTSEXAMPLE 7/14

x1 IS USED TO GENERATE A NEW CUT. TAKING INTO ACCOUNT THAT 25*xb~ 11 ==

25x9

1xx 541 =−+

THEREFORE

21f~

212

25f~i~b~

98f

981

91fiy

0f011fiy

1111

12121212

11111111

=⇒+=⇔+=

=⇒+−=−⇔+=

=⇒+=⇔+=

Page 36: Mixed Integer LP

GOMORY CUTSEXAMPLE 8/14

THE CUT BECOMES

OR(2)

EXPRESSING THIS CUT AT A FUNCTION OF VARIABLES x1AND x2

21x

980

x

x)

98(0

21

55

4≥⇔≤

169x5 ≥

1655xx 21 ≤+ (2)

Page 37: Mixed Integer LP

GOMORY CUTSEXAMPLE 9/14

NEX PROBLEM TO BE SOLVED

0x,x,x,x,x,x9/16xx5/2xxx28x8x7x6xx2xTOSUBJET

80x120xz MAXIMIZE

654321

65

543

421

321

21

=−

=−+

=++

=++

+=

Page 38: Mixed Integer LP

GOMORY CUTSEXAMPLE 10/14

THE SOLUTION IS

=

=

==

921

10

11911

Y;

87

169

1649

1641

x

x

x

x

x377.5;z *

*2

*5

*4

*1

**B

Page 39: Mixed Integer LP

GOMORY CUTSEXAMPLE 11/14

USING x2 TO GENERATE A NEW CUT AND TAKING INTO ACCOUNT THAT 87/b~ 2 =

87x

92xx 632 =+−

THEN

87f~

870

87f~i~b~

92f

920

92fiy

0f011fiy

4444

42424242

41414141

=⇒+=⇔+=

=⇒+=⇔+=

=⇒+−=−⇔+=

Page 40: Mixed Integer LP

GOMORY CUTSEXAMPLE 12/14

THE CUT BECOMES

( )87x

920

xx

2/9087

66

3 ≥⇔≤

OR

1663x 6 ≥ (3)

Page 41: Mixed Integer LP

GOMORY CUTSEXAMPLE 13/14

THE LAST CUT AS A FUNCTION OF THE ORIGINAL VARIABLES BECOMES

3xx 21 ≤+

NEXT PROBLEM IS

0x,x,x,x,x,x,x63/16xx9/16xx5/2xxx28x8x7x6xx2x TO SUBJET

80x120xz MAXIMIZE

7654321

76

65

543

421

321

21

=−

=−

=−+

=++

=++

+=

Page 42: Mixed Integer LP

GOMORY CUTSEXAMPLE 14/14

THE SOLUTION IS

=

==

31663

29

7

0

x

xx

x

x

x360;z

*1

*6

*5

*4

*3

**B

THIS SOLUTION IS INTEGER AND THEREFORE IS THE OPTIMAL SOLUTION OF THE ORIGINAL PROBLEM

360z0;x3;x **2

*1 ===

Page 43: Mixed Integer LP

Antonio Conejo 43

MODELINGUSING 0/1 VARIABLES

ANTONIO J. CONEJO

2002

Page 44: Mixed Integer LP

MODELING (1/6)ALTERNATIVE CONSTRAINTS

AT LEAST ONE OF THE CONSTRAINTS BELOW SHOULD BE MET

THIS IS EXPRESSED AS

a x ba x b

T

T1 1

2 2

{ }0,1y,y1yy

byBxabyBxa

21

21

222T2

111T1

∈≤+

≤−

≤−

Page 45: Mixed Integer LP

MODELING (2/6)ALTERNATIVE CONSTRAINTS

AND

22T22

11T11

bBxa THAT SO BbBxa THAT SO B

≤−

≤−

Page 46: Mixed Integer LP

MODELING (3/6)ALTERNATIVE CONSTRAINTS

POSIBILITIES:

cba100y

010y

2

1

a. Ambas restricciones han de cumplirseb. Restricción 1 desactivada, ha de cumplirse 2c. Restricción 2 desactivada, ha de cumplirse 1

Page 47: Mixed Integer LP

MODELING (4/6)DISCONTINUITY

THE FUNCTION

IS EXPRESSED AS

AND

f xx

k cx x( ) =

=+ >

0 00

{ }

f x ky cxx Byxy

( )

,

= +≤≥

001

B SO THAT x B≤

Page 48: Mixed Integer LP

MODELING (5/6)DISCONTINUITY

1)

( )

0x,Bx

cxkxf

1y

≥≤

+=

=

2)

( ) 0)x(f

0x,0x

cxxf

0y

=

≥≤

=

=

Page 49: Mixed Integer LP

MODELING (6/6)DISCONTINUITY

f(x)

c

k

x

Page 50: Mixed Integer LP

MODELING (1/4)PIECE-WISE LINEAR NONCONVEX FUNCTION

THE FUNCTION

WHERE

f xx x aa x a a x ba b a x b b x c

( ) ( )( ) ( )

=≤ ≤

+ − < ≤+ − + − < ≤

αα βα β γ

0

cba0

0

<<<

γ<α<β<

Page 51: Mixed Integer LP

MODELING (2/4)PIECE-WISE LINEAR NONCONVEX FUNCTION

IS EXPRESSED AS

{ }

f x x x x

x x x x

aw x aw b a x b a w

x c b w

w w

w w

( )

( ) ( )( )

, ,

= + +

= + +

≤ ≤− ≤ ≤ −

≤ ≤ −

α β γ1 2 3

1 2 3

1 1

2 2 1

3 2

1 2

1 2

0

0 1

Page 52: Mixed Integer LP

MODELING (3/4)PIECE-WISE LINEAR NONCONVEX FUNCTION

cbaCase

100w2

110w1

) ( ) 1321 xxf;0x,0x,ax0a α===≤≤

) ( ) 2321 xaxf;0x,abx0,axb β+α==−≤≤=

) ( ) ( ) 3321 xabaxf,bcx0;abx,axc γ+−β+α=−≤≤−==

Page 53: Mixed Integer LP

MODELING (4/4)PIECE-WISE LINEAR NONCONVEX FUNCTION

f(x)

x1 x2 x3 x

a b c

α

β

γ

Page 54: Mixed Integer LP

MODELING (1/4)PIECE-WISE LINEAR NONCONVEX FUNCTION WITH

INITIAL DISCONTINUITY

THE FUNCTION

WHERE

≤<−γ+−β+−α+≤<−β+−α+≤<−α+

=

=

dxc)cx()bc()ab(fcxb)bx()ab(fbxa)ax(f

0x0

)x(f

0

0

0

dcba0

0

<<<<

β<α<β<

Page 55: Mixed Integer LP

MODELING (2/4)PIECE-WISE LINEAR NONCONVEX FUNCTION WITH

INITIAL DISCONTINUITYIS EXPRESSED AS

{ }

f x vf x x x

x va x x x

w b a x b a vw c b x c b w

x d c w

v ww w

v w w

( )

( ) ( )( ) ( )

( )

, , ,

= + + +

= + + +

− ≤ ≤ −− ≤ ≤ −

≤ ≤ −

≥≥

0 1 2 3

1 2 3

1 1

2 2 1

3 2

1

1 2

1 2

0

0 1

α β γ

Page 56: Mixed Integer LP

MODELING (3/4)PIECE-WISE LINEAR NONCONVEX FUNCTION WITH

INITIAL DISCONTINUITY

b0

01 110V

dcaCase100w2

110w1

) ( ) 0xf;0x;0x,0xa 321 ====

) ( ) 10321 xfxf;0x,0x,abx0b α+===−≤≤

) ( ) ( ) 20321 xabfxf;0x,bcx0,abxc β+−α+==−≤≤−=

) ( ) ( ) ( ) 30321 xbcabfxf,cdx0;bcx,abxd γ+−β+−α+=−≤≤−=−=

Page 57: Mixed Integer LP

MODELING (4/4)PIECE-WISE LINEAR NONCONVEX FUNCTION WITH

INITIAL DISCONTINUITY f(x)

x1 x2 x3 x

a b c

α

β

γ

f0

d

Page 58: Mixed Integer LP

AVAILABLE SOFTWARE

• LINDO• GAMS (CPLEX)