Fast Distance Sensitivity Oracle for Multiple Failures

06/16/2018
by   Golshan Golnari, et al.
0

When a network is prone to failures, it is very expensive to compute the shortest paths every time from the scratch. Distance sensitivity oracle provides this privilege to find the new shortest paths faster and with lower cost by once pre-computing an oracle in advance. Although several efficient solutions are proposed in the literature to support the single failure, few efforts are done to devise an efficient method regarding the case of multiple failures. In this paper, we present a novel distance sensitivity oracle based on Markov Tensor Theory golnari2017markov to support replacement path queries (*,t,F) in general directed and weighted networks facing the set of failures F. In contrast to the existing work, there is no limitation on maximum failure size supported by our oracle and there is no need to know the size of failure for constructing the oracle. The specifications of our oracle are: space size of O(n^2), pre-process time of O(n^ω), where ω is the exponent of fast matrix multiplication, and query time of O(m) for answering to replacement path query of (*,t,F) which computes the replacement (shortest) paths from all nodes to target t at once. While the computation time for regular shortest path methods, such as Dijkstra's, is O(m+nlogn) for each query after a failure, our algorithm can save a considerable computational time when the size of failure set |F| is O(m^1/ω) or less and the network is sparse O(m)<O(nlogn).

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset