Elsevier

Operations Research Letters

Volume 31, Issue 5, September 2003, Pages 335-340
Operations Research Letters

Complete description of a class of knapsack polytopes

https://doi.org/10.1016/S0167-6377(03)00017-8Get rights and content

Abstract

We study the knapsack polytopes that arise whenever the item weights are of two types: either of weight 1 or of weight p. A complete linear description of the associated integral polytope is given by showing that the system is totally dual integral.

Introduction

Consider the knapsack inequality ∑i=1naixib, where ai and b are positive integers with aib for all i. Let X={x∈{0,1}n:∑i=1naixib} be the set of (0,1)-vectors that satisfy the knapsack inequality and P=conv(X) the associated 0–1 knapsack polytope. With no restriction on the values of the weights ai,P has a complicated structure and a complete description of its facets cannot be hoped for. However, Weismantel [3] gives a complete description for the case where the item weights take only two values, based on rather technical and elaborate methods. In this paper we will consider a special case of the two-weight situation treated in [3]. We give a simple completeness proof in this situation by showing that the linear system is totally dual integral. For a general treatment of the knapsack problem the reader may consult Nemhauser and Wolsey's book [1].

In this paper we consider the situation in which ai∈{1,p} for i=1,…,n. That is, we have items of small size (ai=1) and large size (ai=p). For notational simplicity we assume that the variables are ordered so that N1={1,…,n1} is the index set of the small items, while N2={n1+1,…,n1+n2} enumerates the items of large size. We have that n=n1+n2. The knapsack inequality can then be written asx(N1)+px(N2)⩽b.Here, and throughout, we use the notation x(S)=∑jSxj for a subset S of indices. Our aim is to give a complete linear description of P for this special case. Note that P is full-dimensional, since it contains all unit vectors and the zero vector. A facet of P induced by an inequality xi⩾0 or by xi⩽1 will be called a trivial facet. A root of an inequality dTxδ is a point x′ with dTx′=δ.

Consider now the knapsack problemmaxcTxsubjecttox∈X.First note that we may assume without loss of generality that 0⩽c1⩽⋯⩽cn1 and that 0⩽cn1+1⩽⋯⩽cn. (For P is symmetric under a permutation of all coordinates in N1 or N2.) We need the following notation. Define lmax=min(n2,⌊b/p⌋), the maximum number of large items that are allowed in the knapsack. Now for l=0,…,lmax define k(l)=min(n1,bpl) and x(l)X asx(l)=(0,0,…0,1,1,…1k(l)|0,0,…0,1,1,…1l).So x(l) is the point in X having the last l components of N2 and the last k(l) components of N1 equal to 1, and all other components equal to zero. Returning to the knapsack problem (2), observe that a search for an optimal solution may be restricted to the sequence x(0),x(1),…,x(lmax). The reason is that both the objective c and the x(l) are non-decreasing over N1 and over N2. Moreover, as the reader may verify, the optimal solutions are consecutive in this sequence. More precisely the set Ic={l∈{0,1,…,lmax}:x(l)isoptimalin(2)} consists of consecutive integers. As a consequence the knapsack problem (2) is easily solved: Calculate the objective values cTx(0),cTx(1),… and stop when the value no longer increases. An alternative and faster way to solve the knapsack problem is via its LP-relaxation, which may be solved by Dantzig's greedy algorithm. The solution obtained is thenz=(0,…,0,1,…,1k|0,…,0,a/p,1,…1l),where the last k components of z over N1 are equal to 1, and where l=⌊z(N2)⌋. By usingcn1−kcn−lp⩽cn1−k+1and the fact that Ic consists of consecutive integers, it is straightforward to show that either x(l) or x(l+1) is optimal in the knapsack problem (2).

Section snippets

The facets

Consider a valid inequalitya1x1+⋯+anxn⩽αfor P. In this section we present a complete linear system Axd for P, i.e. each facet of P is induced by exactly one inequality from Axd. The key point in the proof is to demonstrate that Axd is totally dual integral (TDI). This means that for every integral cost vector c such that the primal linear programmax{cTx:Ax⩽d}has an optimal solution, the dual linear programmin{yTd:yTA=cT,y⩾0}has an integral optimal solution y. (See Schrijver's book [2] for

Further work

We plan to study the polytope Pm associated with the 0–1 multiple knapsack problem with the same item weight restrictions (wi=1 or p) as are given in this paper. Preliminary studies indicate that the facets obtained in this paper constitute an important class of facets for Pm, and an interesting extension would be to search for a complete linear description of Pm.

References (3)

  • G. Nemhauser et al.

    Integer and Combinatorial Optimization

    (1988)
There are more references available in the full text version of this article.

Cited by (2)

View full text