We provide linear-time algorithms for geometric graphs with sublinearly many crossings. That is, we provide algorithms running in O(n) time on connected geometric graphs having n vertices and k crossings, where k is smaller than n by an iterated logarithmic factor. Specific problems we study include Voronoi diagrams and single-source shortest paths. Our algorithms all run in linear time in the standard comparison-based computational model; hence, we make no assumptions about the distribution or bit complexities of edge weights, nor do we utilize unusual bit-level operations on memory words. Instead, our algorithms are based on a planarization method that "zeroes in" on edge crossings, together with methods for extending planar separator decompositions to geometric graphs with sublinearly many crossings. Incidentally, our planarization algorithm also solves an open computational geometry problem of Chazelle for triangulating a self-intersecting polygonal chain having n segments and k crossings in linear time, for the case when k is sublinear in n by an iterated logarithmic factor.
Deep Dive into Linear-Time Algorithms for Geometric Graphs with Sublinearly Many Edge Crossings.
We provide linear-time algorithms for geometric graphs with sublinearly many crossings. That is, we provide algorithms running in O(n) time on connected geometric graphs having n vertices and k crossings, where k is smaller than n by an iterated logarithmic factor. Specific problems we study include Voronoi diagrams and single-source shortest paths. Our algorithms all run in linear time in the standard comparison-based computational model; hence, we make no assumptions about the distribution or bit complexities of edge weights, nor do we utilize unusual bit-level operations on memory words. Instead, our algorithms are based on a planarization method that “zeroes in” on edge crossings, together with methods for extending planar separator decompositions to geometric graphs with sublinearly many crossings. Incidentally, our planarization algorithm also solves an open computational geometry problem of Chazelle for triangulating a self-intersecting polygonal chain having n segments and k cr
A geometric graph [48] is an embedding of a graph G = (V, E) in R 2 so that each vertex v is associated with a unique point p in R 2 and each edge is "drawn" as a straight line segment joining the points associated with its end vertices. Moreover, the edges incident on each vertex v are given in angular order around v, so that faces in the embedding of G in R 2 are well-defined (e.g., using the next-clockwise-edge ordering). Thus, we use the same notation and terminology to refer to G and its embedding. If the edges in G have no crossings, then G is said to be a plane graph, while graphs that admit realizations as plane graphs are planar graphs [18,27].
Geometric graphs are natural abstractions of the geometric and connectivity relationships that arise in a number of applications, including road networks, railroad networks, and utility distribution grids, as well as sewer lines and the physical connections defining the Internet. An example road network is shown in Figure 1.
Although planar graphs and their plane graph realizations have been studied extensively (e.g., see [54]), real-world geometric graphs often contain edge crossings. Recent experimental studies by the first two authors gives empirical evidence that real-world road networks typically have Θ( √ n) edge crossings, where n is the number of vertices [23]. Motivated by this real-world example, therefore, we are interested in studying algorithms for connected geometric graphs that have a sublinear number of edge crossings. However, we use a weaker restriction on the number of crossings than the bounds that our evidence suggests for road networks: here we are interested in n-vertex geometric graphs that have at most O(n/ log (c) n) edge crossings, for some constant c, where log (c) n denotes the c-th iterated logarithm function. We refer to such geometric graphs as restrained graphs.
Given an n-vertex geometric graph G, the planarization1 of G is the graph G that is defined by the arrangement of the edges in G. That is, as shown in Figure 2, we place a vertex in G for every vertex and pairwise edge crossing in G, and we create an edge in G for every maximal edge segment from G that connects exactly two vertices in G . Likewise, we preserve the (clockwise/counterclockwise) ordering of edges around corresponding vertices in G and G , and we assume that intersection vertices in G similarly have their edges given in rotational order. Thus, G is a plane graph having n + k vertices, where k is the number of pairwise edge crossings among the edges in G. By well-known properties of planar graphs (e.g., see [47,Prop. 2.1.6]), this implies that G has at most 3n + 3k -6 edges, which in turn implies that G has at most 3n + k -6 edges. Therefore, by restricting our attention to connected geometric graphs with a sublinear number of edge crossings, we are, by implication, focusing on connected geometric graphs that have O(n) edges in their planarizations.
As mentioned above, a wealth of algorithms are known for planar graphs and plane graphs. Indeed, many of these algorithms, for such problems as single-source shortest paths and minimum spanning trees, run in O(n) time. Much less is known for non-planar geometric graphs, however, Figure 2: A geometric graph and its planarization. which motivates our interest in such graphs in this paper. Specifically, we are interested in the following problems for connected, restrained geometric graphs:
• The Voronoi diagram problem, which is also known as the post office problem: we are given a set P of k vertices in a geometric graph G and asked to determine for every other vertex v in G the vertex in P that is closest to v according to the graph metric.
• The single-source shortest path problem: we are given a vertex s and a geometric graph G and asked to find the shortest paths from s to every other vertex in G.
• The polygon planarization problem: given a geometric graph defining a non-simple polygon P having n vertices, compute the arrangement of all the edges of P , including vertices defined by the pairwise crossings of the edges in P .
In all these cases, we desire comparison-based algorithms that require no additional assumptions regarding the distribution of edge weights, so that our algorithms can apply to a wide variety of possible edge weights that may vary for different users, including combinations of distance, travel time, toll charges, and subjective scores rating safety and scenic interest [21].
In the algorithms community, there has been considerable prior work on shortest path algorithms for Euclidean graphs (e.g., see [30,36,38,50,51,55]), which are geometric graphs where edges are weighted by the lengths of the corresponding line segments. This prior work takes a decidedly different approach than we take in this paper, however, in that it focuses on using special properties of the edge weights that do not hold in the comparison model, whereas we study road networks as geometric graphs with a subl
…(Full text truncated)…
This content is AI-processed based on ArXiv data.