a note on reducing the number of variables in integer programming problems

10
Computational Optimization and Applications 8, 263–272 (1997) c 1997 Kluwer Academic Publishers. Manufactured in The Netherlands. A Note on Reducing the Number of Variables in Integer Programming Problems NAN ZHU AND KEVIN BROUGHAN Department of Mathematics, University of Waikato, Hamilton, New Zealand Received October 13, 1995; Revised May 17, 1996; Accepted June 7, 1996 Abstract. A necessary and sufficient condition for identification of dominated columns, which correspond to one type of redundant integer variables, in the matrix of a general Integer Programming problem, is derived. The given condition extends our recent work on eliminating dominated integer variables in Knapsack problems, and revises a recently published procedure for reducing the number of variables in general Integer Programming problems given in the literature. A report on computational experiments for one class of large scale Knapsack problems, illustrating the function of this approach, is included. Keywords: Integer Programming, Knapsack problem, dominated columns, integer variables 1. Introduction To reduce computational difficulties in solving large scale Integer Programming problems (IP), some recent work has focused on reducing the number of integer variables and refor- mulating the problems before using any solving method such as branch-and-bound. See for example, Nemhauser and Wolsey [5], Martello and Toth [4], Dudzi´ nski [3], Williams [7], Babayev and Mardanov [1], Pisinger [6], and Zhu and Broughan [8]. In [1], a new procedure, based on comparing pairs of columns of the constraint matrix of the IP, for reducing the number of integer variables in Knapsack problems (KP), Multidi- mensional KP, and general IP, is presented. However, if this procedure is used for general IP, some incorrect results may be obtained. In this note, following the research direction of [1] and using the method of [8] for eliminating dominated variables of a general KP, a further study on eliminating redundant variables in a general IP is described. Our results yield some recently reported results in the literature, and revise the procedure (Theorem 3) of [1]. 2. General Integer Programming problem We will consider an IP in the general form F (b 1 ,..., b m ) = max X j N c j x j

Upload: nan-zhu

Post on 03-Aug-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

Computational Optimization and Applications 8, 263–272 (1997)c© 1997 Kluwer Academic Publishers. Manufactured in The Netherlands.

A Note on Reducing the Number of Variablesin Integer Programming Problems

NAN ZHU AND KEVIN BROUGHANDepartment of Mathematics, University of Waikato, Hamilton, New Zealand

Received October 13, 1995; Revised May 17, 1996; Accepted June 7, 1996

Abstract. A necessary and sufficient condition for identification of dominated columns, which correspond toone type of redundant integer variables, in the matrix of a general Integer Programming problem, is derived.The given condition extends our recent work on eliminating dominated integer variables in Knapsack problems,and revises a recently published procedure for reducing the number of variables in general Integer Programmingproblems given in the literature. A report on computational experiments for one class of large scale Knapsackproblems, illustrating the function of this approach, is included.

Keywords: Integer Programming, Knapsack problem, dominated columns, integer variables

1. Introduction

To reduce computational difficulties in solving large scale Integer Programming problems(IP), some recent work has focused on reducing the number of integer variables and refor-mulating the problems before using any solving method such as branch-and-bound. Seefor example, Nemhauser and Wolsey [5], Martello and Toth [4], Dudzi´nski [3], Williams[7], Babayev and Mardanov [1], Pisinger [6], and Zhu and Broughan [8].

In [1], a new procedure, based on comparing pairs of columns of the constraint matrix ofthe IP, for reducing the number of integer variables in Knapsack problems (KP), Multidi-mensional KP, and general IP, is presented. However, if this procedure is used for generalIP, some incorrect results may be obtained. In this note, following the research directionof [1] and using the method of [8] for eliminating dominated variables of a general KP, afurther study on eliminating redundant variables in a general IP is described. Our resultsyield some recently reported results in the literature, and revise the procedure (Theorem 3)of [1].

2. General Integer Programming problem

We will consider an IP in the general form

F(b1, . . . ,bm) = max∑j∈N

