CPSC669 Term Project—Paper Reading Parameterized Approximation Scheme for the Multiple Knapsack Problem Klaus Jansen SODA 2009 Yan Lu 2011-04-26
Outline 1. Problem Definition 2. Approximation Scheme • 2.1 Instances with similar capacities • 2.2 General cases
1 Problem Definition • Multiple Knapsack Problem (MKP): • Given a set A of n items and a set B of m bins (knapsacks) such that each item aA has a size size(A) and a profit value profit(a), and each bin bB has a capacity c(b), the goal is to find a subset U Aof maximum total profit such that U can be packed into B without exceeding the capacities. • A generalization of the classical knapsack problem • Strongly NP hard no FPTAS • Previous result: PTAS by Chekuri and Khanna  • This paper:
Outline 1. Problem Definition 2. Approximation Scheme • 2.1 Instances with similar capacities • 2.2 General instances
2 Approximation Scheme 2.1 Instances with similar capacities • Let be the different capacities in an instance of MKP. Suppose for each capacity , , there are . • Approximation algorithm: • (1) Linear program relaxation • (2) Rounding the LP solution • (3) Selecting the Items • (4) Strip packing • (5) Shifting Technique
(1) Linear Program Relaxation • Main idea: select a fractionalxi piece of each item ai, distribute these pieces as even smaller pieces among all bins (fractional). • The LP is a relaxation of MKP • Could be approximately solved as a max-min resource sharing problem , and solution has an objective value of at least 1-3α times OPT(LP), or OPT(A,B)
(2) Rounding the LP solution • Define as the piece of item ai assigned to group l. • Think large pieces () ) as rectangles with width size(ai) and height • Stack all these rectangles ordered by widths, stack height • Divide each stack into parts • Let Klbe the set of pieces lying in more than 1 parts, notice • Remove items corresponding to Kl
(2) Rounding the LP solution (cont’d) • Let Sl,jbe the set of items ai that have a piece in part j of stack l. • For small pieces, compute the total area allocated to group l Area(l) = • Let S0,j be the set of ai with a small piece in the sum above • Set a LP to round over groups: • This LP has a feasible solution
(2) Rounding the LP solution (cont’d) • Lemma 2.1The solution can be rounded into another solution where each set has at most items. • NoteLl is the set of items with fractional pieces in more than 1 groups • After rounding, we have a unique assignment of items to groups, i.e. each item is assigned to exactly one group l and one part j.
(3) Selecting the Items • In the rounding result, items selected are generally fractional. • Select complete items with near optimum profit, by solving classical fractional knapsack problems for each group and each part: • take as size of an item the value 1 and as profit the original profit profit(ai) • the capacity of the knapsack equals to , i.e. height of a part in Stack l • In overall solution A, at most one fractional item per group and part. • Let Ml be the set of selected fractional items in group l. • All other items are selected completely.
(4) Strip packing • Lemma 2.2The set can be packed into bins of capacity cl for each l. • Using strip packing algorithm by Kenyon and Remila  • This implies (using the shifting technique described below) that most of the items (with near optimum profit) can be packed into ml bins. (5) Shifting technique • Recall : items removed from LP solution. • Let . Then • Lemma 2.3We can select a subset with profit at least that can be packed into ml bins.
Entire algorithm • (1) Solve the LP approximately whose objective value is at least (1−3α) times the optimum LP value • (2) Build t stacks of wide rectangles and sets with narrow rectangles, split the stacks into 1/δ2parts and round the rectangles over the groups. Then select the items via solving fractional knapsack problems and store the fractional items • (3) Use the strip packing algorithm by Kenyon and Remila for each group to pack the items into bins • (4) Apply the shifting strategy to select subsets that can be packed into ml bins.
2 Approximation Scheme 2.2 General instances • When number of bins smaller than , they presented an approximation scheme with running time • From now on, suppose number of bins larger than • (1) Modify structure of bins • (2) Modify structure of high profit items • (3) Overall algorithm
(1) Modify the bins • Order the bins according to capacities • k groups with bins, with • One group with bins • Lemma 2.4We can transform the optimum solution for an instance (A, B) such that the k-th group of bins is not used and the profit loss is at most
(2) Modify the high profit items • Let APP(A, B) be the profit of the greedy algorithm, • Consider only items with large profit where γ is the number of bins in B2 • Case 1: , at most items in the instance. We could pack all of them in B2. Denote them with set SmHi • Case 2: , for each rounded profit value , choose at most smallest items with profit round(k) and store in A(k) • Guess a subset with high profit items for the bins in B2, through enumeration.In total, only need to consider choices.
(3) Overall algorithm • Compute approximate solution • Modify structure of bins • Compute the set SmHi and sets A(k) • For each subset • Test whether Aguessfits into B2; if not, discard it • If yes, take a feasible placement of Aguessinto B2 and set up a linear program to select the remaining items (similar to the instances with similar capacities) • Place the selected items into bins • Take a solution among all feasible choices Aguess with maximum total profit. • Total running time
 E. Balas and E. Zemel: An algorithm for large zero-one knapsack problems, Operations Research, 28 (1980), 1130-1154.  M. Blum, R.W. Floyd, V. Pratt, R.L. Rivest, and R.E. Tarjan: Time bounds for selection, Journal of Computer and System Sciences, 7 (1973), 448-461.  C. Chekuri and S. Khanna, A PTAS for the multiple knapsack problem, Proceedings of ACM-SIAM Symposium on Discrete Algorithms, SODA 2000, 213-222.  C. Chekuri and S. Khanna: A polynomial time approximation scheme for the multiple knapsack problem, SIAM Journal on Computing, 35 (2006), 713-728.  F. Diedrich, K. Jansen, F. Pascual, and D. Trystram: Approximation algorithms for scheduling wit reservations, Proceedings of Conference on High Performance Computing, HiPC 2007, 297-307.  D. Dor and U. Zwick: Selecting the median, SIAM Journal on Computing, 28 (1999), 1722-1758.  R. Downey: Parametrized complexity for the skeptic, Proceedings of IEEE Conference on Computational Complexity, CCC 2003, 147-169.  M.R. Fellows: Blow-ups, win/win’s, and crown rules: some new directions in FPT, Proceedings of Workshop on Graph Theoretical Concepts in Computer Science, WG 2003, LNCS 2880, 1-12.  M.D. Grigoriadis, L.G. Khachiyan, L. Porkolab and J. Villavicencio: Approximate max-min resource sharing for structured concave optimization, SIAM Journal on Optimization, 41 (2001), 1081-1091.  C. Kenyon and E. Remila: Approximate strip packing, Mathematics of Operations Research, 25 (2000), 645-656.  H. Kellerer: A polynomial time approximation scheme for the multiple knapsack problem, Proceedings of Workshop on Approximation Algorithms for Combinatorial Optimization Problems, APPROX 1999, LNCS 1671, 51-62.  H. Kellerer, U. Pferschy, and D. Pisinger: Knapsack Problems, Springer Verlag, Berlin, 2004.  E.L. Lawler: Fast approximation algorithms for knapsack problems, Mathematics of Operations Research, 4 (1979), 339-356.  J.K. Lenstra, D.B. Shmoys, and E. Tardos: Approximation algorithms for scheduling unrelated parallel machines, Mathematical Programming, 24 (1990), 259-272.  S. Martello and P. Toth: Knapsack Problems: Algorithms and Computer Implementations, John Wiley and Sons, New York, 1990.  D. Marx: Parametrized complexity and approximation algorithms, The Computer Journal, 51 (2008), 60-78.  S.A. Plotkin, D.B. Shmoys, and E. Tardos: Fast approximation algorithms for fractional packing and covering problems, Mathematics of Operations Research, 20 (1995), 257-301.  M. Scharbrodt, A. Steger, and H. Weisser: Approximability of scheduling with fixed jobs, Proceedings of ACM-SIAM Symposium on Discrete Algorithms, SODA 1999, 961-962.  D.B. Shmoys and E. Tardos: An approximation algorithm for the generalized assignment problem, Mathematical programming, Series A, 62 (1993), 461-474.