Need a faster, more memory-efficient way to compute convex hulls? This article presents a practical convex hull algorithm, Quickhull, combining the two-dimensional Quickhull algorithm with the general-dimension Beneath-Beyond Algorithm. This method is similar to randomized, incremental algorithms for convex hull and delaunay triangulation. Quickhull offers practical advantages in performance. Empirical evidence demonstrates that Quickhull runs faster when the input contains nonextreme points and uses less memory. A solution to errors in computing the convex hull in two, three, or four dimensions with floating-point arithmetic is briefly described. The output is a set of “thick” facets that contain all possible exact convex hulls of the input. A variation is effective in five or more dimensions. This algorithm provides an efficient and robust approach to convex hull computation, with particular benefits for large datasets. Quickhull proves itself a valuable tool for various applications in computational geometry and related fields.
Published in ACM Transactions on Mathematical Software, this paper directly addresses the journal's focus on algorithms and software for mathematical computation. The development of the Quickhull algorithm and its analysis align perfectly with the journal's emphasis on practical and efficient mathematical software. The paper's discussion of handling floating-point arithmetic errors is relevant to software development in numerical computation.