6/7/2012
1
Proceedings
Scandinavian Thins over a Fat Top:on the Smallest One-Size-Fits-All Box
Esther Arkin Applied Mathematics and Statistics and Computer Science, Stony BrookUniversity, USA
Alon Efrat Computer Science, The University of Arizona, USA
George Hart
Irina Kostitsyna Computer Science, Stony Brook University, USA
Alexander Kroeller Institute of Operating Systems and Computer Networks, BraunschweigInstitute of Technology, Germany
Joseph Mitchell Applied Mathematics and Statistics and Computer Science, Stony BrookUniversity, USA
Valentin Polishchuk Computer Science, University of Helsinki, Finland and Science andTechnology, Linkoping University, Sweden
Scandinavian Thins on Top of Cake:on the Smallest One-Size-Fits-All Box
ProgramDecoratingChristmas tree
Listening toJingle Bells
Merry Xmas
Thinking aboutsomething FUN cookiesthinsGingerbread
http://en.wikipedia.org/wiki/Ginger_biscuit:
http://en.wikipedia.org/wiki/Gingerbread:
6/7/2012
2
Alc. by vol.:3-20 %
Mulledwine
Consumption: adults
Consumption: kidsConstraint: Equal rectanglesObjective: Minimize area
Problem statement Given:polygons P1…PK
Find:min-area rectangle Rs.t. Pk can fit into R
aftertranslation and rotation
is not
6/7/2012
3
• asdg-
asdga “Stacking” minimizearea
Packing• simultaneous fit
and• no overlap
Hard problem
We (“stacking”)• One at a time
or• Overlap allowed
Efficient algorithms
Fitting 1 polygon into rectangle
Rotating calipers [Toussaint, IEEE MELECON'83]
A( ) = l( )w( )
2 pairs of calipersMonotone
6/7/2012
4
Flushness
Min-area enclosing rectangle:choose best flush edge
Linear time
pt on arc
l
w
Elementary arc
l
w(l,w)
fits into l w box (l,w) above FF graphLower envelope
Fit Function
(l,w)
l
w
fits into l w box (l,w) above FF graphs(l,w) above max FF graphs
Alg MinRectangle(P1…PK):For each k = 1…K
Build Fit Function for PkCompute FF* = max FFsFind (l,w) on FF* to min lw a breakpoint of FF*
lw = const
DS sequence of order s on {1…n}: s+2 alternations x…y…x…y…x…y
no xx
Max length:
s(n)
Runtime: Davenport–Schinzel sequences
n functionsany 2 intersect at most s times
Lower envelope:
s+2(n) complexity
s+1(n) log n time to build[Hershberger, Information Processing Letters ‘89]
DS sequences and Lower envelopes
6/7/2012
5
l
w
Runtime
Pk
m = |Pk| functionsany 2 intersect at most 4 times
Lower envelope:
6(m) complexity
5(m) log m time
Fit Function:
6(m) complexity
5(m) log m time
l
w
Runtime FF* = max FFs6(n) functions
any 2 intersect at most 4 times
6 6(n)) complexity
5 6(n)) log n time
Alg MinRectangle(P1…PK):For each k = 1…K
Build Fit Function for PkCompute FF* = max FFsFind (l,w) on FF* to min lw
Fit Function:
6(m) complexity
MinRectangle runs in5 6(n)) log n time
l
w
maximize areas.t. cookies sit tight in the box
Rip-off ANNA’s problem
all tight boxes
1 polygon: flushness of min-area rectangle
A( ) = l( )w( )
Monotone
Multiple polygons:min-area rectangle not necessarily flush
Min enclosing rectangle of rectangles Min enclosing rectangle of rectanglesflush with widest enclosed rectangle
Proof: in the paper
6/7/2012
6
Min enclosing rectangle of rectanglesflush with widest enclosed rectangle
Linear time
Polygons Rectangular enclosure Convex enclosure
Convex5 6(n)) log n
PTASes (3D too)n/ log(1/ ) , n + K/ 3/2 log(1/ )
NP-hardPTAS for min-perimeter
min-area: open
Rectangles O(n) Open
l
w
(l,w)P1…PK fit into l w box?
[Martin, Stephenson, Theory and practice of geometric modeling’89]
[Agarwal, Har-Peled, Varadarajan, Journal of the ACM’04]
linear time
2
1
points
Min surface area Breads
Capsule hotel Polygons Rectangular enclosure Convex enclosure
Convex5 6(n)) log n
PTASesn/ log(1/ ) , n + K/ 3/2 log(1/ )
NP-hardPTAS for min-perimeter
min-area: open
Rectangles O(n) Open
6/7/2012
7
Polygons Rectangular enclosure Convex enclosure
Convex5 6(n)) log n
PTASesn/ log(1/ ) , n + K/ 3/2 log(1/ )
NP-hardPTAS for min-perimeter
min-area: open
Rectangles O(n) Open
[Chazelle, Advances in Computing Research’83]
2
1
points
sides
OPT
B per(OPT) (1+ ) • per (B)
For each b-gon Bb =
P1…PK fit into B ?
Polygons Rectangular enclosure Convex enclosure
Convex5 6(n)) log n
PTASesn/ log(1/ ) , n + K/ 3/2 log(1/ )
NP-hardPTAS for min-perimeter
min-area: open
Rectangles O(n) Open
2
1
points
sidesB
per(OPT) (1+ ) • per (B)
0 area(OPT) ?? • area (B)
OPT
?Flipsallowed?
b =
Top Related