Presentation is loading. Please wait.

Presentation is loading. Please wait.

Optimal Rectangular Partition of a Rectilinear Polygonal Region

Similar presentations


Presentation on theme: "Optimal Rectangular Partition of a Rectilinear Polygonal Region"— Presentation transcript:

1 Optimal Rectangular Partition of a Rectilinear Polygonal Region
Dagstuhl 2004 Hee-Kap Ahn, Tetsuo Asano Gabriel Valiente

2 Problem: Given a rectilinear polygon P possibly with holes, partition it into
rectangles so that the smallest dimension of the resulting rectangles is maximized. smallest dimension or thinnest rectangle chord flipping for improvement?

3 Problem: Given a rectilinear polygon P possibly with holes, partition it into
rectangles so that the smallest dimension of the resulting rectangles is maximized. Define a basic grid by extending rays from vertices. Is any optimal solution always associated with the basic grid?

4 Some difficult examples
Basic grid

5 Some difficult examples

6 Some more examples differences: optimal not optimal
only vertex cuts are used in the left partition the middle cut is not associated with any vertex in the right partition. (middle line is not a vertex cut => floating cut)

7 Some more examples optimal solution using two cuts incident to
a floating cut incident to no vertex two cuts incident to a reflex vertex J. O'Rourke and G. Tewari, "The Structure of Optimal Partitions of Orthogonal Polygons into Fat Rectangles," Computational Geometry: Theory and Applications, pp.49-71, vol 28, 2004.

8 Some definitions vertex cuts: those incident to a polygon vertex
anchored cuts: those touching on a point of the polygon's boundary (vertex cuts are special cases of anchored cuts) floating cuts: those which are strictly interior to the polygon floating cut vertex cut anchored cut anchored cuts are required for optimal solution floating cuts are required for optimal solution only vertex cuts suffice for optimal solution

9 Previous results (J. O'Rourke and G. Tewari)
O(n42)-time algorithm for a rectilinear polygon without any hole when all of three types of cuts are allowed to use. O(n5)-time algorithm when no anchored or floating cuts are allowed. key idea: dynamic programming for a simple polygon. Conjecture: NP-complete if we allow holes. Our goal: To improve the O(n5)-time algorithm for the case no anchored or floating cuts are allowed. Holes are allowed. Key idea: formulation by 2SAT

10 Polynomial-time algorithm
First define a basic grid by extending rays from each convex corner. Define a set of edges of increasing lengths from the starting corner. Assign a variable to each edge h(i,j) = 1 if a j-th horizontal edge from i-th corner is used for partition 0 otherwise v(i,j) = 1 if a j-th vertical edge v_j is used for partition

11 h(i,1) h(i,2) h(i,3) h(i,4) We must choose at most one of them O(n2) 2SAT clauses for each corner A chord is called a partial chord if one of its endpoint does not touch the boundary. Otherwise, it is called a complete chord.

12 If two convex corners have the same coordinate, then each edge is
doubled in each direction. vj h(i,1) h(i,2) vi h(i,3) h(i,4) conditions associated from the both corners more clauses (constraints)

13 If two convex corners have the same coordinate, then each edge is
doubled in each direction. vj h(i,1) h(i,2) vi h(i,3) h(i,4) two chords from different corners cannot overlap. If the two corners are connected by a complete chord, then it must be divided into two chords from different corners.

14 Vertical chords: v(i,1), v(i,2), ...
same for horizontal chords Constraint at each convex corner vi h(i,j) for each pair of chords incident to a corner vi v(i,k) constraint for parallel chords (one of them can be boundary edge) h(i,j) gap < q h(k,l) cannot choose both of them

15 constraint for a pair of partial chords
v(k,l) If two partial chords meet in the interior of the region, they cannot stop there h(i,j) Theorem 1: Any optimal solution associated with the basic grid has a corresponding truth assignments to the boolean variables. Theorem 2: An optimal rectangular partition of a polygonal region with n corners can be found in O(n3log n) time and space by solving corresponding 2SAT problems O(log n) times.


Download ppt "Optimal Rectangular Partition of a Rectilinear Polygonal Region"

Similar presentations


Ads by Google