13.07.2015 Views

On the exact separation of mixed integer knapsack cuts - Marcos ...

On the exact separation of mixed integer knapsack cuts - Marcos ...

On the exact separation of mixed integer knapsack cuts - Marcos ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

30 R. Fukasawa, M. GoycooleaFrom Proposition 6 we see that if (a i , a j ) and (c i , c j ) are linearly dependent, <strong>the</strong>nit is trivial to compute a minimal domination pair. From Proposition 5 it follows thatif (a i , a j ) and (c i , c j ) are linearly independent, a minimal domination tuple can beobtained by solving <strong>the</strong> following two-dimensional <strong>integer</strong> programming problem:minimize |k i |+|k j |subject to,c i k i + c j k j ≥ 0a i k i + a j k j ≤ 0|k i |≥1, |k j |≥1,k i , k j ∈ Z(3)Fur<strong>the</strong>r, given that we know <strong>the</strong> feasible region <strong>of</strong> Problem 3 is contained in anorthant <strong>of</strong> Z × Z, we can remove <strong>the</strong> absolute values and make <strong>the</strong> problem linear.While in <strong>the</strong>ory Problem 3 can be solved in polynomial time [24,38,46], in practicewe found it easer to solve <strong>the</strong> problem by simple enumeration. For this, loop throughall possible values <strong>of</strong> k i , starting from k i = 1. <strong>On</strong>ce k i is fixed it is trivial to solve <strong>the</strong>problem for k j (or determine infeasibility). From <strong>the</strong> propositions above it suffices tostop at <strong>the</strong> first value <strong>of</strong> k i for which <strong>the</strong> problem is feasible.In order to use <strong>the</strong> above propositions in <strong>the</strong> branch and bound algorithm we computewhat we call a domination table. This table is defined as a list <strong>of</strong> all possible (minimal)domination tuples. In order to obtain a domination table we must loop through all possiblepairs <strong>of</strong> variables before solving <strong>the</strong> problem. Observe that because we will onlyuse <strong>the</strong>se tables to streng<strong>the</strong>n bounds after branching, as in Theorem 1, we only needto store domination tuples (i, j, k i , k j ) such that |k i |≤(u i − l i ) and |k j |≤(u j − l j ).As a final note, we observe that once domination is enforced through branching, <strong>the</strong>branch-and-bound tree will be <strong>of</strong> finite size, regardless <strong>of</strong> <strong>the</strong>re existing unboundedvariables. In fact, in any branch-and-bound tree <strong>of</strong> infinite size <strong>the</strong>re must exist abranching-path <strong>of</strong> infinite length. Fur<strong>the</strong>r, because <strong>the</strong>re are only a finite number <strong>of</strong><strong>integer</strong> variables, <strong>the</strong>re must exist two unbounded ones on which <strong>the</strong> tree branches aninfinite number <strong>of</strong> times. Since for every pair <strong>of</strong> <strong>integer</strong> variables <strong>the</strong>re exists a minimaldomination tuple, it is not difficult to see that if we enforce domination, at some pointbranching on one <strong>of</strong> <strong>the</strong>se variables would impose a bound on <strong>the</strong> o<strong>the</strong>r variable, thusmaking <strong>the</strong> impossible. path. Goycoolea [32] analogously shows that using dominationtables one could explicitely impose bounds a priori, which also guarantees finitetermination <strong>of</strong> branch-and-bound.3.4.2 Domination between <strong>integer</strong> and continuous variablesLet C j,k ={i ∈ C : j ≤ i ≤ k}. In this section we show how branching on <strong>integer</strong>variable x i can be used to streng<strong>the</strong>n <strong>the</strong> bounds on continuous variables x j withj ∈ C 1,i or those with j ∈ C i+1,n . Our attention will focus on instances <strong>of</strong> MIKPsatisfying a i > 0 for all i ∈ 1,...,n. This assumption is made only to simplify <strong>the</strong>123

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!