19,010 research outputs found
Faster Geometric Algorithms via Dynamic Determinant Computation
The computation of determinants or their signs is the core procedure in many
important geometric algorithms, such as convex hull, volume and point location.
As the dimension of the computation space grows, a higher percentage of the
total computation time is consumed by these computations. In this paper we
study the sequences of determinants that appear in geometric algorithms. The
computation of a single determinant is accelerated by using the information
from the previous computations in that sequence.
We propose two dynamic determinant algorithms with quadratic arithmetic
complexity when employed in convex hull and volume computations, and with
linear arithmetic complexity when used in point location problems. We implement
the proposed algorithms and perform an extensive experimental analysis. On one
hand, our analysis serves as a performance study of state-of-the-art
determinant algorithms and implementations. On the other hand, we demonstrate
the supremacy of our methods over state-of-the-art implementations of
determinant and geometric algorithms. Our experimental results include a 20 and
78 times speed-up in volume and point location computations in dimension 6 and
11 respectively.Comment: 29 pages, 8 figures, 3 table
Preconditioning 2D integer data for fast convex hull computations
In order to accelerate computing the convex hull on a set of n points, a heuristic procedure is often applied to reduce the number of points to a set of s points, s ? n, which also contains the same hull. We present an algorithm to precondition 2D data with integer coordinates bounded by a box of size p × q before building a 2D convex hull, with three distinct advantages. First, we prove that under the condition min(p, q) ? n the algorithm executes in time within O(n); second, no explicit sorting of data is required; and third, the reduced set of s points forms a simple polygonal chain and thus can be directly pipelined into an O(n) time convex hull algorithm. This paper empirically evaluates and quantifies the speed up gained by preconditioning a set of points by a method based on the proposed algorithm before using common convex hull algorithms to build the final hull. A speedup factor of at least four is consistently found from experiments on various datasets when the condition min(p, q) ? n holds; the smaller the ratio min(p, q)/n is in the dataset, the greater the speedup factor achieved
Convex Hulls of Algebraic Sets
This article describes a method to compute successive convex approximations
of the convex hull of a set of points in R^n that are the solutions to a system
of polynomial equations over the reals. The method relies on sums of squares of
polynomials and the dual theory of moment matrices. The main feature of the
technique is that all computations are done modulo the ideal generated by the
polynomials defining the set to the convexified. This work was motivated by
questions raised by Lov\'asz concerning extensions of the theta body of a graph
to arbitrary real algebraic varieties, and hence the relaxations described here
are called theta bodies. The convexification process can be seen as an
incarnation of Lasserre's hierarchy of convex relaxations of a semialgebraic
set in R^n. When the defining ideal is real radical the results become
especially nice. We provide several examples of the method and discuss
convergence issues. Finite convergence, especially after the first step of the
method, can be described explicitly for finite point sets.Comment: This article was written for the "Handbook of Semidefinite, Cone and
Polynomial Optimization: Theory, Algorithms, Software and Applications
Algorithmic geometry with infinite time computation
In this project we do an algorithmic study of problems from computational geometry with countably infinite input, especially countable sets in R^n. To do so, we use the infinite time Blum-Shub-Smale (ITBSS) machine, which is capable to extend computations to infinite time. We present this framework, explained with several algorithms, some results on the ITBSS Machine, and a storage system capable of encoding, editing and extracting sequences of real numbers. We study different geometric problems, giving algorithmic solutions to several of them. The accumulation points problem in R^2 is presented and solved for countable sets with finitely many accumulation points. Also, the convex hull problem is studied. We show how to compute the closure of the convex hull of countable bounded sets in R^n. The non-crossing perfect matching problem with infinite input is addressed as well
Memory-Adjustable Navigation Piles with Applications to Sorting and Convex Hulls
We consider space-bounded computations on a random-access machine (RAM) where
the input is given on a read-only random-access medium, the output is to be
produced to a write-only sequential-access medium, and the available workspace
allows random reads and writes but is of limited capacity. The length of the
input is elements, the length of the output is limited by the computation,
and the capacity of the workspace is bits for some predetermined
parameter . We present a state-of-the-art priority queue---called an
adjustable navigation pile---for this restricted RAM model. Under some
reasonable assumptions, our priority queue supports and
in worst-case time and in worst-case time for any . We show how to use this
data structure to sort elements and to compute the convex hull of
points in the two-dimensional Euclidean space in
worst-case time for any . Following a known lower bound for the
space-time product of any branching program for finding unique elements, both
our sorting and convex-hull algorithms are optimal. The adjustable navigation
pile has turned out to be useful when designing other space-efficient
algorithms, and we expect that it will find its way to yet other applications.Comment: 21 page
Geometric Reasoning with polymake
The mathematical software system polymake provides a wide range of functions
for convex polytopes, simplicial complexes, and other objects. A large part of
this paper is dedicated to a tutorial which exemplifies the usage. Later
sections include a survey of research results obtained with the help of
polymake so far and a short description of the technical background
- …