This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

New Classes of Facets for Complementarity Knapsack Problems

Alberto Del Pia [email protected] Jeff Linderoth [email protected] Haoran Zhu [email protected], corresponding author
Abstract

The complementarity knapsack problem (CKP) is a knapsack problem with real-valued variables and complementarity conditions between pairs of variables. We extend the polyhedral studies of de Farias et al. for CKP, by proposing three new families of cutting-planes that are obtained from a combinatorial concept known as pack. Sufficient conditions for these inequalities to be facet-defining, based on the new concept of a maximal switching pack, are also provided. Moreover, we answer positively a conjecture by de Farias et al. about the separation complexity of the inequalities introduced in their work, and propose efficient separation algorithms for our newly defined cutting-planes.

Key words: Complementarity knapsack polytope; Complementarity problem; SOS1 constraints; Branch-and-cut.

1 Introduction

In this paper, we investigate cutting-planes for the complementarity knapsack problem (CKP). Let M={1,,m}M=\{1,\ldots,m\} and, for every iM,i\in M, let Ni={1,,ni}N_{i}=\{1,\ldots,n_{i}\}, for some m,nim,n_{i}\in{\mathbb{N}}. Let b+b\in{\mathbb{R}}_{+} and cij,aij+c_{ij},a_{ij}\in{\mathbb{R}}_{+} for every iM,jNii\in M,j\in N_{i}. Then the CKP is

max\displaystyle\max\quad iMjNicijxij\displaystyle\sum_{i\in M}\sum_{j\in N_{i}}c_{ij}x_{ij} (CKP)
s.t. iMjNiaijxijb,\displaystyle\sum_{i\in M}\sum_{j\in N_{i}}a_{ij}x_{ij}\leq b, (1)
xijxij=0,jjNi,iM,\displaystyle x_{ij}\cdot x_{ij^{\prime}}=0,\qquad j\neq j^{\prime}\in N_{i},i\in M, (2)
0xij1,jNi,iM.\displaystyle 0\leq x_{ij}\leq 1,\qquad j\in N_{i},i\in M.

The constraints in (2), enforcing that at most one of the variables in the set NiN_{i} takes a positive value are usually referred to as complementarity constraints. Often, in the literature, the set of variables {xij}jNi\{x_{ij}\}_{j\in N_{i}}, for any iM,i\in M, is called a special ordered set of type 1 (SOS1). When the variables are binary, the corresponding complementarity constraint is often called a generalized upper bound (GUB).

Traditionally, (CKP) is modeled by introducing binary variables yijy_{ij} for any iM,jNii\in M,j\in N_{i}, and the complementarity constraints (2) are formulated by xijyijx_{ij}\leq y_{ij} and jNiyij1\sum_{j\in N_{i}}y_{ij}\leq 1 for any iMi\in M. Then, cutting-planes are added into this mixed-integer programming (MIP) formulation in order to obtain a tighter relaxation, specifically cutting-planes from the knapsack polytope, see, e.g., [2, 11, 12, 23, 24]. Note that all cutting-planes that are added into such a formulation are “general purpose”, in the sense that their derivation does not take into consideration the structure of the specific problem at hand. This approach naturally has several computational disadvantages, including the size increase of the problem and the loss of structure, see [7, 15]. For these reasons, de Farias et al. [10] conducted a polyhedral study of CKP in the space of the continuous variables. In particular, the authors presented two families of facet-defining inequalities, called fundamental complementarity inequalities, that can be derived by lifting cover inequalities of CKP. 111These are not the typical “cover inequalities” in 0-1 programming In a more recent paper, de Farias et al. [8] first generalized the two families of inequalities introduced in [10], and then numerically tested the performance of these inequalities by using them within a branch-and-cut algorithm. Our paper is motivated by these papers of de Farias et al. [10, 8]. In particular, we further investigate the polyhedral structure of CKP in the space of the original variables. We remark that, the idea of dispensing with the use of auxiliary binary variables to model complementarity constraints and enforcing those constraints directly appears in a number of papers, including [4, 5, 21, 9].

In a branch-and-cut procedure using the inequalities proposed in [8] to solve CKP, a crucial step is separation—given an optimal solution of the current linear relaxation, how can we efficiently identify an inequality in a given class to separate the given solution and strengthen the relaxation? de Farias et al. conjectured that the separation of their inequalities is 𝒩𝒫\mathcal{NP}-complete. In our first contribution of this paper, we show that it is indeed 𝒩𝒫\mathcal{NP}-complete to separate both classes of inequalities proposed in [8]. Our second contribution is the introduction of novel valid inequalities for the convex hull of the feasible set of (CKP), which is coined the complementarity knapsack polytope by de Farias et al. We also provide sufficient conditions for these inequalities to be facet-defining. A key difference between our inequalities and the ones proposed in [10, 8], is that the inequalities that we introduce cannot be derived via the lifting procedure proposed in [10]. This is further discussed at the end of Section 4.

This paper is organized as follows. In Section 2, we introduce some notation, assumptions, and previous results from the literature. In Section 3, we provide the positive answers to the conjectures made by de Farias et al. [8]. In Section 4, we introduce the concept of pack and maximal switching pack, and propose three new families of cutting-planes for (CKP) which originate from packs. We also show that these inequalities are facet-defining if the pack itself, or some particular subset of the pack, is a maximal switching pack. In Section 5, we propose efficient separation algorithms for the proposed cutting-planes. These algorithms were not present in the conference version of this paper [13], where they were posed as interesting open questions. In Section 6, we discuss directions for future research.

2 Notations, assumptions, and previous work

To the best of our knowledge, the papers [10, 8] are the only polyhedral studies of the complementarity knapsack polytope. Using the same notation as in [10], we denote by SS the set of feasible solutions of (CKP), and by PS:=conv(S)PS:=\operatorname{conv}(S) the complementarity knapsack polytope. We denote by dd the number of variables in the problem, i.e., d:=iMnid:=\sum_{i\in M}n_{i}. For ease of notation, we denote by ijij the ordered pair (i,j)(i,j). We also identify any set containing exactly one element with the element itself. We denote by I:=iM(i×Ni)I:=\cup_{i\in M}(i\times N_{i}), which is simply the set of all indices of xx. We denote by M0M_{0} the set of indices in MM that do not lie in any complementarity constraint, i.e., M0:={iMni=1}M_{0}:=\{i\in M\mid n_{i}=1\}. For TI,T\subseteq I, we define MT:={iMijT for some jNi}M_{T}:=\{i\in M\mid ij\in T\text{ for some }j\in N_{i}\}. For any n,n\in{\mathbb{N}}, we let [n]:={1,,n}[n]:=\{1,\ldots,n\}. For any vector vn,v\in{\mathbb{R}}^{n}, we denote by supp(v)\operatorname{supp}(v) the support set of vector vv, i.e., supp(v):={i[n]vi0}\operatorname{supp}(v):=\{i\in[n]\mid v_{i}\neq 0\}.

As in [8], we make the following assumptions:

Assumption 1 (Assumption 1 in [8]).

MM0M\neq M_{0}.

Assumption 2 (Assumption 2 in [8]).

iMmax{ai1,,aini}>b\sum_{i\in M}\max\{a_{i1},\ldots,a_{in_{i}}\}>b.

Assumption 3 (Assumption 3 in [8]).

b>0,aij0b>0,a_{ij}\geq 0, for all ijIij\in I.

Assumption 4 (Assumption 6 in [8]).

ai1aini,a_{i1}\geq\ldots\geq a_{in_{i}}, for all iMM0.i\in M-M_{0}.

All these assumptions can be made without loss of generality (w.l.o.g.): If the first two assumptions do not hold, then problem (CKP) is trivial. For Assumption 3, if bij0b_{ij}\leq 0 for some index ijij, then xijx_{ij} can be fixed to zero. Assumption 4 is made because we are dealing with a single knapsack inequality, and we make this assumption to simplify the presentation of this paper.

Next, we introduce a few basic properties of PSPS, and review the concepts and results introduced in de Farias et al. [10, 8]. Throughout this section, known results are not proved, but referenced. The results that are proved are, to the best of our knowledge, new.

Lemma 1 (Proposition 2 in [10]).

PSPS is full-dimensional.

Lemma 2.

If x~\tilde{x} is a non-integral vertex of PSPS, then it has exactly one fractional component, and we have iMjNiaijx~ij=b\sum_{i\in M}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}=b.

Proof.

If x~\tilde{x} has at least two fractional components, say, x~ij,x~i′′j′′(0,1)\tilde{x}_{i^{\prime}j^{\prime}},\tilde{x}_{i^{\prime\prime}j^{\prime\prime}}\in(0,1), for some ii′′Mi^{\prime}\neq i^{\prime\prime}\in M, jNij^{\prime}\in N_{i^{\prime}}, j′′Ni′′j^{\prime\prime}\in N_{i^{\prime\prime}}. Then the 2-dimensional point (x~ij,x~i′′j′′)(\tilde{x}_{i^{\prime}j^{\prime}},\tilde{x}_{i^{\prime\prime}j^{\prime\prime}}) is contained in the 2-dimensional polyhedron

{(xij,xi′′j′′)[0,1]2aijxij+ai′′j′′xi′′j′′biMjNiaijx~ij+aijx~ij+ai′′j′′x~i′′j′′}.\left\{(x_{i^{\prime}j^{\prime}},x_{i^{\prime\prime}j^{\prime\prime}})\in[0,1]^{2}\mid a_{i^{\prime}j^{\prime}}x_{i^{\prime}j^{\prime}}+a_{i^{\prime\prime}j^{\prime\prime}}x_{i^{\prime\prime}j^{\prime\prime}}\leq b-\sum_{i\in M}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+a_{i^{\prime}j^{\prime}}\tilde{x}_{i^{\prime}j^{\prime}}+a_{i^{\prime\prime}j^{\prime\prime}}\tilde{x}_{i^{\prime\prime}j^{\prime\prime}}\right\}.

It is simple to check that the extreme points of this 2-dimensional polyhedron all have at most one fractional component, therefore (x~ij,x~i′′j′′)(\tilde{x}_{i^{\prime}j^{\prime}},\tilde{x}_{i^{\prime\prime}j^{\prime\prime}}) can be written as the convex combination of some other 2-dimensional points in the above polyhedron. Note that replacing the xijx_{i^{\prime}j^{\prime}} and xi′′j′′x_{i^{\prime\prime}j^{\prime\prime}} components of x~\tilde{x} with the components of these 2-dimensional points will lead to vectors in SS, and x~\tilde{x} can be written as the convex combination of these resulting points. This gives us a contradiction, since x~\tilde{x} is an extreme point of PSPS by assumption.

We now assume, without loss of generality, that x~11\tilde{x}_{11} is the only fractional component of vertex x~\tilde{x}. If iMjNiaijx~ij<b\sum_{i\in M}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}<b, then replacing the x11x_{11} component of x~\tilde{x} by x~11+ϵ\tilde{x}_{11}+\epsilon or x~11ϵ\tilde{x}_{11}-\epsilon, for some small enough ϵ\epsilon, will still satisfy the inequality iMjNiaijxijb\sum_{i\in M}\sum_{j\in N_{i}}a_{ij}x_{ij}\leq b and the complementarity constraints. But this also implies that x~\tilde{x} is not a vertex of PSPS, which gives a contradiction. ∎

Lifting is an important concept in integer programming that is used to strengthen valid inequalities [2, 3, 6, 17, 18]. In the case of 0-1 knapsack problems, the cover inequalities are one of the most well-known family of cuts. Applying the lifting process to cover inequalities produces the widely used lifted cover inequalities, discovered independently by Balas [2] and Wolsey [25]. (See also the survey [1]). In [10], the authors extended the concept of a cover and cover inequalities to CKPs as follows:

Definition 1 (Definition 1 in [10]).

Let C={i1j1,,ikjk}I,C=\{i_{1}j_{1},\ldots,i_{k}j_{k}\}\subset I, where i1,,iki_{1},\ldots,i_{k} are all distinct. The set CC is called a cover if ijCaij>b\sum_{ij\in C}a_{ij}>b. Given a cover CC, the inequality

ijCaijxijb\sum_{ij\in C}a_{ij}x_{ij}\leq b (3)

is called a cover inequality.

Next, we present two families of cutting-planes for PSPS proposed in [8], which are obtained by sequentially lifting the cover inequalities with respect to covers which satisfy different conditions. The obtained inequalities generalize the two families of inequalities given in [10].

Theorem 1 (Theorem 3 in [8]).

Let CC be a cover. Denote the elements of CC as iriir_{i}, iMC\forall i\in M_{C}. Assume that iMCiairi+aij<b\sum_{i\in M_{C}-i^{\prime}}a_{ir_{i}}+a_{i^{\prime}j^{\prime}}<b for some iMCi^{\prime}\in M_{C} and j{jNiri<jni}j^{\prime}\in\{j\in N_{i^{\prime}}\mid r_{i^{\prime}}<j^{\prime}\leq n_{i^{\prime}}\}. Then,

iMCj=1ri1airixij+iMCj=rinimax{aij,bkMCiakrk}xijb\sum_{i\in M_{C}}\sum_{j=1}^{r_{i}-1}a_{ir_{i}}x_{ij}+\sum_{i\in M_{C}}\sum_{j=r_{i}}^{n_{i}}\max\left\{a_{ij},b-\sum_{k\in M_{C}-i}a_{kr_{k}}\right\}x_{ij}\leq b (4)

is valid for PSPS. Inequality (4) is facet-defining when ri=1r_{i}=1, iMC\forall i\in M_{C}.

Theorem 2 (Theorem 4 in [8]).

Let CC be a cover and ijCi^{\prime}j^{\prime}\in C with j<nij^{\prime}<n_{i^{\prime}}. Denote the elements of CC other than iji^{\prime}j^{\prime} as itiit_{i}, iMCi\forall i\in M_{C}-i^{\prime}. Suppose that iMCiaiti+aini<b\sum_{i\in M_{C}-i^{\prime}}a_{it_{i}}+a_{i^{\prime}n_{i^{\prime}}}<b. Then,

jNimax{aij,bkMCiaktk}xij+iMCi(j=1tiaitimax{1,aijbkMCi,iaktkaini}xij+j=ti+1niaijxij)b\begin{split}&\sum_{j\in N_{i^{\prime}}}\max\left\{a_{i^{\prime}j},b-\sum_{k\in M_{C}-i^{\prime}}a_{kt_{k}}\right\}x_{i^{\prime}j}\\ &+\sum_{i\in M_{C}-i^{\prime}}\left(\sum_{j=1}^{t_{i}}a_{it_{i}}\max\left\{1,\frac{a_{ij}}{b-\sum_{k\in M_{C}-{i,i^{\prime}}}a_{kt_{k}}-a_{i^{\prime}n_{i^{\prime}}}}\right\}x_{ij}+\sum_{j=t_{i}+1}^{n_{i}}a_{ij}x_{ij}\right)\leq b\end{split} (5)

is valid for PSPS. Inequality (5) is facet-defining when ti=nit_{i}=n_{i}, iMCi\forall i\in M_{C}-i^{\prime}.

3 Separation complexity of lifted cover inequalities for CKP

A fundamental component of cutting plane algorithms is separation—does there exist a cutting plane within a given family that is violated by a given infeasible solution? For many classic classes of inequalities for integer programming, separation is known to be 𝒩𝒫\mathcal{NP}-complete. In knapsack problems, [22] showed that the separation for cover inequalities is 𝒩𝒫\mathcal{NP}-complete, and [16] showed the same result for lifted cover inequalities. Moreover, recently Del Pia et al. [14] further extended the complexity result for {0,1}\{0,1\}-knapsack problems to extended cover inequalities, (1,k)(1,k)-configuration inequalities, and weight inequalities. In [8], de Farias et al. also conjectured that the separation problems for both (4) and (5) are 𝒩𝒫\mathcal{NP}-complete. In this section, we show that this conjecture is true.

First, we formally define the separation problems for (4) and (5). Here the LP relaxation of (CKP) is simply the optimization problem without the complementarity constraints (2).


Problem SP1
Input: (c,a,b)(+d,+d,+)(c,a,b)\in({\mathbb{Z}}^{d}_{+},{\mathbb{Z}}^{d}_{+},{\mathbb{Z}}_{+})
and an optimal solution xx^{*} to the LP relaxation of (CKP).
Question: Is there a cover C={iriiMC}C=\{ir_{i}\mid i\in M_{C}\} of (CKP), such that

iMCj=1ri1airixij+iMCj=rinimax{aij,bkMCiakrk}xij>b?\sum_{i\in M_{C}}\sum_{j=1}^{r_{i}-1}a_{ir_{i}}x^{*}_{ij}+\sum_{i\in M_{C}}\sum_{j=r_{i}}^{n_{i}}\max\left\{a_{ij},b-\sum_{k\in M_{C}-i}a_{kr_{k}}\right\}x^{*}_{ij}>b? (6)

Problem SP2
Input: (c,a,b)(+d,+d,+)(c,a,b)\in({\mathbb{Z}}^{d}_{+},{\mathbb{Z}}^{d}_{+},{\mathbb{Z}}_{+})
and an optimal solution xx^{*} to the LP relaxation of (CKP).
Question: Is there a cover C={itiiMCi}{ij}C=\{it_{i}\mid i\in M_{C}-i^{\prime}\}\cup\{i^{\prime}j^{\prime}\} of (CKP), with iMCiaiti+aini<b\sum_{i\in M_{C}-i^{\prime}}a_{it_{i}}+a_{i^{\prime}n_{i^{\prime}}}<b, such that

jNimax{aij,bkMCiaktk}xij+iMCi(j=1tiaitimax{1,aijbkMCi,iaktkaini}xij+j=ti+1niaijxij)>b?\begin{split}&\sum_{j\in N_{i^{\prime}}}\max\left\{a_{i^{\prime}j},b-\sum_{k\in M_{C}-i^{\prime}}a_{kt_{k}}\right\}x_{i^{\prime}j}\\ &+\sum_{i\in M_{C}-i^{\prime}}\left(\sum_{j=1}^{t_{i}}a_{it_{i}}\max\left\{1,\frac{a_{ij}}{b-\sum_{k\in M_{C}-{i,i^{\prime}}}a_{kt_{k}}-a_{i^{\prime}n_{i^{\prime}}}}\right\}x_{ij}+\sum_{j=t_{i}+1}^{n_{i}}a_{ij}x_{ij}\right)>b?\end{split} (7)

Next, we show that Problem SP1 is 𝒩𝒫\mathcal{NP}-complete. The reduction is from the partition problem: Given (α1,,αk;β)(+k,+)(\alpha_{1},\ldots,\alpha_{k};\beta)\in({\mathbb{Z}}^{k}_{+},{\mathbb{Z}}_{+}) with i=1kαi=2β\sum_{i=1}^{k}\alpha_{i}=2\beta, does there exist a subset S[k]S\subseteq[k] such that iSαi=β\sum_{i\in S}\alpha_{i}=\beta? The partition problem is one of the original 21 problems that Karp demonstrated to be 𝒩𝒫\mathcal{NP}-complete [20].

Theorem 3.

Problem SP1 is 𝒩𝒫\mathcal{NP}-complete.

Proof.

Since verifying if a given point violates a given inequality can be done in polynomial time with respect to the input size of the point and the inequality, the separation problem SP1 is clearly in the class 𝒩𝒫\mathcal{NP}. Therefore, we only have to show that SP1 is 𝒩𝒫\mathcal{NP}-hard.

Given an instance (α1,,αk;β)(+k,+)(\alpha_{1},\ldots,\alpha_{k};\beta)\in({\mathbb{Z}}^{k}_{+},{\mathbb{Z}}_{+}) of the partition problem, we construct the following instance of (CKP), where the data (a,b,c,x)(a,b,c,x^{*}) is defined as follows:

M:=[k+1],n1==nk:=1,nk+1:=β+1,ai1:=αii[k],ak+1,1:=3,ak+1,2==ak+1,β+1:=1,b:=β+2,c:=a,x11==xk1:=2β36β,xk+1,1:=1,xk+1,2==xk+1,β+1:=13.\displaystyle\begin{split}&M:=[k+1],\ n_{1}=\ldots=n_{k}:=1,\ n_{k+1}:=\beta+1,\\ &a_{i1}:=\alpha_{i}\ \forall i\in[k],\ a_{k+1,1}:=3,\ a_{k+1,2}=\ldots=a_{k+1,\beta+1}:=1,\\ &b:=\beta+2,\ c:=a,\\ &x^{*}_{11}=\ldots=x^{*}_{k1}:=\frac{2\beta-3}{6\beta},\ x^{*}_{k+1,1}:=1,\ x^{*}_{k+1,2}=\ldots=x^{*}_{k+1,\beta+1}:=\frac{1}{3}.\end{split} (8)

Since i=1nαi=2β\sum_{i=1}^{n}\alpha_{i}=2\beta, here iMjNiaijxij=b\sum_{i\in M}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}=b and c=ac=a, so xx^{*} is an optimal solution to the LP relaxation of our constructed CKP instance. Hence, (a,b,c,x)(a,b,c,x^{*}) is a correct input to problem SP1, and the encoding size of (a,b,c,x)(a,b,c,x^{*}) is polynomial in the encoding size of (α1,,αk;β)(\alpha_{1},\ldots,\alpha_{k};\beta).

First, assume S[k]S\subseteq[k] is a yes-certificate to the above partition problem, with iSαi=β\sum_{i\in S}\alpha_{i}=\beta. Then, we consider C={i1iS{k+1}}C=\{i1\mid i\in S\cup\{k+1\}\}. We have ijCaij=iSαi+3=β+3=b+1\sum_{ij\in C}a_{ij}=\sum_{i\in S}\alpha_{i}+3=\beta+3=b+1, so CC is a cover. Now we verify (6). By plugging CC and xx^{*} into the left-hand side of (6), we obtain: iSαi2β36β+(31+j=2β+1213)=β+52\sum_{i\in S}\alpha_{i}\cdot\frac{2\beta-3}{6\beta}+(3\cdot 1+\sum_{j=2}^{\beta+1}2\cdot\frac{1}{3})=\beta+\frac{5}{2}, which is larger than bb. Hence, from a yes-certificate to the partition problem, we can obtain a yes-certificate to problem SP1 with the above constructed input data.

Second, we assume CC is a cover to our constructed CKP, such that the corresponding inequality (4) is not satisfied by xx^{*}. The assumption in Theorem 1 implies that there exists some iMCi^{\prime}\in M_{C} and jj^{\prime} such that iMCiairi+aij<b\sum_{i\in M_{C}-i^{\prime}}a_{ir_{i}}+a_{i^{\prime}j^{\prime}}<b, since otherwise inequality (4) is dominated by the original knapsack constraint (1). In our constructed CKP instance, we know that ii^{\prime} must be k+1k+1 and (k+1,1)C(k+1,1)\in C. In other words, iMC[k]αi+1<b\sum_{i\in M_{C}\cap[k]}\alpha_{i}+1<b. Since CC is a cover, we also have iMC[k]αi+3>b\sum_{i\in M_{C}\cap[k]}\alpha_{i}+3>b. Here αi+\alpha_{i}\in{\mathbb{Z}}_{+} for all i[k]i\in[k]. Therefore, iMC[k]=b2=β\sum_{i\in M_{C}\cap[k]}=b-2=\beta, which means MC[k]M_{C}\cap[k] is a yes-certificate for the above partition problem.

We have shown that there is a yes-certificate to SP1 with input (a,b,c,x)(a,b,c,x^{*}) in (8) if and only if there is a yes-certificate to the partition problem with input (α1,,αk;β)(\alpha_{1},\ldots,\alpha_{k};\beta). Since the partition problem is 𝒩𝒫\mathcal{NP}-hard, we obtain that SP1 is 𝒩𝒫\mathcal{NP}-hard as well. ∎

Next, we consider Problem SP2. The proof of the next theorem is almost identical to the proof of Theorem 3. In particular, it is obtained once again with a reduction from the partition problem with the data in (8). For completeness, we give a detailed proof.

Theorem 4.

Problem SP2 is 𝒩𝒫\mathcal{NP}-complete.

Proof.

As in the proof of Theorem 3, it suffices to prove the 𝒩𝒫\mathcal{NP}-hardness of SP2. Given an instance (α1,,αk;β)(\alpha_{1},\ldots,\alpha_{k};\beta) of the partition problem, we construct the instance of (CKP) with data (a,b,c,x)(a,b,c,x^{*}) according to (8). As we have shown in the proof for Theorem 3, (a,b,c,x)(a,b,c,x^{*}) is a correct input to SP2 with polynomial encoding size with respect to that of (α1,,αk;β)(\alpha_{1},\ldots,\alpha_{k};\beta).

First, assume S[k]S\subseteq[k] is a yes-certificate to the above partition problem, with iSαi=β\sum_{i\in S}\alpha_{i}=\beta. Then, we consider C={i1iS{k+1}}C=\{i1\mid i\in S\cup\{k+1\}\}, and pick (i,j)=(k+1,1)(i^{\prime},j^{\prime})=(k+1,1). Here ijCaij=iSαi+3=β+3=b+1\sum_{ij\in C}a_{ij}=\sum_{i\in S}\alpha_{i}+3=\beta+3=b+1, so CC is a cover. Also, iMC{k+1}ai1+ak+1,β+1=iSαi+1=β+1<b\sum_{i\in M_{C}-\{k+1\}}a_{i1}+a_{k+1,\beta+1}=\sum_{i\in S}\alpha_{i}+1=\beta+1<b. Now we verify (7). By plugging CC and xx^{*} into the left-hand side of (7), we obtain: (31+j=2β+1213)+iSαi2β36β=β+52(3\cdot 1+\sum_{j=2}^{\beta+1}2\cdot\frac{1}{3})+\sum_{i\in S}\alpha_{i}\cdot\frac{2\beta-3}{6\beta}=\beta+\frac{5}{2}, which is larger than bb. Hence, from a yes-certificate to the partition problem, we can obtain a yes-certificate to problem SP2 with input data (a,b,c,x)(a,b,c,x^{*}) constructed in (8).

Second, we assume CC is a cover to our constructed CKP and ijCi^{\prime}j^{\prime}\in C, such that iMCiaiti+aini<b\sum_{i\in M_{C}-i^{\prime}}a_{it_{i}}+a_{i^{\prime}n_{i^{\prime}}}<b, and the corresponding inequality (5) is not satisfied by xx^{*}. In our constructed CKP instance, we know that (i,j)(i^{\prime},j^{\prime}) must be (k+1,1)(k+1,1). In other words, iMC[k]αi+1<b\sum_{i\in M_{C}\cap[k]}\alpha_{i}+1<b. Since CC is a cover, we also have iMC[k]αi+3>b\sum_{i\in M_{C}\cap[k]}\alpha_{i}+3>b. Here αi+\alpha_{i}\in{\mathbb{Z}}_{+} for all i[k]i\in[k]. Therefore, iMC[k]=b2=β\sum_{i\in M_{C}\cap[k]}=b-2=\beta, which means MC[k]M_{C}\cap[k] is a yes-certificate for the above partition problem.

