• Nenhum resultado encontrado

Approximation Algorithms for Circle Packing

N/A
N/A
Protected

Academic year: 2022

Share "Approximation Algorithms for Circle Packing"

Copied!
156
0
0

Texto

(1)

Packing

Flávio K. Miyazawa unicamp

São Paulo School of Advanced Science on Algorithms, Combinatorics and Optimization

São Paulo, SP July, 2016

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 1 / 57

(2)

Circle Packing Problems Basic Algorithms

Circle Bin Packing

Bounded Space Online Bin Packing

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 2 / 57

(3)

Main references

•F. K. Miyazawa, L. L. C. Pedrosa, R. C. S. Schouery, M. Sviridenko, Y. Wakabayashi. Polynomial-Time Approximation Schemes for Circle and Other Packing Problems. Algorithmica. To appear.

•P. H. Hokama, F. K. Miyazawa and R. C. S. Schouery. A bounded space algorithm for online circle packing. Information Processing Letters, 116, p. 337-342, 2016.

This work also obtained collaboration fromLehilton L. C. Pedrosa, Maxim Sviridenko, Rafael C. S. Schouery, Pedro H. Hokamaand Yoshiko Wakabayashi.

My thanks to Lehilton Pedrosa and Rafael Schouery that also contributed to part of these slides. This work obtained support from CNPq, FAPESP, UNICAMP, USP.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 3 / 57

(4)

Circle Packing Problems

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 4 / 57

(5)

Packings

Given:

I A list of geometrical itemsL and bins B

I Obtain agood packing of items inL into bin B ∈ B

I The inner region of two packed items cannot overlap

I Each packed item must be totally contained in the bin

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 5 / 57

(6)

Problems

Circle Strip Packing

I Input: List of circles L= (c1, . . . ,cn)

I Output: Packing of L into a rectangle of width 1 and minimum height.

Minimize

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 6 / 57

(7)

Problems

Circle Bin Packing

I Input: List of circles L= (c1, . . . ,cn)

I Output: Packing of L into the minimum number of unit bins.

Minimize

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 7 / 57

(8)

Some Applications

I Cutting and Packing of circular items

I Transportation of tubes, cilinders,...

I Cable assembly/allocations

I Tree plantation

I Origami design

I Marketing

I Cylinder pallet assembly

I . . .

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 8 / 57

(9)

Marketing

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 9 / 57

(10)

Computational Complexity

Demaine, Fekete, Lang’10: To decide if a set of circles can be packed into a square is NP-hard.

Approximation Algorithms:

I Efficient Algorithms (polynomial time)

I Analysis: Howfar from the optimum solution value ?

I

Compromise:

Computational Time × Solution Quality

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 10 / 57

(11)

Computational Complexity

Demaine, Fekete, Lang’10: To decide if a set of circles can be packed into a square is NP-hard.

Approximation Algorithms:

I Efficient Algorithms (polynomial time)

I Analysis: Howfar from the optimum solution value ?

I

Compromise:

Computational Time × Solution Quality

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 10 / 57

(12)

Computational Complexity

Demaine, Fekete, Lang’10: To decide if a set of circles can be packed into a square is NP-hard.

Approximation Algorithms:

I Efficient Algorithms (polynomial time)

I Analysis: Howfar from the optimum solution value ?

I

Compromise:

Computational Time × Solution Quality

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 10 / 57

(13)

Computational Complexity

Demaine, Fekete, Lang’10: To decide if a set of circles can be packed into a square is NP-hard.

Approximation Algorithms:

I Efficient Algorithms (polynomial time)

I Analysis: Howfar from the optimum solution value ?

I

Compromise:

Computational Time × Solution Quality

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 10 / 57

(14)

Approximation Algorithms

I A(I) Value of the solution produced by A for instance I

I OPT(I) Value of an optimum solution of I

I A has approximation factor α if

I A has asymptotic approximation factorα if

for some constantβ

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 11 / 57

(15)

Approximation Algorithms

I A(I) Value of the solution produced by A for instance I

