augmenting paths, witnesses and improved approximations for bounded degree msts

66
Augmenting Paths, Augmenting Paths, Witnesses and Witnesses and Improved Improved Approximations for Approximations for Bounded Degree MSTs Bounded Degree MSTs K. Chaudhuri K. Chaudhuri , S. Rao, S. Riesenfeld, , S. Rao, S. Riesenfeld, K. Talwar K. Talwar UC Berkeley UC Berkeley

Upload: annora

Post on 19-Mar-2016

37 views

Category:

Documents


1 download

DESCRIPTION

Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs. K. Chaudhuri , S. Rao, S. Riesenfeld, K. Talwar UC Berkeley. BDMST : The Problem. Given: Graph: G Edge costs: c e Degree bound : D Find a minimum cost tree that respects the degree bounds. 2. 2. 1. 1. 1. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Augmenting Paths, Augmenting Paths, Witnesses and Improved Witnesses and Improved

Approximations for Approximations for Bounded Degree MSTsBounded Degree MSTs

K. ChaudhuriK. Chaudhuri, S. Rao, S. Riesenfeld, , S. Rao, S. Riesenfeld, K. TalwarK. Talwar

UC BerkeleyUC Berkeley

Page 2: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

BDMST : The ProblemBDMST : The Problem►Given:Given:

Graph: GGraph: G Edge costs: cEdge costs: cee Degree bound : DDegree bound : D

►Find a minimum cost Find a minimum cost tree that respects the tree that respects the degree boundsdegree bounds

2

1

2

12

2

1

11

1

2

2

BDMST, D = 3

MST

Page 3: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

BDMST : The ProblemBDMST : The Problem►Generalization of Minimum Cost Hamiltonian Generalization of Minimum Cost Hamiltonian

Path Path

► For general weighted graphs,For general weighted graphs, No Polynomial-Factor Approximation unless P=NPNo Polynomial-Factor Approximation unless P=NP

►Our Work:Our Work: Relax degree bounds to obtain an approximation Relax degree bounds to obtain an approximation

in costin cost

Page 4: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Previous ResultsPrevious Results► [FR94] Unweighted graphs[FR94] Unweighted graphs

Additive 1 approximation to degreeAdditive 1 approximation to degree► [KR00] Weighted graphs, uniform degree [KR00] Weighted graphs, uniform degree

boundsbounds deg(v) deg(v) ·· b(1+ b(1+) D + log) D + logbb n n cost(T) cost(T) ·· (1 + 1/ (1 + 1/) OPT) OPT

► [KR03] Non-uniform degree bounds[KR03] Non-uniform degree bounds► [CRRT] Quasipolynomial Running Time[CRRT] Quasipolynomial Running Time

deg(v) deg(v) ·· D + log n / log log n D + log n / log log n cost(T) cost(T) ·· OPT OPT

► [CRRT]Polynomial Running Time[CRRT]Polynomial Running Time deg(v) deg(v) ·· bD + log bD + logbb n n cost(T) cost(T) ·· OPT OPT

Page 5: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

LP FormulationLP Formulation► Primal:Primal:

min min ee c cee x xee e e 22 (v)(v) x xee ·· D D x x 22 SP SPGG

► Dual:Dual:

max

v

minT (C(T) + v v(degT(v)

- D))

MST in cost function cuv + u + v

v : Penalties on high-degree vertices

Page 6: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

An AlgorithmAn Algorithm

► Solve Dual LP Solve Dual LP Optimal Penalties Optimal Penalties vv

► Pick MST in cost function (cPick MST in cost function (cuvuv + + uu + + vv) with:) with: Low maximum degreeLow maximum degree Low actual cost Low actual cost

Page 7: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

An AlgorithmAn Algorithm

► Solve Dual LP Solve Dual LP Optimal Penalties Optimal Penalties vv

► Pick MST in cost function (cPick MST in cost function (cuvuv + + uu + + vv) with:) with: Maximum degree : DMaximum degree : D Real cost : OPTReal cost : OPT

Page 8: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

An AlgorithmAn Algorithm

► Solve Dual LP Solve Dual LP Optimal Penalties Optimal Penalties vv

► Pick MST in cost function (cPick MST in cost function (cuvuv + + uu + + vv) with:) with: Maximum degree : D + O(log n/loglog n)Maximum degree : D + O(log n/loglog n) Real cost : OPTReal cost : OPT

Page 9: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Picking the Right TreePicking the Right Tree► T is MST in cost function cT is MST in cost function cuvuv + + uu + + vv

