Results 1  10
of
29
Engineering Route Planning Algorithms
 ALGORITHMICS OF LARGE AND COMPLEX NETWORKS. LECTURE NOTES IN COMPUTER SCIENCE
, 2009
"... Algorithms for route planning in transportation networks have recently undergone a rapid development, leading to methods that are up to three million times faster than Dijkstra’s algorithm. We give an overview of the techniques enabling this development and point out frontiers of ongoing research on ..."
Abstract

Cited by 27 (16 self)
 Add to MetaCart
Algorithms for route planning in transportation networks have recently undergone a rapid development, leading to methods that are up to three million times faster than Dijkstra’s algorithm. We give an overview of the techniques enabling this development and point out frontiers of ongoing research on more challenging variants of the problem that include dynamically changing networks, timedependent routing, and flexible objective functions.
A New Approach to AllPairs Shortest Paths on RealWeighted Graphs
 Theoretical Computer Science
, 2003
"... We present a new allpairs shortest path algorithm that works with realweighted graphs in the traditional comparisonaddition model. It runs in O(mn+n time, improving on the longstanding bound of O(mn + n log n) derived from an implementation of Dijkstra's algorithm with Fibonacci heaps ..."
Abstract

Cited by 27 (2 self)
 Add to MetaCart
We present a new allpairs shortest path algorithm that works with realweighted graphs in the traditional comparisonaddition model. It runs in O(mn+n time, improving on the longstanding bound of O(mn + n log n) derived from an implementation of Dijkstra's algorithm with Fibonacci heaps. Here m and n are the number of edges and vertices, respectively.
A shortest path algorithm for realweighted undirected graphs
 in 13th ACMSIAM Symp. on Discrete Algs
, 1985
"... Abstract. We present a new scheme for computing shortest paths on realweighted undirected graphs in the fundamental comparisonaddition model. In an efficient preprocessing phase our algorithm creates a linearsize structure that facilitates singlesource shortest path computations in O(m log α) ti ..."
Abstract

Cited by 12 (3 self)
 Add to MetaCart
Abstract. We present a new scheme for computing shortest paths on realweighted undirected graphs in the fundamental comparisonaddition model. In an efficient preprocessing phase our algorithm creates a linearsize structure that facilitates singlesource shortest path computations in O(m log α) time, where α = α(m, n) is the very slowly growing inverseAckermann function, m the number of edges, and n the number of vertices. As special cases our algorithm implies new bounds on both the allpairs and singlesource shortest paths problems. We solve the allpairs problem in O(mnlog α(m, n)) time and, if the ratio between the maximum and minimum edge lengths is bounded by n (log n)O(1) , we can solve the singlesource problem in O(m + nlog log n) time. Both these results are theoretical improvements over Dijkstra’s algorithm, which was the previous best for real weighted undirected graphs. Our algorithm takes the hierarchybased approach invented by Thorup. Key words. singlesource shortest paths, allpairs shortest paths, undirected graphs, Dijkstra’s
Faster algorithms for incremental topological ordering
 In ICALP
, 2008
"... Abstract. We present two online algorithms for maintaining a topological order of a directed acyclic graph as arcs are added, and detecting a cycle when one is created. Our first algorithm takes O(m 1/2) amortized time per arc and our second algorithm takes O(n 2.5 /m) amortized time per arc, where ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
Abstract. We present two online algorithms for maintaining a topological order of a directed acyclic graph as arcs are added, and detecting a cycle when one is created. Our first algorithm takes O(m 1/2) amortized time per arc and our second algorithm takes O(n 2.5 /m) amortized time per arc, where n is the number of vertices and m is the total number of arcs. For sparse graphs, our O(m 1/2) bound improves the best previous bound by a factor of log n and is tight to within a constant factor for a natural class of algorithms that includes all the existing ones. Our main insight is that the twoway search method of previous algorithms does not require an ordered search, but can be more general, allowing us to avoid the use of heaps (priority queues). Instead, the deterministic version of our algorithm uses (approximate) medianfinding; the randomized version of our algorithm uses uniform random sampling. For dense graphs, our O(n 2.5 /m) bound improves the best previously published bound by a factor of n 1/4 and a recent bound obtained independently of our work by a factor of log n. Our main insight is that graph search is wasteful when the graph is dense and can be avoided by searching the topological order space instead. Our algorithms extend to the maintenance of strong components, in the same asymptotic time bounds. 1
Oracles for distances avoiding a failed node or link
 SIAM J. Comput
"... Abstract. We consider the problem of preprocessing an edgeweighted directed graph G to answer queries that ask for the length and first hop of a shortest path from any given vertex x to any given vertex y avoiding any given vertex or edge. As a natural application, this problem models routing in ne ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
Abstract. We consider the problem of preprocessing an edgeweighted directed graph G to answer queries that ask for the length and first hop of a shortest path from any given vertex x to any given vertex y avoiding any given vertex or edge. As a natural application, this problem models routing in networks subject to node or link failures. We describe a deterministic oracle with constant query time for this problem that uses O(n2 log n) space, where n is the number of vertices in G. The construction time for our oracle is O(mn2 + n3 log n). However, if one is willing to settle for Θ(n2.5) space, we can improve the preprocessing time to O(mn1.5 + n2.5 log n) while maintaining the constant query time. Our algorithms can find the shortest path avoiding a failed node or link in time proportional to the length of the path.
A scaling algorithm for maximum weight matching in bipartite graphs
 IN: PROCEEDINGS 23RD ACMSIAM SYMPOSIUM ON DISCRETE ALGORITHMS (SODA
"... Given a weighted bipartite graph, the maximum weight matching (MWM) problem is to find a set of vertexdisjoint edges with maximum weight. We present a new scaling algorithm that runs in O(m √ n log N) time, when the weights are integers within the range of [0, N]. The result improves the previous b ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
Given a weighted bipartite graph, the maximum weight matching (MWM) problem is to find a set of vertexdisjoint edges with maximum weight. We present a new scaling algorithm that runs in O(m √ n log N) time, when the weights are integers within the range of [0, N]. The result improves the previous bounds of O(Nm √ n) by Gabow and O(m √ n log (nN)) by Gabow and Tarjan over 20 years ago. Our improvement draws ideas from a not widely known result, the primal method by Balinski and Gomory.
Scaling algorithms for approximate and exact maximum weight matching
, 2011
"... The maximum cardinality and maximum weight matching problems can be solved in time Õ(m √ n), a bound that has resisted improvement despite decades of research. (Here m and n are the number of edges and vertices.) In this article we demonstrate that this “m √ n barrier ” is extremely fragile, in the ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
The maximum cardinality and maximum weight matching problems can be solved in time Õ(m √ n), a bound that has resisted improvement despite decades of research. (Here m and n are the number of edges and vertices.) In this article we demonstrate that this “m √ n barrier ” is extremely fragile, in the following sense. For any ɛ> 0, we give an algorithm that computes a (1 − ɛ)approximate maximum weight matching in O(mɛ −1 log ɛ −1) time, that is, optimal linear time for any fixed ɛ. Our algorithm is dramatically simpler than the best exact maximum weight matching algorithms on general graphs and should be appealing in all applications that can tolerate a negligible relative error. Our second contribution is a new exact maximum weight matching algorithm for integerweighted bipartite graphs that runs in time O(m √ n log N). This improves on the O(Nm √ n)time and O(m √ n log(nN))time algorithms known since the mid 1980s, for 1 ≪ log N ≪ log n. Here N is the maximum integer edge weight. 1
Incremental Topological Ordering and Strong Component Maintenance
, 2008
"... Abstract. We present an online algorithm for maintaining a topological order of a directed acyclic graph as arcs are added, and detecting a cycle when one is created. Our algorithm takes O(m 1/2) amortized time per arc, where m is the total number of arcs. For sparse graphs, this bound improves the ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
Abstract. We present an online algorithm for maintaining a topological order of a directed acyclic graph as arcs are added, and detecting a cycle when one is created. Our algorithm takes O(m 1/2) amortized time per arc, where m is the total number of arcs. For sparse graphs, this bound improves the best previous bound by a logarithmic factor and is tight to within a constant factor for a natural class of algorithms that includes all the existing ones. Our main insight is that the bidirectional search method of previous algorithms does not require an ordered search, but can be more general. This allows us to avoid the use of heaps (priority queues) entirely. Instead, the deterministic version of our algorithm uses (approximate) medianfinding. The randomized version of our algorithm avoids this complication, making it very simple. We extend our topological ordering algorithm to give the first detailed algorithm for maintaining the strong components of a directed graph, and a topological order of these components, as arcs are added. This extension also has an amortized time bound of O(m 1/2) per arc. 1
A sealedbid unitdemand auction with put options
, 2011
"... We introduce a variant of the classic sealedbid unitdemand auction in which each item has an associated put option. The put option of an item is held by the seller of the item, and gives the holder the right to sell the item to a specified target bidder at a specified strike price, regardless of m ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
We introduce a variant of the classic sealedbid unitdemand auction in which each item has an associated put option. The put option of an item is held by the seller of the item, and gives the holder the right to sell the item to a specified target bidder at a specified strike price, regardless of market conditions. Unexercised put options expire when the auction terminates. In keeping with the underlying unitdemand framework, we assume that each bidder is the target of at most one put option. The details of each put option — holder, target, and strike price — are fixed and publicly available prior to the submission of unitdemand bids. We motivate our unitdemand auction by discussing applications to the reassignment of leases, and to the design of multiround auctions. In the classic sealedbid unitdemand setting, the VCG mechanism provides a truthful auction with strong associated guarantees, including efficiency and envyfreedom. In our setting, the strike price of an item imposes a lower bound on its price. The VCG mechanism does not accommodate such lower bound constraints, and hence is not directly applicable. Moreover, the strong guarantees associated with the VCG mechanism in the classic setting cannot be achieved in our setting. We formulate an appropriate solution concept for our setting, and devise a truthful auction for implementing this solution concept. We show how to compute the outcome of our auction in polynomial time.
How to Split a Flow?
"... Abstract—Many practically deployed flow algorithms produce the output as a set of values associated with the network links. However, to actually deploy a flow in a network we often need to represent it as a set of paths between the source and destination nodes. In this paper we consider the problem ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Abstract—Many practically deployed flow algorithms produce the output as a set of values associated with the network links. However, to actually deploy a flow in a network we often need to represent it as a set of paths between the source and destination nodes. In this paper we consider the problem of decomposing a flow into a small number of paths. We show that there is some fixed constant β> 1 such that it is NPhard to find a decomposition in which the number of paths is larger than the optimal by a factor of at most β. Furthermore, this holds even if arcs are associated only with three different flow values. We also show that straightforward greedy algorithms for the problem can produce much larger decompositions than the optimal one, on certain well tailored inputs. On the positive side we present a new approximation algorithm that decomposes all but an ɛfraction of the flow into at most O(1/ɛ 2) times the smallest possible number of paths. We compare the decompositions produced by these algorithms on real production networks and on synthetically generated data. Our results indicate that the dependency of the decomposition size on the fraction of flow covered is exponential. Hence, covering the last few percent of the flow may be costly, so if the application allows, it may be a good idea to decompose most but not all the flow. The experiments also reveal the fact that while for realistic data the greedy approach works very well, our novel algorithm which has a provable worst case guarantee, typically produces only slightly larger decompositions. I.