中文

支持多重故障的快速距离敏感预言机

数据结构与算法 2018-06-19 v1

摘要

当网络易发生故障时,每次从头计算最短路径的代价非常高昂。距离敏感预言机通过预先一次性计算一个预言机,提供了更快速、更低成本地查找新最短路径的便利。尽管文献中已提出若干高效方案以支持单点故障,但针对多重故障情形设计高效方法的工作甚少。本文提出一种基于Markov张量理论\cite{golnari2017markov}的新型距离敏感预言机,用于在面临故障集F\mathcal{F}的通用有向加权网络中支持替换路径查询(,t,F)(*,t,\mathcal{F})。与现有工作不同,我们的预言机对所支持的最大故障规模没有限制,且构建预言机时无需预知故障规模。我们的预言机规格为:空间大小O(n2)O(n^2),预处理时间O(nω)O(n^{\omega})(其中ω\omega为快速矩阵乘法的指数),查询时间O(m)O(m)以回答替换路径查询(,t,F)(*,t,\mathcal{F}),该查询一次性计算从所有节点到目标tt的替换(最短)路径。而常规最短路径方法(如Dijkstra算法)在每次故障后单条查询的计算时间为O(m+nlogn)O(m+n\log n);当故障集大小F|\mathcal{F}|O(m1/ω)O(m^{1/\omega})或更少且网络稀疏(O(m)<O(nlogn)O(m)<O(n\log n))时,我们的算法可节省可观的计算时间。

关键词

引用

@article{arxiv.1806.06182,
  title  = {Fast Distance Sensitivity Oracle for Multiple Failures},
  author = {Golshan Golnari and Zhi-Li Zhang},
  journal= {arXiv preprint arXiv:1806.06182},
  year   = {2018}
}