Online and Approximation Algorithms for Bin-Packing and Knapsack - - PowerPoint PPT Presentation

online and approximation algorithms for bin packing and
SMART_READER_LITE
LIVE PREVIEW

Online and Approximation Algorithms for Bin-Packing and Knapsack - - PowerPoint PPT Presentation

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems Xin Han Iwama Lab, School of Informatics, Kyoto University, Kyoto 606-8501, Japan Online and Approximation Algorithms for Bin-Packing and Knapsack Problems p.1/57


slide-1
SLIDE 1

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems

Xin Han Iwama Lab, School of Informatics, Kyoto University, Kyoto 606-8501, Japan

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.1/57

slide-2
SLIDE 2

Outline

  • 1. Definitions, backgrounds
  • 2. Contributions
  • 3. Bin Packing with rejection problem
  • 4. Three dimensional strip packing problem

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.2/57

slide-3
SLIDE 3

NP-hard problems

The “million dollar” problem whether P = NP is still

  • pen in mathematics, theoretical computer science and
  • peration research.

All most people believe that there does not exist polynomial-time algorithms for this class of optimization problems. Hence one is constrained to develop and design polynomial-time approximation algorithms, i.e., by the algorithms we can find a solution near the optimal solution with polynomially running time.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.3/57

slide-4
SLIDE 4

Approximation ratioes

Let P be an optimization (minimization) problem. The approximation ratio of algorithm A is defined as:

RA = max

I { A(I)

Opt(I)} i.e., A(I) ≤ RA × Opt(I).

The asymptotic approximation ratio R∞

A of algorithm A is

defined as:

A(I) ≤ R∞

A × Opt(I) + C,

where I ranges over the set of all problems instances and

C is a constant.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.4/57

slide-5
SLIDE 5

PTAS and APTAS

For a given constant ǫ, if RA = (1 + ǫ) then A is PTAS, i.e.,

A(I) ≤ (1 + ǫ) · Opt(I).

if R∞

A = (1 + ǫ) then A is APTAS, i.e.,

A(I) ≤ (1 + ǫ) · Opt(I) + C.

PTAS = polynomial time approximation scheme. APTAS = asymptotic PTAS.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.5/57

slide-6
SLIDE 6

One dimensional bin packing problem

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆

.... .... 1 1 1

Input: a collection of one dimensional items with size at

most 1

Output: minimize the number of bins required.

Note that: This problem is NP-hard.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.6/57

slide-7
SLIDE 7

Main Results on 1BP

There are so many results on this problem, here, I just mentioned two important ones. APTAS was proposed by Vega and Lueker [Combinatorica81], was improved by Karmarker and Karp [FOCS82]. A linear online algorithm called Harmonic was obtained by Lee and Lee [JACM85].

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.7/57

slide-8
SLIDE 8

One dimensional knapsack problem

$ $ $ $ Knapsack

Input: a knapsack with a capacity B > 0 and a set of

items associated with a profit and a weight,

Output: find a subset of the items whose total size is

bounded by B and total profit is maximized. Note that: this problem is NP-hard too. If the number of knapsack is m then it is MKP (Multiple Knapsack Problem).

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.8/57

slide-9
SLIDE 9

My research

Contribute to the high dimensional variants of the two prob- lems, which are indeed substantially harder than the one- dimensional counterparts.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.9/57

slide-10
SLIDE 10

Strip packing problems

Given a set of rectangles with sides at most 1, How to pack them into a strip to minimize the height used?

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠

Notice: this problem is a strongly NP-Hard from the classical bin packing problem.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.10/57

slide-11
SLIDE 11

Contributions on 2d strip packing

Any offline bin packing algorithm can be applied to strip packing maintaining the same asymptotic worst-case ratio. An algorithm with R∞ ≈ 1.58889 for online strip packing is developed. The key idea is to transform two dimensional packing into

  • ne dimensional packing.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.11/57

slide-12
SLIDE 12

Contributions on 3D strip packing

I gave an approximation algorithm with R∞ ≈ 1.69103, which improved 2 + ǫ by Jansen and Solis-Oba at SODA 2006, and an APTAS for the case in which all items have square bases.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.12/57

slide-13
SLIDE 13

Two dimensional bin packing

A generalization of one dimensional bin packing,

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛

