---
title: Max-Min-Angle Polygon Optimization
url: https://www.emergentmind.com/topics/max-min-angle-polygon
type: topic
---

# Max-Min-Angle Polygon Optimization

Searching arXiv for the cited paper to ground the response in the current literature.
A **max–min–angle polygon** is, for a finite planar point set \(S\), a simple polygon whose vertices are a subset of \(S\) and whose objective is to maximize the smallest interior angle among its vertices. In the formulation studied in "Decremental Greedy Polygons and Polyhedra Without Sharp Angles" [2507.04538], if \(P\) has vertices \(v_1,\dots,v_k\) in counterclockwise order and interior angles \(\theta_i=\angle v_{i-1}v_i v_{i+1}\), then the optimization target is
\[
\max_{P}\;\min_{1\le i\le k}\;\theta_i.
\]
The problem isolates the polygonal tour through a subset of the input that is least susceptible to sharp turns. The cited work shows that the planar problem can be solved in \(O(n\log n)\) time and places it in a broader class of optimization problems solvable by decremental greedy removal [2507.04538].

## 1. Formal definition and geometric setting

Let \(S\) be a finite set of \(n\) points in the plane in general position, with *no three collinear, no four cocircular* [2507.04538]. The goal is to choose a subset of \(S\) and order its points as the vertices of a simple polygon \(P\) so that the smallest interior angle of \(P\) is as large as possible.

If
\[
P=(v_1,\dots,v_k)
\]
in counterclockwise order, then its interior angles are
\[
\theta_i=\angle v_{i-1}v_i v_{i+1}\qquad (i=1,\dots,k,\text{ indices mod }k),
\]
and the objective is
\[
\max_{P}\;\min_{1\le i\le k}\;\theta_i.
\]

A polygon achieving the maximum of these minima is called a **max–min–angle polygon** [2507.04538]. The optimization criterion is bottleneck-based rather than aggregate: only the smallest angle matters. This sharply distinguishes the problem from objectives based on perimeter, area, or total turning angle. A plausible implication is that the optimal polygon may discard many input points if retaining them would introduce a sharper local angle.

## 2. Convexity of an optimal solution

A central structural result is the **convexity of an optimal solution**. Among all *possibly nonconvex or self-intersecting* closed polygonal tours through points of \(S\), there exists an optimal one that is a convex polygon whose vertices are a subset of \(S\) [2507.04538].

The proof sketch proceeds by taking any closed polygonal curve \(W\) through points of \(S\) that attains the maximum worst-angle \(\alpha^*\), then replacing it by
\[
P=\mathrm{ConvHull}(W).
\]
Convexifying can only remove vertices or increase angles at the remaining ones, so the sharpest angle of \(P\) is at least \(\alpha^*\). Hence \(P\) is also optimal and convex.

This reduces the search space substantially: it suffices to search over convex hulls of subsets of \(S\). In effect, the problem is not one of arbitrary polygonization once optimality is considered, but of selecting the right subset whose convex hull has the best bottleneck interior angle. This suggests that the combinatorial difficulty lies in subset selection rather than in managing nonconvex embeddings.

## 3. Hull quality and monotonicity

For any subset \(T\subseteq S\), let \(\mathrm{Hull}(T)\) denote its convex hull. For each \(x\in T\), define its **quality**
\[
q(x,T)=
\begin{cases}
\text{interior angle at }x\text{ in }\mathrm{Hull}(T),&x\text{ is a hull vertex},\\[4pt]
2\pi,&x\text{ is interior to }\mathrm{Hull}(T).
\end{cases}
\]
The associated bottleneck quality is
\[
Q(T)=\min_{x\in T} q(x,T).
\]
These definitions encode the objective entirely in terms of convex hull geometry [2507.04538].

