Results 1  10
of
66
Geometric Shortest Paths and Network Optimization
 Handbook of Computational Geometry
, 1998
"... Introduction A natural and wellstudied problem in algorithmic graph theory and network optimization is that of computing a "shortest path" between two nodes, s and t, in a graph whose edges have "weights" associated with them, and we consider the "length" of a path to be the sum of the weights of t ..."
Abstract

Cited by 147 (12 self)
 Add to MetaCart
Introduction A natural and wellstudied problem in algorithmic graph theory and network optimization is that of computing a "shortest path" between two nodes, s and t, in a graph whose edges have "weights" associated with them, and we consider the "length" of a path to be the sum of the weights of the edges that comprise it. Efficient algorithms are well known for this problem, as briefly summarized below. The shortest path problem takes on a new dimension when considered in a geometric domain. In contrast to graphs, where the encoding of edges is explicit, a geometric instance of a shortest path problem is usually specified by giving geometric objects that implicitly encode the graph and its edge weights. Our goal in devising efficient geometric algorithms is generally to avoid explicit construction of the entire underlying graph, since the full induced graph may be very large (even exponential in the input size, or infinite). Computing an optimal
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...
An Optimal Algorithm for Euclidean Shortest Paths in the Plane
 SIAM J. Comput
, 1997
"... We propose an optimaltime algorithm for a classical problem in plane computational geometry: computing a shortest path between two points in the presence of polygonal obstacles. Our algorithm runs in worstcase time O(n log n) and requires O(n log n) space, where n is the total number of vertice ..."
Abstract

Cited by 86 (1 self)
 Add to MetaCart
We propose an optimaltime algorithm for a classical problem in plane computational geometry: computing a shortest path between two points in the presence of polygonal obstacles. Our algorithm runs in worstcase time O(n log n) and requires O(n log n) space, where n is the total number of vertices in the obstacle polygons. The algorithm is based on an efficient implementation of wavefront propagation among polygonal obstacles, and it actually computes a planar map encoding shortest paths from a fixed source point to all other points of the plane; the map can be used to answer singlesource shortest path queries in O(logn) time. The time complexity of our algorithm is a significant improvement over all previously published results on the shortest path problem. Finally, we also discuss extensions to more general shortest path problems, involving nonpoint and multiple sources. 1 Introduction 1.1 The Background and Our Result The Euclidean shortest path problem is one of the o...
Computing Minimum Length Paths of a Given Homotopy Class
 Comput. Geom. Theory Appl
, 1991
"... In this paper, we show that the universal covering space of a surface can be used to unify previous results on computing paths in a simple polygon. We optimize a given path among obstacles in the plane under the Euclidean and link metrics and under polygonal convex distance functions. Besides reveal ..."
Abstract

Cited by 74 (7 self)
 Add to MetaCart
In this paper, we show that the universal covering space of a surface can be used to unify previous results on computing paths in a simple polygon. We optimize a given path among obstacles in the plane under the Euclidean and link metrics and under polygonal convex distance functions. Besides revealing connections between the minimum paths under these three distance functions, the framework provided by the universal cover leads to simplified lineartime algorithms for shortest path trees, for minimumlink paths in simple polygons, and for paths restricted to c given orientations. 1 Introduction If a wire, a pipe, or a robot must traverse a path among obstacles in the plane, then one might ask what is the best route to take. For the wire, perhaps the shortest distance is best; for the pipe, perhaps the fewest straightline segments. For the robot, either might be best depending on the relative costs of turning and moving. In this paper, we find shortest paths and shortest closed curve...
MinimumLink Paths Among Obstacles in the Plane
 ALGORITHMICA
, 1992
"... Given a set of nonintersecting polygonal obstacles in the plane, the link distance between two points s and t is the minimum number of edges required to form a polygonal path connecting s to t that avoids all obstacles. We present an algorithm that computes the link distance (and a correspon ..."
Abstract

Cited by 53 (6 self)
 Add to MetaCart
