Approximating geometrical graphs via “spanners” and “banyans” S. B. Rao & W. D. Smith Proc of STOC, 1998: 540-550
Recap (Arora’s Algorithm)
Recap (Arora’s Algorithm)
Recap (Arora’s Algorithm)
Recap (Arora’s Algorithm)
Recap (Arora’s Algorithm)
Recap (Arora’s Algorithm)
Applications � Minimum Steiner Tree � Shortest network connecting all sites � Uses the same algorithm � Portals can be Steiner nodes! � Min case different for Dynamic Programming � Interface specification is slightly changed � k- TSP (The shortest tour that visits at least k nodes) � Need to transform the instance � Need assumption OPT> L (length of the grid) � Minimal Euclidean Matching
Motivations � Arora’s Algorithm , − d 1 ( ) ε O d / � Running time: O n ( (log ) n ) � Several problems: � Monte Carlo succeeds with probability > ½. � Need several runs. � Derandomized version runs n d times slower. � Faster algorithm: � Las Vegas.
Results Summary � *Monte Carlo (d = 2) ) O s ( ) O s ( ) � + s N sN log N N (log N � *Deterministic (d = 2) ) O s ( ) O (1) s 5(log O (1) � + 2 N s N log N N N � Monte Carlo (any d) − d − 1 d 1 O s d ( ) O d ( ( ds ) ) � + ( s d ) N O dN ( log N ) N (log N ) Note: s = 1/ �
Results Relevance � *Deterministic (d = 2) Arora Rao & Smith ) O s ( ) O (1) 5(log (1) s O N N + 2 N s N log N � With s fixed, complexity is optimal for: O N ( log N ) TST, MST, t -spanners, Min-Weight Matching. Conjectured for Minimal Steiner Tree, Edge Cover, Nearest Neighbor O (1) s � With d fixed, is likely optimal. 2 N For large s comparible to N the approximation is exact and NP -Hard o (1) N O (2 ) problems are assumed not soluble in time
Algorithm (1) � Rescale and Snap to grid � Assume the point set is in [0,1] d � Assume the length of the Minimum Spanning Tree M � 1 � Scale by a factor L = δ /( ) d N M d � Key: Integer Coordinates in [0, ) , ≤ d N δ / L L � Length of new MST ≤ d N δ / � Added a to the approximation factor δ
Algorithm (2) � Spanner � t - spanner: subgraph G’ of the complete Euclidean graph such that for any u, v, d(u,v) in G’ � t d(u,v) � Claim 1: There is a -TST inside a -spanner + ε + ε (1 ) (1 )
Algorithm (2) � Spanner � t - spanner: subgraph G’ of the complete Euclidean graph such that for any u, v, d(u,v) in G’ � t d(u,v) � Claim 2: This TST does not use any edge more than twice
Algorithm (2) � Spanner � t - spanner: subgraph G’ of the complete Euclidean graph such that for any u, v, d(u,v) in G’ � t d(u,v) � Claim 2: This TST does not use any edge more than twice � Replace each multiple edge > 2 by a multiple edge � 2 with the same parity. This graph is still Eulerian and hence has a shorter Euler tour. Contradiction.
Algorithm (2) Find a -spanner of the grid points + (1 O (1/ )) s � Has O ( ns O (1) ) edges � Is s K longer than MST for some constant K � Is guaranteed to contain a -TST + (1 (1/ )) O s � Is computable in time * O (1) O s ( N log N ) * S. Arya et al. Euclidean Spanners: short, think and lanky , Proc. TOC 1995
Algorithm (3) � Grow the grid by extending it randomly in each direction by � L � Subdivide the grid into a quadtree
Algorithm (4) � Patch the Spanner with respect to the quadtree � Each quadtree square is intersected at most r times � The total length of the added line segments is E( O (1/ r )) � Prop: If there was a path � in the original spanner, there is a path � ' in the modified spanner that is longer by at most twice the increase of the cost of patching. ( 2O(1/ r ) total)
Algorithm (4) � Patch the Spanner with respect to the quadtree � Each quadtree square is intersected at most r times � The total length of the added line segments is E( O (1/ r )) � Set r = O ( s K+ 1 ) . The added length is O ( s K M ) /s K+ 1 = O ( M/s ) + (1 O (1/ )) s Thus, if there existed a -TST in the original spanner, there must exist a -TST + 2 O ( M/s ) � + + (1 (1/ )) (1 O (1/ )) s O s -TST
Algorithm (5) � Find the shortest TST inside the modified spanner with dynamic programming on the quadtree: For each box of the quadtree: � there are r points where the spanner crosses the boundary. � at most 4 ways a tour can cross each point (enter/exit). � 2 O ( r ) matchup conditions on each side of the boundary Thus, to get a solution in a larger box, consider all 2 O ( r ) pairs of compatible boundary conditions in two smaller boxes
Algorithm Summary N � Scale and snap the points � Find a (1+ � ) -spanner, � = 1/(2 s ) sN log N � Find a randomly shifted quad-tree N log sN � Modify the spanner to make it r- light with 3 s N respect to the quadtree. Set r = cs 4 O (1) s � Find the shortest r- light TST by dynamic 2 N programming on the quadtree O (1) s + O (2 N sN log N ) Total:
Algorithm Summary � Scale and snap the points � Find a (1+ � ) -spanner, � = 1/(2 s ) � Total length 3 ε O l MST ( ( )/ ) � Modify the spanner to make it r- light � Choose r = cs 4 � With probability 1/2, the increase is bounded by 1/(4 s ) � If so, output the graph, otherwise fail. � If the graph is produced, it is guaranteed to contain a 1+1/(2 s )+2/(4 s ) = (1+1/s)- TST
Derandomization � Unlike Arora, can average length increase over one dimension. � Therefore, can optimize the quadtree shift for each dimension independently � Arbitrarily fix one dimension. � Dynamically, build a table of costs inflicted by possible shifts: � Create a table of costs for every line � Aggregate costs for 2 k lines by adding them � Modify the spanner, given the best shift. � Repeat for all dimensions.
Intuitive Justification ( Why can we do better? ) � To prove (1+ � )-bound, Arora � Needed to consider the expected change in the TSP path instead of the whole graph Harder bound � Could only randomize the quadtree shift, or to search in all d � � Rao & Smith: Create a (1+ � )-spanner of known length ( 3 ε � ( ( ) / ) ) O l MST Don’t need to rely on the points after the spanner is constructed � ( r does not depend on N ) Can average in one dimension (bound length increase in the � graph and not in the tour)
Problems � Practicality � The bounds above are upper bounds. In-practice performance is not known (for d= 2 faster practical algorithms exist) O d ( ) ( sd ) � 2 factor could be large even for d =2 and reasonable s � Could combine with heuristics (tour “cleaning up”, solving small subproblems via previous algorithms, etc.) � Deterministic version could be interpreted as a local optimizer � Extendability � Not applicable to Minimum Matching (yet). � How much can Steiner points help the spanner?
Thank You
Recommend
More recommend