Professional Documents
Culture Documents
ILP - Transp
ILP - Transp
PROGRAMMING
ANTONIO CONEJO
JUNE 1997
Integer Linear Programming
CONTENTS
1. REFERENCES
GOMORY CUTS
3. AVAILABLE SOFTWARE
2
Integer Linear Programming
REFERENCES
3
Integer Linear Programming
n
MINIMIZE c jx j
j1
n
SUBJECT TO aij x j bi i 12
, ,,m
j1
xj 0 j 12
, ,,n
4
Integer Linear Programming
POSSIBILITIES
SOLUTION METHODS
2) GOMORY CUTS
5
Integer Linear Programming
6
Integer Linear Programming
7
Integer Linear Programming
PROCEDURE
1. SET UP OF BOUNDS
2. BRANCHING STRATEGY
4. TITHING OF BOUNDS
z z z
8
Integer Linear Programming
OBSERVATIONS
9
Integer Linear Programming
BRANCHING (1/3)
IF x j IS NOT INTEGER
BRANCHING
x j a. b
xj a xj a 1
x j 3
x j 3.75
x j 4
10
Integer Linear Programming
BRANCHING (2/3)
LP 0
x j = a.b
xj a xj a+1
LP 1 LP 2
11
Integer Linear Programming
BRANCHING (3/3)
PROCEDURE
z z z
12
Integer Linear Programming
x
MINIMIZE 3 5 1
x2
1 0 4
0 2 x 12
SUBJECT TO 3 2 1 18
x2
0 1 4
x1 2
x 6 INFEASIBLE
2
13
Integer Linear Programming
-4
-12
MAXIMIZE , ,
1 2 3 4 -18
-4
1 0
0 2
SUBJECT TO , ,
1 2 3 4 3 2 3, - 5
0 1
, ,
1 2 3
4 0, 0, 0 0
1
0
2 3 1/ 2
3
FEASIBLE BUT NOT OPTIMAL
0
4
14
Integer Linear Programming
CUTTING RULES
zj z
1) INFEASIBILITY
2) INTEGRALITY
3) BOUNDS
15
Integer Linear Programming
OBSERVATION
z* - a.b
z* - a
z* a.b
z* a + 1
16
Integer Linear Programming
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
17
Integer Linear Programming
EXAMPLE (2/2)
L0
x 1 = 2.25 z* - 41.25
x 2 = 3.75
z = - 41.25
x 4 x2 3
2
L1 L2
z* - 41 x 1 = 1.8 x 1= 3
x 2= 4 x 2= 3
z = - 41 z = - 39
* z* - 39
x1 2 x1 1
L3 L4
x 1= 1
INFEASIBLE x 2= 4.44
z* - 40.55
z = - 40.55
* x 4 x2 5
2
L5 L6
x 1= 1 x 1= 0
z* - 37 x 2= 4 x 2= 5
z = - 37 z = - 40
* z* - 40
*
z* = - 40
x1* = 0
x2* = 5
18
Integer Linear Programming
19
Integer Linear Programming
20
Integer Linear Programming
21
Integer Linear Programming
EXAMPLE (1/2)
x1 0
x2 0
x3 0
x4 0
x2, x3 INTEGER
22
Integer Linear Programming
EXAMPLE (2/2)
L0
x 1= 0 , x 2= 0
z* -10
x 3= 2.5 , x 4= 1.5
z = -10
x3 2 x3 3
L1 L2
x 1 = 0 .5, x 2= 0 x 1= 0 , x 2= 0.25
z* -9.5
z* - 8.5 x 3= 2 , x 4= 0.5 x 3= 3 , x 4= 1.25
z = -8.5 z = -9.5
* x2 0 x2 1
L3 L4
x 1= 0 , x 2= 1
INFEASIBLE x 3= 4.5 , x 4= 0.5
z = -8
(z* -8)
* *
z* = -8.5
*
x1 = 0.5
*
x2 = 0
*
x3 = 2
*
x4 = 0.5
23
Integer Linear Programming
24
Integer Linear Programming
CONSTRAINTS
Ax b
xB
B N b
xN
BxB NxN b
xB B1NxN B1b
xB
I B1N B1b
xN
xB
I Y b~
xN
~
xB YxN b
25
Integer Linear Programming
~
xBi YijxNj bi (1)
~
BECAUSE xNj ARE NON BASIC, bi IS NONINTEGRAL
~
EACH Yij AND bi IS WRITTEN AS THE SUM OF AN INTEGER
AND A NONNEGATIVE FRACTION LESS THAN 1, SO
Yij Iij Fij
~ ~ ~
bi ii f i
~
SOME Fij MAY BE 0, BUT f i IS GUARANTEED TO BE
POSITIVE
OR
~ ~
xBi IijxNj i i f i FijxNj (2)
26
Integer Linear Programming
GOMORY OBSERVATION
FijxNj
~
f i FijxNj 0
OR
~
FijxNj f i 0 (3)
27
Integer Linear Programming
28
Integer Linear Programming
29
Integer Linear Programming
MODELING (1/4)
ALTERNATIVE CONSTRAINTS
a1T x b1
a T2 x b 2
THIS IS EXPRESSED AS
a1T x B1y1 b1
a T2 x B2y2 b2
y1 y2 1
y1, y2 0,1
AND
B1 SO THAT a1T x B1 b1
B2 SO THAT a T2 x B2 b2
30
Integer Linear Programming
MODELING (2/4)
DISCONTINUITY
THE FUNCTION
0 x0
f(x)
k cx x 0
IS EXPRESSED AS
f(x) ky cx
x By
x0
y 0,1
AND
B SO THAT x B
31
Integer Linear Programming
MODELING (3/4)
THE FUNCTION
x 0xa
f(x) a (x a) axb
a (b a) (x b) b x c
WHERE
, , 0
a, b, c 0
IS EXPRESSED AS
f ( x ) x 1 x 2 x 3
x x1 x 2 x 3
aw 1 x1 a
w 2 (b a) x 2 (b a)w 1
0 x 3 (c b)w 2
w1 w 2
w 1, w 2 0,1
32
Integer Linear Programming
MODELING (4/4)
PIECE-WISE LINEAR NONCONVEX FUNCTION WITH INITIAL
DISCONTINUITY
THE FUNCTION
0 0xa
f (x a) axb
f(x) 0
f0 (b a) (x b) bxc
f0 (b a) (c b) (x c) cxd
WHERE
, , 0
a, b, c, d 0
IS EXPRESSED AS
33
Integer Linear Programming
x va x1 x 2 x 3
w 1(b a) x1 (b a)v
w 2 (c b) x 2 (c b)w 1
0 x 3 (d c)w 2
v w1
w1 w 2
v, w 1 , w 2 0,1
34
Integer Linear Programming
AVAILABLE SOFTWARE
LINDO
GAMS
ZOOM
35