Results 1 - 10
of
23
The geometry of graphs and some of its algorithmic applications
- Combinatorica
, 1995
"... In this paper we explore some implications of view-ing graphs as geometric objects. This approach of-fers a new perspective on a number of graph-theoretic and algorithmic problems. There are several ways to model graphs geometrically and our main concern here is with geometric representations that r ..."
Abstract
-
Cited by 376 (16 self)
- Add to MetaCart
In this paper we explore some implications of view-ing graphs as geometric objects. This approach of-fers a new perspective on a number of graph-theoretic and algorithmic problems. There are several ways to model graphs geometrically and our main concern here is with geometric representations that respect the met-ric of the (possibly weighted) graph. Given a graph G we map its vertices to a normed space in an attempt to (i) Keep down the dimension of the host space and (ii) Guarantee a small distortion, i.e., make sure that distances between vertices in G closely match the dis-tances between their geometric images. In this paper we develop efficient algorithms for em-bedding graphs low-dimensionally with a small distor-tion. Further algorithmic applications include: 0 A simple, unified approach to a number of prob-lems on multicommodity flows, including the Leighton-Rae Theorem [29] and some of its ex-tensions. 0 For graphs embeddable in low-dimensional spaces with a small distortion, we can find low-diameter decompositions (in the sense of [4] and [34]). The parameters of the decomposition depend only on the dimension and the distortion and not on the size of the graph. 0 In graphs embedded this way, small balanced separators can be found efficiently. Faithful low-dimensional representations of statisti-cal data allow for meaningful and efficient cluster-ing, which is one of the most basic tasks in pattern-recognition. For the (mostly heuristic) methods used
All Pairs Almost Shortest Paths
- SIAM Journal on Computing
, 1996
"... Let G = (V; E) be an unweighted undirected graph on n vertices. A simple argument shows that computing all distances in G with an additive one-sided error of at most 1 is as hard as Boolean matrix multiplication. Building on recent work of Aingworth, Chekuri and Motwani, we describe g) time ..."
Abstract
-
Cited by 64 (8 self)
- Add to MetaCart
Let G = (V; E) be an unweighted undirected graph on n vertices. A simple argument shows that computing all distances in G with an additive one-sided error of at most 1 is as hard as Boolean matrix multiplication. Building on recent work of Aingworth, Chekuri and Motwani, we describe g) time algorithm APASP 2 for computing all distances in G with an additive one-sided error of at most 2. The algorithm APASP 2 is simple, easy to implement, and faster than the fastest known matrix multiplication algorithm. Furthermore, for every even k ? 2, we describe an g) time algorithm APASP k for computing all distances in G with an additive one-sided error of at most k.
Fast Estimation of Diameter and Shortest Paths (without Matrix Multiplication)
, 1996
"... this paper is organized as follows. We begin by presenting some definitions and useful observations in Section 2. In Section 3, we describe the algorithms for distinguishing between graphs of diameter 2 and 4, and the extension to obtaining a ratio 2=3 approximation to the diameter. Then, in Section ..."
Abstract
-
Cited by 58 (2 self)
- Add to MetaCart
this paper is organized as follows. We begin by presenting some definitions and useful observations in Section 2. In Section 3, we describe the algorithms for distinguishing between graphs of diameter 2 and 4, and the extension to obtaining a ratio 2=3 approximation to the diameter. Then, in Section 4, we apply the ideas developed in estimating the diameter to obtain the promised algorithm for an additive approximation for APSP. Finally, in Section 5 we present an empirical study of the performance of our algorithm for all-pairs shortest paths.
Exact and Approximate Distances in Graphs - a survey
- In ESA
, 2001
"... We survey recent and not so recent results related to the computation of exact and approximate distances, and corresponding shortest, or almost shortest, paths in graphs. We consider many different settings and models and try to identify some remaining open problems. ..."
Abstract
-
Cited by 43 (0 self)
- Add to MetaCart
We survey recent and not so recent results related to the computation of exact and approximate distances, and corresponding shortest, or almost shortest, paths in graphs. We consider many different settings and models and try to identify some remaining open problems.
All-Pairs Small-Stretch Paths
- Journal of Algorithms
, 1997
"... Let G = (V; E) be a weighted undirected graph. A path between u; v 2 V is said to be of stretch t if its length is at most t times the distance between u and v in the graph. We consider the problem of finding small-stretch paths between all pairs of vertices in the graph G. It is easy to see that f ..."
Abstract
-
Cited by 31 (8 self)
- Add to MetaCart
Let G = (V; E) be a weighted undirected graph. A path between u; v 2 V is said to be of stretch t if its length is at most t times the distance between u and v in the graph. We consider the problem of finding small-stretch paths between all pairs of vertices in the graph G. It is easy to see that finding paths of stretch less than 2 between all pairs of vertices in an undirected graph with n vertices is at least as hard as the Boolean multiplication of two n \Theta n matrices. We describe three algorithms for finding small-stretch paths between all pairs of vertices in a weighted graph with n vertices and m edges. The first algorithm, STRETCH 2 , runs in ~ O(n 3=2 m 1=2 ) time and finds stretch 2 paths. The second algorithm, STRETCH 7=3 , runs in ~ O(n 7=3 ) time and finds stretch 7/3 paths. Finally, the third algorithm, STRETCH 3 , runs in ~ O(n 2 ) and finds stretch 3 paths. Our algorithms are simpler, more efficient and more accurate than the previously best algorithms ...
A Parallelization of Dijkstra's Shortest Path Algorithm
- IN PROC. 23RD MFCS'98, LECTURE NOTES IN COMPUTER SCIENCE
, 1998
"... The single source shortest path (SSSP) problem lacks parallel solutions which are fast and simultaneously work-efficient. We propose simple criteria which divide Dijkstra's sequential SSSP algorithm into a number of phases, such that the operations within a phase can be done in parallel. We give a P ..."
Abstract
-
Cited by 20 (6 self)
- Add to MetaCart
The single source shortest path (SSSP) problem lacks parallel solutions which are fast and simultaneously work-efficient. We propose simple criteria which divide Dijkstra's sequential SSSP algorithm into a number of phases, such that the operations within a phase can be done in parallel. We give a PRAM algorithm based on these criteria and analyze its performance on random digraphs with random edge weights uniformly distributed in [0, 1]. We use
New Constructions of (α, β)-Spanners and Purely Additive Spanners
, 2005
"... An ¦ α § β ¨-spanner of an unweighted graph G is a subgraph H that approximates distances in G in the following sense. For any two vertices u § v: δH ¦ u § v¨� © αδG ¦ u § v¨� � β, where δG is the distance w.r.t. G. It is well known that there exist (multiplicative) ¦ 2k � 1 § 0 ¨-spanners of size ..."
Abstract
-
Cited by 18 (4 self)
- Add to MetaCart
An ¦ α § β ¨-spanner of an unweighted graph G is a subgraph H that approximates distances in G in the following sense. For any two vertices u § v: δH ¦ u § v¨� © αδG ¦ u § v¨� � β, where δG is the distance w.r.t. G. It is well known that there exist (multiplicative) ¦ 2k � 1 § 0 ¨-spanners of size O ¦ n 1 � 1 � k ¨ and that there exist (purely additive) ¦ 1 § 2 ¨-spanners of size O ¦ n 3 � 2 ¨. However no other ¦ 1 § O ¦ 1¨� ¨-spanners are known to exist. In this paper we develop a couple new techniques for constructing ¦ α § β ¨-spanners. The first result is a purely additive ¦ 1 § 6 ¨-spanner of size O ¦ n 4 � 3 ¨. Our construction algorithm can be understood as an economical agent that assigns costs and values to paths in the graph, purchasing affordable paths and ignoring expensive ones, which are intuitively well-approximated by paths already purchased. This general approach should lead to new spanner constructions. The second result is a truly simple linear time construction of ¦ k § k � 1 ¨-spanners with size O ¦ n 1 � 1 � k ¨. In a distributed network the algorithm terminates in a constant number of rounds and has expected size O ¦ n 1 � 1 � k ¨. The new idea here is primarily in the analysis of the construction. We show that a few simple and local rules for picking spanner edges induce seemingly coordinated global behavior.
Efficient algorithms for constructing (1 + ɛ, β)-spanners in the distributed and streaming models
- Distributed Computing
, 2004
"... For an unweighted undirected graph G = (V, E), and a pair of positive integers α ≥ 1, β ≥ 0, a subgraph G ′ = (V, H), H ⊆ E, is called an (α, β)-spanner of G if for every pair of vertices u, v ∈ V, distG ′(u, v) ≤ α · distG(u, v) + β. It was shown in [20] that for any ɛ> 0, κ = 1, 2,..., there exi ..."
Abstract
-
Cited by 17 (6 self)
- Add to MetaCart
For an unweighted undirected graph G = (V, E), and a pair of positive integers α ≥ 1, β ≥ 0, a subgraph G ′ = (V, H), H ⊆ E, is called an (α, β)-spanner of G if for every pair of vertices u, v ∈ V, distG ′(u, v) ≤ α · distG(u, v) + β. It was shown in [20] that for any ɛ> 0, κ = 1, 2,..., there exists an integer β = β(ɛ, κ) such that for every n-vertex graph G there exists a (1 + ɛ, β)-spanner G ′ with O(n 1+1/κ) edges. An efficient distributed protocol for constructing (1+ ɛ, β)-spanners was devised in [18]. The running time and the communication complexity of that protocol are O(n 1+ρ) and O(|E|n ρ), respectively, where ρ is an additional control parameter of the protocol that affects only the additive term β. In this paper we devise a protocol with a drastically improved running time (O(n ρ) as opposed to O(n 1+ρ)) for constructing (1 + ɛ, β)-spanners. Our protocol has the same communication complexity as the protocol of [18], and it constructs spanners with essentially the same properties as the spanners that are constructed by the protocol of [18]. We also show that our protocol for constructing (1+ɛ, β)spanners can be adapted to the streaming model, and devise a streaming algorithm that uses a constant number of passes and O(n 1+1/κ · log n) bits of space for computing allpairs-almost-shortest-paths of length at most by a multiplicative factor (1 + ɛ) and an additive term of β greater than the shortest paths. Our algorithm processes each edge in time O(n ρ), for an arbitrarily small ρ> 0. The only
A randomized parallel algorithm for single-source shortest paths
- Journal of Algorithms
, 1997
"... Abstract We give a randomized parallel algorithm for computing single-source shortest paths in weighted digraphs. We show that the exact shortest path problem can be efficiently reduced to solving a series of approximate shortest-path subproblems. Our algorithm for the approximate shortest-path prob ..."
Abstract
-
Cited by 13 (1 self)
- Add to MetaCart
Abstract We give a randomized parallel algorithm for computing single-source shortest paths in weighted digraphs. We show that the exact shortest path problem can be efficiently reduced to solving a series of approximate shortest-path subproblems. Our algorithm for the approximate shortest-path problem is based on a technique used by Ullman and Yannakakis in a parallel algorithm for breadth-first search. 1 Introduction One of the most fundamental and ubiquitous problems in combinatorial optimization is finding single-source shortest paths in a weighted graph. Aside from being important in its own right, the problem arises in algorithms for many other problems, especially those related to flow. In view of the importance of the single-source shortest paths problem, it is unfortunate that all known parallel algorithms for this problem are very inefficient on sparse graphs. This inability to make efficient use of parallelism in computing shortest paths is of both theoretical and practical significance. A fast and efficient parallel algorithm for this problem remains a major goal in the design of parallel graph algorithms.