....

Input: give a collection of rectangles with size at most 1, Output: minimize the number of unit square bins to pack

all the rectangles.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.13/57

slide-14
SLIDE 14

Contributions on 2BP

If all the rectangles are squares, I improved R∞ from 2.24437 to 2.1439[WAOA2006]. If all the boxes are hybercutes, I improved R∞ from 2.9421 to 2.6852 [WAOA2006].

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.14/57

slide-15
SLIDE 15

Bin packing with rejections

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌

the number of bins plus the total cost

$ $ $

Input: a collection of items with a size and a rejected

cost

Output: minimize the number of bins used plus the total

cost of all the rejected items.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.15/57

slide-16
SLIDE 16

Contributions on BPR

I provided an APTAS which turns out to be more efficient than that of Epstein. Furthermore I extended the scheme to variable-sized bin packing with rejection.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.16/57

slide-17
SLIDE 17

Two Dimensional Orthogonal KP

Input: a collection of rectangles with a profit Output: maximize the total profit of the rectangles

packed into a two dimensional bin. The problem is NP-hard in the strong sense even if each item is an unweighted square (i.e., its profit is equal to its area).

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.17/57

slide-18
SLIDE 18

Contributions on 2D KP

For square cases, when the profit is equal to the area, For the offline case, I developed PTAS with K. Iwama and G. Zhang. For the online case with the removal condition, I proved that no online algorithm can achieve a better competitive ratio than (

√ 5 + 3)/2 ≈ 2.618 and gave an

  • nline algorithm with the competitive ratio 3.

The above results were published in WAOA2005.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.18/57

slide-19
SLIDE 19

Main topics in this talk

Bin packing with rejection problem 3D strip packing problem

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.19/57

slide-20
SLIDE 20

Bin packing with rejections

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌ ✌

the number of bins plus the total cost

$ $ $

Input: a collection of items with a size and a rejected

cost

Output: minimize the number of bins used plus the total

cost of all the rejected items.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.20/57

slide-21
SLIDE 21

Previous research on BPR

First studied by He and Dósa [2005]. APTAS was given by Epstein [2006].

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.21/57

slide-22
SLIDE 22

Our results

Bin packing with rejection is equivalent to multiple knapsack problem. I gave a fast APTAS with time complexity O(nǫ−2), which improved time complexity O(nO((ǫ−4)ǫ−1)) by Epstein. Our algorithm can be extended to variable-sized bin packing with rejection.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.22/57

slide-23
SLIDE 23

Notations

OPT(L) = OPTp(L) + OPTr(L), L Lr

p

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.23/57

slide-24
SLIDE 24

BPR ⇔ MKP

Let OPTp = i and L = Lp ∪ Lr,

OPT(L) = OPTp(L) + OPTr(L) = i + p(Lr) = i + p(L) − p(Lp)

If OPTp is known, then the BPR problem is equivalent to the multiple knapsack problem.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.24/57

slide-25
SLIDE 25

The basic ideas

Divide L into two parts L

p and L

r.

OPTr(L) ≤ p(L

r) ≤ (1 + ǫ)OPTr(L) + 1.

L

p ⇒ OPTp(L) bins.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.25/57

slide-26
SLIDE 26

Our algorithm

Guess the rejected cost and packing cost respectively. According to the costs, guess the rejected list. Pack the packing list by bin packing algorithms.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.26/57

slide-27
SLIDE 27

Guessing costp and costr

Select costp from set {0, 1, 2, ..., n}. Select costr from set {(1 + ǫ)i|0 ≤ i ≤

ln n ln(1+ǫ)}

So, costr and costp can be guessed in time O(ǫ−1n ln n) such that

costp = OPTp, OPTr ≤ costr ≤ (1 + ǫ)OPTr + 1.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.27/57

slide-28
SLIDE 28

Our algorithm

Guess the rejected cost and packing cost respectively. According to the costs, guess the rejected list. Pack the packing list by bin packing algorithms.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.28/57

slide-29
SLIDE 29

Guessing the rejected list (1)

Place every item with r > 1 ⇒ list L

p .

All items with r < 1/n ⇒ the rejected list L

r

1/n 1 L’

r

L’

p

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.29/57

slide-30
SLIDE 30

