Download presentation
Presentation is loading. Please wait.
1
Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs K. Chaudhuri, S. Rao, S. Riesenfeld, K. Talwar UC Berkeley
2
BDMST : The Problem ► Given: Graph: G Edge costs: c e Degree bound : D ► Find a minimum cost tree that respects the degree bounds 2 1 2 1 2 2 1 1 1 1 2 2 BDMST, D = 3 MST
3
BDMST : The Problem ► Generalization of Minimum Cost Hamiltonian Path ► For general weighted graphs, No Polynomial-Factor Approximation unless P=NP ► Our Work: Relax degree bounds to obtain an approximation in cost
4
Previous Results ► [FR94] Unweighted graphs Additive 1 approximation to degree ► [KR00] Weighted graphs, uniform degree bounds deg(v) · b(1+ ) D + log b n cost(T) · (1 + 1/ ) OPT ► [KR03] Non-uniform degree bounds ► [CRRT] Quasipolynomial Running Time deg(v) · D + log n / log log n cost(T) · OPT ► [CRRT]Polynomial Running Time deg(v) · bD + log b n cost(T) · OPT
5
LP Formulation ► Primal: min e c e x e e 2 (v) x e · D e 2 (v) x e · D x 2 SP G x 2 SP G ► Dual: max v min T (C(T) + v v (deg T (v) - D)) MST in cost function c uv + u + v v : Penalties on high-degree vertices
6
An Algorithm ► Solve Dual LP Optimal Penalties v ► Pick MST in cost function (c uv + u + v ) with: Low maximum degree Low actual cost
7
An Algorithm ► Solve Dual LP Optimal Penalties v ► Pick MST in cost function (c uv + u + v ) with: Maximum degree : D Real cost : OPT
8
An Algorithm ► Solve Dual LP Optimal Penalties v ► Pick MST in cost function (c uv + u + v ) with: Maximum degree : D + O(log n/loglog n) Real cost : OPT
9
Picking the Right Tree ► T is MST in cost function c uv + u + v with: 1.Max degree : D + O(log n/loglogn) 2.For every vertex v with v > 0, Min degree :D – O(log n/loglog n) ► Theorem: T has Max degree:D + O(log n/log log n) Actual cost:OPT
10
MSTDB Problem ► Given: Graph: G Edge costs: c e Degree upper bound: D H A set of nodes: L Degree lower bound on L: D L ► Find a MST with Max degree : D H Min degree of L : D L ► Or prove that no such tree exists 1 1 2 1 2 1 1 1 1 1 2 1 D H = 3, D L = 2, L = O
11
Previous Work ► [FR94] Unweighted graphs, degree upper bounds Additive 1 approximation ► [F93] Degree upper bounds Finds an MST with max degree bD + log b n Or proves no MST with max degree D exists
12
Our Guarantees ► Given: Graph: G Edge costs: c e Degree upper bound: D H A set of nodes: L Degree lower bound on L: D L ► We can find an MST with: Max Degree: D H + O(log n/log log n) Min Degree of L : D L – O(log n/log log n) ► Or prove that no MST with given bounds exist
13
Final BDMST Algorithm ► Solve Dual LP Optimal Penalties v ► Run our MSTDB algorithm : Cost function : c uv + u + v Degree upper bound : D L: Set of nodes with v > 0 Degree lower bound : D ► Theorem: Failure contradicts optimality of v
14
MSTDB Algorithm Outline ► Start with arbitrary MST T 0 ► Phase i: T i-1 : use Augmenting Paths to Reduce the degree of a “high degree” node Or increase the degree of a “low degree” node ► Success: New tree T i ► Failure: Witness for either D H = d max (T i-1 ) – O(log n/log log n) or D L = d min (L) + O(log n/log log n)
15
Useful Edges and Witness ► Useful edge: Occurs in some MST of G 1 1 1 1 2 A D C B e f Witness: Structure to show a lower(upper) bound on the degree of any MST
16
High Degree Witness ► High degree Witness: Center Set : W Clusters: C 1,.., C k No useful intercluster edge In any MST: Max Degree (W) ¸ d (|W| + k – 1) / |W| e W
17
Feasible Swaps ► Feasible swap (e,f,T): 1.Tree edge e 2.Non-tree edge f 3.Unique cycle in T [ f contains e 4.c(e) = c(f) ► A feasible swap (e,f,T): Produces an equal cost tree Reduces degree of endpoints of e 1 1 1 1 2 A D C B e f
18
Augmenting Paths ► Algorithm: Construct an augmenting path of feasible swaps
19
W CiCi Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
20
W CiCi Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
21
W CiCi Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
22
W CiCi Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
23
Algorithm Outline ► Start with: Center Set : W 0 Clusters : connected through W 0 ► In step i: Find an augmenting path of feasible swaps to improve some v in W i Failure: Center Set and clusters form a high degree witness
24
Conclusion ► Improved approximation for: BDMST (Bounded Degree MST) MSTDB (MST with Degree Bounds) ► New Techniques: Improved cost bounding techniques based on Edmond’s matching algorithm Improved degree improvement techniques based on augmenting paths ► Open Question: Can degree bounds be relaxed to additive constant? ► [FR94] Gives additive 1 for unweighted graphs
25
Questions? Questions?
28
Reduce-Max-Degree Initialize: ► Let S d = nodes with degree d or more ► Pick d : |S d-1 | · (log n/log log n) |S d | ► Center Set : W 0 = S d [ S d-1 ► Initial clusters: Components when W 0 is deleted from T
29
W CiCi Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
30
Reduce-Max-Degree ► For each useful intercluster edge f : Find feasible swap (e,f,T) that improves v 2 W t Remove v from W t Form new cluster with: ► e ► f ► v ► children clusters of v
31
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
32
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
33
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
34
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
35
Reduce-Max-Degree Termination Conditions: 1. Degree d vertex v removed from W t : Can find a sequence of swaps to improve v Number of degree d vertices decreases by one
36
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
37
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
38
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
39
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
40
Tree edge Useful nontree edge Degree d – 1 node Degree d node Low degree node 1 1 1 1 2 2
41
Reduce-Max-Degree Termination Conditions: 1. Degree d vertex v removed from W t : Can find a set of swaps which improve v Number of degree d vertices decreases by one 2. No feasible intercluster edges: Can find witness to show that max degree of any MST is at least d – O(log n/log log n)
42
Obtaining a Witness ► Center Set : W t |W t | · |S d | ► Clusters: From deleting W t : ¸ (d-2)|W t | Lost from merges: · |S d-1 | Total: ¸ (d-2)|W t | - |S d-1 | ► Witness Quality: At least (d-2) - O(log n/log log n)
43
Summary ► Improved approximation for: BDMST (Bounded Degree MST) MSTDB (MST with Degree Bounds) ► New Techniques: Improved cost bounding techniques based on Edmond’s matching algorithm Improved degree improvement techniques based on augmenting paths ► Open Question: Can degree bounds be relaxed to additive constant? ► [FR94] Gives additive 1 for unweighted graphs
44
A Better Algorithm ► Suppose given D H, we can find an MST with : Max Degree : 5D H + 2 Or show there is no MST with max degree D H ► BDMST Guarantees: deg(v) · 10(1+ )D + O(1) cost(T) · (1+1/ ) OPT ► MSTDB Algorithm uses Push-Relabel
45
Push Relabel[G85, GT86] ► A node has: A Label An Excess ► Push: Push flow from a higher to a lower label along an edge ► Relabel: Raise the label of a node with no edges to a lower label ► Feasibility: Node at label L has edges to nodes at label L-1 or above
46
Push Relabel for Max Flow ► Initially: Source : 1 excess Sink : 1 deficit All other nodes: 0 excess ► Push and Relabel until: No node has any excess Or there is a label with no nodes A
47
Push-Relabel for MSTDB ► Works for MSTDB with degree upper bounds only ► Each node has: A label An excess/deficit degree ► Excess and Deficits: deg(v) ¸ d : (deg(v) – d + 1) units excess deg(v) < d-1: (d – 1 – deg(v)) units deficit
48
Push-Relabel for MSTDB ► Push: A node can transfer degree to a node at a lower label ► Relabel: Raise the label of a node which cannot transfer degree to any node at a lower level ► Feasibility: A node at label L can be improved only by nodes at label L-1 or higher
49
Algorithm Outline ► Sparse Label: Has less than 4 times as many nodes as the number of nodes in all the labels above it ► Algorithm: Push and relabel until: Either no nodes have any excess Or there is a sparse label ► Sparse Label ! Witness Average degree : d/5 - 2
50
Publications & Manuscripts: 1. [CRRT] Improved Approximation Algorithms for Degree Bounded MSTs using Push-Relabel 2. [CRRT] What would Edmonds do? Augmenting Paths and Witnesses for Degree Bounded MSTs 3. [CCWBPK04] Selfish Caching in Distributed Systems : A Game Theoretic Approach, PODC 2004 4. [CGRT03] Paths, Trees and Minimum Latency Tours, FOCS 2003
51
Future Directions: ► Bounded Degree MSTs: Improve guarantees to: ► deg(v) · B + O(1) ► cost(T) · OPT ► Embedding simple metrics to l 1 with low distortion
52
Questions?
53
Picking the Right Tree Proof: ► We can show that: C(T D’ ) + v D’ v (deg T D’ (v) – D) · OPT D ► If deg T D’ (v) ¸ D when D’ v > 0 C(T D’ ) · OPT D
57
Picking the Right Tree [KR00] [Our Work] ► [F93] Max Degree: bB + log b n ► Max Degree B + O(log n/log log n)
58
► Technical slide with equation about how imposing both upper and lower bounds on degrees gives us optimal cost
59
Picking the Right Tree [KR00] [Our Work] ► Guarantees: For > 0 Max degree: (1 + )bB + log b n (1 + )bB + log b n Max Cost: (1 + 1/ ) OPT (1 + 1/ ) OPT ► Running time: Polynomial ► Guarantees: Max degree: B + O(log n/log log n) B + O(log n/log log n) Max Cost: OPT OPT ► Running Time: Quasipolynomial
60
► Augmenting paths and witnesses : MSTs with Degree Bounds
61
LP Formulation max v min T (C(T) + v v (deg T (v) - B) MST in cost function c uv + u + v ► OPT Dual: Properties: 1.Max degree : B 2.For all v such that v > 0 deg(v) = B
62
LP Formulation ► Primal: min e c e x e e 2 (v) x e · B e 2 (v) x e · B x 2 SP G x 2 SP G ► Dual: max v min T (C(T) + v v (deg T (v) - B) MST in cost function c uv + u + v
63
LP Formulation ► Primal: min e c e x e e 2 (v) x e · B e 2 (v) x e · B x 2 SP G x 2 SP G ► Dual: max v min T (C(T) + v v (deg T (v) - B)
64
MSTDB Algorithm Outline ► Start with arbitrary MST T 0 ► In Phase i d max = max degree (T i-1 ) d min = min degree (L) S H = all nodes of degree d max – O(log n/log log n) or more S L = all nodes in L of degree d min + O(log n/log log n) or less ► Try Improve a node in S H or S L ► Success:New tree T i ► Failure:Witness for D H = d max – O(log n/log log n) and D L = d min + O(log n/log log n)
65
Low Degree Witness Proof: ► Any MST on W, C 1,.., C k has (|W| + k – 1) edges ► At most (2|W| + k – 2) endpoints can be in W ► Average degree of W · b (2|W| + k – 2)/ |W| c
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.