Making Quickhull More Like Quicksort: A Simple Randomized Output-Sensitive Convex Hull Algorithm

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Goodrich, Michael T., Kitagawa, Ryuto
Format: Preprint
Veröffentlicht: 2024
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866909329302487040
author Goodrich, Michael T.
Kitagawa, Ryuto
author_facet Goodrich, Michael T.
Kitagawa, Ryuto
contents In this paper, we present Ray-shooting Quickhull, which is a simple, randomized, outputsensitive version of the Quickhull algorithm for constructing the convex hull of a set of n points in the plane. We show that the randomized Ray-shooting Quickhull algorithm runs in O(n log h) expected time, where h is the number of points on the boundary of the convex hull. Keeping with the spirit of the original Quickhull algorithm, our algorithm is quite simple and is, in fact, closer in spirit to the well-known randomized Quicksort algorithm. Unlike the original Quickhull algorithm, however, which can run in $Θ(n^2) time$ for some input distributions, the expected performance bounds for the randomized Ray-shooting Quickhull algorithm match or improve the performance bounds of more complicated algorithms. Importantly, the expectation in our output-sensitive performance bound does not depend on assumptions about the distribution of input points. Still, we show that, like the deterministic Quickhull algorithm, our randomized Ray-shooting Quickhull algorithm runs in O(n) expected time for n points chosen uniformly at random from a bounded convex region. We also provide experimental evidence that the randomized Ray-shooting Quickhull algorithm is on par or faster than deterministic Quickhull in practice, depending on the input distribution.
format Preprint
id arxiv_https___arxiv_org_abs_2409_19784
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Making Quickhull More Like Quicksort: A Simple Randomized Output-Sensitive Convex Hull Algorithm
Goodrich, Michael T.
Kitagawa, Ryuto
Computational Geometry
Computational Complexity
Data Structures and Algorithms
In this paper, we present Ray-shooting Quickhull, which is a simple, randomized, outputsensitive version of the Quickhull algorithm for constructing the convex hull of a set of n points in the plane. We show that the randomized Ray-shooting Quickhull algorithm runs in O(n log h) expected time, where h is the number of points on the boundary of the convex hull. Keeping with the spirit of the original Quickhull algorithm, our algorithm is quite simple and is, in fact, closer in spirit to the well-known randomized Quicksort algorithm. Unlike the original Quickhull algorithm, however, which can run in $Θ(n^2) time$ for some input distributions, the expected performance bounds for the randomized Ray-shooting Quickhull algorithm match or improve the performance bounds of more complicated algorithms. Importantly, the expectation in our output-sensitive performance bound does not depend on assumptions about the distribution of input points. Still, we show that, like the deterministic Quickhull algorithm, our randomized Ray-shooting Quickhull algorithm runs in O(n) expected time for n points chosen uniformly at random from a bounded convex region. We also provide experimental evidence that the randomized Ray-shooting Quickhull algorithm is on par or faster than deterministic Quickhull in practice, depending on the input distribution.
title Making Quickhull More Like Quicksort: A Simple Randomized Output-Sensitive Convex Hull Algorithm
topic Computational Geometry
Computational Complexity
Data Structures and Algorithms
url https://arxiv.org/abs/2409.19784