Core Concepts
There exists a polynomial-time algorithm that partitions a simple polygon with n corners into a minimum number of star-shaped pieces.
Abstract
The key insights and steps of the algorithm are:
Structural Results on Tripods and Star Centers:
There exists an optimal star partition where no four pieces meet at the same point and no star center lies on the interior of a sight line.
A coordinate maximum optimal partition, where the star centers are lexicographically maximized, has useful structural properties.
Tripods, which are groups of three pieces with a common tripod point, play a crucial role in the construction of star centers.
The star centers can be constructed in a recursive manner using tripods, with the star centers belonging to a bounded set of points.
Properties of Area Maximum Partitions:
For a given set of star centers, there exists an area maximum partition where the vector of piece areas is lexicographically maximized.
This area maximum partition can be used to characterize the Steiner points needed in the final partition, in addition to the star centers.
Algorithm:
The algorithm has two phases:
In the first phase, it constructs a set of O(n^6) potential star centers and Steiner points that are guaranteed to contain an optimal solution.
In the second phase, it uses dynamic programming to find the minimum star partition using the constructed points.
The greedy choice of tripod legs is used to ensure a consistent orientation of tripods, which is crucial for the dynamic programming approach.
The final algorithm runs in O(n^105) arithmetic operations and produces a partition where each Steiner point is represented using O(K) bits, where K is the total number of bits used to represent the corners of the input polygon.