I OPT(I) Value of an optimum solution of I

I A has approximation factor α if

A(I)

OPT(I) α for any instanceI OPT(I)

A(I)

Minimize

I A has asymptotic approximation factorα if

for some constantβ

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 11 / 57

(16)

Approximation Algorithms

I A(I) Value of the solution produced by A for instance I

I OPT(I) Value of an optimum solution of I

I A has approximation factor α if

A(I)

OPT(I) α for any instanceI OPT(I)

A(I)

Minimize

I A has asymptotic approximation factorα if

A(I)≤αOPT(I) +β for any instance I, for some constantβ

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 11 / 57

(17)

Approximation Algorithms

For Minimization Problems

PTAS:Polynomial Time Approximation Scheme

I A family of polynomial time algorithms Aε, ε >0, is a polynomial time approximation schemeif

Aε(I)≤(1+ε)OPT(I), for any instance I

APTAS: Asymptotic Polynomial Time Approximation Scheme

I A family of algorithmsAε,ε > 0 is an asymptotic polynomial time approximation schemeif

Aε(I)≤(1+ε)OPT(I) +βε, for any instance I where βε is a constant that depends only on ε

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 12 / 57

(18)

Approximation Algorithms

For Minimization Problems

PTAS:Polynomial Time Approximation Scheme

I A family of polynomial time algorithms Aε, ε >0, is a polynomial time approximation schemeif

Aε(I)≤(1+ε)OPT(I), for any instance I

APTAS: Asymptotic Polynomial Time Approximation Scheme

I A family of algorithmsAε,ε > 0 is an asymptotic polynomial time approximation schemeif

Aε(I)≤(1+ε)OPT(I) +βε, for any instance I where βε is a constant that depends only on ε

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 12 / 57

(19)

Online Packing Algorithms

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 13 / 57

(20)

Online Packing Algorithms

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 13 / 57

(21)

Online Packing Algorithms

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 13 / 57

(22)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(23)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(24)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(25)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(26)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(27)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(28)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(29)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(30)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(31)

Online Circle Bin Packing

Example

9

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 14 / 57

(32)

Preliminaries

Some Notation

I Iff :D →R is a numerical function, we may write

I fe and f(e), indistictly

I f(S) as the valueP

e∈Df(e), there is no explicit definition

I Ifc is a circle and L= (c1, . . . ,cn) a list of circles, then

I c is also used to denote its radius

I ^c is the square with side lengths 2c

I L^ is the list L^ = (^c1, . . . ,^cn)

I max(L)is the maximum radiusof a circle in L

I Area(L) is the total areaof the circles inL

I Lis the list with |L| equal circles with radius max(L)

I Cis the set containingall lists of circlesfor the input problem

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 15 / 57

(33)

Preliminaries

Some Notation

I Iff :D →R is a numerical function, we may write

I fe and f(e), indistictly

I f(S) as the valueP

e∈Df(e), there is no explicit definition

I Ifc is a circle and L= (c1, . . . ,cn) a list of circles, then

I c is also used to denote its radius

I ^c is the square with side lengths 2c

I L^ is the list L^ = (^c1, . . . ,^cn)

I max(L)is the maximum radiusof a circle in L

I Area(L) is the total areaof the circles inL

I Lis the list with |L| equal circles with radius max(L)

I Cis the set containingall lists of circlesfor the input problem

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 15 / 57

(34)

Preliminaries

IfE is a packing or other geometrical composition, E may be considered as the solid structure

I width(E) is the width of E

I height(E) is the height of E First considerations

I We consider a more general computational model

I Possible to operate over polynomial solutions

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 16 / 57

(35)

Preliminaries

IfE is a packing or other geometrical composition, E may be considered as the solid structure

I width(E) is the width of E

I height(E) is the height of E First considerations

I We consider a more general computational model

I Possible to operate over polynomial solutions

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 16 / 57

(36)

Basic Algorithms

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 17 / 57

(37)

Area Lower Bound

I Circle Strip Packing with bin width 1

Opt

Area bound

I Circle Bin Packing with unit square bins

