1 approximation algorithms for low- distortion embeddings into low- dimensional spaces badoiu et...

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

Upload: augustus-mcbride

Post on 20-Jan-2018

221 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

Page 1: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

1

Approximation Algorithms for Low-Distortion Embeddings into Low-Dimensional Spaces

Badoiu et al. (SODA 2005)Presented by: Ethan Phelps-Goodman Atri Rudra

Page 2: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 3: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

3

Metric Spaces Set of points Distance function

Non-negative Triangle Inequality

Metric Graph weighted graph shortest path distance

2

1

3

5

56

Page 4: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

4

Embeddings

Mapping : X! Y Exp()=maxa,b2 X d2((a),(b))/d1(a,b) Contr()=Exp(-1) Dist()=Exp() with Contr()¸ 1

(X,d1(¢,¢))

(Y,d2(¢,¢))

Page 5: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

5

Edge property

Mapping from a unwt graph G=(V,E) Exp()=max(x,y)2 E d2(x’,y’)

Exp()=maxx2 V,y2 V d2(x’,y’)/d1(x,y) ¸ is obvious x=v1,v2,,vL=y be the shortest path in G

maxi d2(v’i,v’i+1)¸ 1/L¢ i d2(v’i,v’i+1) The sum ¸ d2(x’,y’) by triangle inequality

Page 6: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

6

Embedding into a class of metrics

Pick an embedding Non-contractive Minimum distortion

Embedding into specific Metric [KRS04],[PS05]

Page 7: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 8: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 9: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 10: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 11: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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 y D(x,y)=1 (x,y)2 E

Page 12: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 13: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

13

Showing that it works

M has a tour of len t) H embeds into R with distr · t Let the tour be v1,v2,,vn,v1

Start with v1

Lay out v2,,vn according to their distances Put in o Lay out G’ in the same way as G

Rv1

0

v2vi vi+1 vn

D(vi,vi+1)

o

1

v’1 v’n

1

Non-contractive

Expansion=t

Page 14: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

14

The other direction

f embeds H into R w/ distr s ) 9 tour in M of len ·s+1 Let u1,,u2n be the ordering of V[ V’ by f

Assume “nice” ordering |f(u2n)-f(u1)|· 2s (Wlog) blue box · (2s-2)/2=s-1 Blue box gives a tour of length · (s-1)+2=s+1

R

f(u1)f(u2n)

¸ 1

Page 15: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 16: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 17: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

17

Embedding a tree into R Create an Eulerian tour Embed according to tour

preserve order preserve distances

No contraction Distortion · 2n-1

Page 18: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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(n1/2)-approx If c· n1/2, c-approx algo works If c> n1/2, spanning tree algo works

Page 19: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

19

c-approx algorithm

Embed G=(V,E) into R Let f* be the optimal embedding Let t1,t2 be the ‘end-points’ of f*

t1=v1,v2,,vL=t2 shortest path V=V1[ V2 [ VL

x closest to vi ) x2 Vi

Page 20: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

20

c-approx algo (contd.)

Embed Vi (i=1, L) by the spanning tree algo Layout vi first Recall that the max span is · 2|Vi|

Leave a gap of |Vi| on each side Run for all possible values of t1 and t2

V1 VLV2VL-1Vi

R

|Vi| |Vi|2|Vi|

Page 21: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

21

Notations

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

Page 22: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

22

Analysis

Clm1: D(vi,x)· c/2 Clm2: |Vi|+|Vi+1|++|Vi+c-1|· 2c2

Clm3: Embedding is non-contracting Will now show |f(x)-f(y)|· 16c2

|i-j|· 2c Span= 4¢[ (|Vi|++|Vi+c-1|) + (|Vi+c|++|Vj|) ]

The constructed embedding has distortion O(c2)

V1 VLV2VL-1

Vi

R|Vi| |Vi|2|Vi|

x

Vj

y

4|Vi|

as D(vi,vj)· D(x,vi)+D(x,y)+D(y,v+j)· c/2+1+c/2

f* has distortion c

Page 23: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

23

Non-contractive embedding

x,y2 Vi

x2 Vi, y2 Vj |f(x)-f(y)|¸ |Vi| + 2(|Vi+1|+ |Vj-1|) +|Vj|

¸ |Vi| + |j-i| + |Vj| ¸ D(x,vi) + D(vi,vj) + D(vj,y) ¸ D(x,y)

V1 VLV2VL-1

Vi

R|Vi| |Vi|2|Vi|

x

Vj

yy

Should be |Vj|+1(root goes first)

Page 24: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

24

Proof of Clm1

2¢ D(x,vi) · ? c D(x,vi) + D(x,vi)

· D(x,vj)+D(x,vj+1)

· ( f*(vj) – f*(x) ) + ( f*(x) – f*(vj+1)

= f*(vj) – f*(vj+1)

· c

R

x

vivj Vj+1

f*(vi)f*(vj) f*(vj+1)

Page 25: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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 > n2/3 then use simple spanning tree algorithm If c < n2/3 then use this algorithm

Page 26: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

26

Tree Embeddings

Similar to previous algorithm

Select endpoints & compute shortest path

Page 27: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

27

Tree Embeddings

Similar to previous algorithm

Select endpoints & compute shortest path

Group every c vertices

Embed each component, then concatenate

Page 28: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

28

Local Density

Define local density by = maxv, 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.

Page 29: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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.

Page 30: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

30

Component Embedding in action

Ci

Page 31: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

31

Component embedding algorithm Magic number g(c)= 2(clogc)1/2 + c Pick a leftmost vertex r Let Ci be vertices visited up to round i While there are unvisited vertices

Visit all neighbors of Ci

Visit next g(c) vertices in light-path DFS order

Page 32: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

32

Bounding the distortion

Outline: Bound number of iterations Bound span of neighbor step Bound total distortion in component Bound distortion from concatenation

Page 33: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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-1c)1/2

c

c/2 c/2

Page 34: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

34

Distortion of neighbor setor, 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-1c)1/2 away.

So spanned by tree of size (clog-1c)1/2

2c2 vertices in component, so 2logc can be active

2logc * (clog-1c)1/2 + c = g(c).

Page 35: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

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

Page 36: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

36

Concatenating the embeddings There is only one edge (vi, vi+1) connecting

components Xi and Xi+1 Modify the DFS ordering of Xi so that vi is last

visited Doesn’t affect distortion of Xi, and distortion of

edge (vi, vi+1) is at most 2g(c) Total distortion is at most

4g(c) = 8(clogc)1/2 + 4c 8 c3/2log1/2c + 4c Or O((c logc)1/2) times optimal

Page 37: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

37

Other algorithms in paper

An exact algorithm for embedding a general graph into the line, with runtime O(nc).

A geometric 3-approximation for embedding the sphere into the plane.

Page 38: 1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al.…

38

Open questions

For lines: Better approximation ratios Lower bounds Weighted graphs (with large distortion)

Bigger question: algorithmic embeddings of graphs into the plane.