771 research outputs found
Space-Time Trade-offs for Stack-Based Algorithms
In memory-constrained algorithms we have read-only access to the input, and
the number of additional variables is limited. In this paper we introduce the
compressed stack technique, a method that allows to transform algorithms whose
space bottleneck is a stack into memory-constrained algorithms. Given an
algorithm \alg\ that runs in O(n) time using variables, we can
modify it so that it runs in time using a workspace of O(s)
variables (for any ) or time using variables (for any ). We also show how the technique
can be applied to solve various geometric problems, namely computing the convex
hull of a simple polygon, a triangulation of a monotone polygon, the shortest
path between two points inside a monotone polygon, 1-dimensional pyramid
approximation of a 1-dimensional vector, and the visibility profile of a point
inside a simple polygon. Our approach exceeds or matches the best-known results
for these problems in constant-workspace models (when they exist), and gives
the first trade-off between the size of the workspace and running time. To the
best of our knowledge, this is the first general framework for obtaining
memory-constrained algorithms
Approximate Euclidean shortest paths in polygonal domains
Given a set of pairwise disjoint simple polygonal obstacles
in defined with vertices, we compute a sketch of
whose size is independent of , depending only on and the
input parameter . We utilize to compute a
-approximate geodesic shortest path between the two given points
in time. Here, is a user
parameter, and is a small positive constant (resulting from the time
for triangulating the free space of using the algorithm in
\cite{journals/ijcga/Bar-YehudaC94}). Moreover, we devise a
-approximation algorithm to answer two-point Euclidean distance
queries for the case of convex polygonal obstacles.Comment: a few updates; accepted to ISAAC 201
A Contribution to Triangulation Algorithms for Simple Polygons
Decomposing simple polygon into simpler components is one of the basic tasks in computational geometry and its applications. The most important simple polygon decomposition is triangulation. The known algorithms for polygon triangulation can be classified into three groups: algorithms based on diagonal inserting, algorithms based on Delaunay triangulation, and the algorithms using Steiner points. The paper briefly explains the most popular algorithms from each group and summarizes the common features of the groups. After that four algorithms based on diagonals insertion are tested: a recursive diagonal inserting algorithm, an ear cutting algorithm, Kong’s Graham scan algorithm, and Seidel’s randomized incremental algorithm. An analysis concerning speed, the quality of the output triangles and the ability to handle holes is done at the end
On k-Convex Polygons
We introduce a notion of -convexity and explore polygons in the plane that
have this property. Polygons which are \mbox{-convex} can be triangulated
with fast yet simple algorithms. However, recognizing them in general is a
3SUM-hard problem. We give a characterization of \mbox{-convex} polygons, a
particularly interesting class, and show how to recognize them in \mbox{} time. A description of their shape is given as well, which leads to
Erd\H{o}s-Szekeres type results regarding subconfigurations of their vertex
sets. Finally, we introduce the concept of generalized geometric permutations,
and show that their number can be exponential in the number of
\mbox{-convex} objects considered.Comment: 23 pages, 19 figure
- …