cj x j

Page 2: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

264 ZHU AND BROUGHAN

subject to∑j∈N

ai j x j ≤ bi , i ∈ M1 = {1, . . . ,m1}, (2.1)∑j∈N

ai j x j = bi , i ∈ M2 = {m1+ 1, . . . ,m}, (2.2)

xj ≥ 0 integer, j ∈ N = {1, . . . ,n},where the{ai j } and{cj } are the arbitrary given data, and the{bi } are parameters.

In [8], to eliminate redundant integer variables we studied a general equality constrainedKP, i.e., an IP as described above but withM1 = ∅, M2 = {1}, and with all of the coefficientsin the constraint positive. In the following, we will apply the idea of the method of [8] togeneral IP’s.

In an IP, there may exist some columns that can be removed, i.e., the correspondingvariables can be fixed as the value of zero, from the problem matrix for all valid values of{b1, . . . ,bm} without altering the optimal solution valueF(b1, . . . ,bm) (if it exists). Ourwork is to identify and try to eliminate this kind of redundant variable. We have

Definition. In a general IP, we say columnr is dominated if the optimal solution valueF(b1, . . . ,bm) (if it exists) does not change whenr is removed fromN. The correspondinginteger variablexr is called dominated variable.

We have a basic result.

Theorem 2.1. In an Integer Programming problem having constraints(2.1) and (2.2),column r(r ∈ N) is dominated if and only if there exist nonnegative integers{l j }, such that∑

j∈N\{r }cj l j ≥ cr , (2.3)∑

j∈N\{r }ai j l j ≤ air , i ∈ M1, (2.4)

and ∑j∈N\{r }

ai j l j = air , i ∈ M2. (2.5)

Proof: (⇐) Assume the vectorX1 = {x1j } is a feasible integer solution to the IP. Let

