This preview shows pages 1–3. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: 6.889 Lecture 25: Single-Source Shortest Paths with Negative Lengths in Minor-Free Graphs Christian Sommer email@example.com December 12, 2011 Setting directed graph G = ( V,A ) , underlying undirected graph is H minor-free, arbitrary real arc lengths : A R or integer arc lengths : A Z such that a : ( a ) >- L for some L > Single-Source Shortest Path cannot use Dijkstras algorithm since arc lengths may be negative General H Minor-Free Planar O ( mn ) Bellman-Ford O ( n 3 / 2 ) O ( n log 2 n ) Lecture 14 O ( m n log L ) Goldberg O ( n 4 / 3 log n log L ) today O ( n 5 / 4+ log L ) High-Level Algorithm (framework) based on separators and r divisions 1. compute r division 2. FOR EACH piece P , compute feasible price function P (Bellman-Ford, or Goldberg, or recurse) non-negative edge lengths in P ( reduced lengths P ( u,v ) = ( u,v )+ P ( u )- P ( v ) , details in L. 14) 3. FOR EACH piece P , compute dense distance graph DDG P ( P ) all-pairs distances among boundary nodes P distances with respect to subgraph induced by P , reduced lengths defined by and P 4. run Goldbergs algorithm on graph with vertex set S P P and arc set S P DDG P ( P ) know distances from s to all boundary nodes 5. FOR EACH piece P , compute distances from P to all v P Correctness proof similar to proof in Lecture 14 Running time analysis let r := ( n log L ) 2 / 3 (for recursive version set r := n 1- ) 1. r division in O ( n log n ) assuming fast O ( n ) separator ! 2. for O ( n/r ) pieces of size O ( r ) , run Goldbergs algorithm in O ( r r log L ) , overall O ( n r log L ) (could recurse instead of running Goldbergs algorithm) 3. for O ( n/r ) pieces of size O ( r ) , run O ( r ) non-negative SSSP computations, overall O ( n r ) (can potentially be done faster using a distance oracle, see for example Lecture 12) 4. run Goldbergs algorithm on graph with O ( n/ r ) vertices and O ( n ) arcs, time O ( n 3 / 2 r- 1 / 4 log L ) 5. for O ( n/r ) pieces, do O (log r ) iterations of Bellman-Ford in time O ( r log r ) , overall O ( n log r ) non-trivial, uses shortcuts such that shortest paths have at most O (log r ) arcs, proof in papers 1 Goldbergs Algorithm see also: references, slides of Andrew V. Goldberg: http://www.avglab.com/andrew/pub/path05-slides.pdf , and lecture notes of Uri Zwick: http://www.cs.tau.ac.il/http://www....
View Full Document
This note was uploaded on 01/20/2012 for the course CS 6.889 taught by Professor Erikdemaine during the Fall '11 term at MIT.
- Fall '11