The key monotonicity claim is that if \(T\subseteq T'\subseteq S\), then
\[
q(x,T)\le q(x,T')\qquad \forall x\in T,
\]
because removing other points can only shrink the hull or increase sharpness of hull angles. Consequently,
\[
Q(T)\le Q(T').
\]

This monotonicity is the mechanism that enables greedy deletion. It means that enlarging the point set cannot worsen the quality assigned to a surviving point in this formalism, while deleting points may expose sharper hull vertices. The quality value \(2\pi\) for interior points ensures that only hull vertices can be bottlenecks, which aligns the optimization with incremental changes to the convex hull.

## 4. Decremental greedy algorithm

The algorithm starts from the full set \(S\) and repeatedly deletes the current hull vertex with the smallest interior angle. The cited paper describes this as exploiting the fact that repeatedly deleting the current “worst” hull vertex never destroys the optimal hull: any point that lies on the true optimal hull must survive until the current hull quality drops below the optimum [2507.04538].

The procedure is:

1. Compute the convex hull \(H\leftarrow \mathrm{Hull}(S)\) in \(O(n\log n)\).
2. Initialize a min-heap \(\mathcal H\) of all vertices \(v\in H\), keyed by the interior angle \(\theta(v)=q(v,S)\).
3. Record
   \[
   \mathrm{bestAngle}\leftarrow\min_{v\in H}\theta(v),\qquad \mathrm{bestSet}\leftarrow S.
   \]
4. For \(i\) from \(1\) to \(n-3\):
   - extract the vertex \(v\) of smallest angle from \(\mathcal H\);
   - remove \(v\) from the dynamic hull data structure and from the current set \(T\);
   - update the two neighbor vertices of \(v\) in \(\mathcal H\) with their new angles;
   - let
     \[
     \alpha\leftarrow\min_{u\in H} q(u,T);
     \]
     if \(\alpha>\mathrm{bestAngle}\), set \(\mathrm{bestAngle}\leftarrow \alpha\) and \(\mathrm{bestSet}\leftarrow T\).
5. Return the convex polygon \(\mathrm{Hull}(\mathrm{bestSet})\).

The corresponding pseudocode in the source is:

```text
function MaxMinAnglePolygon(S)
    H := Hull(S)    (dynamic data structure)
    𝓗 := {(v, angle_v) | v ∈ H}    (min-heap on angles)
    bestAngle := min_{v∈H} angle_v, bestSet := S
    T := S
    for k = 1 to |S| - 3 do
        (v, θ) := 𝓗.extractMin()
        delete v from H, T := T \ {v}
        let u, w be the former hull-neighbors of v
        update keys of u, w in 𝓗 with their new angles
        α := min_{x∈H} q(x,T)    (top of 𝓗)
        if α > bestAngle then
            bestAngle := α, bestSet := T
    end for
    return Hull(bestSet)
```

The algorithm is decremental in the precise sense that it never adds points back; it moves monotonically through subsets of \(S\), tracking the best bottleneck angle encountered.

## 5. Correctness and the monotone bottleneck subset viewpoint

Correctness is established through the existence of an optimal subset \(T^*\subseteq S\) such that the optimal polygon is \(\mathrm{Hull}(T^*)\), with bottleneck angle
\[
\beta^*=Q(T^*).
\]
By monotonicity of \(q\), any point not in \(T^*\) has quality \(<\beta^*\) in the full set \(S\). Therefore the greedy process deletes all points outside \(T^*\) before the recorded best angle can fall below \(\beta^*\) [2507.04538].

At the moment when the remaining set is exactly \(T^*\), its hull has quality \(\beta^*\), which is detected and stored as the best. Thereafter the heap minimum never exceeds \(\beta^*\), so the algorithm returns \(\mathrm{Hull}(T^*)\).

The paper states that, formally, this is an instance of a **“monotone bottleneck subset”** problem in which decremental greedy removal of worst elements finds a global optimum. That framing is broader than the planar polygon problem alone. The same paper states that it thereby generalizes the max-min-angle and bottleneck cycle algorithms, together with a known algorithm for graph degeneracy [2507.04538]. This suggests that the planar result is not merely a specialized geometric trick, but an example of a reusable optimality principle based on monotone bottleneck objectives.

## 6. Complexity, example, and related extensions

The time bound in the planar case is \(O(n\log n)\). The analysis given is explicit: building the static convex hull of \(S\) takes \(O(n\log n)\); maintaining a fully-dynamic, deletion-only hull and a heap of hull vertices costs \(O(\log n)\) per point deletion for tree rebalancing plus \(O(1)\) for updating two neighbors in the heap; and there are \(O(n)\) deletions [2507.04538]. The overall running time therefore remains \(O(n\log n)\).

The paper’s verbal example considers eight points on or near a convex octagon but with two “nearly collinear” small-angle indentations. The initial hull is the octagon, and its sharpest angle is said to be \(30^\circ\) at one indentation. Deleting that point yields a seven-vertex hull with worst angle \(35^\circ\), which becomes the new best so far. Repeating the process eventually produces the regular hexagon spanned by the six well-spaced points, whose worst angle is \(120^\circ\); this is recognized and recorded as the optimum [2507.04538]. The example illustrates the intended operational meaning of the decremental process: local sharpness is systematically removed until no better bottleneck can be obtained.

The same paper places the planar max–min–angle polygon alongside two higher-dimensional variants. It states that a **max-min-solid-angle convex polyhedron** in a three-dimensional point set can be found in time \(O(n^2)\), and that the **maxmin-angle polygonal curve in 3d** is \(\mathsf{NP}\)-hard to find if repetitions are forbidden but can be found in near-cubic time if repeated vertices or line segments are allowed, by reducing the problem to finding a bottleneck cycle in a graph [2507.04538]. These results do not alter the planar definition, but they contextualize it within a family of angle-avoidance optimization problems whose complexity changes substantially with dimension and admissible combinatorial structure.

Source: https://www.emergentmind.com/topics/max-min-angle-polygon