with:with:1.1. Max degree : Max degree : D + O(log n/loglogn)D + O(log n/loglogn)2.2. For every vertex v with For every vertex v with vv > 0, > 0,

Min degree :Min degree : D – O(log n/loglog n)D – O(log n/loglog n)► Theorem: T hasTheorem: T has

Max degree:Max degree: D + O(log n/log log n)D + O(log n/log log n) Actual costActual cost :: OPTOPT

Page 10: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

MSTDB ProblemMSTDB Problem► Given:Given:

Graph: GGraph: G Edge costs: cEdge costs: cee Degree upper bound: DDegree upper bound: DHH A set of nodes: LA set of nodes: L Degree lower bound on L: DDegree lower bound on L: DLL

► Find a MST withFind a MST with Max degree : DMax degree : DHH Min degree of L : DMin degree of L : DLL

► Or prove that no such tree Or prove that no such tree existsexists

1

1

2

12

1

1

11

1

2

1

DH = 3, DL = 2, L = O

Page 11: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Previous WorkPrevious Work►[FR94] Unweighted graphs, degree [FR94] Unweighted graphs, degree

upper boundsupper bounds Additive 1 approximationAdditive 1 approximation

►[F93] Degree upper bounds[F93] Degree upper bounds Finds an MST with max degree bD + logFinds an MST with max degree bD + logbb n n Or proves no MST with max degree D existsOr proves no MST with max degree D exists

Page 12: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Our GuaranteesOur Guarantees►Given:Given:

Graph: GGraph: G Edge costs: cEdge costs: cee Degree upper bound: DDegree upper bound: DHH A set of nodes: LA set of nodes: L Degree lower bound on L: DDegree lower bound on L: DLL

►We can find an MST with:We can find an MST with: Max Degree: DMax Degree: DHH + O(log n/log log n) + O(log n/log log n) Min Degree of L : DMin Degree of L : DLL – O(log n/log log n) – O(log n/log log n)

►Or prove that no MST with given bounds existOr prove that no MST with given bounds exist

Page 13: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Final BDMST AlgorithmFinal BDMST Algorithm►Solve Dual LP Solve Dual LP

Optimal Penalties Optimal Penalties vv►Run our MSTDB algorithm :Run our MSTDB algorithm :

Cost function : cCost function : cuvuv + + uu + + vv Degree upper bound : DDegree upper bound : D L: Set of nodes with L: Set of nodes with vv > 0 > 0 Degree lower bound : DDegree lower bound : D

►Theorem: Failure contradicts optimality of Theorem: Failure contradicts optimality of vv

Page 14: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

MSTDB Algorithm OutlineMSTDB Algorithm Outline► Start with arbitrary MST TStart with arbitrary MST T00

► Phase i: TPhase i: Ti-1 i-1 : use : use Augmenting PathsAugmenting Paths to to Reduce the degree of a “high degree” nodeReduce the degree of a “high degree” node Or increase the degree of a “low degree” nodeOr increase the degree of a “low degree” node

► Success:Success: New tree TNew tree Tii

► Failure:Failure: WitnessWitness for either D for either DHH = d = dmaxmax(T(Ti-1i-1) – O(log n/log log ) – O(log n/log log

n) or Dn) or DLL = d = dminmin(L) + O(log n/log log n)(L) + O(log n/log log n)

Page 15: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Useful Edges and WitnessUseful Edges and Witness

►Useful edge:Useful edge: Occurs in some MST Occurs in some MST

of Gof G 1

1

1 1

2

A

D C

B

ef

Witness:Structure to show a lower(upper) bound on the degree of any MST

Page 16: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

High Degree WitnessHigh Degree Witness►High degree High degree

Witness:Witness: Center Set : WCenter Set : W Clusters: CClusters: C11, .., C, .., Ckk No No usefuluseful intercluster intercluster

edgeedge

In any MST:Max Degree (W) ¸ d (|W| + k – 1) / |W| e

W

Page 17: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Feasible SwapsFeasible Swaps► Feasible swap (e,f,T):Feasible swap (e,f,T):

