Discrete Applied Mathematics 271 (2019) 119–143
Contents lists available at ScienceDirect
Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam
A new extended formulation of the Generalized Assignment Problem and some associated valid inequalities ∗
Ishwar Murthy a , , Sam Ransbotham b a b
Indian Institute of Management, Bangalore, Bannerghatta Road, Bangalore 560076, India Carroll School of Management, Boston College, Chestnut Hill, MA 02467, USA
article
info
Article history: Received 3 January 2018 Received in revised form 11 July 2019 Accepted 21 August 2019 Available online 9 September 2019 Keywords: Integer programming Generalized assignment Valid inequalities Integer polytope
a b s t r a c t We present a new extended formulation of the Generalized Assignment Problem (GAP), that is a disaggregation of the traditional formulation. The disaggregated formulation consists of O( mn2 ) variables and constraints, where m denotes the number of agents and n the number of jobs. In contrast, the traditional formulation consists of O(mn) variables and constraints. The extended formulation is stronger than the traditional formulation, as its linear programming relaxation provides tighter lower bounds. Furthermore, this new formulation provides additional opportunities to generalize the well-known Cover and (1, k)-Configuration inequalities to make them far more ubiquitous. In fact, we show that the generalizations of both these inequalities when added to the disaggregated formulation provided tighter bounds than when the original Cover and (1, k)-Configuration inequalities are added to the traditional formulation. We introduce two classes of inequalities involving multiple agents that are specific to the disaggregated formulation. One class of inequalities is called the Bar-and-Handle (1, pˆ k ) Inequality, which under certain restrictive conditions is a facet of the polytope defined by feasible solutions of GAP. The other important class of inequality is the 2-Agent Cardinality Matching Inequality involving two agents. Given the un-capacitated version of GAP in which each agent can process all jobs, we first show this inequality to be a facet of the polytope defined by the un-capacitated GAP. We then show how this inequality can be strengthened easily by lifting it to become a strong inequality for GAP. We also show that when m = 2, this inequality, along with trivial facets completely describe the polytope associated with the un-capacitated version of GAP. Finally, through computational testing we demonstrate that by substantially reducing the number of sub-problems visited in the branch-and-bound tree, our extended formulation achieves significant computation gains. © 2019 Elsevier B.V. All rights reserved.
1. Introduction The Generalized Assignment Problem (GAP) is a well-known problem in integer programming with numerous direct applications. More importantly, it appears as a sub-problem in many models for applications ranging from job scheduling and routing to facility location [20]. Cattrysse and Van Wassenhove [5] discuss these GAP applications and algorithms in detail. ∗ Corresponding author. E-mail addresses:
[email protected] (I. Murthy),
[email protected] (S. Ransbotham). https://doi.org/10.1016/j.dam.2019.08.015 0166-218X/© 2019 Elsevier B.V. All rights reserved.
120
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
The problem is: Let M = {1,. . . , m} denote a set of agents and N = {1,. . . , n} denote a set of jobs that need to be assigned to the agents in M. The number of units of a resource required for agent i to complete job j is aij , while the associated cost is c ij . The capacity of each agent i is bi . Without loss of generality, we assume that aij ≤ bi for each i ∈ M and j ∈ N. The GAP is a decision problem that determines the minimum cost assignment of jobs in N to agents in M so that the total resources required of each agent in M does not exceed its capacity. Let xij = 1 if job j is assigned to agent i, 0 otherwise. The integer programming formulation of GAP denoted by (Ps) is: Minimize
f (x) =
m n ∑ ∑
cij xij
i=1 j=1
s.t .
n ∑
aij xij ≤ bi ,
∀i ∈ M
(1)
xij = 1,
∀j ∈ N
(2)
j=1 m ∑ i=1
xij ∈ {0, 1}
∀i ∈ M , j ∈ N
(3)
In (Ps), (1) enforces the capacity restriction for each agent i ∈ M, while (2) specifies that every job j ∈ N is assigned to exactly one agent in M. However, an agent may be assigned multiple jobs. Using the terminology in Gottlieb and Rao [9,11], we refer to constraints (1) as knapsack constraints, and constraints (2) as specially ordered sets (SOS) constraints. The GAP is known to be NP-Hard and there has been considerable interest in developing algorithms to solve large instances of this problem in reasonable time. In this paper, we present a new disaggregated formulation of the GAP. While this new formulation is larger than the one in (Ps), both in terms of the number of variables and the number of constraints, the following are good reasons to explore them seriously. First, the LP relaxation of disaggregated formulation that we present provides tighter lower bounds than the LP relaxation of (Ps). Thus, any enumeration based exact procedure for GAP can benefit from this reformulation. This because, every feasible solution to the LP relaxation of the disaggregated formulation is feasible to the LP relaxation of (Ps), but not vice-versa. Second, generalizations of the cover and (1, k)–configuration inequalities exist for the disaggregated formulation that are far more ubiquitous and collectively provide a tighter description of the polytope defined by the feasible solutions to GAP than their counterparts in (Ps). Third, there exists classes of strong, valid inequalities involving multiple agents that exploit the concept of cardinality induced in the disaggregated formulation which has no direct parallel in (Ps); we present two of these. Both these in turn help in reducing the number of branch-and-bound nodes required to solve GAP exactly. Of course, this has to be verified empirically through extensive computational testing, results of which are presented in Section 6. The rest of the paper is organized as follows. Section 2 summarizes the literature on the GAP. Section 3 presents the disaggregated formulation and shows (a) that it is stronger than the standard formulation (Ps) and (b) that well-known cover inequalities and the (1, k)-configuration inequalities for the GAP can be generalized in the disaggregated formulation by taking advantage of its structure. In Section 4, we introduce the Bar-and-Handle (1, pˆ k ) inequality, which in some sense is a generalization of the multi-agent (1, p) configuration inequality presented in [9,11], but more ubiquitous. Under certain restrictive conditions, this inequality is a facet of the polytope defined by the feasible solutions of GAP. In Section 5, we introduce the 2-Agent Cardinality Matching Inequality, which has no parallel in the original formulation. In this section, we first show that this inequality is a facet of the polytope defined by the feasible solutions to the un-capacitated version of GAP. We then show how this inequality can be easily strengthened by lifting it to become a strong inequality for GAP. Finally, we show that for the special case of GAP consisting of just two agents, the 2-Agent Cardinality Matching inequality, along with trivial facets completely describe the polytope defined by the feasible solutions of the un-capacitated version of GAP. In Section 6 we present the results of our computational testing. Section 7 concludes with implications for future research. 2. Literature review Algorithms to solve the GAP (Ps) typically involve procedures embedded in a branch-and-bound type enumeration scheme. One solution approach is to generate lower bounds by dualizing the SOS constraints (1) and solve the resulting set of knapsack problems (for example see [4,5,14,16,17] and [19]). Of course, the knapsack problems themselves are NP-Hard and would require a branch-and-bound or dynamic programming procedure to solve, often employing appropriate heuristics to generate an upper bound. This basic approach is embedded in a branch-and-bound procedure to solve (Ps). The differences in the methodologies are largely due to the different approaches used to solve the Lagrangian dual problem. Another approach to solving the GAP is based on progressively adding columns and valid inequalities to the formulation. Savelsbergh [20] proposed a branch-and-price algorithm for solving the GAP that involves a Dantzig–Wolf column generation scheme. This column generation scheme is embedded in a branch-and-bound procedure. Cattryse et al. [3] use a branch-and-cut procedure by progressively adding lifted cover inequalities to the formulation. While they used LP relaxation within a branch-and-bound procedure, Nauss [17] used Lagrangian relaxation by dualizing
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
121
(1) and the cover inequalities. Avella et al. [1] describe an approach that is similar to [3], where facets of knapsack polytopes generated by (2) are added progressively that render the current LP solution infeasible. Gottlieb and Rao [9,11] provide significant insights on the convex hull of feasible solutions to (1), (2) and (3). In particular, unlike the lifted cover inequalities or the facets of single knapsacks used by Avella et al. [1], Gottlieb and Rao [9,11] identify classes of strong inequalities that span more than one agent. Our work in this paper is motivated in part by Gottlieb and Rao [9,11] to extend their work to the disaggregated formulation. Over the past two decades, there has been a considerable amount of work done on extended formulations for a whole host of difficult combinatorial problems. We refer to just a few of them, which relate to our work in this paper. Gouveia [11] presented an extended formulation for the Capacitated Minimal Spanning Tree Problem. Subsequently, Gouveia [12] and Gouveia and Magnanti [13] presented extended formulations using variables that account for number of hops taken in a path, both pertinent to the capacitated spanning tree and Steiner tree, as well as network design problems in general. Frangioni and Gendron [8] presented an extended formulation to the Capacitated Network Design problem by introducing variables that disaggregate the ‘residual’ capacity. The work of Uchoa et al. [21] on the Minimum Capacitated Spanning Tree Problem is also worth mentioning. This paper is motivated by the afore-mentioned work, wherein we propose a new extended formulation to GAP that is induced by cardinality of the assignment of jobs to agents. 3. Disaggregated formulation of GAP For each agent i ∈ M, let K i denote the maximum number of jobs that agent i alone can handle. For each i ∈ M, K i can be determined easily by solving a single bin-packing problem. Here, jobs are first sorted from smallest to largest in terms of aij . The jobs are then ‘added’ into a bin of capacity bi in sorted order till no more can be added. The number of such jobs added is K i . We present a disaggregated version of (Ps) by separating each agent into K i agent-cardinality combinations. More precisely, the following binary variables are now defined:
{
1, if k jobs are assigned to agent i, , 0, other w ise
{
1, if job j is assigned to agent i w ith a cardinality of k, . 0, other w ise.
yik = zijk =
}
}
The disaggregated formulation is, denoted by (Pd): Minimize f (z , y) =
Ki ∑∑∑
cij zijk
i∈M j∈N k=1
s.t.
∑
aij zijk ≤ bi yik ,
∀i, k = 1, . . . , Ki
(4)
j∈N Ki ∑∑
zijk = 1
∀j
(5)
i∈M k=1
∑
zijk = kyik
∀i ∈ M ,
yik ≤ 1
∀i ∈ M
k = 1, . . . ., Ki
(6)
j∈N Ki ∑
(7)
k=1
zijk ≤ yik
∀ i ∈ M , j ∈ N , k = 1 , . . . , Ki
(8)
zijk , yik ∈ {0, 1}
∀i ∈ M , j ∈ N , k = 1, . . . ., Ki
(9)
In (Pd), constraint set (4) represents the knapsack constraints defined for each agent-cardinality combination. In addition, these constraints ensure that if an agent with a given cardinality is not used then the capacity becomes zero. Constraint set (5) represents the SOS constraints for each job. Constraint set (6), called cardinality constraints, ensures that if an agent with a given cardinality is used, then the number jobs assigned to it matches its cardinality. Constraint set (7) ensures that for each agent, at most one cardinality type is used. Finally, constraint set (8), called variable upper bound (VUB) constraints, ensures that if an agent-cardinality combination is not used, then no job can be assigned to it. It is worth noting that a tighter range on the cardinality for each i ∈ M than the one used in (Pd) is possible. A∑more ‘compact’ formulation can be obtained by∑2m linear programs initially. For each i ∈ M, let (1) Li = Min { j∈N xij |(1) , (2) andxij ≥ 0} and (2) U i = Max { j∈N xij |(1) , (2) and xij ≥ 0}. The range of cardinality can now be tightened to [⌈Li ⌉, ⌊Ui ⌋]. However, in the interest of keeping our subsequent exposition simple we will continue with the use of the cardinality range [1, K i ], respectively.
122
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
3.1. Comparing (Ps) and (Pd) The number of variables and constraints in (Ps) are both O(mn), while in (Pd) both are O(mn2 ) since K i ≤ n for all i ∈ M. We now show (Ps) and (Pd) to be equivalent as follows. + Let x+ ∈ P (s) = {x ∈ Rmn |x satisfies(1)–(3) } and for each ⋃ ∑ i ∈ M, J(i) = {j ∈ N |xij = 1}. By definition, (i) J(i1+) ∩ +J(i2 ) = ∅ for all i1 , i2 ∈ M, i1 ̸ = i2 , (ii) i∈M J(i) = N, and (iii) j∈J(i) aij ≤ bi for all i ∈ M. An equivalent solution (z , y ) ∈ 2
P (d) = {(z , y) ∈ Rmn |(z , y) satisfies (4)–(9)} can be constructed as follows. For each i ∈ M, if J(i) ̸ = ∅, then k(i) = |J(i)|, yik(i) = 1 and zijk(i) = 1 for all j ∈ J(i), yik = zijk = 0 for all k ̸ = k(i). Clearly, f (z + , y+ ) = f (x+ ). Conversely, for every (z + , y+ ) ∈ P(d), x+ ∈ P(s) can be constructed with f (x+ ) = f (z + , y+ ) as follows: x+ ij =
Ki ∑
+ zijk , for each i ∈ M , j ∈ N .
(10)
k=1
The LP relaxation of (Pd) is shown to provide a tighter bound than that of (Ps). Consider the polytopes: (i) LP(s) = {x ∈ Rmn |x satisfies (1)–(2), x ≥ 0}, ∑m (ii) LP(d) = {(z , y) ∈ Rp |(z , y) satisfies (4)–(8), z ≥ 0, y ≥ 0}, p = i=1 Ki (n + 1) where p is the dimension of LP(d), and (iii) LP a (s) = {x ∈ Rmn | x satisfies (10) for each (z, y) ∈ LP(d), x ≥ 0}. Proposition 1. Let υ (LP(s)) = Min {f (x)|x ∈ LP(s)} and υ (LP(d)) = Min {f (z , y)|(z , y) ∈ LP(d)}. Then υ (LP(s)) ≤ υ (LP(d)). Proof. For every (z, y) ∈ LP(d), there exists an x ∈ LP(s) such that f (z, y) = f (x). By counterexample, we show that the reverse is not true. For each (z, ∈ LP(d), a solution x+ ∈ LP a (s) is obtained by aggregating z as described in (10) and aggregating y to ∑y) Ki + + obtain, yi = k=1 yik for each i ∈ M. By aggregating the constraints in (4), (5), (7) and (8) over k, it can be seen that (x , y+ ) satisfies the constraints: (i) (ii) (iii) (iv )
∑n j=1 aij xij ≤ bi yi , ∑m i=1 xij = 1, xij ≤ yi , xij ≥ 0, 0 ≤ yi ≤ 1,
for for for for
all all all all
i j i i
∈ M, ∈ N, ∈ M, j ∈ N, ∈ M, j ∈ N.
Further, since the costs c ij do not vary with k, f (x+ , y+ ) = f (z, y). Since yi ≤ 1 for all i ∈ M, x+ ∈ LP(s) with f (x+ ) = f (x+ , y+ ) = f (z, y). Thus, LP a (s) ⊆ LP(s). The following counter-example shows that in fact LP a (s) ⊂ LP(s). Consider a xˆ ∈ LP(s) having the following characteristics: (i) Agents i1 , i2 ∈ M, with associated sets J(i1 ) ⊂ N, J(i2 ) ⊂ N and J(i1 ) ∩ J(i2 ) = ∅. In addition, ∑ j∈J(i ) ai2 j < bi2 . 2
(ii) A job j1 ∈ N\ {J(i1 ) ∪ J(i2 )} such that
∑
j∈J(i1 )
∑
j∈J(i1 )
ai1 j < bi1 and
ai1 j + ai1 j1 > bi1 .
(iii) (a) xˆ i1 j = 1 for all j ∈ J(i1 ) and xˆ i2 j = 1 for all j ∈ J(i2 ), (b) xˆ i1 j1 = ∆ = (bi1 − ∑ with j∈J (i ) ai2 j + (1 − ∆) ai2 j1 ≤ bi2 .
∑
j∈J (i1 )
ai1 j )/ai1 j1 and (c) xˆ i1 j1 = 1 − ∆,
2
∑K
i ˆ By contradiction, suppose that xˆ ∈ LP a (s). Then there exists a (zˆ , yˆ ) ∈ LP(d) such that xˆ ij = k=1 zijk for all i ∈ M, j ∈ N. Let ˆ ki1 = |J(i1 )|. The number of xi1 variables that are positive is ki1 + 1. Therefore, due to enforcement of (6) and (8), yˆ i1 k = 0
∑k
+1
ˆ i1 k . for k = ki1 + 2, . . . , Ki1 . While aggregating constraints in (6) over k, the right-hand-side obtained for agent i1 is ki1 =1 ky From (iii) it is equal to (ki1 + ∆)>ki1 . Due to (7) it follows that yˆ iki1 +1 > 0. Also, xˆ satisfies the knapsack constraint (2) ∑ ∑ki1 +1 ∑ki1 +1 ˆ ˆ associated with agent i1 as an equality. Therefore, it can be written as k=1 zi1 jk ) + ai1 j1 ( k=1 zi1 j1 k ) > j∈J(i ) ai1 j (
∑k
1
+1
ˆ i1 k ). bi1 ( ki1 =1 y Due to the above, every knapsack constraint (4) associated with agent i1 and cardinality k = 1,. . . , ki1 + 1, is also ∑ satisfied as an equality. However, for k = ki1 + 1, since a i j j∈J(i ) 1 + ai1 j1 > bi1 , due to (8), it is not possible to satisfy both 1
the knapsack constraint (4) and the cardinality constraint (6). Thus, xˆ ∈ / LP a (s), and LP a (s) ⊂ LP(s). □ 3.2. Cardinality-constrained cover inequality for (Pd) We now present generalizations of the Cover inequalities for (Pd). Cover inequalities are a well-known set of inequalities derived from (1), which we generalize for (Pd). Let the convex hull of the 0-1 vertices of (Ps) and (Pd) be, H(s) = Conv{x ∈ Rmn |x satisfies (1)–(3)} and H(d) = Conv{(z , y) ∈ Rp |(z , y) satisfies (4)–(9), p =
m ∑ i=1
Ki (n + 1)}.
(11)
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
123
Using notation similar to that in [9], suppose that associated with agent i, there exists a subset N i ⊆ N of jobs with |Ni | = ni , such that (i) for all Ri ⊂ N i , |Ri | = ri ,
∑
j∈Ri
aij ≤ bi ,
(ii) but for all Ri+ 1 ⊆ N i , |Ri+1 | = ri + 1,
∑
j∈Ri+1
aij > bi .
The following (ni , r i )-cover is a valid inequality for H(s):
∑
xij ≤ ri .
(12)
j∈Ni
Definition 1. Consider a set D ⊆ N of jobs∑with each ⏐ ∑job j ∈ D requiring aj units and an integer k such that |D|≥ k ≥ 0. The following is defined: V ∗ (D, k) = Min{ j∈D aj xj ⏐ j∈D xj = k, x ∈ B|D| }. V ∗ (D, k) is easy to obtain as it involves selecting the k smallest jobs in D. In (Pd), consider an agent i with a cardinality of k ≥ 2. Suppose that there exists a set N i as defined in (12) and k ≥ 2. For some rˆik < Min {ni , k} that satisfies the conditions (a)
for some Rˆ ik ⊂ Ni , |Rˆ ik | = rˆik ,
∑
aij + V ∗ (N − Rˆ ik , k − rˆik ) ≤ bi , but
(13)
j∈Rˆ ik
(b)
for all Rˆ ik+1 ⊆ Ni , |Rˆ ik+1 | = rˆik + 1,
∑
aij + V ∗ (N −Rˆ ik , k − rˆik − 1) > bi .
(14)
j∈Rˆ ik+1
Then a (ni , k, rˆik )-cover inequality of the form
∑
zijk ≤ rˆik yik ,
(15)
j∈Ni
is valid for H(d). Since aij ≤ bi for all j ∈ N, for the same set N i , several distinct (ni , k, rˆik )-cover inequalities, one for each k ≥ 2 can be derived. Since V ∗ (N-Rˆ ik+1 , k-rˆik -1) ≥ 0, it follows that rˆik ≤ r i and (15) dominates (12). The following property shows that the bounds obtained from adding (ni , k, rˆik )-cover inequalities to (Pd) are indeed tighter than that obtained from adding the (ni , r i )-cover inequalities to (Ps). Proposition 2. Let LP ∗ (d) = {(z , y) ∈ Rp |(z , y) satisfies (4)–(8) and (15) for every i ∈ M , Ni ⊆ N and k} where ∑m ∗ mn p= |x satisfies (10) for each (z , y) ∈ LP ∗ (d)}. Then, LP ∗ (s) ⊆ LP a (s) ∩ {x ∈ Rmn |x satisfies i=1 Ki (n + 1), and LP (s) = {x ∈ R (12) for ev ery i ∈ M , Ni ⊆ N , 0 ≤ x ≤ 1} ⊆ LP(s) ∩ {x ∈ Rmn |x satisfies (12) for ev ery i ∈ M , Ni ⊆ N , 0 ≤ x ≤ 1}. Proof. Let LP s (d) = {(z, y) ∈ Rp | (z, y) satisfies (7), (8) and (15) for every i ∈ M, N i ⊆ N and k} and LP s (s) = {x ∈ Rmn | x satisfies (10) for each (z, y) ∈ LP s (d)}. By ∑ definition, ∑ LP ∗ (d) = LP(d) ∩ LP s (d) and therefore LP ∗ (s) = LP a (s) ∩ LP s (s). Ki ˆ Aggregating constraints in (15) over k gives k=1 rik yik . j∈Ni xij ≤ Observe that from (12), the constraint
∑
zijk ≤
j∈Ni
Ki ∑
ri yik ,
(16)
k=1
for each r i
∑ j∈Ni
xij ≤
Ki ∑
ri yik .
k=1
∑K
∑K
i i mn ˆ Due to (7) and the fact that rˆik ≤ r i , it follows that | x satisfies k=1 rik yik ≤ k=1 ri yik ≤ r i . Therefore, LP s (s) ⊆ {x ∈ R (12) for every i ∈ M, N i ⊆ N, 0 ≤ x ≤ 1}. Thus, LP ∗ (s) ⊆ LP a (s) ∩ {x ∈ Rmn | x satisfies (12) for every i ∈ M, N i ⊆ N, 0 ≤ x ≤ 1}. From Proposition 2, LP a (s) ⊆ LP(s). Thus, LP ∗ (s) ⊆ LP(s) ∩ {x ∈ Rmn | x satisfies (12) for every i ∈ M, N i ⊆ N, 0 ≤ x ≤ 1}. □
The following example illustrates an instance where in fact, LP ∗ (s) ⊂ LP(s) ∩ {x ∈ Rmn | x satisfies (12) for every i ∈ M, N i ⊆ N, 0 ≤ x ≤ 1}. Thus, (ni , k, rˆik )-cover inequalities are much ‘deeper’ than the (ni , r i )-cover inequalities even when added to LP a (d) and LP a (s), respectively. Example 1. Given agent i with capacity bi = 40, the requirements aij on i in sorted order is {10, 10, 10, 10, 9, 9, 5, 5, 5, 3, 3, 3, 3, 2, 2}. For N i = {1, 2,. . . , 6}, the (6, 4)-cover inequality is
∑
j∈Ni
xij ≤ 4. Several (ni , k, rˆik )-cover inequalities can
124
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
be derived for N i . Here are just two of them. For k = 7, V ∗ (N − Rˆ ik , 4) = 10 while for k = 8, V ∗ (N − Rˆ ik , 6) = 16. The corresponding (ni , k, rˆik )-cover inequalities are: ∑ ∑ (i) j∈Ni zij7 ≤ 3yi7 and (ii) j∈Ni zij8 ≤ 2yi8 . Consider the partial LP solution (z, y): yi7 = 0.5, zi3,7 = zi4,7 = zi10,7 = zi11,7 = zi12,7 = zi13,7 = zi14,7 = 0.5, yi8 = 0.5, zi4,8 = zi5,8 = zi6,8 = zi7,8 = 0.375, zi10,8 = zi11,8 = zi12,8 = zi13,8 = zi14,8 = 0.5, and yik = zijk = 0 for all k ̸ = 7, 8. This solution satisfies constraints (4), (6), (7) and (8) associated with agent i, but violates the (ni , k, rˆik∑ )-cover inequality (ii) listed above. However, the corresponding solution x ∈ LP a (s) satisfies the (ni , r i )-cover inequality j∈N xij ≤ 4. □ i
As seen in Example 1, for a given N i , several (ni , k, rˆik )-cover inequalities can be derived, one for each k. In a (ni , k, rˆik )-cover inequality, it is possible for rˆik = 0. In Example 1 , if N i = {j ∈ N: aij ≥ 13}, then for k = 9, rˆi9 = 0, implying that zij9 = 0 for all j ∈ N i . Let the polytopes be ≤
H(d)
= Conv{(z , y) ∈ R |(z , y) satisfies (4), (5 ), (6)–(9)}, p = p
≤
Ki m ∑ ∑
nik , and
i=1 k=1
H(s)≤ = Conv{x ∈ Rmn |x satisfies (1), (2≤ ), (3)}, ≤
(17)
≤
where (2 ) and (5 ) represents constraints (2) and (5) in less-than-or-equal-to form. Even though our interest is in identifying facets of H(d), as shown in [9] for H(s)≤ , by introducing artificial variables in (5), an equivalent formulation of (Pd) converts it into a packing problem in which (5) is replaced by (5≤ ). Therefore, it suffices to examine facets of H(d)≤ . Balas [2] presented conditions for the (ni , r i )-cover inequalities to be facets of the knapsack polytope. Later, Gottlieb and Rao [9] have discussed in detail, conditions under which the (ni , r i )-cover inequality is a facet of H(s)≤ , They also presented conditions under which all the (ni , r i )-cover inequalities along with trivial facets completely describe H(s)≤ . It is not difficult to show that under very similar conditions, the (ni , k, rˆik )-cover inequality is a facet of H(d)≤ , and as well that it along with trivial facets describe H(d)≤ . It is indeed instructive to note that if a (ni , r i )-cover inequality is a facet of ∑ H(s)≤ , then for the same N i , a (ni , k, rˆik )-cover inequality with rˆik = r i is a facet of H(d)≤ . This occurs only if for some ˆ k, ij > bi for all Rik+1 ⊆ N i in (14). For instance, in Example 1, if aij = 2 for all j = 7,. . . , 14, the (ni , r i )-cover j∈Rˆ ik+1 a ∑ ∑ inequality, = {1,. . . ,6}, is a facet of H(s)≤ , while the (ni , k, rˆik )-cover inequality j∈Ni zij5 ≤ 4yi5 is a j∈Ni xij ≤ 4 with N i∑ facet of H(d)≤ . However, when in H(s)≤ that is equivalent to the (ni , k, rˆik )-cover j∈Rˆ ik+1 aij ≤ bi in (14), the inequality ∑ ∑ inequality is non-canonical. For instance, the inequalities, (i) z j∈Ni ij7 ≤ 3yi7 and (ii) j∈Ni zij8 ≤ 2yi8 in Example 1, are ∑ both facets of Conv{ j∈N aij zijk ≤ bi yik | (6)–(9) for k = 7, 8}. The inequality that seems to replicate the effect of (i) and (ii)
∑6
∑8
∑15
in (Ps) in part, is j=1 4xij + j=7 3xij + j=9 2xij ≤ 20, which is non-canonical. Thus, there are several more facet-defining (ni , k, rˆik )-cover inequalities in H(d)≤ several of which translates to non-canonical knapsack inequalities in H(s)≤ . Herein lies the value of (ni , k, rˆik )-cover inequalities in that they are easier to identify than their knapsack counterparts in H(s)≤ . 3.3. Cardinality constrained (1, pˆ k )-configuration inequalities in (Pd) The (1, k)-configuration inequality is a well-known inequality used to describe the polytope of 0–1 knapsack constraints and introduced by Padberg [18]. Since in our exposition, k denotes cardinality, the same inequality is referred to as (1, p)-configuration inequality. To introduce this inequality associated with agent i, consider N i ⊂ N, with |Ni | = ni and q ∈ N\ N i , such that (i)
∑
aij ≤ bi
(18)
j∈Ni
(ii)
for all sets P ⊆ Ni , with |P | = p and 2 ≤ p ≤ ni ,
∑
aij > bi , but
(19)
j∈P ∪q
(iii)
for all sets P(p − 1) ⊆ Ni , with |P(p − 1)| = p − 1,
∑
aij ≤ bi .
(20)
j∈P(p−1)∪q
If Rik (r i ) ⊆ N i denotes a set with cardinality r i satisfying p ≤ r i ≤ ni , then the (1, p)-configuration inequality in (Ps) is,
∑
(ri − p + 1) xiq +
xij ≤ ri .
(21)
j∈Rik (ri )
It follows that for each k ≥ r i , the equivalent (1, p)-configuration inequality
(ri − p + 1) ziqk +
∑
zijk ≤ ri yik ,
(22)
j∈Rik (ri )
is valid for H(d). A generalization of the (1, p)-configuration inequality that is stronger than (22) follows. Suppose that for some agent-cardinality combination i-k, N ik denotes the set of jobs remaining after the preprocessing step and that N i ⊂
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
125
N ik with k ≥ ni and q ∈ N ik \ N i . Then, (i)
∑
aij + V ∗ (Nik − Ni , k − ni ) ≤ bi ,
(23)
j∈Ni
(ii)
for every Pˆ k ⊂ Ni , with |Pˆ k | = pˆ k ,
∑
aij + V ∗ (Nik − Pˆ k − q, k−ˆpk − 1) > bi ,
(24)
j∈Pˆ k ∪q
(iii)
but for all
Pˆ k (pˆ k − 1) ⊂ Ni , |Pˆ k (pˆ k − 1)| = pˆ k − 1,
∑
aij + V ∗ (Nik − Pˆ k (pˆ k − 1) − q, k − pˆ k ) ≤ bi .
(25)
j∈Pˆ k (pˆ k −1)∪q
For every Rik (r i ) ⊆ N i of cardinality pˆ k ≤ r i ≤ ni , with N i satisfying (23), (24) and (25), the following (1, pˆ k )-configuration inequality is valid for H(d):
(
)
ri − pˆ k + 1 ziqk +
∑
zijk ≤ ri yik .
(26)
j∈Rik (ri )
The validity of (26) follows from, (i) all∑ (z, y) ∈ H(d) with yik = 0 satisfying (26) due to (8), (ii) all (z, y) ∈ H(d) with ∗ yik = 1 and z iqk = 0 satisfying (26), since j∈R (r ) aij + V (N ik − Rik (r i ), k-r i ) ≤ bi follows from (23), and (iii) all (z, y) ∈ ik i
H(d) with yik = 1, z iqk = 1 satisfying (26) due to (25). Since V ∗ (N ik -Pˆ k − q, k-pˆ k -1) ≥ 0, pˆ k ≤ p and therefore (26) dominates (22). Furthermore, several distinct (1, pˆ k )configuration inequalities can be constructed from the same set Rik (r i ) ∪ q, one for each k ≥ r i with pˆ k2 ≤ pˆ k1 for k2 ≥ k1 . To obtain pˆ k , set pˆ k = p. If V ∗ (N ik − Rik (r i ) − q, k-pˆ k ) + V ∗ (Rik (r i ), pˆ k − 1) + aiq > bi , then set pˆ k = pˆ k − 1, and repeat until V ∗ (N ik − Rik (r i ) − q, k-pˆ k ) + V ∗ (Rik (r i ), pˆ k − 1) + aiq ≤ bi . Proposition 3. Let LP 1p (s) = {x ∈ LP(s)|x satisfies all (1, p) − configuration inequalities (21)} and LP1pˆ (d) = {(z , y) ∈ LP(d)|(z , y) satisfies all (1, pˆ k )−configuration inequalities (26)}. Furthermore, LP1pˆ (s) = {x ∈ Rmn |x satisfies (10) for each (z , y) ∈ LP1pˆ (d)}. Then, LP1pˆ (s) ⊆ LP1p (s). Proposition 3 highlights the fact that the (1, pˆ k )-configuration inequalities provide a tighter description of H(d) than the (1, p)-configuration inequalities for H(s), the proof of which can be constructed along the same lines as that for Proposition 2. Padberg [18] has discussed in depth conditions under which a (1, p)-configuration inequality would be a facet of a knapsack polytope, while Gottlieb and Rao [9] have laid out conditions under which the (1, p)-configuration inequality would be a facet of H(s)≤ . It is not difficult to show that under very similar conditions the (1, pˆ k )-configuration inequality is a facet of H(d)≤ . What is significant is that there are several more facet defining (1, pˆ k )-configuration inequalities for H(d)≤ , than (1, p)-configuration inequalities for H(s)≤ . This is best illustrated by the example below. Example 2. Consider agent i with bi = 40 and N ik = {1,. . . , 15}. The requirements aij in sorted order are {18, 10, 10, 10, 9, 9, 5, 5, 5, 3, 3, 3, 3, 3, 3}. For N i = {2,. . . ,6} and q = 1, one possible (1, p)-configuration inequality is: 2xi1 + xi3 + xi4 + xi5 + xi6 ≤ 4. After sequentially lifting in sorted order, it becomes 2xi1 + xi2 + xi3 + xi4 + xi5 + xi6 + xi7 ≤ 4, which is a facet of H(s)≤ . The equivalent (1, pˆ k )-configuration inequality with k = 4 is, 2z i1k + z i2k + z i3k + z i4k + z i5k + z i6k + z i7k ≤ 4yik , which is a facet of H(d)≤ . However, several more (1, pˆ k )-configuration inequalities can be derived for other values of k. The inequality 2z i1k + z i2k + z i3k + z i4k + z i5k + z i6k ≤ 3yik is a facet of H(d)≤ , both for k = 5 and k=6. For k = 7, 2z i1k + z i2k + z i3k + z i4k + z i5k ≤ 2yik and 2z i1k + z i2k + z i3k + z i4k + z i6k ≤ 2yik are two distinct facets of H(d)≤ . Consider the partial LP solution (z, y): yi6 = z i26 = z i66 = z i12,6 = z i13,6 = z i14,6 = 0.5, z i1,6 = 0.3, z i15,6 = 0.2, yi7 = z i11,7 = z i12,7 = z i13,7 = z i14, 7 = z i15,7 = 0.5, z i1,7 = z i2,7 = z i6,7 = z i10,7 = 0.25. While this solution satisfies (4), (5≤ ), (6) and (8), the (1, pˆ k )-configuration inequality listed for k = 6 above is violated. Also, the LP solution x, obtained by aggregating (z, y) as in (10), satisfies the (1, p)-configuration inequality listed above as well. That is because the inequality equivalent to the (1, pˆ k )-configuration inequality for k = 6 in H(s)≤ is not a (1, p)-configuration inequality, but a non-canonical knapsack ∑6 ∑15 inequality, which is 3xi1 + j=2 2xij + j=7 xij ≤ 9. Clearly, in terms of a separation algorithm, identifying a useful (1, pˆ k )-configuration inequality would be easier than the knapsack inequality listed above. Herein lies the value of the (1, pˆ k )-configuration inequality. 4. The Bar-and-Handle (1, pˆ k ) inequality We now introduce an inequality, which is akin to the multi-agent (1, p)-configuration inequality involving more than one agent in [9,11] for (Ps). They are defined over a ‘principal’ agent, along with one or more ‘auxiliary’ agents. Specifically, they consist of (1, pˆ k )-configuration inequalities on the principal agent and cover inequalities on the auxiliary agents. The
126
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
Fig. 1. Illustration of Bar-and-Handle inequalities.
jobs associated with the principal agent and those associated the auxiliary agents together have a ‘bar-and-handle’ graph representation, hence the name. This is illustrated in Fig. 1. Consider a principal agent ip of cardinality k. There exists a job q and Nip ⊂ N\ q, over which several (1, pˆ k )-configuration inequalities of type (26) exists, one for each Rip k (rip ) ⊆ Nip . In addition, there is a non-empty set H ⊆ N − {q ∪ Nip } of jobs to which the (1, pˆ k )-configuration inequality does not extend. Specifically, for each Rip k (pˆ k − 1) ⊂ Rip k (rip ),
∑
ai p j +
j∈Pˆ k (pˆ k −1)∪q
∑
(
)
aip j + V ∗ N − Pˆ k pˆ k − 1 − H − q, k − pˆ k − h ≤ bip ,
(
)
(27)
j∈ H
with |Rip k (pˆ k − 1)| = pˆ k − 1. There also exists a set W ⊆ {M\ ip } of agents, called auxiliary agents, whose number |W | ≤ h. For each agent i ∈ W, and with each cardinality 1 ≤ ki ≤ K i , there either is a (ni (ki ), ki , rˆiki )-cover inequality (15) defined over a set N i (ki ) ⊆ N − {q ∪ H} with rˆiki ≤ ki − 1, or that ni (ki ) = rˆiki = ki − 1. However, if the (ni (ki ), ki ,rˆiki )-cover exists, it does not extend to either q or any j ∈ H in the sense that V ∗ (Ni (ki ), rˆiki ) + V ∗ (N − N i (ki ) − ˆj, ki −ˆriki − 1) + aiˆj ≤bi ,
(28)
for any ˆj ∈ H or ˆj = q. On the other hand, if rˆiki ≤ ki -2, then V ∗ (Ni (ki ), rˆiki ) + V ∗ (N − N i (ki ) − ˆj − q, ki −ˆriki − 2) + aiˆj + aiˆj > bi , 1
2
(29)
holds for every ˆj1 ∈ H, ˆj2 ∈ {H ∪ q}, and ˆj1 ̸ = ˆj2 . The set of jobs H and q are shared by both the principal agent and the auxiliary agents. As shown in Fig. 1, W = {i1 , i2 }, H = {l1 , l2 }. The set Ni1 (k1 ) = {g 1 , g 2 , g 3 } and Ni2 (k2 ) = {p1 , p2 }. As is evident from the figure, jobs {q ∪ Rip k (rip ) ∪ H} represent the ‘bar’, while the jobs {q ∪ N i (ki ) ∪ H} represent the ‘handle’ for each auxiliary agent i. The bar and the handles are connected at q and H. Proposition 6 describes the Bar-and-Handle (1, pˆ k ) inequality for (Pd). Proposition 4. Let there exist: (i) A principal agent ip , a set Nip ⊂ N and a job q ∈ {N − Nip } that satisfy conditions (23), (24) and (25), and therefore for each Rip k (rip ) ⊆ Nip , a (1, pˆ k )-configuration inequality (26) can be constructed; (ii) A non-empty set H ⊆ N − {q ∪ Nip } such that (27) is satisfied with 1 ≤ h ≤ (k − pˆ k ) and; (iii) if rip < k, then
∑
j∈Rip k (rip )
aip j + aipˆj + V ∗ (N −Rip k (rip ), k−rip − 1) > bip for each ˆj ∈ H;
(iv) A set W ⊆ M − ip of agents, with |W | = w ≤ h, so that for each i ∈ W and each 1 ≤ ki ≤ Ki , there exists either a (ni (ki ), ki , rˆiki )-cover inequality (15) defined over a set Ni (ki ) ⊆ N − {q ∪ H } with rˆiki ≤ ki − 1 that satisfies (28) and (29), or that ni (ki ) = rˆiki = ki − 1.
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
127
Then the inequality
∑
) rip − pˆ k + 1 zip qk +
(
zip jk +
Ki ∑∑
zip jk +
∑
Ki ∑
∑
zijki
i∈W j∈{q∪Ni (ki )∪H } ki =1
j∈H
j∈Rip k (rip )
≤ rip yip k +
∑
rˆiki yiki + h
(30)
i∈W ki =1
is valid for H(d). Proof. To show that (30) is valid, consider a feasible solution (z ′ , y′ ) ∈ P(d). It suffices to show that (z ′ , y′ ) violates (30) only if one or more conditions in (i),. . . ,(iv) are not satisfied. Let H 1 ⊂ H and H 2 ⊂ H be defined as H 1 = {j ∈ H | z ′ ip jk = 1} and H 2 = {j ∈ H | z ′ ijk = 1 for some i ∈ W, 1 ≤ ki ≤ K i } with h1 = |H1 | and h2 = |H2 |. Due to (5), h1 + h2 ≤ h. It follows that (z ′ , y′ ) can violate (30) only if either
(
rip − pˆ k + 1 z ′ ip qk +
)
∑
z ′ ip jk +
∑
z ′ ip jk > rip y′ ip k + h1 ,
(31)
j∈H
j∈Rip k (rip )
or
∑
Ki ∑
∑
z ′ ijki >
i∈W j∈{q∪Ni (ki )∪H } ki =2
Ki ∑∑
rˆiki y′ iki + h2 .
(32)
i∈W ki =1
∑ z ′ i jk = h1 , (31) implies that either (23) or (25) of condition (i), or condition (ii) is not satisfied. Let W 2 = ∑Kji∈H ′ p ˆ {i ∈ W | ki =1 y iki = 1}. One way for (32) to occur is if the (ni (ki ), ki ,riki )-cover inequality is violated for at least one i ∈ W 2 or that ni (ki ) > ki − 1. Another way is for |W2 | = h2 with each j ∈ H 2 assigned to a different agent i ∈ W 2 , as well as job q assigned to some agent i ∈ W 2 . In either case, condition (iv) is violated. A third possibility is when |W2 | > h2 , which occurs when all jobs in Rip k (rip ) are assigned to ip , in addition to h1 ≥ 1 jobs in H. This allows q to be assigned to an agent i ∈ W 2 . However, this would violate (iii). □ Since
Example 3. Consider the instance, W = {1, 2}, q = 1, H = {7, 8}, Rip 4 (rip ) = {2, 3, 4}, Ni1 (k1 ) = {5, 6, 9}, Ni2 (k2 ) = {6, 11}, k1 = 3, k2 = 2. The requirements on ip are [5,5–7,7,10,11,11,12,12,15], bip = 41. The requirements, a1,5 = a1,6 = 12, a1,9 = 8, a1,1 = 3, a1,7 = a1,8 = 6, b1 = 30, a2,1 = 5, a2,6 = 9, a2,11 = 7, a2,7 = a2,8 = 5, b2 = 15. The Bar-and-Handle (1, pˆ k ) inequality obtained is: 2zip 1,4 + zip 2,4 +zip 3,4 + zip 4,4 + zip 7,4 + zip 8,4 + z1,1,3 + z1,5,3 + z1,6,3 + z1,7,3 + z1,8,3 + z1,9,3 + z2,1,2 + z2,6,2 + z2,7,2 + z2,8,2 + z2,11,2 ≤ 3yip 4 + 2y13 + y22 + 2. Consider the LP solution, yip 4 = 1.0, zip 1,4 = zip 2,4 = zip 3,4 = zip 7,4 = 0.5, zip 4,4 = zip 10,4 = 1.0, y13 = 1.0, z1,5,3 = z1,6,3 = 1.0, z1,7,3 = z1,8,3 = 0.5, y22 = 1.0, z2,11,2 = 0.5, z2,1,2 = z2,8,2 = 0.5. While this solution satisfies (4), (5) (6), (7) and (8), the Bar-and-Handle (1, pˆ k ) inequality is violated. Note that the (1, pˆ k )-configuration inequality, 2zip 1,4 + zip 2,4 + zip 4,4 ≤ 3yip 4 , as well as the (ni (ki ), ki ,rˆiki )-cover inequalities, z1,5,3 + z1,6,3 + z1,9,3 ≤ 2y13 and z2,6,2 + z2,11,2 ≤ y22 are all satisfied exactly. What this suggests is that with the addition of the (1, pˆ k )-configuration inequality, its violation is removed by increasing the z values of variables in H for agent ip . Similarly, the violation of (ni (ki ), ki , rˆiki )-cover inequalities for agents i ∈ W is removed by increasing the z values of variables in H and q. However, the resulting LP solution violates the Bar-and-Handle (1, pˆ k ), and herein lies its value. It is now instructive to highlight the difference between the Bar-and-Handle (1, pˆ k ) inequality and the multi-agent (1, p) configuration inequality presented in [9,11]. The multi-agent (1, p) configuration inequality can be restated in terms of the notation of this paper as follows. Associated with a principle agent ip , there exists a set Nip ⊆ N and a job q∈ / Nip that satisfies (18)–(20) and therefore for each Rip k (rip ) ⊆ Nip with p ≤ rip ≤ nip , a (1, p) configuration inequality (21) exists. A W ⊆ {N − ip }, wherein for each i ∈ W, a set N i ⊆ {N-Nip } exists such that a (ni + 1, r i )-cover inequality can be constructed over the set {N i , f i } where aigi = Minj∈Ni aij , aifi = Minaiq , aigi . However, no (ni +2, r i )-cover inequality can be constructed over the set {N i , q, g i }. Finally, there exists w-1 sets Ri ⊆ N i with |Ri | = ri such that Ri ∩ Rl = φ for i, l ∈ W [9,11]. Given the above, the multi-agent (1, p) configuration inequality is:
(
∑
)
rip − p + 1 xip q +
xip j +
j∈Rip (rip )
∑ ∑
xij ≤ rip +
i∈W j∈{Ni ,q,gi }
∑
ri .
(33)
i∈W
It naturally follows that for k ≥ rip and ki ≥ r i for each i ∈ W, several inequalities,
(
)
rip − pˆ k + 1 zip qk +
∑ j∈Rip (rip )
zip jk +
∑ ∑ i∈W j∈{Ni ,q,gi }
zijki ≤ rˆip k yip k +
Ki ∑∑ i∈W ki =1
(ri − 1) yiki + w,
(34)
128
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
one for each k, Rip (rip ) ⊆ Nip and pˆ k ≤ rip ≤ nip are each valid for H(d). Furthermore, for pˆ k < p along with rˆip k < rip , (34) is stronger than (33). However, (34) is a special case of the Bar-and-Handle (1, pˆ k ) inequality (30) with H = φ . This is because in (30), some jobs in N i (ki ) can also belong to Nip . Therefore (34) is implied by (30). Consequently, (30) is a lot more ubiquitous than (34) alone. This is particularly so since the (1, pˆ k )-configuration inequality as well as the (ni (ki ), ki ,rˆiki )-cover inequalities embedded in (30) does not extend to jobs in H. To characterize the strength of valid inequalities in H(d)≤ , a general result on facets of a polytope generated by agents, M s ⊆ M and jobs N s ⊆ N is presented. Consider a sub-problem of (Pd) defined over a restricted set (z r , yr ), with z r = {zijki ∀i ∈ Ms , j ∈ Ns , 1 ≤ ki ≤ Ki }, and yr = {yiki ∀i ∈ Ms , 1 ≤ ki ≤ Ki }. The feasible set S 1 (d)≤ = {(z r , yr ) ∈ Bx | (4), (5≤ ), (6), ∑ ∑ ∑Ki ≤ ≤ (7), (8) and (9)}, where x = ki =1 ki , and the corresponding convex hull of S 1 (d) is HS 1 (d) = Conv {(z, y) ∈ i∈Ms j∈Ns ≤ S 1 (d) }. Proposition 5. For the feasible set S1 (d)≤ defined by agents Ms ⊆ M and jobs Ns ⊆ N, any nontrivial facet of H1 (d)≤ is an inequality of the form Ki ∑∑∑
πijk zijk ≤
i∈Ms j∈Ns k=1
Ki ∑∑
πik yik + π0 ,
(35)
i∈Ms k=1
with πijk ≥ 0, πik ≥ 0 and π0 ≥ 0 for all i ∈ Ms , j ∈ Ns and 1≤k ≤ Ki . Proof. Since (z, y) = (0,0) ∈ S 1 (d)≤ , it follows that for (35) to be valid, π 0 ≥ 0. Suppose that π ijk <0 for some i ∈ M s , j ∈ N s and k. Clearly then (35) is obtained as a positive combination of inequalities that include –z ijk ≤ 0, which will later be shown as a trivial facet. If so, then (35) cannot be a non-trivial facet. Hence, π ijk ≥ 0, for all i ∈ M s , j ∈ N s and 0 ≤ k ≤ K i . Suppose that π ik < 0, for some i ∈ M s and k. Now consider a feasible solution (z r 1 , yr 1 ) ∈ S 1 (d)≤ in which yik = 1 and z ijk = 1 for each j ∈ N k where N k ⊂ N and |Nk | = k. Clearly, there must exist another solution (z r 2 , yr 2 ) ∈ S 1 (d)≤ which is identical to (z r 1 , yr 1 ), except that yik = 0 and z ijk = 0 for each j ∈ N k . If (z r 2 , yr 2 ) satisfies (35) exactly, then since π ik < 0 and π ijk ≥ 0, (z r 1 , yr 1 ) must violate (35), implying that (35) is not valid. If however, (z r 1 , yr 1 ) satisfies (35) exactly, then yik = 1 for all (z, y) ∈ H 1 (d)≤ . Clearly, yik ≤ 1 is not a facet, as it is dominated by (7). Hence, π ik ≥ 0 for all i ∈ M s and 0 ≤ k ≤ K i . □ Let Lip (k − pˆ k + 1) denote the last (k − pˆ k + 1) indices in Nip in decreasing order of aip j and Tip = {q ∪ Nip ∪ Lip (k − pˆ k + 1)}. Similarly, Li (ki − rˆiki + 1) denotes the last (ki − rˆiki + 1) indices in Niki for each i ∈ W and 1 ≤ ki ≤ K i . The complete variable set (z c , y c ) comprises of, z c = {zijki ∀i ∈ M , j ∈ Niki , ki = 1, . . . , Ki } and y c = {yiki ∀i ∈ M , ki = 1, .[. . , Ki }, ]while the r r restricted variable set (z r , (y r ) is defined ) by y = {yip k , yiki ∀i ∈ W, ≤ki = 1,. . . , K i } pand z =≤ {zip jk ∀j ∈ Tip ∪ H , zijki ∀i ∈ W , j ∈ [q ∪ Ni (ki ) ∪ H ∪ Li ki − rˆiki + 1 ], ki = 1,. . . , K i }. Thus, S 2 (d) = {(z, y) ∈ R | (4), (5 ), (6), (7), (8), (9), yiki = 0 ∀y ∑ ∑nik ≤ ≤ ∈ {y c −y r }, zijki ∀z ∈ {z c −z r }}, where p = m j=1 (ki + 1), and its convex hull, H 2 (d) = Conv(S 2 (d) ). The proposition i=1 ≤ below highlights conditions under which the Bar-and-Handle (1, pˆ k ) inequality is a facet of H 2 (d) . Proposition 6. In addition to (i) to (iv) of Proposition 4, if the conditions: ∑ (1) for any Rip k (rip ) ⊆ Nip , if aip j1 = Max{aip j |j ∈ Rip k (rip )}, then for any j′ ∈ H,
(
)
j∈Rip k rip −j1
aip j + aip j′ + V ∗ (N − Nip , k − rip )
≤ bip ;
(2) w = h; ∑ (3) for each i ∈ W , 1 ≤ ki ≤ Ki and Rˆ iki ⊂ Ni (ki ), (a) j∈Rˆ
bi , (b)
∑
∑
j∈Rˆ ik −j1 i
j∈Rˆ ik
i
aij + aij′ + V
∗
Niki − Ni (ki ) − j , k − rˆiki − 1
(
′
)
aij + aiq + V ∗ Niki − Ni (ki ) − q, k − rˆiki − 1
(
iki
′
≤ bi for each j ∈ H, (c) for some j1
)
≤ ˆ ∈ Riki ⊂ Ni (ki ),
aij + aij′ + V ∗ Niki − Ni (ki ) − j′ − q, k − rˆiki − 2 ≤ bi for each j′ ∈ H; and
(
)
(4) For each pair i1 ̸ = i2 , i1 , i2 ∈ W , there exists a Ri1 ki1 ⊂ Ni1 (ki1 ) and Ri2 ki2 ⊂ Ni2 (ki2 ) such that Ri1 ki1 ∩ Ri2 ki2 = ∅; are satisfied, then (30) is a facet of H2 (d)≤ . Proof. Consider solutions (z l , y l ) ∈ S 2 (d)≤ , l = 1,. . . , x that satisfy (30) exactly. Let π∗ z z r ≤ π∗ y y r + π ∗ 0 be a facet inequality of H 2 (d)≤ for which (z l , y l ) ∈ S 2 (d)≤ , l = 1,. . . , x are satisfied exactly. If so, then π∗ z z r ≤ π∗ y y r + π ∗ 0 must be a linear multiple of (30), implying that (30) is a facet of H 2 (d)≤ . The following are a set of partial solutions, which will be used to construct (z, y) ∈ S 2 (d)≤ that also satisfy (30) exactly. Variables not mentioned in the listing below are ( set to ) zero. ˆ ˆ (1) (yip , zip )1 = {yip k = 1, zip qk = 1, zip jk = 1∀j ∈ Rip k (pˆ k − 1) where R ( p − 1) ⊂ R (r ) with | R p − 1 | = pˆ k − 1, i k k i k i i k k p) p p p ( zip jk = 1∀j ∈ Lip (k − pˆ k ) where Lip (k − pˆ k ) ⊂ Lip (k − pˆ k + 1) with |Lip k − pˆ k | = k − pˆ k , which satisfies the (1,pˆ k )-configuration inequality exactly. (2) (yip , zip )2 = {same as (yip , zip )1 , except that in addition, zip jk = 1∀j ∈ H − j′ and zip j′ k = 0, while zip jk = 1∀j ∈ Lip (k − pˆ k − h + 1)}, which is feasible due to (27). (3) (yip , zip )3 = {yip k = 1, zip jk = 1∀j ∈ Rip k (rip ) and zip jk = 1∀j ∈ Lip (k − rip ) for some Lip (k − rip ) ⊂ Lip (k − pˆ k + 1)}, which also satisfies the (1, pˆ k )-configuration inequality exactly.
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
129
(4) (yip , zip )4 = {yip k = 1, for j1 ∈ Rip k (rip ) such that aip j1 = Max {aip j |j ∈ Rip k (rip )} and any j2 ∈ H, zip jk = 1∀j ∈ Rip k (rip ) − j1 , zip j2 k = 1 and zip jk = 1∀j ∈ Lip (k − rip ) for some Lip (k − rip ) ⊂ Lip (k − pˆ k + 1)}, which is feasible due to condition (1).
(5) (yip , zip )5 = {same as (yip , zip )3 , except that zipˆjk = 1 for some ˆj ∈ Nip − Rip k (rip ) and zip jk = 1∀j ∈ Lip (k − rip − 1) for some Lip (k − rip − 1) ⊂ Lip (k − pˆ k + 1). (6) (yiki , ziki )1 = {yiki = 1, zijki = 1∀j ∈ Rˆ iki (rˆiki ) for some Rˆ iki (rˆiki ) ⊂ Ni (ki ) and zijki = 1∀j ∈ Li (ki − rˆiki ), for some Li (ki − rˆiki ) ⊂ Li (ki − rˆiki + 1) where i ∈ M and 1 ≤ ki ≤ K i }, which satisfies the (ni (ki ), ki ,rˆiki )-cover inequality exactly. (7) (yiki , ziki )2 = {same as (yiki , ziki )1 , except that zij(i)ki = 1 for some j(i) ∈ H and zijki = 1∀j ∈ Li (ki − rˆiki − 1), for some Li (ki − rˆiki − 1) ⊂ Li (ki − rˆiki + 1)}, satisfying condition 3b. (8) (yiki , ziki )3 = {same as (yiki , ziki )1 , except that ziqk = 1 and zijki = 1∀j ∈ Li (ki − rˆiki − 1), for some Li (ki − rˆiki − 1) ⊂ Li (ki − rˆiki + 1)}, satisfying condition 3a. (9) (yiki , ziki )4 = {same as (yiki , ziki )2 , except that for some j" ∈ Rˆ iki (rˆiki ) and 1 ≤ ki ≤ K i , zij"ki = 0, but ziqk = 1}, satisfying condition 3c. We now introduce (z l , y l ) ∈ S 2 (d)≤ that satisfy (30) exactly and progressively solve the equations πz z l = πy y l + π 0 , l = 1,. . . , x, to obtain (π∗ z , π∗ y , π ∗ 0 ). (I) Consider the solution (yiki , ziki )2 for each i ∈ W such that j(i1 ) ̸ = j(i2 ) if i1 ̸ = i2 . This along with (yip , zip )1 satisfies (30) exactly. Keeping (yiki , ziki )2 fixed, rip affinely independent solutions are obtained by varying (yip , zip )1 . This is achieved by appropriately choosing many different selections of Rip k (pˆ k − 1) from Rip k (rip ). Furthermore, for a fixed Rip k (pˆ k − 1), k-pˆ k affinely independent solutions are obtained by selecting that many sets of Lip (k − pˆ k ) from Lip (k − pˆ k + 1) Next, the solution (yiki , ziki )2 for each i ∈ W along with (yip , zip )3 , also satisfies (30) exactly. Similarly, the solution consisting of (yiki , ziki )2 for each i ∈ W along with (yip , zip )5 also satisfy (30) exactly. Here, (nip − rip ) affinely independent solutions are generated, by fixing all except choosing a different ˆj ∈ Nip − Rip k (rip ) for each (yip , zip )5 . Finally, (yiki , ziki )2 for each i ∈ W, along with yip k = 0 and zip jk = 0 ∀j ∈ N also satisfies (30) exactly. Let S 3 (d)≤ = {(z, y) ∈ S 2 (d)≤ | (yiki , ziki )2 for each i ∈ W } and H 3 (d)≤ = Conv{S 3 (d)≤ }. Given (yiki , ziki )2 for each i ∈ W, the inequality π∗ z z r ≤ π∗ y y r + π ∗ 0 reduces to
∑
πip qk zip qk +
(
j∈Rip k rip
≤ πip yip k +
∑ i∈W
∑
πip jk zip jk +
(
)
πiki −
πip jk zip jk )
j∈Lip k−ˆpk +1
∑ ∑ (
i∈W j∈Rˆ (k ) i i
∑
πijki +
πijki + πij(i) ) + π0 ,
(
)
j∈Li ki −ˆrik +1 i
which is a facet of H 3 (d). We know that the (1,pˆ k )-configuration inequality (26) defined over {q, Nip , Lip (k − pˆ k + 1)} is also a facet of H 3 (d)≤(, which the) (nip + k − pˆ k + 2) solutions listed above satisfy exactly. It then follows that πip jk = 0 for j ∈ Nip − Rip k (rip ), Lip k − pˆ k + 1 , πip jk = πip k for j ∈ Rip k (rip ), πip qk = (rip − pˆ k + 1)πip k and πip = rip πip k . (II) Consider (yip , zip )2 , (yi′ ki′ , zi′ ki′ )2 for some i′ ∈ W and (yiki , ziki )1 for all i ∈ W − i′ . Here, zip j(i′ )k = 0, while zip j(i′ )ki′ = 1. By keeping (yip , zip )2 , (yi′ ki′ , zi′ ki′ )2 and (yiki , ziki )1 for all i ∈ W − {i′ , ı} fixed, and varying (yıkı , zıkı )1 , if in fact a (nı (kı ) , kı , rˆi )cover inequality exists, then (nı (kı ) , kı , rˆi ) affinely independent solutions are obtained that satisfy (30) exactly. The nı (kı ) solutions are obtained by fixing the selection of Lı (kı −ˆrıkı ), but making nı (kı ) independent selections of Rˆ ıkı (rˆıkı ) from Nı (kı ). Similarly, by fixing Rˆ ıkı (rˆıkı ), kı − rˆıkı independent selections of Lı (kı − rˆıkı ) from Lı (kı − rˆıkı + 1) provide the remaining kı − rˆıkı solutions. Finally, the perturbation with yıkı = 0, zıjkı = 0, ∀j ∈ Nı (kı ) also satisfies (30) exactly. Thus, after substituting out (yip , zip )2 , (yi′ ki′ , zi′ ki′ )2 and (yiki , ziki )1 for all i ∈ W −{i′ , ı} in π∗ z z r ≤ π∗ y y r + π ∗ 0 , the resulting inequality has to be a linear multiple of the (nı (kı ) , kı , rˆi )-cover inequality. Thus, πıjkı = 0, ∀j ∈ Lı (kı − rˆıkı + 1), πıjkı = πı , j ∈( Nı (kı ) and π)ıkı = rˆıkı πı . Since the choice of ı ∈W is arbitrary and the above holds for all 1 ≤ kı ≤ Kı , πijki = 0 for all j ∈ Li ki − rˆiki + 1 , πijki = πi for all j ∈ Ni (ki ) and πiki = rˆiki πi , for each i ∈ W. Suppose that for some i′ ∈ W, 1 ≤ ki′ ≤ Ki′ , Rˆ i′ ki′ (rˆi′ ki′ ) = Ni′ (ki′ ) and rˆi′ ki′ = ki′ − 1 in (30). If so, then consider (yip , zip )3 , (yi′ ki′ , zi′ ki′ )4 for some i′ ∈ W and (yiki , ziki )2 for all i ∈ W − i′ . Note that
in (yi′ ki′ , zi′ ki′ )4 , zi′ j"ki′ = 0 for some j′′ ∈ Rˆ i′ ki′ (rˆi′ ki′ ). By keeping (yip , zip )3 and (yiki , ziki )2 fixed for all i ∈ W − i′ and vary (yi′ ki′ , zi′ ki′ )4 by j′′ , we get ki′ − 1 solutions, all of which satisfy (30) exactly. The choice of i′ being arbitrary, here as well, πijki = πi for all j ∈ Ni (ki ) and πiki = rˆiki πi , for each i ∈ W. (III) Consider again (yip , zip )2 , (yi′ ki′ , zi′ ki′ )2 for some i′ ∈ W and (yiki , ziki )1 for all i ∈ W − i′ , with zi′ j1 ki′ = 1, i.e., j(i′ ) = j1 . If this solution is perturbed by setting zi′ j1 ki′ = 0 and zip j1 k = 1, then it satisfies (30) exactly as well. Comparing both solutions, we get, πip j1 k = πi′ j1 ki′ . Since the choice of j1 and i′ is arbitrary, πi′ j1 ki′ = πip k for all j1 ∈ H and i′ ∈ W. (IV) Now consider (yip , zip )3 , (yıkı , zıkı )3 for some ı ∈ W , (yıkı , zıkı )2 ∀i ∈ {W − ı}. Since w = h, there is a job j′ ∈ H which is unassigned. This solution is perturbed by setting zıqkı = 0 and zıj′ kı = 1 which also satisfies (30) exactly. By comparing the two solutions we get πıqkı = πıj′ kı for j′ ∈ H. Since the choice of j′ ∈ H and ı ∈ W is arbitrary, it follows that πıqkı = πıj′ kı = πip k for each j′ ∈ H, ı ∈ W and 1 ≤ kı ≤ Kı . Finally, from the perturbed solution we obtain π0 = hπip k . (V) Consider, (yip , zip )3 , (yiki , ziki )4 for some ı ∈ W , (yiki , ziki )2 ∀i ∈ {W-ı}. By comparing this solution to that in IV) we get πıj"kı = πıj′ kı = πip k for each j′′ ∈ Nı (kı ) and j′ ∈ H. Since the choice of ı ∈ W is arbitrary, it follows that πijki = πi = πip k for each i ∈ W and j ∈ N i (ki ). This establishes π∗ z z r ≤ π∗ y y r + π ∗ 0 to be a scalar multiple of (30) and therefore (30) is a facet of H 2 (d)≤ . □
130
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
We now define a knapsack polytope Hı (d)≤ = Conv {Sı (d)≤ }, where Sı (d)≤ = {(z, y) ∈ Rp | (4), (5≤ ), (6), (7), (8), (9), ∑m ∑niki yiki = 0 and ziki = 0 for all i ̸ = ı, j ∈ N and 1 ≤ ki ≤ K i }, where p = j=1 (ki + 1). Theorem 7 specifies conditions i=1 under which The Bar-and-Handle (1, pˆ k ) inequality (30) is a facet of H(d)≤ . Theorem 7. The Bar-and-Handle (1, pˆ k ) inequality (30) is a facet of H(d)≤ , if in addition to conditions (1), (2), (3) and (4) of Proposition 8, it also satisfies conditions: (1) the (1, pˆ k )-configuration inequality (26) defined over {q, Rip k (rip )} is a facet of Hip (d)≤ ; (2) the (ni (ki ), ki , rˆiki )-cover inequality (15) for each i ∈ W( and 1 ≤ ki ≤ Ki is a) facet of Hi (d)≤ ; (3) for each ı ∈ M − W , ip , (a) Kı ≤ (nıKı − h), (b) V ∗ NıKı − H − ˆj, Kı − 1 + aıˆj ≤ bı for each ˆj ∈ {NıKı − H} and (c) V ∗ NıKı − H − q, Kı − 1 + aıˆj ≤ bı for each ˆj ∈ H;
)
(
)
(
(4) if Kip ̸ = k, then a) Kip ≤ (nip Kip − h), (b) V ∗ Nip Kip − H − ˆj, Kip − 1 V (Nip Kip − H − q, Kip − 1) + aipˆj ∗
+ aipˆj ≤ bip for each ˆj ∈{Nip Kip − H} and (c)
≤ bip for each ˆj ∈ H.
Proof. Starting with (30), a sequential lifting procedure will lift coefficients of variables yik ∈ {y c −y r } and z ijk ∈ {z c − z r }, the lifted coefficients being π ik and π ijk , respectively. The resulting inequality obtained will be a facet of H(d)≤ . It therefore suffices to show that the lifted coefficients of variables in {y c −y r } and {z c − z r } are all zero. Let U y and U z denote the index set of all y and z variables in {y c −y r } and {z c −z r }, respectively, while V y ⊆ U y and V z ⊆ U z represent those that have already been lifted. If the coefficient of yiki (l) for l ∈ {U y − V y } is to be lifted next, then it can be determined by solving the problem
πiki (l) = Min rip yip k +
Ki ∑∑
(
∑
∑
Ki ∑
i∈W j∈{q∪Ni (ki )∪H } ki =1
−
∑
∑ (
i∈W ki =1
−
)
rˆiki yiki + h − rip − pˆ k + 1 zip qk −
j∈Rip k rip
zijki −
∑
zip jk − )
∑
zip jk
j∈H
πik (s) yik (s)
s∈Vy
πijk (s) zijk (s) |(4) , (4), (5≤ ), (6), (7), (8), (9), yiki (l) = 1, yiki (s) = 0, ∀s
s∈Vz
{ } ∈ Uy − Vy − l , zijk (s) = 0, ∀s ∈ {Uz − Vz }.
(36)
To determine πijki (l), for l ∈ {U z − V z }, the problem solved is the same as in (36), except that zijki (l) = 1 and zijk (s) = 0, ∀s ∈ {U z − V z − l}. Consider first the coefficients of variables yıkı (l) in which l ∈ {U y − V y } and ı ∈ W , ip . For the first variable selected, the solution to (36) is (yi1 , zi1 )2 for each i ∈ W in which zij(i)1 = 1 for j(i) ∈ H with j(i1 ) ̸ = j(i2 ) if i1 ̸ = i2 , and rˆi1 = ki − 1 = 0 for each i ∈ W. Observe that with this solution, due to conditions (3a) and (3b), it is possible to feasibly assign kı ≤ Kı jobs to ı, from the set {NıKı − H}. Consequently, πıkı (l) = 0. The coefficients of subsequent variables yıkı (l) in which l ∈ {U y − V y } and ı ∈ / W , ip will also be zero, since πıkı (s) = 0 for s ∈ V y , and therefore the same solution to (36) holds good. Due to 3b), the same solution holds for variables zıˆjkı (l) in which ı ∈ / W , ip and ˆj ∈ / H. Therefore, the lifted coefficients of these variables are zero as well. For variables zıkı (l) in which ı ∈ / W , ip but ˆj ∈ H, the optimal solution to (36) is (yi1 , zi1 )2 for each i ∈ {W − i′ } in which zij(i)1 = 1 for j(i) ∈ H with j(i1 ) ̸ = j(i2 ) if i1 ̸ = i2 and (yi′ 1 , zi′ 1 )3 for i′ in which zi′ q1 = 1. Due to condition (3c), with this solution it is possible to assign kı ≤ Kı jobs to ı, which includes ˆj. Therefore, πıjkı (l) = 0 for each l ∈ {U z − V z } in which ı ∈ / W , ip and ˆj ∈ H. Consider next the variables yip kip (l) in which l ∈ {U y − V y } and kip ̸ = k. If kip = Kip , then the optimal solution to (36) is also zij(i)1 = 1 for each j(i) ∈ H with j(i1 ) ̸ = j(i2 ) if i1 ̸ = i2 , and rˆi1 = ki − 1 = 0 for each i ∈ W. Here, due to (4a) and (4b), Kip jobs from {Nip Kip − H} can be feasibly assigned to ip . Therefore, the same holds true for any kip < Kip and πip kip (l) = 0 for all kip ̸ = k. The same solution also applies for variables zip jkip (l) for each j ∈ {Nip Kip − H} and therefore their lifted coefficients will be zero due to 4b). For variables zip jkip (l) in which j ∈ H, the optimal solution to (36) is (yi1 , zi1 )2 for each i ∈ {W -i′ } in which zij(i)1 = 1 for j(i) ∈ {H − j} with j(i1 ) ̸ = j(i2 ) if i1 ̸ = i2 and (yi′ 1 , zi′ 1 )3 for i′ with zi′ jq1 = 1. Due to 4c), one can assign kip < Kip jobs from the set Nip Kip − {H − j} to ip , which includes j ∈ H. Therefore, πip kip (l) = 0 for each j ∈ H, l ∈ {U z − V z }. ( ) For variables zip jk (l) in which l ∈ {U z − V z } and j ∈ {Nip k − (q, Nip , Lip k)− pˆ k + 1 , H}, since Rip k (pˆ k − 1) ⊂ Rip k (rip ) ⊆ Nip , it follows from 1), that V ∗ (Rip k (rip ), pˆ k − 1) + aip q + aip j +V ∗ (Lip k − pˆ k + 1 , k − pˆ k − 1) ≤ bip . Otherwise, either j ∈ Rip k (rip ), or that the (1,pˆ k )-configuration inequality defined over {q, Rip k (rip )} is a not facet of Hip (d)≤ . Given the above, the optimal solution to (36) is (yiki , ziki )2 for each i ∈ W in which zij(i)1 = 1 for j(i) ∈ H with j(i1 ) ̸ = j(i2 ) if i1 ̸ = i2 , and (yip , zip )1 , with zip jk (l) = 1. This results in πip jk (l) = 0 for each l ∈ {U z − V z } and j ∈ {Nip k(-{q,Nip , Lip (k zijki (l), in ) − rip + 1), H}}. ( For variables ) which i ∈ W, j ∈ {Niki − Ni (ki )} and l ∈ {U z − V z }, due to condition (2), V ∗ Ni (ki ) , rˆiki + aij +V ∗ (Li ki − rˆiki + 1 , ki − rˆiki − 1)
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
131
Fig. 2. Illustration of hidden assignments in 2-Agent Cardinality Matching Inequality.
≤ bi , for each j ∈ {Niki − Ni (ki )}. Otherwise, either j ∈ N i (ki ) or that the (ni (ki ), ki ,rˆiki )-cover inequality is not a facet of Hi (d)≤ . Thus, πijki (l) = 0 for each l ∈ {U z − V z } and j ∈ {Niki − Ni (ki ) − Li (ki − rˆiki + 1)}. □ 5. 2-Agent cardinality matching inequality The 2-Agent Cardinality Matching Inequality presented in this section is derived for an un-capacitated version of (Pd), i.e. one without the knapsack constraints (4). The intuition behind the inequality is to account for how jobs are matched to agents. The left-hand-side of the inequality describes the revealed potential assignment of jobs to agents in terms of the z variables. The right-hand-side represents the total available assignment slots described in terms of y variables. The notion of cardinality is central to the idea of matching jobs to agents with the appropriate cardinality. 5.1. Construction of 2-Agent Cardinality Matching inequality Consider an agent pair W = {i1 , i2 } and a set of jobs H q ⊂ N with the following specifications: (1) Agents i1 and i2 are identified with specific cardinalities of k1 and k2 respectively, such that either (i) k1 ≥ (n + 1) − K i2 , (ii) k2 ≥ n − Ki1 but (iii) k1 + k2 ≤ n, or that k1 and k2 is determined by the support 0 < yi1 k1 < 1, and 0 < yi2 k2 < 1, but with k1 + k2 ≤ n. (2) H q ⊂ N, with H q = {jq1 , jq2 , jq3 , jq4 }, (3) K i1 + K i2 ≥ n, i.e, agents i1 and i2 alone can completely accommodate all jobs. To help explain the construction of the 2-Agent Cardinality Matching inequality, consider the following equality, obtained by aggregating the cardinality constraints (6) over i and k: Ki ∑ ∑∑ i∈M −W j∈N ki =1
zijki +
Ki ∑∑∑ i∈W j∈N ki =1
zijki =
Ki ∑ ∑ i∈M −W ki =1
ki yiki +
Ki ∑∑
ki yiki .
(37)
i∈W ki =1
First, a set of z variables are selectively removed from the left-hand-side of (37) as follows. They are: (i) z variables that assign job jq1 to agent-cardinality combinations (i1 , ki1 ) for 1 ≤ ki1 ≤ k1 − 1, (i2 , ki2 ) for ki2 ≥ k2 + 1, and to all the agent-cardinalities in M − W , (ii) z variables that assign job jq2 to the agent-cardinality combinations (i2 , ki2 ) for 1 ≤ ki2 ≤ k2 , (i1 , ki1 ) for k1 ≤ ki1 ≤ K i1 , and to all the agent-cardinalities in M − W , (iii) z variables that assign job jq3 to agent-cardinality combinations (i1 , ki1 ) for 1 ≤ ki1 ≤ k1 − 1, (i2 , ki2 ) for 1 ≤ ki2 ≤ k2 , and to all the agent-cardinality combinations in M − W , and (iv) z variables that assign job jq4 to agent-cardinality combinations (i1 , ki1 ) for k1 ≤ ki1 ≤ Ki1 − 1, (i2 , ki2 ) for k2 + 1 ≤ ki2 ≤ Ki2 − 1, and to all agent-cardinality combinations (i, ki ), where i ∈ M − W and 1 ≤ ki ≤ kˆ = n − k1 − k2 − 1. We refer to these removed variables as ‘hidden assignment’. The graph in Fig. 2 illustrates some of these hidden assignments. Next, the coefficients of all variables yi1,ki1 and yi2,ki2 , decrease by 1, i.e. becomes ki1 − 1 and ki2 − 1, respectively. Finally, a constant of 1 is added to the right-hand-side. The 2-Agent Cardinality Matching Inequality can be
132
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
stated as: Ki1 −1
k1 −1
∑
∑
∑
zi1 jki1 +
∑
j∈N −{jq2 ,jq4 } ki1 =k1
j∈N −{jq1 ,jq3 } ki1 =1
∑
zi1 jki1 +
zi1 jKi1 +
∑
k2 ∑
zi2 jki2
j∈N −{jq2 ,jq3 } ki2 =1
j∈N −{jq2 }
Ki2 −1
∑
+
∑
zi2 jki2 +
j∈N −{jq1 ,jq4 } ki2 =k2 +1
+
∑
(
kˆ ∑
∑
≤
(ki1 − 1) yi1 ki1 +
Ki ∑
∑
zijki + Ki2 ∑
Ki ∑ ∑
(ki2 − 1) yi2 ki2 +
ki yiki + 1
(38)
i∈M −W ki =1
ki2 =1
ki1 =1
zijki )
j∈{N −{jq1 ,jq2 ,jq3 }} ki =kˆ +1
}
{
zi2 jKi2
j∈N −{jq1 }
i∈M −W j∈ N −Hq ki =1 Ki1 ∑
∑
Proposition 8. Consider, (i) an agent pair W = {i1 , i2 } associated with specific cardinalities {k1 , k2 } such that k1 + k2 ≤ n, (ii) k1 ≥ (n + 1) − Ki2 , k2 ≥ n − K i1 and kˆ = n − k1 − k2 − 1, and (iii) Hq ⊂ N consists of nodes {jq1 , jq2 , jq3 , jq4 }. Then the 2-Agent Cardinality Matching Inequality (38) is valid for H(d). Proof. The feasible solutions to (Pd) can be categorized into the following cases, satisfying (38). ∑ ∑Ki ∑ ∑ each∑ Ki Case I: When no agent in W is used. Then, due to (8), (38) reduces to i∈M −W ki =1 ki yiki + ki =1 zijki ≤ i∈M −W j∈N −Hq 1, which all feasible solutions to (Pd) satisfy, due to (6) and (8). Case II: Consider feasible solutions that use agent-cardinalities (i1 , ki1 ) and (i2 , ki2 ), where ki1 ≥ k1 and ki2 ≤ k2 . Consequently due to (6), n − ki1 − ki2 jobs are assigned to agents in M − W with appropriate cardinalities resulting in the right-hand-side of (38) becoming (ki1 − 1) + (ki2 − 1) + (n − ki1 − ki2 ) + 1 = n − 1. However, at least the assignment of jq2 is hidden. Therefore, the left-hand-side of (38) is at most n − 1, and the constraint is satisfied. Case III: For feasible solutions that use agent-cardinalities (i1 , ki1 ) and (i2 , ki2 ), with ki1 ≤ k1 − 1 and ki2 ≥ k2 + 1, as with Case II, the left-hand-side of (38) is at most n − 1, since the assignment of jq1 is hidden, while the right-hand-side is n − 1. Case IV: When agent-cardinalities (i1 , ki1 ) and (i2 , ki2 ), with ki1 ≤ k1 − 1 and ki2 ≤ k2 are used, then the right-hand-side of (38) is (ki1 − 1) + (ki2 − 1) + (n − ki1 − ki2 ) + 1 = n − 1. However, since at least the assignment of job jq3 is hidden, the left-hand-side is at most (n − 1). Case V: For the case where agent-cardinalities (i1 , ki1 ) and (i2 , ki2 ), with ki1 ≥ k1 and ki2 ≥ k2 + 1 are used, note that only agent-cardinalities (i, ki ), where i ∈ M − W , ki ≤ kˆ can be used. Furthermore, ki1 + ki2 ≤ n. If so, then as before, the right-hand-side of (38) is n − 1. However, the assignment of jq4 is hidden from (i1 , ki1 ), (i2 , ki2 ) and all agents in M − W and therefore the left-hand-side is at most n − 1. Case VI: In cases where exactly one agent-cardinality belonging to either i1 or i2 are used, regardless of the cardinality, the assignment of exactly two jobs is hidden. For instance, with agent-cardinality (i1 , ki1 ), for ki1 ≤ k1 , the assignment of jobs jq1 and jq3 is hidden, while for ki1 ≥ k1 + 1, the assignment of jq2 and jq4 is hidden. Similarly, with (i2 , ki2 ), ki2 ≤ k2 − 1, the assignment of jq2 and jq3 is hidden, while for ki2 ≥ k2 , jq2 and jq3 are hidden. Thus, while the left-hand-side of (38) is at most n − 2, while the right-hand-side is n. □ Example 4. Let W = {i1 , i2 }, N = {1, 2, 3, 4, 5, 6, 7, 8}, H q = {jq1 , jq2 , jq3 , jq4 } = {2, 3, 4, 5}. As illustrated in Fig. 3, the partial LP solution is: yi1 2 = yi1 3 = yi2 3 = yi2 4 = 0.5, yic 2 = 1.0 (here ic ∈ M − W ), zi1 3,2 = zi1 5,2 = zi1 1,3 = zi1 2,3 = zi1 4,3 = zi2 2,3 = zi2 5,3 = zi2 6,3 = zi2 1,4 = zi2 3,4 = zi2 4,4 = zi2 6,4 = 0.5, zic 7,2 = zic 8,2 = 1.0. This LP solution satisfies (5), (6), (7) and (8), but violates (38) by 1. □ 5.2. Strength of 2-Agent Cardinality Matching inequality We now examine the strength of the 2-Agent Cardinality Matching Inequality. Let HU (d)≤ = Conv (z , y) satisfies (5≤ ), (6)–(9) , p =
{
}
∑
(n + 1)Ki .
(39)
i∈M
Note that HU(d)≤ describes that polytope of an un-capacitated version of GAP, i.e. without knapsack constraints (4). We now make an important, but reasonable assumption that K i ≤ n − 4 for each i ∈ M. Proposition 9. Dim{HU(d)≤ } =
∑
i∈M
nKi .
Proof. We identify the following integer solutions (z, y) ∈ HU(d)≤ which are linearly independent noting that (0, 0) is also feasible. For each i ∈ M, 1 ≤ k ≤ K i , yik = 1, z ijk = 1 for each j ∈ N k , where N k ⊂ N with |Nk | = k, and the rest of
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
133
Fig. 3. Illustration of Example 4.
the integer (z, y) variables set to zero. Note that it is possible to make n linearly independent selections ∑ of N k from N, as long as k < n. Since K i ≤ n − 4 for each i ∈ M, the number of such linearly independent solutions is i∈M nKi . □ Proposition 10. The inequalities, (a) xijk ≥ 0 for all i ∈ M, j ∈ N, 1 ≤ k ≤ Ki , (b) zijk ≤ yik for all i ∈ M, j ∈ N , 1 ≤ k ≤ Ki , (c) SOS constraints (5≤ ), and (d) constraint (7) for each i ∈ M are triv ial facets of HU(d)≤ . Proof. For (a) and (b), it suffices to identify in HU(d)≤ that satisfy i∈M nKi − 1 linearly independent integer solutions ∑ the inequalities as an equality, noting that (0, 0) also satisfies them as an equality, while nK i solutions need to be i∈M identified in the case of (c) and (d). ′ Consider the inequalities, xijk ≥ 0 for all i ∈ M, j ∈ N, k ≤ K i . For each i′ ̸ = i, as well as i′ = ∑i, but k ̸= k, the solutions ′ identified are the same as those in the proof for Proposition 9. For the case of i ̸ = i, there are i′ ∈{M −i} nKi′ such solutions while when i′ = i and k′ ̸ = k, the number is (K i −1)n. Finally, for i′ = i and k′ = k, n − 1 linearly independent selections of Nk∑ from N − j are possible since k < n − 1, giving us n − 1 additional integer solutions in HU(d)≤ . This results in a total of i∈M nKi − 1 linearly independent integer solutions. For the inequalities z ijk ≤ yik for all i ∈ M, j ∈ N, 1 ≤ k ≤ K i , either (a) yik = z ijk = 0 or (b) yik = z ijk = 1. In the ′ ′ ′ former, ∑ for each i ̸= i, as well as i = i, but k ̸= k, the same solutions listed in the proof for′ Proposition 9′ apply, which ′ ′ + n(K i − 1) in number. In the latter case, we set yi′ k′ = 0, z i′ j′ k′ = 0 for all i ̸ = i, and for i = i but k ̸ = are nK ′ i i ∈{M −i} ′ k. Let N k−1 ⊂ {N − j} with |Nk−1 | = k − 1. Along with yik = z ijk = 1, ∑ z ij′ k = 1 for each j ∈ N k−1 . Clearly, there are n − 1 independent selections of N k−1 possible from {N − j}. Thus, a total of i∈M nKi − 1 linearly independent integer solutions are obtained. Now consider the SOS constraint (5≤ ) for some j ∈ N. For the case, k = 1, yi1 = 1, z ij1 = 1, and yi+1,Ki+1 = 1 and zi+1,j′ ,Ki+1 = 1 for each j′ ∈ NKi+1 ⊂ {N − j}, for some 1 ≤ i ≤ m − 1, satisfies (5≤ ) exactly. Since K i+1 ≤ n − 4, it is possible to obtain n − 1 linearly independent selections of NKi+1 from {N − j}. In addition, yi1 = 1, z ij1 = 1 alone satisfies (5≤ ) exactly as well. These solutions can be recreated by varying i from 1 to m − 1. For i = m, let ym1 = 1, z mj1 = 1, y1,K1 = 1 and z1,j′ ,K1 = 1 for each j′ ∈ NKi+1 ⊂ {N − j}. Here again, it is possible to obtain n − 1 linearly independent selections of NKi+1 from {N − j}. In addition, we have ym1 = 1, z mj1 = 1. Thus, k = 1, a total of mn solutions are obtained. For 2 ≤ k ≤ K i , yik = 1, z ijk = 1, z ij′ k = 1 for each j′ ∈ N k−1 , where |Nk−1 | = k − 1, Nk−1 ⊂ {N − j}. Here, n − 1 linearly independent selections of N k−1 from {N − j}, gives n − 1 solutions. In addition, for i ≤ m − 1, the solution yi+1,1 = 1, z i+1,j′′ ,1 = 1 for j′′ ∈ {N − N k−1 − j} is appended to yik = 1, z ijk = 1, z ij′ k = 1 for each j′ ∈ N k−1 , for some selection N k−1 . For i = m, ∑ the solution y1,1 = 1, z 1,j′′ ,1 = 1 for j′′ ∈ N ′ n−k−1 = {N − N k−1 − j} is appended. Thus, a total of i∈M nKi solutions are
∑
∑
identified above. If the i∈M nKi solutions identified were placed in sorted order of indices i, j and k, it has a block-angular structure, and hence affinely independent. Finally, consider constraint (7) for some i′ ∈ M. Here, 1 ≤ k ≤ K i′ , yi′ k = 1, z i′ jk = 1 for each j ∈ N k , where N k ⊂ N with |Nk | = k, and the rest of the integer (z, y) variables set to zero. Since n linearly independent selections of N k from N can be made, nK i′ affinely independent solutions are obtained. For each i ∈ M − i′ and 1 ≤ ki ≤ K i , we let yi′ 1 = 1, z i′ 11 = 1, yiki = 1, zijki = 1 for each j ∈ Nki , where Nki ⊂ {N − 1} with |Nki | = ki , and the rest of the integer (z, y) variables set to zero. For each ki , one obtains∑ n − 1 affinely independent solutions, to which we add the solution, yi′ 1 = 1, z i′ 21 = 1, yi′′ 1 = 1, z i′′ 11 = 1. Thus, a total of i∈M nKi linearly independent solutions are obtained. □ Let the complete variable set (z c , y c ) comprise of, z c = {zijki ∀ i ∈ M, j ∈ Nki , ki = 1, . . . , Ki } and y c = {yiki ∀i ∈ M, ki = 1, . . . , Ki }. The restricted variable set (z r , y r ) ∈ Bx , consists of all z and y variables that appear in (38). Specifically, z r is obtained by removing from z c , all hidden z variables, while y r = y c .
134
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
Proposition 11. Let SU 3 (d)≤ = {(z , y) ∈ Rx | (5≤ ), (6), (7), (8), (9), zijki = 0 ∀z ∈ {z c − z r }}, with x of appropriate dimension. The 2-Agent Cardinality Matching Inequality (38) is a non-trivial facet of HU3 (d)≤ = Conv{(z , y) ∈ SU 3 (d)≤ }. Proof. Let π∗ z z r ≤ π∗ y y r + π0 be a non-trivial facet inequality of HU 3 (d)≤ . Using solutions (z l , y l ) ∈ SU 3 (d)≤ , that satisfy (38) exactly, we show that π∗ z z r = π∗ y y r + π0 must be a linear multiple of (38) as an equality, implying that (38) is a facet of HU 3 (d)≤ . The inequality, π∗ z z r ≤ π∗ y y r + π0 in expanded form is Ki1 −1
k1 −1
∑
∑
πi1 jki1 zi1 jki1 +
j∈N −{jq1 ,jq3 } ki1 =1 k2 ∑
∑
πi1 jki1 zi1 jki1 +
∑
πi1 jKi1 zi1 jKi1
j∈N −{jq2 } Ki2 −1
∑
πi2 jki2 zi2 jki2 +
j∈N −{jq2 ,jq3 } ki2 =1
+
∑
j∈N −{jq2 ,jq4 } ki1 =k1
∑
+
∑
∑
πi2 jki2 zi2 jki2
j∈N −{jq1 ,jq4 } ki2 =k2 +1
πi2 jKi2 zi2 jKi2
j∈N −{jq1 }
+
∑
(
kˆ ∑
∑ {
}
i∈M −W j∈ N −Hq ki =1
≤
Ki1 ∑ ki1 =1
πi1 ki1 yi1 ki1 +
Ki2 ∑ ki2 =1
Ki ∑
∑
πijki zijki +
j∈ N − jq1 ,jq2 ,jq3
{
πi2 ki2 yi2 ki2 +
{
πijki zijki )
}} ki =kˆ +1
Ki ∑ ∑
πiki yiki + π0
(40)
i∈M −W ki =1
We now examine feasible solutions to SU 3 (d)≤ that satisfy (38), as well as (40) exactly. All listings of feasible solutions below mention only non-zero variables. They are: 1 (z, ∑ y) : (i) yi1 2 = yi2 2 = 1, (ii) yiki = 1 for a permutation of each i ∈ M w ⊆ M − W and cardinalities ki chosen such that i∈MW ki = n − 4, (iii) jobs jq2 and jq4 are assigned to (i1 , 2), jq1 and jq3 are assigned to (i2 , 2), and (iv) the remaining jobs in N − H q are assigned to agents in M W . Since the assignment of jq3 is hidden, (38) is satisfied exactly. This solution is perturbed by choosing another job j ∈ N − H q that is currently assigned to agent-cardinality (ˆı,kˆı ), where ˆı ∈ M W and exchange its assignment with jq3 . That is, j is assigned to (i2 , 2), while jq3 is assigned to (ˆı,kˆı ). The perturbed solution satisfies (38) and therefore (40) exactly as well. Therefore, πi2 j2 = πˆıjkˆı for 1 ≤ kˆı ≤ Kˆı . A similar result, where πi1 j2 = πˆıjkˆı for 1 ≤ kˆı ≤ Kˆı can be obtained if in (z, y)1 , jq3 were assigned to (i1 , ki1 ) in place of jq4 . Since the choice of ˆı ∈ M W and kˆı is arbitrary, it follows that πˆıjkˆı = π aj for all ˆı ∈ M W , j ∈ {N − H q } and 1 ≤ kˆı ≤ Kˆı . Another perturbation of (z, y)1 is the exchanging of the assignment of jq3 and jq4 , wherein jq3 is now assigned to (i1 , ki1 ). This perturbation shows that πi1 jq4 2 = πi2 jq4 2 . This result can be generalized for any ki1 ≤ k1 − 1 and ki2 ≤ k2 , which results in πi1 jq4 2 = πi2 jq4 2 = π aj for all ki1 ≤ k1 − 1 and ki2 ≤ k2 . (z, y)2 : (i) yi1 ki1 = yi2 ki2 = 1, where k1 ≤ ki1 ≤ ∑K i1 − 1, 1 ≤ ki2 ≤ k2 and ki1 + ki2 ≤ n − 1, (ii) yiki = 1 each i ∈ M w ⊆ M − W and cardinalities ki chosen such that i∈MW ki = n − ki1 − ki2 ≥ 1, (iii) ki1 jobs in {N − jq2 − jq4 }, including jq1 and jq3 are assigned to (i1 , ki1 ), (iv) remaining ki2 jobs from {N − jq1 − jq3 }, including jq2 and jq4 are assigned to (i2 , ki2 ). This solution is perturbed by selecting a job j that is currently assigned to i ∈ M W , and reassigning it to (i2 , ki2 ), in place of jq2 . Both solutions satisfy (38) and (40) exactly, as the assignment of jq2 is hidden. The choice of j ∈ {N − jq3 − jq4 − jq2 } is arbitrary, as is the choice of (i, ki ) for i ∈ M − i2 to which it is assigned to. Therefore πi1 jki1 = πi2 jki2 = π bj for each j ∈ {N − jq3 − jq4 − jq2 } and k1 ≤ ki1 ≤ K i1 − 1, 1 ≤ ki2 ≤ k2 . Note that this includes πi2 j2 = π bj . Therefore, from the earlier result, it follows that π aj = π bj for each j ∈ {N − jq3 − jq4 − jq2 } and k1 ≤ ki1 ≤ K i1 − 1, 1 ≤ ki2 ≤ k2 . Note that if (i1 , K i1 ) is used in (z, y)2 , then since the assignment of jq4 is not hidden, it can be shown that πi2 jKi2 = πi2 jki2 = π aj for each j ∈ {N − jq3 − jq2 }. (z, y)3 : (i) yi1 ki1 = yi2 ki2 = 1, where k1 ≤ ki1 ≤ K i1 − 1, ∑k2 + 1 ≤ ki2 ≤ K i2 − 1 but ki1 + ki2 ≤ n − 1, (ii) yiki = 1 for each i ∈ M w ⊆ M − W and cardinalities ki chosen such that i∈MW ki = n − ki1 − ki2 ≥ 1, and (iii) jobs jq1 and jq3 are assigned to (i1 , ki1 ), while jq2 and jq4 are assigned to (i2 , ki2 ). The assignment of jq4 being hidden, (38) and (40) are satisfied exactly. By exchanging the assignment of jq4 with that of a job j currently assigned to an i ∈ M W , as well as exchanging it with jq3 , it is easy to show that πi1 jki1 = πi2 jki2 = π aj for each j ∈ {N − jq1 − jq2 − jq4 } and k1 ≤ ki1 ≤ K i1 − 1, k2 + 1 ≤ ki2 ≤ K i2 − 1. (z, y)4 : The complement of (z, y)3 , where agent-cardinality combinations (i1 , ki1 ) and (i2 , ki2 ) are used, with 1 ≤ ki1 ≤ k1 − 1 and k2 + 1 ≤ ki2 ≤ K i2 − 1. In this assignment, jq1 is hidden. Using a perturbation similar to that for (z, y)3 , it can be shown that πi1 jki1 = πi2 jki2 = π aj for each j ∈ {N − jq1 − jq3 − jq4 } and 1 ≤ ki1 ≤ k1 − 1, k2 + 1 ≤ ki2 ≤ K i2 − 1. Thus, from the perturbations of (z, y)1 , (z, y)2 , (z, y)3 and (z, y)4 , we show that the coefficients of the z variables in (40) are each equal to π aj , one for each j ∈ N. Consider again a variant of (z, y)2 , wherein a set of jobs H ⊂ N, with H q ⊂ H, are assigned to (i1 , ki1 ) and (i2 , ki2 ) alone. That is, ki1 + ki2 = |H | = h. Furthermore, jq3 is assigned to (i1 , ki1 ), while jq4 is assigned to (i2 , ki2 ). However, jobs in
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
135
N − H are unassigned. For such a feasible solution, (38) reduces to
∑
∑
zi1 jki1 +
j∈{H −jq2 −jq4 }
zi2 jki2 ≤ h − 3
(41)
j∈{H −jq2 −jq3 }
The corresponding constraint (39) becomes
∑
π aj zi1 jki1 +
j∈{H −jq2 −jq4 }
∑
π aj zi2 jki2 ≤ C
(42)
j∈{H −jq2 −jq3 }
where C denotes the composite value obtained after fixing the values of y and z as described above. Specifically, C = πi1 ki1 + πi2 ki2 − π ajq3 − π ajq4 + π0 . By definition, each feasible solution that satisfies (41) exactly, satisfies (42) exactly as well. There are h − 3 linearly independent selections of ki1 jobs from the set {H − jq2 − jq4 }. Consequently, there are h − 3 linearly independent solutions that satisfy both (41) and (42) exactly, implying that (42) is a scalar multiple of (41). Thus, π aj = π a for each j ∈ {H − jq2 − jq3 − jq4 }. Since the selection of H − H q from N − H q is arbitrary, it follows that π aj = π a for each j ∈ {N − H q }. In addition, π ajq1 = π a. As was done with (z, y)2 above, starting with (z, y)1 , (z, y)3 and (z, y)4 , it can be shown that π ajq1 = π a, π ajq3 = π a and π ajq4 = π a, respectively. Furthermore, C = (h − 3)π a. Yet another variant of (z, y)2 , where in addition to a designated set of jobs in H assigned to (i1 , ki1 ) and (i2 , ki2 ), ki > 0 jobs in N − H are assigned to agent-cardinality (i, ki ) for some i ∈ M − W . As a result, the left-hand-side of (42) increases by ki π a. This is so for any i ∈ M − W and 1 ≤ ki ≤ K i . Therefore, πiki = ki π a for any i ∈ M − W and 1 ≤ ki ≤ K i . Now consider a solution (z, y)5 , where agent-cardinality (i1 , ki1 ) alone is used, where 1 ≤ ki1 ≤ K i1 . In addition, all ki1 jobs that are assigned to i1 come from the set N − H q . Such an assignment is certainly possible as K i1 ≤ n − 4. This solution satisfies (38) and (40) exactly as there are no hidden assignments. Therefore, πi1 ki1 + π0 = ki1 π a for all 1 ≤ ki1 ≤ K i1 . In a similar fashion, it can be shown that πi2 ki2 + π0 = ki2 π a for all 1 ≤ ki2 ≤ K i2 . As well from (z, y)2 , it can be shown that πi1 ki1 + πi2 ki2 + π0 = (ki1 + ki2 − 1)π a. From the three equations, we obtain π0 = π a, πi1 ki1 = (ki1 − 1)π a and πi2 ki2 = (ki2 − 1)π a. This shows (40) to be a scalar multiple of (38) and thus (38) a non-trivial facet of H 4 (d)≤ . □ To show that (38) is a non-trivial facet of HU(d)≤ , we use a sequential lifting procedure to increase the coefficient values of variables z ijk ∈ {z c − z r }. The resulting inequality obtained will be a facet of HU(d)≤ . Theorem 12. The 2-Agent Cardinality Matching Inequality (38) is a non-trivial facet of HU(d)≤ . Proof. Let U z denote the index set of all z variables in {z c − z r }, while V z ⊆ U z represents those whose coefficients have already been lifted. At stage l of the sequential lifting procedure, the coefficient of zijk (l) for l ∈ {U z − V z } is lifted by solving the optimization problem:
πijk (l) = Min{1 + πyc yc − z r − πr (Vz )zr (Vz )| (5≤ ), (6), (7), (8), (9), zijk (l) = 1, zijk (s) = 0, ∀s ∈ {Uz − Vz }},
(43)
where (1 + πyc y ) represents the right-hand-side of (40), z the left-hand-side of (40) and πr (V z ) the lifted coefficients of variables in V z till iteration l − 1. Observe that for the lifted inequality to remain valid, πijk (l) ≥ 0. Therefore, in each iteration l, it suffices to identify a feasible solution to (43) whose objective function value is zero. Consider first the sequence of variables zi1 jq1 ki1 (l), l ∈ {U z − V z }, for some 1 ≤ ki1 ≤ k1 − 1. Starting with l = 1, with say ki1 = k1 − 1, the optimal solution to (43) is, yi1 ki1 = yi2 k2 +1 = 1, and the rest of the y variables set to zero. First, (ki1 − 1) jobs from N − {jq2 , jq3 }, including jq4 , are assigned to agent-cardinality (i1 , ki1 ). Note that jq1 is assigned to (i1 , ki1 ). Next, from the remaining unassigned jobs, (k2 + 1) jobs, which includes jq2 and jq3 are assigned to (i2 , k2 + 1). This results in πi1 jk1 (1) = 0. In subsequent iterations, for other values of ki1 ≥ 2, the same lifting solution gives πi1 jq1 ki1 (l) = 0. For ki1 = 1, agent-cardinality (i2 , K i2 ) is used in place of (i2 , k2 + 1). Here, jq4 as well is assigned to (i2 , K i2 ), resulting in πi1 jq1 ,1 (l) = 0. Consider next the lifting of coefficients of zi2 jq1 ki2 (l), for ki2 ≥ k2 + 1. Here, the optimal solution is yi1 1 = yi2 ki2 = 1, with the rest of the y variables set to zero. Job jq4 is assigned to (i1 , 1), while (ki2 − 1) jobs from N − jq4 , including {jq1 , jq2 , jq3 } are assigned to (i2 , ji2 ), resulting in πi2 jq1 ki2 (l) = 0, for all k2 + 1 ≤ ki2 ≤ K i2 . Finally, associated with jq1 , consider lifting of coefficients of zijq1 ki (l), for some i ∈ M − W . Here, the optimal solution is yi1 1 = yi2 k2 +1 = yiki = 1. While jq1 is assigned to (i, ki ), for i ∈ M − W , jq4 is assigned to (i1 , 1) and {jq2 , jq3 } assigned to (i2 , jk2+1 ). The rest of the jobs are selected from N − H q to match the cardinality requirement. This ensures that πijq1 ki (l) = 0 for all i ∈ M − W and 1 ≤ ki ≤ K i . For the sequence of variables, zi1 jq2 ki1 (l) for k1 ≤ ki1 ≤ K i1 , zi2 jq2 ki2 (l) for 1 ≤ ki2 ≤ k2 and zijq2 k1 (l) for i ∈ M − W and 1 ≤ ki ≤ K i , it is easy to show that the corresponding coefficients are all zero. The lifting of the coefficients involving assignment of jq2 is a complement of the assignment of jq1 described earlier. In the case of the sequence, zi1 jq3 ki1 (l), l ∈ {U z − V z }, for some 1 ≤ ki1 ≤ k1 − 1, the optimal solution is, yi1 ki1 = yi2 ,2 = 1, and the rest the y variables set to zero. Jobs jq3 is of course is assigned to (i1 , ki1 ). The rest of the (ki1 − 1) jobs are drawn from N − H q . Similarly, two jobs from N − H q are assigned to (i2 , 2). Clearly, this solution results in πi1 jq3 ki1 (l) = 0 for 1 ≤ ki1 ≤ k1 − 1. For the sequence of variables, zi2 jq3 ki2 (l), l ∈ {U z − V z }, 1 ≤ ki2 ≤ k2 , the optimal solution is, yi2 ki2 = yi1 ,2 = 1, and the rest the y variables set to zero. Here, jq3 is assigned to (i2 , ki2 ), while the remaining available slots for (i2 , ki2 ) and (i1 , 2) are filled up by jobs from N − H q . This results in πi2 jq3 ki2 (l) = 0 for 1 ≤ ki2 ≤ k2 . For lifting of coefficients of variables, zijq3 ki (l), the optimal c
r
136
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
solution used is yi1 1 = yi2 2 = yiki = 1, and the rest of the y variables set to zero. Here, jq1 is assigned to (i1 , 1), jq2 and jq4 are assigned to (i2 , 2), while jq3 and (ki − 1) jobs from N − H q are assigned to (i, ki ). This results in πijq3 ki (l) = 0 for all i ∈ M − W and 1 ≤ ki ≤ K i . To obtain πi1 jq4 ki1 (l) for k1 ≤ ki1 ≤ K i1 − 1, the optimal solution to (43) is, yi1 ki1 = yi2 k2 +1 = 1 with jq2 and jq4 assigned to (i1 , ki1 ), jq1 and jq3 assigned to (i2 , k2 + 1), while the rest of the (ki1 + k2 − 3) jobs are drawn from N − H q and assigned to (i1 , ki1 ) and (i2 , k2 + 1), consistent with their cardinalities. This results in πi1 jq4 ki1 (l) = 0 for k1 ≤ ki1 ≤ K i1 − 1. Similarly, for obtaining πi2 jq4 ki2 (l) for k2 + 1 ≤ ki2 ≤ K i2 − 1, the optimal solution used is, yi1 k1 = yi2 ki2 = 1, with jq2 and jq3 assigned to (i1 , k1 ), jq1 and jq4 assigned to (i2 , ki2 ), and (k1 + ki2 − 4) jobs from N − H q assigned to (i1 , k1 ) and (i2 , ki2 ), consistent with their cardinalities. Thus, πi2 jq4 ki2 (l) = 0 for k2 + 1 ≤ ki2 ≤ K i2 − 1. Finally, it can be shown that πijq4 ki (l) = 0, for all i
∈ M − W and 1 ≤ ki ≤ K i , by using the optimal solution, yi1 k1 = yi2 k2 +1 = yiki = 1, in which jq4 is assigned to (i, ki ), jq2 is assigned to (i1 , k1 ), jq1 and jq3 assigned to (i2 , k2 + 1), and (k1 + k2 + ki − 3) jobs from N − H q assigned to (i1 , k1 ), (i2 , k2 + 1) and (i, ki ), respectively. Thus, the coefficients of all variables in {z c − z r } remain zero after lifting. □ 5.3. Lifting of 2-Agent Cardinality Matching Inequality for H(d)≤ While the 2-Agent Cardinality Matching inequality is a non-trivial facet of HU(d)≤ , it need not be for H(d)≤ , due to the presence of knapsack constraints (4). Let S 3 (d)≤ = {(z, y) ∈ SU 3 (d)≤ | (4)} and H 3 (d)≤ = Conv {S 3 (d)≤ }. The inequality (38) can however be lifted to become a substantially stronger inequality of H(d)≤ . A sequential lifting procedure is employed for each of the coefficients of the missing z variables in (38). The optimization problem that needs to be solved is essentially the same as that in (43), except that the knapsack constraints (4) must be satisfied as well. With the inclusion of (4), the sequential lifting procedure boils down to solving a bin packing problem for each coefficient. The determination of coefficients, πijk (l) fall under four broad categories: (i) j = jq1 , (ii) j = jq2 , (iii) j = jq3 and (iv) j = jq4 . In the following exposition, we describe the lifting procedure for the first category in detail. Using a similar process, the results on the remaining categories can be inferred. Consider the lifting of the coefficients of variables z ijk (l) ∈ {z c − z r }, where j = jq1 . To expand on the notation used earlier, for some N i ⊆ N and ki ≤ ni , Li (N i , ki ) denotes the last ki indices in N i in decreasing order of aij . The coefficient πi1 jq1 ki1 (l), for 1 ≤ ki1 ≤ k1 − 1 is determined in the following way. If the assignment of jobs in Li1 (N − jq1 − jq3 , ki1 − 1) and jq1 to (i1 , ki1 ) satisfies (4), then the solution: yi1 k1 = 1 and zi1 jk1 = 1 for j ∈ {Li1 (N − jq1 − jq3 , ki1 − 1), jq1 }, and yi2 1 = 1, zi1 jq4 1 = 1, and the rest of the y and z variables set to zero results in, πi1 jq1 ki1 (l) = (ki1 − 1) + 0 + 1 − (ki1 − 1) + 1 = 0, which is optimal. However, if the above assignment violates (4), then the assignment {Li1 (N − jq1 − jq3 , ki1 − 2), jq1 , jq3 } to (i1 , ki1 ) is considered. If feasible, then since jq3 is hidden from (i1 , ki1 ), πi1 jq1 ki1 (l)=1, otherwise the formulation is strengthened by setting zi1 jq1 ki1 = 0. Note that since Li (N i , ki ) is easy to determine, obtaining πi1 jq1 ki1 (l) is easy. The procedure to determine πi2 jq1 ki2 (l), where k2 + 1 ≤ ki2 ≤ K i2 , is the same as that for πi1 jq1 ki1 (l) except that the job set considered initially is, {Li2 (N − jq1 − jq4 , ki2 − 1), jq1 }. If infeasible, then jq4 is included in the assignment. Thus, here as well, πi2 jq1 ki2 (l) is either 0 or 1, or that zi2 jq1 ki2 = 0. To determine πijq1 ki (l) where i ∈ M − W and 1 ≤ ki ≤ K i , the following procedure is used. If the assignment of jobs in Li (N − Hq , ki − 1) and jq1 to (i, ki ) satisfies (4), then as before, there exists a solution to the lifting problem resulting in πijq1 ki (l) = 0. If the above assignment is infeasible, then we select a job jmin1 such that aijmin = Min{aijq2 , aijq3 } and consider the assignment where jobs in {Li (N − Hq , ki − 2), jq1 , jmin1 } are assigned to (i, ki ). If feasible, then πijq1 ki (l) = 1. If not, then the assignment of jobs in {Li (N − Hq , ki − 3), H q } to (i, ki ) is explored. If feasible, then πijq1 ki (l) = 2, else the formulation is strengthened by setting zijq1 ki = 0. The process of lifting of coefficients that correspond to missing variables associated with jq2 mirror in a complementary way those associated with jq1 described above and therefore need no elaboration. In the case of jq3 , consider first the determination of πi1 jq3 ki1 (l), for 1 ≤ ki1 ≤ k1 − 1. Initially, the assignment of jobs in {Li1 (N − jq1 − jq3 , ki1 − 1), jq3 } to (i1 , ki1 ) is tested for feasibility. If feasible then πi1 jq3 ki1 (l) = 0, else an assignment in which both jq1 and jq3 are assigned to (i1 , ki1 ) is tested for feasibility. If feasible, then πi1 jq3 ki1 (l) = 1, else the formulation is strengthened by setting zi1 jq3 ki1 = 0. The process of determining πi1 jq3 ki2 (l), for 1 ≤ ki2 ≤ k2 is identical to that for πi1 jq3 ki1 (l). The process of determining
πijq3 ki (l) closely mirrors πijq3 ki (l) described earlier. Here as well, πijq3 ki (l) can take one of three values: 0, 1 or 2, or that the constraint zijq3 ki = 0 is added to the formulation. Finally, consider the case of missing variables associated with jq4 . To determine πi1 jq4 ki1 (l) for k1 ≤ ki1 ≤ K i1 , initially the assignment of {Li1 (N − jq2 − jq4 , ki1 − 1), jq4 } to (i1 , ki1 ) is checked for feasibility. If so, then by assigning jq2 to (i2 , 1) as well, an optimal solution is obtained with πi1 jq4 ki1 (l) = 0. If not, then the assignment is modified by including jq2 in it as well. If, as a result, a feasible solution is found, then πi1 jq4 ki1 (l) = 1, otherwise the constraint zi1 jq4 ki1 = 0 is added to the formulation. The process of determining πi2 jq4 ki2 (l) for k2 + 1 ≤ ki2 ≤ K i2 , exactly mirrors that of πi1 jq4 ki1 (l) and needs no elaboration. Similarly, the determination of πijq4 ki (l) where i ∈ M − W and 1 ≤ ki ≤ K i , closely mirrors the process used for πijq1 ki (l), πijq2 ki (l) or πijq3 ki (l). Thus, πijq4 ki (l) can take one of three values: 0, 1 or 2, or that zijq4 ki = 0. It is worthwhile emphasizing again that the optimization used in the sequential lifting procedure are all easy, since each one of them involve solving a bin-packing problem with one bin. Thus, with relatively little effort, the inequality (38) can be lifted to become a strong inequality for H(d)≤ .
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
137
5.4. The 2-Agent Cardinality Matching inequality when m = 2 We now consider the special case of (Pd) consisting of just two agents, with both needed to accommodate all the jobs. Here, the 2-Agent Cardinality Matching Inequality (38) can be strengthened further to become k1 −1
∑
∑
zi1 jki1 +
j∈{N −jq1 } ki1 =n−Ki2
+
∑
∑
Ki1 ∑
zi1 jki1 +
j∈{N −jq2 } ki1 =k1 Ki2 ∑
∑
k2 ∑
zi2 jki2
j∈{N −jq2 } ki2 =n−Ki1
zi2 jki2
j∈{N −jq1 } ki2 =k2 +1
≤
Ki1 ∑ ki1 =n−Ki2
(ki1 − 1) yi1 ki1 +
Ki2 ∑
(ki2 − 1) yi2 ki2 + 1
(44)
ki2 =n−Ki1
Observe that when M = {i1 , i2 }, the use of agent-cardinalities (i1 , ki1 ) and (i2 , ki2 ) will be such that ki1 + ki2 = n. Consequently, the smallest feasible cardinality associated with i1 is n − K i2 , and with i2 is n − K i1 . This also rules out the possibilities, (i) ki1 ≤ k1 − 1 and ki2 ≤ k2 , and (ii) ki1 ≥ k1 and ki2 ≥ k2 + 1. In the former case, the need to define jq3 , as a job whose assignment is hidden from (i1 , ki1 ) and (i2 , ki2 ) is no longer required. Similarly, in the latter case, the need to define jq4 is unnecessary. Since (44) is a special case of (38), it is a non-trivial facet of HU(d)≤ when m = 2. Note that from Proposition 9, for m = 2, Dim{HU(d)≤ = 2n(K i1 + K i2 − n), and therefore the dimension of the hyperplane (44) as an equality is 2n(K i1 + K i2 − n) − 1. Since constraints in (5)≤ are trivial facets of HU(d)≤ , Dim{HU(d)} = 2n(K i1 + K i2 − n) − n. Theorem 13. Consider the polytope HU(d) defined by agents, M = {i1 , i2 } and a set N consisting of a finite number of jobs. The 2-Agent Cardinality Matching Inequality (44), along with trivial facets, (a) xijk ≥ 0, (b) zijk ≤ yik , and (c) constraints (7), as described in Proposition 10, completely describe the polytope HU(d). Proof. Let LPU(d) = {(z, y) ∈ Rp |(z, y) satisfies (5)–(8), z ≥ 0, y ≥ 0}, p = 2(n + 1)(K i1 + K i2 − n)} for m = 2, the LP relaxation of (Pd) without (4). Clearly, every extreme point of HU(d) is also an extreme point of LPU(d). However, in addition, LPU(d) consists of extreme points that are fractional. Each inequality in (44) is uniquely defined by k1 , k2 and a selection of jq1 and jq2 from N. It is easy to verify that every extreme point of HU(d) satisfies (44) exactly. This is indeed possible since as observed earlier, the dimension of HU(d) is 2n(K i1 + K i2 − n) − n, while that of (44) as an equality is 2n(K i1 + K i2 − n) − 1. Given the above, it suffices to show that (44) violates every fractional extreme point of LPU(d). In turn, since (44) passes through every extreme point of HU(d), it is sufficient to identify those fractional extreme points of LPU(d) that are adjacent to integer extreme points, and then show that they violate (44). Every extreme point of HU(d) and therefore an integer extreme point of LPU(d) is characterized by the following: yi1 ki1 = yi2 ki2 = 1, ki1 + ki2 = n, zi1 jki1 = 1 for all j ∈ Nki1 , zi2 jki2 = 1 for all j ∈ Nki2 , where Nki1 ∪ Nki2 = N, Nki1 ∩ Nki2 = φ , |Nki1 | = ki1 and |Nki2 | = ki2 . To explore extreme points that are adjacent to an integer extreme point of LPU(d), one perturbation is to increase the value of the non-basic variable zi2 jki2 by ∆ > 0, where j ∈ Nki1 and therefore zi1 jki1 = 1. To satisfy (5), zi1 jki1 is decreased by ∆. To satisfy the cardinality constraints at (i1 , ki1 ) and (i2 , ki2 ), a j′ ∈ Nki2 is chosen wherein, zi2 j′ ki2 = 1 − ∆, while zi1 j′ ki1 =∆. This is illustrated in Fig. 4, where j = 2 and j′ = 3. In the limiting case, this perturbation ends with ∆ = 1, at which point zi2 j′ ki2 becomes non-basic. The resulting extreme point solution is also integer wherein there is an exchange of assignments of j and j′ . Thus, in this perturbation, yi1 ki1 = yi2 ki2 = 1 remains. Another possible perturbation is to increase the value of yi1 k′ i1 where k′ i1 ̸ = ki1 given that yi1 ki1 = yi2 ki2 = 1. Alternately, yi2 k′ i2 can be chosen for perturbation where k′ i2 ̸ = ki2 . Suppose that the value of yi1 k′ i1 , which is currently zero is increased it by ∆. Let Nk′ i1 and Nk′ i2 be defined such that, (i) |Nk′ i1 | = k′ i1 and |Nk′ i2 | = k′ i2 , (ii) Nk′ i1 ∪ Nk′ i2 = N and (iii) Nk′ i1 ∩ Nk′ i2 = φ . Clearly, to satisfy (7), the value of yi1 ki1 decreases by ∆. Regardless of whether k′ i1 < ki1 or k′ i1 > ki1 , to satisfy (5) and (7), the value of yi2 k′ i2 where k′ i2 = n − k′ i1 increases by ∆, while the value of yi2 ki2 decreases by ∆. Simultaneously, (i) zi1 jk′ i1 = ∆ for each j ∈ Nk′ i1 , (ii) zi2 jk′ i2 = ∆ for each j ∈ Nk′ i2 , (iii) zi1 jki1 = 1 − ∆ for each j ∈ Nki1 and (iv) zi2 jki2 = 1 − ∆ for each j ∈ Nki2 . Such a perturbation is certainly possible as constraints (5), (6) and (7) are satisfied exactly. Here as well, an adjacent extreme point is found when ∆ = 1, which is also integer, with yi1 k′ i1 = yi2 k′ i2 = 1 with jobs in Nk′ i1 and Nk′ i2 assigned to (i1 , k′ i1 ) and (i2 , k′ i2 ) respectively. The only other perturbation that is possible is identical to the previous one, except that Nk′ i1 ∩ Nk′ i2 ̸ = φ . Therefore, |Nk′ i1 ∪ Nk′ i2 | < n. Let Nk′ i1 k′ i2 = Nk′ i1 ∩ Nk′ i2 , while Nk′ i1 k′ i2 ki1 = Nk′ i1 k′ i2 ∩ Nki1 and Nk′ i1 k′ i2 ki2 = Nk′ i1 k′ i2 ∩ Nki2 . Similarly, N k′ i1 k′ i2 = N − {Nk′ i1 ∩ Nk′ i2 }, N k′ i1 k′ i2 ki1 = N k′ i1 k′ i2 ∩ Nki1 and N k′ i1 k′ i2 ki2 = N k′ i1 k′ i2 ∩ Nki2 . Clearly, Nk′ i1 k′ i2 = Nk′ i1 k′ i2 ki1 ∪ Nk′ i1 k′ i2 ki2 , N k′ i1 k′ i2 = N k′ i1 k′ i2 ki1 ∪ N k′ i1 k′ i2 ki2 and |Nk′ i1 k′ i2 | = |N k′ i1 k′ i2 |. Here, the integer extreme point solution is perturbed in part as follows: (i) yi1 k′ i1 = ∆, zi1 jk′ i1 = ∆ for each j ∈ Nk′ i1 , (ii) yi2 k′ i2 = ∆, zi2 jk′ i2 = ∆ for each j ∈ Nk′ i2 and (iii) yi1 ki1 = yi2 ki2 = 1 − ∆. Note that the perturbation described in (i) and (ii) satisfy (6) and (8) exactly. What remains is to specify the values of zi1 jki1 for each j ∈ Nki1 and zi2 jki2 for each j ∈ Nki2 such that (5), (6) and (8) are satisfied.
138
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
Fig. 4. Illustration of movement from one integer solution to an adjacent integer solution.
Since zi1 jk′ i1 = zi2 jk′ i2 = ∆ for each j ∈ Nk′ i1 k′ i2 , it follows that to satisfy (5), zi1 jki1 = 1 − 2∆ for each j ∈ Nk′ i1 k′ i2 ki1 and zi2 jki2 = 1 − 2∆ for each j ∈ Nk′ i1 k′ i2 ki2 . Furthermore, to satisfy (5) and (8), zi1 jki1 = 1 − ∆, zi2 jki2 = ∆ for every j ∈ N k′ i1 k′ i2 ki1 , and zi1 jki1 = ∆, zi2 jki2 = 1 − ∆ for every j ∈ N k′ i1 k′ i2 ki2 . Let DIFF = |Nk′ i1 k′ i2 ki1 | − |N k′ i1 k′ i2 ki2 |. Clearly, |N k′ i1 k′ i2 ki1 | − |Nk′ i1 k′ i2 ki2 | = DIFF as well. Thus at (i1 , ki1 ), the cumulative value of z variables accounted for from Nk′ i1 k′ i2 and N k′ i1 k′ i2 is |Nk′ i1 k′ i2 ki1 |(1 − 2∆) + |N k′ i1 k′ i2 ki1 |(1 − ∆) + |N k′ i1 k′ i2 ki2 |∆ = (|Nk′ i1 k′ i2 ki1 | + |N k′ i1 k′ i2 ki1 |)(1 − ∆) − DIFF ∗ ∆, while at (i2 , ki2 ) it is DIFF*∆ + (|Nk′ i1 k′ i2 ki2 | + |N k′ i1 k′ i2 ki2 |)(1 − ∆). If DIFF > 0, then an arbitrary set N Diff ⊆ {Nki2 − Nk′ i1 k′ i2 ki2 − N k′ i1 k′ i2 ki2 } is selected with |NDiff | = DIFF . We now set zi2 jki2 = 1 − 2∆ and zi1 jki1 = ∆ for each j ∈ N Diff , zi2 jki2 = 1 − ∆ for each j ∈ {Nki2 − Nk′ i1 k′ i2 ki2 − N k′ i1 k′ i2 ki2 − N Diff }, and zi1 jki1 = 1 − ∆ for each j ∈ {Nki1 − Nk′ i1 k′ i2 ki1 − N k′ i1 k′ i2 ki1 }. Conversely if DIFF < 0, then N Diff ⊆ {Nki1 − Nk′ i1 k′ i2 ki1 − N k′ i1 k′ i2 ki1 } is selected such that |NDiff | = −DIFF , and we set zi1 jki1 = 1 − 2∆ and zi2 jki2 = ∆ for each j ∈ N Diff , zi1 jki1 = 1 − ∆ for each j ∈ {Nki1 − Nk′ i1 k′ i2 ki1 − N k′ i1 k′ i2 ki1 − N Diff }, and zi2 jki2 = 1 − ∆ for each j ∈ {Nki2 − Nk′ i1 k′ i2 ki2 − N k′ i1 k′ i2 ki2 }. Such a perturbation satisfies (5) at each j ∈ N Diff , and (6) exactly, both at (i1 , ki1 ) and (i2 , ki2 ). This is illustrated in Fig. 5. In Fig. 5, ki1 = 3, k′ i1 = 4, ki2 = 3, k′ i2 = 2, Nk′ i1 k′ i2 ki1 = {3}, Nk′ i1 k′ i2 ki2 = {4}, N k′ i1 k′ i2 ki1 = φ , N k′ i1 k′ i2 ki2 = {5, 6}. Given the above, DIFF = −1 and N Diff = {2}. It is evident from this illustration that when ∆ = 0.5, an adjacent extreme point is found that is fractional. It is worth noting at when ∆ = 0.5, then any node in Nk′ i1 k′ i2 (nodes 3 and 4 in Fig. 5) can be chosen as jq1 , while any node in N k′ i1 k′ i2 (nodes 5 and 6 in Fig. 5) can be chosen jq2 . Clearly, the fractional solution is such that jq1 is hidden from (i1 , k′ i1 ) and (i2 , k′ i2 ), while jq2 is hidden from (i1 , ki1 ) and (i2 , ki2 ). This ensures that it violates (44). □ 6. Computational results In this section we report results comparing the performance of a branch-and-cut procedure on the disaggregated formulation (Pd) to the traditional formulation (Ps). The computational testing was performed using CPLEX-12.5 on a set of well-known benchmark problems from the OR-library [6] that have been used for extensively for testing of algorithms for GAP. For instance, Nauss [17] used these problems to test Lagrangian Relaxation based branch-and-bound procedure, as have Yagiura et al [22] for their Tabu Search heuristic. We focus on the most difficult problems, the A, B, C, D and E series. Series D and E problems are known to be the hardest because a negative correlation is induced between parameters c ij and aij (for details, see [22]). Tables 6.1 and 6.2 present these results. We tested the efficacy of the disaggregated formulation on large size problems, the largest being m = 80 and n = 1600. Given this size, implementing a full-scale disaggregation as suggested in (4) to (9) could become untenable, even if polynomially bounded. For instance, with m = 80 and n = 1600, the total number of binary variables and constraints could potentially be as large as 204,928,000 and 207,489,680, respectively. By comparison, in the traditional formulation, the number of binary variables and constraints would be 128,000 and 1680, respectively. We addressed this concern by adopting a scaled-down disaggregation∑in the following way. Initially, the LP relaxation of (Ps) is solved. Assuming that a fractional solution is obtained, r i = j∈N xij is determined for each i ∈ M. The agent i is then split into at most three cardinalities. They are:
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
139
Fig. 5. Illustration of movement from one integer solution to an adjacent non-integer solution.
(i) ki1 = ⌊ri ⌋ − 1, (ii) ki2 = ⌊ri ⌋, and (iii) ki3 = ⌊ri ⌋ + 1. For each agent i, the reduced variable set yiki1 , yiki2 , and yiki3 is introduced. Similarly, for each i ∈ M and j ∈ N, the variables zijki1 , zijki2 , and zijki3 are introduced. The knapsack and the VUB constraints are now introduced as:
∑
aij zijkil ≤ bi yikil
∀i ∈ M , l = 1, 2, 3.
(45)
j∈N
zijkl ≤ yikil
∀i ∈ M , j ∈ N , l = 1, 2, 3
(46)
The cardinality constraints (6) are modified for each agent i as follows:
∑
zijki1 ≤ ki1 yiki1 ,
∀i ∈ M
(47)
zijki2 = ki2 yiki2 ,
∀i ∈ M
(48)
zijki3 ≥ ki3 yiki3 .
∀i ∈ M
(49)
j∈N
∑ j∈N
∑ j∈N
Clearly, the use of constraints (45), (46), (47), (48), (49) makes the resulting formulation a relaxation of (Pd). However, the benefit accrued from the reduction in model size far outweighs the limitations posed by the relaxation. Using this scaled-down approach, the problem with m = 80 and n = 1600, requires about 384,240 variables and 384,480 constraints, far less than the full-scale desegregation. CPLEX 12.5 and C++ compiled with g++ version 4.7.2 was used to code the initial formulation (Ps), followed by the scaled-down disaggregated formulation and executed both with the internal CPLEX branch-and-cut procedure. CPLEX-12.5 has sophisticated separation algorithms for adding general purpose cuts that include the Cover, Clique, Gomory, Zero-Half, Disjoint, Mixed Integer Rounding and the GUB Cover. Using a feature called User Cuts in CPLEX-12.5, separation heuristics for (1) Cardinality Constrained Cover Inequalities, (2) Cardinality Constrained (1, pˆ k )-Configuration Inequalities, (3) Barand-Handle (1, pˆ k ) Inequalities, and the (4) 2-Agent Cardinality Matching Inequalities was implemented. The separation heuristics devised for the inequalities above were quite simple, and did not use lifting procedures (as discussed in the earlier section) to strengthen these cuts. All these heuristics were packaged into User Cuts. We will henceforth refer to these cuts as disaggregated cuts. At the root node of the branch-and-bound tree, CPLEX first generated its own generalpurpose cuts, followed by disaggregated cuts. Finally, no effort was made to develop our own primal heuristic procedure to obtain feasible solutions. Rather, for both (Ps) and (Pd), CPLEX was let to run its own heuristic routines for determining promising feasible solutions from the LP solutions obtained. In implementing the branch-and-cut procedure for (Ps), we chose the most aggressive setting in CPLEX 12.5 for cut generation, wherein maximum effort is expended in identifying cuts that violate the current LP solution. Clearly, the
140
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
Table 6.1 A/B/C/D/E Problems: Comparison of best bounds. m
n
Optimal
Original (Ps) Root bound
A
B
C
D
E
a b
5 5 10 10 20 20 5 5 10 10 20 20 5 5 10 10 10 15 20 20 20 20 30 40 40 60 80 5 5 10 10 10 15 20 20 20 20 30 40 40 60 80 5 5 10 10 10 15 20 20 20 20 30 40 40 60 80
100 200 100 200 100 200 100 200 100 200 100 200 100 200 100 200 400 900 100 200 400 1600 900 400 1600 900 1600 100 200 100 200 400 900 100 200 400 1600 900 400 1600 900 1600 100 200 100 200 400 900 100 200 400 1600 900 400 1600 900 1600
1 698 3 235 1 360 2 623 1 158 2 339 1 843 3 552 1 407 2 827 1 166 2 339 1 931 3 456 1 402 2 806 5 597 11 340 1243 2 391 4 782 18 802 9 982 4 244 17 145 9 327 16 285 6 353 12 742 6 348 12 432 24 963 55 409 6 190 12 241 24 574 97 832 54 852 24 392 97 105 54 568 97 035 12 681 24 930 11 577 23 307 45 746 102 421 8 436 22 379 44 877 180 645 100 427 44 561 178 293 100 149 176 820
a
1698.00 3235.00a 1360.00a 2623.00a 1158.00a 2339.00a 1839.85 3248.83 1407.00a 2825.18 1166.00a 2339.00a 1929.22 3454.47 1402.00a 2803.43 5595.12 11 338.28 1243.00a 2391.00a 4479.63 18 800.40 9980.53 4243.15 17 142.55 9323.89 16 283.00 6348.03 12 737.75 6333.83 12 421.76 24 957.14 55 401.19 6165.73 12 224.44 24 556.86 97 821.95 54 830.47 24 349.00 97 105.00 54 551.00 97 034.00 12 670.42 24 926.09 11 566.46 23 301.51 45 743.77 102 419.44 8430.25 22 375.17 44 874.72 180 642.72 100 425.81 44 555.34 178 291.05 100 144.36 176 818.21
Disaggregated (Pd) CPLEX cuts 0 0 6 0 12 26 19 19 57 52 109 72 18 24 55 43 49 63 111 121 94 67 145 214 171 295 101 20 17 50 39 46 47 112 93 79 75 106 30 14 28 77 24 19 49 42 51 51 137 104 107 62 136 197 154 314 411
Percentage gapb 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.171% 9.393% 0.000% 0.100% 0.000% 0.000% 0.092% 0.102% 0.000% 0.127% 0.051% 0.051% 0.000% 0.000% 6.839% 0.035% 0.090% 0.045% 0.038% 0.098% 0.080% 0.362% 0.261% 0.492% 0.541% 0.136% 0.158% 2.194% 1.215% 0.656% 0.187% 0.313% 1.043% 0.352% 0.766% 0.580% 0.233% 0.260% 0.437% 0.092% 0.108% 0.064% 0.578% 0.129% 0.159% 0.150% 0.009% 0.179% 0.008% 0.017% 0.003%
Root bound a
1698.00 3235.00a 1360.00a 2623.00a 1158.00a 2339.00a 1843.00a 3552.00a 1407.00a 2827.00a 1166.00a 2339.00a 1931.00a 3456.00a 1402.00a 2806.00a 5597.00a 11 338.58 1243.00a 2391.00a 4479.81 18 800.92 9980.53 4244.00a 17 143.05 9324.34 16 283.45 6348.52 12 738.24 6335.45 12 422.91 24 957.41 55 401.38 6167.05 12 225.65 24 557.56 97 822.15 54 831.05 24 349.00 97 105.00 54 551.00 97 034.00 12 681.00a 24 927.87 11 575.85 23 304.67 45 744.54 102 421.00a 8430.96 22 377.81 44 877.00a 180 643.65 100 427.00a 44 558.80 178 293.00a 100 146.64 176 820.00a
CPLEX cuts
Disaggregated cuts
Percentage gapb
0 0 6 0 12 26 32 35 57 95 109 72 18 36 55 64 78 76 111 121 98 78 174 241 199 328 178 25 19 61 47 61 68 135 135 112 97 141 36 17 28 77 35 33 76 48 83 76 162 139 145 107 164 227 202 385 461
0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 28 0 28 0 0 59 46 184 438 41 543 736 12 7 37 29 14 8 204 60 26 0 20 158 0 96 33 0 11 22 7 22 0 79 25 0 18 0 30 0 38 0
0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.000% 0.039% 0.000% 0.000% 6.790% 0.022% 0.085% 0.000% 0.029% 0.050% 0.053% 0.260% 0.194% 0.466% 0.331% 0.135% 0.153% 2.010% 0.960% 0.653% 0.149% 0.283% 0.945% 0.345% 0.656% 0.496% 0.000% 0.009% 0.010% 0.010% 0.003% 0.000% 0.202% 0.005% 0.000% 0.001% 0.000% 0.018% 0.000% 0.005% 0.000%
Indicates optimal value at root node. Percentage gap = (Upper Bound − Lower Bound)/(Lower Bound)∗100.
objective is to obtain the tightest possible bounds. It is clear from the results in Table 6.1, that the lower bounds obtained at the root node using the disaggregated formulation are uniformly better than those using the traditional formulation. Furthermore, out of a total of 57 instances tested, the optimal solution was obtained in 26 of those instances at the root node using the disaggregated formulation. In contrast, natural integer solutions were obtained in 12 instances using the traditional formulation, with 9 of them belonging to series A and B. What is indeed noteworthy is that in most instances
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
141
Table 6.2 A/B/C/D/E Problems: Nodes to optimal. m
A
B
C
D
E
5 5 10 10 20 20 5 5 10 10 20 20 5 5 10 10 10 15 20 20 20 20 30 40 40 60 80 5 5 10 10 10 15 20 20 20 20 30 40 40 60 80 5 5 10 10 10 15 20 20 20 20 30 40 40 60 80
n
100 200 100 200 100 200 100 200 100 200 100 200 100 200 100 200 400 900 100 200 400 1600 900 400 1600 900 1600 100 200 100 200 400 900 100 200 400 1600 900 400 1600 900 1600 100 200 100 200 400 900 100 200 400 1600 900 400 1600 900 1600
Root upper bound
Nodes to optimal
Original (Ps)
Disaggregated (Pd)
Original (Ps)
Disaggregated (Pd)
1 698* 3 235* 1 360* 2 623* 1 158* 2 339* 1 843* 3 554 1 407* 2 828 1 166* 2 339* 1 931* 3 458 1 402* 2 807 5 598 11 344 1 243* 2 391* 4 786 18 807 9 989 4 245 17 149 9 333 16 296 6 371 12 771 6 365 12 489 24 991 55 489 6 301 12 373 24 718 98 005 55 002 24 603 97 447 54 969 97 597 12 700 24 991 11 617 23 323 45 793 102 485 8 479 22 404 44 946 180 914 100 435 44 635 178 305 100 161 176 823
1 698* 3 235* 1 360* 2 623* 1 158* 2 339* 1 843* 3 552* 1 407* 2 827 1 166* 2 339* 1 931* 3 456* 1 402* 2 806* 5 597* 11 343 1 243* 2 391* 4 784 18 805 9 989 4 244* 17 148 9 329 16 292 6 365 12 763 6 365 12 464 24 991 55 486 6 291 12 343 24 718 97 968 54 986 24 579 97 447 54 909 97 515 12 681* 24 930 11 577 23 307 4 746 102 421* 8 448 22 379 44 877* 180 645 100 427* 44 567 178 293* 100 152 176 820*
0 0 0 0 0 0 112 648 0 209 0 0 38 273 0 356 489 5946 0 0 1256 max 7077 187 max max max 2538 7007 max max max max max max max max max max max max max 472 870 977 1100 2437 3595 768 833 3025 9342 1058 3941 3170 2991 779
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 max 0 0 4786 max max 0 max max max 2598 8396 max max max max max max max max max max max max max 0 9 64 71 7 0 1104 5 0 35 0 184 0 201 0
‘max’ indicates that the optimal value was not found in 10,000 nodes of branch-and-bound.
of E series, the lower bound obtained from the disaggregated formulation is closer to the optimal value than it is to the lower bound obtained from the traditional formulation. This in turn is reflected in the superior performance of the branch-and-cut procedure devised for (Pd). What is also evident in Table 6.2 is that the upper bound obtained using the disaggregated formulation is uniformly better than that obtained using the traditional formulation. Table 6.2 provides a comparison of the performance of the branch-and-cut procedure for (Ps) and (Pd), respectively, with the measure being the number of branch-and-bound nodes visited after the root node. The problems in series A were solved at the root node by both procedures. All the problems in series B were solved to optimality at the root node by the
142
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
branch-and-cut procedure for (Pd), while branching was required in 3 of the 6 instances by the branch-and-cut procedure for (Ps). In series C, the optimal solution was found at the root node by using the disaggregated formulation in 5 instances, while a substantial number of branching was required on these same instances using the traditional formulation. On the other hand, in two problems: (1) m = 15, n = 900, (2) m = 30, n = 900, the problem could not be solved in 10,000 nodes using the disaggregated approach. The same problems were solved to optimality by the traditional formulation in 5946 and 7077 nodes, respectively. In the problem with m = 20 and n = 400, the branch-and-cut procedure on (Ps) solved it with fewer nodes than the branch-and-cut procedure on (Pd). What is indeed intriguing about these three instances is that at the root node, the lower bound obtained from (Pd) is higher, albeit marginally, than that from (Ps). In addition, the best-known feasible value obtained at the root node was also the same or better in the case of (Pd). One possible reason could be that the branching strategy used for solving (Pd) is not the most effective. In our testing, we let CPLEX choose the branching strategy. The other possibility is that (Pd) has a lot more variables to branch on than does (Ps). In the case of series D, apart from the first two problems, neither approach was able to solve the rest of the problems within 10,000 branch-and-bound nodes. Here as well, the lower bounds obtained from solving (Pd) and its cuts at the root node were uniformly higher than that obtained from solving (Ps) with its cuts. Similarly, the upper bounds obtained at the root node from solving (Pd) were found to be the same or better than those from solving (Ps). In fact, what is striking about this class of problems is that the lower bounds obtained are in general very close to the optimal, and yet optimality is not established within 10,000 nodes. For instance, the third last problem with m = 40 and n = 1600, the lower bound obtained was 97105.0, which is also the optimal value. However, the upper bound obtained at the root node is 97447.0. Another such case is the problem with m = 80 and n = 1600, where the lower bound obtained is 97034.0, with the optimal value being 97035.0, while the upper bound obtained is 97515.0. This then explains why most of the problems could not be solved within 10,000 nodes. It also points towards the need for a more effective primal heuristic that finds close to optimal solution early in the branch-and-cut procedure. The branch-and-cut procedure on (Pd) clearly outperforms the branch-and-cut procedure on (Ps) by a significant margin for problems in series E. Out of the 15 problems in this class, the optimal solution was established at the root node in 6 of those instances using the disaggregated formulation. With the exception of one instance (m = 20 and n = 100), the approach using the disaggregated formulation outperformed the approach using the traditional formulation by a significant margin. Problems in series E then represent a well-recognized class of hard instances for which the disaggregated approach proposed in this paper seems to show great promise. It is also worth mentioning here that to the best of our knowledge, no other exact procedure has successfully solved problems of this size in series E. Nauss [17] reported results on the performance of his exact procedure on problems from series D and E. The largest problem size solved from these two series was with m = 10 and n = 300. In series E, we have been able to solve much larger problems to optimality. While the problems in each series of a given size are randomly generated, it is nevertheless instructive to compare our results to that obtained in [17] for problems in series E of the same size. For problems of size, (i) m = 5 and n = 100, Nauss’s approach took 639 nodes on average, (ii) m = 5 and n = 200, 116,487 nodes on average and (iii) m = 10 and n = 100, 76,196 nodes on average [17]. As seen in Table 6.2, we were able to solve problems of the same size with much fewer nodes. 7. Concluding remarks and future research possibilities In this paper, we have presented a new disaggregated formulation of GAP that uses the idea of cardinality for each agent. The LP relaxation of this formulation is shown to be stronger than the LP relaxation of the standard formulation (Ps) used in earlier works such as Cattrysse et al. [3] and Nauss [17]. The disaggregated formulation reveals generalizations of the well-known Cover and (1, p)-configuration inequalities that provide a much tighter description of the polytope, as well as being far more ubiquitous. Furthermore, this formulation reveals strong inequalities involving multiple agents. We present two such classes of inequalities: the Bar-and-Handle (1, pˆ k ) Inequality and the 2-Agent Cardinality Matching Inequality. The Bar-and-Handle (1, pˆ k ) inequality is a generalization of the multi-agent (1, p) configuration inequality in [9]. The 2-Agent Cardinality Matching inequality is first shown to be a facet of the polytope defined by the feasible solutions of the un-capacitated version of GAP. It is also shown that the lifting procedure needed to make it a strong inequality for the capacitated version is easy to solve. For the special case of GAP consisting of two agents, the 2-Agent Cardinality Matching inequality, along with trivial facets completely describe the polytope defined by the feasible solutions of the un-capacitated version of GAP. A branch-and-cut procedure based on the disaggregated formulation along with separation heuristics for the cuts designed for the disaggregated formulation was implemented in CPLEX 12.5. Its performance was compared to a branchand-cut procedure based on the traditional formulation of GAP on a set of medium to large well-known benchmark test problems. These problems are classified into series A, B, C, D and E, of which problems in D and E are known to be harder than the rest. The lower bounds obtained from the disaggregated formulation and its associated cuts were found to be tighter than those obtained from the traditional formulation. The same is true for the upper bounds as well. One consequence of this result was that the optimal solution was established at the root node in 26 of the 57 instances tested using our proposed approach. In contrast, by using the traditional formulation, the optimal solution was found at the root node in 12 instances. The difference in the performance between the two approaches was most pronounced for problems in series E. As a result, we have been able to demonstrate the ability to solve hard problems to
I. Murthy and S. Ransbotham / Discrete Applied Mathematics 271 (2019) 119–143
143
optimality of sizes that have not been attempted so far in literature. It needs to be emphasized here that the separation heuristics employed for identifying promising Cardinality Constrained Cover Inequalities, Cardinality Constrained (1, pˆ k )Configuration Inequalities, Bar-and-Handle (1, pˆ k ) Inequalities, and the 2-Agent Cardinality Matching Inequalities are quite simple and not as sophisticated as those already existing in CPLEX 12.5. Furthermore, lifting of the 2-Agent Cardinality Matching Inequalities discussed in Section 6 was not implemented. Finally, as already mentioned, no primal heuristic was implemented by us and we relied on what is existing in CPLEX 12.5. It is our belief that with a more sophisticated implementation of the separation heuristic along with lifting and a good primal heuristic, the performance of our branch-and-cut procedure can further improve significantly. Another interesting idea worth exploring for future research is to extend the 2-Agent Cardinality Matching inequalities to three or more agents. Finally, similar disaggregation approaches can be investigated for other NP-Hard problems such as the Capacitated Concentrator Location Problem, or the Capacitated Network Design problem in which each commodity is either wholly assigned or not at all to each link in the network. References [1] P. Avella, M. Boccia, I. Vasilyev, A computational study of exact knapsack separation for the generalized assignment problem, Comput. Optim. Appl. (2008) 1–13. [2] E. Balas, Facets of the knapsack polytope, Math. Program. 8 (1) (1975) 146–164. [3] D.G. Cattrysse, Z. Degraeve, J. Tistaert, Solving the generalized assignment problem using polyhedral results, European J. Oper. Res. (108) (1998) 618–628. [4] D.G. Cattrysse, M. Salomon, L.N. Wassenhove, A set partitioning heuristic for the generalized assignment problem, European J. Oper. Res. (72) (1994) 167–174. [5] D.G. Cattrysse, L.N. Van Wassenhove, A survey of algorithms for generalized assignment problems, Eur. J. Oper. Res. (60: 3) (1992) 260–272. [6] P.C. Chu, J.E. Beasley, A genetic algorithm for the generalized assignment problem, Comput. Oper. Res. 24 (1) (1997) 17–23. [7] M.L. Fisher, R. Jaikumar, L.N. Van Wassenhove, A multiplier adjustment method for the generalized assignment problem, Manage. Sci. (32: 9) (1986) 1095–1103. [8] A. Frangioni, B. Gendron, 0-1 reformulations of the multicommodity capacitated network design, Discrete Appl. Math. 157 (6) (2009) 1229–1241. [9] E. Gottlieb, M.R. Rao, (1, k)-configuration facets for the generalized assignment problem, Math. Program. (46: 1) (1990) 53–60. [10] E. Gottlieb, M.R. Rao, The generalized assignment problem: Valid inequalities and facets, Math. Program. (46: 1) (1990) 31–52. [11] L. Gouveia, A 2n-constraint formulation for the capacitated minimal spanning tree problem, Oper. Res. 43 (1995) 130–141. [12] L. Gouveia, Using hop-indexed models for constrained spanning and steiner tree models, in: B. Samsò, P. Soriano (Eds.), Telecommunications Network Planning, 1999, pp. 21–32. [13] L. Gouveia, T. Magnanti, Network flow models for designing diameter-constrained minimum-spanning and steiner trees, Networks 41 (2003) 159–173. [14] M. Guignard, M. Rosenwein, An improved dual based algorithm for the generalized assignment problem, Oper. Res. (37) (1989) 658–663. [15] P.L. Hammer, E.L. Johnson, U.N. Peled, Facets of regular 0-1 polytopes, Math. Program. 8 (1) (1976) 179–206. [16] N. Karabakal, J.C. Bean, J.R. Lohmann, A Steepest Descent Multiplier Adjustment Method for the Generalized Assignment Problem, Report 92-11, University of Michigan, Ann Arbor, MI, 1992. [17] R.M. Nauss, Solving the generalized assignment problem: An optimizing and heuristic approach, INFORMS J. Comput. (15: 3) (2003) 249–266. [18] M. Padberg, (1, k)-configurations and facets of packing problems, Math. Program. 18 (1) (1980) 94–99. [19] G.T. Ross, R.M. Soland, A branch and bound algorithm for the generalized assignment problem, Math. Program. (8:11) (1975) 91–103. [20] M. Savelsbergh, A branch-and-price algorithm for the generalized assignment problem, Oper. Res. (45) (1997) 831–841. [21] E. Uchoa, R. Fukasawa, J. Lysgaard, A. Pessoa, M. Poggi de Aragˇa.o, D. Andrade, Robust branch-cut-and-price for the Capacitated Minimum Spanning Tree problem over a large extended formulation, Math. Program. (112, 2) (2008) 443–472. [22] M. Yaguira, S. Iwasaki, T. Ibaraki, F. Glover, A very large-scale neighborhood search algorithm for the multi-resource generalized assignment problem, Discrete Optim. 1 (1) (2004) 87–98.