Lifting 2-integer knapsack inequalities A. Agra M.F. Constantino University of Aveiro and C.I.O. D.E.I.O., University of Lisbon and C.I.O. aagra@mat.ua.pt miguel.constantino@fc.ul.pt October 1, 2003 Abstract In this paper we discuss the generation of strong valid inequalities for (mixed) integer knapsack sets based on lifting of valid inequalities for basic knapsack sets with two integer variables (and one continuous variable). The description of the basic polyhedra can be made in polynomial time. We use superadditive valid functions in order to obtain sequence independent lifting. 1 Introduction The idea of lifting was introduced by Gomory (1969). An important contribution was given by Wolsey (1977) when the link between superadditivity and the lifting procedure was established. The use of superadditive functions in the lifting procedure allows the introduction of several variables simultaneously which reduces the computational burden of the generation of valid inequalities. The procedure of lifting has been explored more intensively in the last few years for the generation of strong valid inequalities for (mixed) integer sets. Usually these inequalities are obtained from the lifting of facet defining inequalities of elementary polyhedra. We mention the works of Gu, Nemhauser & Savelsbergh (1999) and Gu, Nemhauser & Savelsbergh (2000) on the single node flow sets and on the use of superadditivity, the papers of Marchand & Wolsey (1999) and Marchand & Wolsey (2001) based on the lifting of the well known MIR inequalities. More recently Atamtürk has produced important work (2001a, 2001b, 2002) on the lifting of valid inequalities for mixed integer sets. P |N | We consider the integer set Y = {y ∈ N0 : j∈N aj yj ≤ D} and the mixed integer set X = P |N | {(y, s) ∈ N0 × R : j∈N aj yj ≤ D + s, s ≥ 0} where aj , j ∈ N and D are positive integers. These sets may arise as aggregation of more general (mixed) integer sets or as subsets of more complex sets. First we consider the restriction of both sets obtained by setting all but two integer variables to zero. Suppose y1 , y2 are those variables, thus the restricted sets are, respectively, Y≤ = {(y1 , y2 ) ∈ N20 : a1 y1 + a2 y2 ≤ D} and R = {(y1 , y2 , s) ∈ N20 × R : a1 y1 + a2 y2 ≤ D + s, s ≥ 0}. Then, for each facet defining inequality of the convex hull of the restricted sets we construct valid inequalities for X and Y using superadditive valid lifting functions. In Section 2 we review some concepts on the lifting procedure. In Section 3 we summarize some results on the description of the 2-integer knapsack polyhedra. In Section 4 a polinomial superadditive valid lifting function for tight valid inequalities for the 2-integer knapsack set is given. In Section 5 1 we consider facet defining inequalities and characterize the lifting function for those inequalities. In Section 6 we construct several superadditive valid lifting functions for the facet defining inequalities. In Section 7 the results obtained in the previous sections are adapted to the integer knapsack set with a continuous variable. The computational experience is reported in Section 8. 2 Lifting and superadditivity In this section we introduce the basic concepts of the lifting procedure applied to the generation of valid inequalities for Y. These concepts are well known for the binary case (see, for instance, Wolsey 1977, Gu et al. 2000) and recently have been extended for the integer case (Atamtürk 2001b). Consider the |M | P restriction of this set obtained by setting yj = 0, j ∈ N \ M : YM = {y ∈ N0 : j∈M aj yj ≤ D}. Suppose X αj yj ≤ α, (2.1) j∈M is a valid inequality for YM . We assume that (2.1) is tight for YM . The lifting problem consists of computing the lifting coefficients αj , for j ∈ N \ M in order to obtain a valid inequality X X αj yj + αj yj ≤ α j∈M j∈N \M for Y. To compute these coefficients we use the lifting function associated with (2.1), X φM (z) = min α − αj yj j∈M X s.t. aj yj ≤ D − z, j∈M yj ≥ 0, and integer, j ∈ M. One way to lift variables is to introduce them one at a time (sequential lifting). Suppose y k , k ∈ N \ M is the first variable to be introduced. In order to obtain a valid inequality for Y M ∪{k} the lifting coefficient αk must satisfy αk × yk ≤ φM (ak × yk ) for yk = 1, 2, . . . , bD/ak c, thus φM (ak × n) αk ≤ min . n n=1,...,bD/ak c For z ∈]0, D], we denote by φIM (z) = minn=1,...,bD/zc { φM (z×n) } the function that gives the upper n bound on the lifting coefficients. Notice that if yk is binary then αk ≤ φM (ak ). Formally, Proposition 2.1 If (2.1) is valid for YM and αk ≤ φIM (ak ) then X αj yj + α k yk ≤ α (2.2) j∈M is valid for YM ∪{k} . If (2.1) defines a facet of conv(YM ) and αk = φIM (ak ) then (2.2) defines a facet of conv(YM ∪{k} ). The lifting function associated with (2.2) is φM ∪{k} (z) = min n=0,...,bD/ak c 2 {φM (z + nak ) − nαk }. (2.3) If yk is binary then n = 0, 1. The value of the lifting function may decrease as the set of variables is increased because φ M ∪{k} (z) ≤ φM (z) (consider n = 0 in (2.3)). Thus the lifting coefficients may depend on the order that the variables are lifted. However there are cases where the order is not important. This happens when the lifting function has a nice property. Definition 2.2 A function f : A ⊆ R → R is superadditive on A if f (x1 ) + f (x2 ) ≤ f (x1 + x2 ) for all x1 , x2 , x1 + x2 ∈ A. Theorem 2.3 If φM is superadditive on [0, D] ⊆ R then, for all z ∈ [0, D] (i) φM (z) = φM ∪{k} (z) for all k ∈ N \ M ; (ii) φM (z) = φIM (z). In general the lifting function is not superadditive. In that cases if we want to lift simultaneously all variables we may use other functions. Definition 2.4 A function ψ is said a valid lifting function if ψ(z) ≤ φM (z) for all z ∈ [0, D]. Proposition 2.5 If ψ is a superadditive valid lifting function then ψ(z) ≤ φ IM (z) for all z ∈ [0, D]. Thus, if a valid lifting function is supperadditive we can use it to compute the lifting coefficients simultaneously. The following definition will be useful to compare several valid lifting functions. Definition 2.6 A valid lifting function ψ on A is said non-dominated if there is no other valid lifting function χ such that ψ(z) ≤ χ(z) ≤ φM (z), for all z ∈ [0, D] and χ(z 0 ) > ψ(z 0 ) for some z 0 ∈ [0, D]. Next we consider another property of the superadditive valid lifting functions. Definition 2.7 Let E = {z ∈ [0, D] : φM ∪S (z) = φM (z)} for all S ∈ N \ M, S 6= ∅. If ψ(z) = φM (z), for all z ∈ E, ψ is said a maximal superadditive valid lifting function. In order to prove the existence of a superadditive valid lifting function Gu et al. (2000) constructed the following function: ζ(z) = minu∈[0,D−z] {φM (z + u) − φM (u)}. And, using this function, they prove the following result. Lemma 2.8 If φM (z) is integer for all z and if ψ is a superadditive valid lifting function such that ψ(z) > φM (z) − 1 for all z and ψ(z 0 ) = φM (z 0 ) then z 0 ∈ E. 3 Results on polyhedral 2-integer knapsack polyhedra In this section we summarize some results on the polyhedral description of the convex hull of the 2-integer knapsack sets: Y≤ = {(y1 , y2 ) ∈ N20 : a1 y1 + a2 y2 ≤ D} and Y≥ = {(y1 , y2 ) ∈ N20 : a1 y1 + a2 y2 ≥ D}. In order to obtain the extreme points of conv(Y≤ ), denoted by (aj , bj ), that maximize functions f2 a2 f1 y1 + f2 y2 with ≤ we can use the following algorithm given by Hirschberg & Wong (1976). f1 a1 3 Algorithm HW a2 a2 D k k ` ` , 0), k ← 1, (c , d ) ← ( , 1), ` ← 1, (e , f ) ← ( , 1), r ← 1 Step 0: j ← 1, (a , b ) ← ( a1 a1 a1 Step 1: While aj − ck ≥ 0 do Set γ(aj , bj ) ← D − a1 aj − a2 bj , R≤ (ck , dk ) ← −a1 ck + a2 dk , R≥ (e` , f ` ) ← a1 e` − a2 f ` (i) if γ(aj , bj ) ≥ R≤ (ck , dk ) set j ← j + 1, (aj , bj ) ← (aj−1 , bj−1 ) + r(−ck , dk ); (ii) if γ(aj , bj ) < R≤ (ck , dk ) and R≤ (ck , dk ) ≥ R≤ (e` , f ` ) set k ← k + 1, (ck , dk ) ← (ck−1 , dk−1 ) + r(e` , f ` ); (iii) if γ(aj , bj ) < R≤ (ck , dk ) and R≤ (ck , dk ) < R≤ (e` , f ` ) set ` ← ` + 1, (e` , f ` ) ← (e`−1 , f `−1 ) + r(ck , dk ). j j This algorithm is not polynomial and some points (a, b) generated may not be extreme. In order to obtain only the extreme points in polynomial time instead of computing, in Step 1, r = 1 it suffices to compute r as follows: j γ(aj , bj ) a (i) r = min , k ; R≤ (cj , dj ) c R≤ (ck , dk ) R≤ (ck , dk ) − γ(aj , bj ) (ii) r = min , ; R≥ (e` , f ` ) R≥ (e` , f ` ) R≥ (e` , f ` ) . (iii) r = R≤ (ck , dk ) Although we are interested in obtaining the extreme points in polynomial time, the non polynomial Algorithm HW has some properties that we will use later. We denote by k(`) the index of the pair (c, d) used in (iii) of Step 1 to obtain (e ` , f ` ), this is, ` (e , f ` ) = (e`−1 , f `−1 ) + (ck(`) , dk(`) ). Similarly, we denote by `(k) the index of the pair (e, f ) used in (ii) of Step 1 to obtain (c, d), and by k(j) the index of the pair (c, d) used in (i) of Step 1 to obtain to obtain (aj , bj ). In this last case `(k(j)) denote the index of the pair (e, f ) used to obtain (c k(j) , dk(j) ). Let n1 and n2 denote the number of distinct pairs (c, d) and (e, f ) generated, respectively. Now we summarize some of the properties of these coefficients. Lemma 3.1 (i) e` ck − f ` dk = 1 if either ` = `(k) or k = k(`). c1 cn1 en 2 a2 e1 (ii) 1 ≤ · · · ≤ n1 ≤ ≤ n2 ≤ · · · ≤ 1 . d d a1 f f ck e` (iii) k , for k = 1, . . . , n1 ( ` , for ` = 1, . . . , n2 ) are the best approximations from below (from above) d f a2 for that size denominator. to a1 (iv) (a) The set {(c1 , d1 ), . . . , (ck , dk )} is an integral Hilbert basis for Cone{(c1 , d1 ), (ck , dk )}. (b) The set {(e1 , f 1 ), . . . , (e` , f ` )} is an integral Hilbert basis for Cone{(e1 , f 1 ), (e` , f ` )}. The first three properties are well known since the coefficients (c, d), (e, f ) are those obtained by the a2 continuous fraction method to approximate (see Schrijver 1986). Property (iv) is essentially due a1 to (Weismantel 1996). f2 a2 To obtain the extreme extreme points that maximize functions with > it suffices to exchange f1 a1 a1 with a2 . This algorithm can be easily adapted to generate the extreme points of conv(Y ≥ ). 4 4 Lifting the 2-integer knapsack inequalities In this section we consider the lifting of the 2-integer knapsack facet defining inequalities in order to obtain valid inequalities for Y. First we consider the restriction of Y obtained by setting all but two variables to zero. W.l.o.g. we assume that those two variables are y1 and y2 . Thus the restricted set is YM = Y≤ = {(y1 , y2 ) ∈ N20 : a1 y1 + a2 y2 ≤ D}, where M = {1, 2}. If either a1 /a2 or a2 /a1 are integer conv(YM ) has only one non trivial facet and, in that case, we may use the well known superadditive mixed integer rounding function as it is shown in Section 5. Thus we assume that a 1 /a2 and a2 /a1 are not integer. Consider a valid inequality α1 y1 + α 2 y2 ≤ α (4.1) α2 α2 ≤ aa21 . The case α > aa21 can be reduced to the previous one by for Y≤ . In this section we consider α 1 1 exchanging a1 with a2 . Let φ(z), 0 ≤ z ≤ D, be the lifting function associated to (4.1). For 0 ≤ z ≤ D, the value of φ(z) is obtained by solving the following knapsack problem, φ(z) min α − α1 y1 − α2 y2 = a 1 y1 + a 2 y2 ≤ D − z s.t. y1 , y 2 ∈ N 0 . For simplicity of notation we will omit the subscript M when M = {1, 2}. In general φ is not superadditive. Example 4.1 Consider the following set. {21y1 + 76y2 + 3y3 + 16y4 ≤ 1154, yj ≥ 0, and integer, j = 1, 2, 3, 4}. The inequality 5y1 + 18y2 ≤ 274 is valid for the restricted set with y3 = y4 = 0. The lifting function is: φ(z) = min 274 − 5y1 − 18y2 21y1 + 76y2 ≤ 1154 − z, s.t. y1 , y 2 ∈ N 0 . 6 5 4 3 2 1 φ φI b ppppp pppppppppp 2 ppppp b ppppp b ppppppppppp pp pppppppppppppp 7 b pppppppppp pp b pppppppppppppppppp pp pppppppppppppp 10 15 20 23 z Figure 1: Non superadditive lifting function of Example 4.1. The graph of this function and the graph of φI , for 0 ≤ z ≤ 23, are shown in Figure 1. Considering z1 = 3 and z2 = 16 we have φ(3) + φ(16) = 5 > φ(19) = 4 and φI (3) + φI (16) = 0.5 + 3.6667 = 5 4.1667 > φI (19) = 4. Thus, functions φ and φI are not superadditive. Introducing y3 before y4 we obtain 5y1 + 18y2 + 0.5y3 + 3.333y4 ≤ 274, (5y1 + 18y2 + y3 + 3y4 ≤ 274, if y3 , y4 were binary) and introducing y3 after y4 we obtain, 5y1 + 18y2 + 0.0833y3 + 3.6667y4 ≤ 274 (5y1 + 18y2 + 0y3 + 4y4 ≤ 274, in the binary case). Therefore, the lifting coefficients are sequence dependent. 4.1 A polynomial superadditive valid lifting function As φ, in general, is not superadditive, we will construct superadditive valid lifting functions. The following proposition will help us to find such a function. Proposition 4.2 Consider a function f : I = [0, D] ⊆ R+ 0 → R satisfying (i) f (0) = 0, (ii) f is convex. Then f is superadditive on I. The proof is given in the Appendix. Next we construct a function, ψ1 , considering the convex lower envelope of the graph of φ. Given the knapsack coefficients, a1 , a2 , D, let us define γ(a, b) = D − a1 a − a2 b and, for the inequality, α1 y1 + α2 y2 ≤ α define τ (a, b) = α − α1 a − α2 b. If (a, b) belongs to an ordered set E = {(At , B t ), t = 1, . . . , j}, then we use the notation γ t = γ(At , B t ) and τ t = τ (At , B t ). The function ψ1 is a piecewise linear function whose graph contains the points (0, 0), (γ j , τ j ), . . . , (γ 1 , τ 1 ). Although we are constructing ψ1 for a general ordered set E, in particular, we are concerned with a subset of the set of the extreme points of conv(Y≤ ). 5 4 3 2 1 6 b r b ψ1 (γ j−3 , τ j−3 ) b r (γ j , τ j ) b r j−1 j−1 2(γ , τ ) b r (γ j−2 , τ j−2 ) 7 10 15 20 23 z Figure 2: Function ψ1 for Example 4.1. Consider the function ψ1 , depending on the set E (set of ordered points), α1 , α2 , α (coefficients of the valid inequality) and a1 , a2 , D (coefficients of the knapsack constraint), defined by 0, t−1 t t ψ1 (z) = τ t + γτ t−1 −τ t (z − γ ), −γ 1 α1 τ + a1 (z − γ 1 ), 0 ≤ z ≤ γj , γ t < z ≤ γ t−1 , t = 2, . . . , j, γ 1 < z ≤ D, The following propositions are proved in the Appendix. 6 Proposition 4.3 Let E = {(At , B t ), t = 1, . . . , j} be a set of points satisfying 0 ≤ Aj ≤ · · · ≤ A1 , A1 − A 2 Aj−1 − Aj B j > · · · > B 1 ≥ 0, γ t > γ t+1 and τ t > τ t+1 for t = 1, . . . , j − 1. If 2 < · · · < B − B1 B j − B j−1 a2 α2 ≤ , then ψ1 is convex on [0, D]. ≤ α1 a1 We are considering inequalities (4.1) defining proper faces of conv(Y≤ ) so, containing at least one extreme point of conv(Y≤ ). In this case, the set E is the subset of extreme points {(a1 , b1 ), . . . , (aj , bj )}, ck(j) π2 α2 a2 of conv(Y≤ ) that maximizes functions π1 y1 + π2 y2 with k(j) ≤ ≤ ≤ . It can be shown that π1 α1 a1 d γ t > γ t+1 and τ t > τ t+1 for t = 1, . . . , j − 1. The following result ensures that ψ1 is a valid supperadditive lifting function on [0, D]. In order to use this result notice that for t = 1, . . . , j − 1, dk(t) y1 + ck(t) y2 ≤ dk(t) at + ck(t) bt is a valid inequality for Y≤ and that b1 = 0. Notice that the “first” extreme point of conv(Y≤ ) is (a1 , b1 ) = (b aD1 c, 0). Proposition 4.4 Let E, α1 , α2 , α, a1 , a2 , D be the parameters satisfying the conditions of Proposition 4.3 and suppose that they satisfy, additionally, the following conditions: (i) B 1 = 0, (ii) for all t = 2, . . . , j, the inequality α1t y1 + α2t y2 ≤ α1t At + α2t B t , where α1t = B t − B t−1 , α2t = At−1 − At , is valid for Y≤ . Then, the function ψ1 is a superadditive valid lifting function on [0, D]. As the number of extreme points of conv(Y≤ ) is polynomial and, as those points can be generated in polynomial time using the polynomial version of Algorithm HW (see Hirschberg & Wong 1976), it follows that ψ1 can be constructed in polynomial time. 5 Characterization of the lifting function for a facet defining inequality In order to construct better superadditive valid lifting functions, this means, functions ψ satisfying ψ1 (z) ≤ ψ(z) ≤ φ(z) for all z ∈ [0, D] we need to characterize the lifting function φ. In this section we impose the hypotheses that (4.1) defines a facet of conv(Y≤ ). Therefore, we assume the facet includes two points (aj−1 , bj−1 ) and (aj , bj ) generated by the Algorithm HW and so we assume α1 = dk(j) , α2 = ck(j) and α = dk(j) aj + ck(j) bj . For the particular case of the facet defining inequality with coefficients α1 = d1 = 1, α2 = c1 we may consider the well known mixed integer rounding function (see Nemhauser & Wolsey 1988) ( k, if ka1 < z ≤ ka1 + γ j−1 , k ∈ {0, . . . , α1 }, ψ(z) = z−ka1 −γ j−1 k + a1 −γ j−1 , if ka1 + γ j−1 < z ≤ (k + 1)a1 , k ∈ {0, . . . , α1 }, which is known to be superadditive. Therefore we will exclude this case from now on. Thus we assume c1 α2 ck(j) a2 < = k(j) ≤ . 1 d α1 a1 d Figure 1 shows that φ is a stepwise function. The length of the first step is γ(a j−1 , bj−1 ) = D − a1 aj−1 − a2 bj−1 = 2 and the following steps have length either 3 or 5. Initially, the hight of each step is increased by one unit which follows from the properties of the coefficients of the facet defining inequalities (see (i) in Lemma 3.1). 7 6 4 3 Γ2 r z = 10 6 Γ5 Γ0 r r z = 23 z = 2 rΓ 2 3 z = 15 - Γr (7, −2) 1 1 z = 7 Γ4 (−11, 3) z = 20 40 43 44 47 51 r 54 z = 0 Figure 3: Computing function φ given in Example 4.1. For simplicity we refer to solutions of φ(z) instead of solutions to the problem associated to φ(z). Figure 3 shows how the optimal solution to φ(z) can be obtained. Notice that starting from (44, 3) (optimal solution to φ(2) = 0) the optimal solutions to the corresponding problems when we increase z can be obtained using two possible moves: (2, −7) and (−11, 3). This last move is only used when the first one can not be used because the second coordinate becomes negative. So, for a given integer v we aim to find the solution associated to the greatest z such that φ(z) = v. To find this solution only these two “moves” have to be considered. Notice that after some iterations the value of the first coordinate may become negative and, in that case, we may conclude that for the corresponding v ∈ {1, . . . , α} there is no z such that φ(z) = v. Next we formalize these ideas and establish some results on the properties of function φ. First we characterize the solutions that are obtained using these two moves and prove that these moves are cyclical where each cycle has length α1 . We also prove that in the first cycle all the solutions obtained using these two moves are feasible. Then, in Theorem 5.11 we characterize the function φ. For v = 1, . . . , α, we define the set Z(v) = {0 ≤ z ≤ D : φ(z) = v}. If Z(v) 6= ∅ then Z(v) has a maximum. Below we show that this set is not empty for v = 1, . . . , α1 . We denote by Γv = (pv1 , pv2 ) the v th point generated using those two moves. Formally, for v = 0, 1, . . . α − 1, ( (pv1 , pv2 ) + (ck(j)−1 , −dk(j)−1 ) if pv2 − dk(j)−1 ≥ 0, v+1 v+1 v+1 Γ = (p1 , p2 ) = (pv1 , pv2 ) − (e`(k(j)) , −f `(k(j)) ) if pv2 − dk(j)−1 < 0, where Γ0 = (aj−1 , bj−1 ). Example 1 (Cont.). See Figure 3. For a1 = 21, a2 = 76, we have (c1 , d1 ) = (3, 1), (c2 , d2 ) = (7, 2), (c3 , d3 ) = (18, 5) and (e1 , f 1 ) = (4, 1), (e2 , f 2 ) = (11, 3). Thus α1 = d3 = 5, α2 = c3 = 18. As (aj−1 , bj−1 ) = (44, 3), (aj , bj ) = (26, 8), then Γ0 = (44, 3); p02 = 3 ≥ d2 = 2 ⇒ Γ1 = (44, 3) + (7, −2) = (51, 1); p12 < d2 ⇒ Γ2 = (51, 1) + (−11, 3) = (40, 4); p22 > d2 ⇒ Γ3 = (47, 2); p32 > d2 ⇒ Γ4 = (54, 0); p42 < d2 ⇒ Γ5 = (43, 3). Lemma 5.1 τ (Γv ) = v, ∀v ∈ {0, . . . , α}. 8 Proof: We prove this result by induction. As the point (aj−1 , bj−1 ) belongs to the facet defined by the valid inequality (4.1), we have τ (Γ0 ) = 0. Suppose that τ (Γv ) = v. Using Lemma 3.1, −dk(j) ck(j)−1 + ck(j) dk(j)−1 = 1. Thus, if pv2 − dk(j)−1 ≥ 0, we have τ (Γv+1 ) = α − α1 pv+1 − α2 pv+1 = 1 2 v v k(j)−1 k(j)−1 v k(j) k(j)−1 k(j) k(j)−1 α − α 1 p1 − α 2 p2 − α 1 c + α2 d = τ (Γ ) − d c +c d = v + 1. Similarly, since k(j)−1 k(j) `(k(j)) k(j) `(k(j)) v+1 v < 0. 2 d e −c f = 1, we conclude that τ (Γ ) = v + 1 if p2 − d Lemma 5.2 pv2 < α1 = dk(j) , ∀v ∈ {0, . . . , α}. Proof: Notice that dk(j) = f `(k(j)) + dk(j)−1 . We use induction. For v = 0 we have p02 = bj−1 < dk(j) , otherwise (aj−1 , bj−1 ) would not be an extreme point. Suppose that pv2 < f `(k(j)) + dk(j)−1 . If pv2 < dk(j)−1 then pv+1 = pv2 + f `(k(j)) < dk(j)−1 + f `(k(j)) . If dk(j)−1 ≤ pv2 < dk(j)−1 + f `(k(j)) 2 then 0 ≤ pv+1 = pv2 − dk(j)−1 < dk(j)−1 + f `(k(j)) . 2 2 Now we introduce parameters that indicate the move to take in each iteration. For v = 1, . . . , α define: ( 1 if Γv = Γv−1 + (ck(j)−1 , −dk(j)−1 ), δv = 0 if Γv = Γv−1 − (e`(j)−1 , −f `(k(j)) ). Pq q q Let us denote ∆qp = j=p δj , for q ≥ p and ∆p = 0, otherwise. ∆p indicates the number of k(j)−1 k(j)−1 p−1 q moves using the direction (c , −d ) to go from Γ to Γ . The following results are useful to compute the values of these parameters. j−1 b + v × f `(k(j)) v Lemma 5.3 ∆1 = , ∀v ∈ {1 . . . α}. α1 Proof: Let n = ∆v1 . We know that pv2 = bj−1 −ndk(j)−1 +(v −n)f `(k(j)) = bj−1 −n(dk(j)−1 +f `(k(j)) )+ vf `(k(j)) = bj−1 − ndk(j) + vf `(k(j)) . As pv2 ≥ 0 and, from Lemma 5.2, pv2 < dk(j) we have, bj−1 + v × f `(k(j)) bj−1 + v × f `(k(j)) − 1 < n ≤ . dk(j) dk(j) j−1 b + v × f `(k(j)) Thus, n = . dk(j) 2 Next we stat that the sequence of parameters δ v is cyclical. Corollary 5.4 Let v = tα1 +r with r ∈ {1, . . . , α1 } and t ∈ {1, . . . , bα/α1 c}. Then ∆v1 = ∆r1 +tf `(k(j)) . Proof: Considering in Lemma 5.3 v = tα1 +r we have ∆v1 = b b 2 j−1 +rf `(k(j)) α1 +tf `(k(j)) c = ∆r1 +tf `(k(j)) . Using Corollary 5.4 to compute the points Γv we obtain the following result. Proposition 5.5 Let v = tα1 + r with r ∈ {1, . . . , α1 } and t ∈ {1, . . . , bα/α1 c}. Then, Γv = Γr + t(−1, 0) 9 Proof: Γv can be written as Γv = Γ0 + v X δi (dk(j)−1 , −ck(j)−1 ) − i=1 = Γ0 + v X + i=1 δi (ck(j)−1 , −dk(j)−1 ) − δi (c (1 − δi )(e`(k(j)) , −f `(k(j)) ) i=1 i=tα1 +1 tα1 X v X v X (1 − δi )(e`(k(j)) , −f `(k(j)) ) i=tα1 +1 k(j)−1 , −d k(j)−1 )− tα1 X (1 − δi )(e`(k(j)) , −f `(k(j)) ). i=1 Ptα1 tα1 = Corollary 5.4 implies (i) δtα1 +k = δk for k ∈ {1, . . . , α1 } and (ii) i=1 (1 − δi ) = tα1 − ∆1 t(α1 − f `(k(j)) ) = tdk(j)−1 . Using (i), (ii) and part (i) of Lemma 3.1, it follows that, Γv = Γr + tf `(k(j)) (ck(j)−1 , −dk(j)−1 ) − tdk(j)−1 (e`(k(j)) , −f `(k(j)) ) = Γr + t(−1, 0). 2 Next we present a technical result we will use later. The proof can be found in the Appendix. Lemma 5.6 |∆s1 − ∆r+s r+1 | ≤ 1 for all s, r ∈ {1, . . . , α}, such that s + r ∈ {1, . . . , α}. It is important to notice that there is no guarantee that pv1 ≥ 0. Therefore Γv may not be a feasible solution to φ(z). Next consider, for each z ∈ [0, D], the following relaxation of the problem associated to the lifting function where y1 may assume negative values: φ(z) = min{α − α1 y1 − α2 y2 : a1 y1 + a2 y2 ≤ D − z, y1 ∈ Z, y2 ∈ N0 }. Let zv = max{0 ≤ z ≤ D : φ(z) = v}, for v = 0, . . . , α. Notice that φ(Γv ) = v so, there always exists a z ∈ [0, D] such that φ(z) = v. For v = 0 we have z0 = γ(aj−1 , bj−1 ) = γ j−1 . As φ is a non decreasing function, zv+1 ≥ zv for all v = 0, . . . , α − 1. Next we explain how to obtain the optimal solution to φ(zv ) for all v = 1, . . . , α. Notice that if φ(zv ) has more than one optimal solution then ck(j) a2 α2 = k(j) = . α1 a1 d Proposition 5.7 Γv = (pv1 , pv2 ) is an optimal solution to φ(zv ) for v = 1, . . . , α. Proof: We prove by induction. Γ0 = (aj−1 , bj−1 ) is an optimal solution to φ(z0 ). Suppose Γv = (pv1 , pv2 ) is an optimal solution to φ(zv ) and that (p1 , p2 ) is an optimal solution to φ(zv+1 ). We are assuming α2 ck(j) a2 c1 < = k(j) ≤ . Next we consider two cases: (i) p1 ≥ pv1 and p2 ≤ pv2 ; (ii) p1 ≤ pv1 and p2 ≥ pv2 . 1 d α1 a1 d The proof that it can not occur p1 > pv1 , p2 > pv2 and p1 < pv1 , p2 < pv2 , is trivial. Consider case (i). Let (a, b) = (p1 −pv1 , pv2 −p2 ). Now we prove that (a, b) ∈ Cone{(a2 , a1 ), (b aa21 c, 1)}. Notice that (c1 , d1 ) = (b aa12 c, 1). Let (a, b) = λ1 (a2 , a1 ) + λ2 (c1 , d1 ). We must show that λ1 , λ2 ≥ 0. The case λ1 , λ2 < 0 can not occur because a ≥ 0, b ≥ 0. If λ1 ≥ 0 and λ2 < 0 we obtain zv+1 = D − a1 p1 − a2 p2 = D − a1 (pv1 + a) − a2 (pv2 − b) = D − a1 pv1 − a2 pv2 − a1 (λ1 a2 + λ2 c1 ) + a2 (λ1 a1 + λ2 d1 ) = zv +λ1 (−a1 a2 +a2 a1 )+λ2 (−a1 c1 +a2 d1 ) = zv +λ2 (−a1 c1 +a2 d1 ) < zv because, from (ii) of Lemma 3.1, −a1 c1 + a2 d1 > 0. This is absurd since zv+1 ≥ zv . Consider λ1 < 0 and λ2 ≥ 0. First assume b > 0. Notice that inequalities λ1 < 0, λ2 ≥ 0 and c1 a λ1 a2 + λ 2 c 1 c1 a c1 α2 c1 a2 > 1 imply = < . Thus, since < < we have α b > bα1 > α1 a and 2 a1 d b λ 1 a 1 + λ 2 d1 d1 b d1 α1 d1 10 as d1 = 1 and all the coefficients are non negative integers, it follows that α2 b ≥ c1 bα1 + 1 ≥ α1 a + 2. Therefore v + 1 = α − α1 p1 − α2 p2 = α − α1 (pv1 + a) − α2 (pv2 − b) = α − α1 pv1 − α2 pv2 − α1 a + α2 b ≥ v + 2 which is absurd. If b = 0 then v + 1 = α − α1 p1 − α2 p2 = α − α1 (pv1 + a) − α2 (pv2 − b) = v − α1 a < v. From Lemma 3.1, part (iv), we know that (a, b) can be obtained as non negative integer combination Pn 1 k k of the vectors in G1 = {(c1 , d1 ), . . . , (cn1 , dn1 )}. Thus, (a, b) = k=1 ρk (c , d ) where ρk ≥ 0 and integer for all k = 1, . . . , n1 . Since v + 1 = α − α1 p1 − α2 p2 = α − α1 pv1 − α2 pv2 − α1 a + α2 b = v − α1 a + α2 b ⇒ −α1 a + α2 b = 1. Pn 1 ρk uk where uk = −α1 ck + α2 dk . Then, 1 = −α1 a + α2 b = k=1 Using Lemma 3.1 it can be shown that: uk < 0 for k > k(j), uk = 0 for k = k(j), uk = 1 for k = k(j) − 1, uk > 1 for k < k(j) − 1 (notice that α1 = dk(j) , α2 = ck(j) ). From Lemma 5.2 we have, for all v ∈ {1, . . . , α}, pv2 < dk(j) . Thus ρk = 0 for k > k(j) − 1, which implies ρk = 1 for k = k(j) − 1 and ρk = 0 for k < k(j) − 1. Thus (a, b) = (ck(j)−1 , dk(j)−1 ). The proof of case (ii) is similar. Consider (a, b) = (pv1 − p1 , p2 − pv2 ). Again, proving that (a, b) belongs to Cone{(d aa21 e, 1), (a2 , a1 )} then, from Lemma 3.1, (a, b) can be written as a non negative Pn 2 ρ` (e` , f ` ) linear combination of the vectors in G2 = {(e1 , f 1 ), . . . , (en2 , f n2 )}, this is, (a, b) = `=1 P n2 where ρ` ≥ 0 and integer, for all ` = 1, . . . , n2 . Similarly we conclude that 1 = α1 a − α2 b = `=1 ρ` ν` ` α2 where ν` = α1 e` − α2 f ` . Since α ≤ aa21 ≤ fe ` , we have ν` > 0 for all ` and, in particular, ν` = 1 1 for ` = `(k(j)), . . . , `(k(j) + 1) and ν` > 1 for all other values of `. Thus, ρ`∗ = 1 where `∗ ∈ {`(k(j)), . . . , `(k(j) + 1)} and ρ` = 0 for ` 6= `∗ . We must prove that `∗ = `(k(j)). Consider the solution Γv − (e`(k(j)) , −f `(k(j)) ). Let z 0 = D − a1 (pv1 − e`(k(j)) ) − a2 (pv2 + f `(k(j)) ). As z 0 > zv and as τ (Γv − (e`(k(j)) , −f `(k(j)) )) = v + 1 it follows that φ(z 0 ) = v + 1. By definition of zv+1 we have zv+1 ≥ z 0 . Suppose ρ` = 1 for ` ∈ {`(k(j)) + 1, . . . , `(k(j) + 1)}. Thus (a, b) = (e` , f ` ). Noticing that, for ` > `(k(j)), a1 e` − a2 f ` < a1 e`(k(j)) − a2 f `(k(j)) , it follows that zv+1 = D − a1 p1 − a2 p2 = D − a1 pv1 − a2 pv2 + a1 e` − a2 f ` = zv + a1 e` − a2 f ` < zv + a1 e`(k(j)) − a2 f `(k(j)) = z 0 ≤ zv+1 , which is absurd. Thus ρ` = 0 for ` = `(k(j)) + 1, . . . , `(k(j) + 1) and ρ`(k(j)) = 1. If pv2 − dk(j)−1 < 0 then Γv − (−ck(j)−1 , dk(j)−1 ) is not feasible. In this case (i) can not occur because, as we saw in the proof of (i), Γv − (−ck(j)−1 , dk(j)−1 ) is the unique point, (p1 , p2 ), satisfying p1 ≥ pv1 , p2 ≤ pv2 and τ (p1 , p2 ) = v + 1. If pv2 − dk(j)−1 ≥ 0 then τ (Γv − (−ck(j)−1 , dk(j)−1 )) = τ (Γv − (e`(k(j)) , −f `(k(j)) )) = v + 1. Noticing that −a1 ck(j)−1 +a2 dk(j)−1 > a1 e`(k(j)) −a2 f `(k(j)) we can prove, as we did above to prove `∗ = `(k(j)), that zv+1 is obtained at the point Γv −(−ck(j)−1 , dk(j)−1 ). Thus Γv+1 = Γv +(ck(j)−1 , −dk(j)−1 ) 2 is optimal to φ(zv+1 ). Starting at Γ0 = (aj−1 , bj−1 ), we may compute the optimal solution to φ(zv ) for all v = 1, . . . , α, iteratively. As the set of feasible solutions to φ(z) is a subset of the set of feasible solution to φ(z) we have the following consequence. Corollary 5.8 If pv1 ≥ 0 then Γv is the optimal solution to φ(z) for all zv−1 < z ≤ zv and, in this case φ(z) = v. Lemma 5.9 Z(v) 6= ∅ if and only if Γv is a feasible solution to φ(z), for all zv−1 < z ≤ zv . 11 Proof: If Γv is a feasible solution to φ(z), then Z(v) 6= ∅ because γ(Γv ) = γ(pv1 , pv2 ) belongs to Z(v). To prove the implication in the other direction suppose that Γv is not a feasible solution and that Z(v) 6= ∅. Then there exists z 0 ∈ Z(v) such that φ(z 0 ) = v. Let (a, b) be an optimal solution to φ(z 0 ). a − pv As v = τ (Γv ) = τ (a, b) then α − α1 pv1 − α2 pv2 = α − α1 a − α2 b ⇒ α1 (a − pv1 ) = α2 (pv2 − b) ⇒ v 1 = p2 − b a2 α2 a2 α2 α2 v v ≤ . Notice that a ≥ 0 > p1 , thus b < p2 . The case = can not occur because as α1 a1 α1 a1 α1 a2 for that size denominator, we would have pv2 − b ≥ dk(j) , contrais the best approximation to a1 a − pv1 a2 dicting Lemma 5.2. So, v < ⇒ a1 a − a1 pv1 < a2 pv2 − a2 b ⇒ −a1 pv1 − a2 pv2 < −a1 a − a2 b p2 − b a1 ⇒ D − a1 pv1 − a2 pv2 < D − a1 a − a2 b ⇒ zv = γ(pv1 , pv2 ) < γ(a, b). Setting z = γ(a, b) > zv we have φ(z) = φ(z) = v, obtained at (a, b), which contradicts the definition of zv . 2 It remains to determine the value of φ(z), zv−1 < z ≤ zv , when Z(v) = ∅. Proposition 5.10 Let zr < z ≤ zr+1 with r ∈ {1, . . . , α − 1}. Then φ(z) = v where v = min{j ∈ {r + 1, . . . , α} : pj1 ≥ 0}. Proof: Notice that φ(z) is integer for all z. For z > zr we have φ(z) > r. From Lemma 5.9, Z(k) = ∅ for all k = r + 1, . . . , v − 1, i.e., there is no z ≤ zv−1 such that φ(z) = k, for k = r + 1, . . . , v − 1, which implies φ(z) ≥ v, for z > zr . On the other hand, as Γv is a feasible solution to φ(z) with zr < z ≤ zr+1 , then φ(z) ≤ v. So φ(z) = v. 2 Finally, from this discussion we can characterize function φ. Theorem 5.11 Let vk denote the k th value in {1, . . . , α} such that Z(vk ) 6= ∅ and define v0 = 0. Thus ( 0, if 0 ≤ z ≤ z0 , φ(z) = vk+1 , if zvk < z ≤ zvk+1 , k ∈ {0, . . . , n∗ }, where n∗ denotes the number of values v ∈ {1, . . . , α} for which Z(v) 6= ∅. Lemma 5.12 Z(v) 6= ∅ for all v = 0, . . . , α1 . Proof: Suppose that there exists v ∈ {1, . . . , α1 } such that Z(v) = ∅ and Z(v − 1) 6= ∅. Notice that Z(0) 6= ∅. Thus p2v−1 − dk(j)−1 < 0 and p1v−1 − e`(k(j)) < 0 ⇒ p1v−1 ≤ e`(k(j)) − 1. Since bj = bj−1 + rdk(j) for some positive integer r, then bj ≥ dk(j) = dk(j)−1 + f `(k(j)) . So, as p2v−1 − dk(j)−1 < 0 we have p2v−1 < bj − f `(k(j)) . Hence φ(zv−1 ) = α − α1 p1v−1 − α2 p2v−1 = α1 (aj −p1v−1 )+α2 (bj −p2v−1 ) > α1 (aj −e`(k(j)) +1)+α2 (bj −bj +f `(k(j)) ) ≥ α1 (0−e`(k(j)) +1)+α2 f `(k(j)) = dk(j) − dk(j) e`(k(j)) + ck(j) f `(k(j)) = dk(j) − 1. Therefore, v − 1 = φ(zv−1 ) > α1 − 1 ⇒ v > α1 . 2 Lemma 5.12 states that for all v = 0, . . . , α1 , Γv is a feasible solution and therefore the optimal solution to φ(z). Let w1 = dk(j)−1 a2 − ck(j)−1 a1 and w2 = −f `(k(j)) a2 + e`(k(j)) a1 . Thus, w1 is the length of the steps corresponding to moves based in the vector (ck(j)−1 , −dk(j)−1 ) and w2 is the length of the steps corresponding to moves based in the vector (−e`(k(j)) , f `(k(j)) ). Using the notation of Algorithm HW we have w1 = R≤ (ck(j)−1 , dk(j)−1 ) and w2 = R≥ (e`(k(j)) , f `(k(j)) ). Hence w1 ≥ w2 . Notice that w1 − w2 = −a1 (ck(j)−1 + e`(k(j)) ) + a2 (dk(j)−1 + f `(k(j)) )) = −a1 ck(j) + a2 dk(j) = R≤ (ck(j) , dk(j) ). As γ j−1 ≥ 12 γ j − a1 ck(j) + a2 dk(j) (observe that (aj , bj ) = (aj−1 , bj−1 ) + r(−ck(j) , dk(j) ) for some integer r > 0) and as γ j ≥ 0 we have γ j−1 ≥ w1 − w2 . Next we state these conclusions as a result. Lemma 5.13 (i) w1 ≥ w2 ≥ 0; (ii) γ j−1 ≥ w1 − w2 . As a corollary of Proposition 5.5 and noticing that α1 w2 + f `(k(j)) (w1 − w2 ) = (α1 − f `(k(j)) )w2 + f `(k(j)) w1 = dk(j)−1 w2 + f `(k(j)) w1 = a1 (last equality follows from part (i) of Lemma 3.1) we obtain the following result. Corollary 5.14 Let v = tα1 + r with r ∈ {0, . . . , α1 − 1} and v ∈ {1, . . . , α}. Then zv = γ j−1 + vw2 + (w1 − w2 )∆v1 = γ j−1 + (tα1 + r)w2 + (tf `(k(j)) + ∆r1 )(w1 − w2 ) = γ j−1 + ta1 + rw2 + ∆r1 (w1 − w2 ). It can be verified that zvn∗ = zα = D. Remark 5.15 Although we are considering z ∈ [0, D], it is important for the study in Section 7, to −v describe φ on ] − ∞, 0[. In this case, for v ∈ N, we can obtain an optimal solution, Γ −v = (p−v 1 , p2 ), for φ(z−v ) iteratively, ( (e`(k(j)) , −f `(k(j)) ) if p2−v+1 − f `(k(j)) ≥ 0, −v −v+1 Γ =Γ + (−ck(j)−1 , dk(j)−1 ) if p2−v+1 − f `(k(j)) < 0, where Γ0 = (aj−1 , bj−1 ). Again we define, for v ∈ N, ( 1 if Γ−v = Γ−v+1 + (e`(k(j)) , −f `(k(j)) ), δ−v = 0 if Γ−v = Γ−v+1 + (−ck(j)−1 , dk(j)−1 ). Pv For v ∈ N and for z−v−1 < z ≤ z−v we have φ(z) = −v, where z−v = γ j−1 − vw2 − (w1 − w2 ) i=1 δ−i and Γ−v is an optimal solution to φ(z). This characterization, for z < 0, can be proven as we proved the corresponding properties for φ, with z ≥ 0. Notice that for all v ∈ N, {z ≤ 0 : φ(z) = −v} 6= ∅. 6 Superadditive valid lifting functions for facet defining inequalities In this section we construct new superadditive valid lifting functions, depending on the parameters γ j−1 , w1 , w2 , δ1 , . . . , δα , used to characterize the lifting function in the previous section. We start by considering functions with a similar analytical expression for intervals with the same length. To do that consider the family C of functions on [0, D] such that χ ∈ C if and only if χ is a superadditive valid lifting function and can be written as: if 0 ≤ z ≤ z0 , 0, χ(z) = v + χ1 (z − zv ), if zv < z ≤ zv+1 and δv+1 = 1, v = 0, . . . , α − 1, v + χ2 (z − zv ), if zv < z ≤ zv+1 and δv+1 = 0, v = 0, . . . , α − 1, ( r ki , if r ≤ ki , and 0 < k1 < w1 , 0 < k2 < w2 . This family will 1, if r > ki , also be very useful since it can easily be extended for the knapsack inequalities with one continuous variable as we will see in Section 7. where, for i ∈ {1, 2}, χi (r) = 13 Consider the function ψ2 that belongs to C with k1 = w1 and k2 = w2 , defined by, ( 0, if 0 ≤ z ≤ z0 , ψ2 (z) = z−zv v + zv+1 , if zv < z ≤ zv+1 , v = 0, . . . , α − 1. −zv An example of the graph of such function is shown in Figure 4. 6 5 4 3 2 1 ψ2 φ b b b b b z0 = 2 z1 = 7 z2 = 10 z3 = 15 z4 = 20 z5 = 23 z Figure 4: Example of ψ2 . Proposition 6.1 Function ψ2 is a valid supperadditive valid function on [0, D]. We omit the proof because below we construct a new function, ψ3 , dominating ψ2 and the proof of superadditivity of ψ2 is similar to the proof of superadditivity of ψ3 . Lemma 6.2 ψ1 (z) ≤ ψ2 (z), ∀z ∈ [0, D]. Proof: As ψ1 is convex on [0, D] then its epigraph, Epi(ψ1 ) = {(y, z) ∈ R × [0, D] : y ≥ ψ1 (z)}, is a convex set. Proposition 4.4 ensures (z, φ(z)) ∈ Epi(ψ1 ) for all z ∈ [0, D]. For all z ∈ [z0 , D], the point (z, ψ2 (z)) can be written as linear convex combination of two points: (zv , φ(zv )) and (zv+1 , φ(zv+1 )) in Epi(ψ1 ), where zv ≤ z ≤ zv+1 (for z ≤ z0 we have ψ2 (z) = φ(z)). So (z, ψ2 (z)) ∈ Epi(ψ1 ) which implies ψ1 (z) ≤ ψ2 (z), ∀z ∈ [0, D]. 2 Although ψ1 is dominated by ψ2 , it is important to notice that ψ1 (z) can be computed in a polynomial number of steps while ψ2 (z) may require a non polynomial number of elementary operations because we need to compute δ1 , . . . , δα1 . Notice also that the function ψ2 requires more restricted conditions than ψ1 , namely, it requires that (4.1) defines a facet of conv(Y≤ ). Next we construct a better superadditive valid lifting function. Consider ψ 3 (see Figure 5) defined by 0, if 0 ≤ z ≤ z0 , z−zv v + µ , if zv < z ≤ zv + µ and δv+1 = 0, v = 0, . . . , α − 1, ψ3 (z) = v + 1, if zv + µ < z ≤ zv+1 and δv+1 = 0, v = 0, . . . , α − 1, z−zv v + λ , if zv < z ≤ zv + λ and δv+1 = 1, v = 0, . . . , α − 1, v + 1, if zv + λ < z ≤ zv+1 and δv+1 = 1, v = 0, . . . , α − 1, where µ = w1 − γ j−1 and λ = w1 + (w1 − w2 ) − γ j−1 . Notice that as γ j−1 ≥ w1 − w2 we have µ ≤ w2 and λ ≤ w1 . Therefore, when γ j−1 > w1 − w2 , ψ3 dominates ψ2 . Proposition 6.3 The function ψ3 is a superadditive valid lifting function. 14 6 11 10 9 8 7 6 5 4 3 2 1 ψ3 knapsack constraint: 21y1 + 76y2 ≤ 1154 φ valid inequality: 3y1 + 11y2 ≤ 166 a a a a a a a a a - a z0 = 6 z1 = 14 z2 = 19 z3 = 27 z4 = 32 z5 = 40 z6 = 48 z7 = 53 z8 = 61 z9 = 69 Figure 5: Example of ψ3 with µ = 2 and λ = 5. The proof is left to the Appendix. In order to find better superadditive valid lifting functions we must consider more restrictive conditions on the sequence of the values of the parameters δ. Next we construct several valid lifting functions satisfying ψ3 (z) ≤ ψ4 (z) ≤ ψ5 (z) ≤ ψ6 (z) ≤ φ(z), ∀z ∈ [0, D], and indicate sufficient conditions on the parameters δ under which superadditivity holds. In that case these functions belong to C. n+m Proposition 6.4 If, for each n and m one of the following conditions hold: (i) ∆ m 1 ≥ ∆n+1 ; (ii) n+m ∆m 1 < ∆n+1 and δn+m+1 = 0, then the function if 0 ≤ z ≤ z0 , 0, z−zv ψ4 (z) = v + µ , if zv < z ≤ zv + µ, v = 0, . . . , α − 1, v + 1, if zv + µ < z ≤ zv+1 , v = 0, . . . , α − 1, where µ = w1 − γ j−1 , is a superadditive valid lifting function. The proof is similar to the proof of case δn+1 = δm+1 = 0 in Proposition 6.3. Noticing that the sequence of the parameters is cyclical it is only necessary to check conditions (i) and (ii) for n = 1, . . . , α 1 − 1 and m = 1, . . . , α1 . 5 4 3 2 1 6 ψ4 p p p p φ b pppp pppppp b p p p p p p p p p p p p p p p ppp pppppp pppppp b pppp pppppp b p p p p p p p p p p p p p p p ppppp pppppppppppppppp z0 = 2 z1 = 7 z2 = 10 z3 = 15 b pppppp pppppp p p p p p p p p p p p p p p p pp z4 = 20 z5 = 23 z Figure 6: Example of ψ4 with µ = 3. If more restrictive conditions on the sequence of the values of the parameters δ are verified we can use a better superadditive valid lifting function. 15 n+m Proposition 6.5 If, for each n and m, one of the following conditions hold: (i) ∆ m 1 > ∆n+1 ; (ii) n+m n+m m ∆m 1 = ∆n+1 , δn+1 = δm+1 = δn+m+1 = 1; (iii) ∆1 = ∆n+1 , δn+m+1 = 0, then 0, if 0 ≤ z ≤ z0 , z−zv , if zv < z ≤ zv + θ and δv+1 = 0, v = 0, . . . , α − 1, v + θ ψ5 (z) = v + 1, if zv + θ < z ≤ zv+1 and δv+1 = 0, v = 0, . . . , α − 1, z−zv , if zv < z ≤ zv + µ and δv+1 = 1, v = 0, . . . , α − 1, v + µ v + 1, if zv + µ < z ≤ zv+1 and δv+1 = 1, v = 0, . . . , α − 1, where µ = w1 − γ j−1 and θ = w2 − γ j−1 , is a superadditive valid lifting function. The proof is similar to the proof of Proposition 6.3. However, it is important to notice that if γ j−1 ≥ w2 , n+m then it can be proven that there are n and m such that ∆m 1 < ∆n+1 and hence the hypothesis of Proposition 6.5 do not hold. Under further more restrict conditions superadditivity of ψ6 holds. n+m Proposition 6.6 If, for each n and m one of the following conditions hold: (i) ∆ m 1 > ∆n+1 ; (ii) n+m ∆m 1 = ∆n+1 and δn+m+1 = 0, then if 0 ≤ z ≤ z0 , 0, z−zv ψ6 (z) = v + θ , if zv < z ≤ zv + θ, v = 0, . . . , α − 1, v + 1, if zv + θ < z ≤ zv+1 , v = 0, . . . , α − 1, where θ = w2 − γ j−1 , is a superadditive valid lifting function. The proof is similar to the proof of case δn+1 = δm+1 = 0 in Proposition 6.3, so it will be omitted. Consider v ∗ = max{v ∈ {1, . . . , α} : φ(z) = φ(z) for all 0 ≤ z ≤ zv }. Next we analise some properties of these valid lifting functions on [0, zv∗ ]. On [zv∗ , D], φ may increase faster in some intervals since solutions Γv with v > zv∗ may be unfeasible. Notice that ψ3 is a superadditive function while superadditivity of ψ4 , ψ5 , ψ6 , requires more restrict conditions. All these four functions, when superadditivity holds, belong to C. Next we prove that for each specific sequence of parameters δ one of these functions is the best function in C, this means, there is no function in C dominating the corresponding function. Proposition 6.7 Consider the conditions for superadditivity of ψ6 , ψ5 , ψ4 , respectively: n+m n+m m (C6) For each n and m one of the following conditions hold: (i) ∆m 1 > ∆n+1 ; (ii) ∆1 = ∆n+1 and δn+m+1 = 0. n+m n+m m (C5) For each n and m one of the following conditions hold: (i) ∆m 1 > ∆n+1 ; (ii) ∆1 = ∆n+1 and n+m δn+m+1 = 0; (iii) ∆m 1 = ∆n+1 and δn+1 = δm+1 = δn+m+1 = 1. n+m n+m m (C4) For each n and m one of the following conditions hold: (i) ∆m 1 ≥ ∆n+1 ; (ii) ∆1 < ∆n+1 and δn+m+1 = 0. Let χ ∈ C be a valid lifting function for φ. (a) If (C6) hold on [0, zv∗ ], then χ(z) ≤ ψ6 (z) for all z ∈ [0, zv∗ ]. (b) If (C5) hold and (C6) do not hold on [0, zv∗ ], then χ(z) ≤ ψ5 (z) for all z ∈ [0, zv∗ ]. (c) If (C4) hold and (C5) do not hold on [0, zv∗ ], then χ(z) ≤ ψ4 (z) for all z ∈ [0, zv∗ ]. (d) If (C4) do not hold [0, zv∗ ], then χ(z) ≤ ψ3 (z) for all z ∈ [0, zv∗ ]. 16 Proof: Consider case (a). Suppose that for t = zn + r and r < θ, χ(t) > ψ6 (t) (for r ≥ θ and n ≤ v ∗ we have ψ6 (t) = φ(t)). Let t0 = γ j−1 + θ − r. Thus χ(t + t0 ) = χ(zn + r + γ j−1 + θ − r) = χ(zn + w2 ) ≤ φ(zn+1 ) = n + 1. On the other hand, χ(t + t0 ) ≥ χ(t) + χ(t0 ) > ψ6 (t) + ψ6 (t0 ) = n + r/θ + (θ − r)/θ = n + 1 which is absurd. Now we prove (b). First we prove that for all n and m with δn+1 = δm+1 = 0 it can not always n+m n+m m occur ∆m 1 > ∆n+1 and δn+m+1 = 0. If δ1 = 0 consider n = m = 0 which implies ∆1 = ∆n+1 = 0. If δ1 = 1 consider m + 1 = min{k ∈ {1, . . . , α1 } : δk = 0} and n + 1 = max{k ∈ {1, . . . , α1 } : δk = 0} n+m thus, ∆m 1 > ∆n+1 and δn+m+1 = 1. Therefore, as there must exist n and m with δn+1 = δm+1 = 0 n+m n+m m such that either ∆m 1 = ∆n+1 or ∆1 > ∆n+1 and δn+m+1 = 1 we can prove, as we did in case case (a) considering t0 = zm + θ − r, that for all n such that δn+1 = 0, χ(z) ≤ ψ5 (z), z ∈ [zn , zn+1 ]. Now suppose that there is a r, 0 < r < µ, such that for all v with δv+1 = 1 and for all z = zv + r we have χ(z) = χ1 (z) > ψ5 (z). Case (b) implies that there are n and m with n + m + 1 ≤ v ∗ such n+m 0 that ∆m 1 = ∆n+1 and δn+1 = δm+1 = δn+m+1 = 1. Consider t = zn + r and t = zm + µ − r. Thus, χ(t + t0 ) = χ(zn + zm + r + µ − r) = χ(zn+m + γ j−1 + µ) = χ(zn+m+1 ) ≤ φ(zn+m+1 ) = n + m + 1 and χ(t + t0 ) ≥ χ(t) + χ(t0 ) > ψ5 (t) + ψ5 (t0 ) = n + r/µ + m + (µ − r)/µ) = n + m + 1, which is absurd. Proof of (c). This case implies that there are n and m such that one of the following conditions hold (see Lemma 5.6): n+m (1) ∆m 1 = ∆n+1 − 1 and δn+m+1 = 0. n+m (2) ∆m 1 = ∆n+1 and δm+1 = 0, δn+1 = 1, δn+m+1 = 1. n+m m and δm+1 = 1, δn+1 = 0, δn+m+1 = 1. (3) ∆1 = ∆n+1 n+m Notice that it can not happen ∆m 1 = ∆n+1 and δn+1 = 0, δm+1 = 0, δn+m+1 = 1 because it would m+1 n+m+1 imply that ∆1 = ∆n+2 − 2 which contradicts Lemma 5.6. Also notice that (1) imply (2). In 0 m0 order to (1) occur it is necessary that there is m0 , m0 < m, such that ∆m 1 = ∆n+1 and δm0 +1 = 0, 0 n+m0 δn+m0 +1 = 1. Since it can not occur ∆m 1 = ∆n+1 and δn+1 = 0, δm0 +1 = 0, δn+m0 +1 = 1 we also have δn+1 = 0. Suppose that there is r, 0 < r < µ, such that for all v with δv+1 = δ, δ ∈ {0, 1} and for all z = zv + r, we have χ(z) > ψ4 (z). Consider case (2) (the case (3) is similar) and suppose χ(t) > ψ4 (t) for t = zn + r. Let t0 = zm + µ − r. Thus χ(t + t0 ) = χ(zn+m + γ j−1 + µ) = χ(zn+m+1 ) = n + m + 1 and χ(t + t0 ) ≥ χ(t) + χ(t0 ) > ψ4 (t) + ψ4 (t0 ) = n + m + 1. n+m Finally consider case (d). This case implies that there is n and m such ∆ m 1 = ∆n+1 − 1 and δn+m+1 = 1. And these conditions can only occur (see proof of Proposition 6.3) with δ n+1 = δm+1 = 1. Therefore, if χ1 (t) > ψ3 (t) for t = zn + r and δn+1 = 1 then we obtain again the contradiction χ(t + t0 ) > n + m + 1 = χ(t + t0 ) with t0 = zm + r0 and r 0 = λ − r. n+m Now we consider χ2 . Notice that if there is n and m such that ∆m 1 = ∆n+1 − 1 and δn+1 = δm+1 = n+m0 0 m0 δn+m+1 = 1 then there must exist n and m such that ∆1 = ∆n+1 and δn+1 = 1, δm0 +1 = 0, δn+m0 +1 = δn+m0 +2 = 1. In this case if χ2 (z) > ψ3 (z) for z = zv + r with δv = 0 and r < µ, then χ2 (t) > ψ3 (t) for t = zm0 + k2 , δm0 +1 = 0 and k2 < µ. Considering t0 = zn + λ we have, χ(t+t0 ) = χ(zn+m0 +γ j−1 +λ+k2 ) = χ(zn+m0 +w1 +(w1 −w2 )+k2 ) = χ1 (zn+m0 +1 +(w1 −w2 )+k2 ) = 2 )+µ = n + m0 + 2 = χ1 (t0 ) + χ2 (t). Thus, χ is not n + m0 + 1 + (w1 −wλ2 )+k2 < n + m0 + 1 + (w1 −w λ superadditive. 2 Notice that we proved stronger results than the results stated in Proposition 6.7. In fact we proved that ψ6 can not be dominated by other superadditive valid lifting function. Only for the case of ψ 3 with 17 z ∈ [zn , zn+1 ] and δn+1 = 0 we used explicitly the expression of χ2 . In all other cases the proofs are valid considering χ1 and χ2 as generic functions. However, if there is n and m with δn+1 = δm+1 = 0 n+m and ∆m+1 < ∆n+1 + δn+m+1 then the expression of χ2 is not important to prove that ψ3 can not be 1 dominated by other valid lifting function in C. Otherwise, if for all n and m with δ n+1 = δm+1 = 0 we n+m have ∆m+1 ≥ ∆n+1 + δn+m+1 then we can improve ψ3 for z ∈ [zv , zv+1 ] with δv+1 = 0, by setting 1 v ψ3 (z) = v + 1 − µλ + z−z λ , if zv ≤ z < zv + µ and δv+1 = 0, v = 0, . . . , α − 1. The function with this modification is not in C and can not be useful for Section 7. However, if conditions (C4) do not hold it can be proven, as we did above, that this function dominates all other functions χ ∈ C where χ 1 and χ2 are generic functions provided that χ is a superadditive valid lifting function. Next we analyze maximality of the superadditive valid lifting functions given above. Lemma 2.8 implies that for all z ∈ [0, zv∗ ] for which the value of the functions ψi , i ∈ {2, 3, 4, 5, 6}, coincides with the value of φ is in the maximality set E. Remember that if φM ∪S (z) = φM (z), for all S, ∅ 6= S ⊆ N \M, then z ∈ E. Proposition 6.8 [ta1 , ta1 + γ j−1 ] ⊆ E for t = 1, . . . , b aD1 c. Proof: Consider S such that ∅ 6= S ⊆ N \ M. As φM ∪S (z) ≤ φ(z) for all z, we must show that the strict inequality can not occur for z ∈ [ta1 , ta1 + γ j−1 ]. Suppose that there exists z ∈ [ta1 , ta1 + γ j−1 ] such that φM ∪S (z) < φ(z) = tα1 . Let y∗ ∈ N|M ∪S| be the optimal solution to φM ∪S (z). Then P P φM ∪S (z) = α− j∈M ∪S αj yj∗ < tα1 = φ(z) and M ∪S aj yj∗ ≤ D−z ≤ D−ta1 . Setting y10 = y1∗ +t and P P P yj0 = yj∗ for j ∈ S∪(M \{1}) then j∈M ∪S aj yj0 ≤ D and α− j∈M ∪S αj yj0 = α− M ∪S αj yj∗ −tα1 < 0, P i.e. φM ∪S (0) < 0 which is absurd because it implies that M ∪S αj yj ≤ α is not valid for YM ∪S . 2 Noticing that ψi (ka1 ), for i ∈ {2, 3, 4, 5, 6}, may not assume the value φ(ka1 ) = kα1 we will improve these functions. Lemma 6.9 Let ψ be a valid superadditive lifting function such that ψ(ka 1 + r) = kα1 + ψ(r) for all k = 0, . . . , bD/a1 c and γ j−1 ≤ r < a1 , then the function ψ 0 defined by ( kα1 , if z ∈ A, 0 ψ (z) = ψ(z), otherwise, where A = [ [ka1 , ka1 + γ j−1 ], is a superadditive valid lifting function. k=0,...,bD/a1 c Proof: From the definition of ψ 0 and from Proposition 6.8 it follows that φ(z) ≥ ψ 0 (z) ≥ ψ(z) for all z ∈ [0, D]. Next we prove superadditivity of ψ 0 . Case t1 ∈ A, t2 ∈ A. Suppose t1 = k1 a1 + r1 , t2 = k2 a1 + r2 , with 0 ≤ r1 ≤ γ j−1 , 0 ≤ r2 ≤ γ j−1 . Then ψ 0 (t1 + t2 ) ≥ ψ 0 ((k1 + k2 )a1 ) = (k1 + k2 )α1 = ψ 0 (t1 ) + ψ 0 (t2 ). Case t1 ∈ A, t2 6∈ A (similarly for t1 6∈ A, t2 ∈ A). Let t1 = k1 a1 + r1 , t2 = k2 a1 + r2 , with 0 ≤ r1 ≤ γ j−1 and γ j−1 < r2 < a1 . If r1 + r2 < a1 then t1 + t2 6∈ A and r1 + r2 6∈ A which implies ψ 0 (t1 +t2 ) = ψ(t1 +t2 ) = (k1 +k2 )α1 +ψ(r1 +r2 ) ≥ k1 α1 +ψ(r1 )+k2 α1 +ψ(r2 ) = k1 α1 +0+k2 α1 +ψ(r2 ) = ψ 0 (t1 )+ψ 0 (t2 ). If r1 +r2 ≥ a1 then t1 +t2 ∈ A and r1 +r2 ∈ A because r1 +r2 = a1 +r with 0 ≤ r < γ j−1 . Thus ψ 0 (t1 + t2 ) = (k1 + k2 + 1)α1 ≥ k1 α1 + k2 α1 + ψ(r2 ) = ψ 0 (t1 ) + ψ 0 (t2 ). 18 Finally, if t1 6∈ A, t2 6∈ A then ψ 0 (t1 + t2 ) ≥ ψ(t1 + t2 ) ≥ ψ(t1 ) + ψ(t2 ) = ψ 0 (t1 ) + ψ 0 (t2 ). 2 The fact that ψi , with i ∈ {2, 3, 4, 5, 6}, satisfies ψ(ka1 + r) = kα1 + ψ(r) for all k = 1, . . . , bD/a1 c and γ j−1 ≤ r < a1 is a consequence of Corollary 5.14. Using this procedure to improve ψ1 we may obtain a non superadditive function. However, for each facet defining inequality with k(j) > 1, we may use ψ10 to lift all the coefficients since ψ10 (z) ≤ ψ20 (z) for all z ∈ [0, D]. Notice that, in general, the interval [0, zv∗ ] is not too much restrictive. Remember that zv∗ ≥ zα1 = a1 + γ j−1 . In Example 4.1, zv∗ = 850. We will not analyze these functions on [zv∗ , D]. Remark 6.10 In this section we constructed several superaddive valid lifting functions based on a non polynomial number of parameters. However, it is not clear whether is it possible to compute the coefficients using these functions in polynomial time. 7 Lifting the 2-integer continuous knapsack inequalities |N | In this section we consider mixed integer knapsack sets of the form: X = {(y, s) ∈ N 0 × R : P j∈N aj yj ≤ D + s, s ≥ 0} where aj , j ∈ N and D are positive integers. To generate strong valid inequalities for X we restrict X by setting all integer variables to zero except two of them. W.l.o.g. we assume that those two variables are y1 and y2 . Then, using a superadditive valid lifting function, we lift each facet defining inequality of the restricted set R = {(y1 , y2 , s) ∈ N20 ×R : a1 y1 +a2 y2 ≤ D+s, s ≥ 0}. The description of conv(R) is given in (Agra & Constantino 2003). Each non trivial facet defining inequality of conv(R), α1 y1 + α2 y2 ≤ α + βs. (7.1) belongs to one of two families. First we consider the family that is obtained from the lifting of a facet defining inequality for conv(Y≤ ) after s has been set to zero. Proposition 7.1 Consider a facet defining inequality for conv(Y ≤ ), containing the extreme points of conv(Y≥ ), (aj−1 , bj−1 ) and (aj , bj ) with (aj , bj ) = (aj−1 , bj−1 ) + r(−ck(j) , dk(j) ) for some positive integer r, dk(j) y1 + ck(j) y2 ≤ dk(j) aj + ck(j) bj (7.2) then, if ck(j) dk(j) ≤ a2 a1 , the following inequality defines a facet of conv(R), dk(j) y1 + ck(j) y2 ≤ dk(j) aj + ck(j) bj + where η j = a1 d(D/a1 )e − D if k = 1 and ( −γ(aj−1 , bj−1 ) + a1 e`(k(j)) − a2 f `(k(j)) , j η = −γ(aj−1 , bj−1 ) − a1 ck(j)−1 + a2 dk(j)−1 , 1 s ηj (7.3) if bj−1 ≥ f `(k(j)) , if bj−1 < f `(k(j)) , otherwise. Coefficients (aj−1 , bj−1 ), (e`(k(j)) , f `(k(j)) ) and (ck(j) , dk(j) ) can be obtained using the polynomial version of Algorithm HW and (ck(j)−1 , dk(j)−1 ) can be obtained as (ck(j)−1 , dk(j)−1 ) = (ck(j) , dk(j) ) − r(e`(k(j)) , f `(k(j)) ) where r = b R≥ (e`(k(j)) ,f `(k(j)) ) c. R≤ (ck(j) ,dk(j) ) The case 19 ck(j) dk(j) ≥ a2 a1 is similar. It suffices to exchange a1 with a2 . Considering w1 = a2 dk(j)−1 − a1 ck(j)−1 and w2 = −a2 f `(k(j)) + a1 e`(k(j)) , then η j can be written as ( w2 − γ j−1 , if bj−1 ≥ f `(k(j)) , j η = w1 − γ j−1 , if bj−1 < f `(k(j)) . Since w1 ≥ w2 and γ j−1 ≥ w1 − w2 , we have η j ≤ w2 ≤ w1 . The lifting function associated to (7.3) is given by: φc (z) = min α − α1 y1 − α2 y2 + βs a1 y1 + a2 y2 ≤ D − z + s, s. t. s ≥ 0, y1 , y 2 ∈ N 0 . where α1 = dk(j) , α2 = ck(j) , α = dk(j) aj + ck(j) bj , β = and vk , k = 0, . . . , n∗ , as defined in Section 6. Proposition 7.2 For z ≥ 0, 0, v + z−zvk , k ηj φc (z) = vk+1 , α + z−D ηj , if if if if 1 ηj . In the following consider zv , v = 0, . . . , α, z ≤ z0 , zvk ≤ z < zvk + η j (vk+1 − vk ), for k = 0, . . . , n∗ , zvk + η j (vk+1 − vk ) ≤ z ≤ zvk+1 , for k = 0, . . . , n∗ , z > D. Proof: First consider 0 ≤ z ≤ D. Hence φc can be written as φc (z) = mins>0 {φ(z), φ(z − s) + η1j s}. Suppose zvk ≤ z < zvk + η j (vk+1 − vk ). Considering t = z − zvk > 0 we have 0 ≤ t < η j (vk+1 − vk ), thus φc (z) ≤ φ(z − t) + ηtj = vk + ηtj . In order to prove the other direction we consider the following cases. If 0 < s < t then as z − s > zvk , it follows that φ(z − s) + ηsj = vk+1 + ηsj ≥ vk + ηtj because, as we are assuming t < η j (vk+1 − vk ) and as ηsj > 0, we have ηtj < ηsj + (vk+1 − vk ). If s > t and zvp < z−s ≤ zvp+1 with p ∈ {0, . . . , k−1}, then s ≥ zvk −zvp+1 +t = (vk −vp+1 )w2 +(w1 −w2 )∆vvkp+1 +t ≥ (v −v )η j +t (vk − vp+1 )w2 + t ≥ (vk − vp+1 )η j + t. Therefore φ(z − s) + ηsj = vp+1 + ηsj ≥ vp+1 + k p+1 ≥ ηj t t vp+1 + vk − vp+1 + ηj = vk + ηj . If s > t and z−p−1 < z − s ≤ z−p for p ∈ N0 , then s ≥ zvk − z−p + t Pp = vk w2 + (w1 − w2 )∆v1k + pw2 + (w1 − w2 ) i=1 δ−i + t ≥ (vk + p)w2 + t ≥ (vk + p)η j + t. Therefore j +t φ(z − s) + ηsj = −p + ηsj ≥ −p + (vk +p)η ≥ vk + ηtj . Hence φ(z − s) + ηsj ≥ φ(z − t) + ηtj = vk + ηtj for ηj all s > 0. Now suppose z > D. Again, φc (z) = mins>z−D {φ(z − (z − D)) + η1j (z − D), φ(z − s) + η1j s}. z−D Similarly, it can be checked that for s > z − D, φ(z − s) + η1j s ≥ φ(z − (z − D)) + z−D ηj = α + ηj . The case zvk + η j (vk+1 − vk ) ≤ z ≤ zvk+1 , is similar to the previous one. 2 It is important to notice that, in general, φc is not superadditive (in the example of Figure 7, φ (3) + φc (3) > φc (6)). In order to extend the superadditive functions obtained in Section 4, ψ i0 , i ∈ Pv {2, 3, 4, 5, 6}, for [D, +∞[ we define zv , for v > α, v ∈ N, as zv = γ j−1 +vw2 +(w2 −w1 ) i=1 δi , where, for i > α, δi = δr with r = i − α1 b(i − 1)/α1 c. The proofs of superadditivity of ψi0 , i ∈ {2, 3, 4, 5, 6}, are also valid replacing v = 0, . . . , α − 1 with v ∈ N0 . Next we prove that the extended functions of ψi0 , i ∈ {2, 3, 4}, are also valid considering φc . c Lemma 7.3 ψ40 (z) ≤ φc (z), for all z ∈ [0, +∞[. 20 5 4 3 2 1 6 Knapsack constraint: 21y1 + 76y2 ≤ 1154 + s Valid inequality: 5y1 + 18y2 ≤ 274 + s b ppppppppppp pp b ppppppppppppppppppppppp φc p p p p pp b ppppppppppppppppppppppp φ pp b ppppppppppppp pp b ppppppppppppppppppppppp pp pppppppppppp z z0 = 2 z1 = 7 z2 = 10 z3 = 15 z4 = 20 z5 = 23 Figure 7: Example of φc . Proof: Consider the following auxiliar function: ( v if zv ≤ z < zv + η j , v ∈ N0 , v + z−z a ηj , φ (z) = v + 1, if zv + η j ≤ z ≤ zv+1 , v ∈ N0 . First we prove that φa (z) ≤ φc (z) for all z ∈ [0, D]. The unique case where is not obvious that φa (z) ≤ φc (z) is the case zvk ≤ z ≤ zvk +η j (vk+1 −vk ). Let v be such that zv ≤ z ≤ zv+1 and r = z −zv . Hence, z −zvk = zv −zvk +r = w2 (v −vk )+(w1 −w2 )∆vvk +r ≥ w2 (v −vk )+r ≥ η j (v −vk )+r. Therefore φc (z) ≥ vk + η j (v−vk )+r ηj c = vk + v − v k + r a η j ≥ φ (z). zv +(z−zv )−zα ηj with v ≥ α. Thus, φ (z) = α + z−D ηj = α + (v−α)w2 +(z−zv ) z−zv ≥α+ ≥ v + ηj ≥ φa (z). ηj Now we prove ψ40 (z) ≤ φa (z) for all z ∈ Now consider z > D. Suppose zv < z < zv+1 = α+ P zα +(v−α)w2 +(w1 −w2 ) v i=α+1 δi +(z−zv )−zα ηj [0, +∞[. As µ = w1 − γ j ≥ η j then ψ4 (z) ≤ φa (z) for all z ∈ [0, +∞[. It remains to prove that, for each k ∈ N0 , [ka1 , ka1 + γ j−1 ] ⊆ [zkα1 −1 + η j , zkα1 ]. Using Corollary 5.14, zkα1 = ka1 + γ j−1 . Thus, we must show that zkα1 −1 + η j ≤ ka1 ⇔ zkα1 − w2 − (w1 − w2 )δα1 + η j ≤ ka1 ⇔ γ j−1 − w2 − (w1 − w2 )δα1 + η j ≤ 0 ⇔ η j ≤ w2 − γ j−1 + (w1 − w2 )δα1 . Notice that if η j = w1 − γ j−1 then bj−1 < f k(j−1) and so, as p2α1 = bj−1 , it can not occur δα1 = 0 because it would imply p2α1 = p2α1 −1 + f k(j−1) ≥ f k(j−1) . Thus η j = w1 − γ j−1 implies δα1 = 1. Using the definition of 2 η j , it follows that η j ≤ w2 − γ j−1 + (w1 − w2 )δα1 . Therefore we have ψ10 (z) ≤ ψ20 (z) ≤ ψ30 (z) ≤ ψ40 (z) ≤ φc (z) for all z ∈ [0, +∞[. If η j = w2 − γ j−1 then φa coincides with ψ6 , and, in that case, ψ5 and ψ6 are also valid for φc (z). Now we consider the other family of facet defining inequalities for conv(R). Setting s = a 1 y1 + a2 y2 − D, generating a facet valid inequality for conv(Y≥ ) and then introducing s again, we obtain the following family of inequalities. Proposition 7.4 Considering a facet defining inequality for conv(Y ≥ ) containing the extreme points of conv(Y≥ ), (aj−1 , bj−1 ) and (aj , bj ), with (aj , bj ) = (aj−1 , bj−1 ) + r(−e`(j) , f `(j) ) for some positive integer r, f `(j) y1 + e`(j) y2 ≥ f `(j) aj + e`(j) bj (7.4) 21 then, if ek(j) f k(j) ≥ a2 a1 , the following inequality defines a facet of conv(R), f `(j) y1 + e`(j) y2 + 1 (D + s − a1 y1 − a2 y2 ) ≥ f `(j) aj + e`(j) bj ηj where η j = D − a1 b(D/a1 )c if `(j) = 1 and ( −γ j−1 − a1 ck(`(j)) + a2 dk(`(j)) , j η = −γ j−1 + a1 e`(j)−1 − a2 f `(j)−1 , (7.5) if bj−1 ≥ dk(`(j)) , if bj−1 < dk(`(j)) , where γ j−1 = a1 aj−1 + a2 bj−1 − D, otherwise. Noticing that inequality (7.5) can be written as (a1 − η j f k(j) )y1 + (a2 − η j ek(j) )y2 ≤ D − η j (f `(j) aj + e`(j) bj ) + s where a1 − η j f k(j) > 0 and a2 − η j ek(j) > 0 (see Agra & Constantino 2003), we may use function ψ1 as a superadditive valid lifting function for this case. However, Proposition 7.4 indicates another way to P obtain valid inequalities for X. Let x = D + s − j∈N aj yj . Hence (y, s) ∈ X if and only if (y, x) ∈ S P P |N | where S = {(y, x) ∈ N0 × R : x + j∈N aj yj ≥ D, x ≥ 0}. The inequality βx + j∈N αj yj ≥ α is P valid to S if and only if j∈N (βai − αj )yj ≤ βD − α + βs is valid to X. We study the lifting function associated to (7.5), or equivalently, associated to f `(j) y1 + e`(j) y2 + 1 x ≥ f `(j) aj + e`(j) bj , ηj from the lifting function associated to (7.4). The lifting function associated to (7.4) is given by, ϕ(z) s.t. = max α − α1 y1 − α2 y2 a 1 y1 + a 2 y2 ≥ D − z y1 , y 2 ∈ N 0 , and, the corresponding continuous lifting function, is given by, ϕc (z) = max α − α1 y1 − α2 y2 − βx x + a1 y1 + a2 y2 ≥ D − z, s.t. x ≥ 0, y1 , y 2 ∈ N 0 . 6 6 5 4 3 2 1 Valid inequality: 16 x + 2y1 + 7y2 ≥ 107 Knapsack constraint: x + 21y1 + 76y2 ≥ 1154 ϕ ϕc pppppp p p p p pbp p p p p p p p p p p p p p b p p p p p p p p p p p p p p p p p p p p p p p p p p p p p ppp p p p ppppppppppppp b pp p p p p p p p p p p p p p pppppppppppppp b p p p p p p p p p p p p p p b ppp p p p p p p p p p p p p p p pp p p p pppppppppppppp b ppppppppppppppp b 6 pppp 14 27 40 48 Figure 8: Functions ϕ, ϕc with γ j−1 = 7, w1 = 13, w2 = 8. 22 61 69 z Next we introduce some properties similar to those presented for function φ and φ c . The major differences are related with the fact that associated to ϕ we have maximization problems and, therefore, we must use subadditive functions instead of superadditive functions. A function f : A ⊆ R → R is subadditive on A if f is bounded on A and f (x1 ) + f (x2 ) ≥ f (x1 + x2 ) for all x1 , x2 , x1 + x2 ∈ A. We will use the same notation as we used for the lifting function φ and omit all the proofs. Proposition 7.5 Let (7.4) be a valid inequality for Y≥ . If ω is a subadditive function on [0, +∞[ and P |N | ω(z) ≥ ϕ(z) for all z ∈ [0, +∞[, then α1 y1 + α2 y2 + j∈N \{1,2} ω(aj )yj ≥ α is valid for {y ∈ N0 : P j∈N aj yj ≥ D}. We call such a function ω a subadditive valid lifting function. Let us define, for v ∈ N, ( (p1v−1 , p2v−1 ) + (ck(`(j)) , −dk(`(j)) ), if p2v−1 − dk(`(j)) ≥ 0, v v (p1 , p2 ) = (p1v−1 , p2v−1 ) + (−e`(j)−1 , f `(j)−1 ), if p2v−1 − dk(`(j)) < 0, where (p01 , p02 ) = (aj−1 , bj−1 ). And define, for v ∈ N, ( 0 if (pv1 , pv2 ) = (p1v−1 , p2v−1 ) + (ck(`(j)) , −dk(`(j)) ), δv = 1 if (pv1 , pv2 ) = (p1v−1 , p2v−1 ) + (−e`(j)−1 , f `(j)−1 ), Pn and let w1 = a1 e`(j)−1 −a2 f `(j)−1 and w2 = −a1 ck(`(j)) +a2 dk(`(j)) . Then zn = nw2 +(w1 −w2 ) i=1 δi − γ j−1 . For k ∈ N and r ∈ {1, . . . , α1 } we also have δkα1 +r = δr . Notice that considering the upper convex envelope of the graph of ϕ we could also construct a subadditive function, similar to ψ1 . Next we construct subadditive valid lifting functions for ϕ, similar to functions ψi , i ∈ {3, 4, 5, 6} constructed for φ, considering facet defining inequalities (7.4) with `(j) > 1. For `(j) = 1 we can use the following subadditive valid lifting function, ( 1 if ka1 ≤ z ≤ ka1 + z1 , k ∈ N0 , k + z−ka z1 , ω(z) = k + 1, if ka1 + z1 < z ≤ (k + 1)a1 , k ∈ N0 . Proposition 7.6 Consider the lifting function ϕ and consider the following functions satisfying ω(z) ≥ ϕ(z) for all z ∈ [0, +∞[. z if 0 ≤ z ≤ z1 , z1 , if zv ≤ z < zv+1 − µ and δv+1 = 0, for all v ∈ N, v, −z ω3 (z) = v + 1 − zv+1 , if zv+1 − µ ≤ z ≤ zv+1 and δv+1 = 0, for all v ∈ N, µ v, if zv ≤ z < zv+1 − λ and δv+1 = 1, for all v ∈ N, v + 1 − zv+1 −z , if z v+1 − λ ≤ z ≤ zv+1 and δv+1 = 1, for all v ∈ N, λ ω4 (z) = z z1 , v, v+1− z z1 , v, ω5 (z) = v+1− v, v+1− zv+1 −z , µ zv+1 −z , θ zv+1 −z , µ if if if if if if 0 ≤ z ≤ z1 , if zv < z ≤ zv+1 − µ, for all v ∈ N, if zv+1 − µ < z ≤ zv+1 , for all v ∈ N, 0 ≤ z ≤ z1 , zv ≤ z < zv+1 − θ and δv+1 = 0, for all v ∈ N, zv+1 − θ ≤ z ≤ zv+1 and δv+1 = 0, for all v ∈ N, zv ≤ z < zv+1 − µ and δv+1 = 1, for all v ∈ N, zv+1 − µ ≤ z ≤ zv+1 and δv+1 = 1, for all v ∈ N, 23 ω6 (z) = z z1 , v, v+1− zv+1 −z , θ if 0 ≤ z ≤ z1 , if zv < z ≤ zv+1 − θ, for all v ∈ N, if zv+1 − θ < z ≤ zv+1 , for all v ∈ N, where λ = w1 + (w1 − w2 ) − γ j−1 , µ = w1 − γ j−1 and θ = w2 − γ j−1 . (a) The function ω3 is a subadditive valid lifting function. n+m n+m m (b) If, for each n and m one of the following conditions hold: (i) ∆m 1 ≤ ∆n+1 ; (ii) ∆1 > ∆n+1 and δn+m = 0, then ω4 is a subadditive valid lifting function. n+m n+m m (c) If, for each n and m one of the following conditions hold: (i) ∆m 1 < ∆n+1 ; (ii) ∆1 = ∆n+1 and n+m m δn+m = 0; (iii) ∆1 = ∆n+1 and δn = δm = δn+m = 1, then ω5 is a subadditive valid lifting function. n+m n+m m (d) If, for each n and m one of the following conditions hold: (i) ∆m 1 < ∆n+1 ; (ii) ∆1 = ∆n+1 and δn+m = 0, then ω6 is a subadditive valid lifting function. For facet defining inequalities (7.4) with `(j) > 1, these functions can be improved and we can use ( kα1 , if z ∈ [ka1 − γ j−1 , ka1 ], k ∈ N, 0 ωi (z) = ωi (z), otherwise, instead of ωi , with i ∈ {3, 4, 5, 6}. Functions ω30 , ω40 are also valid considering ϕc , and ω50 , ω60 are valid if η j = w2 − γ j−1 . Notice that for z > D we have ϕ(z) = ϕc (z) = α. Hence, the subadditive valid lifting functions ωi0 , i ∈ {3, 4, 5, 6}, can be easily improved for z > zα = D, setting ωi0 (z) = α. 8 Computational tests In this section we report some computational tests. All tests were performed on a PC, Pentium IV, 2.4Ghz with 768 Mb RAM and using the optimization package Xpress-MP, Version 14.10 with MOSEL. We developed two types of tests, one for the pure integer single knapsack constraint problem and other for the integer single knapsack constraint problem with one continuous variable. All the instances were randomly generated for n = 100 variables. We tested two sets of instances where the coefficients of the objective function, fj , and the coefficients of the knapsack constraint, aj , were generated in the same interval and one set of instances where the intervals are different: instance a : aj ∈ [1700, 2000], fj ∈ [1700, 2000], and D ∈ [200000, 300000], instance b : aj ∈ [7000, 10000], fj ∈ [7000, 10000], and D ∈ [2000000, 5000000], instance c : aj ∈ [100, 200], fj ∈ [50, 60], and D ∈ [2000, 5000]. For each instance we solve the linear relaxation without any additional inequality. Then, for each pair of variables, such that at least one has a strictly positive value in the optimal solution, we consider a restricted knapsack problem. Finally, we lift each one of the corresponding facet defining inequalities and add the inequalities violated by the linear solution to the problem. This procedure is repeated until the last linear solution satisfies all the valid inequalities generated. In Table 1 we present the results obtained for the pure integer case. Columns OPT and LP give the optimum value and the value of the linear relaxations, respectively. Columns ψ 10 , ψ20 , ψ30 give the value of the upper bound obtained when the lifting is done using the corresponding function and ψ i0 , i ∈ {4, 5, 6}, gives the upper bound using in each case the best of the functions available, for example, ψ50 , uses the best of the functions ψi0 , i ∈ {3, 4, 5}, that is superadditive. Columns T give the CPU 24 25 Instance n100va1 n100va2 n100va3 n100vb1 n100vb2 n100vb3 n100vc1 n100vc2 n100vc3 Opt 242588 292996 239872 4138911 2774589 3835844 2263 1275 1260 LP 243172.4 293401.7 241064.8 4143929.6 2774925.1 3837287.4 2278.88 1288.99 1318.2 ψ10 242765.9 292996.6 239872 4142371.9 2774589 3835872.8 2263 1275 1260 T 1.9 2.5 0.7 2.0 1.4 10.3 1.3 0.7 0.4 ψ20 242597.4 292996 239872 4138911 2774589 3835871.9 2263 1275 1260 T 1.6 9.9 0.9 2.9 1.7 3.7 1.5 0.6 0.6 ψ30 242588 292996 239872 4138911 2774589 3835863 2263 1275 1260 T 8.8 6.9 0.9 2.9 1.7 2.9 1.3 0.8 0.4 ψ40 242588 292996 239872 4138911 2774589 3835863 2263 1275 1260 T 30.2 27.3 2.9 37.5 12.3 41.2 1.3 0.7 0.4 ψ50 242588 292996 239872 4138911 2774589 3835863 2263 1275 1260 Table 1: Computational results for the pure integer single knapsack constraint problem. T 30.1 27.1 2.9 37.4 12.3 41.2 1.3 0.7 0.4 ψ60 242588 292996 239872 4138911 2774589 3835863 2263 1275 1260 T 30.0 27.2 2.9 36.9 12.4 41.1 1.3 0.8 0.4 Instance n100va1 n100va2 n100va3 n100vb1 n100vb2 n100vb3 n100vc1 n100vc2 n100vc3 LP gap 0.241 0.138 0.497 0.121 0.012 0.038 0.70 1.10 4.52 ψ10 69.6 99.9 100 31.0 100 98.0 100 100 100 ψ20 98.4 100 100 100 100 98.1 100 100 100 ψ30 100 100 100 100 100 98.7 100 100 100 ψ40 100 100 100 100 100 98.7 100 100 100 ψ50 100 100 100 100 100 98.7 100 100 100 ψ60 100 100 100 100 100 98.7 100 100 100 Table 2: Percentage of reduction of the LP gap. Instance n100va1 n100va2 n100va3 n100va3 n100vb1 n100vb1 n100vb2 n100vb3 n100vc1 n100vc1 n100vc2 n100vc2 n100vc3 n100vc3 S -10 -10 -10 -2 -10 -2 -10 -10 -10 -1 -10 -1 -10 -1 Opt 242588 292996 239872 240568 4138911 4142124 2774589 3835844 2263 2263 1275 1276 1290 1317 LP 243172.4 293401.7 241064.8 241064.8 4143929.7 4143929.7 2774925.1 3837287.4 2278.88 2278.88 1288.99 1288.99 1318.2 1318.2 GAP 0.24 0.138 0.497 0.2 0.121 0.044 0.012 0.038 0.7 0.7 1.09 1.01 2.186 0.091 ψ0 + ω0 242588 292996 239872 240568 4138911 4142124 2774589 3835853.55 2263 2263 1275 1276.13 1290 1317 GAP Red. 100 100 100 100 100 100 100 99.3 100 100 100 99.9 100 100 T 7.8 7.6 5.7 3.8 70.6 35.4 24.5 78.5 2.4 2.3 1.1 1.1 0.6 0.6 Table 3: Computacional tests for the mixed integer single knapsack constraint problem. time, in seconds, used to obtain the corresponding upper bound. The gaps are presented in Table 2. −OP T Column LP gives the liner gap: LP = LPOP × 100 and, in the remaining columns, we present the T percentage of reduction of the linear gap, when the corresponding superadditive function ψ 0 is used for lifting: column value = LP gap−ψgap × 100. LP gap Notice that only in one case the upper bound obtained using ψ30 is strictly greater than the optimal value and, in this case, using ψ30 the initial linear gap was reduced by 98.7%. Using ψ10 it was possible to reduce significantly the linear gap and, as expected, the CPU time required to obtain the lower bound was, in general, lower than the corresponding CPU time using ψ30 . However, only in two of the first six instances the upper bound obtained using ψ10 coincides with the optimum. Lifting with functions ψi0 , i ∈ {4, 5, 6}, was not efective in reducing the linear gap of the unique instance where the optimal value was not obtained. 26 Table 3 present similar results for the knapsack constraint with one continuous variable. The column S indicates the coefficient of the continuous variable s on the objective function. Column LP gives the value of the linear relaxation and, in column GAP the corresponding gap is presented. Column ψ 0 + ω 0 indicates the upper bound obtained using the best valid lifting function and the reduction of the gap, in percentage, is given in column GAP Red. Only in two instances the upper bound was greater than the optimum but the gap was always reduced at least in 99%. 9 Appendix Proof of Proposition 4.2. Notice that f (x1 + x2 ), with x2 > x1 , can be written as x1 x2 x1 f (x1 ) + (1 − )f (x1 + x2 ) − f (x1 ) f (x1 + x2 ) = f (x1 ) + x2 x2 x2 − x 1 ≥ f (x1 ) + [f (x2 ) − f (x1 )] x2 . x2 − x 1 This inequality follows from x2 > 0 and from the hypotheses that f is convex (consider λ = xx21 , y1 = x1 x1 )f (0) + f (x2 ) ≥ f (x1 ). Therefore, x1 , y2 = x1 + x2 ). As f is convex and f (0) = 0 we have (1 − x2 x2 x1 f (x2 ) ≥ x2 f (x1 ) ⇒ x2 f (x2 ) − x2 f (x1 ) ≥ x2 f (x2 ) − x1 f (x2 ) ⇒ x2 (f (x2 ) − f (x1 )) ≥ (x2 − x1 )f (x2 ) ⇒ f (x2 ) − f (x1 ) f (x2 ) ≥ . x2 − x 1 x2 Thus, f (x1 + x2 ) ≥ f (x1 ) + ≥ f (x1 ) + f (x2 ) − f (x1 ) x2 x2 − x 1 f (x2 ) × x2 = f (x1 ) + f (x2 ). x2 To show that x1 = x2 = x > 0 (the case x1 = x2 = 0 is trivial) let f (x + x) = f (x − + x + ) ≥ f (x − ) + f (x + ) where x > > 0. As f is convex on [0, D] then f is continuous on ]0, D[, which implies f (x + x) ≥ lim →0+ (f (x − ) + f (x + )) = f (x) + f (x). 2 Proof of Proposition 4.3. First we show that the value of the slopes satisfy τ j−1 − τ j−2 τ2 − τ1 α1 τ j − τ j−1 ≤ j−1 ≤ ··· ≤ 2 ≤ . j j−1 j−2 γ −γ γ −γ γ − γ1 a1 As (At−2 − At−1 ) (At−1 − At ) (Aj−1 − Aj ) α2 < ≤ ≤ , for all t = 3, . . . , j − 1, then (B t−1 − B t−2 ) (B t − B t−1 ) (B j − B j−1 ) α1 (At−1 − At )(B t−1 − B t−2 ) ≥ (At−2 − At−1 )(B t − B t−1 ) 27 a2 α2 a2 α2 − )(At−1 − At )(B t−1 − B t−2 ) ≤ ( − )(At−2 − At−1 )(B t − B t−1 ) α1 a1 α1 a1 a2 α2 ⇒ (At−1 − At )(At−2 − At−1 ) − (At−1 − At )(B t−1 − B t−2 ) − (At−2 − At−1 ) (B t − B t−1 ) a1 α1 α2 a2 t + (B − B t−1 )(B t−1 − B t−2 ) α1 a1 a2 α2 t−1 (A − At )(B t−1 − B t−2 ) − (At−2 − At−1 ) (B t − B t−1 ) ≤ (At−1 − At )(At−2 − At−1 ) − α1 a1 α2 a2 t + (B − B t−1 )(B t−1 − B t−2 ) α1 a1 α2 t a2 ⇒ [(At−1 − At ) − (B − B t−1 )][(At−2 − At−1 ) − (B t−1 − B t−2 )] α1 a1 a α2 t 2 ≤ [(At−1 − At ) − (B t − B t−1 )][(At−2 − At−1 ) − (B − B t−1 )] a1 α1 α2 t a2 (B − B t−1 ) ≤ 0) (Notice that (At−1 − At ) − (B t − B t−1 ) ≤ (At−1 − At ) − a1 α1 ⇒( ⇒ ⇒ (At−1 − At ) − (At−2 − At−1 ) − α2 t α1 (B − α2 t−1 α1 (B − B t−2 ) ≤ (At−1 − At ) − (At−2 − At−1 ) − a2 t a1 (B − a2 t−1 a1 (B B t−1 ) − B t−2 ) a1 (At−1 − At ) − a2 (B t − B t−1 ) α1 (At−1 − At ) − α2 (B t − B t−1 ) ≤ t−1 t−2 t−1 t−2 α1 (A − A ) − α2 (B −B ) a1 (At−2 − At−1 ) − a2 (B t−1 − B t−2 ) ⇒ ⇒ τ t − τ t−1 γ t − γ t−1 ≤ t−1 t−1 t−2 τ −τ γ − γ t−2 τ t−1 − τ t−2 τ t − τ t−1 ≤ t−1 , for all 3 ≤ t ≤ j. t t−1 γ −γ γ − γ t−2 It remains to show that As B t−1 ) τ2 − τ1 α1 ≤ . γ2 − γ1 a1 A1 − A 2 α2 a2 ≤ ≤ and B 2 − B 1 ≥ 0, it follows that B2 − B1 α1 a1 0 ≤ −(A1 − A2 ) + a2 α2 2 (B − B 1 ) ≤ −(A1 − A2 ) + (B 2 − B 1 ) α1 a1 ⇒ 0 ≤ (A2 − A1 ) + ⇒ ⇒ α2 2 a2 (B − B 1 ) ≤ (A2 − A1 ) + (B 2 − B 1 ) α1 a1 (A2 − A1 ) + (A2 − A1 ) + α2 2 α1 (B a2 2 a1 (B − B1) − B1) ≤1 α1 α1 (A2 − A1 ) + α2 (B 2 − B 1 ) ≤ a1 (A2 − A1 ) + a2 (B 2 − B 1 ) a1 α1 τ2 − τ1 ≤ . γ2 − γ1 a1 Since ψ1 is continuous piecewise linear function, and the value of the slopes increases with z, the function ψ1 is convex. 2 28 Proof of Proposition 4.4. From Proposition 4.3 we know that ψ1 is convex and by Proposition 4.2, ψ1 is superadditive on [0, D]. It remains to show that ψ1 (z) ≤ φ(z) for all z ∈ [0, D]. For 0 ≤ z ≤ γ j we have ψ1 (z) = φ(z) = 0. Consider γ t < z ≤ γ t−1 , t ∈ {1, . . . , j}. Let (a, b) be the optimal solution to the problem associated to φ(z). As α1t y1 + α2t y2 ≤ α1t At + α2t B t is valid to Y≤ we can write −α1t (At − a) − α2t (B t − b) ≤ 0 a2 a2 α2 α2 ) − α2t (B t − b)( − )≤0 ⇒ −α1t (At − a)( − a1 α1 a1 α1 α2 a2 a2 α2 ⇒ α1t (At − a)( − ) − α2t (B t − b)( − )≤0 α1 a1 a1 α1 α2 t t a2 α2 t t a2 ⇒ α (A − a) − α2t (B t − b) ≤ α1t (At − a) − α (B − b) α1 1 a1 a1 α1 2 a2 α2 t t α2 t t a2 ⇒ −α2t (At − a) + α (B − b) + α (A − a) − α2t (B t − b) a1 α1 1 α1 1 a1 a α α a 2 2 2 2 αt (B t − b) + α1t (At − a) − αt (B t − b) ≤ −α2t (At − a) + a1 α1 1 a1 α1 2 α2 t a2 a2 α2 t ⇒ (−α2t + α1 )[(At − a) + (B t − b)] ≤ (−α2t + α1t )[(At − a) + (B − b)] α1 a1 a1 α1 t t 2 2 −α2t + α (At − a) + α α1 α 1 α1 (B − b) ⇒ a a2 t ≤ t 2 −α2 + a1 α1 (At − a) + a1 (B t − b) ⇒ α1 (At − a) + α2 (B t − b) α1 (At − At−1 ) + α2 (B t − B t−1 ) ≤ t t−1 t t−1 a1 (A − A ) + a2 (B − B ) a1 (At − a) + a2 (B t − b) ⇒ ⇒ τt + τ (a, b) − τ t τ t−1 − τ t ≤ γ t−1 − γ t γ(a, b) − γ t τ t−1 − τ t (γ(a, b) − γ t ) ≤ τ (a, b) γ t−1 − γ t ⇒ τt + τ t−1 − τ t (z − γ t ) ≤ φ(z) γ t−1 − γ t Notice that −α2t + aa12 α1t > 0 and (At − a) + aa21 (B t − b) = a11 (γ(a, b) − γ t ) > 0, because γ(a, b) ≥ z and (a, b) is a feasible solution to φ(z) and because we are assuming γ t < z ≤ γ t−1 . Finally, consider γ 1 < z ≤ D. Again, let (a, b) be the optimal solution associated to φ(z). As B 1 = 0 α2 − aa12 )(B 1 − b) ≥ 0. Thus, we have ( α 1 a2 α2 1 (B − b) ≥ (A1 − a) + (B 1 − b) α1 a1 α1 ⇒ α1 (A1 − a) + α2 (B 1 − b) ≥ (a1 (A1 − a) + a2 (B 1 − b)) a1 α1 (γ(a, b) − γ 1 ) ⇒ τ (a, b) − τ 1 ≥ a1 α1 ⇒ φ(z) ≥ τ 1 + (z − γ 1 ). a1 (A1 − a) + 2 Proof of Lemma 5.6. First we prove the following results. 29 v2 +q Lemma 9.1 If pv21 ≥ pv22 then ∆vv11 +q +1 ≥ ∆v2 +1 for all q ∈ {1, . . . , min{α − v1 , α − v2 }}. Proof: The result is true for q = 1 because δv1 +1 = 0 implies pv21 < dk(j)−1 ⇒ pv22 < dk(j)−1 ⇒ Pv1 +q−1 Pv2 +q−1 δv2 +1 = 0. Suppose there exists q > 1 such that i=v δi = i=v δi , δv1 +q = 0 and δv2 +q = 1. 1 +1 2 +1 P P Pv2 +q−1 v1 +q−1 v1 +q−1 v1 +q−1 v1 v2 k(j)−1 `(k(j)) k(j)−1 Then p2 = p2 − d i=v1 +1 δi + f i=v1 +1 (1 − δi ) ≥ p2 − d i=v2 +1 δi + Pv2 +q−1 v2 +q−1 v2 +q−1 `(k(j)) k(j)−1 f . Therefore, δv2 +q = 1 implies p2 ≥ d and hence i=v2 +1 (1 − δi ) = p2 p2v1 +q−1 ≥ dk(j)−1 . Thus δv1 +q = 1, which contradicts the assumption δv1 +q = 0. 2 Lemma 9.2 If δv1 = 0 and δv2 = 1 with v1 6= v2 then pv21 ≥ pv22 . Proof: Suppose that pv21 < pv22 . Then pv21 −1 + f `(k(j)) < pv22 −1 − dk(j)−1 ⇒ pv22 −1 > pv21 −1 + f `(k(j)) + dk(j)−1 ≥ f `(k(j)) + dk(j)−1 = dk(j) contradicting Lemma 5.2. 2 Ps Pr+s Now we prove Lemma 5.6. We show that it can not happen i=1 δi < i=r+1 δi − 1 (the proof Ps Pr+s Ps Pr+s that i=1 δi ≤ i=r+1 δi + 1 is similar). Suppose i=1 δi < i=r+1 δi − 1. Then, it must exist Pf −1 Pr+f −1 1 ≤ f < s such that δf = 0, δr+f = 1 and δi ≥ δr+i for all i < f. Thus i=1 δi ≥ i=r+1 δi . P P s r+s f r+f From Lemma 9.2 we have p2 ≥ p2 . And, from Lemma 9.1, i=f +1 δi ≥ i=r+f +1 δi . Therefore Pr+s Pr+s Ps Ps δi ≥ δi which implies i=1 δi ≥ i=r+1 δi − 1 contradicting the assumption that Psi=1,i6=f Pr+s i=r+1,i6=f δ − 1. 2 δ < i=r+1 i i=1 i Proof of Proposition 6.3. From the definition of φ and ψ3 we have ψ3 (z) ≤ φ(z), for all z ∈ [0, D]. Next we prove that ψ3 is superadditive. Consider t1 , t2 ≥ 0 such that zn ≤ t1 < zn+1 and zm ≤ t2 < zm+1 , i.e. t1 = zn + r1 and t2 = zm + r2 with 0 ≤ r1 < zn+1 − zn and 0 ≤ r2 < zm+1 − zm . Equivalently, using Corollary 5.14, t1 = γ j−1 + nw2 + (w1 − w2 )∆n1 + r1 and t2 = γ j−1 + mw2 + (w1 − w2 )∆m 1 + r2 . Hence, n+m j−1 + r1 + r2 . t1 + t2 = zn+m + (w1 − w2 )(∆m 1 − ∆n+1 ) + γ Consider the following cases: Case δn+1 = δm+1 = 1. We have, ( n + 1, if r1 ≥ λ, ψ3 (t1 ) = n + rλ1 , if r1 < λ, and ψ3 (t2 ) = ( m + 1, m + rλ2 , if r2 ≥ λ, if r2 < λ. n+m j−1 Lemma 5.6 implies ∆m − (w1 − w2 ) + r1 + r2 . 1 ≥ ∆n+1 − 1. So t1 + t2 ≥ zn+m + γ j−1 Subcase r1 ≥ λ, r2 ≥ λ. Hence t1 + t2 ≥ zn+m + γ − (w1 − w2 ) + λ + λ. By definition of λ, j−1 γ = w1 + (w1 − w2 ) − λ so t1 + t2 ≥ zn+m + w1 + λ. Thus ψ3 (t1 + t2 ) ≥ n + m + 2 = ψ3 (t1 ) + ψ3 (t2 ). Subcase r1 ≥ λ, r2 < λ (similarly, r1 < λ, r2 ≥ λ). We have ψ3 (t1 ) + ψ3 (t2 ) = n + m + 1 + rλ2 . On the other hand, t1 + t2 ≥ zn+m + γ j−1 − (w1 − w2 ) + λ + r2 = zn+m + w1 + r2 ≥ zn+m+1 + r2 ⇒ ψ3 (t1 + t2 ) ≥ ψ3 (t1 ) + ψ3 (t2 ). Subcase r1 < λ, r2 < λ. Consider r1 + r2 ≥ λ (the case r1 + r2 < λ is trivial). Then t1 + t2 ≥ zn+m +γ j−1 −(w1 −w2 )+λ+r1 +r2 −λ = zn+m +w1 +r1 +r2 −λ ⇒ ψ3 (t1 +t2 ) ≥ n+m+1+ r1 +rλ2 −λ = 30 n+m+ r1 λ + r2 λ = ψ3 (t1 ) + ψ3 (t2 ). Case δn+1 = δm+1 = 0. Then ( n + 1, ψ3 (t1 ) = n + rµ1 , if r1 ≥ µ, if r1 < µ, and ψ3 (t2 ) = ( m + 1, m + rµ2 , if r2 ≥ µ, if r2 < µ. n+m j−1 Subcase ∆m −(w1 −w2 )+r1 +r2 . Lemma 5.6 with s = m+1 1 = ∆n+1 −1. Hence t1 +t2 = zm+n +γ n+m+2 m+1 n+m+2 n+m and r = n + 1 implies ∆n+2 ≤ ∆1 + 1. Then, ∆n+2 = ∆n+1 − δn+1 + δn+m+1 + δn+m+2 ≤ m+1 m m m ∆1 + 1 = ∆1 + δm+1 + 1 ⇒ ∆1 + 1 − 0 + δn+m+1 + δn+m+2 ≤ ∆1 + 0 + 1 ⇒ δn+m+1 + δn+m+2 ≤ 0. Therefore δn+m+1 = δn+m+2 = 0. j−1 2 If r1 +r2 ≤ µ then ψ3 (t1 )+ψ3 (t2 ) = n+m+ r1 +r ≥ w1 −w2 we have t1 +t2 ≥ zn+m +r1 + µ . As γ r1 +r2 r2 ⇒ ψ3 (t1 +t2 ) ≥ n+m+ µ = ψ3 (t1 )+ψ3 (t2 ). If r1 ≥ µ, r2 ≥ µ then ψ3 (t1 )+ψ3 (t2 ) = n+m+2. On the other hand t1 +t2 = zn+m +γ j−1 −(w1 −w2 )+r1 +r2 = zn+m +w2 −µ+r1 +r2 = zn+m+1 +r1 +r2 −µ ≥ zn+m+1 +µ ⇒ ψ3 (t1 +t2 ) ≥ n+m+2. If r1 ≤ µ and r2 ≥ µ (similarly r1 ≥ µ and r2 ≤ µ) then t1 +t2 = zn+m + γ j−1 − (w1 − w2 ) + r1 + r2 ≥ zn+m + w2 + r1 ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + rµ1 = ψ3 (t1 ) + ψ3 (t2 ). Finally, if r1 ≤ µ, r2 ≤ µ and r1 + r2 ≥ µ then t1 + t2 = zn+m + γ j−1 − (w1 − w2 ) + r1 + r2 = 2 zn+m + w2 + (r1 + r2 − µ) ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + r1 +rµ2 −µ = n + m + r1 +r = ψ3 (t1 ) + ψ3 (t2 ). µ n+m m j−1 Subcase ∆1 = ∆n+1 . Thus t1 +t2 = zn+m +γ +r1 +r2 . It can not occur δn+m+1 = δn+m+2 = 1 n+m n+m+2 because it would imply ∆m+1 = ∆m − δn+m+1 − δn+m+2 = 1 + δm+1 = ∆n+1 + 0 = δn+1 + ∆n+2 1 n+m+2 0 + ∆n+2 − 2, which contradicts Lemma 5.6 with s = m + 1 and r = n + 1. We consider only the worst case, the case where ψ3 increases slower, this means, δn+m+1 = 1 and δn+m+2 = 0. If r1 ≥ µ, r2 ≥ µ then t1 + t2 ≥ zn+m + γ j−1 + µ + µ = zn+m + w1 + µ = zn+m+1 + µ ⇒ ψ3 (t1 + t2 ) ≥ n + m + 2 = ψ3 (t1 ) + ψ3 (t2 ). If r1 ≥ µ, r2 < µ (similarly, r1 < µ, r2 ≥ µ) then t1 + t2 ≥ zn+m + γ j−1 + µ + r2 = zn+m +w1 +r2 ⇒ ψ3 (t1 +t2 ) ≥ n+m+1+ rµ2 = ψ3 (t1 )+ψ3 (t2 ). Suppose r1 < µ and r2 < µ. If r1 +r2 ≥ µ then t1 + t2 = zn+m + γ j−1 + µ + r1 + r2 − µ ≥ zn+m+1 + r1 + r2 − µ ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + r1 +rµ2 −µ = n + rµ1 + m + rµ2 = ψ3 (t1 ) + ψ3 (t2 ). If r1 + r2 < µ then, as t1 + t2 ≥ zn+m + (w1 − w2 ) + r1 + r2 = 2 +(λ−µ) 2 zn+m + r1 + r2 + (λ − µ) we have ψ3 (t1 + t2 ) ≥ n + m + r1 +r ≥ n + m + r1 +r = ψ3 (t1 ) + ψ3 (t2 ). µ+(λ−µ) µ n+m j−1 Subcase ∆m = ∆ + 1. Hence t + t = z + γ + w − w + r + r . 1 2 n+m 1 2 1 2 If r1 ≥ µ, r2 ≥ µ 1 n+1 j−1 then t1 + t2 ≥ zn+m + γ + (w1 − w2 ) + µ + µ = zn+m + w1 + µ + w1 − w2 ≥ zn+m+1 + λ ⇒ ψ3 (t1 + t2 ) ≥ n + m + 2 = ψ3 (t1 ) + ψ3 (t2 ). If r1 ≥ µ, r2 < µ (similarly, r1 < µ, r2 ≥ µ) then t1 + t2 ≥ zn+m + γ j−1 + (w1 − w2 ) + µ + r2 = zn+m + w1 + w1 − w2 + r2 ⇒ ψ3 (t1 + t2 ) ≥ 2 +(λ−µ) n + m + 1 + rµ+(λ−µ) ≥ n + m + 1 + rµ2 = ψ3 (t1 ) + ψ3 (t2 ). Suppose r1 < µ and r2 < µ. If r1 + r2 ≥ µ then t1 + t2 = zn+m + γ j−1 + (w1 − w2 ) + µ + r1 + r2 − µ ≥ zn+m+1 + (w1 − w2 ) + r1 + r2 − µ ⇒ 1 −w2 )+λ 2 +(λ−µ) 1 −w2 ) = n + m + r1 +r2 −µ+(w = n + m + r1 +(λ−µ)+r ψ3 (t1 + t2 ) ≥ n + m + 1 + r1 +r2 −µ+(w λ λ λ ≥ n + rµ1 + m + rµ2 = ψ3 (t1 ) + ψ3 (t2 ). If r1 + r2 < µ then, as t1 + t2 ≥ zn+m + r1 + (λ − µ) + r2 + (λ − µ) 2 +(λ−µ) 1 +(λ−µ) + rµ+(λ−µ) ≥ n + m + rµ1 + rµ2 = ψ3 (t1 ) + ψ3 (t2 ). we have ψ3 (t1 + t2 ) ≥ n + m + rµ+(λ−µ) Case δn+1 = 0, δm+1 = 1 (similar to the case δn+1 = 1, δm+1 = 0). Then ( ( n + 1, if r1 ≥ µ, m + 1, if r2 ≥ λ, ψ3 (t1 ) = and ψ3 (t2 ) = r2 n + rµ1 , if r1 < µ, m + λ , if r2 < λ. n+m j−1 Subcase ∆m − (w1 − w2 ) + r1 + r2 . In this case we have ∆m 1 = ∆n+1 − 1. So t1 + t2 = zn+m + γ 1 n+m n+m n+m+1 m m = ∆n+1 − 1 ⇔ ∆1 = δn+1 + ∆n+2 − 1 ⇔ ∆1 = ∆n+2 − δn+m+1 − 1. Lemma 5.6 with s = m and r = n + 1 implies δn+m+1 = 0. 31 Case r1 ≥ µ and r2 ≥ λ. Hence t1 + t2 ≥ zn+m + γ j−1 − (w1 − w2 ) + µ + λ = zn+m + w2 + λ = zn+m+1 + λ ⇒ ψ3 (t1 + t2 ) ≥ n + m + 2 = ψ3 (t1 ) + ψ3 (t2 ). Case r1 < µ and r2 < λ. Suppose r1 + r2 ≥ µ. Thus, t1 + t2 = zn+m + γ j−1 − (w1 − w2 ) + µ + (r1 + r2 − µ) = zn+m+1 + r1 + r2 − µ 1 +(λ−µ) ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + r1 +rλ2 −µ = n + m + rµ+(λ−µ) + rλ2 ≥ n + m + rµ1 + rλ2 = ψ3 (t1 ) + ψ3 (t2 ). Now suppose r1 + r2 < µ. Thus, t1 + t2 = zn+m + γ j−1 − (w1 − w2 ) + r1 + r2 ≥ zn+m + r1 + r2 2 ⇒ ψ3 (t1 + t2 ) ≥ n + m + r1 +r ≥ ψ3 (t1 ) + ψ3 (t2 ). Case r1 ≥ µ and r2 < λ. Hence, t1 + t2 ≥ µ j−1 zn+m + γ − (w1 − w2 ) + µ + r2 = zn+m+1 + r2 ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + rλ2 = ψ3 (t1 ) + ψ3 (t2 ). Case r1 < µ and r2 ≥ λ. Thus, t1 + t2 ≥ zn+m + γ j−1 − (w1 − w2 ) + r1 + λ = zn+m+1 + (λ − µ) + r1 1 +(λ−µ) ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + r1 +(λ−µ) = n + m + 1 + rµ+(λ−µ) ≥ n + m + 1 + rµ1 = ψ3 (t1 ) + ψ3 (t2 ). λ n+m j−1 Subcase ∆m + r1 + r2 . Case r1 ≥ µ and r2 ≥ λ. Hence 1 ≥ ∆n+1 . Thus t1 + t2 ≥ zn+m + γ j−1 t1 +t2 ≥ zn+m +γ +µ+λ = zn+m +w1 +λ ⇒ ψ3 (t1 +t2 ) ≥ n+m+2 = ψ3 (t1 )+ψ3 (t2 ). Case r1 < µ and r2 < λ. Suppose r1 +r2 ≥ µ. Thus, t1 +t2 = zn+m +γ j−1 +µ+(r1 +r2 −µ) = zn+m +w1 +r1 +r2 −µ 1 +(λ−µ) + rλ2 ≥ n + m + rµ1 + rλ2 = ψ3 (t1 ) + ψ3 (t2 ). ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + r1 +rλ2 −µ = n + m + rµ+(λ−µ) Now suppose r1 + r2 < µ. Thus, t1 + t2 ≥ zn+m + γ j−1 + r1 + r2 ≥ zn+m + (λ − µ) + r1 + r2 ⇒ ψ3 (t1 + t2 ) ≥ n + m + r1 +r2 +(λ−µ) ≥ n + m + rµ1 + rλ2 = ψ3 (t1 ) + ψ3 (t2 ). Case r1 ≥ µ and r2 < λ. λ Hence, t1 + t2 ≥ zn+m + γ j−1 + µ + r2 ≥ zn+m+1 + r2 ⇒ ψ3 (t1 + t2 ) ≥ n + m + 1 + rλ2 = ψ3 (t1 ) + ψ3 (t2 ). Case r1 < µ and r2 ≥ λ. Hence, t1 + t2 ≥ zn+m + γ j−1 + r1 + λ ≥ zn+m+1 + (λ − µ) + r1 ⇒ ψ3 (t1 + t2 ) ≥ 1 +(λ−µ) ≥ n + m + 1 + rµ1 = ψ3 (t1 ) + ψ3 (t2 ). 2 n + m + 1 + rµ+(λ−µ) References Agra, A. & Constantino, M. (2003), Description of 2-integer continuous knapsack polyhedra, Technical Report 3/2003, University of Lisbon, Centro de Investigação Operational. Atamtürk, A. (2001a), Flow pack facets of single node fixed-charge flow polytope, Technical report, University of California at Berkeley, Department of Industrial Engineering and Operations Research. Atamtürk, A. (2001b), Sequence independent lifting for mixed-integer programming, Technical report, University of California at Berkeley, Department of Industrial Engineering and Operations Research. Atamtürk, A. (2002), ‘On capacitated network design cut-set polyhedra’, Mathematical Programming 92, 425–437. Gomory, R. (1969), ‘Some polyhedra related to combinatorial problems’, Linear algebra and its applications 2, 451–558. Gu, Z., Nemhauser, G. & Savelsbergh, M. (1999), ‘Lifted flow cover inequalities for mixed 0 - 1 integer programs’, Mathematical Programming 85(3), 439–467. Gu, Z., Nemhauser, G. & Savelsbergh, M. (2000), ‘Sequence independent lifting in mixed integer programming’, Journal of Combinatorial Optimization 4, 109–129. 32 Hirschberg, D. & Wong, C. (1976), ‘A polynomial-time algorithm for the knapsack problem with two variables’, Journal of the Association for Computing Machinery 23(1), 147–154. Marchand, H. & Wolsey, L. (1999), ‘The 0-1 knapsack problem with a single continuous variable’, Mathematical Programming 85(1), 15–33. Marchand, H. & Wolsey, L. (2001), ‘Aggregation and mixed integer rounding to solve mips’, Operations Research 49(3), 363–371. Nemhauser, G. & Wolsey, L. (1988), Integer and Combinatorial Optimization, John Wiley & Sons. Schrijver, A. (1986), Theory of Linear and Integer Programming, John Wiley & Sons. Weismantel, R. (1996), ‘Hilbert bases and the facets of special knapsack polytopes’, Mathematics of Operations Research 21, 886–904. Wolsey, L. (1977), ‘Valid inequalities and superadditivity for 0-1 integer programs’, Mathematics of Operations Research 2, 66–77. 33