We have shown that there is a yes-certificate to SP2 with input (a,b,c,x)(a,b,c,x^{*}) in (8) if and only if there is a yes-certificate to the partition problem with input (α1,,αk;β)(\alpha_{1},\ldots,\alpha_{k};\beta). Since the partition problem is 𝒩𝒫\mathcal{NP}-hard, we obtain that SP2 is 𝒩𝒫\mathcal{NP}-hard as well. ∎

4 New families of facet-defining inequalities

In this section, we propose three new families of inequalities valid for PSPS, that are fundamentally different from (4) and (5). We also give sufficient conditions for the inequalities to be facet-defining. The inequalities are derived using the concept of a pack, a concept that is complementary to a cover, and we call the inequalities complementarity pack inequalities. We refer the reader to [1] for discussions on how packs are used to obtain strong valid inequalities in 010-1 programming.

Definition 2.

Let P={i1j1,,ikjk}I,P=\{i_{1}j_{1},\ldots,i_{k}j_{k}\}\subset I, where i1,,iki_{1},\ldots,i_{k} are all distinct. The set PP is called a pack if ijPaij<b\sum_{ij\in P}a_{ij}<b. A pack PP is further called a maximal switching pack, if j=nij=n_{i} for any ijPij\in P, and ijPaijaini+ai,ni1>b\sum_{ij\in P}a_{ij}-a_{i^{\prime}n_{i^{\prime}}}+a_{i^{\prime},n_{i^{\prime}}-1}>b, for any iMPM0.i^{\prime}\in M_{P}-M_{0}.

4.1 First complementarity pack inequalities

Now we present the first family of complementarity pack inequalities.

Theorem 5.

Let PP be a pack for PSPS, and s:=ijPaijs:=\sum_{ij\in P}a_{ij}. Then

iMPjNiaijxij+ijP,iMPM0(bs)xijb+(|MPM0|1)(bs)\begin{split}\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}x_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\in M_{P}-M_{0}\end{subarray}}(b-s)x_{ij}\leq b+(|M_{P}-M_{0}|-1)(b-s)\end{split} (9)

is a valid inequality for PSPS. Furthermore, when PP is a maximal switching pack, we have:

  1. 1.

    (9) induces a face of PSPS of dimension at least d|MPM0|d-|M_{P}-M_{0}|;

  2. 2.

    When MPM0M_{P}\cap M_{0}\neq\emptyset, (9) is facet-defining.

Proof.

First, we show that any feasible point x~\tilde{x} in SS satisfies (9). Let M¯:=MPM0\bar{M}:=M_{P}-M_{0} and P¯:={ijPiM¯}\bar{P}:=\{ij\in P\mid i\in\bar{M}\}. We have |P¯|=|M¯|=|MPM0||\bar{P}|=|\bar{M}|=|M_{P}-M_{0}|.

Case 1: P¯supp(x~)\bar{P}\subseteq\operatorname{supp}(\tilde{x}). We know that, for any i1j1,i2j2Pi_{1}j_{1},i_{2}j_{2}\in P, there is i1i2i_{1}\neq i_{2}, and x~\tilde{x} satisfies the complementarity constraint x~ijx~i,j=0\tilde{x}_{ij}\tilde{x}_{i,j^{\prime}}=0 for any jjNij^{\prime}\neq j\in N_{i}, iMi\in M. Therefore, in this case, iMPjNiaijx~ijijPaij=s\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}\leq\sum_{ij\in P}a_{ij}=s. Hence we have

iMPjNiaijx~ij+(bs)ijP¯x~ij\displaystyle\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+(b-s)\sum_{ij\in\bar{P}}\tilde{x}_{ij} iMPjNiaijx~ij+(bs)|P¯|\displaystyle\leq\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+(b-s)|\bar{P}|
s+(bs)|P¯|\displaystyle\leq s+(b-s)|\bar{P}|
=b+(|P¯|1)(bs)\displaystyle=b+(|\bar{P}|-1)(b-s)
=b+(|MPM0|1)(bs).\displaystyle=b+(|M_{P}-M_{0}|-1)(b-s).

Case 2: P¯supp(x~)\bar{P}\nsubseteq\operatorname{supp}(\tilde{x}). In this case, we have |{ijijP¯,ijsupp(x~)}||P¯|1=|MPM0|1|\{ij\mid ij\in\bar{P},ij\in\operatorname{supp}(\tilde{x})\}|\leq|\bar{P}|-1=|M_{P}-M_{0}|-1. Hence

iMPjNiaijx~ij+(bs)ijP¯x~ij\displaystyle\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+(b-s)\sum_{ij\in\bar{P}}\tilde{x}_{ij} b+(bs)|{ijijP¯,ijsupp(x~)}|\displaystyle\leq b+(b-s)|\{ij\mid ij\in\bar{P},ij\in\operatorname{supp}(\tilde{x})\}|
b+(|MPM0|1)(bs).\displaystyle\leq b+(|M_{P}-M_{0}|-1)(b-s).

From the discussion in the above two cases, we have shown that (9) is satisfied by any feasible point x~S\tilde{x}\in S, which means (9) is valid for PSPS.

Next, we assume that PP is a maximal switching pack. A point xx with xij=1ijPx_{ij}=1\ \forall ij\in P, and 0 elsewhere, satisfies (9) at equality, and is in SS, since by definition of pack we have ijPaij<b\sum_{ij\in P}a_{ij}<b. Also, for any iMPi^{\prime}\notin M_{P}, jNij^{\prime}\in N_{i^{\prime}}, the point xx with xij=min{1,bsaij}x_{i^{\prime}j^{\prime}}=\min\{1,\frac{b-s}{a_{i^{\prime}j^{\prime}}}\}, xij=1ijPx_{ij}=1\ \forall ij\in P, and 0 elsewhere, is in SS and satisfies (9) at equality. Hence so far we have found iMPni+1\sum_{i\notin M_{P}}n_{i}+1 affinely independent feasible points of SS that satisfy (9) at equality.

Recall that j=nij=n_{i} for any ijPij\in P when PP is a maximal switching pack. In the following, we discuss the dimension of the face induced by (9), and we consider separately two cases:

Case 1: MPM0=M_{P}\cap M_{0}=\emptyset. For any iMPi^{\prime}\in M_{P}, j<nij^{\prime}<n_{i^{\prime}}, consider the point xx with xini=1iMPix_{in_{i}}=1\ \forall i\in M_{P}-i^{\prime}, xij=aini+bsaijx_{i^{\prime}j^{\prime}}=\frac{a_{i^{\prime}n_{i^{\prime}}}+b-s}{a_{i^{\prime}j^{\prime}}}, and 0 elsewhere. By definition of maximal switching pack and Assumption 4, we know xij<1x_{i^{\prime}j^{\prime}}<1. It is easy to verify that xx is in SS, and satisfies (9) at equality. Therefore, we find another iMP(ni1)\sum_{i\in M_{P}}(n_{i}-1) points in SS that satisfy (9) at equality. Together with the previous iMPni+1\sum_{i\notin M_{P}}n_{i}+1 points in SS, we have found in total iMni|MP|+1=d+1|MP|\sum_{i\in M}n_{i}-|M_{P}|+1=d+1-|M_{P}| points of SS that satisfy (9) at equality. From our characterization of these points, we know that they are affinely independent. Therefore, the face given by (9) has dimension at least d|MP|=d|MPM0|d-|M_{P}|=d-|M_{P}-M_{0}|.

Case 2: MPM0M_{P}\cap M_{0}\neq\emptyset. In this case we simply have |MPM0|1|M_{P}\cap M_{0}|\geq 1. For any iM¯,i^{\prime}\in\bar{M}, we consider the following set

{x[0,1]dxini=1iM¯i,xij=0iM¯i and jNini,xini=0,xij=0iMP and jNi,iMPM0ai1xi1+jNiniaijxij=biM¯iaini, set {xi1,,xi,ni1} is SOS1}.\begin{split}\Big{\{}x\in[0,1]^{d}\mid\ &x_{in_{i}}=1\ \forall i\in\bar{M}-i^{\prime},x_{ij}=0\ \forall i\in\bar{M}-i^{\prime}\text{ and }j\in N_{i}-n_{i},\\ &x_{i^{\prime}n_{i^{\prime}}}=0,x_{ij}=0\ \forall i\notin M_{P}\text{ and }j\in N_{i},\\ &\sum_{i\in M_{P}\cap M_{0}}a_{i1}x_{i1}+\sum_{j\in N_{i^{\prime}}-n_{i^{\prime}}}a_{i^{\prime}j}x_{i^{\prime}j}=b-\sum_{i\in\bar{M}-i^{\prime}}a_{in_{i}},\\ &\text{ set }\{x_{i^{\prime}1},\ldots,x_{i^{\prime},n_{i^{\prime}}-1}\}\text{ is SOS1}\Big{\}}.\end{split} (10)

By definition of maximal switching pack, we have iMPM0ai1+aij>biM¯iaini\sum_{i\in M_{P}\cap M_{0}}a_{i1}+a_{i^{\prime}j}>b-\sum_{i\in\bar{M}-i^{\prime}}a_{in_{i}} for any jNinij\in N_{i^{\prime}}-n_{i^{\prime}}, so the set (10) has |MPM0|+ni1|M_{P}\cap M_{0}|+n_{i^{\prime}}-1 affinely independent points, which are all in SS and satisfy (9) at equality. Hence in total we obtain iM¯(|MPM0|+ni1)=iM¯ni+|M¯|(|MPM0|1)\sum_{i\in\bar{M}}(|M_{P}\cap M_{0}|+n_{i}-1)=\sum_{i\in\bar{M}}n_{i}+|\bar{M}|(|M_{P}\cap M_{0}|-1) affinely independent points in SS that satisfy (9) at equality. Notice that these points all lie in the affine space

{xdxij=0iMP and jNi,iM¯xini=|M¯|1,iMPM0ai1xi1+jNiniaijxij=biM¯iaini},\begin{split}\Big{\{}x\in{\mathbb{R}}^{d}\mid&\ x_{ij}=0\ \forall i\notin M_{P}\text{ and }j\in N_{i},\sum_{i\in\bar{M}}x_{in_{i}}=|\bar{M}|-1,\\ &\sum_{i\in M_{P}\cap M_{0}}a_{i1}x_{i1}+\sum_{j\in N_{i^{\prime}}-n_{i^{\prime}}}a_{i^{\prime}j}x_{i^{\prime}j}=b-\sum_{i\in\bar{M}-i^{\prime}}a_{in_{i}}\Big{\}},\end{split} (11)

whose dimension is diMPni2=iMPni2d-\sum_{i\notin M_{P}}n_{i}-2=\sum_{i\in M_{P}}n_{i}-2. Since |MPM0|1|M_{P}\cap M_{0}|\geq 1, we know that the number of previous points iM¯ni+|M¯|(|MPM0|1)\sum_{i\in\bar{M}}n_{i}+|\bar{M}|(|M_{P}\cap M_{0}|-1) is at least iM¯ni+|MPM0|1\sum_{i\in\bar{M}}n_{i}+|M_{P}\cap M_{0}|-1, which equals iMPni1\sum_{i\in M_{P}}n_{i}-1. Hence, we obtain another iMPni1\sum_{i\in M_{P}}n_{i}-1 affinely independent points in SS that satisfy (9) at equality. Together with the previous iMPni+1\sum_{i\notin M_{P}}n_{i}+1 points in SS, in total we have found dd points in SS which satisfy (9) at equality, and this means that inequality (9) is facet-defining when MPM0M_{P}\cap M_{0}\neq\emptyset. ∎

Next, we provide two examples where inequality (9) is either fact-defining, or it defines a face of high dimension.

Example 1.

Let M=[5]M=[5], n1=n2=n3=1,n4=n5=2n_{1}=n_{2}=n_{3}=1,n_{4}=n_{5}=2, and let the knapsack inequality in (CKP) be

2x11+4x21+8x31+(10x41+6x42)+(8x51+4x52)21.2x_{11}+4x_{21}+8x_{31}+(10x_{41}+6x_{42})+(8x_{51}+4x_{52})\leq 21. (12)

Take P1={(1,1),(3,1),(4,2),(5,2)}P_{1}=\{(1,1),(3,1),(4,2),(5,2)\}. Since 2+8+6+4=20<212+8+6+4=20<21, and 2+8+10+4>21,2+8+6+8>212+8+10+4>21,2+8+6+8>21, we know P1P_{1} is a maximal switching pack. Furthermore, MP1M0={1,3}M_{P_{1}}\cap M_{0}=\{1,3\}\neq\emptyset, therefore Theorem 5 gives facet-defining inequality 2x11+8x31+(10x41+7x42)+(8x51+5x52)222x_{11}+8x_{31}+(10x_{41}+7x_{42})+(8x_{51}+5x_{52})\leq 22.

Next, consider the pack P2={(3,1),(4,2),(5,2)}P_{2}=\{(3,1),(4,2),(5,2)\}. Also P2P_{2} is a maximal switching pack, with MP2M0M_{P_{2}}\cap M_{0}\neq\emptyset. P2P_{2} gives us another facet-defining inequality 8x31+(10x41+9x42)+(8x51+7x52)248x_{31}+(10x_{41}+9x_{42})+(8x_{51}+7x_{52})\leq 24. \hfill\diamond

Example 2.

Let M=[4]M=[4], n1=1,n2=n3=n4=2n_{1}=1,n_{2}=n_{3}=n_{4}=2, and let the knapsack inequality in (CKP) be

