We study a natural extension to the well-known convex hull problem by introducing multiplicity: if we are given a set of convex polygons, and we are allowed to partition the set into multiple components and take the convex hull of each individual component, what is the minimum total sum of the perimeters of the convex hulls? We show why this problem is intriguing, and then introduce a novel algorithm with a run-time cubic in the total number of vertices. In the case that the input polygons are disjoint, we show an optimization that achieves a run-time that, in most cases, is cubic in the total number of polygons, within a logarithmic factor.
Bounding hull, such as convex hull, concave hull, alpha shapes etc. has vast applications in different areas especially in computational geometry. Alpha shape and concave hull are generalizations of convex hull. Unlike the convex hull, they construct non-convex enclosure on a set of points. In this paper, we introduce another generalization of convex hull, named alpha-concave hull, and compare this concept with convex hull and alpha shape. We show that the alpha-concave hull is also a generalization of an NP-complete problem named min-area TSP. We prove that computing the alpha-concave hull is…
This paper presents a new O(nlog(n)) algorithm for computing the convex hull of a set of 3 dimensional points. The algorithm first sorts the point in (x,y,z) then incrementally adds sorted points to the convex hull using the constraint that each new point added to the hull can 'see' at least one facet touching the last point added. The reduces the search time for adding new points. The algorithm belongs to the family of swept hull algorithms. While slower than q-hull for the general case it significantly outperforms q-hull for the pathological case where all of the points are on the 3D hull (a…
A new algorithm for the determination of the relative convex hull in the plane of a simple polygon A with respect to another simple polygon B which contains A, is proposed. The relative convex hull is also known as geodesic convex hull, and the problem of its determination in the plane is equivalent to find the shortest curve among all Jordan curves lying in the difference set of B and A and encircling A. Algorithms solving this problem known from Computational Geometry are based on the triangulation or similar decomposition of that difference set. The algorithm presented here does not use suc…
The convex hull describes the extent or shape of a set of data and is used ubiquitously in computational geometry. Common algorithms to construct the convex hull on a finite set of n points (x,y) range from O(nlogn) time to O(n) time. However, it is often the case that a heuristic procedure is applied to reduce the original set of n points to a set of s < n points which contains the hull and so accelerates the final hull finding procedure. We present an algorithm to precondition data before building a 2D convex hull with integer coordinates, with three distinct advantages. First, for all pract…
We consider the time-convex hull problem in the presence of two orthogonal highways H. In this problem, the travelling speed on the highway is faster than off the highway, and the time-convex hull of a point set P is the closure of P with respect to the inclusion of shortest time-paths. In this paper, we provide the algorithm for constructing the time-convex hull with two orthogonal highways. We reach the optimal result of O(n log n) time for arbitrary highway speed in the L1-metric. For the L2-metric with infinite highway speed, we hit the goal of O(n log n) time as well.
We study the convex-hull problem in a probabilistic setting, motivated by the need to handle data uncertainty inherent in many applications, including sensor databases, location-based services and computer vision. In our framework, the uncertainty of each input site is described by a probability distribution over a finite number of possible locations including a \emph{null} location to account for non-existence of the point. Our results include both exact and approximation algorithms for computing the probability of a query point lying inside the convex hull of the input, time-space tradeoffs …
We analyze the correctness of an O(n log n) time divide-and-conquer algorithm for the convex hull problem when each input point is a location determined by a normal distribution. We show that the algorithm finds the convex hull of such probabilistic points to precision within some expected correctness determined by a user-given confidence value. In order to precisely explain how correct the resulting structure is, we introduce a new certificate error model for calculating and understanding approximate geometric error based on the fundamental properties of a geometric structure. We show that th…
Convex hulls are a fundamental geometric tool used in a number of algorithms. A famous paper by Akl and Toussaint in 1978 described a way to reduce the number of points involved in the computation, which is since known as the Akl-Toussaint heuristics. This paper first studies what this heurstics really represents in terms of reduction of points and demonstrates that the optimum selection is reached using an octogon as the remaining number of points is in O(sqrt(N)) rather than the usual O(N). Then it focuses on optimising the overall computational efficiency in a convex hull computation. Altho…
We study the following range searching problem: Preprocess a set $P$ of $n$ points in the plane with respect to a set $\mathcal{O}$ of $k$ orientations % , for a constant, in the plane so that given an $\mathcal{O}$-oriented convex polygon $Q$, the convex hull of $P\cap Q$ can be computed efficiently, where an $\mathcal{O}$-oriented polygon is a polygon whose edges have orientations in $\mathcal{O}$. We present a data structure with $O(nk^3\log^2n)$ space and $O(nk^3\log^2n)$ construction time, and an $O(h+s\log^2 n)$-time query algorithm for any query $\mathcal{O}$-oriented convex $s$-gon $Q$…
Convex hulls are fundamental objects in computational geometry. In moderate dimensions or for large numbers of vertices, computing the convex hull can be impractical due to the computational complexity of convex hull algorithms. In this article we approximate the convex hull in using a scalable algorithm which finds high curvature vertices with high probability. The algorithm is particularly effective for approximating convex hulls which have a relatively small number of extreme points.
When using the convex hull approach in the boundary modeling process, Model-Based Calibration (MBC) software suites -- such as Model-Based Calibration Toolbox from MathWorks -- can be computationally intensive depending on the amount of data modeled. The reason for this is that the half-space representation of the convex hull is used. We discuss here another representation of the convex hull, the vertex representation, which proves capable to reduce the computational cost. Numerical comparisons in this article are executed in MATLAB by using MBC Toolbox commands, and show that for certain cond…
We consider the problem of computing the time-convex hull of a point set under the general $L_p$ metric in the presence of a straight-line highway in the plane. The traveling speed along the highway is assumed to be faster than that off the highway, and the shortest time-path between a distant pair may involve traveling along the highway. The time-convex hull ${TCH}(P)$ of a point set $P$ is the smallest set containing both $P$ and \emph{all} shortest time-paths between any two points in ${TCH}(P)$. In this paper we give an algorithm that computes the time-convex hull under the $L_p$ metric in…
Let $P$ be a planar set of $n$ points in general position. We consider the problem of computing an orientation of the plane for which the Rectilinear Convex Hull of $P$ has minimum area. Bae et al. (Computational Geometry: Theory and Applications, Vol. 42, 2009) solved the problem in quadratic time and linear space. We describe an algorithm that reduces this time complexity to $Θ(n \log n)$.
In this paper we present several results on the expected complexity of a convex hull of $n$ points chosen uniformly and independently from a convex shape. (i) We show that the expected number of vertices of the convex hull of $n$ points, chosen uniformly and independently from a disk is $O(n^{1/3})$, and $O(k \log{n})$ for the case a convex polygon with $k$ sides. Those results are well known (see \cite{rs-udkhv-63,r-slcdn-70,ps-cgi-85}), but we believe that the elementary proof given here are simpler and more intuitive. (ii) Let $\D$ be a set of directions in the plane, we define a generalize…
Many classical algorithms are known for computing the convex hull of a set of $n$ point in $\mathbb{R}^2$ using $O(n)$ space. For large point sets, whose size exceeds the size of the working space, these algorithms cannot be directly used. The current best streaming algorithm for computing the convex hull is computationally expensive, because it needs to solve a set of linear programs. In this paper, we propose simpler and faster streaming and W-stream algorithms for computing the convex hull. Our streaming algorithm has small pass complexity, which is roughly a square root of the current best…
We consider the problem of computing, given a set S of n points in the plane, which points of S are vertices of the convex hull of S. For certain variations of this problem, different proofs exist that the complexity of this problem in the algebraic decision tree model is Omega(n log n). This paper provides a relatively simple proof by reduction from epsilon-closeness.
An incremental approach for computation of convex hull for data points in two-dimensions is presented. The algorithm is not output-sensitive and costs a time that is linear in the size of data points at input. Graham's scan is applied only on a subset of the data points, represented at the extremal of the dataset. Points are classified for extremal, in proportion with the modular distance, about an imaginary point interior to the region bounded by convex hull of the dataset assumed for origin or center in polar coordinate. A subset of the data is arrived by terminating at until an event of no …
This paper presents a practical GPU-accelerated convex hull algorithm and a novel Sorting-based Preprocessing Approach (SPA) for planar point sets. The proposed algorithm consists of two stages: (1) two rounds of preprocessing performed on the GPU and (2) the finalization of calculating the expected convex hull on the CPU. We first discard the interior points that locate inside a quadrilateral formed by four extreme points, and then distribute the remaining points into several (typically four) sub regions. For each subset of points, we first sort them in parallel, then perform the second round…
We consider the problem of reporting convex hull points in an orthogonal range query in two dimensions. Formally, let $P$ be a set of $n$ points in $\mathbb{R}^{2}$. A point lies on the convex hull of a point set $S$ if it lies on the boundary of the minimum convex polygon formed by $S$. In this paper, we are interested in finding the points that lie on the boundary of the convex hull of the points in $P$ that also fall with in an orthogonal range$[x_{lt},x_{rt}]\times{}[y_b, y_t]$. We propose a $O(n \log^{2} n) $ space data structure that can support reporting points on a convex hull inside a…
We present a characterization, in terms of projective biduality, for the hypersurfaces appearing in the boundary of the convex hull of a compact real algebraic variety.
We describe a pure divide-and-conquer parallel algorithm for computing 3D convex hulls. We implement that algorithm on GPU hardware, and find a significant speedup over comparable CPU implementations.
In this article, a new solution for the convex hull problem has been presented. The convex hull is a widely known problem in computational geometry. As nature is a rich source of ideas in the field of algorithms, the solution has been inspired by nature. A tight elastic band is modeled using agents and also nails as points of the problem. By simulating an elastic band with nails in an environment, solving the convex hull problem will be possible. The algorithm runs in O(t) in which t is the time that an elastic band will get fixed.
In this paper, an effective method with time complexity of $\mathcal{O}(K^{3/2}N^2\log \frac{K}{ε_0})$ is introduced to find an approximation of the convex hull for $N$ points in dimension $n$, where $K$ is close to the number of vertices of the approximation. Since the time complexity is independent of dimension, this method is highly suitable for the data in high dimensions. Utilizing a greedy approach, the proposed method attempts to find the best approximate convex hull for a given number of vertices. The approximate convex hull can be a helpful substitute for the exact convex hull for on-…
Let $P$ be a set of $n$ points in $\mathbb{R}^3$ in general position, and let $RCH(P)$ be the rectilinear convex hull of $P$. In this paper we obtain an optimal $O(n\log n)$-time and $O(n)$-space algorithm to compute $RCH(P)$. We also obtain an efficient $O(n\log^2 n)$-time and $O(n\log n)$-space algorithm to compute and maintain the set of vertices of the rectilinear convex hull of $P$ as we rotate $\mathbb R^3$ around the $z$-axis. Finally we study some properties of the rectilinear convex hulls of point sets in $\mathbb{R}^3$.
Given a set $Σ$ of spheres in $\mathbb{E}^d$, with $d\ge{}3$ and $d$ odd, having a fixed number of $m$ distinct radii $ρ_1,ρ_2,...,ρ_m$, we show that the worst-case combinatorial complexity of the convex hull $CH_d(Σ)$ of $Σ$ is $Θ(\sum_{1\le{}i\ne{}j\le{}m}n_in_j^{\lfloor\frac{d}{2}\rfloor})$, where $n_i$ is the number of spheres in $Σ$ with radius $ρ_i$. To prove the lower bound, we construct a set of $Θ(n_1+n_2)$ spheres in $\mathbb{E}^d$, with $d\ge{}3$ odd, where $n_i$ spheres have radius $ρ_i$, $i=1,2$, and $ρ_2\neρ_1$, such that their convex hull has combinatorial complexity $Ω(n_1n_2^{…
We prove that for certain families of semi-algebraic convex bodies in 3 dimensions, the convex hull of $n$ disjoint bodies has $O(nλ_s(n))$ features, where $s$ is a constant depending on the family: $λ_s(n)$ is the maximum length of order-$s$ Davenport-Schinzel sequences with $n$ letters. The argument is based on an apparently new idea of `compact families' of convex bodies or discs, and of `crossing content' of disc intersections.
The boundary of the convex hull of a compact algebraic curve in real 3-space defines a real algebraic surface. For general curves, that boundary surface is reducible, consisting of tritangent planes and a scroll of stationary bisecants. We express the degree of this surface in terms of the degree, genus and singularities of the curve. We present algorithms for computing their defining polynomials, and we exhibit a wide range of examples.
The convex hull of a set of points, $C$, serves to expose extremal properties of $C$ and can help identify elements in $C$ of high interest. For many problems, particularly in the presence of noise, the true vertex set (and facets) may be difficult to determine. One solution is to expand the list of high interest candidates to points lying near the boundary of the convex hull. We propose a quadratic program for the purpose of stratifying points in a data cloud based on proximity to the boundary of the convex hull. For each data point, a quadratic program is solved to determine an associated we…
Extending results of Hershberger and Suri for the Euclidean plane, we show that ball hulls and ball intersections of sets of $n$ points in strictly convex normed planes can be constructed in $O(n \log n)$ time. In addition, we confirm that, like in the Euclidean subcase, the $2$-center problem with constrained circles can be solved also for strictly convex normed planes in $O(n^2)$ time. Some ideas for extending these results to more general types of normed planes are also presented.
Number Decision Diagrams (NDD) provide a natural finite symbolic representation for regular set of integer vectors encoded as strings of digit vectors (least or most significant digit first). The convex hull of the set of vectors represented by a NDD is proved to be an effectively computable convex polyhedron.
In this article, we determine the amortized computational complexity of the planar dynamic convex hull problem by querying. We present a data structure that maintains a set of n points in the plane under the insertion and deletion of points in amortized O(log n) time per operation. The space usage of the data structure is O(n). The data structure supports extreme point queries in a given direction, tangent queries through a given point, and queries for the neighboring points on the convex hull in O(log n) time. The extreme point queries can be used to decide whether or not a given line interse…
We present a convex hull algorithm that is accelerated on commodity graphics hardware. We analyze and identify the hurdles of writing a recursive divide and conquer algorithm on the GPU and divise a framework for representing this class of problems. Our framework transforms the recursive splitting step into a permutation step that is well-suited for graphics hardware. Our convex hull algorithm of choice is Quickhull. Our parallel Quickhull implementation (for both 2D and 3D cases) achieves an order of magnitude speedup over standard computational geometry libraries.
We propose a cut-based algorithm for finding all vertices and all facets of the convex hull of all integer points of a polyhedron defined by a system of linear inequalities. Our algorithm DDM Cuts is based on the Gomory cuts and the dynamic version of the double description method. We describe the computer implementation of the algorithm and present the results of computational experiments comparing our algorithm with a naive one.
Globally non-positively curved, or CAT(0), polyhedral complexes arise in a number of applications, including evolutionary biology and robotics. These spaces have unique shortest paths and are composed of Euclidean polyhedra, yet many algorithms and properties of shortest paths and convex hulls in Euclidean space fail to transfer over. We give an algorithm, using linear programming, to compute the convex hull of a set of points in a 2-dimensional CAT(0) polyhedral complex with a single vertex. We explore the use of shortest path maps to answer single-source shortest path queries in 2-dimensiona…