The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before...
-
Upload
jennifer-duffy -
Category
Documents
-
view
214 -
download
2
Transcript of The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before...
![Page 1: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/1.jpg)
The Primal-Dual Method:
Steiner Forest
![Page 2: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/2.jpg)
Network Design
OPT(I )ALG(I )
¸ ®
a+ bX
i
ai
a+ ba+ b
• Input:
• undirected graph G=(V,E)
• cost function: c:E ! R+
• connectivity requirements
• Output:
• minimum cost subgraph satisfying connectivity
requirements
• Example:
• minimum spanning tree: minimum cost subgraph
connecting all vertices
![Page 3: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/3.jpg)
Steiner Tree
OPT(I )ALG(I )
¸ ®
a+ bX
i
ai
a+ ba+ b
• Input:
• set of terminals T = {t1, …, tk} µ V
• Output:
• minimum cost subgraph connecting T
• NP-complete
• Algorithm:
• define complete graph H on T
• c(ti, tj) = shortest path in G from ti to tj
• find a minimum spanning tree F in H
• replace each edge in F by the corresponding path in G
(delete cycles)
![Page 4: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/4.jpg)
Steiner Tree: Analysis
• F* - optimal Steiner tree in G
• duplicate each edge in F* - all degrees are
even
• open up F* into a (Euler) cycle Z
• c(Z) =2c(F*)
• Z can be transformed into a spanning tree
in H:
• for any t,t’ 2 T: cZ(t,t’) ¸ cH(t,t’)
• Approximation factor = 2
![Page 5: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/5.jpg)
Constrained Steiner Forest Problem
Requirement function f: S ! {0,1} 8 S ½ V
f(S) =1 if there is a set Ti split between S and V-
S
f(S) =0 otherwise
Note: f(S)=f(V-S), f is a function on cuts
• Input:
• undirected graph G=(V,E)
• cost function: c:E ! R+
• disjoint sets T1, … ,Tk ½ V
• Output:
• minimum cost subgraph H such that each set
Ti belongs to a connected component of H
S
![Page 6: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/6.jpg)
Examples of Requirement Functions
• Steiner tree: for any cut S separating
terminals, f(S)=1
• shortest path between s and t: for any cut S
separating s and t, f(S)=1
• minimum weight perfect matching:
f(S) =1 iff |S| is odd
(At least one vertex is matched outside S)
![Page 7: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/7.jpg)
δ(S)
S
Linear Programming Formulation
minimizeX
e2E
cexe
subject to:X
eje2±(S)
x(e) ¸ f (S) S ½V
xe ¸ 0
maximizeX
S½V
f (S)yS
subject to:X
Sje2±(S)
yS · ce e2 E
yS ¸ 0
Covering LP Packing
LP
![Page 8: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/8.jpg)
Integrality Gap Example
• Minimum spanning tree: all cuts are covered
• Graph: cycle on n vertices, unit cost edges
• Optimal integral solution: cost is n-1
• Optimal fractional solution:
• for each edge e, x(e)=1/2
• all cuts are covered
• cost is n/2
• Gap is 2-1/n
![Page 9: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/9.jpg)
Primal-Dual Algorithm
• y à 0
• A à ; (x à 0)
• While A is not a feasible solution
• C - set of connected components S 2 (V,A) such
that f(S)=1
• increase yS for all S 2 C until dual constraint for
new e 2 E becomes tight
• A Ã A [ {e}
• Remove unnecessary edges from A
![Page 10: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/10.jpg)
Primal-Dual Algorithm
• y à 0
• A à ; (x à 0)
• While A is not a feasible solution
• C - set of connected components S 2 (V,A) such
that f(S)=1
• increase yS for all S 2 C until dual constraint for
new e 2 E becomes tight
• A Ã A [ {e}
• Remove unnecessary edges from A
A’ – final solution
15
9
5
10
76
40
![Page 11: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/11.jpg)
Pd-demo.ps
Demo of Primal-Dual Algorithm
![Page 12: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/12.jpg)
Analysis (1)
Lemma: The primal solution generated by the
algorithm satisfies the requirement constraints
Proof: The `while’ loop continues till we get a
feasible solution
Lemma: The dual solution generated by the
algorithm is feasible
Proof: Whenever an edge becomes tight, no more
cuts are “packed” into it
![Page 13: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/13.jpg)
Analysis (2)
Why is it important that we delete redundant
edges at the end?
Otherwise, we cannot charge tight primal
edges to a single dual variable (the ball) –
too many such edges!
Goal: charge the increase in primal cost in each
iteration to the increase in dual cost
)X
e2A 0
ce · 2X
S½V
yS
![Page 14: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/14.jpg)
Analysis (3): X
e2A 0
ce · 2¢X
S½V
yS
Since every picked edge is tight,
X
e2A 0
ce =X
e2A 0
0
@X
Sje2±(S)
yS
1
A
Changing order of summation,
X
e2A 0
ce =X
S½V
0
@X
Sje2±(S)\ A 0
yS
1
A =X
S½V
degA 0(S) ¢yS
Need to show X
S½V
degA 0(S) ¢yS · 2¢X
S½V
yS
![Page 15: The Primal-Dual Method: Steiner Forest TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A AA A A A AA A A.](https://reader036.fdocuments.in/reader036/viewer/2022070306/5515e274550346dd6f8b4da5/html5/thumbnails/15.jpg)
Analysis (4): X
S½V
degA 0(S) ¢yS · 2¢X
S½V
yS
consider an iteration in which active balls grew by ¢ . Need to show:
¢ £
ÃX
S½V
degA 0(S)¢
!
· 2¢ £ (# of active sets)
that is, ÃX
S½V
degA 0(S)
!
· 2£ (# of active sets)
A0 is a forest and each active set has non-zero degree.
in a tree, average degree · 2 !!