220 likes | 350 Views
Parameterized Approximation Scheme for the Multiple Knapsack Problem by Klaus Jansen (SODA’09). Speaker: Yue Wang 04/14/2009. Outline. Introduction Definition of problem Relative Works Approximation Scheme for MKP Instances with similar capacities General instances.
E N D
Parameterized Approximation Scheme for the Multiple Knapsack Problemby Klaus Jansen (SODA’09) Speaker: Yue Wang 04/14/2009
Outline • Introduction • Definition of problem • Relative Works • Approximation Scheme for MKP • Instances with similar capacities • General instances
Multiple Knapsack Problem (MKP) • A generalization of the classical knapsack problem. • Given a set A of n items and a set B of m bins, each item a A has a size s(a), and a profit value p(a), and each bin b B has a capacity c(b). • To find the subset of maximum total profit such that it can be packed into B without exceeding the capacities. • MKP is strongly NP-hard.
FPTAS: approximation algorithm running in MKP has no FPTAS! PTAS: approximation algorithm running in MKP has (Chekuri and Khanna) EPTAS: a PTAS with running time of the form (this paper) FPTAS, PTAS and EPTAS
Outline • Introduction • Definition of problem • Relative Works • Approximation Scheme for MKP • Instances with similar capacities • General instances
Instances with Similar Capacities • Let be the different capacities in MKP. • For each capacity there are bins of capacity . • 5 steps to approximation algorithm: • Linear Program Relaxation • Rounding the LP solution • Selecting the Items • Strip Packing • Shifting Technique • approximation algorithm running in time polynomial in n, t and .
Linear Program Relaxation • Let with total size be a configuration of group . • Let be the set of configures for group . • is the fractional piece of item • denotes the length of the configuration in the solution.
Linear Program Relaxation (2) • The LP problem can be solved as max-min resource sharing problem. (reference to [9]) • Solution , , and the objective value isat least times the optimum value
Rounding the LP solution • Put all the pieces of the same item in each group together. as the pieces of item assigned to group . • Large pieces (with ) as rectangles of the form • is the height of stack • Divide the stack into parts of height
Rounding the LP solution (2) • Let be the set of pieces that lies in at least two parts of the stack . • Remove the items corresponding to the sets . • Let be the set of items that have a piece in part j of stack • Put all the small pieces ( ) together at the top the stack. Let be the set of items with a small piece in top part of the stack.
Rounding the LP solution (3) • The above linear programming can be transferred into a scheduling problem with jobs on unrelated machines. M machines: parts. N jobs: n items. • They can round the solution into another feasible solution that has few fractional variables. (one fractional variable per machine (per part), by [14][17]. • Let be the set of items with fractional variables. • Now each item with value is assigned to exactly one group and one part.
Selecting the Items • Till now, they select pieces of the items because . • In this part, they select complete (non-fractional) items from the instance with near optimum profit that can be packed into the bins. • By solving classical fractional knapsack problems for each part. • Take size of an item as value 1, profit as the original profit . • Capacity of the knapsack is equal to the height value . • Overall solution with at most one fractional item per part. • Let be the set of fractional items selected above in group . . All other items are now selected completely.
Strip Packing • Lemma 2.4 :The set can be packed into bins of capacity . By using the property and the strip packing algorithm of Kenyon and Remila.[10]
Shifting Technique • During the rounding, selecting process, they delete some items from the original solution of LP, i.e. , , . • Let , then • Since , using the lemma 2.4, can be packed into . • Select a subset with profit at least that can be packed into bins.
Put all things together • Solving the LP approximately whose objective value is at least . • Build t stacks of wide rectangles and sets with narrow rectangles, split the stacks into parts and round the rectangles over the groups. The select via solving fractional knapsack problem and store the fractional items . • Using the strip packing algorithm for each group to pack the items into bins. • Apply the shift strategy to select subset that can be packed into bins.
Outline • Introduction • Definition of problem • Relative Works • Approximation Scheme for MKP • Instances with similar capacities • General instances
General Instances • The number of bins . • Modifying the bins. • Order the bins • k groups with bins • 1 groups with bins • Round up the capacity of each bin in the first k groups. • Eliminate the k’th group bins. • The profit loss is at most .
General Instances(2) • Let be the profit of the greedy algorithm for instance (A, B). • Consider only the items with large profit , is the number of bins in • If , there are at most many items and they could pack all of them in . is used to denote the set. • If ,they use at most smallest items with rounded profit value Let be the stored set. • In total they store at most
General Instances(3) • After the replacement, the profit is at least . • The algorithm is to guess a subset with high profit items for the bins in . (By enumeration) • The number of choices for the set is at most , the number of place is again at most . In total they have to consider at most choices and replacements.
Overall algorithm for general instances • Compute using the greedy approximation algorithm. • Modify the structure of the bins. • Compute the set and with high profit that could be placed into • For each choice • test whether it fits into the bins ; if not, discard the solution • If yes, take a feasible placement of into and set up a LP to select the remaining items. (similar to the same capacity instances) • Place the selected items into the bins
Overall algorithm for general instances (2) • Take a solution among all feasible choices with maximum total profit. The times complexity of this approximation algorithm
Thanks Any questions, comments and concerns?