320 likes | 963 Views
A tale of 2-dimensional (Guillotine) bin packing . Nikhil Bansal (IBM) Andrea Lodi (Univ. of Bologna, Italy) Maxim Sviridenko (IBM). 2-d bin Packing Problem. Given: Collection of rectangles (by height, width) Goal : Pack in min # of unit square bins
E N D
A tale of 2-dimensional (Guillotine) bin packing Nikhil Bansal (IBM) Andrea Lodi (Univ. of Bologna, Italy) Maxim Sviridenko (IBM)
2-d bin Packing Problem Given: Collection of rectangles (by height, width) Goal : Pack in min # ofunit square bins • Rectangles parallel to bin edges • Cannot berotated Rectangles 4 5 3 6 1 2 6 6 1 1 2 2 Bins 3 3 4 4 5 5
Many Applications • Cloth cutting, steel cutting, wood cutting • Truck Loading • Placing ads in newspapers • Memory allocation in paging systems • …
Guillotine Bin Packing Guillotine Cut: Edge to Edge cut across a bin
Guillotine Bin Packing Guillotine Cut: Edge to Edge cut across a bin k-stage Guillotine Packing[Gilmore, Gomory] k recursive levels of guillotine cuts to recover all items. 2 3 3 2 1 5 4 1 6 2-stage 4-stage
3 2 4 1 Non-guillotine Packing
Motivation for Guillotine Packings Practical constraint (simplicity of cutting tool) Many heuristics are “small” stage packing algorithms Many column generation techniques Nice combinatorial properties (2-stage: Shelf Packing) Shelf Packing
Asymptotic approximation ratio 1-d Packing: Cannot distinguish in poly time if need 2 or 3 bins (Partition Problem) Asymptotic Approximation ratio (): If Alg (I) ·¢ Opt(I) + O(1) Asymptotic PTAS: If Alg(I) ·(1+) Opt(I) + f()
Shelf Packing Previous Work on APTASes 1-d Packing: (1+) Opt + 1 [de La Vega, Lueker 81] Strip Packing: APTAS [Kenyon, Remila 96] Square Packing: APTAS [B, Sviridenko 04] [ Correa, Kenyon 04] General 2-d Packing: No APTAS [B, Sviridenko 04] 2-stage (or Shelf) Packing: APTAS [Caprara, Lodi, Monaci 05]
Our Result APTAS for arbitrary 2-d guillotine packing • Approximate with O(1) stage packing • APTAS for O(1) stage packing. Bit surprising as no APTAS for general 2-d packing. A large stage guillotine packing
Talk outline APTAS for 1-d packing APTAS for square packing APTAS for strip packing Why no APTAS for general 2-d packing ? Our algorithm and analysis Grouping and rounding Fractional packing Size classification
1-d: Rounding to simple instance Partition big into O(1) groups, with equal objects I 0 1 . . . I’ 0 1 I’ ¸ I
1-d: Rounding to a simpler instance Partition big into O(1) groups, with equal objects I 0 1 . . . I’ 0 1 I’ ¸ I I’ – { } · I I’ ¼ I I’ can be solved optimally
Filling in smalls Take solution on bigs. Fill in smalls (i.e. <) greedily. • If no more bins need, already optimum. • If yes, every bin (except maybe 1) filled to 1- Alg(I) · Size(I)/(1-) +1 · Opt/(1-) +1
Strip Packing (Cutting Stock) Given rectangles (height · 1, width · 1) Strip: Width 1, infinite height Place rectangles (no rotation) to minimize height 1 2 4 5 3 6
Strip Packing Kenyon Remila 96: (1+) Opt + 1/2 Key insight: Can split a rectangle arbitrarily along the height Individual height does not matter. 3 cumulative height 0 1 width
Square Packing: (Small, big) not enough I 0 1 Various square sizes Identical to 1-d case: Round bigs, easy to solve exactly Problem: Not clear how to pack small in gaps without waste? Small, medium and big
General 2-d Packing Packing with arbitrary rectangles 1.698… [Caprara 02] No APTAS (from 3D Matching) [B., Sviridenko 04] 1 no order Each item has unique identity Bin packs well if and only if the “right” items chosen height 0 1 width
Guillotine Packing Arbitrary -> O(1) stage packings [Transformation Procedure] APTAS for O(1) stage packings. [ Rounding relies on Opt’s structure]
Size Classification Big: Width > , Height > Horizontal: Width > , Height << Vertical: Height > , Width << Rest medium: O() area, ignored B V medium S H << V Ignore smalls Allow V and H to be fractionally packed (individual identities not so important) H
Transformation procedure (Idea) If only bigs (i.e. (h,w) > ) -> depth < 1/, degree < 1/ If high depth or degree, lots of regions corresponding to V or H Since fractional (structure does not matter), can prune the tree. 2 1 1 3 4 2 Guillotine Tree: Leaf = object, Interior node = region 3 4
APTAS for O(1) stage packing Lemma: Almost Opt solution with O(1) different types of regions. Do not know Opt, but can guess regions from a polynomially large set. k=O(1) possible types of guillotine trees (O(1) stage, O(1) degree, O(1) different regions) Guess n1 , n2, …, nk : number of each tree type used. Matching rectangles to leaves in the trees Make V, H integral. Packing S (smalls) suitably.
Constant number of region types Apply 1-d rounding recursively on regions Round heights of shelves (width irrelevant) There is an almost Opt solution with O(1) differentregion types
Concluding Remarks Extensions: 90 degree rotations are allowed (using ideas of Van Stee, Jansen 05) Running time:n raised to a huge tower of 1/’s Can the algorithm be made practical? Can use to improve guarantee for general 2-d packing? 1.698… [Caprara 02] Best known gap between guillotine and general is 4/3 ?