Optimum

Area Lower Bound

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 18 / 57

(38)

Area based algorithms

Let

C the set containing all lists of circles, and Qthe set containing all lists of squares

next algorithm is a circle versionCA from square packing algorithmA

CA(L)

1. Let P^ ←A(^L).

2. Let P the packing P^ replacing c^i by ci. 3. Return P.

Lemma. If A is a square packing algorithm and α, β are constants, st. A(S)≤αArea(S)+β, for any S ∈ Q

CA(L)≤α4

πArea(L) +β, for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 19 / 57

(39)

Area based algorithms

Let

C the set containing all lists of circles, and Qthe set containing all lists of squares

next algorithm is a circle versionCA from square packing algorithmA

CA(L)

1. Let P^ ←A(^L).

2. Let P the packing P^ replacing c^i by ci. 3. Return P.

Lemma. If A is a square packing algorithm and α, β are constants, st. A(S)≤αArea(S)+β, for any S ∈ Q

CA(L)≤α4

πArea(L) +β, for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 19 / 57

(40)

Area based algorithms

Let

C the set containing all lists of circles, and Qthe set containing all lists of squares

next algorithm is a circle versionCA from square packing algorithmA

CA(L)

1. Let P^ ←A(^L).

2. Let P the packing P^ replacing c^i by ci. 3. Return P.

Lemma. If A is a square packing algorithm and α, β are constants, st. A(S)≤αArea(S)+β, for any S ∈ Q

CA(L)≤α4

πArea(L) +β, for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 19 / 57

(41)

Area based algorithms

Best possible density

Hexagonal Packing

I Density π

12 ≈0.9069

Lemma. There is no algorithm with approximation factor, based only on area arguments, better than

12

π ≈1.10266

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 20 / 57

(42)

Using square packing algorithms

I Round each circleci to a square c^i:

I Use square packing algorithms

I Area increasing: Area(^Area(cci)

i) = π4 ≈1.27324

I Let L^ = (^c1, . . . ,^cn) the list L rounding each circle to a square

I Bounding the optimum with the area:

Area(^L) = 4

πArea(L)≤ 4

πOPT(L)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 21 / 57

(43)

Using square packing algorithms

I Round each circleci to a square c^i:

I Use square packing algorithms

I Area increasing: Area(^Area(cci)

i) = π4 ≈1.27324

I Let L^ = (^c1, . . . ,^cn) the list L rounding each circle to a square

I Bounding the optimum with the area:

Area(^L) = 4

πArea(L)≤ 4

πOPT(L)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 21 / 57

(44)

Using square packing algorithms

I Round each circleci to a square c^i:

I Use square packing algorithms

I Area increasing: Area(^Area(cci)

i) = π4 ≈1.27324

I Let L^ = (^c1, . . . ,^cn) the list L rounding each circle to a square

I Bounding the optimum with the area:

Area(^L) = 4

πArea(L)≤ 4

πOPT(L)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 21 / 57

(45)

Using square packing algorithms

I Round each circleci to a square c^i:

I Use square packing algorithms

I Area increasing: Area(^Area(cci)

i) = π4 ≈1.27324

I Let L^ = (^c1, . . . ,^cn) the list L rounding each circle to a square

I Bounding the optimum with the area:

Area(^L) = 4

πArea(L)≤ 4

πOPT(L)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 21 / 57

(46)

Using square packing algorithms

I Round each circleci to a square c^i:

I Use square packing algorithms

I Area increasing: Area(^Area(cci)

i) = π4 ≈1.27324

I Let L^ = (^c1, . . . ,^cn) the list L rounding each circle to a square

I Bounding the optimum with the area:

Area(^L) = 4

πArea(L)≤ 4

πOPT(L)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 21 / 57

(47)

Using square packing algorithms

Shelf Packing:

I Items are packed over shelves (of zero thickness)

I side by side in a leftmost way

I Items in a same shelf are packed at the same height.

I Items can be packed in a shelf S ifwidth(s) +width(S)≤1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 22 / 57

(48)

Using square packing algorithms

Shelf Packing:

I Items are packed over shelves (of zero thickness)

I side by side in a leftmost way

I Items in a same shelf are packed at the same height.

I Items can be packed in a shelf S ifwidth(s) +width(S)≤1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 22 / 57

(49)

Using square packing algorithms

Shelf Packing:

I Items are packed over shelves (of zero thickness)

I side by side in a leftmost way

I Items in a same shelf are packed at the same height.

I Items can be packed in a shelf S ifwidth(s) +width(S)≤1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 22 / 57

(50)

Using square packing algorithms

Shelf Packing:

I Items are packed over shelves (of zero thickness)

I side by side in a leftmost way

I Items in a same shelf are packed at the same height.

I Items can be packed in a shelf S ifwidth(s) +width(S)≤1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 22 / 57

(51)

Using square packing algorithms

NFDHs(L) #for Strip Packing

1. Sort L= (s1, . . . ,sn) st. s1 ≥ · · · ≥sn 2. For i ←1 to n:

3. Pack si into the last shelf,if possible 4. otherwise, packsi in a new shelf on top of

the previous shelf or bin’s bottom (in case

there is no previous shelf) mm+1

Lt Lk

L1

1 L2

s

Lemma. If L has only squares with side lengths at most 1/m NFDHs(L)≤ m+1m Area(L) +m1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 23 / 57

(52)

Using square packing algorithms

NFDHs(L) #for Strip Packing

1. Sort L= (s1, . . . ,sn) st. s1 ≥ · · · ≥sn 2. For i ←1 to n:

3. Pack si into the last shelf,if possible 4. otherwise, packsi in a new shelf on top of

the previous shelf or bin’s bottom (in case

there is no previous shelf) mm+1

Lt Lk

L1

1 L2

s

Lemma. If L has only squares with side lengths at most 1/m NFDHs(L)≤ m+1m Area(L) +m1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 23 / 57

(53)

Using square packing algorithms

Sketch.

Each of the firstk−1 shelves have width filled by at least m+1m LetLt the first shelf having square with side≤1/(m +1)

m m+1 Lt

Lk

L1

1 L2

s

• L1,. . .,Lt−1: m squares of side > m+11 , each.

• Lt, . . . ,Lk: width filled > 1−m+11 = m+1m , otherwise receive another item.

Sliding up squares inLi can cover all rectangular region of shelfLi+1, up to width m+1m .

(NFDHs(L) −height(L1)) m

m +1 ≤Area(L) So,

NFDHs(L)≤ m +1

m Area(L) +height(L1)≤ m +1

m Area(L) + 1 m

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 24 / 57

(54)

Using square packing algorithms

Sketch.

Each of the firstk−1 shelves have width filled by at least m+1m LetLt the first shelf having square with side≤1/(m +1)

m m+1 Lt

Lk

L1

1 L2

s

• L1,. . .,Lt−1: m squares of side > m+11 , each.

• Lt, . . . ,Lk: width filled > 1−m+11 = m+1m , otherwise receive another item.

Sliding up squares inLi can cover all rectangular region of shelfLi+1, up to width m+1m .

(NFDHs(L) −height(L1)) m

m +1 ≤Area(L) So,

NFDHs(L)≤ m +1

m Area(L) +height(L1)≤ m +1

m Area(L) + 1 m

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 24 / 57

(55)

Using square packing algorithms

Sketch.

Each of the firstk−1 shelves have width filled by at least m+1m LetLt the first shelf having square with side≤1/(m +1)

m m+1 Lt

Lk

L1

1 L2

s

• L1,. . .,Lt−1: m squares of side > m+11 , each.

• Lt, . . . ,Lk: width filled > 1−m+11 = m+1m , otherwise receive another item.

Sliding up squares inLi can cover all rectangular region of shelfLi+1, up to width m+1m .

(NFDHs(L) −height(L1)) m

m +1 ≤Area(L) So,

NFDHs(L)≤ m +1

m Area(L) +height(L1)≤ m +1

