AKPW Algorithm for Spanning Trees
Total Page:16
File Type:pdf, Size:1020Kb
Introduction Result Unweighted case Weighted case AKPW algorithm for spanning trees Lynn Chua 18.434 Seminar in Theoretical Computer Science Lynn Chua 1/9 Introduction Result Unweighted case Weighted case Background and motivation G connected multigraph, edge multiset E, w : E ! R. Two-person game: tree player chooses spanning tree T , edge player chooses edge e. cycle(T ; e): weight of cycle formed when e is added to T . Payo of game is: (0 if e lies in the tree T cost(T ; e) = cycle(T ; e)=w(e) otherwise Lynn Chua 2/9 Theorem (Alon, Karp, Peleg, West, 1991) 9 constant c such that, for n suciently large, every n-vertex p multigraph G, w satises Sopt (G; w) ≤ exp(c log n log log n). Introduction Result Unweighted case Weighted case Main result G multigraph, T spanning tree, edge e path(T ; e): weight of path in T between endpoints of e cost∗(T ; e) = path(T ; e)=w(e) 1 X ∗ Sopt (G; w) = min cost (T ; e) T jEj e2E Lynn Chua 3/9 Introduction Result Unweighted case Weighted case Main result G multigraph, T spanning tree, edge e path(T ; e): weight of path in T between endpoints of e cost∗(T ; e) = path(T ; e)=w(e) 1 X ∗ Sopt (G; w) = min cost (T ; e) T jEj e2E Theorem (Alon, Karp, Peleg, West, 1991) 9 constant c such that, for n suciently large, every n-vertex p multigraph G, w satises Sopt (G; w) ≤ exp(c log n log log n). Lynn Chua 3/9 Introduction Result Unweighted case Weighted case Applications Lynn Chua 4/9 Introduction Result Unweighted case Weighted case Denitions Cluster: subset of vertices whose induced subgraph is connected. Partition of G = (V ; E): collection of disjoint clusters whose union is V . Clustering algorithm of Awerbuch: Partition of G into clusters of radii y(n) = O(x(n) ln n) only 1=x(n) of edges connect endpoints in dierent clusters Lynn Chua 5/9 Introduction Result Unweighted case Weighted case Unweighted case Recursive algorithm: Construct shortest-path spanning tree TC for every cluster C in partition. Create multigraph G~ by collapsing each cluster into a single vertex. Recurse on G~ to obtain tree T~ . Final tree consists of union of T~ and the TC . Lynn Chua 6/9 Introduction Result Unweighted case Weighted case Cost analysis Let f (n; m) = maxG Sopt (G; T ), T is spanning tree constructed by AKPW algorithm. 1 f (n; m) ≤ 2y(n) + · f (n; m=x(n)) · 5y(n) x(n) Choosing x(n) = exp(plog n log log n), we get f (n) ≤ exp(O(plog n log log n)). Lynn Chua 7/9 Introduction Result Unweighted case Weighted case Weighted case Break edges into classes Ei , i ≥ 1 i−1 i Ei contains edges with weight in [y ; y ), for some parameter y(n) Do clustering procedure iteratively, consider each Ei for the rst time in the ith iteration At iteration i, each cluster has radius ≤ y i+1 Lynn Chua 8/9 Result: S(G; w; T ) = exp(O(plog n log log n)) Introduction Result Unweighted case Weighted case Algorithm for constructing spanning tree T Set j = 1, Gj = G. While [i Ei 6= ; do: 1 Partition vertex set of Gj into clusters. 2 Construct shortest-path spanning tree in each cluster of Gj . 3 Add each edge of the constructed trees to the output tree T . 4 Construct next multigraph Gj+1 by contracting each cluster into a single vertex. 5 Set j to j + 1. Lynn Chua 9/9 Introduction Result Unweighted case Weighted case Algorithm for constructing spanning tree T Set j = 1, Gj = G. While [i Ei 6= ; do: 1 Partition vertex set of Gj into clusters. 2 Construct shortest-path spanning tree in each cluster of Gj . 3 Add each edge of the constructed trees to the output tree T . 4 Construct next multigraph Gj+1 by contracting each cluster into a single vertex. 5 Set j to j + 1. Result: S(G; w; T ) = exp(O(plog n log log n)) Lynn Chua 9/9.