COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING ¨ ALPER ATAMTURK
Abstract. We review strong inequalities for fundamental knapsack relaxations of (mixed) integer programs. These relaxations are the 0–1 knapsack set, the mixed 0–1 knapsack set, the integer knapsack set, and the mixed integer knapsack set. Our aim is to give a common presentation of the inequalities based on covers and packs and highlight the connections among them. The focus of the paper is on recent research on the use of superadditive functions for the analysis of knapsack polyhedra. We also present some new results on integer knapsacks. In particular, we give integer version of cover inequalities and describe the necessary and sufficient facet condition for them. This condition generalizes the well–known facet condition of minimality of covers for 0–1 knapsacks.
February 2003 1. Introduction In the last two decades there have been major advances in our capability of solving mixed integer programs (MIPs). Strong cutting planes obtained through polyhedral analysis of fundamental substructures of MIPs contributed to this success substantially by strengthening their linear programming (LP) relaxations. Polyhedral cuts based on problem substructures have already become standard features in leading optimization software packages. MIP solvers in these packages automatically identify knapsack, set packing, fixed–charge substructures of problems and generate polyhedral cutting planes specifically defined for these substructures. The use of such structural cuts improves the performance of the solvers dramatically. In this paper we review strong inequalities for single constraint relaxations of (mixed) integer programs. Since every constraint of an MIP defines a knapsack set, strong valid inequalities for the relevant knapsack relaxations can be used as cutting planes for solving MIPs in a branch–and–cut approach. Furthermore, it is also possible to generate other knapsack relaxations by aggregating constraints into one. Gomory cuts from individual simplex tableau rows may also be viewed in this context. Indeed, generating cutting planes A. Atamt¨ urk: Department of Industrial Engineering and Operations Research, 4135 Etcheverry Hall, University of California, Berkeley 94720–1777. Email:
[email protected]. Supported, in part, by NSF grants DMII–0070127 and DMII–0218265. 1
¨ ALPER ATAMTURK
2
from single–constraint relaxations is currently the most effective method in state–of–the–art MIP software systems. Moreover, strong cuts for many structured problems can be obtained as knapsack cuts by building appropriate knapsack relaxations for them. Therefore, a good understanding of fundamental knapsack polyhedra is of utmost importance in integer programming. Here we consider the following fundamental knapsack sets. The 0–1 knapsack set: © ª KB = conv x ∈ {0, 1}N : ax ≤ b . The mixed 0–1 knapsack set: KM B = conv
©
x ∈ {0, 1}N , y ∈ RM + : ax + gy ≤ b
The integer knapsack set:
©
KI = conv
x ∈ ZN + : ax ≤ b, x ≤ u
ª
ª
.
.
The mixed integer knapsack set: © ª M KM I = conv x ∈ ZN + , y ∈ R+ : ax + gy ≤ b, x ≤ u . We assume that a, u ∈ QN , g ∈ QM , and b ∈ Q with nonzero entries. Without loss generality, u is an integral vector with positive entries, and, if necessary by complementing variables, a is a vector with positive entries. Throughout, if g > 0, we assume that 1 ≤ ui ≤ bb/ai c for all i ∈ N , since otherwise ui can be reduced to bb/ai c. Then the knapsack sets are full–dimensional. In Figure 1 we illustrate the hierarchy of the knapsack relaxations. The mixed–integer knapsack set is the most general one and, therefore, valid inequalities for it are also valid for the three other knapsack sets. When the upper bound for integer variables is 1, we obtain the mixed 0–1 knapsack set, whereas when there are no continuous variables, we obtain the integer knapsack set. Finally, the 0–1 knapsack set is the simplest and the most specialized one. Valid inequalities for mixed 0–1 knapsack and integer knapsack sets are valid for the 0–1 knapsack set. Mixed Integer Knapsack u=1
M =∅
Mixed 0–1 Knapsack M =∅
Integer Knapsack u=1
0–1 Knapsack Figure 1. A hierarchy of relaxations and validity of inequalities.
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
3
The 0–1 knapsack set is probably the most studied and well–understood single–constraint relaxation. Seminal works on the 0–1 knapsack polytope date back to 70’s (Balas [7], Hammer et al. [18], Wolsey [37]). The main topic of these early papers are facets based on covers and extensions of covers through sequential lifting (Padberg [29]). Balas and Zemel [8] describe bounds on the lifting coefficients and other facets of the 0–1 knapsack set obtained by simultaneous lifting (Zemel [40]). See Gu et al. [15, 14] and Zemel [41] for complexity and computational aspects of sequential lifting of knapsack covers. Padberg [30] gives a generalization of covers referred as the (1, k)–configuration for packing problems, including 0–1 knapsacks. Weismantel [36] describes inequalities based on feasible sets, which we refer to as packs here. Weismantel [35] studies a special case of the knapsack set with two distinct coefficients. See also Padberg [28] for a survey on covering, packing, and knapsack problems. In an influential paper in computational integer programming, Crowder, Johnson, and Padberg [12] show how to effectively incorporate strong valid inequalities for the 0–1 knapsack set in cut generation procedures for solving 0–1 programming problems. Using strong valid inequalities for 0–1 knapsacks, they were able to solve much bigger problems than that were possible until then. Even though the success of strong inequalities from single constraint relaxations of integer programs have been demonstrated in early 80’s, other than a few exceptions, almost all research on cutting planes for knapsacks has been limited to the 0–1 knapsack set. Special cases of the integer knapsack set with divisible coefficients have been investigated. Pochet and Weismantel [31] describe the convex hull of the integer knapsack set with divisible coefficients. Pochet and Wolsey [32] give the convex hull of the integer knapsack cover set (≤ replaced with ≥) with divisible coefficients and unbounded variables. They also give an extension that includes a continuous variable. See also Magnanti and Mirchandani [20] for a mixed integer set with divisible coefficients arising in telecommunication problems. Mazur and Hall [25] study a polyhedron related to the integer knapsack cover set, referred as the integer capacity–cover polyhedron. Ceria et al. [11] give a generalization of the 0–1 cover inequalities for mixed integer knapsacks. Martin and Weismantel [24] extend the weight inequalities [36] to mixed integer knapsacks. Marchand and Wolsey [22] give strong inequalities for the 0–1 knapsack set with a single continuous variable. Atamt¨ urk and Rajan [6] study continuous and 0–1 knapsack sets with a single integer variable, that arise as a common relaxation of network design problems; see also Brockm¨ uller et al. [10], van Hoesel et al [34], and Magnanti et al. [21] for these sets. Atamt¨ urk [5] studies the facets of the mixed integer knapsack set in a more general setting than treated here, in which upper bounds are allowed for integer as well as continuous variables. Marchand and Wolsey [23] show that strong inequalities for many structured MIP problem can be obtained by a single application of mixed–integer rounding [26] after aggregating constraints and complementing variables appropriately. In a follow–up paper, Louveaux and
4
¨ ALPER ATAMTURK
Wolsey [19] show how mixed–integer rounding (MIR) and MIR lifting functions can be used to derive strong approximations of the facets for mixed integer sets. Here we will focus on inequalities obtained from two central objects, covers and packs, and their superadditive lifting. A cover is a subset of the variables that exceed the knapsack capacity when all are set to their upper bounds. On the other hand, a pack is a subset of variables that leave a residual capacity when all are set to their upper bounds. In Section 2 we review the use of superadditive functions in lifting inequalities. In Sections 3, 4, 5, and 6 we describe the cover and pack inequalities for 0–1 knapsack, mixed 0–1 knapsack, mixed integer knapsack, and integer knapsack sets, respectively. We aim to give a common presentation of the inequalities for these four knapsack sets and highlight the connections among the inequalities. Although most of the paper is a review of the recent developments in the last 5 to 6 years, Section 6 includes some new results on integer knapsack sets. In particular, we define integer cover inequalities and describe the necessary and sufficient facet condition for them. This condition generalizes the well–known facet condition of minimality of covers for 0–1 knapsacks. In Section 7 we conclude with a few open research questions. P Throughout the paper, for v ∈ RT we let v(S) = i∈S vi for any S ⊆ T with v(∅) = 0. We also let v + denote the nonnegative vector with entries max{vi , 0} i ∈ T , whereas v − denote the nonpositive vector with entries min{vi , 0} i ∈ T . 2. Superadditive lifting An important and very useful concept in deriving strong valid inequalities is lifting of inequalities. Lifting refers to extending valid inequalities for low dimensional restrictions of polyhedra to ones that are valid in high dimensions. The concept of lifting has been introduced by Gomory in the context of the group problem [13]. Padberg [29] described the sequential lifting procedure for 0–1 programming. Since then lifting has been studied and used extensively [4, 8, 14, 15, 16, 17, 19, 27, 33, 38, 39, 40, 41], particularly, for 0–1 and mixed 0–1 programming problems. In this section we focus on the use of superadditive functions in lifting inequalities. Details can be found in [4, 17, 19, 39]. ª © M Let KM I (L, U ) = conv xR ∈ ZR be the nonempty + , y ∈ R+ : aR xR + gy ≤ d, xR ≤ uR restriction of KM I obtained by fixing xi = 0 i ∈ L and xi = ui i ∈ U for some partition (L, U, R) of N ; thus, d = b − aU uU . Let (1)
πR xR + σy ≤ πo
be a tight valid inequality for KM I (L, U ) and define the lifting function Φ : R 7→ R ∪ {∞} for (1) as © ª M Φ(a) = πo − max πR xR + σy : aR xR + gy ≤ d − a, xR ≤ uR , xR ∈ ZR . + , y ∈ R+ Since (1) is valid for KM I (L, U ), the optimization problem above, referred as the lifting problem, is bounded. We let Φ(a) = ∞ if the lifting problem is infeasible. The lifting function Φ is useful in proving the validity of the extensions of (1) to higher dimensions.
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
5
Observe that (2)
πR xR + πL xL + πU (uU − xU ) + σy ≤ πo
is valid for KM I if and only if (3)
πL xL + πU (uU − xU ) ≤ Φ(aL xL + aU (xU − uU ))
for all (x, y) ∈ KM I . Now, suppose that φ : R 7→ R is a superadditive lower bound on Φ, that is, φ(a1 ) ≤ Φ(a1 ) and φ(a1 ) + φ(a2 ) ≤ φ(a1 + a2 ) for all a1 , a2 ∈ R, that and πi = φ(ai ) i ∈ L and πi = φ(−ai ) i ∈ U in (2). Then, since X X (4) φ(ai )xi + φ(−ai )(ui − xi ) ≤ φ(aL xL + aU (xU − uU )) ≤ Φ(aL xL + aU (xU − uU )), i∈L
i∈U
inequality (2) is valid for KM I . In other words, for any superadditive lower bound φ on Φ, inequality (1) can be extended to a valid inequality X X (5) πR xR + φ(ai )xi + φ(−ai )(ui − xi ) + σy ≤ πo i∈L
i∈U
for KM I . Furthermore, if φ(ai ) = Φ(ai ) for all i ∈ L, φ(−ai ) = Φ(−ai ) for all i ∈ U , and inequality (1) defines a k–dimensional face of KM I (L, U ), then inequality (5) defines an at least k + |L| + |U |–dimensional face of KM I . 3. The 0–1 knapsack set In this section we consider the simplest of the knapsack sets, the 0–1 knapsack polyhedron © ª KB = conv x ∈ {0, 1}N : ax ≤ b . Covers and packs are central objects in the analysis of knapsack polyhedra. A subset C of the index set N is called a cover if λ = a(C) − b > 0, whereas a subset P of N is called a pack if µ = b − a(P ) > 0. We refer to λ as the excess of the cover C and to µ as the residual capacity of the pack P . For a cover C let us consider the restriction KB (N \C, ∅), obtained by fixing all xi i ∈ N \C to zero. Since the sum of the coefficients ai i ∈ C exceeds the knapsack capacity by λ > 0, all variables xi i ∈ C cannot be one simultaneously in a feasible solution to KB (N \ C, ∅). Therefore, the cover inequality [7, 18, 37] X (6) xi ≤ |C| − 1 i∈C
is valid for KB (N \ C, ∅). Cover inequality (6) defines a facet of KB (N \ C, ∅) if and only if C is a minimal cover, that is, a(C \ {i}) ≤ b for all i ∈ C. On the other hand for a pack P , consider the restriction KB (∅, P ), obtained by fixing all xi i ∈ P to one. Since any xi i ∈ N \ P with coefficient ai greater than the residual capacity
¨ ALPER ATAMTURK
6
µ cannot take the value one in a feasible solution to KB (∅, P ), the pack inequality [36] X (7) (ai − µ)+ xi ≤ 0 i∈N \P
is valid for KB (∅, P ). Sequential and simultaneous lifting of cover inequalities have been studied extensively [7, 8, 9, 14, 15, 18, 37, 41] to extend them to strong inequalities for KB . Here we illustrate the use of superadditive functions for sequence independent lifting of cover inequalities [17]. Suppose the cover inequality (6) defines a facet of KB (N \ C, ∅), i.e., ai ≥ λ for all i ∈ C. For convenience we write the inequality as X (8) λxi ≤ λ(|C| − 1). i∈C
P Suppose (wlog) C = {1, 2, . . . , |C|}, indexed in nonincreasing order of ai . Let Ai = ik=1 ak for i ∈ {1, 2, . . . , |C|} and A0 = 0. Then it is easy to see that the lifting function of (8) ( ) X X Θ(a) = λ(|C| − 1) − max λxi : ai xi ≤ b − a i∈C
i∈C
for a ≥ 0 can be expressed in a closed form as ½ 0 if A0 ≤ a ≤ A1 − λ, Θ(a) = iλ if Ai − λ ≤ a ≤ Ai+1 − λ, where i ∈ {0, 1, . . . , |C| − 1}. Θ is a step function and is unfortunately not superadditive. Let {i ∈ C : ai > λ} = {1, 2, . . . , p}. Then it is easy to check that the function ϕ defined as if Ai ≤ a ≤ Ai+1 − λ, iλ ϕ(a) = iλ + (a − Ai ) if Ai − λ ≤ a ≤ Ai , pλ + (a − Ap ) if Ap − λ ≤ a, where i ∈ {0, 1, . . . , p − 1}, for a ≥ 0 is superadditive lower bound on Θ. Therefore, X X ϕ(ai ) xi ≤ |C| − 1 (9) xi + λ i∈C
i∈N \C
is a valid inequality for KB . Moreover, since ϕ(a) = Θ(a) for Ai ≤ a ≤ Ai+1 − λ, inequality (9) is facet–defining for KB if Aik ≤ ak ≤ Aik +1 − λ for some ki ∈ {0, 1, . . . , p − 1} for all k ∈ N \ C. This result gives characterization of the exact lifting coefficients within one unit due to Balas and Zemel [8]. Gu et al. [17] describe a stronger superadditive lower bound than ϕ for Θ. The lifting function of the pack inequality (7) X X (10) Λ(a) = − max (ai − µ)+ xi : ai xi ≤ µ − a i∈N \P
i∈N \P
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
7
for a ≤ 0 can also be characterized easily because of the simple relation between coefficients of the constraint and the objective. Suppose (wlog) {i ∈ N \ P : ai > µ} = {1, 2, . . . , q}, P indexed in nonincreasing order of ai . Then let Ai = − ik=1 ak for i ∈ {1, 2, . . . , q} and A0 = 0. It can be checked that if Ai+1 + µ ≤ a ≤ Ai , iµ + a ψ(a) = iµ + Ai if Ai ≤ a ≤ Ai + µ, qµ + Aq if a ≤ Aq + µ, where i ∈ {0, 1, . . . , q − 1}, is a superadditive lower bound on Λ. Therefore, inequality X X (11) ψ(−ai )(1 − xi ) + (ai − µ)+ xi ≤ 0 i∈P
i∈N \P
is valid for KB . Since KB (∅, P ) is not full–dimensional (when q > 0), it is harder to describe facet conditions of the lifted pack inequalities (11). Nevertheless, since Λ(a) = ψ(a) for Ai ≤ a ≤ Ai + µ, inequality (11) defines an at least |N | + |M | − q − 1 dimensional face of KB if Aik ≤ ak ≤ Aik + µ, for some ki ∈ {0, 1, . . . , q − 1} for all k ∈ P . Weismantel [36] refers to inequalities X X (ai − µ)+ xi ≤ 0 (12) −ai (1 − xi ) + i∈P
i∈N \P
as the weight inequalities and describes facet conditions for a special case with ai = 1 for all i ∈ P . Since ψ(a) ≥ a for a ≤ 0, the lifted pack inequality (11) is at least as strong as the weight inequality. 4. The mixed 0–1 knapsack set By introducing continuous variables to the 0–1 knapsack set, we obtain the mixed 0–1 knapsack set. Since most practical problems contain integer variables as well as continuous variables, extending the concepts for 0–1 knapsacks to mixed 0–1 knapsacks is essential to be able to apply polyhedral results to such problems. Here we review the results of Marchand and Wolsey [22] on the mixed 0–1 knapsack set © ª KM B = x ∈ {0, 1}N , y ∈ RM + : ax + gy ≤ b . Let C ⊆ N be a cover, i.e., λ = a(C) − b > 0 and suppose there exists ` ∈ C such that a` ≥ λ. Let us consider the restriction KM B (N \ C, C \ {`}) obtained by fixing all xi i ∈ C \ {`} to one and all xi i ∈ N \ C to zero. Thus, the restriction is given by a` x` + gy ≤ a` − λ. The mixed integer rounding inequality [26] λx` + g − y ≤ 0
(13)
is facet–defining for KM B (N \ C, C \ {`}). Lifting (13) with xi i ∈ C \ {`}, we obtain the mixed 0–1 cover inequality X (14) − min{ai , λ}(1 − xi ) + g − y ≤ −λ. i∈C
¨ ALPER ATAMTURK
8
Mixed 0–1 cover inequality (14) is facet–defining for KM B (N \ C, ∅). In contrast with 0–1 cover inequalities (6), minimality of cover C is not a necessary facet condition for the mixed 0–1 cover inequalities. Observe that inequality (14) generalizes the 0–1 cover inequality (6). When C is a minimal cover, i.e., ai ≥ λ for all i ∈ C, inequality (14) reduces to X
(15)
i∈C
xi +
g−y ≤ |C| − 1, λ
which is equivalent to (6) when y is zero. Now let P ⊂ N be a pack, i.e., µ = b − a(P ) > 0 and suppose that there exists ` ∈ N \ P such that a` ≥ µ. Fixing all xi i ∈ N \ P ∪ {`} to zero and all xi i ∈ P to one, we obtain the restriction KM B (N \ (P ∪ {`}), P ), given by a` x` + gy ≤ µ. Lifting the mixed integer rounding inequality (a` − µ)x` + g − y ≤ 0
(16)
with xi i ∈ N \ P ∪ {`}, we obtain the mixed 0–1 pack inequality X (ai − µ)+ xi + g − y ≤ 0. (17) i∈N \P
In contrast with the 0–1 knapsack set, KM B (∅, P ) is full–dimensional and the mixed 0–1 pack inequality is facet–defining for KM B (∅, P ). By computing the lifting functions of the mixed 0–1 cover inequality and mixed 0–1 pack inequality, we can extend them to strong valid inequalities for KBM . Marchand and Wolsey show that the lifting function of (14) is precisely ϕ, the superadditive lower bound for Θ used in Section 3 for lifting the 0–1 cover inequalities. Therefore, lifting inequality (14) with xi i ∈ N \ C using ϕ, we obtain the continuous cover inequality [22] X X ϕ(ai )xi + g − y ≤ −λ, (18) − min{ai , λ}(1 − xi ) + i∈C
i∈N \C
which is facet–defining for KM B . On the other hand, the exact lifting function of (17) is ψ, which is the superadditive lower bound used to lift the 0–1 pack inequalities (7) for 0–1 knapsacks. Therefore lifting (17) with with xi i ∈ P using ψ, we get this time the so–called reverse continuous cover inequality [22] X X (19) ψ(−ai )(1 − xi ) + (ai − µ)+ xi + g − y ≤ 0, i∈P
i∈N \P
which is also facet–defining for KM B . Strong inequalities for many structured mixed 0–1 programming problems can be obtained from their appropriate mixed 0–1 knapsack relaxations. For instance, inequalities (18) and (19) are also good approximations of lifted flow cover [16] and lifted flow pack [3] inequalities for fixed–change network flows.
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
9
Recently Richard et al. [33] study a generalization of KM B , where they consider upper bounds on the continuous variables as well. Some of the facets of this generalization can be obtained by complementing and aggregating continuous variables and using the results of Marchand and Wolsey [22]. But as shown in [33], the mixed 0–1 knapsack set with bounded continuous variables has other facets that can be obtained by lifting the bounded continuous variables. 5. The mixed integer knapsack set For mixed integer programs in which integer variables are not restricted to 0 and 1, the mixed integer knapsack set M KM I = { x ∈ ZN + , y ∈ R+ : ax + gy ≤ b, x ≤ u }
is the appropriate single constraint relaxation to consider for generating valid inequalities. In this section we review the results of Atamt¨ urk [5] on the mixed integer knapsack polyhedron. P Let C ⊆ N be a cover if λ = i∈C ui ai − b > 0. Suppose that there exists ` ∈ C such that µ = u` a` − λ > 0. Fixing all xi i ∈ C \ {`} to ui and all xi i ∈ N \ C to zero, we obtain the restriction a` x` + gy ≤ µ. Defining η = dµ/a` e and r = µ − bµ/a` ca` , it can be seen that the MIR inequality (20)
−(a` − r)(u` − x` ) + g − y ≤ (u` − η)r − λ
defined a facet of this restriction. It is shown in [5] that the lifting function ª © Φ` (a) = (u` − η)r − λ − max −(a` − r)(u` − x` ) + g − y : a` x` + gy ≤ µ, x` ∈ Z+ , y ∈ R+ can be expressed in closed form as (η − u` − 1)(a` − r) k(a` − r) (21) Φ` (a) = a − (k + 1)r a − ηr
if if if if
a < −λ, ka` ≤ a < ka` + r, ka` + r ≤ a < (k + 1)a` , a ≥ µ.
k∈Z
Using Φ` to lift (20) with xi i ∈ C \ {`}, we obtain the mixed–integer cover inequality X (22) Φ` (−ai )(ui − xi ) + g − y ≤ (u` − η)r − λ. i∈C
Inequality (22) is facet–defining for KM I (N \C, ∅). Observe that for the mixed 0–1 knapsack set, since η = u` = 1, for each ` the mixed–integer cover inequality reduces to the same mixed 0–1 cover inequality (14). Next we extend (22) for KM I with xi i ∈ N \ C. Let C + = {i ∈ C \ {`} : ai ≥ (u` − η + 1)a` }. Suppose (wlog) C + = {1, 2, . . . , s}, indexed in nonincreasing order of ai . Then the function γ` described below is a superadditive lower
¨ ALPER ATAMTURK
10
bound on the lifting function of (22) uih (u` − η + 1)(a` − r) (uih (u` − η + 1) + k)(a` − r) γ` (a) = uih (u` −η+1)(a` − r)+a−mih −δi −(k + 1)r (usus (u` − η + 1) + p)(a` − r)
if if if if usus (u` − η + 1)(a` − r)+a−mC + −(p + 1)r if
mih ≤ a ≤ mih + δi , mih +δi +ka` ≤ a ≤ mih + δi +ka` +r, mih +δi +ka` +r ≤ a ≤ mih +δi +(k + 1)a` , mC + + pa` ≤ a ≤ mC + + pa` + r, mC + + pa` + r ≤ a ≤ mC + + (p + 1)a` ,
Pi−1 where δi = ai − (u` − η + 1)a` for i ∈ C + , uih = k=1 uk + h, mih = m(i−1)ui−1 + hai for h ∈ {0, 1, . . . , ui } and i ∈ {1, 2, . . . , s} with m0u0 = 0, mC + = msus , k ∈ {0, 1, . . . , u` − η}, and p ∈ Z+ . Therefore, using γ` to lift (27) with xi ∈ i ∈ N \ C, we obtain the valid inequality X X (23) γ` (ai )xi + Φ` (−ai )(ui − xi ) + g − y ≤ (u` − η)r − λ i∈N \C
i∈C
for KM I . Inequality (23) is facet–defining for KM I if ai ≤ mC + + ηa` for all i ∈ N \ C [5]. Remark 1. Observe that if η = u` , then a` − r = λ and Φ(a) = max{a, λ} for a < 0. In this case, inequality (23) takes the simpler form X X (24) γ` (ai )xi − min{ai , λ}(ui − xi ) + g − y ≤ −λ. i∈C
i∈N \C
If λ ≤ ai for all i ∈ C and γ` (ai ) = 0 for all i ∈ N \ C, then (24) reduces to [11], X (25) (ui − xi ) ≥ α + g − y/(a` − r), i∈C
where α = dλ/a` e = u` − η + 1; otherwise, inequality (24) is stronger than (25). P On the other hand, let P ⊂ N be a pack if µ = b − i∈P ui ai > 0. Suppose there exists ` ∈ N \ P such that λ = u` a` − µ > 0. Fixing all xi i ∈ P to ui and all xi i ∈ N \ (P ∪ {`}) to zero we obtain again the restriction a` x` + gy ≤ µ. After rewriting the corresponding MIR inequality this time as (26)
(a` − r)x` + g − y ≤ µ − ηr,
we lift it with xi i ∈ N \ P , to obtain the mixed–integer pack inequality X (27) Φ` (ai )xi + g − y ≤ µ − ηr. i∈N \P
Inequality (27) defines a facet of KM I (P, ∅). Observe that in the case of mixed 0–1 knapsack set, since µ = r and η = 1, for each ` the mixed integer pack inequality reduces to the same mixed 0–1 pack inequality (17).
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
11
Next we extend (27) with xi i ∈ P . Let P¯ + = {i ∈ N \ P : ai ≥ ηa` }. Suppose (wlog) P¯ + = {1, 2, . . . , t}, indexed in nonincreasing order of ai . Then a superadditive lower bound for the lifting function for (27) is given by uih ηr + a if mih −δi ≤ a ≤ mih , (u η + k)r + a if mih −δi − (k + 1)a` + r ≤ a ≤ mih −δi − ka` , ih ω` (a) = uih ηr + mih − δi − (k + 1)(a` − r) if mih −δi − (k + 1)a` ≤ a ≤ mih −δi − (k + 1)a` +r, usu ηr + pr + a if mP¯ + − (p + 1)a` + r ≤ a ≤ mP¯ + − pa` , s mP¯ + + usus ηr − (p + 1)(a` − r)
if mP¯ + − (p + 1)a` ≤ a ≤ mP¯ + − (p + 1)a` + r,
Pi−1
where δi = ai − ηa` for i ∈ P¯ + , uih = k=1 uk + h, mih = m(i−1)ui−1 − hai for h ∈ {0, 1, . . . , ui }, i ∈ {1, 2, . . . , t} with m0u0 = 0, and mP¯ + = mtut , k ∈ {0, 1, . . . , η − 1} and p ∈ Z+ . Now using ω` to lift the mixed–integer pack inequality (27), we obtain the valid inequality X X (28) Φ` (ai )xi + ω` (−ai )(ui − xi ) + g − y ≤ µ − ηr i∈N \P
i∈P
for K. Inequality (28) is facet–defining for KM I if ai ≥ mP¯ + + u` − η + 1 for all i ∈ P [5]. Remark 2. If η = 1, then r = µ and Φ(a) = (a − µ)+ for a > 0. In this case, inequality (28) reduces to X X (29) (ai − µ)+ xi + g − y ≤ 0. ω` (−ai )(ui − xi ) + i∈P
i∈N \P
If ω(−ai ) = −ai for all i ∈ N \ P , then (29) reduces to the weight inequality [24] X X (ai − µ)+ xi + g − y ≤ b − µ, (30) ai xi + i∈P
i∈N \P
otherwise (29) is stronger than the weight inequality (30). 6. Integer knapsack set In this section we consider the integer knapsack set KI = { x ∈ ZN + : ax ≤ b, x ≤ u }. P Let C ⊆ N be a cover if λ = i∈C ui ai − b > 0 and consider the restriction KI (N \ C, ∅) obtained by fixing all xi i ∈ N \ C to zero. Extending the combinatorial argument on covers for the 0–1 knapsack set, since not all variables xi i ∈ C can be at their upper bound simultaneously, inequality X (31) xi ≤ u(C) − 1 i∈C
is valid for KI (N \ C, ∅). However, (31) is generally a weak inequality and may not even P define a proper face of KI (N \ C, ∅) even if C is a minimal cover, that is, i∈C\{k} ui ai ≤ b for all k ∈ C.
¨ ALPER ATAMTURK
12
x2 4
6
x1
Figure 2. Facets of the integer knapsack set Another way to write inequality (31) is X (32) (ui − xi ) ≥ 1, i∈C
which states that at least one xi must be less than its upper bound. However, observe that if ai < λ for all i ∈ C, the left hand side of (32) is greater than 1 for all feasible solutions. This suggests the strengthening X (33) (ui − xi ) ≥ dλ/¯ ae, i∈C
where a ¯ = maxi∈C ai , given in Ceria et al. [11]. Consider the example below. Example 1. Suppose the integer knapsack is given as KI = conv{x ∈ Z2+ : 5x1 + 9x2 ≤ 45, x1 ≤ 6, x2 ≤ 4}. Let C = {1, 2} be an integer cover with λ = 30+36−45 = 21. As it can be seen in Figure 2, inequality (32) (6 − x1 ) + (4 − x2 ) ≥ 1 or x1 + x2 ≤ 9 does not support KI . However, the strengthened inequality (33) (6 − x1 ) + (4 − x2 ) ≥ d21/9e = 3 or x1 + x2 ≤ 7 defines a facet of KI for this example.
¤
For 0–1 knapsacks, whenever C is a minimal cover, the cover inequality (6) defines a facet of KB (N \ C, ∅). Furthermore, it is also easy to see that, if C is a minimal cover, the bounds on the variables and the cover inequality give a complete description of KB (N \ C, ∅). As seen in Figure 2, KI (N \ C, ∅) has other non–trivial facets besides the one defined by x1 + x2 ≤ 7. Also it should be clear that, in general, KI (N \ C, ∅) may not have any facet P of the form i∈C xi ≤ πo . Therefore, below we give a generalization of inequalities (33), whose coefficients are not restricted to one.
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
13
Proposition 1. Let C ⊆ N be a cover. For any ρ > 0, the integer cover inequality (34)
X dmin{ai , λ}/ρe(ui − xi ) ≥ dλ/ρe i∈C
is valid for KI . P P Proof. Rewriting i∈C ai xi ≤ b as i∈C ai (ui − xi ) ≥ λ and strengthening the coefficients P gives i∈C min{ai , λ}(ui − xi ) ≥ λ. Dividing this inequality by ρ and rounding up the coefficients to integers, we obtain (34). ¤ It is of interest to know when inequalities (34) define facets of KI (N \ C, ∅). Below we give a necessary and sufficient condition for an important subclass of the integer cover inequalities to define facets of KI (N \ C, ∅). This result generalizes the facet condition of minimality of covers for 0–1 knapsacks to integer knapsacks. For a cover C and i, ` ∈ C, let κi` = dmin{ai , λ}/a` e and consider the integer cover inequality (35)
X
κi` (ui − xi ) ≥ dλ/a` e.
i∈C
Theorem 2. Let C ⊆ N be a cover and ` ∈ C be such that µ = u` a` − λ ≥ 0. The integer cover inequality (35) is facet–defining for KI (N \ C, ∅) if and only if ai ≥ min{λ, κi` a` − r} for all i ∈ C \ {`}, where r = µ − bµ/a` ca` . Proof. Sufficiency. Suppose the condition of the theorem is satisfied. We describe |C| affinely independent points x1 , x2 , . . . , x|C| on the face defined by (35): x`` = bµ/a` c, x`i = ui i ∈ C \ {`}, and x`i = 0 i ∈ N \ C. xii = ui − 1, xik = uk k ∈ C \ {i} for i ∈ C \ {`} with λ ≤ κi` a` − r, and xik = 0 k ∈ N \ C. xii = ui − 1, xi` = bµ/a` c + κi` , xik = uk k ∈ C \ {i, `} for i ∈ C \ {`} with λ > κi` a` − r, and xik = 0 k ∈ N \ C. By definition of µ, if xi = ui for all i ∈ C \ {`}, and xi = 0 for all i ∈ {`} ∪ N \ C, the knapsack constraint has a slack of µ. Therefore, x` is a feasible point with a slack of r in the knapsack constraint. Since κ`` = 1 and dλ/a` e = d(u` a` − µ)/a` e = u` − bµ/a` c, inequality (35) is tight at x` . For i ∈ C \ {`}, suppose λ ≤ κi` a` − r. Since ai ≥ λ, the point xi is feasible; and since ai ≥ λ implies that κi` = dλ/a` e, inequality (35) is satisfied at equality for xi . Otherwise, κi` a` − r ≤ λ = u` a` − µ or equivalently (µ − r)/a` + κi` = bµ/a` c + κi` ≤ u` . Since we also have ai + r ≥ κi` a` , the point xi is feasible. Since κ`` = 1, cover inequality (35) is tight for xi . This shows that the described points are on the face of KI defined by (35). They are easily seen to be affinely independent.
¨ ALPER ATAMTURK
14
Necessity. If ai < min{λ, κi` a` −r}, then since κi` = dai /a` e and r < a` , we have (κi` −1)a` ≤ ai < κi` a` − r. In this case, it is easy to check that the coefficients of inequality (36) satisfy Φ` (−ai ) > −κi` (a` − r) and thus (36) dominates X −κi` (a` − r)(ui − xi ) ≤ −(a` − r)dλ/a` e = (u` − bµ/a` c − 1)r − λ, i∈C
which is a rewriting of (35).
¤
Remark 3. Observe that for the 0–1 knapsack set, we have µ = a` −λ < a` and r = µ. Since P µ ≥ 0 implies that ki` = 1 for all i ∈ C, Theorem 2 reduces to stating that i∈C xi ≤ |C|−1 is facet–defining for KB (N \ C, ∅) if and only if ai ≥ λ for all i ∈ C, that is, C is a minimal cover. Example 1 (cont.) Let C = {1, 2} be a cover as before with λ = 30 + 36 − 45 = 21. For ` = 1, we have µ = 30 − 21 = 9 and r = 4. Then since dλ/a1 e = d21/5e = 5, κ11 = 1 and κ21 = d9/5e = 2, the corresponding integer cover inequality is (6 − x1 ) + 2(4 − x2 ) ≥ 5 or x1 + 2x2 ≤ 9. On the other hand, for ` = 2, we have µ = 36 − 21 = 15 and r = 6. In this case, since dλ/a2 e = d21/9e = 3, κ12 = d5/9e = 1 and κ22 = 1, the integer cover inequality is (6 − x1 ) + (4 − x2 ) ≥ 3 or x1 + x2 ≤ 7. Both of these inequalities satisfy the condition of Theorem 2, and hence define facets of KI . This is also illustrated in Figure 2. ¤ The cover inequalities (35) can be strengthened by using the results on mixed–integer knapsacks in Section 5, as shown in the necessity part of the proof of Theorem 2. For a cover C and ` ∈ C with µ = u` a` − λ ≥ 0 let η = bµ/a` c + 1 and r = µ − bµ/a` ca` . Then setting the continuous variables y to zero in inequality (22), we obtain the lifted integer cover inequality X X (36) γ` (ai )xi + Φ` (−ai )(ui − xi ) ≤ (u` − η)r − λ i∈N \C
i∈C
for KI . Similarly for a pack P ⊂ N with ` ∈ N \ P such that λ = ui ai − µ > 0, we have the lifted integer pack inequality X X (37) Φ` (ai )xi + ω` (−ai )(ui − xi ) ≤ µ − ηr i∈N \P
i∈P
for KI , where η and r are defined as before.
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
15
7. Final remarks Although the 0–1 knapsack set has been studied since 70s, research on integer and mixed integer knapsack sets is still relatively new. The study of integer polyhedra appears to be significantly harder than the study of 0–1 polytopes. One of the difficulties is that combinatorial arguments for 0–1 variables or extensions of these arguments do not lead to sufficiently strong results for integer variables. This is illustrated in Section 6 for integer knapsacks. A possible explanation for this difficulty is that for 0–1 problems, feasible points are among the vertices of the LP relaxation, whereas for integer problems, feasible points generally lie deep in their LP relaxations. Another challenge is that integer polyhedra is much richer than 0–1 polytopes. For instance, even though the convex hull of a 0–1 polytope in two dimensions is trivial, the same is not true for an integer polyhedron. However, it is possible to list all facets of an integer knapsack polyhedron in two variables in polynomial time in the size of the data. In Section 6 we give the facet condition for integer cover inequality (34) when ρ = ai i ∈ N . It is an open question what other values for ρ would yield facets. To gain a better understanding of integer knapsack polyhedra, it may be worthwhile to explore the connections between valid inequalities and primal methods for integer programming [1]. Weismantel’s work [35] on inequalities based on the elements of the Hilbert basis of the cone of exchange vectors for a special 0–1 knapsack is along this line. It is also of interest to see in what ways the knowledge on cyclic group and master knapsack facets [2] can facilitate the study of more general integer polyhedra.
References [1] K. Aardal, R. Weismantel, and L. A. Wolsey. Non–standard approaches to integer programming. CORE Discussion Paper 00/02, Universit´e Catholique de Louvain, 2000. [2] J. Ar´ aoz, L. Evans, E. L. Johnson, and R. E. Gomory. Cyclic group and knapsack facets. Mathematical Programming, to appear. [3] A. Atamt¨ urk. Flow pack facets of the single node fixed–charge flow polytope. Operations Research Letters, 29:107–114, 2001. [4] A. Atamt¨ urk. Sequence independent lifting for mixed–integer programming. Research Report BCOL.01.02, University of California at Berkeley, May 2001. Available at http://ieor.berkeley.edu/∼atamturk. [5] A. Atamt¨ urk. On the facets of mixed–integer knapsack polyhedra. Mathematical Programming, to appear. [6] A. Atamt¨ urk and D. Rajan. On splittable and unsplittable flow capacitated network design arc–set polyhedra. Mathematical Programming, 92:315–333, 2002. [7] E. Balas. Facets of the knapsack polytope. Mathematical Programming, 8:146–164, 1975. [8] E. Balas and E. Zemel. Facets of the knapsack polytope from minimal covers. SIAM Journal of Applied Mathematics, 34:119–148, 1978. [9] E. Balas and E. Zemel. Lifting and complementing yields all facets of positive zero–one programming polytopes. In R. W. Cottle et al., editor, Proceedings of the International Conference on Mathematical Programming, pages 13–24, 1984.
16
¨ ALPER ATAMTURK
[10] B. Brockm¨ uller, O. G¨ unl¨ uk, and L. A. Wolsey. Designing private line networks – Polyhedral analysis and computation. CORE Discussion Paper 9647, Universit´e Catholique de Louvain, 1996. [11] S. Ceria, C. Cordier, H. Marchand, and L. A Wolsey. Cutting planes for integer programs with general integer variables. Mathematical Programming, 81:201–214, 1998. [12] H. Crowder, E. L. Johnson, and M. W. Padberg. Solving large–scale zero–one linear programming problems. Operations Research, 31:803–834, 1983. [13] R. E. Gomory. Some polyhedra related to combinatorial problems. Linear Algebra and Its Applications, 2:451–558, 1969. [14] Z. Gu, G. L. Nemhauser, and M. W. P. Savelsbergh. Cover inequalities for 0–1 integer programs: Computation. INFORMS Journal on Computing, 10:427–437, 1998. [15] Z. Gu, G. L. Nemhauser, and M. W. P. Savelsbergh. Cover inequalities for 0–1 integer programs: Complexity. INFORMS Journal on Computing, 11:117–123, 1999. [16] Z. Gu, G. L. Nemhauser, and M. W. P. Savelsbergh. Lifted flow cover inequalities for mixed 0–1 integer programs. Mathematical Programming, 85:439–467, 1999. [17] Z. Gu, G. L. Nemhauser, and M. W. P. Savelsbergh. Sequence independent lifting in mixed integer programming. Journal of Combinatorial Optimization, 4:109–129, 2000. [18] P. L. Hammer, E. L. Johnson, and U. N. Peled. Facets of regular 0–1 polytopes. Mathematical Programming, 8:179–206, 1975. [19] Q. Louveaux and L. A. Wolsey. Lifting, superadditivity, mixed integer rounding, and single node flow sets revisited. CORE Discussion Paper 2003/1, Universit´e Catholique de Louvain, 2003. [20] T. L. Magnanti and P. Mirchandani. Shortest paths, single origin-destination network design, and associated polyhedra. Networks, 23:103–121, 1993. [21] T. L. Magnanti, P. Mirchandani, and R. Vachani. The convex hull of two core capacitated network design problems. Mathematical Programming, 60:233–250, 1993. [22] H. Marchand and L. A. Wolsey. The 0-1 knapsack problem with a single continuous variable. Mathematical Programming, 85:15–33, 1999. [23] H. Marchand and L. A. Wolsey. Aggregation and mixed integer rounding to solve MIPs. Operations Research, 49:363–371, 2001. [24] A. Martin and R. Weismantel. Contribution to general mixed integer knapsack problems. Technical Report SC 97-38, Konrad–Zuse–Zentrum f¨ ur Informationstechnik Berlin, 1997. [25] D. R. Mazur and L. A. Hall. Facets of a polyhedron closely related to the integer knapsack–cover problem. October 2002. [26] G. L. Nemhauser and L. A. Wolsey. A recursive procedure for generating all cuts for 0–1 mixed integer programs. Mathematical Programming, 46:379–390, 1990. [27] M. W. Padberg. On the facial structure of set packing polyhedra. Mathematical Programming, 5:199– 215, 1973. [28] M. W. Padberg. Covering, packing and knapsack problems. Annals of Discrete Mathematics, 4:265–287, 1979. [29] M. W. Padberg. A note on 0–1 programming. Operations Research, 23:833–837, 1979. [30] M. W. Padberg. (1, k)–configurations and facets for packing problems. Mathematical Programming, 18:94–99, 1980. [31] Y. Pochet and R. Weismantel. The sequential knapsack polytope. SIAM Journal on Optimization, 8:248–264, 1998. [32] Y. Pochet and L. A. Wolsey. Integer knapsack and flow covers with divisible coefficients: Polyhedra, optimization, and separation. Discrete Applied Mathematics, 59:57–74, 1995.
COVER AND PACK INEQUALITIES FOR (MIXED) INTEGER PROGRAMMING
17
[33] J.–P. P. Richard, I. R. de Farias, and G. L. Nemhauser. Lifted inequalities for 0–1 mixed integer programming : Basic theory and algorithms. In Integer Programming and Combinatorial Optimization, 9th International IPCO Conference, Proceedings, pages 161–175, 2002. [34] S. P. M. van Hoesel, A. M. C. A. Koster, R. L. M. J. van de Leensel, and M. W. P. Savelsbergh. Polyhedral results for the edge capacity polytope. Mathematical Programming, 92:335–358, 2002. [35] R. Weismantel. Hilbert bases and the facets of special knapsack polytopes. Mathematics of Operations Research, 21:886–904, 1996. [36] R. Weismantel. On the 0/1 knapsack polytope. Mathematical Programming, 77:49–68, 1997. [37] L. A. Wolsey. Faces for linear inequality in 0-1 variables. Mathematical Programming, 8:165–178, 1975. [38] L. A. Wolsey. Facets and strong valid inequalities for integer programs. Operations Research, 24:367–372, 1976. [39] L. A. Wolsey. Valid inequalities and superadditivity for 0/1 integer programs. Mathematics of Operations Research, 2:66–77, 1977. [40] E. Zemel. Lifting the facets of zero-one polytopes. Mathematical Programming, 15:268–277, 1978. [41] E. Zemel. Easily computable facets of the knapsack polytope. Mathematics of Operations Research, 14:760–764, 1989.