200 likes | 329 Views
This paper explores recent developments in dynamic graph algorithms, particularly focusing on dynamic shortest path problems. It discusses techniques for efficiently updating and querying paths in graphs, detailing the complexities of maintaining single-source shortest path trees and all-pairs shortest paths (APSP) in dynamic environments. The authors present new algorithms with improved update and query times and examine the limitations of current strategies. Insights into decremental and fully dynamic APSP algorithms, including experimental results and open problems, highlight the ongoing challenges in achieving logarithmic update times.
E N D
On Dynamic Shortest Paths Problems Liam Roditty Uri ZwickTel Aviv University ESA 2004
A graph Dynamic Graph Problems Initialize Insert Delete Query n - number of verticesm - number of edges
Dynamic Graph Problems:Only Modest Success Is there any hope of getting logarithmicupdate times here?
Our results Incremental/Decremental SSSP is at least as hard is static APSP A new fully dynamic APSP algorithmfor unweighted directed graph with update time = mn1/2query time = n3/4 An improved algorithm for constructing “greedy” spanners
1 2 n 1 153 272 A very simple reduction Off-linedecremental weighted undirectedSSSP Weighted undirected APSP nW 2nW n2W n deletionsn2 queries W – largest edge weight
B A Another simple reduction Off-linedecremental unweighted undirectedSSSP Boolean matrix multiplication Is there a pathof length 2? n deletionsn2 queries
Insert a set of edges touching an insertion center Delete an arbitrary set of edges Generalized insert/delete operations
Three ingredients Even-Shiloach ’81A decremental algorithm for maintaining a single-source shortest path tree of depth k with a total running time of O(km). Henzinger-King ’95A decremental APSP algorithm with a total update time of O*(mn2/t) and a query time of O(t), for t<n/log n. Ullman-Yannakakis ’91Let P be a path of length k.Let S be a random subset of vertices of size (cn ln n)/k.Then with high probability PS .
t (cn log n)/k Depth k decremental shortest paths trees for insertion centers Full depth shortest paths trees for sampled vertices The new fully dynamic algorithm DecrementalAPSP algorithm k
Choose a sample of (cn log n)/k edges.(where k=n1/2) DecrementalAPSP algorithm Aim for a query time of t=n3/4 The algorithm works in phases. A new phase starts after every tinsertions.
DecrementalAPSP algorithm • At the beginning of each phase: • Initialize the decremental APSP algorithm. • Rebuild all full depth trees. • Empty the set of insertion centers.
DecrementalAPSP algorithm • Insertion: • Rebuild all full depth trees. • Build depth k decremental trees for the new insertion center.
DecrementalAPSP algorithm • Deletion: • Rebuild all full depth trees. • Update all depth k decremental trees.
DecrementalAPSP algorithm • Query: • Query the decremental algorithm. • Query each pair of full depth trees. • Query each pair of depth k trees.
DecrementalAPSP algorithm Amortized update cost: When k=n1/2 , t=n3/4these are all mn1/2!!!
DecrementalAPSP algorithm Query time:
DecrementalAPSP algorithm Correctness Paths that do not use any edges added during the current phase. Long paths (length>k)that use new edges With high probability they pass through a sampled vertex Short paths (length≤k)that use new edges
Open problems • Dynamic approximate SSSP? • Other update/query tradeoffs for dynamic APSP? • A real lower bound for dynamic SSSP and/or APSP?