中文

基于低跳模拟器的并行近似无向最短路径

数据结构与算法 2019-11-06 v1 分布式、并行与集群计算

摘要

我们提出了一种 (1+ε)(1+\varepsilon)-近似的并行算法来计算无向图中最短路径,对 nn 个节点 mm 条边的图达到 poly(logn)\mathrm{poly}(\log n) 深度和 mpoly(logn)m\mathrm{poly}(\log n) 工作量。尽管具有(近)最优运行时间的顺序算法已为人知数十年,近最优并行算法却被证明是艰巨得多的挑战。对于 (1+ε)(1+\varepsilon)-近似,所有先前具有 poly(logn)\mathrm{poly}(\log n) 深度的算法至少执行 Ω(mnc)\Omega(mn^{c}) 工作量(c>0c>0 为某常数)。改进 Cohen (STOC'94) 提出的这一长期存在的上界已悬置 25 年。我们开发了若干具有独立意义的新工具。其中之一是超越 hopset 的新概念——低跳模拟器——一种 poly(logn)\mathrm{poly}(\log n)-近似模拟器图,其中每条最短路径至多具有 O(loglogn)O(\log\log n) 跳(边)。低跳模拟器的直接应用包括 poly(logn)\mathrm{poly}(\log n)-近似单源最短路径(SSSP)、Bourgain 嵌入、度量树嵌入和低直径分解的并行算法,均具有 poly(logn)\mathrm{poly}(\log n) 深度和 mpoly(logn)m\mathrm{poly}(\log n) 工作量。为将近似比提升至 (1+ε)(1+\varepsilon),我们引入了可压缩预条件子,并在 Sherman 的框架(SODA'17)内应用以求解更一般的无容量最小费用流(亦称转运问题)问题。我们的算法在 poly(logn)\mathrm{poly}(\log n) 深度下使用 mpoly(logn)m\mathrm{poly}(\log n) 工作量计算 (1+ε)(1+\varepsilon)-近似无容量最小费用流。作为结果,它也将前沿顺序运行时间从 m2O(logn)m\cdot 2^{O(\sqrt{\log n})} 改进到 mpoly(logn)m\mathrm{poly}(\log n)

关键词

引用

@article{arxiv.1911.01956,
  title  = {Parallel Approximate Undirected Shortest Paths Via Low Hop Emulators},
  author = {Alexandr Andoni and Clifford Stein and Peilin Zhong},
  journal= {arXiv preprint arXiv:1911.01956},
  year   = {2019}
}