Download presentation
Presentation is loading. Please wait.
Published byAleesha Miller Modified over 8 years ago
1
Chapter 5 Guillotine Cut (1) Rectangular Partition Ding-Zhu Du
2
Rectangular Partition Given a rectilinear area bounded by rectilinear polygon with rectilinear holes, partition it into rectangles with minimum total edge length.
3
Canonical Partition There is a minimum partition such that every maximal segment passes through a concave vertex of the boundary.
4
Without any hole In any canonical partition, there exists a maximal segment cutting the area into two parts.
5
Without any hole Dynamic programming can find optimal partition in time O(n ) 5
6
An NP-hard special case
7
Guillotine cut
8
Guillotine Partition A sequence of guillotine cuts Canonical one: every cut passes a hole.
9
Minimum Guillotine Partition Dynamic programming In time O(n ): 5 Each cut has at most 2n choices. There are O(n ) subproblems. 4 Minimum guillotine partition can be a polynomial-time approximation.
10
Analysis (idea) Consider a minimum rectangular partition. Modify it into a guillotine partition by adding some segments. Estimate the total length of added segments.
11
Add vertical segment > 0.5 a a There is a vertical segment > 0.5 length of vertical edge rectangle. Charge added length to the vertical segment. Charge to
12
Add horizontal segment when vertical segment cannot Be added. Charge 0.5 to all horizontal segments facing the added line.
13
Conclusion Minimum guillotine partition is 2- approximation for minimum rectangular partition.
14
1-guillotine cut
15
1-guillotine partition A sequence of 1-guillotine cuts 1 2 Canonical one: every cut passes through a hole.
16
Minimum 1-guillotine partition Dynamic programming: Each cut has O(n ) choices. 3 There are O(n ) subproblems. 12 Time = O(n ) 15 Minimum 1-guillotine partition is a polynomial-time Approximation.
17
Subproblems result from 1-guillotine cuts Each edge of rectangle has O(n ) choices. 3 There are O(n ) subproblems. 12
18
Analysis (idea) Consider a minimum rectangular partition. Modify it into a 1-guillotine partition by adding some segments. Estimate the total length of added segments.
19
1-dark point A vertical 1-dark point is a point between two horizontal cuts. In a vertical line, all vertical 1-dark points form a 1-guillotine cut. Similarly, define horizontal 1-dark points.
20
Area V of vertical 1-dark points
21
Area H of horizontal 1-dark points
22
V < HV < H There exists a vertical line such that length (vertical 1-dark points) < length (horizontal 1-dark points) Do vertical 1-gullotine cut. Charge 0.5 to vertical segment directly facing to horizontal 1-dark points on the cut line. Similarly, if V > H.
23
V < HV < H There exists a vertical line such that length (vertical 1-dark points) < length (horizontal 1-dark points) Do vertical 1-gullotine cut. Charge 0.5 to vertical segment directly facing to horizontal 1-dark points on the cut line. Similarly, if V > H.
24
Conclusion Minimum 1-guillotine partition is 2-approximation for minimum rectangular partition.
25
Rectangular Partition There is a PTAS for minimum rectangular partition.
26
m-guillotine cut m m
27
m-guillotine partition A sequence of m-guillotine cuts 1 2 Canonical one: every cut passes through a hole.
28
Minimum m-guillotine partition Dynamic programming: Each cut has O(n ) choices. 2m+1 There are O(n ) subproblems. 4(2m+1) Time = O(n ) 10m+5 Minimum m-guillotine partition is a polynomial-time Approximation.
29
Subproblems result from m-guillotine cuts Each edge of rectangle has O(n ) choices. 2m+1 There are O(n ) subproblems. 4(2m+1)
30
Analysis (idea) Consider a minimum rectangular partition. Modify it into a m-guillotine partition by adding some segments. Estimate the total length of added segments.
31
m-dark point A vertical m-dark point is a point between two groups of m horizontal cuts. In a vertical line, all vertical m-dark points form a m-guillotine cut. Similarly, define horizontal m-dark points.
32
Area V of vertical m-dark points
33
Area H of horizontal m-dark points
34
V < HV < H There exists a vertical line such that length (vertical m-dark points) < length (horizontal m-dark points) Do vertical m-gullotine cut. Charge 0.5/m to m vertical segment directly facing to horizontal m-dark points on the cut line. Similarly, if V > H.
35
Conclusion Minimum m-guillotine partition is (1 + 1/m)-approximation for minimum rectangular partition. Choose m = 1/ε. A PTAS is obtained. Time = n O(1/ε)
36
Rectilinear Steiner Tree Given a set of points in the rectilinear plane, find a minimum length tree interconnecting them. Those given points are called terminals.
37
Initially
38
Thanks, End
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.