A tale of 2-dimensional (Guillotine) bin packing Nikhil Bansal (IBM) Andrea Lodi (Univ. of Bologna,...

Preview:

Citation preview

A tale of 2-dimensional (Guillotine) bin packing

Nikhil Bansal (IBM) Andrea Lodi (Univ. of Bologna, Italy)Maxim Sviridenko (IBM)

2-d bin Packing ProblemGiven: Collection of rectangles (by height, width)Goal : Pack in min # of unit square bins

Rectangles parallel to bin edges Cannot be rotated

1

4

6

53 2

Rectangles

Bins

12 3

4 56

123

45

6

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.

23

1 5

3

6

1

2

4

2-stage 4-stage

Non-guillotine Packing

1

23

4

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 ratio1-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()

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]

Shelf Packing

Our Result

APTAS for arbitrary 2-d guillotine packing

1) Approximate with O(1) stage packing2) APTAS for O(1) stage packing.

Bit surprising as no APTASfor general 2-d packing.

A large stage guillotine packing

Talk outline

APTAS for 1-d packing

APTAS for square packingAPTAS for strip packing

Why no APTAS for general 2-d packing ?

Our algorithm and analysis

Grouping and roundingFractional packingSize classification

1-d: Rounding to simple instance

Partition big into O(1) groups, with equal objects

0 1

0 1I’

I

. . .

I’ ¸ I

1-d: Rounding to a simpler instance

Partition big into O(1) groups, with equal objects

0 1

0 1I’

I

. . .

I’ ¸ I I’ – { } · I

I’ ¼ I I’ can be solved optimally

Filling in smalls

Take solution on bigs. Fill in smalls (i.e. <) greedily.

1) If no more bins need, already optimum.2) 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

12

3

45

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.

0 1

3

width

cum

ula

tive h

eig

ht

Square Packing: (Small, big) not enough

0 1I

Various square sizes

Identical to 1-d case:Round bigs, easy to solve exactly

Problem: Not clear how to pack smallin gaps without waste?

Small, medium and big

General 2-d Packing

Packing with arbitrary rectangles1.698… [Caprara 02]

No APTAS (from 3D Matching)[B., Sviridenko 04]

0 1

1 no order

width

heig

htEach item has unique identity

Bin packs well if and only if the “right” items chosen

Guillotine Packing

Arbitrary -> O(1) stage packings[Transformation Procedure]

APTAS for O(1) stage packings.[ Rounding relies on Opt’s structure]

Size Classification

H

V B

S

Big: Width > , Height > Horizontal: Width > , Height << Vertical: Height > , Width <<

Rest medium: O() area, ignored

Ignore smallsAllow V and H to be fractionally packed (individual identities not so important)

V

H

<<

medium

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 HSince fractional (structure does not matter), can prune the tree.

12

3 4

1

2

3 4 Guillotine Tree: Leaf = object, Interior node = region

APTAS for O(1) stage packingLemma: 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 typesApply 1-d rounding recursively on regions

Round heights of shelves(width irrelevant)

There is an almost Opt solution with O(1) different region types

Concluding Remarks

Extensions: 90 degree rotations are allowed (using ideasof Van Stee, Jansen 05)

Running time: n raised to a huge tower of 1/ ’sCan 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 ?

Questions ?

Recommended