2x11+(14x21+10x22)+(13x31+9x32)+(9x41+6x42)22.2x_{11}+(14x_{21}+10x_{22})+(13x_{31}+9x_{32})+(9x_{41}+6x_{42})\leq 22. (13)

Take P1={(1,1),(2,2),(3,2)}P_{1}=\{(1,1),(2,2),(3,2)\}, which is a maximal switching pack, with MP1M0M_{P_{1}}\cap M_{0}\neq\emptyset. Hence, Theorem 5 gives facet-defining inequality 2x11+(14x21+11x22)+(13x31+10x32)23.2x_{11}+(14x_{21}+11x_{22})+(13x_{31}+10x_{32})\leq 23.

Now pick P2={(2,2),(3,2)}P_{2}=\{(2,2),(3,2)\}, which is also a maximal switching pack, but with MP2M0=M_{P_{2}}\cap M_{0}=\emptyset. The corresponding inequality (9) is (14x21+13x22)+(13x31+12x32)25(14x_{21}+13x_{22})+(13x_{31}+12x_{32})\leq 25. This inequality is not necessarily facet-defining, and Theorem 5 states that it induces a face of PSPS of dimension at least d|MP2M0|=72=5d-|M_{P_{2}}-M_{0}|=7-2=5. In fact, the dimension of the corresponding face of PSPS is exactly 5. \hfill\diamond

For the first family of complementarity pack inequalities, it is natural to ask the same question as in Sect. 3: What is the separation complexity of the inequalities in the form of (9)? For that we have the following conjecture.

Conjecture 1.

For an arbitrary infeasible solution to (CKP), it is 𝒩𝒫\mathcal{NP}-complete to determine if there exists a separating inequality of the form (9).

4.2 Second complementarity pack inequalities

The next theorem provides us with the second class of complementarity pack inequalities for PSPS and provides a sufficient condition for them to be facet-defining.

Theorem 6.

Let PP be a pack for PSPS with |MPM0|2|M_{P}-M_{0}|\geq 2, and s:=ijPaijs:=\sum_{ij\in P}a_{ij}. For any ijPi^{*}j^{*}\in P with iM0i^{*}\notin M_{0} and j=nij^{*}=n_{i^{*}}, the inequality

iMPijNiaijxij+ijP,iMPM0i(bs)xij+aijxij+jNijaijmax{1,aijaij+bs}xijb+(|MPM0|2)(bs)\begin{split}&\sum_{i\in M_{P}-i^{*}}\sum_{j\in N_{i}}a_{ij}x_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\in M_{P}-M_{0}-i^{*}\end{subarray}}(b-s)x_{ij}+a_{i^{*}j^{*}}x_{i^{*}j^{*}}\\ +&\sum_{j\in N_{i^{*}}-j^{*}}a_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\right\}x_{i^{*}j}\leq b+(|M_{P}-M_{0}|-2)(b-s)\end{split} (14)

is valid for PSPS. Furthermore, when PP is a maximal switching pack, (14) is facet-defining.

Proof.

First, let x~\tilde{x} in SS. We show that inequality (14) is valid for x~\tilde{x}. Here we denote by M¯:={iMPiM0,ii}\bar{M}:=\{i\in M_{P}\mid i\notin M_{0},i\neq i^{*}\}, P¯:={ijPiM¯}\bar{P}:=\{ij\in P\mid i\in\bar{M}\}. We have |P¯|=|M¯|=|MPM0|1|\bar{P}|=|\bar{M}|=|M_{P}-M_{0}|-1.

Case 1: P¯supp(x~)\bar{P}\subseteq\operatorname{supp}(\tilde{x}). In this case, we have iMP,iijNiaijx~ij+aijijPaij=s\sum_{i\in M_{P},i\neq i^{*}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+a_{i^{*}j^{*}}\leq\sum_{ij\in P}a_{ij}=s.

Case 1a: x~ij>0\tilde{x}_{i^{*}j^{*}}>0. Because x~\tilde{x} satisfies the complementarity consrtaint, we know that x~ij=0\tilde{x}_{i^{*}j}=0 for all jNijj\in N_{i^{*}}-j^{*}. So the left-hand side of (14) evaluated in x~\tilde{x} is

iMP,iijNiaijx~ij+ijP,iM0,ii(bs)x~ij+aijx~ij\displaystyle\sum_{\begin{subarray}{c}i\in M_{P},\\ i\neq i^{*}\end{subarray}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\notin M_{0},i\neq i^{*}\end{subarray}}(b-s)\tilde{x}_{ij}+a_{i^{*}j^{*}}\tilde{x}_{i^{*}j^{*}} s+(bs)|P¯|\displaystyle\leq s+(b-s)|\bar{P}|
=s+(|MPM0|1)(bs)\displaystyle=s+(|M_{P}-M_{0}|-1)(b-s)
=b+(|MPM0|2)(bs).\displaystyle=b+(|M_{P}-M_{0}|-2)(b-s).

Case 1b: There exists jNijj^{\prime}\in N_{i^{*}}-j^{*} such that x~ij(0,1]\tilde{x}_{i^{*}j^{\prime}}\in(0,1]. Since x~S\tilde{x}\in S, we have aijx~ijbiMP,iijNiaijx~ija_{i^{*}j^{\prime}}\tilde{x}_{i^{*}j^{\prime}}\leq b-\sum_{i\in M_{P},i\neq i^{*}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}. Let K:=iMP,iijNiaijx~ijK:=\sum_{i\in M_{P},i\neq i^{*}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}. We then have KsaijK\leq s-a_{i^{*}j^{*}}. Thus, the left-hand side of (14) evaluated in x~\tilde{x} is

iMP,iijNiaijx~ij+ijP,iM0,ii(bs)x~ij+aijmax{1,aijaij+bsx~ij}\displaystyle\sum_{\begin{subarray}{c}i\in M_{P},\\ i\neq i^{*}\end{subarray}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\notin M_{0},i\neq i^{*}\end{subarray}}(b-s)\tilde{x}_{ij}+a_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j^{\prime}}}{a_{i^{*}j^{*}}+b-s}\tilde{x}_{i^{*}j^{\prime}}\right\}
K+(|MPM0|1)(bs)+aijmax{1,bKaij+bs}\displaystyle\leq K+(|M_{P}-M_{0}|-1)(b-s)+a_{i^{*}j^{*}}\max\left\{1,\frac{b-K}{a_{i^{*}j^{*}}+b-s}\right\}
=max{K+aij,K+aijbKaij+bs}+(|MPM0|1)(bs)\displaystyle=\max\left\{K+a_{i^{*}j^{*}},K+a_{i^{*}j^{*}}\frac{b-K}{a_{i^{*}j^{*}}+b-s}\right\}+(|M_{P}-M_{0}|-1)(b-s)
max{s,K(bs)+aijbaij+bs}+(|MPM0|1)(bs)\displaystyle\leq\max\left\{s,\frac{K(b-s)+a_{i^{*}j^{*}}b}{a_{i^{*}j^{*}}+b-s}\right\}+(|M_{P}-M_{0}|-1)(b-s)
max{s,(saij)(bs)+aijbaij+bs}+(|MPM0|1)(bs)\displaystyle\leq\max\left\{s,\frac{(s-a_{i^{*}j^{*}})(b-s)+a_{i^{*}j^{*}}b}{a_{i^{*}j^{*}}+b-s}\right\}+(|M_{P}-M_{0}|-1)(b-s)
=max{s,s}+(|MPM0|1)(bs)\displaystyle=\max\{s,s\}+(|M_{P}-M_{0}|-1)(b-s)
=b+(|MPM0|2)(bs).\displaystyle=b+(|M_{P}-M_{0}|-2)(b-s).

Case 1c: x~ij=0\tilde{x}_{i^{*}j}=0 for all jNij\in N_{i^{*}}. The left-hand side of (14) evaluated in x~\tilde{x} is

iMP,iijNiaijx~ij+ijP,iM0,ii(bs)x~ij\displaystyle\sum_{\begin{subarray}{c}i\in M_{P},\\ i\neq i^{*}\end{subarray}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\notin M_{0},i\neq i^{*}\end{subarray}}(b-s)\tilde{x}_{ij} s+(|MPM0|1)(bs)\displaystyle\leq s+(|M_{P}-M_{0}|-1)(b-s)
=b+(|MPM0|2)(bs).\displaystyle=b+(|M_{P}-M_{0}|-2)(b-s).

Case 2: P¯supp(x~)\bar{P}\nsubseteq\operatorname{supp}(\tilde{x}). In this case, we have |{ijijP¯,ijsupp(x~)}||P¯|1=|MPM0|2|\{ij\mid ij\in\bar{P},ij\in\operatorname{supp}(\tilde{x})\}|\leq|\bar{P}|-1=|M_{P}-M_{0}|-2. Note that j=nij^{*}=n_{i^{*}}, and aijmax{1,aijaij+bs}aija_{i^{*}j^{*}}\max\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\}\leq a_{i^{*}j} for all jNijj\in N_{i^{*}}-j^{*}, so the left-hand side of (14) evaluated in x~\tilde{x} is at most

b+(bs)|{ijijP¯,ijsupp(x~)}|b+(|MPM0|2)(bs).\displaystyle b+(b-s)|\{ij\mid ij\in\bar{P},ij\in\operatorname{supp}(\tilde{x})\}|\leq b+(|M_{P}-M_{0}|-2)(b-s).

So far we have concluded that (14) is valid for PSPS. Next we show that, if PP is a maximal switching pack, then (14) is facet-defining.

Consider the point xx with xij=1ijP,x_{ij}=1\ \forall ij\in P, and 0 elsewhere. It is easy to check that xx is in SS and satisfies (14) at equality. Also, for any iMPi^{\prime}\in M_{P}, jNij^{\prime}\in N_{i^{\prime}}, consider the point xx with xij=1ijPx_{ij}=1\ \forall ij\in P, xij=min{1,bsaij},x_{i^{\prime}j^{\prime}}=\min\{1,\frac{b-s}{a_{i^{\prime}j^{\prime}}}\}, and 0 elsewhere. Also this point is in SS, and satisfies (14) at equality. So in total, we obtain iMPni+1\sum_{i\notin M_{P}}n_{i}+1 affinely independent points in SS, which all satisfy (14) at equality.

Next, for any jNinij^{\prime}\in N_{i^{*}}-n_{i^{*}}, consider the point xx with xij=1ijPx_{ij}=1\ \forall ij\in P, xij=aini+bsaijx_{i^{*}j^{\prime}}=\frac{a_{i^{*}n_{i^{*}}}+b-s}{a_{i^{*}j^{\prime}}}, and 0 elsewhere. Since PP is a maximal switching pack and iM0i^{*}\notin M_{0}, we have saini+aij>bs-a_{i^{*}n_{i^{*}}}+a_{i^{*}j^{\prime}}>b, so xij=aini+bsaij<1x_{i^{*}j^{\prime}}=\frac{a_{i^{*}n_{i^{*}}}+b-s}{a_{i^{*}j^{\prime}}}<1, and xPSx\in PS. The left-hand side of (14) evaluated in x~\tilde{x} is

saini+(|MPM0|1)(bs)+ainiaijaini+bsaini+bsaij\displaystyle s-a_{i^{*}n_{i^{*}}}+(|M_{P}-M_{0}|-1)(b-s)+a_{i^{*}n_{i^{*}}}\cdot\frac{a_{i^{*}j^{\prime}}}{a_{i^{*}n_{i^{*}}}+b-s}\cdot\frac{a_{i^{*}n_{i^{*}}}+b-s}{a_{i^{*}j^{\prime}}}
=b+(|MPM0|2)(bs).\displaystyle=b+(|M_{P}-M_{0}|-2)(b-s).

Therefore, we have found ni1n_{i^{*}}-1 points in SS that satisfy (14) at equality.

Recall that when PP is maximal switching pack, then for any ijPij\in P, we have j=nij=n_{i}. Arbitrarily pick iM¯i^{\prime}\in\bar{M}, and consider the following set:

{x[0,1]dxij=0iMP and jNi,xini=0,xini=1 and xij=0iM¯i and j<ni,xij=0j<ni,iMPM0ai1xi1+ainixini+j<niaijxij=biM¯iaini, set {xi1,,xi,ni1} is SOS1}.\begin{split}\Big{\{}x\in[0,1]^{d}\mid\ &x_{ij}=0\ \forall i\notin M_{P}\text{ and }j\in N_{i},x_{i^{\prime}n_{i^{\prime}}}=0,\\ &x_{in_{i}}=1\text{ and }x_{ij}=0\ \forall i\in\bar{M}-i^{\prime}\text{ and }j<n_{i},x_{i^{*}j}=0\ \forall j<n_{i^{*}},\\ &\sum_{i\in M_{P}\cap M_{0}}a_{i1}x_{i1}+a_{i^{*}n_{i^{*}}}x_{i^{*}n_{i^{*}}}+\sum_{j<n_{i^{\prime}}}a_{i^{\prime}j}x_{i^{\prime}j}=b-\sum_{i\in\bar{M}-i^{\prime}}a_{in_{i}},\\ &\text{ set }\{x_{i^{\prime}1},\ldots,x_{i^{\prime},n_{i^{\prime}}-1}\}\text{ is SOS1}\Big{\}}.\end{split} (15)

It is simple to verify that any point in the set (15) satisfies the complementarity constraint, as well as the knapsack constraint (1) (in fact, it is satisfied at equality), and it satisfies (14) at equality. Since PP is a maximal switching pack, we have iMPainiaini+aij>b\sum_{i\in M_{P}}a_{in_{i}}-a_{i^{\prime}n_{i^{\prime}}}+a_{i^{\prime}j}>b for any j<nij<n_{i^{\prime}}, so iMPM0ai1+aini+aij>biM¯iaini\sum_{i\in M_{P}\cap M_{0}}a_{i1}+a_{i^{*}n_{i^{*}}}+a_{i^{\prime}j}>b-\sum_{i\in\bar{M}-i^{\prime}}a_{in_{i}} for any j<nij<n_{i^{\prime}}. Therefore, the set (15) contains |MPM0|+ni|M_{P}\cap M_{0}|+n_{i^{\prime}} affinely independent points which all satisfy (14) at equality. Lastly, for any i′′M¯ii^{\prime\prime}\in\bar{M}-i^{\prime}, we consider the set

{x[0,1]dxij=0iMP and jNi,xi′′ni′′=0,xi1=1iMPM0,xini=1 and xij=0iM¯i′′ and j<ni,xij=0j<ni,ainixini+j<ni′′ai′′jxi′′j=bs+aini+ai′′ni′′, set {xi′′1,,xi′′,ni′′1} is SOS1}.\begin{split}\Big{\{}x\in[0,1]^{d}\mid\ &x_{ij}=0\ \forall i\notin M_{P}\text{ and }j\in N_{i},x_{i^{\prime\prime}n_{i^{\prime\prime}}}=0,x_{i1}=1\ \forall i\in M_{P}\cap M_{0},\\ &x_{in_{i}}=1\text{ and }x_{ij}=0\ \forall i\in\bar{M}-i^{\prime\prime}\text{ and }j<n_{i},x_{i^{*}j}=0\ \forall j<n_{i^{*}},\\ &a_{i^{*}n_{i^{*}}}x_{i^{*}n_{i^{*}}}+\sum_{j<n_{i^{\prime\prime}}}a_{i^{\prime\prime}j}x_{i^{\prime\prime}j}=b-s+a_{i^{*}n_{i^{*}}}+a_{i^{\prime\prime}n_{i^{\prime\prime}}},\\ &\text{ set }\{x_{i^{\prime\prime}1},\ldots,x_{i^{\prime\prime},n_{i^{\prime\prime}}-1}\}\text{ is SOS1}\Big{\}}.\end{split} (16)

The points in the set (16) are in SS, and satisfy (14) at equality. Furthermore, we can find ni′′n_{i^{\prime\prime}} affinely independent points in the set (16).

In total, we have found iMPni+1+ni1+|MPM0|+ni+i′′M¯ini′′=d\sum_{i\notin M_{P}}n_{i}+1+n_{i^{*}}-1+|M_{P}\cap M_{0}|+n_{i^{\prime}}+\sum_{i^{\prime\prime}\in\bar{M}-i^{\prime}}n_{i^{\prime\prime}}=d points in SS that satisfy (14) at equality. Furthermore, according to their construction, all these points are affinely independent. This concludes the proof that (14) is facet-defining when PP is a maximal switching pack. ∎

Next, we present examples illustrating that one can obtain several different facet-defining inequalities from the same maximal switching pack with different indices ii^{*}.

Example 3.

Let M=[5]M=[5], n1=n2=1,n3=n4=n5=2n_{1}=n_{2}=1,n_{3}=n_{4}=n_{5}=2, and let the knapsack inequality in (CKP) be

x11+6x21+(14x31+10x32)+(13x41+9x42)+(12x51+8x52)36.x_{11}+6x_{21}+(14x_{31}+10x_{32})+(13x_{41}+9x_{42})+(12x_{51}+8x_{52})\leq 36. (17)

For the maximal switching pack P1={(1,1),(2,1),(3,2),(4,2),(5,2)}P_{1}=\{(1,1),(2,1),(3,2),(4,2),(5,2)\}, we have s=ijP1aij=1+6+10+9+8=34s=\sum_{ij\in P_{1}}a_{ij}=1+6+10+9+8=34. When i=3i^{*}=3, (14) gives the facet-defining inequality x11+6x21+(13x41+9x42)+(12x51+8x52)+(3634)(x42+x52)+10x32+10max{1,1410+3634}x3136+(3634)(32)x_{11}+6x_{21}+(13x_{41}+9x_{42})+(12x_{51}+8x_{52})+(36-34)\cdot(x_{42}+x_{52})+10x_{32}+10\cdot\max\{1,\frac{14}{10+36-34}\}x_{31}\leq 36+(36-34)\cdot(3-2), which can be simplified to

x11+6x21+(353x31+10x32)+(13x41+11x42)+(12x51+10x52)38.x_{11}+6x_{21}+\left(\frac{35}{3}x_{31}+10x_{32}\right)+(13x_{41}+11x_{42})+(12x_{51}+10x_{52})\leq 38.

For the same maximal switching pack P1P_{1}, when i=4i^{*}=4 and 55, inequality (14) gives two other facet-defining inequalities:

x11+6x21+(14x31+12x32)+(11711x41+9x42)+(12x51+10x52)38,\displaystyle x_{11}+6x_{21}+(14x_{31}+12x_{32})+\left(\frac{117}{11}x_{41}+9x_{42}\right)+(12x_{51}+10x_{52})\leq 38,
x11+6x21+(14x31+12x32)+(13x41+11x42)+(485x51+8x52)38.\displaystyle x_{11}+6x_{21}+(14x_{31}+12x_{32})+(13x_{41}+11x_{42})+\left(\frac{48}{5}x_{51}+8x_{52}\right)\leq 38.

Consider now the maximal switching pack P2={(2,1),(3,2),(4,2),(5,2)}P_{2}=\{(2,1),(3,2),(4,2),(5,2)\}. Setting i=3i^{*}=3, 44, and 55 gives us the following three facet-defining inequalities, respectively:

6x21+(14013x31+10x32)+(13x41+12x42)+(12x51+11x52)39,\displaystyle 6x_{21}+\left(\frac{140}{13}x_{31}+10x_{32}\right)+(13x_{41}+12x_{42})+(12x_{51}+11x_{52})\leq 39,
6x21+(14x31+13x32)+(394x41+9x42)+(12x51+11x52)39,\displaystyle 6x_{21}+(14x_{31}+13x_{32})+\left(\frac{39}{4}x_{41}+9x_{42}\right)+(12x_{51}+11x_{52})\leq 39,
6x21+(14x31+13x32)+(13x41+12x42)+(9611x51+8x52)39.\displaystyle 6x_{21}+(14x_{31}+13x_{32})+(13x_{41}+12x_{42})+\left(\frac{96}{11}x_{51}+8x_{52}\right)\leq 39.

\hfill\diamond

Similarly to Conjecture 1, which we gave for the first complementarity pack inequalities, we pose the following conjecture regarding the separation complexity of inequalities of the form (14).

Conjecture 2.

For an arbitrary infeasible solution to (CKP), it is 𝒩𝒫\mathcal{NP}-complete to determine if there exists a separating inequality of the form (14).

4.3 Third complementarity pack inequalities

Our final family of facet-defining complementarity pack inequalities is defined in Theorem 7.

Theorem 7.

Let PP be a pack for PSPS with |MPM0|2|M_{P}-M_{0}|\geq 2, and s:=ijPaijs:=\sum_{ij\in P}a_{ij}. For any ijPi^{*}j^{*}\in P with iM0,j=nii^{*}\notin M_{0},j^{*}=n_{i^{*}} and any iMPM0i^{\prime}\in M_{P}\cap M_{0}, the inequality

aijai1aij+bsxi1+iMP{i,i}jNiaijxij+ijP,iMPM0i(bs+(bs)ai1aij+bs)xij+aijxij+jNijaijmax{1,aijaij+bs}xijb+(|MPM0|2)(bs)(1+ai1aij+bs)\begin{split}\frac{a_{i^{*}j^{*}}\cdot a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}x_{i^{\prime}1}+&\sum_{i\in M_{P}-\{i^{\prime},i^{*}\}}\sum_{j\in N_{i}}a_{ij}x_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\in M_{P}-M_{0}-i^{*}\end{subarray}}\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)x_{ij}\\ +&a_{i^{*}j^{*}}x_{i^{*}j^{*}}+\sum_{j\in N_{i^{*}}-j^{*}}a_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\right\}x_{i^{*}j}\\ \leq&b+(|M_{P}-M_{0}|-2)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\end{split} (18)

is valid for PSPS. Furthermore, when Pi1P-i^{\prime}1 is a maximal switching pack, (18) is facet-defining.

We remark that inequality (18) is simply obtained by tilting the previous inequality (14): For a fixed index iM0i^{\prime}\in M_{0}, we: (i) subtract from the original coefficient ai1a_{i^{\prime}1} in (14) the quantity (bs)ai1aij+bs(b-s)\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}+b-s}}, (ii) add the same amount (bs)ai1aij+bs(b-s)\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}+b-s}} to the coefficients of xijx_{ij}, for ijPij\in P and iii\notin i^{*}, and (iii) multiply the right-hand side of the inequality by (1+ai1aij+bs)(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}).

Proof of Theorem 7.

Let x~\tilde{x} be a vector in SS. We show that inequality (18) is satisfied by x~\tilde{x}. For ease of exposition, we define M¯:=MPM0i\bar{M}:=M_{P}-M_{0}-i^{*} and P¯:={ijPiM¯}\bar{P}:=\{ij\in P\mid i\in\bar{M}\}.

Case 1: P¯supp(x~)\bar{P}\subseteq\operatorname{supp}(\tilde{x}). In this case, since x~S\tilde{x}\in S, we have iMPijNiaijx~ij+ai1ijPaij=s\sum_{i\in M_{P}-i^{\prime}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+a_{i^{\prime}1}\leq\sum_{ij\in P}a_{ij}=s.

Case 1a: x~ij=0\tilde{x}_{i^{*}j}=0 for any jNijj\in N_{i^{*}}-j^{*}. In this case, the left-hand side of inequality (18) evaluated in x~\tilde{x} is

iMPijNiaijx~ij+aijai1aij+bsx~i1+ijP¯(bs+(bs)ai1aij+bs)x~ijsai1+aijai1aij+bs+(bs+(bs)ai1aij+bs)(|MPM0|1)=b+(|MPM0|2)(bs)(1+ai1aij+bs).\begin{split}&\sum_{i\in M_{P}-i^{\prime}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}+\frac{a_{i^{*}j^{*}}a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\tilde{x}_{i^{\prime}1}+\sum_{ij\in\bar{P}}\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\tilde{x}_{ij}\\ &\leq s-a_{i^{\prime}1}+\frac{a_{i^{*}j^{*}}a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}+\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)(|M_{P}-M_{0}|-1)\\ &=b+(|M_{P}-M_{0}|-2)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right).\end{split} (19)

So (18) is satisfied by point x~\tilde{x}.

Case 1b: There exists jNijj^{\prime}\in N_{i^{*}}-j^{*} such that x~ij(0,1]\tilde{x}_{i^{*}j^{\prime}}\in(0,1]. Let K:=iMP{i,i}jNiaijx~ijK:=\sum_{i\in M_{P}-\{i^{*},i^{\prime}\}}\sum_{j\in N_{i}}a_{ij}\tilde{x}_{ij}. Since P¯supp(x~)\bar{P}\subseteq\operatorname{supp}(\tilde{x}), we obtain Ksai1aijK\leq s-a_{i^{\prime}1}-a_{i^{*}j^{*}}, as well as ai1x~i1+aijx~ij+Kba_{i^{\prime}1}\tilde{x}_{i^{\prime}1}+a_{i^{*}j^{\prime}}\tilde{x}_{i^{*}j^{\prime}}+K\leq b. Thus, the left-hand side of inequality (18) evaluated in x~\tilde{x} is

K+ai1aijx~i1aij+bs+max{aijx~ij,aijaijx~ijaij+bs}+ijP¯(bs+(bs)ai1aij+bs)x~ijmax{K+ai1aijaij+bs+aij,K+aij(ai1x~i1+aijx~ij)aij+bs}+(bs+(bs)ai1aij+bs)(|MPM0|1)max{K+ai1aijaij+bs+aij,K+aij(bK)aij+bs}+(|MPM0|1)(bs)(1+ai1aij+bs)max{sai1+ai1aijaij+bs,(bs)K+aijbaij+bs}+(|MPM0|1)(bs)(1+ai1aij+bs)=sai1+ai1aijaij+bs+(|MPM0|1)(bs)(1+ai1aij+bs)=b+(|MPM0|2)(bs)(1+ai1aij+bs).\begin{split}&K+\frac{a_{i^{\prime}1}a_{i^{*}j^{*}}\tilde{x}_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}+\max\left\{a_{i^{*}j^{*}}\tilde{x}_{i^{*}j^{\prime}},\frac{a_{i^{*}j^{*}}a_{i^{*}j^{\prime}}\tilde{x}_{i^{*}j^{\prime}}}{a_{i^{*}j^{*}}+b-s}\right\}\\ &\quad+\sum_{ij\in\bar{P}}\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\tilde{x}_{ij}\\ &\leq\max\left\{K+\frac{a_{i^{\prime}1}a_{i^{*}j^{*}}}{a_{i^{*}j^{*}}+b-s}+a_{i^{*}j^{*}},K+\frac{a_{i^{*}j^{*}}(a_{i^{\prime}1}\tilde{x}_{i^{\prime}1}+a_{i^{*}j^{\prime}}\tilde{x}_{i^{*}j^{\prime}})}{a_{i^{*}j^{*}}+b-s}\right\}\\ &\quad+\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)(|M_{P}-M_{0}|-1)\\ &\leq\max\left\{K+\frac{a_{i^{\prime}1}a_{i^{*}j^{*}}}{a_{i^{*}j^{*}}+b-s}+a_{i^{*}j^{*}},K+\frac{a_{i^{*}j^{*}}(b-K)}{a_{i^{*}j^{*}}+b-s}\right\}\\ &\quad+(|M_{P}-M_{0}|-1)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\\ &\leq\max\left\{s-a_{i^{\prime}1}+\frac{a_{i^{\prime}1}a_{i^{*}j^{*}}}{a_{i^{*}j^{*}}+b-s},\frac{(b-s)K+a_{i^{*}j^{*}}b}{a_{i^{*}j^{*}}+b-s}\right\}\\ &\quad+(|M_{P}-M_{0}|-1)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\\ &=s-a_{i^{\prime}1}+\frac{a_{i^{\prime}1}a_{i^{*}j^{*}}}{a_{i^{*}j^{*}}+b-s}+(|M_{P}-M_{0}|-1)(b-s)(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s})\\ &=b+(|M_{P}-M_{0}|-2)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right).\end{split} (20)

