Guillotine partition

From HandWiki
Short description: Process of partitioning a rectilinear polygon
A guillotine cutting: an optimised sheet of smaller rectangles which can be divided intact through the correct series of bisecting end-to-end cuts.
A non-guillotine cutting: these rectangles cannot be separated by making single bisecting cuts across the plane.

Guillotine partition is the process of partitioning a rectilinear polygon, possibly containing some holes, into rectangles, using only guillotine-cuts. A guillotine-cut (also called an edge-to-edge cut) is a straight bisecting line going from one edge of an existing polygon to the opposite edge, similarly to a paper guillotine.

Guillotine partition is particularly common in designing floorplans in microelectronics. An alternative term for a guillotine-partition in this context is a slicing partition or a slicing floorplan.[1] Guillotine partitions are also the underlying structure of binary space partitions. There are various optimization problems related to guillotine partition, such as: minimizing the number of rectangles or the total length of cuts. These are variants of polygon partitioning problems, where the cuts are constrained to be guillotine cuts.

A related but different problem is guillotine cutting. In that problem, the original sheet is a plain rectangle without holes. The challenge comes from the fact that the dimensions of the small rectangles are fixed in advance. The optimization goals are usually to maximize the area of the produced rectangles or their value, or minimize the waste or the number of required sheets.

Computing a guillotine partition with a smallest edge-length

In the minimum edge-length rectangular-partition problem, the goal is to partition the original rectilinear polygon into rectangles, such that the total edge length is a minimum.[2]:166–167

This problem can be solved in time [math]\displaystyle{ O(n^5) }[/math] even if the raw polygon has holes. The algorithm uses dynamic programming based on the following observation: there exists a minimum-length guillotine rectangular partition in which every maximal line segment contains a vertex of the boundary. Therefore, in each iteration, there are [math]\displaystyle{ O(n) }[/math] possible choices for the next guillotine cut, and there are altogether [math]\displaystyle{ O(n^4) }[/math] subproblems.

In the special case in which all holes are degenerate (single points), the minimum-length guillotine rectangular partition is at most 2 times the minimum-length rectangular partition.[2]:167–170 By a more careful analysis, it can be proved that the approximation factor is in fact at most 1.75. It is not known if the 1.75 is tight, but there is an instance in which the approximation factor is 1.5.[3] Therefore, the guillotine partition provides a constant-factor approximation to the general problem, which is NP-hard.

These results can be extended to a d-dimensional box: a guillotine-partition with minimum edge-length can be found in time [math]\displaystyle{ O(d n^{2 d + 1}) }[/math], and the total (d-1)-volume in the optimal guillotine-partition is at most [math]\displaystyle{ 2d-4+4/d }[/math] times that of an optimal d-box partition.[4]

Arora[5] and Mitchell[6] used the guillotine-partitioning technique to develop polynomial-time approximation schemes for various geometric optimization problems.

Number of guillotine partitions

Besides the computational problems, guillotine partitions were also studied from a combinatorial perspective. Suppose a given rectangle should be partitioned into smaller rectangles using guillotine cuts only. Obviously, there are infinitely many ways to do this, since even a single cut can take infinitely many values. However, the number of structurally-different guillotine partitions is bounded.

  • In two dimensions, there is an upper bound in [math]\displaystyle{ O\left ( \frac{ n! 2^{5n-3}}{n^{3/2}} \right) }[/math] attributed to Knuth. the exact number is the Schröder number.[7]
  • In d dimensions, Ackerman, Barequet, Pinter and Romik[8] give an exact summation formula, and prove that it is in [math]\displaystyle{ \Theta\left (\frac{ (2 d - 1 + 2 \sqrt{d(d-1)})^n}{n^{3/2}} \right) }[/math]. When d=2 this bound becomes [math]\displaystyle{ \Theta\left (\frac{ (3 + 2 \sqrt{2})^n}{n^{3/2}} \right) }[/math].
  • Asinowski, Barequet, Mansour and Pinter[9] also study the number of cut-equivalence classes of guillotine partitions.

Coloring guillotine partitions

A polychromatic coloring of a planar graph is a coloring of its vertices such that, in each face of the graph, each color appears at least once. Several researchers have tried to find the largest k such that a polychromatic k-coloring always exists. An important special case is when the graph represents a partition of a rectangle into rectangles.

  • Dinitz, Katz and Krakovski[10] proved that there always exists a polychromatic 3-coloring.
  • Aigner-Horev, Katz, Krakovski and Loffler[11] proved that, in the special sub-case in which the graph represents a guillotine partition, a strong polychromatic 4-coloring always exists.
  • Keszegh[12] extended this result to d-dimensional guillotine partitions, and provided an efficient coloring algorithm.
  • Dimitrov, Aigner-Horev and Krakovski[13] finally proved that there always exists a strong polychromatic 4-coloring.

See also

