423 research outputs found

    Near-Optimal Distance Emulator for Planar Graphs

    Get PDF
    Given a graph G and a set of terminals T, a distance emulator of G is another graph H (not necessarily a subgraph of G) containing T, such that all the pairwise distances in G between vertices of T are preserved in H. An important open question is to find the smallest possible distance emulator. We prove that, given any subset of k terminals in an n-vertex undirected unweighted planar graph, we can construct in O~(n) time a distance emulator of size O~(min(k^2,sqrt{k * n})). This is optimal up to logarithmic factors. The existence of such distance emulator provides a straightforward framework to solve distance-related problems on planar graphs: Replace the input graph with the distance emulator, and apply whatever algorithm available to the resulting emulator. In particular, our result implies that, on any unweighted undirected planar graph, one can compute all-pairs shortest path distances among k terminals in O~(n) time when k=O(n^{1/3})

    The Power of Dynamic Distance Oracles: Efficient Dynamic Algorithms for the Steiner Tree

    Get PDF
    In this paper we study the Steiner tree problem over a dynamic set of terminals. We consider the model where we are given an nn-vertex graph G=(V,E,w)G=(V,E,w) with positive real edge weights, and our goal is to maintain a tree which is a good approximation of the minimum Steiner tree spanning a terminal set SVS \subseteq V, which changes over time. The changes applied to the terminal set are either terminal additions (incremental scenario), terminal removals (decremental scenario), or both (fully dynamic scenario). Our task here is twofold. We want to support updates in sublinear o(n)o(n) time, and keep the approximation factor of the algorithm as small as possible. We show that we can maintain a (6+ε)(6+\varepsilon)-approximate Steiner tree of a general graph in O~(nlogD)\tilde{O}(\sqrt{n} \log D) time per terminal addition or removal. Here, DD denotes the stretch of the metric induced by GG. For planar graphs we achieve the same running time and the approximation ratio of (2+ε)(2+\varepsilon). Moreover, we show faster algorithms for incremental and decremental scenarios. Finally, we show that if we allow higher approximation ratio, even more efficient algorithms are possible. In particular we show a polylogarithmic time (4+ε)(4+\varepsilon)-approximate algorithm for planar graphs. One of the main building blocks of our algorithms are dynamic distance oracles for vertex-labeled graphs, which are of independent interest. We also improve and use the online algorithms for the Steiner tree problem.Comment: Full version of the paper accepted to STOC'1

    Fully Scalable Massively Parallel Algorithms for Embedded Planar Graphs

    Full text link
    We consider the massively parallel computation (MPC) model, which is a theoretical abstraction of large-scale parallel processing models such as MapReduce. In this model, assuming the widely believed 1-vs-2-cycles conjecture, solving many basic graph problems in O(1)O(1) rounds with a strongly sublinear memory size per machine is impossible. We improve on the recent work of Holm and T\v{e}tek [SODA 2023] that bypass this barrier for problems when a planar embedding of the graph is given. In the previous work, on graphs of size nn with O(n/S)O(n/\mathcal{S}) machines, the memory size per machine needs to be at least S=n2/3+Ω(1)\mathcal{S} = n^{2/3+\Omega(1)}, whereas we extend their work to the fully scalable regime, where the memory size per machine can be S=nδ\mathcal{S} = n^{\delta} for any constant 0<δ<10< \delta < 1. We give the first constant round fully scalable algorithms for embedded planar graphs for the problems of (i) connectivity and (ii) minimum spanning tree (MST). Moreover, we show that the ε\varepsilon-emulator of Chang, Krauthgamer, and Tan [STOC 2022] can be incorporated into our recursive framework to obtain constant-round (1+ε)(1+\varepsilon)-approximation algorithms for the problems of computing (iii) single source shortest path (SSSP), (iv) global min-cut, and (v) stst-max flow. All previous results on cuts and flows required linear memory in the MPC model. Furthermore, our results give new algorithms for problems that implicitly involve embedded planar graphs. We give as corollaries constant round fully scalable algorithms for (vi) 2D Euclidean MST using O(n)O(n) total memory and (vii) (1+ε)(1+\varepsilon)-approximate weighted edit distance using O~(n2δ)\widetilde{O}(n^{2-\delta}) memory. Our main technique is a recursive framework combined with novel graph drawing algorithms to compute smaller embedded planar graphs in constant rounds in the fully scalable setting.Comment: To appear in SODA24. 55 pages, 9 figures, 1 table. Added section on weighted edit distance and shortened abstrac

    Dynamic Approximate All-Pairs Shortest Paths: Breaking the O(mn) Barrier and Derandomization

    Full text link
    We study dynamic (1+ϵ)(1+\epsilon)-approximation algorithms for the all-pairs shortest paths problem in unweighted undirected nn-node mm-edge graphs under edge deletions. The fastest algorithm for this problem is a randomized algorithm with a total update time of O~(mn/ϵ)\tilde O(mn/\epsilon) and constant query time by Roditty and Zwick [FOCS 2004]. The fastest deterministic algorithm is from a 1981 paper by Even and Shiloach [JACM 1981]; it has a total update time of O(mn2)O(mn^2) and constant query time. We improve these results as follows: (1) We present an algorithm with a total update time of O~(n5/2/ϵ)\tilde O(n^{5/2}/\epsilon) and constant query time that has an additive error of 22 in addition to the 1+ϵ1+\epsilon multiplicative error. This beats the previous O~(mn/ϵ)\tilde O(mn/\epsilon) time when m=Ω(n3/2)m=\Omega(n^{3/2}). Note that the additive error is unavoidable since, even in the static case, an O(n3δ)O(n^{3-\delta})-time (a so-called truly subcubic) combinatorial algorithm with 1+ϵ1+\epsilon multiplicative error cannot have an additive error less than 2ϵ2-\epsilon, unless we make a major breakthrough for Boolean matrix multiplication [Dor et al. FOCS 1996] and many other long-standing problems [Vassilevska Williams and Williams FOCS 2010]. The algorithm can also be turned into a (2+ϵ)(2+\epsilon)-approximation algorithm (without an additive error) with the same time guarantees, improving the recent (3+ϵ)(3+\epsilon)-approximation algorithm with O~(n5/2+O(log(1/ϵ)/logn))\tilde O(n^{5/2+O(\sqrt{\log{(1/\epsilon)}/\log n})}) running time of Bernstein and Roditty [SODA 2011] in terms of both approximation and time guarantees. (2) We present a deterministic algorithm with a total update time of O~(mn/ϵ)\tilde O(mn/\epsilon) and a query time of O(loglogn)O(\log\log n). The algorithm has a multiplicative error of 1+ϵ1+\epsilon and gives the first improved deterministic algorithm since 1981. It also answers an open question raised by Bernstein [STOC 2013].Comment: A preliminary version was presented at the 2013 IEEE 54th Annual Symposium on Foundations of Computer Science (FOCS 2013

    Path-Reporting Distance Oracles with Near-Logarithmic Stretch and Linear Size

    Full text link
    Given an nn-vertex undirected graph G=(V,E,w)G=(V,E,w), and a parameter k1k\geq1, a path-reporting distance oracle (or PRDO) is a data structure of size S(n,k)S(n,k), that given a query (u,v)V2(u,v)\in V^2, returns an f(k)f(k)-approximate shortest uvu-v path PP in GG within time q(k)+O(P)q(k)+O(|P|). Here S(n,k)S(n,k), f(k)f(k) and q(k)q(k) are arbitrary functions. A landmark PRDO due to Thorup and Zwick, with an improvement of Wulff-Nilsen, has S(n,k)=O(kn1+1k)S(n,k)=O(k\cdot n^{1+\frac{1}{k}}), f(k)=2k1f(k)=2k-1 and q(k)=O(logk)q(k)=O(\log k). The size of this oracle is Ω(nlogn)\Omega(n\log n) for all kk. Elkin and Pettie and Neiman and Shabat devised much sparser PRDOs, but their stretch was polynomially larger than the optimal 2k12k-1. On the other hand, for non-path-reporting distance oracles, Chechik devised a result with S(n,k)=O(n1+1k)S(n,k)=O(n^{1+\frac{1}{k}}), f(k)=2k1f(k)=2k-1 and q(k)=O(1)q(k)=O(1). In this paper we make a dramatic progress in bridging the gap between path-reporting and non-path-reporting distance oracles. We devise a PRDO with size S(n,k)=O(kloglognlognn1+1k)S(n,k)=O(\lceil\frac{k\log\log n}{\log n}\rceil\cdot n^{1+\frac{1}{k}}), stretch f(k)=O(k)f(k)=O(k) and query time q(k)=O(logkloglognlogn)q(k)=O(\log\lceil\frac{k\log\log n}{\log n}\rceil). We can also have size O(n1+1k)O(n^{1+\frac{1}{k}}), stretch O(kkloglognlogn)O(k\cdot\lceil\frac{k\log\log n}{\log n}\rceil) and query time q(k)=O(logkloglognlogn)q(k)=O(\log\lceil\frac{k\log\log n}{\log n}\rceil). Our results on PRDOs are based on novel constructions of approximate distance preservers, that we devise in this paper. Specifically, we show that for any ϵ>0\epsilon>0, any k=1,2,...k=1,2,..., and any graph GG and a collection P\mathcal{P} of pp vertex pairs, there exists a (1+ϵ)(1+\epsilon)-approximate preserver with O(γ(ϵ,k)p+nlogk+n1+1k)O(\gamma(\epsilon,k)\cdot p+n\log k+n^{1+\frac{1}{k}}) edges, where γ(ϵ,k)=(logkϵ)O(logk)\gamma(\epsilon,k)=(\frac{\log k}{\epsilon})^{O(\log k)}. These new preservers are significantly sparser than the previous state-of-the-art approximate preservers due to Kogan and Parter.Comment: 61 pages, 3 figure

    Lower Bounds on Sparse Spanners, Emulators, and Diameter-reducing shortcuts

    Get PDF
    We prove better lower bounds on additive spanners and emulators, which are lossy compression schemes for undirected graphs, as well as lower bounds on shortcut sets, which reduce the diameter of directed graphs. We show that any O(n)-size shortcut set cannot bring the diameter below Omega(n^{1/6}), and that any O(m)-size shortcut set cannot bring it below Omega(n^{1/11}). These improve Hesse\u27s [Hesse, 2003] lower bound of Omega(n^{1/17}). By combining these constructions with Abboud and Bodwin\u27s [Abboud and Bodwin, 2017] edge-splitting technique, we get additive stretch lower bounds of +Omega(n^{1/13}) for O(n)-size spanners and +Omega(n^{1/18}) for O(n)-size emulators. These improve Abboud and Bodwin\u27s +Omega(n^{1/22}) lower bounds
    corecore