polynomiality for bin packing with a constant number of
play

Polynomiality for Bin Packing with a Constant Number of Item Types - PowerPoint PPT Presentation

Polynomiality for Bin Packing with a Constant Number of Item Types Michel X. Goemans & Thomas Rothvo MIP 2013, Madison Bin Packing / Cutting Stock Input: item 1 . . . item d Bin Packing / Cutting Stock Input: Item sizes s 1 , . . .


  1. Polynomiality for Bin Packing with a Constant Number of Item Types Michel X. Goemans & Thomas Rothvoß MIP 2013, Madison

  2. Bin Packing / Cutting Stock Input: item 1 . . . item d

  3. Bin Packing / Cutting Stock Input: ◮ Item sizes s 1 , . . . , s d ∈ [0 , 1] Input: s 1 item 1 . . . item d

  4. Bin Packing / Cutting Stock Input: ◮ Item sizes s 1 , . . . , s d ∈ [0 , 1] ◮ Multiplicities a 1 , . . . , a d ∈ N a 1 many Input: s 1 item 1 . . . item d

  5. Bin Packing / Cutting Stock Input: ◮ Item sizes s 1 , . . . , s d ∈ [0 , 1] ◮ Multiplicities a 1 , . . . , a d ∈ N Goal: Pack items into minimum number of bins of size 1. a 1 many Input: s 1 item 1 . . . item d Solution: 1 bin 1 . . .

  6. Bin Packing / Cutting Stock Input: ◮ Item sizes s 1 , . . . , s d ∈ [0 , 1] ◮ Multiplicities a 1 , . . . , a d ∈ N Goal: Pack items into minimum number of bins of size 1. a 1 many Input: s 1 item 1 . . . item d Solution: 1 bin 1 . . .

  7. Bin Packing / Cutting Stock Input: ◮ Item sizes s 1 , . . . , s d ∈ [0 , 1] ◮ Multiplicities a 1 , . . . , a d ∈ N Goal: Pack items into minimum number of bins of size 1. a 1 many Input: s 1 item 1 . . . item d Solution: 1 bin 1 . . .

  8. Bin Packing / Cutting Stock Input: ◮ Item sizes s 1 , . . . , s d ∈ [0 , 1] ◮ Multiplicities a 1 , . . . , a d ∈ N Goal: Pack items into minimum number of bins of size 1. a 1 many Input: s 1 item 1 . . . item d Solution: 1 bin 1 . . .

  9. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79]

  10. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79] ◮ Asymptotic FPTAS OPT + O (log 2 d ) [Karmarkar & Karp ’82] OPT + O (log d · log log d ) [R. ’13] (running time poly( � d i =1 a i ))

  11. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79] ◮ Asymptotic FPTAS OPT + O (log 2 d ) [Karmarkar & Karp ’82] OPT + O (log d · log log d ) [R. ’13] (running time poly( � d i =1 a i )) ◮ ∈ NP [Eisenbrand & Shmonin ’06]

  12. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79] ◮ Asymptotic FPTAS OPT + O (log 2 d ) [Karmarkar & Karp ’82] OPT + O (log d · log log d ) [R. ’13] (running time poly( � d i =1 a i )) ◮ ∈ NP [Eisenbrand & Shmonin ’06] For constant d :

  13. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79] ◮ Asymptotic FPTAS OPT + O (log 2 d ) [Karmarkar & Karp ’82] OPT + O (log d · log log d ) [R. ’13] (running time poly( � d i =1 a i )) ◮ ∈ NP [Eisenbrand & Shmonin ’06] For constant d : ◮ Polytime for d = 2 [McCormick, Smallwood, Spieksma ’97]

  14. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79] ◮ Asymptotic FPTAS OPT + O (log 2 d ) [Karmarkar & Karp ’82] OPT + O (log d · log log d ) [R. ’13] (running time poly( � d i =1 a i )) ◮ ∈ NP [Eisenbrand & Shmonin ’06] For constant d : ◮ Polytime for d = 2 [McCormick, Smallwood, Spieksma ’97] ◮ OPT + 1 in time 2 2 O ( d ) · poly [Jansen & Solis-Oba ’10]

  15. Polynomial time algorithms For general d : ◮ NP -hard to distinguish OPT ≤ 2 or OPT ≥ 3 [Garey & Johnson ’79] ◮ Asymptotic FPTAS OPT + O (log 2 d ) [Karmarkar & Karp ’82] OPT + O (log d · log log d ) [R. ’13] (running time poly( � d i =1 a i )) ◮ ∈ NP [Eisenbrand & Shmonin ’06] For constant d : ◮ Polytime for d = 2 [McCormick, Smallwood, Spieksma ’97] ◮ OPT + 1 in time 2 2 O ( d ) · poly [Jansen & Solis-Oba ’10] Open problem [ES’06, MSS’97, F’07] Solvable in poly-time for d = 3?

  16. b b b b b b b b b b b b b b b b b b b b b b b b b A geometric view ◮ Define P = { x ∈ R d ≥ 0 | s T x ≤ 1 } a R d s T x ≤ 1 P

  17. b b b b b b b b b b b b b b b b b b b b b b b b b A geometric view ◮ Define P = { x ∈ R d ≥ 0 | s T x ≤ 1 } a R d s T x ≤ 1 1 2 P

  18. b b b b b b b b b b b b b b b b b b b b b b b b b A geometric view ◮ Define P = { x ∈ R d ≥ 0 | s T x ≤ 1 } a R d s T x ≤ 1 1 2 P

  19. b b b b b b b b b b b b b b b b b b b b b b b b b A geometric view ◮ Define P = { x ∈ R d ≥ 0 | s T x ≤ 1 } a R d s T x ≤ 1 1 2 P

  20. b b b b b b b b b b b b b b b b b b b b b b b b b A geometric view ◮ Define P = { x ∈ R d ≥ 0 | s T x ≤ 1 } a R d s T x ≤ 1 1 2 P Problems: ◮ Points in P exponentially many

  21. b b b b b b b b b b b b b b b b b b b b b b b b b A geometric view ◮ Define P = { x ∈ R d ≥ 0 | s T x ≤ 1 } a R d s T x ≤ 1 1 2 P Problems: ◮ Points in P exponentially many ◮ Weights can be exponential

  22. Main results Theorem (Goemans, R. ’13) Bin Packing with d = O (1) item sizes can be solved in poly-time . Solves question by ◮ [McCormick, Smallwood, Spieksma ’97]: “ might be NP -hard for d = 3” ◮ [Eisenbrand & Shmonin ’06] ◮ [Filippi ’07]: “ hard open problem for general d ”

  23. Main results (2) ◮ Def.: int.cone( X ) := { � x ∈ X λ x · x | λ x ∈ Z ≥ 0 }

  24. b b b b b b b b b b b Main results (2) ◮ Def.: int.cone( X ) := { � x ∈ X λ x · x | λ x ∈ Z ≥ 0 } Theorem (Goemans, R. ’13) For fixed-dim. polytopes P, Q ⊆ R d , testing int.cone( P ∩ Z d ) ∩ Q � = ∅ is doable in poly-time (actually inputlength 2 O ( d ) ). Q P 0

  25. b b b b b b b b b b b Main results (2) ◮ Def.: int.cone( X ) := { � x ∈ X λ x · x | λ x ∈ Z ≥ 0 } Theorem (Goemans, R. ’13) For fixed-dim. polytopes P, Q ⊆ R d , testing int.cone( P ∩ Z d ) ∩ Q � = ∅ is doable in poly-time (actually inputlength 2 O ( d ) ). Q P 2 0 1

  26. b b b b b b b b b b b Main results (2) ◮ Def.: int.cone( X ) := { � x ∈ X λ x · x | λ x ∈ Z ≥ 0 } Theorem (Goemans, R. ’13) For fixed-dim. polytopes P, Q ⊆ R d , testing int.cone( P ∩ Z d ) ∩ Q � = ∅ is doable in poly-time (actually inputlength 2 O ( d ) ). Q P 2 0 1

  27. b b b b b b b b b b b Main results (2) ◮ Def.: int.cone( X ) := { � x ∈ X λ x · x | λ x ∈ Z ≥ 0 } Theorem (Goemans, R. ’13) For fixed-dim. polytopes P, Q ⊆ R d , testing int.cone( P ∩ Z d ) ∩ Q � = ∅ is doable in poly-time (actually inputlength 2 O ( d ) ). Q P 2 0 1

  28. b b b b b b b b b b b Main results (2) ◮ Def.: int.cone( X ) := { � x ∈ X λ x · x | λ x ∈ Z ≥ 0 } Theorem (Goemans, R. ’13) For fixed-dim. polytopes P, Q ⊆ R d , testing int.cone( P ∩ Z d ) ∩ Q � = ∅ is doable in poly-time (actually inputlength 2 O ( d ) ). Q P 2 0 1 ◮ For Bin Packing: � x � � a � P := { | s T x ≤ 1 , x ≥ 0 } and Q := { } 1 OPT

  29. b b b b b b b b b b b b b b Int. conic combinations Theorem (Eisenbrand & Shmonin ’06) If P ⊆ R d convex, then any integer conic combination � a = λ x · x x ∈ P ∩ Z d needs at most 2 d points. P

  30. b b b b b b b b b b b b b b Int. conic combinations Theorem (Eisenbrand & Shmonin ’06) If P ⊆ R d convex, then any integer conic combination � a = λ x · x x ∈ P ∩ Z d needs at most 2 d points. ◮ Suppose | supp( λ ) | > 2 d P

  31. b b b b b b b b b b b b b b Int. conic combinations Theorem (Eisenbrand & Shmonin ’06) If P ⊆ R d convex, then any integer conic combination � a = λ x · x x ∈ P ∩ Z d needs at most 2 d points. ◮ Suppose | supp( λ ) | > 2 d P x ◮ Take points x, y ∈ supp( λ ) of same parity y

  32. b b b b b b b b b b b b b b Int. conic combinations Theorem (Eisenbrand & Shmonin ’06) If P ⊆ R d convex, then any integer conic combination � a = λ x · x x ∈ P ∩ Z d needs at most 2 d points. ◮ Suppose | supp( λ ) | > 2 d P x ◮ Take points x, y ∈ supp( λ ) of same parity z ◮ Midpoint z = 1 2 ( x + y ) ∈ P ∩ Z d y

  33. b b b b b b b b b b b b b b Int. conic combinations Theorem (Eisenbrand & Shmonin ’06) If P ⊆ R d convex, then any integer conic combination � a = λ x · x x ∈ P ∩ Z d needs at most 2 d points. ◮ Suppose | supp( λ ) | > 2 d P x ◮ Take points x, y ∈ supp( λ ) of same parity − 1 z ◮ Midpoint z = 1 2 ( x + y ) ∈ P ∩ Z d +2 y ◮ Move weight from x, y to z − 1

  34. b b b b b b b b b b b b b b Int. conic combinations Theorem (Eisenbrand & Shmonin ’06) If P ⊆ R d convex, then any integer conic combination � a = λ x · x x ∈ P ∩ Z d needs at most 2 d points. ◮ Suppose | supp( λ ) | > 2 d P x ◮ Take points x, y ∈ supp( λ ) of same parity − 1 z ◮ Midpoint z = 1 2 ( x + y ) ∈ P ∩ Z d +2 y ◮ Move weight from x, y to z − 1 ◮ Potential function � x λ x f ( x ) decreases ( f strictly convex)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend