A Dynamic Programming Algorithm For Multiple-Choice Constraints
A Dynamic Programming Algorithm For Multiple-Choice Constraints
Camp. & Maths. wuh Appls. Vol. IO. No. 3. pp. 279-282, 1984 0097-6’43/84 $3.00 + .OO
Printed m the U.S.A. Q 1984 Pergsmon Press Ltd.
INTRODUCTION
Beale and Tomlin[l] have presented a paper on a non-convex problem with special
restrictions. These restrictions grouped variables into “ordered sets of variables”. Within
a set, only a single variable could take on a positive value. Other researchers have used
the terminology, multiple-choice constraints or GUB constraints, for the constraints which
express the ordered set relationship. Bean [2] cites numerous applications for linear integer
problems with such constraints: scheduling, facilities location, assembly line balancing,
project selection, menu planning, catalogue space planning, and school time tabling. The
algorithm we consider in this report can be used for linear objective functions; however,
our emphasis is on problems with separable or factorable objective functions with linear
and nonlinear terms. Many of the linear applications above might be extended to include
nonlinear terms in the objective function, particularly in the areas of scheduling, facilities
location, capital budgeting, and portfolio selection. In addition, we are not restricted to
problems where all variables occur in some multiple-choice constraint.
The problem we investigate has the following form:
subject to
(MCNIPj
,=f , xi= ’
,
x,20, integerforj=I+l,..., n.
We have additional restrictions thath(*), hi(.) are nondecreasing functions over the range
979
280 M. W. COOPERand K. FARHANGIAN
of x,, that aij 2 0, and finally, that some feasible solution exists. We have assumed
eparability of the objective function. Therefore, the functions containing higher powers
of the binary decision variables can be reduced to linear functions. Research has been done
on problems similar to (MCNIP). Gallo et af.[3] have considered a singly constrained
quadratic knapsack problem with binary variables. They report solution times of 1.23 CPU
seconds for 30 binary variables with a branch and bound cutting plane approach, using
upper planes. Their model differs from ours in having nonseparable terms in the objective
function in addition to having only a single constraint. Another problem related to
(MCNIP) is identified by Granot et aZ.[4] as a O-l positive polynomial problem (PP). PP
has a linear objective function but polynomial constraints. A sequence of nested covering
problems is solved, each of which is a relaxation of PP. Problems of 40 constraints and
variables are solved with crossproduct constraint terms containing from 2 to 20 variables,
the solution times seemingly to be related to the number of variables in each term.
A third recent study by Bean[2] investigates the multiple-choice integer linear problem
(MCIP). We rewrite Bean’s formulation as follows:
such that
c x,=1
je$
q=l,...,p (MCIP)
xj = 0, 1 for j = 1, . . ., n.
This is a closer relative of the problem under study. Bean uses a branch and bound
algorithm where large parts of Ihe branch and bound tree are eliminated because they are
infeasible for the multiple-choice constraints. He gives computational results for two
problems with network constaints.
A special case of (MCNIP) is the multiple-choice knapsack problem. Sinha and
Zoltners[5] report very fast solution times for this single constraint knapsack problem by
using dominance rules for eliminating and ordering variables within a branch and bound
framework.
We undertook this review to try to identify solution times for (MCNIP), (MCIP) or
closely related problems reported in the literature. However, the references above vary
widely in the size of problems attempted, and in addition in assuming just a single
constraint or other special structure, such as unimodularity in the linear constraints of
(MCIP), and the times reported vary widely. We feel that these differences prevent any
useful comparison with our method.
THE ALGORITHM
FATHOMING BY BOUNDS
A heuristic method for linear integer programmings by Kochenberger, McCarl and
Wyman [l l] has been extended by us to separable nonlinear objective functions and
multiple-choice constraints and used to generate a good heuristic solution for MCNIP. The
procedure calculates an “effective gradient” for each variable, and increments the variable
with the greatest effective gradient. The resulting trial solution is then tested for feasibility;
if infeasible, the variable is reduced to its previous value and the variable with the next
best gradient estimate is incremented. If no feasible improvements can be obtained in this
way, the algorithm halts. This point has been used to fathom by bounds as the dynamic
programming problem tables are generated.
COMPUTATIONAL RESULTS
The following table gives solution times for randomly generated problems in CPU
seconds on a CDC 6600.
CONCLUSIONS
Computational results have been presented for random nonlinear integer problems
with multiple-choice and additional linking constraints. The variables include binary and
282 M. W. GXPER and K. FARHANGIAN
Table 1.
n 10 15 20
m 5 5 5
n. 6 12 18
PROBLEM NO.
.2040 1.0500 5.6840
general integer variables and the objective functions and constraints may contain nonlinear
terms.
The structure of the multiple-choice constraints has allowed improvements in the
computation time over a problem with general linear constraints ([8] 1982b). The time is
on the order of l/6 previous time for 20 variable problems.
REFERENCES
1. E. M. L. Beale and J. A. Tomlin, Special facilities in a general mathematical programming system for
non-convex problems using ordered sets of variables. PTOC.5th Znf. Conf. on Operational Research. Wiley,
New York (1969).
2. J. C. Bean, A branch-and-bound algorithm for the multiple choice integer program. Technical Report 82-l.
University of Michigan, Department of Industrial and Operations Engineering (1982).
3. G. Gallo, P. L. Hammer and B. Simeone, Quadratic knapsack problems. Math. Program. Study 12, 132-149
( 1980).
4. D. Granot, F. Granot and W. Vaessen, An accelerated covering relaxation alogirthm for solving O-1 positive
polynomial programs. Math. Program. 22, 350-357 (1982).
5. P. Sinha and A. A. Zoltners, The multiple choice knapsack problem. Op. Res. 27, 503-515 (1979).
6. L. Cooper and M. W. Cooper, Non-linear integer programming. Comput. & Maths Applic. 1,215-222 (1975).
I. M. W. Cooper and K. Farhangian, Nonlinear integer programming for various forms of constraints. Technical
Report 82001. Southern Methodist University, Department of Operations Research and Engineering
Management (1982)
8. M. W. Cooper and ‘K. Farhangian, An integer programming algorithm for portfolio selection with fixed
charees. Naval Res. Logistics Quart. 29, 147-150 (1982).
9. E. Dinardo and B. Fox, Shortest route methods: 1, Reaching, pruning and buckets. Op. Res. 27, 161-186
(1979).
10. T. L. Morin, Computational advances in dynamic programming. Dynamic Programming and its Applications.
Academic Press, New York (1978).
Il. G. A. Kochenberger, B. A. McCarl and F. P. Wyman, A heurestic for general integer programming. Decision
Sci. 5, 36-44 (1974).
12. D. J. Sweeny and R. A. Murphy, Branch and bound methods for multi-item scheduling. Op. Res. 29,853-864
(1981).