Given a set of nonintersecting polygonal obstacles in the plane, the link distance between two points s and t is the minimum number of edges required to form a polygonal path connecting s to t that avoids all obstacles. We present an algorithm that computes the link distance (and a corresponding minimumlink path) between two points in time O(E#(n) log² n) (and space O(E)), where n is the total number of edges of the obstacles, E is the size of the visibility graph, and #(n) denotes the extremely slowly growing inverse of Ackermann's function. We show how to extend our method to allow computation of a tree (rooted at s) of minimumlink paths from s to all obstacle vertices. This leads to a method of solving the query version of our problem (for query points t).
New Methods for Computing Visibility Graphs
, 1988
"... Let S be a set of n nonintersecting line segments in the plane. The visibility graph Gs of S is the graph that has the endpoints of the segments in S as nodes and in which two nodes are adjacent whenever they can "see"each other (i.e., the open line segment join ing them is disjoint from all segme ..."
Abstract

Cited by 35 (2 self)
 Add to MetaCart
Let S be a set of n nonintersecting line segments in the plane. The visibility graph Gs of S is the graph that has the endpoints of the segments in S as nodes and in which two nodes are adjacent whenever they can "see"each other (i.e., the open line segment join ing them is disjoint from all segments or is contained in a segment). Two new methods are presented to construct Gs. Both methods are very simple to implement. The first method is based on a new solution to the following problem: given a set of points, for each point sort the other points around it by angle. It runs in time O(n2). The second method uses the fact that visibility graphs often are sparse and runs in time O(m log n) where m is the number of edges in Gs. Both methods use only O(n) storage.
An Efficient Algorithm for Euclidean Shortest Paths Among Polygonal Obstacles in the Plane
, 1988
"... We give an algorithm to compute a (Euclidean) shortest path in a polygon with h holes and a total of n vertices. The algorithm uses O(n) space and requires O(n + h² log n) time. ..."
Abstract

Cited by 34 (1 self)
 Add to MetaCart
We give an algorithm to compute a (Euclidean) shortest path in a polygon with h holes and a total of n vertices. The algorithm uses O(n) space and requires O(n + h² log n) time.
Computing the Visibility Graph via Pseudotriangulations
 In Proc. 11th Annu. ACM Sympos. Comput. Geom
, 1995
"... We show that the k free bitangents of a collection of n pairwise disjoint convex plane sets can be computed in time O(k+n log n) and O(n) working space. The algorithm uses only one advanced data structure, namely a splittable queue. We introduce (weakly) greedy pseudotriangulations, whose combinat ..."
Abstract

Cited by 31 (2 self)
 Add to MetaCart
We show that the k free bitangents of a collection of n pairwise disjoint convex plane sets can be computed in time O(k+n log n) and O(n) working space. The algorithm uses only one advanced data structure, namely a splittable queue. We introduce (weakly) greedy pseudotriangulations, whose combinatorial properties are crucial for our method. 1 Introduction Consider a collection O of pairwise disjoint convex objects in the plane. We are interested in problems in which these objects arise as obstacles, either in connection with visibility problems where they can block the view from an other geometric object, or in motion planning, where these objects may prevent a moving object from moving along a straight line path. The visibility graph is a central object in such contexts. For polygonal obstacles the vertices of these polygons are the nodes of the visibility graph, and two nodes are connected by an arc if the corresponding vertices can see each other. [9] describes the first nontriv...
The VisibilityVoronoi complex and its applications
 In Proc. 21st Annu. ACM Sympos. Comput. Geom. (SCG
, 2005
"... We introduce a new type of diagram called the VV (c)diagram (the Visibility–Voronoi diagram for clearance c), which is a hybrid between the visibility graph and the Voronoi diagram of polygons in the plane. It evolves from the visibility graph to the Voronoi diagram as the parameter c grows from 0 ..."
Abstract

Cited by 25 (3 self)
 Add to MetaCart
We introduce a new type of diagram called the VV (c)diagram (the Visibility–Voronoi diagram for clearance c), which is a hybrid between the visibility graph and the Voronoi diagram of polygons in the plane. It evolves from the visibility graph to the Voronoi diagram as the parameter c grows from 0 to ∞. This diagram can be used for planning naturallooking paths for a robot translating amidst polygonal obstacles in the plane. A naturallooking path is short, smooth, and keeps — where possible — an amount of clearance c from the obstacles. The VV (c)diagram contains such paths. We also propose an algorithm that is capable of preprocessing a scene of configurationspace polygonal obstacles and constructs a data structure called the VVcomplex. The VVcomplex can be used to efficiently plan motion paths for any start and goal configuration and any clearance value c, without having to explicitly construct the VV (c)diagram for that cvalue. The preprocessing time is O(n 2 log n), where n is the total number of obstacle vertices, and the data structure can be queried directly for any cvalue by merely performing a Dijkstra search. We have implemented a Cgalbased software package for computing the VV (c)diagram in an exact manner for a given clearance value, and used it to plan naturallooking paths in various applications.
On the Union of Fat Wedges and Separating a Collection of Segments by a Line
"... We call a line ` a separator for a set S of objects in the plane if ` avoids all the objects and partitions S into two nonempty subsets, one consisting of objects lying above ` and the other of objects lying below `. In this paper we present an O(n log n) time algorithm for finding a separator li ..."
Abstract

Cited by 24 (11 self)
 Add to MetaCart
We call a line ` a separator for a set S of objects in the plane if ` avoids all the objects and partitions S into two nonempty subsets, one consisting of objects lying above ` and the other of objects lying below `. In this paper we present an O(n log n) time algorithm for finding a separator line for a set of n segments, provided the ratio between the diameter of the set of segments and the length of the smallest segment is bounded. No subquadratic algorithms are known for the general case. Our algorithm is based on the recent results of [13], concerning the union of `fat ' triangles, but we also include an analysis which improves the bounds obtained in [13].