Results 1  10
of
95
DavenportSchinzel Sequences and Their Geometric Applications
, 1998
"... An (n; s) DavenportSchinzel sequence, for positive integers n and s, is a sequence composed of n distinct symbols with the properties that no two adjacent elements are equal, and that it does not contain, as a (possibly noncontiguous) subsequence, any alternation a \Delta \Delta \Delta b \Delta \ ..."
Abstract

Cited by 425 (121 self)
 Add to MetaCart
An (n; s) DavenportSchinzel sequence, for positive integers n and s, is a sequence composed of n distinct symbols with the properties that no two adjacent elements are equal, and that it does not contain, as a (possibly noncontiguous) subsequence, any alternation a \Delta \Delta \Delta b \Delta \Delta \Delta a \Delta \Delta \Delta b \Delta \Delta \Delta of length s + 2 between two distinct symbols a and b. The close relationship between DavenportSchinzel sequences and the combinatorial structure of lower envelopes of collections of functions make the sequences very attractive because a variety of geometric problems can be formulated in terms of lower envelopes. A nearlinear bound on the maximum length of DavenportSchinzel sequences enable us to derive sharp bounds on the combinatorial structure underlying various geometric problems, which in turn yields efficient algorithms for these problems.
Simulation of Simplicity: A Technique to Cope with Degenerate Cases in Geometric Algorithms
 ACM TRANS. GRAPH
, 1990
"... This paper describes a generalpurpose programming technique, called the Simulation of Simplicity, which can be used to cope with degenerate input data for geometric algorithms. It relieves the programmer from the task to provide a consistent treatment for every single special case that can occur. T ..."
Abstract

Cited by 277 (21 self)
 Add to MetaCart
This paper describes a generalpurpose programming technique, called the Simulation of Simplicity, which can be used to cope with degenerate input data for geometric algorithms. It relieves the programmer from the task to provide a consistent treatment for every single special case that can occur. The programs that use the technique tend to be considerably smaller and more robust than those that do not use it. We believe that this technique will become a standard tool in writing geometric software.
A Pivoting Algorithm for Convex Hulls and Vertex Enumeration of Arrangements and Polyhedra
, 1992
"... We present a new piv otbased algorithm which can be used with minor modification for the enumeration of the facets of the convex hull of a set of points, or for the enumeration of the vertices of an arrangement or of a convex polyhedron, in arbitrary dimension. The algorithm has the following prope ..."
Abstract

Cited by 184 (28 self)
 Add to MetaCart
We present a new piv otbased algorithm which can be used with minor modification for the enumeration of the facets of the convex hull of a set of points, or for the enumeration of the vertices of an arrangement or of a convex polyhedron, in arbitrary dimension. The algorithm has the following properties: (a) Virtually no additional storage is required beyond the input data; (b) The output list produced is free of duplicates; (c) The algorithm is extremely simple, requires no data structures, and handles all degenerate cases; (d) The running time is output sensitive for nondegenerate inputs; (e) The algorithm is easy to efficiently parallelize. For example, the algorithm finds the v vertices of a polyhedron in R d defined by a nondegenerate system of n inequalities (or dually, the v facets of the convex hull of n points in R d,where each facet contains exactly d given points) in time O(ndv) and O(nd) space. The v vertices in a simple arrangement of n hyperplanes in R d can be found in O(n 2 dv) time and O(nd) space complexity. The algorithm is based on inverting finite pivot algorithms for linear programming.
An optimal algorithm for intersecting line segments in the plane
 J. ACM
, 1992
"... Abstract. Themain contribution ofthiswork is an O(nlogr ~ +k)timeal gorithmfo rcomputingall k intersections among n line segments in the plane, This time complexity IS easdy shown to be optimal. Within thesame asymptotic cost, ouralgorithm canalso construct thesubdiwslon of theplancdefmed by the se ..."
Abstract

Cited by 161 (2 self)
 Add to MetaCart
Abstract. Themain contribution ofthiswork is an O(nlogr ~ +k)timeal gorithmfo rcomputingall k intersections among n line segments in the plane, This time complexity IS easdy shown to be optimal. Within thesame asymptotic cost, ouralgorithm canalso construct thesubdiwslon of theplancdefmed by the segments and compute which segment (if any) lies right above (or below) each intersection and each endpoint. The algorithm has been implemented and performs very well. The storage requirement is on the order of n + k in the worst case, but it is considerably lower in practice. To analyze the complexity of the algorithm, an amortization argument based on a new combinatorial theorem on line arrangements is used.
Kinetic Data Structures  A State of the Art Report
, 1998
"... ... In this paper we present a general framework for addressing such problems and the tools for designing and analyzing relevant algorithms, which we call kinetic data structures. We discuss kinetic data structures for a variety of fundamental geometric problems, such as the maintenance of convex hu ..."
Abstract

Cited by 92 (27 self)
 Add to MetaCart
... In this paper we present a general framework for addressing such problems and the tools for designing and analyzing relevant algorithms, which we call kinetic data structures. We discuss kinetic data structures for a variety of fundamental geometric problems, such as the maintenance of convex hulls, Voronoi and Delaunay diagrams, closest pairs, and intersection and visibility problems. We also briefly address the issues that arise in implementing such structures robustly and efficiently. The resulting techniques satisfy three desirable properties: (1) they exploit the continuity of the motion of the objects to gain efficiency, (2) the number of events processed by the algorithms is close to the minimum necessary in the worst case, and (3) any object may change its `flight plan' at any moment with a low cost update to the simulation data structures. For computer applications dealing with motion in the physical world, kinetic data structures lead to simulation performance unattainable by other means. In addition, they raise fundamentally new combinatorial and algorithmic questions whose study may prove fruitful for other disciplines as well.
Color and Sound in Algorithm Animation
 COMPUTER
, 1991
"... Although systems for animating algorithms are becoming more powerful and easier for programmers to use, not enough attention has been given to the techniques that an algorithm animator needs to create effective visualizations. This paper reviews the techniques for algorithm animation reported in the ..."
Abstract

Cited by 87 (8 self)
 Add to MetaCart
Although systems for animating algorithms are becoming more powerful and easier for programmers to use, not enough attention has been given to the techniques that an algorithm animator needs to create effective visualizations. This paper reviews the techniques for algorithm animation reported in the literature thus far and introduces new techniques that we have developed for using color and, to a lesser extent, sound. The paper also presents six algorithm animations that illustrate the new techniques. A videotape of these animations is available.
Topologically Sweeping Visibility Complexes via Pseudotriangulations
, 1996
"... This paper describes a new algorithm for constructing the set of free bitangents of a collection of n disjoint convex obstacles of constant complexity. The algorithm runs in time O(n log n + k), where k is the output size, and uses O(n) space. While earlier algorithms achieve the same optimal run ..."
Abstract

Cited by 86 (9 self)
 Add to MetaCart
This paper describes a new algorithm for constructing the set of free bitangents of a collection of n disjoint convex obstacles of constant complexity. The algorithm runs in time O(n log n + k), where k is the output size, and uses O(n) space. While earlier algorithms achieve the same optimal running time, this is the first optimal algorithm that uses only linear space. The visibility graph or the visibility complex can be computed in the same time and space. The only complicated data structure used by the algorithm is a splittable queue, which can be implemented easily using redblack trees. The algorithm is conceptually very simple, and should therefore be easy to implement and quite fast in practice. The algorithm relies on greedy pseudotriangulations, which are subgraphs of the visibility graph with many nice combinatorial properties. These properties, and thus the correctness of the algorithm, are partially derived from properties of a certain partial order on the faces of th...
Arrangements and Their Applications
 Handbook of Computational Geometry
, 1998
"... The arrangement of a finite collection of geometric objects is the decomposition of the space into connected cells induced by them. We survey combinatorial and algorithmic properties of arrangements of arcs in the plane and of surface patches in higher dimensions. We present many applications of arr ..."
Abstract

Cited by 78 (22 self)
 Add to MetaCart
The arrangement of a finite collection of geometric objects is the decomposition of the space into connected cells induced by them. We survey combinatorial and algorithmic properties of arrangements of arcs in the plane and of surface patches in higher dimensions. We present many applications of arrangements to problems in motion planning, visualization, range searching, molecular modeling, and geometric optimization. Some results involving planar arrangements of arcs have been presented in a companion chapter in this book, and are extended in this chapter to higher dimensions. Work by P.A. was supported by Army Research Office MURI grant DAAH049610013, by a Sloan fellowship, by an NYI award, and by a grant from the U.S.Israeli Binational Science Foundation. Work by M.S. was supported by NSF Grants CCR9122103 and CCR9311127, by a MaxPlanck Research Award, and by grants from the U.S.Israeli Binational Science Foundation, the Israel Science Fund administered by the Israeli Ac...
Geometric Reasoning about Mechanical Assembly
 Artificial Intelligence
, 1994
"... In which order can a product be assembled or disassembled? How many hands are required? How many degrees of freedom? What parts should be withdrawn to allow the removal of a specified subassembly? To answer such questions automatically, important theoretical issues in geometric reasoning must be ..."
Abstract

Cited by 66 (18 self)
 Add to MetaCart
In which order can a product be assembled or disassembled? How many hands are required? How many degrees of freedom? What parts should be withdrawn to allow the removal of a specified subassembly? To answer such questions automatically, important theoretical issues in geometric reasoning must be addressed. This paper investigates the planning of assembly algorithms specifying (dis)assembly operations on the components of a product and the ordering of these operations. It also presents measures to evaluate the complexity of these algorithms and techniques to estimate the inherent complexity of a product. The central concept underlying these planning and complexity evaluation techniques is that of a "nondirectional blocking graph," a qualitative representation of the internal structure of an assembly product. This representation describes the combinatorial set of parts interactions in polynomial space. It is obtained by identifying physical criticalities where geometric int...
Iterated Nearest Neighbors and Finding Minimal Polytopes
, 1994
"... Weintroduce a new method for finding several types of optimal kpoint sets, minimizing perimeter, diameter, circumradius, and related measures, by testing sets of the O(k) nearest neighbors to each point. We argue that this is better in a number of ways than previous algorithms, whichwere based o ..."
Abstract

Cited by 56 (6 self)
 Add to MetaCart
Weintroduce a new method for finding several types of optimal kpoint sets, minimizing perimeter, diameter, circumradius, and related measures, by testing sets of the O(k) nearest neighbors to each point. We argue that this is better in a number of ways than previous algorithms, whichwere based on high order Voronoi diagrams. Our technique allows us for the first time to efficiently maintain minimal sets as new points are inserted, to generalize our algorithms to higher dimensions, to find minimal convex kvertex polygons and polytopes, and to improvemany previous results. Weachievemany of our results via a new algorithm for finding rectilinear nearest neighbors in the plane in time O(n log n+kn). We also demonstrate a related technique for finding minimum area kpoint sets in the plane, based on testing sets of nearest vertical neighbors to each line segment determined by a pair of points. A generalization of this technique also allows us to find minimum volume and boundary measure sets in arbitrary dimensions.