Table of Contents
Fetching ...

Minimum Star Partitions of Simple Polygons in Polynomial Time

Mikkel Abrahamsen, Joakim Blikstad, André Nusser, Hanwen Zhang

TL;DR

The paper resolves the long-standing open problem of whether a simple polygon can be partitioned into the minimum number of star-shaped pieces in polynomial time. It introduces a two-phase framework that first generates a polynomially bounded set of potential star centers using structural insights centered on tripods and separators, and then applies a separator-based dynamic program to compute an optimal partition. Key contributions include the notions of coordinate and area maximum partitions, the tripod-based decomposition, the construction of constructable partitions, and a greedy choice principle that bounds the search space. The resulting algorithm is polynomial-time (specifically $O(n^{105})$ arithmetic operations), establishing that the minimum-star-partition problem for simple polygons lies in P and offering a foundation for practical refinements and extensions to related decomposition problems.

Abstract

We devise a polynomial-time algorithm for partitioning a simple polygon $P$ into a minimum number of star-shaped polygons. The question of whether such an algorithm exists has been open for more than four decades [Avis and Toussaint, Pattern Recognit., 1981] and it has been repeated frequently, for example in O'Rourke's famous book [Art Gallery Theorems and Algorithms, 1987]. In addition to its strong theoretical motivation, the problem is also motivated by practical domains such as CNC pocket milling, motion planning, and shape parameterization. The only previously known algorithm for a non-trivial special case is for $P$ being both monotone and rectilinear [Liu and Ntafos, Algorithmica, 1991]. For general polygons, an algorithm was only known for the restricted version in which Steiner points are disallowed [Keil, SIAM J. Comput., 1985], meaning that each corner of a piece in the partition must also be a corner of $P$. Interestingly, the solution size for the restricted version may be linear for instances where the unrestricted solution has constant size. The covering variant in which the pieces are star-shaped but allowed to overlap--known as the Art Gallery Problem--was recently shown to be $\exists\mathbb R$-complete and is thus likely not in NP [Abrahamsen, Adamaszek and Miltzow, STOC 2018 & J. ACM 2022]; this is in stark contrast to our result. Arguably the most related work to ours is the polynomial-time algorithm to partition a simple polygon into a minimum number of convex pieces by Chazelle and Dobkin~[STOC, 1979 & Comp. Geom., 1985].

Minimum Star Partitions of Simple Polygons in Polynomial Time

TL;DR

The paper resolves the long-standing open problem of whether a simple polygon can be partitioned into the minimum number of star-shaped pieces in polynomial time. It introduces a two-phase framework that first generates a polynomially bounded set of potential star centers using structural insights centered on tripods and separators, and then applies a separator-based dynamic program to compute an optimal partition. Key contributions include the notions of coordinate and area maximum partitions, the tripod-based decomposition, the construction of constructable partitions, and a greedy choice principle that bounds the search space. The resulting algorithm is polynomial-time (specifically arithmetic operations), establishing that the minimum-star-partition problem for simple polygons lies in P and offering a foundation for practical refinements and extensions to related decomposition problems.

Abstract

We devise a polynomial-time algorithm for partitioning a simple polygon into a minimum number of star-shaped polygons. The question of whether such an algorithm exists has been open for more than four decades [Avis and Toussaint, Pattern Recognit., 1981] and it has been repeated frequently, for example in O'Rourke's famous book [Art Gallery Theorems and Algorithms, 1987]. In addition to its strong theoretical motivation, the problem is also motivated by practical domains such as CNC pocket milling, motion planning, and shape parameterization. The only previously known algorithm for a non-trivial special case is for being both monotone and rectilinear [Liu and Ntafos, Algorithmica, 1991]. For general polygons, an algorithm was only known for the restricted version in which Steiner points are disallowed [Keil, SIAM J. Comput., 1985], meaning that each corner of a piece in the partition must also be a corner of . Interestingly, the solution size for the restricted version may be linear for instances where the unrestricted solution has constant size. The covering variant in which the pieces are star-shaped but allowed to overlap--known as the Art Gallery Problem--was recently shown to be -complete and is thus likely not in NP [Abrahamsen, Adamaszek and Miltzow, STOC 2018 & J. ACM 2022]; this is in stark contrast to our result. Arguably the most related work to ours is the polynomial-time algorithm to partition a simple polygon into a minimum number of convex pieces by Chazelle and Dobkin~[STOC, 1979 & Comp. Geom., 1985].
Paper Structure (53 sections, 24 theorems, 2 equations, 38 figures, 2 algorithms)

This paper contains 53 sections, 24 theorems, 2 equations, 38 figures, 2 algorithms.

Key Result

theorem 1

There is an algorithm performing $O(n^{105})$ arithmetic operations that partitions a simple polygon with $n$ corners into a minimum number of star-shaped pieces. The number of bits used to represent each Steiner point in the constructed solution is $O(K)$ where $K$ is the total number of bits used

Figures (38)

  • Figure 1: Repeating the patterns, we obtain polygons where star centers and corners of pieces of arbitrarily high degree are required.
  • Figure 2: Left: A polygon that is partitioned into two star-shaped pieces using the Steiner point $S$. A star center that can see the two middle groups of spikes must be placed at or close to $A_1$, while a star center that sees the outer groups must be at or close to $A_2$. Without Steiner points we need $\Theta(n)$ pieces to partition at least one of the groups of spikes. Right: Moving the bottom corner a bit up changes the size of a minimum star partition from $1$ to $\Theta(n)$.
  • Figure 3: Left: A polygon with a star partition and an example of a short (orange) and a long (green) separator. Right: The dual graph of the partition. The short and long separators of the partition correspond to vertices, respectively edges, in the graph.
  • Figure 4: The same polygon and partition as in \ref{['fig:partitionDual']}, where the pieces $Q_1,Q_2,Q_3$ form a tripod with supports $D_1,D_2,D_3$ and tripod point $C$. The star centers are coordinate maximum and the gray segments show how they are constructed. The tripod is used to construct $A_3$.
  • Figure 5: A polygon $P$ with a star partition using ten pieces and four tripods. The legs of the tripods partition $P$ into nine faces $\mathcal{F}$. The disks are star centers and the squares denote the vertices of the dual graph $G$ of the faces $\mathcal{F}$. The dashed segments indicate how the star centers are defined or used to define other centers by tripods. The tripods have consistent orientation towards the root $r$ and the edges of the tree $\mathcal{T}$ are shown as dotted curves.
  • ...and 33 more figures

Theorems & Definitions (54)

  • theorem 1
  • lemma 2
  • proof
  • lemma 3
  • proof
  • lemma 4
  • lemma 5: Restricted coordinate maximization
  • lemma 6
  • lemma 7
  • proof
  • ...and 44 more