Case 2: P¯supp(x~)\bar{P}\nsubseteq\operatorname{supp}(\tilde{x}). In this case, we have |{ijijP¯,ijsupp(x~)}||P¯|1=|MPM0|2|\{ij\mid ij\in\bar{P},ij\in\operatorname{supp}(\tilde{x})\}|\leq|\bar{P}|-1=|M_{P}-M_{0}|-2. Note that aijai1aij+bsai1\frac{a_{i^{*}j^{*}}\cdot a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\leq a_{i^{\prime}1} and aijmax{1,aijaij+bs}aija_{i^{*}j^{*}}\max\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\}\leq a_{i^{*}j} for all jNijj\in N_{i^{*}}-j^{*}, so the left-hand side of (18) evaluated in x~\tilde{x} is at most

b+(bs)(1+ai1aij+bs)|{ijijP¯,ijsupp(x~)}|\displaystyle b+(b-s)(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s})|\{ij\mid ij\in\bar{P},ij\in\operatorname{supp}(\tilde{x})\}|
b+(|MPM0|2)(bs)(1+ai1aij+bs).\displaystyle\leq b+(|M_{P}-M_{0}|-2)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right).

So far we have shown that inequality (18) is valid for PSPS. Next, we assume that Pi1P-i^{\prime}1 is a maximal switching pack, and we show that (18) is facet-defining. We note that, since Pi1P-i^{\prime}1 is a maximal switching pack and PP is a pack, we have that PP is also a maximal switching pack. Hence, for any ijPij\in P, j=ni.j=n_{i}.

Consider the point xx with xij=1ijPx_{ij}=1\ \forall ij\in P, and 0 elsewhere. It is easy to check that xSx\in S and it satisfies (18) at equality. For any iMPi^{\prime}\notin M_{P} and jNij^{\prime}\in N_{i^{\prime}}, consider the point xx with xij=1ijPx_{ij}=1\ \forall ij\in P, xij=min{1,bsaij}x_{i^{\prime}j^{\prime}}=\min\{1,\frac{b-s}{a_{i^{\prime}j^{\prime}}}\}, and 0 elsewhere. Also this point is in SS and it satisfies (18) at equality. Thus we have found iMPni+1\sum_{i\notin M_{P}}n_{i}+1 points in SS that satisfy inequality (18) at equality.

Next, we consider the following set

{x[0,1]dxini=1,xij=0iMPii,j<ni,xini=0,xij=0iMP,jNi,ai1xi1+j<niaijxij=bs+ai1+aini, set {xi1,,xi,ni1} is SOS1}.\begin{split}\Big{\{}x\in[0,1]^{d}\mid\ &x_{in_{i}}=1,x_{ij}=0\ \forall i\in M_{P}-i^{\prime}-i^{*},j<n_{i},\\ &x_{i^{*}n_{i^{*}}}=0,x_{ij}=0\ \forall i\notin M_{P},j\in N_{i},\\ &a_{i^{\prime}1}x_{i^{\prime}1}+\sum_{j<n_{i^{*}}}a_{i^{*}j}x_{i^{*}j}=b-s+a_{i^{\prime}1}+a_{i^{*}n_{i^{*}}},\\ &\text{ set }\{x_{i^{*}1},\ldots,x_{i^{*},n_{i^{*}}-1}\}\text{ is SOS1}\Big{\}}.\end{split} (21)

Since PP is a maximal switching pack, we have saini+aij>bs-a_{i^{*}n_{i^{*}}}+a_{i^{*}j}>b for any j<nij<n_{i^{*}}. Hence, the set (21) has nin_{i^{*}} affinely independent points. For any point xx in set (21), the left-hand side of (18) evaluated in xx is

aini(bs+ai1+aini)aini+bs+sai1aini\displaystyle\frac{a_{i^{*}n_{i^{*}}}(b-s+a_{i^{\prime}1}+a_{i^{*}n_{i^{*}}})}{a_{i^{*}n_{i^{*}}}+b-s}+s-a_{i^{\prime}1}-a_{i^{*}n_{i^{*}}}
+(|MPM0|1)(bs)(1+ai1aij+bs)\displaystyle\quad+(|M_{P}-M_{0}|-1)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)
=sai1+ai1ainiaini+bs+(|MPM0|1)(bs)(1+ai1aij+bs)\displaystyle=s-a_{i^{\prime}1}+\frac{a_{i^{\prime}1}a_{i^{*}n_{i^{*}}}}{a_{i^{*}n_{i^{*}}}+b-s}+(|M_{P}-M_{0}|-1)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)
=b+(|MPM0|2)(bs)(1+ai1aij+bs).\displaystyle=b+(|M_{P}-M_{0}|-2)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right).

It is simple to check that any point in (21) is in SS. Hence, in total, we have found another nin_{i^{*}} affinely independent points in SS that satisfy (18) at equality.

Now we arbitrarily pick an index i′′M¯i^{\prime\prime}\in\bar{M}. Consider the following set:

{x[0,1]dxij=0iMP and jNi,xi1=0,xi′′ni′′=0,xini=1 and xij=0iM¯i′′ and j<ni,xij=0j<ni,iMPM0iai1xi1+ainixini+j<ni′′ai′′jxi′′j=biM¯i′′aini, set {xi′′1,,xi′′,ni′′1} is SOS1}.\begin{split}\Big{\{}x\in[0,1]^{d}\mid\ &x_{ij}=0\ \forall i\notin M_{P}\text{ and }j\in N_{i},x_{i^{\prime}1}=0,x_{i^{\prime\prime}n_{i^{\prime\prime}}}=0,\\ &x_{in_{i}}=1\text{ and }x_{ij}=0\ \forall i\in\bar{M}-i^{\prime\prime}\text{ and }j<n_{i},x_{i^{*}j}=0\ \forall j<n_{i^{*}},\\ &\sum_{i\in M_{P}\cap M_{0}-i^{\prime}}a_{i1}x_{i1}+a_{i^{*}n_{i^{*}}}x_{i^{*}n_{i^{*}}}+\sum_{j<n_{i^{\prime\prime}}}a_{i^{\prime\prime}j}x_{i^{\prime\prime}j}=b-\sum_{i\in\bar{M}-i^{\prime\prime}}a_{in_{i}},\\ &\text{ set }\{x_{i^{\prime\prime}1},\ldots,x_{i^{\prime\prime},n_{i^{\prime\prime}}-1}\}\text{ is SOS1}\Big{\}}.\end{split} (22)

It is easy to verify that any point in the set (22) satisfies the complementarity constraints in (2), as well as the knapsack constraint (1) (in fact, it is satisfied at equality), and it satisfies (18) at equality. Since Pi1P-i^{\prime}1 is a maximal switching pack, we have iMPiainiai′′ni′′+ai′′j>b\sum_{i\in M_{P}-i^{\prime}}a_{in_{i}}-a_{i^{\prime\prime}n_{i^{\prime\prime}}}+a_{i^{\prime\prime}j}>b for any j<ni′′j<n_{i^{\prime\prime}}, therefore iMPM0iai1+aini+ai′′j>biM¯i′′aini\sum_{i\in M_{P}\cap M_{0}-i^{\prime}}a_{i1}+a_{i^{*}n_{i^{*}}}+a_{i^{\prime\prime}j}>b-\sum_{i\in\bar{M}-i^{\prime\prime}}a_{in_{i}} for any j<nij<n_{i^{\prime}}. Hence, the set (15) contains |MPM0|+ni′′1|M_{P}\cap M_{0}|+n_{i^{\prime\prime}}-1 affinely independent points which all satisfy (14) at equality.

Lastly, for any i^M¯i′′\hat{i}\in\bar{M}-i^{\prime\prime}, we consider the set

{x[0,1]dxij=0iMP and jNi,xi1=0,xi^ni^=0,xini=1 and xij=0iM¯i^ and j<ni,xij=0j<ni,ainixini+j<ni^ai^jxi^j=bs+aini+ai^ni^+ai1,xi1=1iMPM0i, set {xi^1,,xi^,ni^1} is SOS1}.\begin{split}\Big{\{}x\in[0,1]^{d}\mid\ &x_{ij}=0\ \forall i\notin M_{P}\text{ and }j\in N_{i},x_{i^{\prime}1}=0,x_{\hat{i}n_{\hat{i}}}=0,\\ &x_{in_{i}}=1\text{ and }x_{ij}=0\ \forall i\in\bar{M}-\hat{i}\text{ and }j<n_{i},x_{i^{*}j}=0\ \forall j<n_{i^{*}},\\ &a_{i^{*}n_{i^{*}}}x_{i^{*}n_{i^{*}}}+\sum_{j<n_{\hat{i}}}a_{\hat{i}j}x_{\hat{i}j}=b-s+a_{i^{*}n_{i^{*}}}+a_{\hat{i}n_{\hat{i}}}+a_{i^{\prime}1},\\ &x_{i1}=1\ \forall i\in M_{P}\cap M_{0}-i^{\prime},\text{ set }\{x_{\hat{i}1},\ldots,x_{\hat{i},n_{\hat{i}}-1}\}\text{ is SOS1}\Big{\}}.\end{split} (23)

Again, the set (23) contains ni^n_{\hat{i}} affinely independent points in SS, and they all satisfy (18) at equality.

In total, we have found iMPni+1+ni+|MPM0|+ni′′1+i^M¯i′′ni^=d\sum_{i\notin M_{P}}n_{i}+1+n_{i^{*}}+|M_{P}\cap M_{0}|+n_{i^{\prime\prime}}-1+\sum_{\hat{i}\in\bar{M}-i^{\prime\prime}}n_{\hat{i}}=d points in SS that satisfy (18) at equality. Furthermore, according to their construction, all these points are affinely independent. This concludes the proof that (18) is facet-defining when Pi1P-i^{\prime}1 is a maximal switching pack. ∎

Example 4.

Consider the same problem studied in Example 3. Consider P={(1,1),(2,1),(3,2),(4,2),(5,2)}P=\{(1,1),(2,1),(3,2),(4,2),(5,2)\}, and i=1MPM0i^{\prime}=1\in M_{P}\cap M_{0}. Here s=ijPaij=34s=\sum_{ij\in P}a_{ij}=34. Then both PP and Pi1P-i^{\prime}1 are maximal switching packs, satisfying the condition in Theorem 7. For i=3i^{*}=3, (18) gives the facet-defining inequality

56x11+6x21+(353x31+10x32)+(13x41+676x42)+(12x51+616x52)38+16.\frac{5}{6}x_{11}+6x_{21}+\left(\frac{35}{3}x_{31}+10x_{32}\right)+\left(13x_{41}+\frac{67}{6}x_{42}\right)+\left(12x_{51}+\frac{61}{6}x_{52}\right)\leq 38+\frac{1}{6}.

Similarly, picking i=4i^{*}=4 and 5, (18) gives another two facet-defining inequalities:

911x11+6x21+(14x31+13411x32)+(11711x41+9x42)+(12x51+11211x52)38+211,\displaystyle\frac{9}{11}x_{11}+6x_{21}+\left(14x_{31}+\frac{134}{11}x_{32}\right)+\left(\frac{117}{11}x_{41}+9x_{42}\right)+\left(12x_{51}+\frac{112}{11}x_{52}\right)\leq 38+\frac{2}{11},
45x11+6x21+(14x31+615x32)+(13x41+565x42)+(485x51+8x52)38+15.\displaystyle\frac{4}{5}x_{11}+6x_{21}+\left(14x_{31}+\frac{61}{5}x_{32}\right)+\left(13x_{41}+\frac{56}{5}x_{42}\right)+\left(\frac{48}{5}x_{51}+8x_{52}\right)\leq 38+\frac{1}{5}.

\hfill\diamond

We pose the following conjecture:

Conjecture 3.

For an arbitrary infeasible solution to (CKP), it is 𝒩𝒫\mathcal{NP}-complete to determine if there exists a separating inequality in the form of (18).

Here we briefly mention the main difference between our complementarity pack inequalities and the lifted cover inequalities (4) and (5). As discussed in [8], (4) and (5) are both obtained through sequential lifting of the original cover inequalities ijCaijxijb\sum_{ij\in C}a_{ij}x_{ij}\leq b. For a complete survey about lifting procedures, we refer the reader to Section 3 in [19]. One fundamental property of all lifting procedures is that the difference between the original inequality and the lifted version of the inequality only occurs on the coefficients of variables that do not appear in the original inequality. In the cases of lifted cover inequalities (4) and (5), one can easily verify that the coefficients of variables xijx_{ij}, for ijCij\in C, remain equal to aija_{ij}. However, in the complementarity pack inequalities (9), (14), (18), the coefficients of variables xijx_{ij}, for ijPij\in P, all increase. This implies that our complementarity pack inequalities cannot be easily obtained through some lifting process of the inequality ijPaijxijb\sum_{ij\in P}a_{ij}x_{ij}\leq b.