m Area(L) + 1 m

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 24 / 57

(56)

Using square packing algorithms

Sketch.

Each of the firstk−1 shelves have width filled by at least m+1m LetLt the first shelf having square with side≤1/(m +1)

m m+1 Lt

Lk

L1

1 L2

s

• L1,. . .,Lt−1: m squares of side > m+11 , each.

• Lt, . . . ,Lk: width filled > 1−m+11 = m+1m , otherwise receive another item.

Sliding up squares inLi can cover all rectangular region of shelfLi+1, up to width m+1m .

(NFDHs(L) −height(L1)) m

m +1 ≤Area(L) So,

NFDHs(L)≤ m +1

m Area(L) +height(L1)≤ m +1

m Area(L) + 1 m

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 24 / 57

(57)

Using square packing algorithms

Sketch.

Each of the firstk−1 shelves have width filled by at least m+1m LetLt the first shelf having square with side≤1/(m +1)

m m+1 Lt

Lk

L1

1 L2

s

• L1,. . .,Lt−1: m squares of side > m+11 , each.

• Lt, . . . ,Lk: width filled > 1−m+11 = m+1m , otherwise receive another item.

Sliding up squares inLi can cover all rectangular region of shelfLi+1, up to width m+1m .

(NFDHs(L) −height(L1)) m

m +1 ≤Area(L) So,

NFDHs(L)≤ m +1

m Area(L) +height(L1)≤ m +1

m Area(L) + 1 m

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 24 / 57

(58)

Using square packing algorithms

Sketch.

Each of the firstk−1 shelves have width filled by at least m+1m LetLt the first shelf having square with side≤1/(m +1)

m m+1 Lt

Lk

L1

1 L2

s

• L1,. . .,Lt−1: m squares of side > m+11 , each.

• Lt, . . . ,Lk: width filled > 1−m+11 = m+1m , otherwise receive another item.

Sliding up squares inLi can cover all rectangular region of shelfLi+1, up to width m+1m .

(NFDHs(L) −height(L1)) m

m +1 ≤Area(L) So,

NFDHs(L)≤ m +1

m Area(L) +height(L1)≤ m +1

m Area(L) + 1 m

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 24 / 57

(59)

Using square packing algorithms

Let

Cm the set of lists with small circles (diam. ≤1/m, m integer) Corollary. If L∈ Cm, then

CNFDHs(L)≤ m+1 m

4

πOPT(L) + 1 m ∀L Corollary. If L is a list of circles then

CNFDHs(L)≤2.548 OPT(L) +1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 25 / 57

(60)

Using square packing algorithms

Let

Cm the set of lists with small circles (diam. ≤1/m, m integer) Corollary. If L∈ Cm, then

CNFDHs(L)≤ m+1 m

4

πOPT(L) + 1 m ∀L Corollary. If L is a list of circles then

CNFDHs(L)≤2.548 OPT(L) +1

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 25 / 57

(61)

Rounding circles to circles

Algorithm EqualCircles(L) # all circles in Lhave a same size 1. Let P0 and P00 packings of L as below

2. Return packing P ∈{P0,P00}with minimum height.

Lemma. If all circles of L have radius r, then EqualCircles(L)≤1.654Area(L) +2r.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 26 / 57

(62)

Rounding circles to circles

Algorithm EqualCircles(L) # all circles in Lhave a same size 1. Let P0 and P00 packings of L as below

2. Return packing P ∈{P0,P00}with minimum height.

Lemma. If all circles of L have radius r, then EqualCircles(L)≤1.654Area(L) +2r.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 26 / 57

(63)

Rounding circles to circles

Idea: Circles with close radius are rounded up to the same radius Given L∈ C, L is the list with |L| circles with radius max(L) Algorithm Aε(L)

1. δ← ε6. 2. For i ≥0 do

3. Li ←{r ∈L: (1+δ)1/2i+1 <r ≤ (1+δ)1/2 i}. 4. Pi ←EqualCircles(Li).

5. P ←P0kP1kP2k. . . # concatenation of packings 6. Return P.

