15
The Primal-Dual Method: Steiner Forest

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

Embed Size (px)

Citation preview

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

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

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

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

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

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

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

δ(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

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

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

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

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

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

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

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

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 !!