5 Exact separation algorithm

In Sect. 3, we settled the separation complexity of two families of cutting-planes introduced in [8]. Even though we cannot establish the separation complexity for the three complementarity pack inequalities that we proposed in Sect. 4, in this section we propose an efficient separation algorithm that runs in polynomial-time if |M||M| is logarithmic in the input size of (CKP). Throughout this section, assume that xx^{*} is an optimal solution obtained in the process of branch-and-cut, xx^{*} satisfies the knapsack constraint (1) while not being feasible in (CKP): xx^{*} violates the complementarity constraint (2). Furthermore, w.l.o.g., we assume that xx^{*} satisfies all the clique inequalities: jNixij1\sum_{j\in N_{i}}x^{*}_{ij}\leq 1 for any iMi\in M, since otherwise we can simply add some clique inequality to separate xx^{*}. In the following, we discuss how to separate such point xx^{*} using the cutting-planes that we devised in Sect. 4.

We now consider the first family of complementarity pack inequalities (9). The goal here is to find a pack PP such that inequality (9) is violated by xx^{*}:

iMPjNiaijxij+ijP,iMPM0(bs)xij>b+(|MPM0|1)(bs).\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+\sum_{\begin{subarray}{c}ij\in P,\\ i\in M_{P}-M_{0}\end{subarray}}(b-s)x^{*}_{ij}>b+(|M_{P}-M_{0}|-1)(b-s). (24)

Let M¯:=MPM0\bar{M}:=M_{P}-M_{0}, P¯:={ijPiM¯}\bar{P}:=\{ij\in P\mid i\in\bar{M}\}, and P0:={i0PiMPM0}P_{0}:=\{i0\in P\mid i\in M_{P}\cap M_{0}\}. Here P=P¯P0P=\bar{P}\cup P_{0}. Let xi,oi,1xi,oi,2xi,oi,nix^{*}_{i,o_{i,1}}\geq x^{*}_{i,o_{i,2}}\geq\ldots\geq x^{*}_{i,o_{i,n_{i}}} for any iMM0i\in M-M_{0}, where oi,1,,oi,nio_{i,1},\ldots,o_{i,n_{i}} are different indices in [ni][n_{i}]. Then we have the next simple result.

Lemma 3.

If PP is a pack satisfying (24), then ijP¯(1xij)<1,\sum_{ij\in\bar{P}}(1-x^{*}_{ij})<1, and |{ijP¯joi,1}|1|\{ij\in\bar{P}\mid j\neq o_{i,1}\}|\leq 1.

Proof.

Inequality ijP¯(1xij)<1\sum_{ij\in\bar{P}}(1-x^{*}_{ij})<1 holds naturally from

ijP¯(1xij)<iMPjNiaijxijsbs1.\sum_{ij\in\bar{P}}(1-x^{*}_{ij})<\frac{\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}-s}{b-s}\leq 1.

Here, the first inequality is from (24), and the second inequality holds because xx^{*} satisfies the knapsack constraint (1). Next, assume for a contradiction that there exist i1j1,i2j2P¯i_{1}j_{1},i_{2}j_{2}\in\bar{P} with j1oi1,1,j2oi2,1j_{1}\neq o_{i_{1},1},j_{2}\neq o_{i_{2},1}. Since xx^{*} satisfies the clique inequalities, we have 2xi1,j1xi1,oi1,1+xi1,j112x^{*}_{i_{1},j_{1}}\leq x^{*}_{i_{1},o_{i_{1},1}}+x^{*}_{i_{1},j_{1}}\leq 1. Similarly, we also have xi2,j21/2x^{*}_{i_{2},j_{2}}\leq 1/2. Then, ijP¯(1xij)(1xi1,j1)+(1xi2,j2)1\sum_{ij\in\bar{P}}(1-x^{*}_{ij})\geq(1-x^{*}_{i_{1},j_{1}})+(1-x^{*}_{i_{2},j_{2}})\geq 1, which contradicts the first inequality we have shown. ∎

Now we focus on P0P_{0}. Let

f(P):=iMPjNiaijxijijP¯(bs)(1xij)s.f(P):=\sum_{i\in M_{P}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}-\sum_{ij\in\bar{P}}(b-s)(1-x^{*}_{ij})-s.

It is obvious to see that (24) holds if and only if f(P)>0f(P)>0. Arbitrarily pick i0P0i^{\prime}0\in P_{0}. Then, basic algebra yields

f(P)f(Pi0)=ai0(xi0+ijP¯(1xij)1).f(P)-f(P-i^{\prime}0)=a_{i^{\prime}0}\left(x^{*}_{i^{\prime}0}+\sum_{ij\in\bar{P}}(1-x^{*}_{ij})-1\right). (25)

We are now ready to propose, in Algorithm 1, the first exact separation procedure for (9).

Algorithm 1 Exact separation of (9)

Input: An instance of (CKP) and an infeasible solution xx^{*}.
      Output: A separating inequality in the form of (9) if one exists.

1:Let xi,oi,1xi,oi,2xi,oi,nix^{*}_{i,o_{i,1}}\geq x^{*}_{i,o_{i,2}}\geq\ldots\geq x^{*}_{i,o_{i,n_{i}}} for any iMM0i\in M-M_{0}, where oi,1,,oi,nio_{i,1},\ldots,o_{i,n_{i}} are different indices in [ni][n_{i}].
2:for M¯{iMM0xi,oi,1>0}\bar{M}\subseteq\{i\in M-M_{0}\mid x^{*}_{i,o_{i,1}}>0\} do
3:     if iM¯(1xi,oi,1)1\sum_{i\in\bar{M}}(1-x^{*}_{i,o_{i,1}})\geq 1 then
4:         Continue
5:     else
6:         for iM¯i^{\prime}\in\bar{M} do
7:              for j=oi,1,oi,2,,oi,nij^{\prime}=o_{i^{\prime},1},o_{i^{\prime},2},\ldots,o_{i^{\prime},n_{i^{\prime}}} do
8:                  Set P¯:=ij{(i,oi,1)iM¯i}\bar{P}:=i^{\prime}j^{\prime}\cup\{(i,o_{i,1})\mid\forall i\in\bar{M}-i^{\prime}\}.
9:                  if ijP¯(1xij)1\sum_{ij\in\bar{P}}(1-x^{*}_{ij})\geq 1 then
10:                       Break
11:                  else if P¯\bar{P} is not a pack then
12:                       Continue
13:                  else
14:                       for P0{i0xi0>1ijP¯(1xij),iM0}P_{0}\subseteq\{i0\mid x^{*}_{i0}>1-\sum_{ij\in\bar{P}}(1-x^{*}_{ij}),i\in M_{0}\} do
15:                           Set P:=P¯P0P:=\bar{P}\cup P_{0}.
16:                           if PP is a pack and (24) holds then
17:                                return : pack PP gives a separating inequality (9).                                                                                                 

The key intuition behind Algorithm 1 is the following: if a certain index iMM0i\in M-M_{0} is contained in MPM_{P}, then almost certainly (i,oi,1)P(i,o_{i,1})\in P. Here the exception cannot be made more than once according to Lemma 3. Therefore, the main complexity of the algorithm reduces to fixing the index of M¯\bar{M}, which takes at most O(2|M||M0|)O(2^{|M|-|M_{0}|}) iterations. This is much smaller than O(iMM0(ni+1))O(\prod_{i\in M-M_{0}}(n_{i}+1)) iterations in a brute force method.

The following theorem confirms the validity of Algorithm 1.

Theorem 8.

Algorithm 1 is an exact separation algorithm for (9).

Proof.

Given the input to this algorithm, a separating inequality exists in the form of (9) if and only if there exists a pack PP such that f(P)>0f(P)>0. We show that Algorithm 1 finds a pack PP with f(P)>0f(P)>0 if one exists. The procedure followed by the algorithm is: first, we fix M¯\bar{M}, which is the set of indices in MPM0M_{P}-M_{0}. Here we can further assume xi,oi,1x^{*}_{i,o_{i,1}} to be positive for any iM¯i\in\bar{M}, since otherwise the condition of line 3 holds. From Lemma 3 we know that, except for at most one iM¯i^{\prime}\in\bar{M}, all other iM¯i\in\bar{M} should have (i,oi,1)P(i,o_{i,1})\in P. So for line 6 and line 7, we iterate over all such indices iM¯i^{\prime}\in\bar{M} and j=oi,1,oi,2,,oi,nij^{\prime}=o_{i^{\prime},1},o_{i^{\prime},2},\ldots,o_{i^{\prime},n_{i^{\prime}}}, and this directly fixes the set P¯\bar{P}. Now we assume that condition in line 9 holds. Since the inner loop iterates from j=oi,1j^{\prime}=o_{i^{\prime},1} to j=oi,nij^{\prime}=o_{i^{\prime},n_{i^{\prime}}} which is in decreasing order for xijx^{*}_{i^{\prime}j^{\prime}}, so if ijP¯(1xij)<1\sum_{ij\in\bar{P}}(1-x^{*}_{ij})<1 fails at one step it must also fail in the following steps within the inner loop. Hence it is safe for us to “break” out of the inner loop in line 10. Once the set P¯\bar{P} is fixed, in line 14 we iterate over all possible sets for P0P_{0}. Here we only have to consider subsets in {i0xi0>1ijP¯(1xij),iM0}\{i0\mid x^{*}_{i0}>1-\sum_{ij\in\bar{P}}(1-x^{*}_{ij}),i\in M_{0}\}, because from (25), if xi′′01ijP¯(1xij)x^{*}_{i^{\prime\prime}0}\leq 1-\sum_{ij\in\bar{P}}(1-x^{*}_{ij}) for some i′′Pi^{\prime\prime}\in P, then we can simply remove i′′i^{\prime\prime} from PP and this will not decrease the value of f(P)f(P), while maintaining PP to be a pack. By iterating through all possible sets P¯\bar{P} and P0P_{0}, Algorithm 1 will find a pack PP with f(P)>0f(P)>0 if one exists. ∎

Denote by n:=iMnin:=\sum_{i\in M}n_{i} the number of variables in (CKP), and set m:=|M|m:=|M|. Compared with a brute force algorithm that runs in O(iM(ni+1))=O(nm)O(\prod_{i\in M}(n_{i}+1))=O(n^{m}) iterations to find a valid pack PP, Algorithm 1 only runs in O(2miMM0ni)=O(n2m)O(2^{m}\cdot\sum_{i\in M-M_{0}}n_{i})=O(n2^{m}) iterations. So if mm is logarithmic in the input size, then Algorithm 1 is a polynomial-time algorithm.

Based on the same idea used to devise Algorithm 1, we can devise corresponding separation algorithms for the other two types of complementarity pack inequalities (14) and (18). Similarly to Lemma 3, here we have the following result.

Lemma 4.

If PP is a pack and the corresponding inequality (14) or (18) separates xx^{*}, then ijP¯,ii(1xij)<1\sum_{ij\in\bar{P},i\neq i^{*}}(1-x^{*}_{ij})<1 and |{ijP¯ii,joi,1}|1|\{ij\in\bar{P}\mid i\neq i^{*},j\neq o_{i,1}\}|\leq 1.

Proof.

Assume that inequality (14) separates xx^{*}:

iMPijNiaijxij+ijP¯,ii(bs)xij+aijxij+jNijaijmax{1,aijaij+bs}xij>b+(|MPM0|2)(bs).\begin{split}&\sum_{i\in M_{P}-i^{*}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+\sum_{ij\in\bar{P},i\neq i^{*}}(b-s)x^{*}_{ij}+a_{i^{*}j^{*}}x^{*}_{i^{*}j^{*}}\\ +&\sum_{j\in N_{i^{*}}-j^{*}}a_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\right\}x^{*}_{i^{*}j}>b+(|M_{P}-M_{0}|-2)(b-s).\end{split}

Note that aijmax{1,aijaij+bs}aija_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\right\}\leq a_{i^{*}j} for any jNijj\in N_{i^{*}}-j^{*}, hence we have:

iMPijNiaijxij+ijP¯,ii(bs)xij+jNiaijxij\displaystyle\sum_{i\in M_{P}-i^{*}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+\sum_{ij\in\bar{P},i\neq i^{*}}(b-s)x^{*}_{ij}+\sum_{j\in N_{i^{*}}}a_{i^{*}j}x^{*}_{i^{*}j}
>\displaystyle> b+(|MPM0|2)(bs)\displaystyle b+(|M_{P}-M_{0}|-2)(b-s)
=\displaystyle= s+(|P¯|1)(bs).\displaystyle s+(|\bar{P}|-1)(b-s).

Note that iMPijNiaijxij+jNiaijxijb\sum_{i\in M_{P}-i^{*}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+\sum_{j\in N_{i^{*}}}a_{i^{*}j}x^{*}_{i^{*}j}\leq b. Therefore, ijP¯,iixij<1\sum_{ij\in\bar{P},i\neq i^{*}}x^{*}_{ij}<1. Following the same argument as in the proof of Lemma 3, this inequality directly implies |{ijP¯ii,joi,1}|1|\{ij\in\bar{P}\mid i\neq i^{*},j\neq o_{i,1}\}|\leq 1.

Now assume that (18) separates xx^{*}. Then:

aijai1aij+bsxi1+iMP{i,i}jNiaijxij+ijP¯,ii(bs+(bs)ai1aij+bs)xij+aijxij+jNijaijmax{1,aijaij+bs}xij>b+(|P¯|2)(bs)(1+ai1aij+bs)=sai1+aijai1aij+bs+(bs+(bs)ai1aij+bs)(|P¯|1).\begin{split}\frac{a_{i^{*}j^{*}}\cdot a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}x^{*}_{i^{\prime}1}+&\sum_{i\in M_{P}-\{i^{\prime},i^{*}\}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+\sum_{ij\in\bar{P},i\neq i^{*}}\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)x^{*}_{ij}\\ +&a_{i^{*}j^{*}}x^{*}_{i^{*}j^{*}}+\sum_{j\in N_{i^{*}}-j^{*}}a_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\right\}x^{*}_{i^{*}j}\\ >&b+(|\bar{P}|-2)(b-s)\left(1+\frac{a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\\ =&s-a_{i^{\prime}1}+\frac{a_{i^{*}j^{*}}a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}+\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)(|\bar{P}|-1).\end{split}

We obtain

(bs+(bs)ai1aij+bs)ijP¯,ii(1xij)<aijai1aij+bsxi1+iMP{i,i}jNiaijxij+aijxij+jNijaijmax{1,aijaij+bs}xijs+ai1aijai1aij+bsai1xi1+iMP{i,i}jNiaijxij+jNiaijxijs+ai1aijai1aij+bsbs+ai1aijai1aij+bs=bs+(bs)ai1aij+bs.\begin{split}&\left(b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\right)\sum_{ij\in\bar{P},i\neq i^{*}}(1-x^{*}_{ij})<\frac{a_{i^{*}j^{*}}\cdot a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}x^{*}_{i^{\prime}1}\\ +&\sum_{i\in M_{P}-\{i^{\prime},i^{*}\}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+a_{i^{*}j^{*}}x^{*}_{i^{*}j^{*}}+\sum_{j\in N_{i^{*}}-j^{*}}a_{i^{*}j^{*}}\max\left\{1,\frac{a_{i^{*}j}}{a_{i^{*}j^{*}}+b-s}\right\}x^{*}_{i^{*}j}\\ &-s+a_{i^{\prime}1}-\frac{a_{i^{*}j^{*}}a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\\ \leq&a_{i^{\prime}1}x^{*}_{i^{\prime}1}+\sum_{i\in M_{P}-\{i^{\prime},i^{*}\}}\sum_{j\in N_{i}}a_{ij}x^{*}_{ij}+\sum_{j\in N_{i^{*}}}a_{i^{*}j}x^{*}_{i^{*}j}-s+a_{i^{\prime}1}-\frac{a_{i^{*}j^{*}}a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}\\ \leq&b-s+a_{i^{\prime}1}-\frac{a_{i^{*}j^{*}}a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}=b-s+\frac{(b-s)a_{i^{\prime}1}}{a_{i^{*}j^{*}}+b-s}.\end{split}

Therefore, we have ijP¯,ii(1xij)<1\sum_{ij\in\bar{P},i\neq i^{*}}(1-x^{*}_{ij})<1, and |{ijP¯ii,joi,1}|1|\{ij\in\bar{P}\mid i\neq i^{*},j\neq o_{i,1}\}|\leq 1 follows naturally. ∎

For the cuts (14) and (18), we give the exact separation algorithms in Algorithm 2 and Algorithm 3 below. The validity of these algorithms follows from Lemma 4, and we omit the proofs here.

Algorithm 2 Exact separation of (14)

Input: An instance of (CKP) and an infeasible solution xx^{*}.
      Output: A separating inequality in the form of (14) if one exists.

1:Let xi,oi,1xi,oi,2xi,oi,nix^{*}_{i,o_{i,1}}\geq x^{*}_{i,o_{i,2}}\geq\ldots\geq x^{*}_{i,o_{i,n_{i}}} for any iMM0i\in M-M_{0}, here oi,1,,oi,nio_{i,1},\ldots,o_{i,n_{i}} are different indices in [ni][n_{i}].
2:for iMM0i^{*}\in M-M_{0} do
3:     for M¯MM0i\bar{M}\subseteq M-M_{0}-i^{*} do
4:         if iM¯(1xi,oi,1)1\sum_{i\in\bar{M}}(1-x^{*}_{i,o_{i,1}})\geq 1 then
5:              Continue
6:         else
7:              for iM¯i^{\prime}\in\bar{M} do
8:                  for j=oi,1,oi,2,,oi,nij^{\prime}=o_{i^{\prime},1},o_{i^{\prime},2},\ldots,o_{i^{\prime},n_{i^{\prime}}} do
9:                       Set P¯:=ij{(i,oi,1)iM¯i}\bar{P}:=i^{\prime}j^{\prime}\cup\{(i,o_{i,1})\mid\forall i\in\bar{M}-i^{\prime}\}.
10:                       if ijP¯(1xij)1\sum_{ij\in\bar{P}}(1-x^{*}_{ij})\geq 1 then
11:                           Break
12:                       else if P¯ini\bar{P}\cup i^{*}n_{i^{*}} is not a pack then
13:                           Continue
14:                       else
15:                           for P0{i0iM0}P_{0}\subseteq\{i0\mid i\in M_{0}\} do
16:                                Set P:=P¯P0iniP:=\bar{P}\cup P_{0}\cup i^{*}n_{i^{*}}.
17:                                if PP is a pack and xx^{*} violates (14) given by PP and ii^{*} then
18:                                    return : A separating inequality (14).                                                                                                                                 
Algorithm 3 Exact separation of (18)

Input: An instance of (CKP) and an infeasible solution xx^{*}.
      Output: A separating inequality in the form of (18) if one exists.

1:Let xi,oi,1xi,oi,2xi,oi,nix^{*}_{i,o_{i,1}}\geq x^{*}_{i,o_{i,2}}\geq\ldots\geq x^{*}_{i,o_{i,n_{i}}} for any iMM0i\in M-M_{0}, here oi,1,,oi,nio_{i,1},\ldots,o_{i,n_{i}} are different indices in [ni][n_{i}].
2:for iMM0i^{*}\in M-M_{0} do
3:     for M¯MM0i\bar{M}\subseteq M-M_{0}-i^{*} do
4:         if iM¯(1xi,oi,1)1\sum_{i\in\bar{M}}(1-x^{*}_{i,o_{i,1}})\geq 1 then
5:              Continue
6:         else
7:              for iM¯i^{\prime}\in\bar{M} do
8:                  for j=oi,1,oi,2,,oi,nij^{\prime}=o_{i^{\prime},1},o_{i^{\prime},2},\ldots,o_{i^{\prime},n_{i^{\prime}}} do
9:                       Set P¯:=ij{(i,oi,1)iM¯i}\bar{P}:=i^{\prime}j^{\prime}\cup\{(i,o_{i,1})\mid\forall i\in\bar{M}-i^{\prime}\}.
10:                       if ijP¯(1xij)1\sum_{ij\in\bar{P}}(1-x^{*}_{ij})\geq 1 then
11:                           Break
12:                       else if P¯ini\bar{P}\cup i^{*}n_{i^{*}} is not a pack then
13:                           Continue
14:                       else
15:                           for P0{i0iM0}P_{0}\subseteq\{i0\mid i\in M_{0}\} do
16:                                Set P:=P¯P0iniP:=\bar{P}\cup P_{0}\cup i^{*}n_{i^{*}}.
17:                                for iMP0i^{\prime}\in M_{P_{0}} do
18:                                    if PP is a pack and xx^{*} violates (18) given by P,iP,i^{*} and ii^{\prime} then
19:                                         return : A separating inequality (18).                                                                                                                                                                     

6 Future directions

In order for the proposed inequalities to be of practical use, it is necessary to develop more efficient separation heuristics. One interesting question for future work is: Can we leverage the intuition of our exact separation algorithms in Sect. 5 to devise polynomial-time heuristic algorithms? To examine the efficacy of those separation methods, an extensive numerical study should be performed. Another interesting direction of research spawns from the observation that the embedding conflict graph of the complementarity constraints in (CKP) is given by the union of some non-overlapping cliques. An interesting question is then, whether we can gain a deep understanding of the valid inequalities for the following set, with respect to a general graph G=([n],E)G=([n],E):

conv({x[0,1]naTxb,xixj=0{i,j}E}).\operatorname{conv}\left(\left\{x\in[0,1]^{n}\mid a^{T}x\leq b,x_{i}\cdot x_{j}=0\ \forall\{i,j\}\in E\right\}\right).

Acknowledgments: The authors dedicate this paper to the memory of their good colleague Ismael Regis de Farias, whose life and work continues to provide inspiration. A. Del Pia is partially funded by ONR grant N00014-19-1-2322. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the Office of Naval Research.

References

  • [1] Alper Atamtürk. Cover and pack inequalities for (mixed) integer programming. Annals of Operations Research, 139(1):21–38, 2005.
  • [2] Egon Balas. Facets of the knapsack polytope. Mathematical programming, 8(1):146–164, 1975.
  • [3] Egon Balas and Eitan Zemel. Facets of the knapsack polytope from minimal covers. SIAM Journal on Applied Mathematics, 34(1):119–148, 1978.
  • [4] Evelyn Martin Lansdowne Beale and John A Tomlin. Special facilities in a general mathematical programming system for non-convex problems using ordered sets of variables. OR, 69(447-454):99, 1970.
  • [5] Nicholas Beaumont. An algorithm for disjunctive programs. European Journal of Operational Research, 48(3):362–371, 1990.
  • [6] Harlan Crowder, Ellis L Johnson, and Manfred Padberg. Solving large-scale zero-one linear programming problems. Operations Research, 31(5):803–834, 1983.
  • [7] IR De Farias, Ellis L Johnson, and George L Nemhauser. Branch-and-cut for combinatorial optimization problems without auxiliary binary variables. The Knowledge Engineering Review, 16(1):25–39, 2001.
  • [8] IR de Farias, Ernee Kozyreff, and Ming Zhao. Branch-and-cut for complementarity-constrained optimization. Mathematical Programming Computation, 6(4):365–403, 2014.
  • [9] Ismael Regis de Farias and Ming Zhao. A polyhedral study of the semi-continuous knapsack problem. Mathematical Programming, 142(1-2):169–203, 2013.
  • [10] Ismael R De Farias Jr, Ellis L Johnson, and George L Nemhauser. Facets of the complementarity knapsack polytope. Mathematics of Operations Research, 27(1):210–226, 2002.
  • [11] Alberto Del Pia, Jeff Linderoth, and Haoran Zhu. Multi-cover inequalities for totally-ordered multiple knapsack sets. In Integer programming and combinatorial optimization, volume 12707 of Lecture Notes in Comput. Sci., pages 193–207. Springer, Cham, 2021.
  • [12] Alberto Del Pia, Jeff Linderoth, and Haoran Zhu. Multi-cover inequalities for totally-ordered multiple knapsack sets: theory and computation. Mathematical Programming, pages 1–29, 2022.
  • [13] Alberto Del Pia, Jeff Linderoth, and Haoran Zhu. New classes of facets for complementarity knapsack problems. In Ivana Ljubić, Francisco Barahona, Santanu S. Dey, and A. Ridha Mahjoub, editors, Combinatorial Optimization, pages 3–21, Cham, 2022. Springer International Publishing.
  • [14] Alberto Del Pia, Jeff Linderoth, and Haoran Zhu. On the complexity of separation from the knapsack polytope. In Integer programming and combinatorial optimization, volume 13265 of Lecture Notes in Comput. Sci., pages 168–180. Springer, Cham, 2022.
  • [15] Tobias Fischer and Marc E. Pfetsch. Branch-and-cut for linear programs with overlapping SOS1 constraints. Mathematical Programming Computation, 10(1):33–68, 2018.
  • [16] Zonghao Gu, George L. Nemhauser, and Martin W. P. Savelsbergh. Lifted cover inequalities for 0-10\text{-}1 integer programs: complexity. INFORMS J. Comput., 11(1):117–123, 1999.
  • [17] Zonghao Gu, George L Nemhauser, and Martin WP Savelsbergh. Lifted cover inequalities for 0-1 integer programs: Computation. INFORMS Journal on Computing, 10(4):427–437, 1998.
  • [18] Zonghao Gu, George L Nemhauser, and Martin WP Savelsbergh. Sequence independent lifting in mixed integer programming. Journal of Combinatorial Optimization, 4(1):109–129, 2000.
  • [19] Christopher Hojny, Tristan Gally, Oliver Habeck, Hendrik Lüthen, Frederic Matter, Marc E Pfetsch, and Andreas Schmitt. Knapsack polytopes: a survey. Annals of Operations Research, pages 1–49, 2019.
  • [20] R. M. Karp. Reducibility among combinatorial problems. In Complexity of Computer Computations, pages 85–103. 1972.
  • [21] Ahmet B Keha, Ismael R de Farias Jr, and George L Nemhauser. A branch-and-cut algorithm without binary variables for nonconvex piecewise linear optimization. Operations research, 54(5):847–858, 2006.
  • [22] Diego Klabjan, George L Nemhauser, and Craig Tovey. The complexity of cover inequality separation. Operations Research Letters, 23(1-2):35–40, 1998.
  • [23] Manfred W Padberg. (1, k)-configurations and facets for packing problems. Mathematical Programming, 18(1):94–99, 1980.
  • [24] Robert Weismantel. On the 0/1 knapsack polytope. Mathematical Programming, 77(3):49–68, 1997.
  • [25] Laurence A Wolsey. Faces for a linear inequality in 0–1 variables. Mathematical Programming, 8(1):165–178, 1975.