Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 5 Guillotine Cut (1) Rectangular Partition Ding-Zhu Du.

Similar presentations


Presentation on theme: "Chapter 5 Guillotine Cut (1) Rectangular Partition Ding-Zhu Du."— Presentation transcript:

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


Download ppt "Chapter 5 Guillotine Cut (1) Rectangular Partition Ding-Zhu Du."

Similar presentations


Ads by Google