advanced algorithms coms31900 approximation algorithms
play

Advanced Algorithms COMS31900 Approximation algorithms part four - PowerPoint PPT Presentation

Advanced Algorithms COMS31900 Approximation algorithms part four Asymptotic Polynomial Time Approximation Schemes Rapha el Clifford Slides by Benjamin Sach Approximation Algorithms Recap A polynomial time algorithm A is an


  1. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b

  2. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b • If Opt b > 2 then s > 2

  3. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b • If Opt b > 2 then s > 2 • If Opt b = 2 then 2 � s � α · Opt b < (3 / 2) · Opt b = 3

  4. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b • If Opt b > 2 then s > 2 • If Opt b = 2 then 2 � s � α · Opt b < (3 / 2) · Opt b = 3

  5. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b • If Opt b > 2 then s > 2 • If Opt b = 2 then 2 � s � α · Opt b < (3 / 2) · Opt b = 3 so s = 2

  6. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b • If Opt b > 2 then s > 2 • If Opt b = 2 then 2 � s � α · Opt b < (3 / 2) · Opt b = 3 so s = 2 • So A can solve the NP -complete P ARTITION problem in polynomial time!

  7. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 • Assume A is an α -approximation for B IN P ACKING with α < 3 / 2 A outputs a solution using s bins with Opt b � s � α · Opt b • If Opt b > 2 then s > 2 • If Opt b = 2 then 2 � s � α · Opt b < (3 / 2) · Opt b = 3 so s = 2 • So A can solve the NP -complete P ARTITION problem in polynomial time! which implies that P = NP

  8. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 Lemma There is no α -approximation for B IN P ACKING with α < 3 / 2 unless P = NP

  9. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 Lemma There is no α -approximation for B IN P ACKING with α < 3 / 2 unless P = NP We saw that First Fit Decreasing (FFD) is a 3 / 2 -approximation

  10. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 Lemma There is no α -approximation for B IN P ACKING with α < 3 / 2 unless P = NP We saw that First Fit Decreasing (FFD) is a 3 / 2 -approximation so this is the best we can do?

  11. P ARTITION and B IN P ACKING Key Idea Solve the P ARTITION problem by approximating B IN P ACKING 1 7 4 4 11 3 11 2 11 2 11 11 11 Lemma There is no α -approximation for B IN P ACKING with α < 3 / 2 unless P = NP We saw that First Fit Decreasing (FFD) is a 3 / 2 -approximation so this is the best we can do? In fact, FFD gives a solution using s bins with Opt b � s � 11 9 · Opt b + 1

  12. Asymptotic Polynomial time approximation schemes An asymptotic polynomial time approximation scheme (APTAS) for problem P is a family of algorithms: There is a constant c > 0 such that For any constant ǫ > 0 , A ǫ runs in polynomial time (poly-time) and outputs a solution s with Opt � s � (1 + ǫ ) · Opt + c

  13. Asymptotic Polynomial time approximation schemes An asymptotic polynomial time approximation scheme (APTAS) for problem P is a family of algorithms: There is a constant c > 0 such that For any constant ǫ > 0 , A ǫ runs in polynomial time (poly-time) and outputs a solution s with Opt � s � (1 + ǫ ) · Opt + c (this is the minimisation version of the definition)

  14. Asymptotic Polynomial time approximation schemes An asymptotic polynomial time approximation scheme (APTAS) for problem P is a family of algorithms: There is a constant c > 0 such that For any constant ǫ > 0 , A ǫ runs in polynomial time (poly-time) and outputs a solution s with Opt � s � (1 + ǫ ) · Opt + c (this is the minimisation version of the definition) An APTAS does not have to have running time polynomial in 1 /ǫ

  15. Asymptotic Polynomial time approximation schemes An asymptotic polynomial time approximation scheme (APTAS) for problem P is a family of algorithms: There is a constant c > 0 such that For any constant ǫ > 0 , A ǫ runs in polynomial time (poly-time) and outputs a solution s with Opt � s � (1 + ǫ ) · Opt + c (this is the minimisation version of the definition) An APTAS does not have to have running time polynomial in 1 /ǫ An asymptotic fully PTAS (AFPTAS) is also polynomial in 1 /ǫ

  16. Asymptotic Polynomial time approximation schemes An asymptotic polynomial time approximation scheme (APTAS) for problem P is a family of algorithms: There is a constant c > 0 such that For any constant ǫ > 0 , A ǫ runs in polynomial time (poly-time) and outputs a solution s with Opt � s � (1 + ǫ ) · Opt + c (this is the minimisation version of the definition) An APTAS does not have to have running time polynomial in 1 /ǫ An asymptotic fully PTAS (AFPTAS) is also polynomial in 1 /ǫ We will see an APTAS for B IN P ACKING which uses at most (1 + ǫ ) · Opt + 1 bins

  17. A special case of B IN P ACKING We will now see a special case of B IN P ACKING which we can solve optimally in polynomial time 3 4 4 8 7 7 7 8 8 1 8 8 8 3 8 4 4 8 8

  18. A special case of B IN P ACKING We will now see a special case of B IN P ACKING which we can solve optimally in polynomial time 3 4 4 8 7 7 7 8 8 1 8 8 8 3 8 4 4 8 8 We have n items but

  19. A special case of B IN P ACKING We will now see a special case of B IN P ACKING which we can solve optimally in polynomial time 3 4 4 8 7 7 7 8 8 1 8 8 8 3 8 4 4 8 8 We have n items but ◦ There are c s (a constant) number of different item sizes

  20. A special case of B IN P ACKING We will now see a special case of B IN P ACKING which we can solve optimally in polynomial time 3 4 4 8 7 7 7 8 8 1 8 8 8 3 8 4 4 8 8 We have n items but ◦ There are c s (a constant) number of different item sizes ◦ At most c b (another constant) items fit in each bin

  21. A special case of B IN P ACKING We will now see a special case of B IN P ACKING which we can solve optimally in polynomial time 3 4 4 8 7 7 7 8 8 1 8 8 8 3 8 4 4 8 8 Here c s = 3 and c b = 2 We have n items but ◦ There are c s (a constant) number of different item sizes ◦ At most c b (another constant) items fit in each bin

  22. A special case of B IN P ACKING We will now see a special case of B IN P ACKING which we can solve optimally in polynomial time 3 4 4 8 7 7 7 8 8 1 8 8 8 3 8 4 4 8 8 Here c s = 3 and c b = 2 We have n items but ◦ There are c s (a constant) number of different item sizes ◦ At most c b (another constant) items fit in each bin How many different ways are there to fill a single bin?

  23. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type

  24. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed

  25. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items

  26. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 3 4 8 3 8 Type: 7 8 8 4 8 4 4 3 3 3 8 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items

  27. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items

  28. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items • How many types can there be?

  29. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items • How many types can there be? There are between 0 and c b items of any one size

  30. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items • How many types can there be? There are between 0 and c b items of any one size There are c s different sizes

  31. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items • How many types can there be? There are between 0 and c b items of any one size There are c s different sizes The number of types �

  32. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items • How many types can there be? There are between 0 and c b items of any one size There are c s different sizes ( c b + 1) × ( c b + 1) × . . . × ( c b + 1) The number of types � c s

  33. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 4 8 3 Type: 7 8 8 4 8 4 3 3 3 8 8 8 8 8 6 2 7 1 3 4 5 • We can describe any packing of items into a single bin by its type • The type of a packed bin determines how many of each item is packed we ignore rearrangement of items • How many types can there be? There are between 0 and c b items of any one size There are c s different sizes = ( c b + 1) c s ( c b + 1) × ( c b + 1) × . . . × ( c b + 1) The number of types � c s

  34. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 4 3 3 3 7 7 8 8 8 8 4 8 8 3 3 3 3 8 8 8 8 8 6 3 4 4 5 5 5 • We can completely describe any packing of S into b � n bins by the number of bins of each type used

  35. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used

  36. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins

  37. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 5 4 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins

  38. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins

  39. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins • How different packings can there be?

  40. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins • How different packings can there be? There are between 0 and n bins of any type

  41. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins • How different packings can there be? There are between 0 and n bins of any type There are at most ( c b + 1) c s different types

  42. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins • How different packings can there be? There are between 0 and n bins of any type There are at most ( c b + 1) c s different types number of packings �

  43. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins • How different packings can there be? There are between 0 and n bins of any type There are at most ( c b + 1) c s different types ( n + 1) × ( n + 1) × . . . × ( n + 1) number of packings � ( c b + 1) c s

  44. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used we ignore rearrangement of bins • How different packings can there be? There are between 0 and n bins of any type There are at most ( c b + 1) c s different types = ( n +1) ( c b +1) cs ( n + 1) × ( n + 1) × . . . × ( n + 1) number of packings � ( c b + 1) c s

  45. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used

  46. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used • However, not all these different packings are valid

  47. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used • However, not all these different packings are valid Many of them use too few or many items of a particular size (in particular the example packing uses too many items of size 3 / 8 )

  48. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used • However, not all these different packings are valid Many of them use too few or many items of a particular size (in particular the example packing uses too many items of size 3 / 8 ) • We check each of the different packings to see if it is valid

  49. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used • However, not all these different packings are valid Many of them use too few or many items of a particular size (in particular the example packing uses too many items of size 3 / 8 ) • We check each of the different packings to see if it is valid and output the valid one which uses the fewest bins

  50. c b items fit in each bin A special case of B IN P ACKING c s diff. item sizes 0 × Type 1 4 3 3 3 7 7 8 0 × Type 2 8 8 8 4 8 8 1 × Type 3 3 3 3 3 8 8 8 8 8 2 × Type 4 6 3 4 4 5 5 5 3 × Type 5 1 × Type 6 • We can completely describe any packing of S into b � n bins 0 × Type 7 by the number of bins of each type used • However, not all these different packings are valid Many of them use too few or many items of a particular size (in particular the example packing uses too many items of size 3 / 8 ) • We check each of the different packings to see if it is valid and output the valid one which uses the fewest bins • This takes O ( n · ( n + 1) ( c b +1) cs ) time and exactly solves B IN P ACKING (i.e. it outputs an optimal packing)

  51. Towards an APTAS The APTAS for B IN P ACKING will use a four step process: Step 1 Remove all the small items Only c b of the remaining large items will fit into a single bin Step 2 Divide the items into a constant number of groups Sizes of items in each group are then rounded up to match the size of the largest member (and the largest group is removed) This will leave only c s different item sizes Step 3 Use the poly-time algorithm to optimally pack the remaining special case the constants c b and c s will depend on ǫ Step 4 Reverse the grouping from Step 2 and then greedily pack all the small items removed in Step 1 Remember that the goal is to use b bins where Opt � b � (1 + ǫ ) · Opt + c (for some c )

  52. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or

  53. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 )

  54. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily

  55. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily

  56. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or pack the small items anywhere you like - just but don’t use an extra bin unless you have to After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily

  57. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily

  58. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily Either: We don’t use any extra bins or every bin (except possibly the last) is 1 − ( ǫ/ 2) full

  59. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily Either: We don’t use any extra bins or every bin (except possibly the last) is 1 − ( ǫ/ 2) full

  60. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily Either: We don’t use any extra bins or every bin (except possibly the last) is 1 − ( ǫ/ 2) full

  61. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily Either: We don’t use any extra bins or every bin (except possibly the last) is 1 − ( ǫ/ 2) full

  62. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or small items don’t fit in here (so they are very well packed) After packing of large items ( > ǫ/ 2 ) we pack the small items ( � ǫ/ 2 ) on top of the large items greedily 1 − ǫ 2 Either: We don’t use any extra bins or every bin (except possibly the last) is 1 − ( ǫ/ 2) full

  63. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or small items don’t fit in here (so they are very well packed) After packing of large items ( > ǫ/ 2 ) this is the +1 we pack the small items ( � ǫ/ 2 ) on top of the large items greedily 1 − ǫ 2 Either: We don’t use any extra bins or every bin (except possibly the last) is 1 − ( ǫ/ 2) full

  64. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or We can now ignore all the small items and focus on finding a good packing of the large items

  65. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or We can now ignore all the small items and focus on finding a good packing of the large items How many large items fit in a single bin?

  66. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or We can now ignore all the small items and focus on finding a good packing of the large items How many large items fit in a single bin? Each large item is larger than ǫ/ 2 . . .

  67. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or We can now ignore all the small items and focus on finding a good packing of the large items How many large items fit in a single bin? Each large item is larger than ǫ/ 2 . . . so at most 2 /ǫ

  68. Removing the small items Lemma Let 0 < ǫ < 1 . Given a packing of the items a ∈ S with size a > ǫ/ 2 into b bins, in polynomial time we can find a packing of all items in S which either uses: b bins (1 + ǫ )Opt + 1 bins or We can now ignore all the small items and focus on finding a good packing of the large items How many large items fit in a single bin? Each large item is larger than ǫ/ 2 . . . so at most 2 /ǫ which is a constant :)

Recommend


More recommend