References

  1. Lengauer, Thomas (1990), "Circuit Partitioning", Combinatorial Algorithms for Integrated Circuit Layout (Wiesbaden: Vieweg+Teubner Verlag): pp. 251–301, doi:10.1007/978-3-322-92106-2_6, ISBN 978-3-322-92108-6, http://dx.doi.org/10.1007/978-3-322-92106-2_6, retrieved 2021-01-16 
  2. 2.0 2.1 Du, Ding-Zhu; Ko, Ker-I.; Hu, Xiaodong (2012) (in en). Design and Analysis of Approximation Algorithms. Springer Optimization and Its Applications. New York: Springer-Verlag. pp. 165–209, chapter 5 "guillotine cut". ISBN 978-1-4614-1700-2. https://www.springer.com/gp/book/9781461417002. 
  3. Gonzalez, Teofilo; Zheng, Si-Qing (1989-06-01). "Improved bounds for rectangular and guillotine partitions" (in en). Journal of Symbolic Computation 7 (6): 591–610. doi:10.1016/S0747-7171(89)80042-2. ISSN 0747-7171. 
  4. Gonzalez, Teofilo F.; Razzazi, Mohammadreza; Shing, Man-Tak; Zheng, Si-Qing (1994-05-01). "On optimal guillotine partitions approximating optimal d-box partitions" (in en). Computational Geometry 4 (1): 1–11. doi:10.1016/0925-7721(94)90013-2. ISSN 0925-7721. 
  5. Arora, S. (October 1996). "Polynomial time approximation schemes for Euclidean TSP and other geometric problems". Proceedings of 37th Conference on Foundations of Computer Science. pp. 2–11. doi:10.1109/SFCS.1996.548458. ISBN 0-8186-7594-2. https://ieeexplore.ieee.org/document/548458. 
  6. Mitchell, Joseph S. B. (1999-01-01). "Guillotine Subdivisions Approximate Polygonal Subdivisions: A Simple Polynomial-Time Approximation Scheme for Geometric TSP, k-MST, and Related Problems". SIAM Journal on Computing 28 (4): 1298–1309. doi:10.1137/S0097539796309764. ISSN 0097-5397. https://epubs.siam.org/doi/abs/10.1137/S0097539796309764. 
  7. Yao, Bo; Chen, Hongyu; Cheng, Chung-Kuan; Graham, Ronald (2003-01-01). "Floorplan representations: Complexity and connections". ACM Transactions on Design Automation of Electronic Systems 8 (1): 55–80. doi:10.1145/606603.606607. ISSN 1084-4309. https://doi.org/10.1145/606603.606607. 
  8. Ackerman, Eyal; Barequet, Gill; Pinter, Ron Y.; Romik, Dan (2006-05-31). "The number of guillotine partitions in d dimensions" (in en). Information Processing Letters 98 (4): 162–167. doi:10.1016/j.ipl.2006.01.011. ISSN 0020-0190. http://www.sciencedirect.com/science/article/pii/S0020019006000305. 
  9. Asinowski, Andrei; Barequet, Gill; Mansour, Toufik; Pinter, Ron Y. (2014-09-28). "Cut equivalence of d-dimensional guillotine partitions" (in en). Discrete Mathematics 331: 165–174. doi:10.1016/j.disc.2014.05.014. ISSN 0012-365X. 
  10. Dinitz, Yefim; Katz, Matthew J.; Krakovski, Roi (2009-12-01). "Guarding rectangular partitions". International Journal of Computational Geometry & Applications 19 (6): 579–594. doi:10.1142/S0218195909003131. ISSN 0218-1959. https://www.worldscientific.com/doi/abs/10.1142/S0218195909003131. 
  11. Horev, Elad; Katz, Matthew J.; Krakovski, Roi; Löffler, Maarten (2009-06-15). "Polychromatic 4-coloring of guillotine subdivisions" (in en). Information Processing Letters 109 (13): 690–694. doi:10.1016/j.ipl.2009.03.006. ISSN 0020-0190. http://www.sciencedirect.com/science/article/pii/S0020019009000854. 
  12. Keszegh, Balázs (2008). Hu, Xiaodong; Wang, Jie. eds. "Polychromatic Colorings of n-Dimensional Guillotine-Partitions" (in en). Computing and Combinatorics. Lecture Notes in Computer Science (Berlin, Heidelberg: Springer) 5092: 110–118. doi:10.1007/978-3-540-69733-6_12. ISBN 978-3-540-69733-6. https://link.springer.com/chapter/10.1007/978-3-540-69733-6_12. 
  13. Dimitrov, Darko; Horev, Elad; Krakovski, Roi (2009-05-06). "Polychromatic colorings of rectangular partitions" (in en). Discrete Mathematics 309 (9): 2957–2960. doi:10.1016/j.disc.2008.07.035. ISSN 0012-365X.