1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al. (SODA 2005) Presented by: Ethan Phelps-Goodman Atri.

Slides:



Advertisements
Similar presentations
Lower Bounds for Additive Spanners, Emulators, and More David P. Woodruff MIT and Tsinghua University To appear in FOCS, 2006.
Advertisements

Algorithms (and Datastructures) Lecture 3 MAS 714 part 2 Hartmut Klauck.
Great Theoretical Ideas in Computer Science
Triangle partition problem Jian Li Sep,2005.  Proposed by Redstar in Algorithm board in Fudan BBS.  Motivated by some network design strategy.
Lower Bound for Sparse Euclidean Spanners Presented by- Deepak Kumar Gupta(Y6154), Nandan Kumar Dubey(Y6279), Vishal Agrawal(Y6541)
Great Theoretical Ideas in Computer Science for Some.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Cse 521: design and analysis of algorithms Time & place T, Th pm in CSE 203 People Prof: James Lee TA: Thach Nguyen Book.
Approximation Algorithms for TSP
Graphs Chapter 12. Chapter Objectives  To become familiar with graph terminology and the different types of graphs  To study a Graph ADT and different.
Embedding Metrics into Ultrametrics and Graphs into Spanning Trees with Constant Average Distortion Ittai Abraham, Yair Bartal, Ofer Neiman The Hebrew.
The Shortest Path Problem. Shortest-Path Algorithms Find the “shortest” path from point A to point B “Shortest” in time, distance, cost, … Numerous.
Combinatorial Algorithms
Great Theoretical Ideas in Computer Science.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Approximation Algorithms: Concepts Approximation algorithm: An algorithm that returns near-optimal solutions (i.e. is "provably good“) is called an approximation.
The Gas Station Problem Samir Khuller Azarakhsh Malekian Julian Mestre UNIVERSITY OF MARYLAND.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Graphs Chapter 12. Chapter 12: Graphs2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study a Graph.
Graphs & Graph Algorithms 2 Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Tirgul 13. Unweighted Graphs Wishful Thinking – you decide to go to work on your sun-tan in ‘ Hatzuk ’ beach in Tel-Aviv. Therefore, you take your swimming.
9-1 Chapter 9 Approximation Algorithms. 9-2 Approximation algorithm Up to now, the best algorithm for solving an NP-complete problem requires exponential.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
9-1 Chapter 9 Approximation Algorithms. 9-2 Approximation algorithm Up to now, the best algorithm for solving an NP-complete problem requires exponential.
Approximation Algorithms Motivation and Definitions TSP Vertex Cover Scheduling.
Graphs & Graph Algorithms 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Backtracking.
Constant Factor Approximation of Vertex Cuts in Planar Graphs Eyal Amir, Robert Krauthgamer, Satish Rao Presented by Elif Kolotoglu.
Approximation Algorithms
TECH Computer Science Graph Optimization Problems and Greedy Algorithms Greedy Algorithms  // Make the best choice now! Optimization Problems  Minimizing.
Theory of Computing Lecture 10 MAS 714 Hartmut Klauck.
Algorithms for Network Optimization Problems This handout: Minimum Spanning Tree Problem Approximation Algorithms Traveling Salesman Problem.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Simple and Improved Parameterized Algorithms for Multiterminal Cuts Mingyu Xiao The Chinese University of Hong Kong Hong Kong SAR, CHINA CSR 2008 Presentation,
The Traveling Salesman Problem Approximation
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Advanced Algorithm Design and Analysis (Lecture 13) SW5 fall 2004 Simonas Šaltenis E1-215b
Trees and Distance. 2.1 Basic properties Acyclic : a graph with no cycle Forest : acyclic graph Tree : connected acyclic graph Leaf : a vertex of degree.
1 Spanning Trees Longin Jan Latecki Temple University based on slides by David Matuszek, UPenn, Rose Hoberman, CMU, Bing Liu, U. of Illinois, Boting Yang,
All-Pairs Shortest Paths & Essential Subgraph 01/25/2005 Jinil Han.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Topics in Algorithms 2007 Ramesh Hariharan. Tree Embeddings.
Approximation Algorithms for TSP Tsvi Kopelowitz 1.
Graphs Chapter 12. Chapter 12: Graphs2 Chapter Objectives To become familiar with graph terminology and the different types of graphs To study a Graph.
Approximation Algorithms by bounding the OPT Instructor Neelima Gupta
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
Approximation algorithms
Approximation Algorithms
Steiner trees: Approximation Algorithms
Optimization problems such as
Shortest Paths and Minimum Spanning Trees
Graph Algorithms BFS, DFS, Dijkstra’s.
Haim Kaplan and Uri Zwick
Great Theoretical Ideas in Computer Science
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
Approximation Algorithms for TSP
Enumerating Distances Using Spanners of Bounded Degree
Graphs & Graph Algorithms 2
Near-Optimal (Euclidean) Metric Compression
Algorithms (2IL15) – Lecture 5 SINGLE-SOURCE SHORTEST PATHS
Introduction Wireless Ad-Hoc Network
Minimum Spanning Tree Algorithms
Shortest Paths and Minimum Spanning Trees
Clustering.
Presentation transcript:

1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al. (SODA 2005) Presented by: Ethan Phelps-Goodman Atri Rudra

2 Moving from Seattle to NY Looks like a 2hr drive  Contraction is bad Looks like a 10hr plane ride  Expansion is bad “Faithful” representation

3 Metric Spaces Set of points Distance function  Non-negative  Triangle Inequality Metric  Graph  weighted graph  shortest path distance

4 Embeddings Mapping  : X ! Y Exp(  )=max a,b 2 X d 2 (  (a),  (b))/d 1 (a,b) Contr(  )=Exp(  -1 ) Dist(  )=Exp(  ) with Contr(  ) ¸ 1 (X,d 1 ( ¢, ¢ )) (Y,d 2 ( ¢, ¢ ))

5 Edge property Mapping from a unwt graph G=(V,E) Exp(  )=max (x,y) 2 E d 2 (x’,y’)  Exp(  )=max x 2 V,y 2 V d 2 (x’,y’)/d 1 (x,y)  ¸ is obvious  x=v 1,v 2, ,v L =y be the shortest path in G max i d 2 (v’ i,v’ i+1 ) ¸ 1/L ¢  i d 2 (v’ i,v’ i+1 ) The sum ¸ d 2 (x’,y’) by triangle inequality

6 Embedding into a class of metrics Pick an embedding Non-contractive Minimum distortion Embedding into specific Metric [KRS04],[PS05]

7 Previous work Start with a problem in some metric space Embed inputs into another “nice” metric  Problem is easy to solve in the nice metric  For e.g., embed graphs into trees Combinatorial in nature  Try to upper bound the distortion Survey by Indyk D

8 Algorithmic Task Find embedding with min possible distortion  Don’t care about the value of distortion  Recall the map example Embed unweighted graph into R (line) as well as possible

9 What is in store for you ? Embed unwt graph ! Line Hardness of the algorithmic Q Approx Algo for general unwt graph Approx Algo for unwt tree What else is there in the paper ? Open problems

10 Hardness of Approximation NP-Hard to a-approximate for some a>1 Reduction from TSP on (1,2)-metric  All distances are in {1,2}  NP-Hard to a-approximate for any a <5381/5380 (X,D) ) G=(X,E)  D(u,v)=1  (u,v) 2 E

11 Hardness of Approximation TSP on (1,2)-metric  Input M:- (V,D( ¢, ¢ ))  Output:- Permutation of V which is a tour  M  G=(V,E) G x yD(x,y)=1  (x,y) 2 E

12 The Construction Given metric M  G Make a copy of G called G’=(V’,E’) Add a special node o connected to V [ V’ The constrcuted graph H has diameter=2 G

13 Showing that it works M has a tour of len t ) H embeds into R with distr · t Let the tour be v 1,v 2, ,v n,v 1  Start with v 1  Lay out v 2, ,v n according to their distances  Put in o  Lay out G’ in the same way as G R v1v1 0 v2v2 vivi v i+1 vnvn D(v i,v i+1 ) o 1 v’ 1 v’ n 1 Non-contractive Expansion=t

14 The other direction f embeds H into R w/ distr s ) 9 tour in M of len · s+1 Let u 1, ,u 2n be the ordering of V [ V’ by f  Assume “nice” ordering  |f(u 2n )-f(u 1 )| · 2s  (Wlog) blue box · (2s-2)/2=s-1  Blue box gives a tour of length · (s-1)+2=s+1 R f(u 1 ) f(u 2n ) ¸ 1

15 Getting a nice ordering Total ‘span’ still · 2s “Boundary” nodes are at distance ¸ 2 Swap blue and green boxes  Total Span still · 2s  Still non-contractive Keep on swapping till nice ordering is reached R ¸ 2

16 What is in store for you ? Embed unwt graph ! Line Hardness of the algorithmic Q Approx Algo for general unwt graph Approx Algo for unwt tree What else is there in the paper ? Open problems

17 Embedding a tree into R Create an Eulerian tour Embed according to tour  preserve order  preserve distances No contraction Distortion · 2n-1

18 Embedding general graphs Every graph embeds into R w/ O(n) distortion  Use any spanning tree Coming Soon: c-approx algo  c is the value of the optimal distortion Combining both gives O(n 1/2 )-approx  If c · n 1/2, c-approx algo works  If c> n 1/2, spanning tree algo works

19 c-approx algorithm Embed G=(V,E) into R Let f * be the optimal embedding Let t 1,t 2 be the ‘end-points’ of f * t 1 =v 1,v 2, ,v L =t 2 shortest path V=V 1 [ V 2  [ V L  x closest to v i ) x 2 V i

20 c-approx algo (contd.) Embed V i (i=1,  L) by the spanning tree algo  Layout v i first  Recall that the max span is · 2|V i | Leave a gap of |V i | on each side Run for all possible values of t 1 and t 2 V1V1 VLVL V2V2 V L-1 ViVi R |V i | 2|V i |

21 Notations f * is the optimal embedding c is the optimal distortion f is the computed embedding D( ¢, ¢ ) shortest path in G

22 Analysis Clm1: D(v i,x) · c/2 Clm2: |V i |+|V i+1 |+  +|V i+c-1 | · 2c 2 Clm3: Embedding is non-contracting Will now show |f(x)-f(y)| · 16c 2  |i-j| · 2c  Span= 4 ¢ [ (|V i |+  +|V i+c-1 |) + (|V i+c |+  +|V j |) ] The constructed embedding has distortion O(c 2 ) V1V1 VLVL V2V2 V L-1 ViVi R |V i | 2|V i | x VjVj y 4|V i | as D(v i,v j ) · D(x,v i )+D(x,y)+D(y,v+j) · c/2+1+c/2 f * has distortion c

23 Non-contractive embedding x,y 2 V i x 2 V i, y 2 V j  |f(x)-f(y)| ¸ |V i | + 2(|V i+1 |+  |V j-1 |) +|V j | ¸ |V i | + |j-i| + |V j | ¸ D(x,v i ) + D(v i,v j ) + D(v j,y) ¸ D(x,y) V1V1 VLVL V2V2 V L-1 ViVi R |V i | 2|V i | x VjVj y y Should be |V j |+1 (root goes first)

24 Proof of Clm1 2 ¢ D(x,v i ) · ? c  D(x,v i ) + D(x,v i ) · D(x,v j )+D(x,v j+1 ) · ( f * (v j ) – f * (x) ) + ( f * (x) – f * (v j+1 ) = f * (v j ) – f * (v j+1 ) · c · c R x vivi vjvj V j+1 f*(v i ) f*(v j ) f*(v j+1 )

25 Embedding Trees into the line Problem: Given an unweighted tree that embeds into the line with distortion c, find the smallest distortion line embedding. They give (c logc) 1/2 -approximation, Can also be stated as O((n logn) 1/3 )- approximation:  If c > n 2/3 then use simple spanning tree algorithm  If c < n 2/3 then use this algorithm

26 Tree Embeddings Similar to previous algorithm Select endpoints & compute shortest path

27 Tree Embeddings Similar to previous algorithm Select endpoints & compute shortest path Group every c vertices Embed each component, then concatenate

28 Local Density Define local density by   = max v, r (|B(v, r)|-1)/2r. Then c > .  In max density ball, there are 2r  vertices, so end points of embedding have distance at least 2r .  But max distance is 2r, so endpoints have distortion at least . Also, any component with diameter d has at most d  vertices.

29 Component Embedding Note: only care about order of vertices. Distances computed from shortest path Want to embed in roughly depth-first order But don’t want neighbors too far away Algorithm alternates between laying out neighbors of previously visited vertices (BFS) and DFS.

30 Component Embedding in action CiCi

31 Component embedding algorithm Magic number g(c)= 2  (clogc) 1/2 + c Pick a leftmost vertex r Let C i be vertices visited up to round i While there are unvisited vertices  Visit all neighbors of C i  Visit next g(c) vertices in light-path DFS order

32 Bounding the distortion Outline:  Bound number of iterations  Bound span of neighbor step  Bound total distortion in component  Bound distortion from concatenation

33 Number of iterations Diameter of tree is at most 2c: So total # vertices is 2c  At least g(c) added at each iteration Number of iterations is (2c  )/g(c)  (clog -1 c) 1/2 c c/2

34 Distortion of neighbor set or, where did g(c) come from? Claim: neighbor set is spanned by tree of size g(c). Idea: Vertices in neighbor set can’t be too far from “active” DFS vertices:  at most (i+1) < (clog -1 c) 1/2 away. So spanned by tree of size  (clog -1 c) 1/2 2c 2 vertices in component, so 2logc can be active 2logc *  (clog -1 c) 1/2 + c = g(c).

35 Distortion for full component Vertices added in neighbor step are spanned by tree of size g(c) g(c) connected vertices added in DFS step So distortion at most 2g(c) for each iteration 2 adjacent vertices could be on opposite ends of iteration i and i+1, so total distortion 4g(c) over all iterations

36 Concatenating the embeddings There is only one edge (v i, v i+1 ) connecting components X i and X i+1 Modify the DFS ordering of X i so that v i is last visited Doesn’t affect distortion of X i, and distortion of edge (v i, v i+1 ) is at most 2g(c) Total distortion is at most  4g(c) = 8  (clogc) 1/2 + 4c  8 c 3/2 log 1/2 c + 4c  Or O((c logc) 1/2 ) times optimal

37 Other algorithms in paper An exact algorithm for embedding a general graph into the line, with runtime O(n c ). A geometric 3-approximation for embedding the sphere into the plane.

38 Open questions For lines:  Better approximation ratios  Lower bounds  Weighted graphs (with large distortion) Bigger question: algorithmic embeddings of graphs into the plane.