Quickhull is Usually Forward Stable
Thomas Koopman, Sven-Bodo Scholz
TL;DR
This work analyzes the numerical robustness of Quickhull for planar convex hulls. It introduces a unit‑invariant distance $d_M$ and a perturbation framework, proving a forward error bound of $O(|P|^2\epsilon)$ in the worst case but showing, under balanced recursion and reasonable assumptions, a tighter bound of $O(\log|CH(P)|\epsilon)$; it also proposes stable variants that reduce the worst‑case to $O(\sqrt{|P|}\,D\epsilon)$ or $O(D\log|P|\epsilon)$. The analysis hinges on robust geometric predicates (right‑turn and distance tests) and a careful treatment of how floating‑point errors propagate through the recursive hull construction. The results illuminate when Quickhull is numerically reliable and guide practical implementation choices, including potential parallelization benefits and integration with downstream convexity checks. Overall, the paper provides a rigorous, quantified view of Quickhull’s numerical stability and concrete strategies to improve it in practice.
Abstract
Quickhull is an algorithm for computing the convex hull of points in a plane that performs well in practice, but has poor complexity on adversarial input. In this paper we show the same holds for the numerical stability of Quickhull.
