Upload
kartikdp
View
218
Download
0
Embed Size (px)
Citation preview
8/2/2019 Unit7_2011
1/28
Unit 7: Cutting Plane Algorithms
Outline
Convex hull
Valid inequality Chvatal-Gomory inequality
Gomorys fractional cutting plane algorithm Mixed integer cuts
Disjunctive inequalities
8/2/2019 Unit7_2011
2/28
2
Cutting Plane Algorithm
Denition 1 A subset of Rn
described by a nite set of linear constraints P = {x R n | Ax b}is a polyhedron .
Given a setX R n , the convex hull of X is
conv(X ) = {x | x =t
i=1
ix i , with ,
over all nite subsets {x1 , . . . , x t } of X },
where = { R t+ | ti=1 i = 1 }.
8/2/2019 Unit7_2011
3/28
3
conv(X ) is a polyhedron. The extreme points of conv(X ) all lie inX .
Consider the general linear integer program:(LIP ) min cT x
s.t . x S = {xZ n
+ | Ax b}. Problem (LIP ) is equivalent to the following lin-
ear programming problem(CONV LIP ) min cT x
s.t . x conv(S ).
8/2/2019 Unit7_2011
4/28
8/2/2019 Unit7_2011
5/28
5
Denition 2 An inequality x 0 is a valid inequality for X R n if x 0 for all x X .
Both a ix bi and a ix bi are valid inequalitiesfor S .
Two questions to answer:
How to dene and obtain useful valid inequal-ities?
How to use valid inequalities to solve integerprogram?
8/2/2019 Unit7_2011
6/28
6
For set X = {x { 0, 1}5
| 3x1 4x2 + 2 x3 3x4 + x5 2}, both x2 + x4 1 and x1 x2are valid inequalities forX .
Consider the mixed 0-1 set: X = {(x, y) : x 9999y, 0 x 5, y B 1 }. Inequality x 5yis valid.
8/2/2019 Unit7_2011
7/28
7
Consider the mixed integer set: X = {(x, y) :x 10y, 0 x 14, y Z 1+ }. Inequalityx 6 + 4y is valid.
In general, for a mixed integer set:X = {(x, y) :x Cy, 0 x b, y Z 1+ } with b not divisibleby C . Inequality x b (K y) is valid,where K = bC and = b (
bC 1)C .
8/2/2019 Unit7_2011
8/28
8
Valid inequalities for linear programming
Proposition 1 x 0 is valid for P = {xR n+ | Ax b} if and only if (i) There exist u R m+ and v R n+ such that uA v = and ub 0 , or alternatively (ii) There exists u R m+ such that uA and
ub 0 .Proof. By linear programming duality,max{x |x P } 0 if and only if min{ub | uA v =
, u R m+ , v R n+ } 0 .
8/2/2019 Unit7_2011
9/28
9
Valid inequalities for linear integer programming
A simple observation: LetX = {y Z 1 | y b}.Then the inequality y b is valid forX .
Example. Let X = P Z2
with P given by7x1 2x2 14
x2 32x1 2x2 3x R 2+
8/2/2019 Unit7_2011
10/28
10
Step 1: Combining constraints with nonnegativeweights u = ( 27 ,3763 , 0) yields
2x1 +163x2
12121
Step 2: Reducing the coefficients on the left-handside to the nearest integer gives
2x1 12121
2x1 5 x1 2
Chvatal-Gomory procedure to construct a valid in-equality for the set X = P Z n , where P ={x R n+ | Ax b}, A is an m n matrix withcolumns {a1 , a 2 , . . . , a n }:
8/2/2019 Unit7_2011
11/28
11
Step 1. For u Rm+ , the inequality
n
j =1
uT a j x j uT b
is valid forP .
Step 2. The inequalityn
j =1
uT a j x j uT b
is valid forP as x R n+ .
8/2/2019 Unit7_2011
12/28
12
Step 3. The inequalityn
j =1
uT a j x j uT b
is valid forX as x is integer.
Theorem 1 Every valid inequality for X can be obtained by applying the Chvatal-Gomory proce-dure a nite number of times.
8/2/2019 Unit7_2011
13/28
8/2/2019 Unit7_2011
14/28
14
For a given optimal basis, write the probleminto the following form:
max a00 + j NB
a0 j x j
s.t . xB i +
j NB
a ij x j = a i0 , i = 1 , . . . , m
x Z n+ ,
where NB is the set of nonbasic variables,a0 j 0 for allj NB and a i0 0 for alli = 1,. . ., m.
8/2/2019 Unit7_2011
15/28
15
If the basic optimal solutionx is not integer,select row i with a i0 not being integer. Gen-erate the Chvatal-Gomory inequality for row
i, xB i + j NB
a ij x j a i0 . (1)
Eliminating xB i from the above yields
j NB
(a ij a ij )x j a i0 a i0 .
As x j = 0 for all nonbasic variables, the aboveinequality cuts off x .
The slack variable in (1) is integer.
8/2/2019 Unit7_2011
16/28
16
Consider the following linear integer programmingproblem
z = max 4 x1 x2s.t . 7x1 2x2 + x3 = 14
x2 + x4 = 3
2x1 2x2 + x5 = 3x Z 5+
where x3 , x4 and x5 are slack variables introduced.
8/2/2019 Unit7_2011
17/28
17
Solving the linear programming relaxation gives
z = max597
47
x3 17
x4
s.t . x1 + 17
x3 + 27
x4 = 207
x2 + x4 = 3
27x3 + 107 x
4 + x5 = 237x Z 5+
8/2/2019 Unit7_2011
18/28
18
Select the rst row in which the basic variablex1 is fractional to generate a cut:
17x3 +
27x4
67 or s =
67 +
17x3 +
27x4
8/2/2019 Unit7_2011
19/28
19
Adding this cut, and the re-optimization leadsto
z = max15
2
1
2x5 3s
s.t . x1 + s = 2
x2 1
2x5 + s =
1
2x3 x5 5s = 1
x4 +1
2
x5 + 6 s =5
2x Z 5+ , s Z1+
8/2/2019 Unit7_2011
20/28
20
Select the second row in which the basic vari-able x2 is fractional to generate a cut:
12x5
12 or
12x5 + t =
12
8/2/2019 Unit7_2011
21/28
21
Adding this second cut, and the re-optimizationleads to
z = max 7 3s ts.t . x1 + s = 2
x2 + s t = 1
x3 5s 2t = 2x4 + 6 s + t = 2x5 t = 1x Z 5+ , s Z
1+ , t Z
1+ .
Integer solution Optimal solution!
8/2/2019 Unit7_2011
22/28
22
For X = P Z n
, we may need too many valid in-equalities (2n or more) to characterize conv(X ).Given a specic objective function, one is not re-
ally interested in nding the complete convex hull,but wants a good approximation to the convex hullin the neighborhood of an optimal solution.
8/2/2019 Unit7_2011
23/28
23
Cutting Plane Algorithm
Step 0. Set t = 0 and P 0 = P . Step 1. Solve the linear programming problem
z t = max {cT x | x P t }
and obtain a solution x t . Step 2. If x t Z n , stop and x t is an optimal
solution to (LIP ). Step 3. Find a valid equality,( t , t0 ), of X
that cuts off x t . Update P t +1 = P t { t x t
0} and t = t + 1. Go back to Step 1.
8/2/2019 Unit7_2011
24/28
24
Mixed Integer Cuts
Proposition 2 Let X = {(x, y) R 1+ Z 1 :x + y b} and f = b b > 0. Then inequality
x f ( b y)
is valid for X . Corollary 1 Let X = {(x, y) R 1+ Z 1 : y
b + x} and f = b b > 0. Then inequality
y b +x
1 f
is valid for X .
8/2/2019 Unit7_2011
25/28
25
Mixed Integer Rounding (MIR) Inequality
Let X MIR = {(x, y) R 1+ Z 2+ : a1 y1 + a2 y2 b + x} and b / Z 1 .
Let f = b b and f i = a i a i for i = 1 , 2.Suppose f 1 f f 2 , then
a1 y1 + ( a2 +
f 2 f 1 f )y2 b +
x
1 f is valid forX MIR .
8/2/2019 Unit7_2011
26/28
26
The Gomory Mixed Integer Cut
Let X G = {(yB u , y, x ) Z 1
Z n 1+ R
n 2+ : yB u +
j N 1 auj y j + j N 2 auj x j = au 0 }, where n i =|N i | for i = 1,2.
If au 0 / Z 1 , f j = auj auj for j N 1 N 2 andf 0 = au 0 au 0 , the Gomory mixed integer cut
f j f 0
f j y j +f j >f 0
f 0 (1 f j )1 f 0
y j +a uj > 0
a uj x j +a uj < 0
f 0
1 f 0a uj x j f 0
is valid for X G .
8/2/2019 Unit7_2011
27/28
27
Disjunctive inequalities
The set X = X 1 X 2 with X i Rn+ for i = 1 , 2is a disjunction (union) of the two sets X 1 and X 2 .
Proposition 3 If n
j =1 i
j x j i0 is valid for X i for i = 1 , 2, then the inequality
n
j =1 j x j 0
is valid for X if j min[ 1 j , 2
j ] for j = 1 , . . . , n
and 0 max[10 ,
20 ].
8/2/2019 Unit7_2011
28/28
28
Proposition 4 If P i
= {x Rn+ : A
i
x bi
} for i = 1, 2 are nonempty polyhedra, then (, 0 )is a valid inequality for conv(P 1 P 2 ) iff there
exist u1
, u2
0 such that ui
Ai
and 0 u ibi for i = 1, 2.
Example 1 Let P 1
= {x R2
+ : x1 + x2 1, x1 + x2 5} and P 2 = {x R 2+ : x2 4, 2x1 + x2 6, x1 3x2 2}. Taking
u1
= (2 , 1) and u2
= (52 ,
12 , 0) and applying theabove proposition gives that x1 + 3 x2 7 is
valid for P 1 P 2 .