X2 = {x2j }:{

x2j = x1

j + l j x1r for { j | j 6= r },

x2r = 0.

(2.6)

ThenX2 also satisfies constraints (2.1) and (2.2). Also, we have∑j∈N

cj x1j ≤

∑j ∈ N\{r }

cj x1j + x1

r ·∑

j∈N\{r }cj l j =

∑j∈N\{r }

cj(x1

j + l j x1r

)+ cr 0=∑j∈N

cj x2j ,

i.e., the new solutionX2 is at least as good asX1. Hence columnr is dominated.

Page 3: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

A NOTE ON REDUCING THE NUMBER OF VARIABLES 265

(⇒) Let column r be dominated and supposer has been eliminated fromN, andF1(b1, . . . ,bm) is the optimal solution value of the new IP. Suppose there are no non-negative integers{l j } such that (2.4) and (2.5) hold. Then if we setb1 = a1r , . . . , bm = amr,F1(a1r , . . . ,amr) does not exist in the new IP. However, in the original problem there existsan optimal solutionx∗r = 1, andx∗j = 0 otherwise withF(a1r , . . . ,amr) = cr . This contra-dicts the Definition. Therefore, there must exist nonnegative integers{l j } that satisfy (2.4)and (2.5).

Now suppose that for thisr it is the case that for nonnegative integers{l j } satisfying (2.4)and (2.5), it is always true thatcr >

∑j∈N\{r } cj l j . Whenb1 = a1r , . . . , bm = amr, in the

new IP

F1(a1r , . . . ,amr) = max{l j }

∑j∈N\{r }

cj l j4=

∑j∈N\{r }

cj l∗j .

However, in the original IPF(a1r , . . . ,amr) = cr >∑

j∈N\{r } cj l ∗j , so we arrive at acontradiction. Therefore, there must exist nonnegative integers{l j } that satisfy all of theconditions (2.3), (2.4) and (2.5) if columnr is dominated. 2

The significance of Theorem 2.1 is that all of the dominated columns in IP, in the sense thatwe have defined there, are identified. It is worthwhile to point out that the elimination results,such as Theorem 3.2 of [4] for KP, Theorems 1 and 2 of [1] for KP and MultidimensionalKP, Definitions 1 and 2 of [6] for KP, and Theorems 1–5 of [8] for general KP, can bededuced from Theorem 2.1. And similar to [8], the Definition of the dominated column andTheorem 2.1 are easily extended for reformulating the model of Mixed Integer Programmingproblems, in which some nonnegative variables are integers and others are real.

Below, a practical procedure is set up based on Theorem 2.1 to enable some dominatedcolumns to be eliminated in an algorithmic manner. As in Theorem 3 of [1], here we mainlystudy IP having constraints (2.1), but in whichM2 = φ.

Lemma 2.1. In an IP having constraints(2.1), given an arbitrary pair(q, r ), 1 ≤ q 6=r ≤ n, if there exists a nonnegative integer l0

q such that

cql 0q ≥ cr and aiql 0

q ≤ air , i ∈ M1, (2.7)

then column r is dominated.

It is easy to prove the Lemma by using Theorem 2.1: letlq = l 0q, andl j = 0 otherwise

in (2.3) and (2.4). In this case, from the proof of Theorem 2.1 we know ifX1 = {x1j } is

a feasible integer solution to that IP, then a feasible integer solutionX2 = {x2j }, that is at

least as good asX1, to the IP is:x2

j = x1j for { j | q 6= j 6= r },

x2q = x1

q + l 0qx1

r ,

x2r = 0.

(2.8)

Page 4: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

266 ZHU AND BROUGHAN

Below we show how a concretel 0q in (2.7) might be found. We use the following notation

that is defined by [1]:

I1 = I1(q, r ) = {i | aiq > 0 andair ≥ 0},I2 = I2(q, r ) = {i | aiq < 0 andair ≤ 0},I3 = I3(q, r ) = {i | aiq ≥ 0 andair < 0},

bαc denotes the largest integer not exceedingα, anddαe denotes the smallest integer greaterthan or equal toα.

By using Lemma 2.1, we have

Theorem 2.2. In an IP having constraints(2.1), given an arbitrary pair(q, r ), 1≤ q 6=r ≤ n, if the following conditions hold

I3 = φ, and (2.9)

if I 1 6= φ and I2 = ∅, then cq ·mini∈I1

bair /aiqc ≥ cr , or (2.10)

if I 1 = φ and I2 6= ∅, then cq ·maxi∈I2

dair /aiqe ≥ cr , or (2.11)

if I 1 6= φ and I2 6= ∅, then cq ·mini∈I1

bair /aiqc ≥ cr

and mini∈I1

bair /aiqc ≥ maxi∈I2

dair /aiqe, or (2.12)

if I 1 ∪ I2 = φ, then cr ≤ 0, or cq > 0 and cr > 0, (2.13)

then column r is dominated.

Proof: If I1 6= ∅ andI2∪ I3 = ∅, there exists a nonnegative integerl 0q = mini∈I1bair /aiqc

that naturally satisfies the conditionaiql 0q ≤ air , i ∈ I1. For otheri ∈ M1\I1, we have

aiq ≤ 0 andair ≥ 0. Hence thisl 0q always satisfies the conditionaiql 0

q ≤ air , i ∈ M1. Thusif (2.10) also holds, by Lemma 2.1 columnr is dominated.

Consider the caseI2 6= ∅ andI1∪ I3 = φ. There exists an integerl 0q = maxi∈I2dair /aiqe

≥ 0 that naturally satisfies the conditionaiql 0q ≤ air , i ∈ I2. For otheri ∈ M1\I2, we have

aiq ≤ 0 andair ≥ 0. Hence thel 0q always satisfies the conditionaiql 0

q ≤ air , i ∈ M1. Thusif (2.11) also holds, by Lemma 2.1 columnr is dominated.

Consider now the caseI1 6= ∅, I2 6= φ and I3 = φ. We can obtain a nonnegative integerl 1q = mini∈I1bair /aiqc such thataiql 0

q ≤ air always holds ifl 1q ≥ l 0

q, i ∈ I1. For i ∈ I2,we can obtain another nonnegative integerl 2

q = maxi∈I2dair /aiqe such that ifl 0q ≥ l 2

q thenaiql 0

q ≤ air always holds. Hence we choosel 0q = l 1

q such that ifl 0q ≥ l 2

q thenaiql 0q ≤ air

always holds fori ∈ I1 ∪ I2. For othersi ∈ M1\(I1 ∪ I2), we haveaiq ≤ 0 andair ≥ 0.Hence thel 0

q always satisfies the conditionaiql 0q ≤ air , i ∈ M1, if l 0

q ≥ l 2q. Therefore if

cq · l 0q ≥ cr also holds, by Lemma 2.1 columnr is dominated.

Finally, considerI1∪ I2∪ I3 = φ. In this case we only haveaiq ≤ 0 andair ≥ 0, i ∈ M1.For cq > 0 andcr > 0, we can choosel 0

q = dcr /cqe to makecql 0q ≥ cr hold; for cq ≤ 0

andcr > 0, we can not findl 0q satisfyingcql 0

q ≥ cr ; otherwise, we choosel 0q = 0 to make

cql 0q ≥ cr holds. Becauseaiql 0

q ≤ air always holds to the chosen nonnegative integerl 0q,

i ∈ M1, using Lemma 2.1 again, columnr can be shown to be dominated. In this caseX2

Page 5: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

A NOTE ON REDUCING THE NUMBER OF VARIABLES 267

has the form:x2

j = x1j for { j | q 6= j 6= r },

x2q =

{x1

q if cr ≤ 0,

x1q + dcr /cqex1

r if cq > 0 andcr > 0,

x2r = 0.

(2.14)

2

In [1] a general procedure (Theorem 3) is provided and that is briefly expressed here:Inan IP having constraints(2.1), given an arbitrary pair(q, r ) with 1 ≤ q 6= r ≤ n, if thefollowing conditions hold

I3 = φ, (2.15)

if I 1 ∪ I2 6= φ, then Hcq ≥ cr , (2.16)

if I 1 6= φ, and I2 6= φ, then (2.17)

mini∈I1

bair /aiqc ≥ maxi∈I2

(air /aiq),

if I 1 ∪ I2 = φ, then cq > 0, (2.18)

then column r is dominated. Here

k ={

arg mini∈I1(air /aiq) if I 1 6= φ,arg maxi∈I2(air /aiq) if I 1 = φ and I2 6= φ, (2.19)

H ={bakr/akqc if I 1 6= φ,

akr/akq, if I 1 = φ and I2 6= φ. (2.20)

A constructive proof on the above result is given in [1]. Because the case in whichcq < 0is not considered, the main conditions (2.16) and (2.17) are not suitable for general IP whenusing the solutionX2 = {x2

j } given by [1]:x2

j = x1j for { j | q 6= j 6= r },

x2q =

{⌊(akqx1

q + akr x1r

)/akq⌋

if I1 6= φ,⌈(akqx1

q + akr x1r

)/akq⌉

if I1 = φ and I2 6= φ,x2

r = 0.

(2.21)

By using condition (2.16) some incorrect results may be produced. An example is given inSection 3 below. Based on the Lemma 2.1, we provide a constructive proof of Theorem 2.2,which corresponds to Theorem 3 of [1]. Condition (2.11) replaces the condition (2.16) ifthe conditionI1 = φ and I2 6= φ holds, and condition (2.13) extends condition (2.18).

Note that before using our results to eliminate dominated columns of a given IP, knowl-edge of whether the optimal solution valueF(b0

1, . . . ,b0m) does or does not exist is not

required to be known, since the original problem is equivalent to the new problem obtainedusing the elimination.

Page 6: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

268 ZHU AND BROUGHAN

3. Knapsack problems

3.1. Procedure

We will use Theorem 2.2 to give two procedures for reducing the number of integer variablesin two types of KP. The KP isNP-hard, and may be solved in pseudo-polynomial timethrough dynamic programming [4].

If M1 = {1}, M2 = φ, and all of the data are assumed to be positive, this kind of IP,in fact, is an ordinary inequality constrained KP (calledMaxKPhere). Lettinga1 j = aj ,b1 = b and termcolumnis replaced byterm, from (2.10) of Theorem 2.2 we have

Corollary 3.1. In a MaxKP, given(q, r ) with 1≤ q 6= r ≤ n, if

cq · bar /aqc ≥ cr , (3.1)

then term r is dominated.

This Corollary or Theorem 1 in [1] can be regarded originally as Theorem 3.2 in [4]. TheO(n2) elimination procedure for dominated terms satisfying condition (3.1) (see Corol-lary 3.1 in [4]) is an important part of the algorithm of [4] for solving large scale MaxKP.Using (3.1), more efficient computational elimination procedures are provided by [3] and[6], respectively. On the elimination effectiveness of condition (3.1), some computationalexperiments are reported by [1, 3, 4, 6, 8].

If M1 = {1}, M2 = φ, and all of the data are assumed to be negative, this kind of IPcan be reformulated as an inequality constrained minimum problem (calledMinKP here).Letting cj = −c′j , aj = −a′j andb = −b′, wherec′j > 0, a′j > 0, andb′ > 0, we haveF(b) = −F ′(b′) and the formulation of MinKP:

F ′(b′) = min∑j∈N

c′j x j

subject to∑j∈N

a′j x j ≥ b′, (3.2)

xj ≥ 0 integer, j ∈ N.

Like MaxKP, MinKP also has considerable significance in Management Science. Forexample, the left side of the constraint in (3.2) could represent the total power produced bydifferent types of generators in the hydro stations, the right side the total power demandedby consumers, and the objective function the total cost of production. A formulation andheuristic method for hydropower generation scheduling are given by Broughan et al. [2].

For problem (3.2), (2.11) of Theorem 2.2 can be expressed:

Corollary 3.2. In a MinKP, given(q, r ) with 1≤ q 6= r ≤ n, if

c′q · da′r /a′qe ≤ c′r , (3.3)

then term r is dominated.

Page 7: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

A NOTE ON REDUCING THE NUMBER OF VARIABLES 269

Note that for MinKP, condition (2.16) can be expressed asc′q · (a′r /a′q) ≤ c′r and anincorrect result will be caused: only one term that satisfies minj∈N{c′j /a′j } will be kept inthe final reduced problem, and all of the other terms are dominated and eliminated. In fact,that condition is only valid for a real MinKP, in which the integer restriction on all variablesin the MinKP(3.2) is ignored. Using the condition, we can obtain an optimal real solutionx∗j1 = b′/a′j1, wherec′j1/a

′j1

4= min j∈N{c′j /a′j }, andx∗j = 0 otherwise, with the optimalsolution valueF ′(b′) = c′j1 · b′/a′j1 of the real MinKP.

A simple O(n2) computational procedure is easily derived from Corollary 3.2. Thefunction of the procedure is reported in Subsection 3.2. Further research to devise moreefficient computational procedures for MinKP is needed, similar to the work of [3, 4, 6] forMaxKP.

3.2. Computational experiments

The effectiveness of Corollary 3.2 (CO3.2) for eliminating dominated integer variables oflarge scale MinKP was tested using computational experiments on random data.

Three types of random test problems with integer data were generated. Letu1 = 100,u2 = 1000,u3 = 10000,i ∈ {1, 2, 3}, and j ∈ N = {1, . . . ,n}:— uncorrelated data: c′j anda′j were distributed uniformly in [1, ui ];— strongly correlated data: c′j = a′j + 100, witha′j distributed uniformly in [1, ui ];— minimum Subset-Sum data: c′j = a′j , with a′j distributed uniformly in [1, ui ].

The results are presented in Table 1 below. Letni denote the number of remainingvariables (possibly undominated), after using the procedure, in the problem that the upperbound of the coefficient data isui . For each type of test problem and specified numbernof integer variables, Table 1 reports the mean numberni of the set ofni , computed over 50problem instances.

Table 1 shows that Corollary 3.2 is very good for the problem with uncorrelated data:the effectiveness of the procedure increases when the number of variables increases; theeffectiveness of the procedure is almost independent of the magnitude of the data. Forthis kind of the problem over 98.3% of integer variables are identified as being dominatedand can be fixed at zero before a solution method is used. However, the procedure for the

Table 1. The effectiveness of Corollary 3.2.

Uncorrelated Strongly correlated Min subset-sum

n n1 n2 n3 n1 n2 n3 n1 n2 n3

100 1.6 1.7 1.7 63.2 95.0 99.4 7.9 56.8 90.2

500 1.0 1.5 1.7 99.4 394.5 487.7 1.0 85.3 343.6

1000 1.0 1.4 1.6 100.0 631.8 951.5 1.0 48.9 482.6

2000 1.0 1.2 1.6 100.0 865.9 1814.2 1.0 27.1 584.2

5000 1.0 1.0 1.7 100.0 993.6 3934.1 1.0 4.3 556.5

Page 8: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

270 ZHU AND BROUGHAN

problem with strongly correlated data is not very effective. Further work to find a moreeffective procedure for MinKP based on Theorem 2.1, just like the work of [8] for MaxKP,needs to be done.

The efficiency of Corollary 3.2 for solving medium and large scale MinKP’s with uncor-related data was also tested.

Using the variable substitution:xj = db′/a′j e − yj , to solve a MinKP(3.2) can equiva-lently be transformed to solve a special bounded MaxKP (see the appendix):

max∑j∈N

c′j yj

subject to∑j∈N

a′j yj ≤∑j∈N

a′j db′/a′j e − b′, (3.4)

0≤ yj ≤ db′/a′j e integer, j ∈ N.

Problem (3.4) can be solved by an extended Horowitz-Sahni algorithm (HS). The originalbranch-and-bound algorithm of Horowitz-Sahni for 0-1 MaxKP is discussed in [4]. Beforeusing the algorithm, the datac′j anda′j should be sorted so that

c′1/a′1 ≥ c′2/a

′2 ≥ · · · ≥ c′n/a

′n. (3.5)

The procedures were coded in Fortran. All runs have been executed on a SparcStation 2workstation. The uncorrelated random integer datac′j ’s anda′j ’s were generated uniformlyin the interval [1, ui ], wherei ∈ {1, 2, 3}, and j ∈ N = {1, . . . ,n}. They were then sortedas in (3.5). For all problems, integer datab′ was set tob(0.5)∑n

j=1 a′j c for n ≤ 5000, tob(0.01)

∑nj=1 a′j c for n > 5000. For each data set and value ofn, Table 2 gives the average

running timesi (seconds) that excludes sorting, computed over 50 problem instances. Heresi corresponds to the problem that the upper bound of the coefficient data isui . Execution

Table 2. The efficiency of Corollary 3.2.

CO3.2 & HS HS

b′ n s1 s2 s3 s1 s2 s3

b0.5∑nj=1 a′j c 50 <0.01 0.01 0.01 0.79 1.24 2.58

100 0.01 0.01 0.02 6.28 10.35 14.01

500 0.01 0.04 0.05 766.95 — —

1000 0.01 0.03 0.14 — — —

2000 0.03 0.06 0.30 — — —

5000 0.07 0.08 0.90 — — —

b0.01∑n

j=1 a′j c 10000 0.14 0.14 0.29 — — —

20000 0.29 0.30 0.33 — — —

30000 0.44 0.44 0.49 — — —

40000 0.59 0.59 0.63 — — —

50000 0.74 0.75 0.75 — — —

Page 9: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

A NOTE ON REDUCING THE NUMBER OF VARIABLES 271

of an algorithm was halted as soon as the running time for a problem instance exceeded1000 seconds, or the size of a problem instance was too large to be directly solved in thecomputer memory range.

Table 2 shows that the total computing time for finding the optimal solution of problem(3.4), where its optimal solution corresponds to MinKP(3.2)’s byx∗j = db′/a′j e − y∗j , withuncorrelated data by using Corollary 3.2 and HS is far less than the time needed to solvethe original problem (3.4) by using HS without Corollary 3.2.

After using Corollary 3.2, the problem scale of the tested (3.4) was sharply decreased: notonly the dominated variables (the dominated variablexj (= 0) of the MinKP correspondsto the dominated variableyj (= db′/a′j e) of the bounded MaxKP) have been eliminated,but also the knapsack size (right-hand-side value in the constraint) of problem (3.4) hasbecome smaller, before using HS. However, it was found that the memory limit could beexceed due to integer overflow when directly using HS for (3.4), even for the problems withn = 500 and the upper bound of the coefficient data isu3.

We expect that by using Corollary 3.2 and other solution methods such as those providedin [4], better experimental results for MinKP(3.2) should be obtained.

Appendix

Obviously, a MinKP(3.2) can be written as the following bounded problem:

F ′ = min∑j∈N

c′j x j

subject to∑j∈N

a′j x j ≥ b′, (A.1)

0≤ xj ≤ db′/a′j e integer, j ∈ N.

Using the variable substitution:xj = db′/a′j e − yj , problem (A.1) is equivalent to∑j∈N

c′j db′/a′j e −max∑j∈N

c′j yj

subject to∑j∈N

a′j yj ≤∑j∈N

a′j db′/a′j e − b′, (A.2)

0≤ yj ≤ db′/a′j e integer, j ∈ N.

Lettingv j = db′/a′j e, andB =∑ j∈N a′j db′/a′j e − b′, then MinKP(3.2) is equivalent tothe following bounded MaxKP:

f = max∑j∈N

c′j yj

subject to∑j∈N

a′j yj ≤ B, (A.3)

0≤ yj ≤ v j integer, j ∈ N,

Page 10: A Note on Reducing the Number of Variables in Integer Programming Problems

P1: MVG

Computational Optimization and Applications KL474-02-Zhu July 29, 1997 9:28

272 ZHU AND BROUGHAN

whereF ′ = ∑ j∈N c′j db′/a′j e − f , and the optimal solutions of both problems are corre-sponding sincexj = v j − yj .

Problem (A.3), with sorted data as in (3.5), can be solved using the extended branch-and-bound algorithm of Horowitz-Sahni. A dominated variablexj (let xj = 0) of MinKP(3.2)corresponds to a dominated variableyj (let yj = v j ) of bounded MaxKP(A.3).

Acknowledgement

The authors would like to thank the referees for their helpful comments.

References

1. D.A. Babayev and S.S. Mardanov, “Reducing the number of variables in integer and linear programmingproblems,” Comput. Optim. Appl., vol. 3, pp. 99–109, 1994.

2. K. Broughan, C. McKenzie, A. Sneyd, and Y. Wang, “Optimal hydropower generation scheduling for a cascade,”IMA Journal of Mathematics Applied in Business & Industry, vol. 5, pp. 115–130, 1993/1994.

3. K. Dudzinski, “A note on dominance relation in unbounded knapsack problems,” Opns. Res. Lett., vol. 10,pp. 417–419, 1991.

4. S. Martello and P. Toth, Knapsack Problems: Algorithms and Computer Implementations, Wiley: Chichester,1990.

5. G.L. Nemhauser and L.A. Wolsey, Integer and Combinatorial Optimization, Wiley: New York, 1988.6. D. Pisinger, “Dominance relations in unbounded knapsack problems,” Tech. Rep. No. 94/33, DIKU, Copen-

hagen, Denmark.7. H.P. Williams, “The elimination of integer variables,” J. Opns. Res. Soc., vol. 5, pp. 387–393, 1992.8. N. Zhu and K. Broughan, “On dominated terms in the general knapsack problem,” The 31st Annual Conference

of OR Society of New Zealand, Wellington, Aug. 31–Sept. 1, 1995.