Theorem. Given ε >0, we have

Aε(L)≤(1.654+ε)Area(L) +Cε, for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 27 / 57

(64)

Rounding circles to circles

Idea: Circles with close radius are rounded up to the same radius Given L∈ C, L is the list with |L| circles with radius max(L) Algorithm Aε(L)

1. δ← ε6. 2. For i ≥0 do

3. Li ←{r ∈L: (1+δ)1/2i+1 <r ≤ (1+δ)1/2 i}. 4. Pi ←EqualCircles(Li).

5. P ←P0kP1kP2k. . . # concatenation of packings 6. Return P.

Theorem. Given ε >0, we have

Aε(L)≤(1.654+ε)Area(L) +Cε, for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 27 / 57

(65)

Online Circle Strip Packing

Online Packing

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Baker, Schwarz’83: For 0<p <1, there exists online algorithm CNFSp s.t.,

CNFSp(L)≤ 2.548

p OPT(L) + 1

p(1−p), for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 28 / 57

(66)

Online Circle Strip Packing

Online Packing

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Baker, Schwarz’83: For 0<p <1, there exists online algorithm CNFSp s.t.,

CNFSp(L)≤ 2.548

p OPT(L) + 1

p(1−p), for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 28 / 57

(67)

Online Circle Strip Packing

Online Packing

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Baker, Schwarz’83: For 0<p <1, there exists online algorithm CNFSp s.t.,

CNFSp(L)≤ 2.548

p OPT(L) + 1

p(1−p), for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 28 / 57

(68)

Online Circle Strip Packing

Online Packing

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Baker, Schwarz’83: For 0<p <1, there exists online algorithm CNFSp s.t.,

CNFSp(L)≤ 2.548

p OPT(L) + 1

p(1−p), for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 28 / 57

(69)

Online Circle Strip Packing

Online Packing

I Incoming items appears one after the other, sequentially

I An incoming item must be packed when it arrives, without the knowledge of further items

I Once an item is packed, it cannot be repacked again.

Baker, Schwarz’83: For 0<p <1, there exists online algorithm CNFSp s.t.,

CNFSp(L)≤ 2.548

p OPT(L) + 1

p(1−p), for any L∈ C

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 28 / 57

(70)

Circle Bin Packing

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 29 / 57

(71)

Rounding to squares

Adaptation of the strip packing version NFDHs. NFDHb(L) # For the bin packing version

1. SortL= (s1, . . . ,sn) st. s1 ≥ · · · ≥sn 2. For i ←1 to n:

3. Pack si in the last shelf (of the last bin), if possible 4. otherwise, packsi in a new shelf at the top of the

previous shelf, if possible

5. otherwise, packsi in a new shelf of a new bin.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 30 / 57

(72)

Rounding to squares

Meir, Moser’68. If all squares of L have side lengths at most m1 NFDHb(L)≤ m+1m 2

Area(L) +m+2m Proof: Exercise (analogous to the proof of NFDHs)

Corollary. For any list L∈ C with diameters at most m1 CNFDHb(L)≤ 4

π

m+1

m 2

Area(L)+m +2 m Corollary. For any list L∈ C

CNFDHb(L)≤5.1OPT(L)+3

Corollary. As radius of circles decrease, the density of the packing is improved andCNFDHb goes to 4/π≈1.27324.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 31 / 57

(73)

Rounding to squares

Meir, Moser’68. If all squares of L have side lengths at most m1 NFDHb(L)≤ m+1m 2

Area(L) +m+2m Proof: Exercise (analogous to the proof of NFDHs)

Corollary. For any list L∈ C with diameters at most m1 CNFDHb(L)≤ 4

π

m+1

m 2

Area(L)+m +2 m Corollary. For any list L∈ C

CNFDHb(L)≤5.1OPT(L)+3

Corollary. As radius of circles decrease, the density of the packing is improved andCNFDHb goes to 4/π≈1.27324.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 31 / 57

(74)

Rounding to squares

Meir, Moser’68. If all squares of L have side lengths at most m1 NFDHb(L)≤ m+1m 2

