Unit7_2011

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 .