On the difficulty of some shortest path problems

John Hershberger, Subhash Suri, Amit Bhosle
2007 ACM Transactions on Algorithms  
We prove super-linear lower bounds for some shortest path problems in directed graphs, where no such bounds were previously known. The central problem in our study is the replacement paths problem: Given a directed graph G with non-negative edge weights, and a shortest path P = {e 1 , e 2 , . . . , e p } between two nodes s and t, compute the shortest path distances from s to t in each of the p graphs obtained from G by deleting one of the edges e i . We show that the replacement paths problem
more » ... equires Ω(m √ n) time in the worst case whenever m = O(n √ n). This also establishes a similar lower bound for computing the second shortest simple path by any algorithm that uses replacement paths as a subroutine; all known algorithms for the k shortest paths fit this description. To put our lower bound in perspective, we note that both these problems (replacement paths and second shortest path) can be solved in near linear time for undirected graphs. We also give a nearly tight lower bound of Ω(nm) for computing the shortest path distances between a fixed source s and all other nodes if each edge of the shortest path tree is removed in turn. the sequence of edges in a shortest path from s to t in G. The replacement paths problem is to compute the shortest path from s to t, in each of the graphs G \ e i , that is, G with edge e i removed, for i = 1, 2, . . . , p. (Another variant of the replacement paths problem arises when nodes of the path P are removed one at a time. These two problems have equivalent computational complexity.) The replacement paths problem is motivated both by routing applications, in which a new route is needed in response to individual link failures [8] , and by computational mechanism design, in which the Vickrey-Clarke-Grove scheme is used to elicit true link costs in a distributed but self-interested communication setting, such as the Internet [3, 21] . In the VCG payment scheme, the bonus to a link agent e i equals d(s, t; G \ e i ) − d(s, t; G| e i =0 ), where the former is the replacement path length and the latter is the shortest path distance from s to t in the graph G with the cost of e i set to zero. Computing all these payments is equivalent to solving the replacement paths problem for s, t. A naïve algorithm for the replacement paths problem runs in O(n(m+n log n)) time, executing the single-source shortest path algorithm up to n times, but no better algorithm is known. By contrast, if G is undirected , then the problem can be solved in O(m + n log n) time [11] ; that is, roughly one single-source shortest path computation suffices! (Our FOCS 2001 paper [11] erroneously claims to work for both directed and undirected graphs; however, there is a flaw that invalidates the algorithm for directed graphs.) In the case of undirected graphs, the same bound is also achieved by Nardelli, Proietti, and Widmayer [20], who solve the most vital node problem with an algorithm that also solves the replacement paths problem. The work of Nardelli, Proietti, and Widmayer is in turn based on earlier work by Malik, Mittal and Gupta [17], Ball, Golden, and Vohra [4] and Khuller, and Schieber [5]. All of these algorithms are restricted to undirected graphs, and again the directed version of the problem seems to have eluded efficient solutions. One interesting connection between the two problems mentioned above (k simple shortest paths and replacement paths) is that all the known k shortest paths algorithms, including those for undirected graphs, solve the replacement paths problem as a subproblem.
doi:10.1145/1219944.1219951 fatcat:ernhz2cdmjhqnim5ht7ubbblme