Area(L) +m+2m Proof: Exercise (analogous to the proof of NFDHs)

Corollary. For any list L∈ C with diameters at most m1 CNFDHb(L)≤ 4

π

m+1

m 2

Area(L)+m +2 m Corollary. For any list L∈ C

CNFDHb(L)≤5.1OPT(L)+3

Corollary. As radius of circles decrease, the density of the packing is improved andCNFDHb goes to 4/π≈1.27324.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 31 / 57

(75)

Rounding to squares

Meir, Moser’68. If all squares of L have side lengths at most m1 NFDHb(L)≤ m+1m 2

Area(L) +m+2m Proof: Exercise (analogous to the proof of NFDHs)

Corollary. For any list L∈ C with diameters at most m1 CNFDHb(L)≤ 4

π

m+1

m 2

Area(L)+m +2 m Corollary. For any list L∈ C

CNFDHb(L)≤5.1OPT(L)+3

Corollary. As radius of circles decrease, the density of the packing is improved andCNFDHb goes to 4/π≈1.27324.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 31 / 57

(76)

Bounded Space Online Bin Packing

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 32 / 57

(77)

Bounded Space Online Bin Packing

I Algorithms must be online

I At any moment, bins are classified as open or closed

I Only open bins can receive new items

I A bin starts open and once it became closed, it cannot be open again.

I The number of open bins is bounded by a constant

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 33 / 57

(78)

Bounded Space Online Bin Packing

Related results with asymptotic approximation:

I Lee and Lee: Algorithm with factor 1.69103for 1-dimensional items and

showed that no algorithm can have better performance

I Epstein, van Stee’07: Algorithms with factors 2.3722for packing squares and

3.0672for packing cubes.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 34 / 57

(79)

Bounded Space Online Bin Packing

Related results with asymptotic approximation:

I Lee and Lee: Algorithm with factor 1.69103for 1-dimensional items and

showed that no algorithm can have better performance

I Epstein, van Stee’07: Algorithms with factors 2.3722for packing squares and

3.0672for packing cubes.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 34 / 57

(80)

Bounded Space Online Bin Packing

We will see

I Algorithm withasymptotic approximation factor 2.44

I Lower bound of 2.29

Techniques

I Weighting system to obtain approximation factors

I Specific algorithms to deal with big and small circles

I Grouping circles to consider as equal circles

I Geometric Partitionto combine items of the same type

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 35 / 57

(81)

Bounded Space Online Bin Packing

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 36 / 57

(82)

Packing equal circles

Find the largestρ st. k circles of radius ρ can be packed in a unit square

ρ1 =0.5 ρ2 =0.2928 ρ3 =0.2543 ρ4 =0.1963

ρ5 =0.2071 ρ6 =0.1876 ρ7 =0.1744 ρ8 =0.1705

Previous results: It is known the exact values ofρn, for n ≤30 and good lower bounds for many.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 37 / 57

(83)

Packing equal circles

Find the largestρ st. k circles of radius ρ can be packed in a unit square

ρ1 =0.5 ρ2 =0.2928 ρ3 =0.2543 ρ4 =0.1963

ρ5 =0.2071 ρ6 =0.1876 ρ7 =0.1744 ρ8 =0.1705

Previous results: It is known the exact values ofρn, for n ≤30 and good lower bounds for many.

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 37 / 57

(84)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK

A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(85)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK

A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(86)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK

A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(87)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK

A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(88)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(89)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(90)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(91)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(92)

Packing big circles

Round up big circles to the nearest value of ρ (to bound the number of different circles)

I A circle is big if its radius is larger than 1/M

I Let ρi be the value of ρi, when it is known, otherwise, the best known lower bound.

I Let K be such that ρK+1 ≤1/M < ρK A circle r is of typei if:

I ρi+1 <r ≤ρi (for 1≤i <K)

I 1/M <r ≤ρK (for i =K)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 38 / 57

(93)

Packing big circles

I For1≤i ≤K, a c-bin of typei is a circular bin of radiusρi

