Efficient Distance Sensitivity Oracles for Real-World Graph Data

A distance sensitivity oracle is a data structure answering queries that ask the shortest distance from a node to another in a network expecting node/edge failures. It has been mainly studied in theory literature, but all the existing oracles for a directed graph suffer from prohibitive preprocessing time and space. Motivated by this, we develop two practical distance sensitivity oracles for directed graphs as variants of Transit Node Routing. The first oracle consists of a novel fault-tolerant index structure, which is used to construct a solution path and to detect and localize the impact of network failures, and an efficient query algorithm for it. The second oracle is made by applying the A* heuristics to the first oracle, which exploits lower bound distances to effectively reduce search space. In addition, we propose additional speed-up techniques to make our oracles faster with a slight loss of accuracy. We conduct extensive experiments with real-life datasets, which demonstrate that our oracles greatly outperform all of competitors in most cases. To the best of our knowledge, our oracles are the first distance sensitivity oracles that handle real-world graph data with million-level nodes.

[1]  Aristides Gionis,et al.  Fast shortest path distance estimation in large networks , 2009, CIKM.

[2]  Bastian Katz,et al.  Preprocessing Speed-Up Techniques Is Hard , 2010, CIAC.

[3]  Peter Sanders,et al.  Highway Hierarchies Hasten Exact Shortest Path Queries , 2005, ESA.

[4]  Mikkel Thorup,et al.  Oracles for Distances Avoiding a Failed Node or Link , 2008, SIAM J. Comput..

[5]  David R. Karger,et al.  A nearly optimal oracle for avoiding failed vertices and edges , 2009, STOC '09.

[6]  David R. Karger,et al.  Improved distance sensitivity oracles via random sampling , 2008, SODA '08.

[7]  Vipin Kumar,et al.  Analysis of Multilevel Graph Partitioning , 1995, Proceedings of the IEEE/ACM SC95 Conference.

[8]  Peter Sanders,et al.  Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks , 2008, WEA.

[9]  Takuya Akiba,et al.  Hierarchical and Dynamic k-Path Covers , 2016, CIKM.

[10]  Andrew V. Goldberg,et al.  Customizable Route Planning , 2011, SEA.

[11]  Ran Duan,et al.  Dual-failure distance and connectivity oracles , 2009, SODA.

[12]  Peter Sanders,et al.  Dynamic Highway-Node Routing , 2007, WEA.

[13]  Peter Sanders,et al.  Exact Routing in Large Road Networks Using Contraction Hierarchies , 2012, Transp. Sci..

[14]  Surender Baswana,et al.  Single source distance oracle for planar digraphs avoiding a failed node or link , 2012, SODA.

[15]  Edward P. F. Chan,et al.  Shortest Path Tree Computation in Dynamic Graphs , 2009, IEEE Transactions on Computers.

[16]  Peter Sanders,et al.  Fast Routing in Road Networks with Transit Nodes , 2007, Science.

[17]  Takuya Akiba,et al.  Fully Dynamic Shortest-Path Distance Query Acceleration on Massive Networks , 2016, CIKM.

[18]  Quan Z. Sheng,et al.  SIEF: Efficiently Answering Distance Queries for Failure Prone Graphs , 2015, EDBT.

[19]  Michael Langberg,et al.  f-Sensitivity Distance Oracles and Routing Schemes , 2010, Algorithmica.

[20]  Raymond Chi-Wing Wong,et al.  IS-LABEL: an Independent-Set based Labeling Scheme for Point-to-Point Distance Querying , 2012, Proc. VLDB Endow..

[21]  Daniele Frigioni,et al.  Dynamic Multi-level Overlay Graphs for Shortest Paths , 2008, Math. Comput. Sci..

[22]  Raphael Yuster,et al.  Replacement Paths via Fast Matrix Multiplication , 2010, 2010 IEEE 51st Annual Symposium on Foundations of Computer Science.

[23]  Raphael Yuster,et al.  Replacement Paths and Distance Sensitivity Oracles via Fast Matrix Multiplication , 2013, TALG.

[24]  Andrew V. Goldberg,et al.  Computing Point-to-Point Shortest Paths from External Memory , 2005, ALENEX/ANALCO.

[25]  Peter Sanders,et al.  Transit Node Routing Reconsidered , 2013, SEA.

[26]  Man Lung Yiu,et al.  Towards Online Shortest Path Computation , 2014, IEEE Transactions on Knowledge and Data Engineering.

[27]  Dorothea Wagner,et al.  Landmark-Based Routing in Dynamic Graphs , 2007, WEA.

[28]  Takuya Akiba,et al.  Dynamic and historical shortest-path distance queries on large evolving networks by pruned landmark labeling , 2014, WWW.

[29]  Philippe Baptiste,et al.  Fast paths in large-scale dynamic road networks , 2007, Comput. Optim. Appl..

[30]  Kian-Lee Tan,et al.  G-Tree: An Efficient and Scalable Index for Spatial Search on Road Networks , 2015, IEEE Transactions on Knowledge and Data Engineering.

[31]  Marlon Dumas,et al.  Fast fully dynamic landmark-based estimation of shortest path distances in very large graphs , 2011, CIKM '11.

[32]  James Cheng,et al.  Efficient processing of distance queries in large graphs: a vertex cover approach , 2012, SIGMOD Conference.

[33]  Andrew V. Goldberg,et al.  Computing the shortest path: A search meets graph theory , 2005, SODA '05.

[34]  Nils J. Nilsson,et al.  A Formal Basis for the Heuristic Determination of Minimum Cost Paths , 1968, IEEE Trans. Syst. Sci. Cybern..