Guessing the rejected list (2)

Consider the remaining items with r in [1/n, 1]. Rounding down the rejection costs. Guessing rejected items. Testing the packed list.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.30/57

slide-31
SLIDE 31

Rounding down

Round a rejection cost r down to ¯

r, where b = (1 + ǫ)a.

r − r

1 1/n

b a

X

Then get h = O(ǫ−1 ln n) kinds of rejection costs and h kinds

  • f sublists Li.

L1 L2 L3 Li Lh ...

And all items in Li have ¯

r = (1+ǫ)i

n

.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.31/57

slide-32
SLIDE 32

Guessing the rejected items from Li

Guess Li’s contribution p(Ui) on the rejection cost costr. Divide Li into two parts.

Li ... Rejected sublist Packing List

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.32/57

slide-33
SLIDE 33

Guessing the rejected items from Li

Guess Li’s contribution

p(Ui) = {ki × ǫcostr

h

|ki = 0, ..., h/ǫ} on costr.

Pick the largest p(Ui)/ai items from Li and put them into

L

r, where ai = (1+ǫ)i n

is one item’s cost in Li.

L1 L2 L3 Li Lh ...

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.33/57

slide-34
SLIDE 34

Technical results (Skipped)

The number of all the candidates for p(Ui) can be bounded by O(nǫ−2). For the rejected list L

r, we have

costr ≤ p(L

r) ≤ (1 + O(ǫ))costr.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.34/57

slide-35
SLIDE 35

Testing the packed list

L

p ⇐ L − L

  • r. Then try to use APTAS to pack the items in L

p

into (1 + ǫ)costp + O(ǫ−2) bins. If “Yes” then return Lp′ and Lr′. Else try another tuple (p(U1), . . . , p(Uh)).

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.35/57

slide-36
SLIDE 36

Outline of our algorithm

Guess the packing cost costp and the rejection cost

costr such that costp = OPTp and OPTr ≤ costr ≤ (1 + ǫ)OPTr + 1.

Guess a rejected list L

r such that

costr ≤ p(L

r) ≤ (1 + O(ǫ))costr, and the remaining items

L − L

r can be packed costp bins.

Call APTAS to pack L − L

r and reject all items in L

r.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.36/57

slide-37
SLIDE 37

Theorems

Our algorithm is an APTAS with time complexity O(nǫ−2). There is an APTAS for variable-sized bin packing with rejection.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.37/57

slide-38
SLIDE 38

3d strip packing problem

1 1

Instance: Pack a set of 3d boxes with at most 1 in each dimension into a strip. (Orthogonal packing without rotations) Objective: minimize the height used.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.38/57

slide-39
SLIDE 39

Asymptotic approximation ratio

The asymptotic approximation ratio R∞

A = α if

A(L) ≤ α × OPT(L) + C.

Note that: a polynomial time algorithm A is APTAS, if for every ǫ > 0 R∞

A = 1 + ǫ.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.39/57

slide-40
SLIDE 40

Previous Results on 3SP

An algorithm with R∞

A = 3.25 was given by Li and Cheng

[SIAMComp.90]. Then they improved R∞

A to (1.69103...)2 ≈ 2.8596

[J.Alg92]. Further more, R∞

A was improved to 2.67, 2.64 by

Miyazawa and Wakabayashi [Alg97][LATIN04]. Recently, 2 + ǫ was given by Jansen and Solis-Oba [SODA06].

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.40/57

slide-41
SLIDE 41

Contributions on 3SP

I improved R∞

A from 2 + ǫ to 1.69103,

and gave an APTAS for the case in which all items have square bases. (skipped)

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.41/57

slide-42
SLIDE 42

Key ideas

  • 1. Transform 3d strip packing into 1d bin packing:

I3d → Ibp.

  • 2. Call a bin packing algorithm to deal with the instance

Ibp.

... c c 1 1

Guarantee OPT(I3d) ≤ 1.69103 × OPT(Ibp) + C.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.42/57

slide-43
SLIDE 43

Review: bin packing problem

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆

.... .... 1 1 1

The objective: minimize the number of bins required.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.43/57

slide-44
SLIDE 44

Harmonic algorithm for 1D BP

  • 1. Purposed in 80’s.
  • 2. Run in linear time with ǫ and n.
  • 3. Online algorithm.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.44/57