I Circles of type i are packed in a c-bin of type i

I Packing in a c-bins of type 2

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 39 / 57

(94)

Packing big circles

I For1≤i ≤K, a c-bin of typei is a circular bin of radiusρi

I Circles of type i are packed in a c-bin of type i

I Packing in a c-bins of type 2

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 39 / 57

(95)

Packing big circles

I For1≤i ≤K, a c-bin of typei is a circular bin of radiusρi

I Circles of type i are packed in a c-bin of type i

I Packing in a c-bins of type 2

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 39 / 57

(96)

Packing big circles

I For1≤i ≤K, a c-bin of typei is a circular bin of radiusρi

I Circles of type i are packed in a c-bin of type i

I Packing in a c-bins of type 2

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 39 / 57

(97)

Packing big circles

I For1≤i ≤K, a c-bin of typei is a circular bin of radiusρi

I Circles of type i are packed in a c-bin of type i

I Packing in a c-bins of type 2

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 39 / 57

(98)

Algorithm - Part 1

To pack a big circlec of type i : if there is no emptyc-bin of typei

close the current bin of type i (if any)

open a new bin of typei containing i c-binsof type i Packc into a emptyc-binof type i

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 40 / 57

(99)

Small circles

Let C >0be an integer multiple of 3

A small circle of radiusr is of type i, subtype k if

I 1/(i+1)<Ckr ≤1/i

I where k is the largest integer such that Ckr ≤1/M

I and the circle is said to be of type (i,k)

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 41 / 57

(100)

Small circles

1 M

1 MC

1 M+1

1 (M+1)C

1 M+2

1 (M+2)C

1 (MC−1)C

1 MC−1

1

MC2 1

(M+1)C2 1

(M+2)C3 1

(M−1)C3 1 MC

1 MC2

1 MC3

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 42 / 57

(101)

Small circles

Subtype 1

Subtype 2

Subtype 3 Subtype 4 Subtype 0

Unit Bin

Subdivisions within a same type

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 43 / 57

(102)

Sub-bins (h-bins and t-bins)

Idea: Round/Pack small circles into hexagonal bins h-bin of type (i,k):

I hexagonal bin of side length 2/(√

3Cki)

I Receives a small circle of type (i,k) t-bin of type (i,k):

I trapezoidal bin obtained by the subdivision of a h-bin of type(i,k) in the center

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 44 / 57

(103)

Sub-bins (h-bins and t-bins)

Idea: Round/Pack small circles into hexagonal bins h-bin of type (i,k):

I hexagonal bin of side length 2/(√

3Cki)

I Receives a small circle of type (i,k) t-bin of type (i,k):

I trapezoidal bin obtained by the subdivision of a h-bin of type(i,k) in the center

Flávio K. Miyazawa Approximation Algorithms for Circle Packing July, 2016 44 / 57

Referências

Documentos relacionados

Gomes (2002) destaca que o organismo sofre influência da carga não apenas no momento que está sendo aplicada, mas também no período de descanso ou recuperação

Da produção artística do teatro enquanto agente cultural que modifica Oliveira (2007) considera a produção artística teatral como instrumento de transformação

No entanto, na amostra verificamos que existe uma repetição de notícia para notícia nos dois jornais de informações como o fato da pandemia ter surgido na China, os seus sintomas

Since all stock indexes series are non-stationary and integrated of order 1(as we conclude through ADF and KPSS tests) cointegration analysis is the appropriate tool

São comuns os registros, hoje históricos, do uso do verde-de-paris no Brasil, frequentes até metade do século XX, mesmo sendo classificado como altamente

Tal atitude consagra em definitive o contribute das ciencias sociais para a criac;:ao de urn clima favoravel a inovac;:ao, para alem de conferir a este problema

Based on these three case studies, we were able to verify that each firm decided to initiate its activities in a given country mainly on the basis of three lines of reasoning: (1)

O presente projecto de investigação tem como principal objectivo o desenvolvimento de uma colecção de design de moda com base no pensamento projectual de Richard Serra (1939),