1.1. Tree edge e Tree edge e 2.2. Non-tree edge f Non-tree edge f 3.3. Unique cycle in T Unique cycle in T [[ f f

contains econtains e4.4. c(e) = c(f)c(e) = c(f)

► A feasible swap (e,f,T):A feasible swap (e,f,T): Produces an equal cost treeProduces an equal cost tree ReducesReduces degree of degree of

endpoints of eendpoints of e

1

1 11

2

A

D C

B

ef

Page 18: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Augmenting PathsAugmenting Paths

►Algorithm:Algorithm: Construct an Construct an augmenting path augmenting path of feasible of feasible

swapsswaps

Page 19: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

W

Ci

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2

2

Page 20: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

W

Ci

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2

2

Page 21: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

W

Ci

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2

2

Page 22: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

W

Ci

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2

2

Page 23: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Algorithm OutlineAlgorithm Outline►Start with:Start with:

Center Set : WCenter Set : W00 Clusters : connected through WClusters : connected through W00

► In step i:In step i: Find an augmenting path of feasible Find an augmenting path of feasible

swaps to improve some v in Wswaps to improve some v in Wii Failure: Center Set and clusters form a Failure: Center Set and clusters form a

high degree witnesshigh degree witness

Page 24: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

ConclusionConclusion► Improved approximation for:Improved approximation for:

BDMST (Bounded Degree MST)BDMST (Bounded Degree MST) MSTDB (MST with Degree Bounds)MSTDB (MST with Degree Bounds)

►New Techniques:New Techniques: Improved cost bounding techniques based on Improved cost bounding techniques based on

Edmond’s matching algorithmEdmond’s matching algorithm Improved degree improvement techniques based on Improved degree improvement techniques based on

augmenting pathsaugmenting paths►Open Question:Open Question:

Can degree bounds be relaxed to additive constant?Can degree bounds be relaxed to additive constant?► [FR94] Gives additive 1 for unweighted graphs[FR94] Gives additive 1 for unweighted graphs

Page 25: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Questions?Questions?

Page 26: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs
Page 27: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs
Page 28: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Reduce-Max-DegreeReduce-Max-DegreeInitialize:Initialize:► LetLet

SSdd = nodes with degree d or more = nodes with degree d or more► Pick d :Pick d :

|S|Sd-1d-1| | ·· (log n/log log n) |S (log n/log log n) |Sdd||► Center Set :Center Set :

WW00 = S = Sdd [[ S Sd-1d-1

► Initial clusters:Initial clusters: Components when WComponents when W00 is deleted from T is deleted from T

Page 29: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

W

Ci

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

22

Page 30: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Reduce-Max-DegreeReduce-Max-Degree►For each useful intercluster edge f :For each useful intercluster edge f :

Find feasible swap (e,f,T) that improves v Find feasible swap (e,f,T) that improves v 22 W Wtt

Remove v from WRemove v from Wtt Form new cluster with:Form new cluster with:

►ee►ff►vv►children clusters of vchildren clusters of v

Page 31: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

22

Page 32: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

22

Page 33: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

1

1

1

2

2

Page 34: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2 2

Page 35: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Reduce-Max-DegreeReduce-Max-DegreeTermination Conditions:Termination Conditions:1.1. Degree d vertex v removed from WDegree d vertex v removed from Wtt::

Can find a sequence of swaps to improve Can find a sequence of swaps to improve vv

Number of degree d vertices decreases Number of degree d vertices decreases by oneby one

Page 36: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2 2

Page 37: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2 2

Page 38: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2 2

Page 39: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2 2

Page 40: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Tree edgeUseful nontree edge

Degree d – 1 nodeDegree d nodeLow degree node

1

11

1

2 2

Page 41: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Reduce-Max-DegreeReduce-Max-DegreeTermination Conditions:Termination Conditions:1.1. Degree d vertex v removed from WDegree d vertex v removed from Wtt::

Can find a set of swaps which improve vCan find a set of swaps which improve v Number of degree d vertices decreases by Number of degree d vertices decreases by

oneone

2.2. No feasible intercluster edges:No feasible intercluster edges: Can find witness to show that max degree of Can find witness to show that max degree of

any MST is at least d – O(log n/log log n)any MST is at least d – O(log n/log log n)

Page 42: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Obtaining a WitnessObtaining a Witness►Center Set : WCenter Set : Wtt

|W|Wtt| | ·· |S |Sdd||►Clusters:Clusters:

From deleting WFrom deleting Wtt:: ¸̧ (d-2)|W (d-2)|Wtt|| Lost from merges:Lost from merges: ·· |S |Sd-1d-1|| Total:Total: ¸̧ (d-2)|W (d-2)|Wtt| - |S| - |Sd-1d-1||

►Witness Quality:Witness Quality: At least (d-2) - O(log n/log log n) At least (d-2) - O(log n/log log n)

Page 43: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

SummarySummary► Improved approximation for:Improved approximation for:

BDMST (Bounded Degree MST)BDMST (Bounded Degree MST) MSTDB (MST with Degree Bounds)MSTDB (MST with Degree Bounds)

►New Techniques:New Techniques: Improved cost bounding techniques based on Improved cost bounding techniques based on

Edmond’s matching algorithmEdmond’s matching algorithm Improved degree improvement techniques based on Improved degree improvement techniques based on

augmenting pathsaugmenting paths►Open Question:Open Question:

Can degree bounds be relaxed to additive constant?Can degree bounds be relaxed to additive constant?► [FR94] Gives additive 1 for unweighted graphs[FR94] Gives additive 1 for unweighted graphs

Page 44: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

A Better AlgorithmA Better Algorithm► Suppose given DSuppose given DHH, we can find an MST with :, we can find an MST with :

Max Degree : 5DMax Degree : 5DHH + 2 + 2 Or show there is no MST with max degree DOr show there is no MST with max degree DHH

► BDMST Guarantees:BDMST Guarantees: deg(v) deg(v) ·· 10(1+ 10(1+)D + O(1))D + O(1) cost(T) cost(T) ·· (1+1/ (1+1/) OPT) OPT

►MSTDB Algorithm uses MSTDB Algorithm uses Push-RelabelPush-Relabel

Page 45: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Push Relabel[G85, GT86]Push Relabel[G85, GT86]► A node has:A node has:

A LabelA Label An ExcessAn Excess

► Push:Push: Push flow from a higher to a lower label along an edgePush flow from a higher to a lower label along an edge

► Relabel:Relabel: Raise the label of a node with no edges to a lower labelRaise the label of a node with no edges to a lower label

► Feasibility:Feasibility: Node at label L has edges to nodes at label L-1 or Node at label L has edges to nodes at label L-1 or

aboveabove

Page 46: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Push Relabel for Max FlowPush Relabel for Max Flow► Initially:Initially:

Source : Source : 11 excess excess Sink : Sink : 11 deficit deficit All other nodes: 0 excessAll other nodes: 0 excess

►Push and Relabel until:Push and Relabel until: No node has any excessNo node has any excess Or there is a label with Or there is a label with

no nodesno nodes A

Page 47: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Push-Relabel for MSTDBPush-Relabel for MSTDB►Works for MSTDB with degree upper Works for MSTDB with degree upper

bounds onlybounds only►Each node has:Each node has:

A labelA label An excess/deficit degreeAn excess/deficit degree

►Excess and Deficits:Excess and Deficits: deg(v) deg(v) ¸̧ d : (deg(v) – d + 1) units excess d : (deg(v) – d + 1) units excess deg(v) < d-1: (d – 1 – deg(v)) units deficitdeg(v) < d-1: (d – 1 – deg(v)) units deficit

Page 48: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Push-Relabel for MSTDBPush-Relabel for MSTDB►Push:Push:

A node can transfer degree to a node at a A node can transfer degree to a node at a lower labellower label

►Relabel:Relabel: Raise the label of a node which cannot Raise the label of a node which cannot

transfer degree to any node at a lower transfer degree to any node at a lower levellevel

►Feasibility:Feasibility: A node at label L can be improved only by A node at label L can be improved only by

nodes at label L-1 or higher nodes at label L-1 or higher

Page 49: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Algorithm OutlineAlgorithm Outline► Sparse Label:Sparse Label:

Has less than 4 times as many nodes as the Has less than 4 times as many nodes as the number of nodes in all the labels above itnumber of nodes in all the labels above it

► Algorithm: Push and relabel until:Algorithm: Push and relabel until: Either no nodes have any excessEither no nodes have any excess Or there is a sparse labelOr there is a sparse label

► Sparse Label Sparse Label !! Witness Witness Average degree : d/5 - 2Average degree : d/5 - 2

Page 50: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Publications & Manuscripts:Publications & Manuscripts:1.1. [CRRT] Improved Approximation Algorithms [CRRT] Improved Approximation Algorithms

for Degree Bounded MSTs using Push-Relabelfor Degree Bounded MSTs using Push-Relabel2.2. [CRRT] What would Edmonds do? [CRRT] What would Edmonds do?

Augmenting Paths and Witnesses for Degree Augmenting Paths and Witnesses for Degree Bounded MSTsBounded MSTs

3.3. [CCWBPK04] Selfish Caching in Distributed [CCWBPK04] Selfish Caching in Distributed Systems : A Game Theoretic Approach, PODC Systems : A Game Theoretic Approach, PODC 20042004

4.4. [CGRT03] Paths, Trees and Minimum Latency [CGRT03] Paths, Trees and Minimum Latency Tours, FOCS 2003Tours, FOCS 2003

Page 51: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Future Directions:Future Directions:►Bounded Degree MSTs:Bounded Degree MSTs:

Improve guarantees to:Improve guarantees to:►deg(v) deg(v) ·· B + O(1) B + O(1)►cost(T) cost(T) ·· OPT OPT

►Embedding simple metrics to lEmbedding simple metrics to l11 with with low distortionlow distortion

Page 52: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Questions?Questions?

Page 53: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Picking the Right TreePicking the Right TreeProof:Proof:►We can show that:We can show that:

C(TC(TD’D’) + ) + vv D’D’vv(deg(degTTD’D’(v) – D) (v) – D) ·· OPT OPTDD

► If degIf degTTD’D’(v) (v) ¸̧ D when D when D’D’vv > 0 > 0

C(TC(TD’D’) ) ·· OPT OPTDD

Page 54: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs
Page 55: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs
Page 56: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs
Page 57: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Picking the Right TreePicking the Right Tree[KR00][KR00] [Our Work][Our Work]

► [F93] Max Degree:[F93] Max Degree: bB + logbB + logbb n n

►Max DegreeMax Degree B + O(log n/log log B + O(log n/log log

n)n)

Page 58: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

►Technical slide with equation about Technical slide with equation about how imposing both upper and lower how imposing both upper and lower bounds on degrees gives us optimal bounds on degrees gives us optimal costcost

Page 59: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Picking the Right TreePicking the Right Tree[KR00][KR00] [Our Work][Our Work]►Guarantees: For Guarantees: For > 0 > 0

Max degree:Max degree: (1 + (1 + )bB + log)bB + logbb n n Max Cost:Max Cost: (1 + 1/(1 + 1/) OPT) OPT

► Running time:Running time: PolynomialPolynomial

►Guarantees:Guarantees: Max degree:Max degree: B + O(log n/log log n)B + O(log n/log log n) Max Cost:Max Cost: OPTOPT

► Running Time:Running Time: QuasipolynomialQuasipolynomial

Page 60: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

►Augmenting paths and witnesses : Augmenting paths and witnesses : MSTs with Degree BoundsMSTs with Degree Bounds

Page 61: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

LP FormulationLP Formulation

max

v

minT (C(T) + v v(degT(v)

- B)

MST in cost function cuv + u + v

►OPT Dual:OPT Dual:

Properties:1. Max degree : B2. For all v such that v > 0

deg(v) = B

Page 62: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

LP FormulationLP Formulation► Primal:Primal:

min min ee c cee x xee e e 22 (v)(v) x xee ·· B B x x 22 SP SPGG

► Dual:Dual:

max

v

minT (C(T) + v v(degT(v)

- B)

MST in cost function cuv + u + v

Page 63: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

LP FormulationLP Formulation► Primal:Primal:

min min ee c cee x xee e e 22 (v)(v) x xee ·· B B x x 22 SP SPGG

► Dual:Dual:

max

v

minT (C(T) + v v(degT(v)

- B)

Page 64: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

MSTDB Algorithm OutlineMSTDB Algorithm Outline► Start with arbitrary MST TStart with arbitrary MST T00► In Phase iIn Phase i

ddmaxmax = max degree (T = max degree (Ti-1i-1)) ddminmin = min degree (L) = min degree (L) SSHH = all nodes of degree d = all nodes of degree dmaxmax – O(log n/log log n) or more – O(log n/log log n) or more SSLL = all nodes in L of degree d = all nodes in L of degree dminmin + O(log n/log log n) or less + O(log n/log log n) or less

► TryTry Improve a node in SImprove a node in SHH or S or SLL

► Success:Success: New tree TNew tree Tii► Failure:Failure: Witness for DWitness for DHH = d = dmaxmax – O(log n/log log n) – O(log n/log log n)

and Dand DLL = d = dminmin + O(log n/log log n) + O(log n/log log n)

Page 65: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs

Low Degree WitnessLow Degree WitnessProof:Proof:► Any MST on W, CAny MST on W, C11, .., C, .., Ckk

has (|W| + k – 1) edgeshas (|W| + k – 1) edges

► At most (2|W| + k – 2) At most (2|W| + k – 2) endpoints can be in Wendpoints can be in W

► Average degree of W Average degree of W ·· bb (2|W| + k – 2)/ |W| (2|W| + k – 2)/ |W| cc

Page 66: Augmenting Paths, Witnesses and Improved Approximations for Bounded Degree MSTs