slide-45
SLIDE 45

Harmonic algorithm for 1D BP

If 1

2 < x ≤ 1 then call it type-1.

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆

....

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.45/57

slide-46
SLIDE 46

Harmonic algorithm for 1D BP

If 1

3 < x ≤ 1 2 then call it type-2.

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ✡ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛ ☛

....

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.46/57

slide-47
SLIDE 47

Harmonic algorithm for 1D BP

If

1 i+1 < x ≤ 1 i then call it type-i.

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠

....

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.47/57

slide-48
SLIDE 48

Harmonic algorithm for 1D BP

If 0 < x ≤ 1

k then call it type-k and use NF algorithm to pack

them into bins.

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ✆ ✆ ✆ ✆ ✝ ✝ ✝ ✝ ✞ ✞ ✞ ✞ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✟ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✡ ✡ ✡ ✡ ☛ ☛ ☛ ☛ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ✌ ✌ ✌ ✌ ✍ ✍ ✍ ✍ ✍ ✍ ✍ ✍ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✑ ✑ ✑ ✑ ✑ ✑ ✑ ✑ ✒ ✒ ✒ ✒ ✓ ✓ ✓ ✓ ✔ ✔ ✔ ✔ ✕ ✕ ✕ ✕ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✘ ✘ ✘ ✘ ✙ ✙ ✙ ✙ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✛ ✛ ✛ ✛ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✢ ✢ ✢ ✢ ✣ ✣ ✣ ✣ ✣ ✣ ✣ ✣ ✤ ✤ ✤ ✤ ✥ ✥ ✥ ✥ ✥ ✥ ✥ ✥ ✦ ✦ ✦ ✦ ✧ ✧ ✧ ✧ ✧ ✧ ✧ ✧ ★ ★ ★ ★ ✩ ✩ ✩ ✩ ✪ ✪ ✪ ✪

...

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.48/57

slide-49
SLIDE 49

HS–Harmonic slip algorithm

  • 1. Classification: divide all items into k groups

G1, G2, . . . , Gk.

  • 2. Transformation: pack all items into slips with height c

and length 1.

  • 3. Packing: view all slips as one dimensional items and

call PTAS to deal with them.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.49/57

slide-50
SLIDE 50

Classification

Given a box R = (l, w, h), we have

R ∈

  • Gi

1 i+1 < l ≤ 1 i , where 1 ≤ i < k.

Gk

  • therwise.

l h w

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.50/57

slide-51
SLIDE 51

HS–Harmonic slip algorithm

  • 1. Classification: divide all items into k groups

G1, G2, . . . , Gk.

  • 2. Transformation: pack all items into slips with height c

and length 1.

  • 3. Packing: view all slips as one dimensional items and

call PTAS to deal with them.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.51/57

slide-52
SLIDE 52

GNF algorithm for Gi (i=3)

Given Gi = (R1, R2, . . . , Rni) such that w1 ≥ w2 ≥ · · · ≥ wni, where 1 ≤ i < k − 1 1 take a slip with size (1, wy, c), where wy ← max{w(R)}, where R ∈ Gi. 2 divide this slip into i pieces of subslips of sizes ( 1

i , wy, c),

then pack items into subslips by NF .

X Z

1/3

c

w

y

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.52/57

slide-53
SLIDE 53

GNF algorithm for Gi

3 Update Gi by removing all items packed, then goto step 1 until all are packed.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.53/57

slide-54
SLIDE 54

HS–Harmonic slip algorithm

  • 1. Classification: divide all items into k groups

G1, G2, . . . , Gk.

  • 2. Transformation: pack all items into slips with height c

and length 1.

  • 3. Packing: view all slips as one dimensional items and

call PTAS to deal with them.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.54/57

slide-55
SLIDE 55

The final packing

... ... height width height c c width bin packing

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.55/57

slide-56
SLIDE 56

Results

Almost slips have the packed heights at least c − 1. The HS algorithm’s R∞ is 1.69103.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.56/57

slide-57
SLIDE 57

Conclusions

New algorithms for 2D, 3D strip packing problems. New algorithms for BPR and 2D BP problems. New results for 2D KP problems.

Online and Approximation Algorithms for Bin-Packing and Knapsack Problems – p.57/57