A Nonlinear Knapsack Problem

A Nonlinear Knapsack Problem

ELSEVIER Operations Research Letters 17 (1995) 103-110 A nonlinear Knapsack problem Dorit S. Hochbaum School of Business Administration and Department of 1EOR, University of California, Berkeley, CA 94720, USA Received 1 February 1994; revised 1 May 1994 To the memory of Eugene Lawler Abstract The nonlinear Knapsack problem is to maximize a separable concave objective function, subject to a single "packing" constraint, in nonnegative variables. We consider this problem in integer and continuous variables, and also when the packing constraint is convex. Although the nonlinear Knapsack problem appears difficult in comparison with the linear Knapsack problem, we prove that its complexity is similar. We demonstrate for the nonlinear Knapsack problem in n integer variables and knapsack volume limit B, a fully polynomial approximation scheme with running time ()((1/e 2) (n + l/e2)) (omitting polylog terms); and for the continuous case an algorithm delivering an e-accurate solution in O(nlog(B/~)) operations. Keywords: Convex optimization; Fully polynomial approximation scheme; Knapsack problem; Quadratic Knapsack problem; Allocation problem O. Introduction In its most general form considered here the nonlin- ear Knapsack problem has the objective separable The nonlinear Knapsack problem (NLK) is concave and the packing constraint separable con- a generalization of the well-known integer Knap- vex: sack problem which maximizes a linear objective function representing utilities associated with Max ~ fj(xj) choosing items (the number of units of item j is j=l represented by the variable x j) subject to a "pack- ing" constraint: s.t. ~ gj(xj) ~< B, (NLK) J max pixj ajxj <~ B, uj >1 xj >i 0 and O~<xj~<uj, xjinteger, j= 1,...,n. (.j=l x~ integer forj = 1 .... , n~. The functions J~ are assumed concave and nonde- ) creasing, and the functions gj are assumed convex 0167-6377/95/$09.50 © 1995 Elsevier Science B.V. All rights reserved SSDI 0167-6377(95)00009-7 104 D.S. Hochbaum / Operations Research Letters 17 (1995) 103 l lO and nondecreasing. Without loss of generality, branch-and-bound algorithm is based on solving B and uj are integers. the continuous relaxation first. For solving the con- There are several complexity issues that arise tinuous problem, they rely on the availability of when the functions fj and g~ take real values on derivatives in analytic form, and the solution of integer inputs. In this case, the computation model analytic equations. Since solving the continuous assumed is the unit cost model, i.e. any arithmetic relaxation is itself a challenging problem in their operation or comparison is counted as a single approach, the algorithm is only applicable to operation, even if the operands are real numbers. limited cases of the nonlinear Knapsack problem. Another issue is the interpretation of what it means The results reported in this paper indicate that to solve a problem in reals. Such issues are investi- the complexity of the nonlinear Knapsack problem gated in Section 2. is quite close to that of the linear one. We consider Well studied classes of (NLK) are the quadratic solving optimally the continuous nonlinear Knap- Knapsack with the functions fj quadratic and con- sack problem and present a fully polynomial ap- vex and the functions g~ linear, and the nonlinear proximation scheme for the (integer) nonlinear Knapsack problem in which the functions g~ are Knapsack. linear. Also the continuous version of the problem We use the concept of e-accuracy to solve the is important and comes up in applications such as continuous problem. For a prespecified accuracy of production planning [18], marketing [12], capital e, a solution is said to be e-accurate if it is at most at budgeting [14] and numerous others. a distance of e (in the L~ norm) from an optimal There is an extensive literature on solution solution. In other words, it is identical to the opti- methods for the nonlinear Knapsack problem and mum in O(log I/e) significant digits. The continu- its special cases, and the few mentioned here form ous problem is shown to be solvable with an e- only a partial list. This literature focuses on cases accurate solution in time O(n log B/e). This running where the functions are analytic and differentiable. time is not possible to improve as it is equal to the For the integer problem, Marsten and Morin [13] running time for solving the continuous allocation developed a branch-and-bound approach com- problem, which is a simple special case of the non- bined with a dynamic programming approach de- linear Knapsack problem. In [6] it is proved that veloped earlier in [16]. Mathur et al. [14] also this running time for the allocation problem is developed a branch-and-bound approach. They optimal for the comparison model in that it meets noted the representation of the objective function the established lower bound, and cannot be sub- as a piecewise linear function, but as they were not stantially reduced even for the algebraic tree model aware of an efficient approach to exploit this struc- that permits arithmetic operations in addition to ture they dismiss this approach as unlikely to lead comparisons and branchings and the floor opera- to improved algorithms. This representation is in tion. fact the key to the algorithms devised here. Using it, Finally, we show an adaptation of the fully poly- we establish that the continuous solution to the nomial approximation scheme for the linear integer nonlinear Knapsack problem is solvable efficiently Knapsack problem, to the nonlinear case as well, and in polynomial time. with similar complexity. Ziegler described in [18] an application with We use here a terminology that is common in the a specific objective function and packing con- context of the Knapsack problem. An item is said straint. He described for this problem a fully poly- to be selected if the corresponding variable is set to nomial approximation scheme. We demonstrate one. The objective function coefficients are referred that such an approximation scheme exists for all to as profits, and the single constraint as the pack- instances of (NLK), and that Ziegler's scheme re- ing constraint. The coefficients in the packing con- sults as a corrollary of the general case. straint are referred to as weights, and the value of Recently, Bretthauer and Shetty [1, 2] described the right-hand side of the constraint, as the Knap- a branch-and-bound algorithm for the quadratic sack volume. We use boldface letters to denote case [2], and for the nonlinear case [1]. The vectors, N'N~ denotes the maximum norm and D.S. Hochbaum/ OperationsResearch Letters 17 (1995) 103-110 105 e denotes the vector of all l's (1 .... ,1) of compat- The complexity of solving this 0/1 Knapsack prob- ible dimension. All logarithms are base 2. lem is O(Nmin{B, P*}) for P* denoting the opti- In Section 1 we describe the piecewise linear mal solution value. For this dynamic programming approximation that is used for the algorithms de- to work, it is necessary that the objective function vised here. Section 2 presents a polynomial algo- and constraint coefficients are integral. The algo- rithm for the continuous nonlinear Knapsack rithm runs in O(NB) operations if only the con- problem, and in Section 3 we provide the descrip- straint coefficients (the weights) are integral. It runs tion of the fully polynomial approximation scheme. in time O(NP*) if only the objective function coeffi- cients are integral. The O(NP*) dynamic program- ming algorithm is given in Section 3.1. 1. The piecewise linear approximation If the functions gj map integers to integers or alternatively the functions fj map integers to inte- A piecewise linear approximation of the func- gers, then (NLK) is solvable in O(BY~= l uj) steps tions fj and the functions #j is used to convert the (or O(P* y~.= 1 uj) steps), which is the same complex- nonlinear Knapsack problem (NLK) into a 0/1 ity as the corresponding linear Knapsack problem. Knapsack problem. The integer (NLK) is equiva- lent to the problem, (PLK), derived by a piecewise linear approximation on the integer grid. This 2. Solving the continuous nonlinear Knapsack is achieved by replacing each variable xj by the problem sum of binary variables Y~I xlj, and letting plj =fj(i) -fj(i - 1), and alj = 9j(i) - 9j(i - 1): The notion of solving a continuous problem is uj not well defined for nonlinear problems. The con- Max ~ • pijxij tinuous problem has only been solved in special /=1 i=t cases when the derivatives of the functionsf~ and 9j exist. Even then it may be impossible to state the s.t. ~ ~ aijxij ~ B, (PLK) optimal solution accurately. The only case in which j=l i=1 an exact and accurate solution can be obtained is xij~{O, 1}, i=l,...,uj, j=l,...,n. the quadratic convex optimization problem over linear or convex quadratic constraints (see, for in- (PLK) is an ordinary 0/1 Knapsack problem, ex- stance, [ 10]). cept that the coefficients Pij or aij may not be It is not surprising that difficulties are encoun- integers or rationals. In order for this formulation tered in the continuous version since the solution to be valid for (NLK) the variables in a solution could require infinite representation. For example, vector x~j must satisfy for each given j, that when let a simple nonlinear Knapsack problem be given ordered as an array (xii .... , x.j,j), two l's may not with fl(xl) = 6xl - x3,fz(x2) = 0, the packing be separated by a 0, or two O's by a 1.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us