Improved steiner tree approximation in graphs soda 2000 l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 15

Improved Steiner Tree Approximation in Graphs SODA 2000 PowerPoint PPT Presentation


  • 172 Views
  • Uploaded on
  • Presentation posted in: General

Improved Steiner Tree Approximation in Graphs SODA 2000. Gabriel Robins (University of Virginia) Alex Zelikovsky (Georgia State University). Overview. Steiner Tree Problem Results: Approximation Ratios general graphs quasi-bipartite graphs graphs with edge-weights 1 & 2

Download Presentation

Improved Steiner Tree Approximation in Graphs SODA 2000

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Improved steiner tree approximation in graphs soda 2000 l.jpg

Improved Steiner Tree Approximation in GraphsSODA 2000

Gabriel Robins (University of Virginia)

Alex Zelikovsky (Georgia State University)


Overview l.jpg

Overview

  • Steiner Tree Problem

  • Results: Approximation Ratios

    • general graphs

    • quasi-bipartite graphs

    • graphs with edge-weights 1 & 2

  • Terminal-Spanning trees = 2-approximation

  • Full Steiner Components: Gain & Loss

  • k-restricted Steiner Trees

  • Loss-Contracting Algorithm

  • Derivation of Approximation Ratios

  • Open Questions


Steiner tree problem l.jpg

Euclidean metric

Steiner Point

Cost = 2

1

1

Cost = 3

Terminals

1

1

1

Rectilinear metric

Cost = 6

Cost = 4

1

1

1

1

1

1

1

1

1

1

Steiner Tree Problem

Given: A set S of points in the plane = terminals

Find:Minimum-cost tree spanning S = minimum Steiner tree


Steiner tree problem in graphs l.jpg

Approximation Ratio = sup

achieved cost

optimal cost

Steiner Tree Problem in Graphs

Given: Weighted graph G=(V,E,cost) and terminals S  V

Find:Minimum-cost tree T within G spanning S

Complexity: Max SNP-hard [Bern & Plassmann, 1989]

even in complete graphs with edge costs 1 & 2

GeometricSTP NP-hard [Garey & Johnson, 1977]

but has PTAS [Arora, 1996]


Approximation ratios in graphs l.jpg

Approximation Ratios in Graphs

2-approximation [3 independent papers, 1979-81]

Last decade of the second millennium:

11/6 = 1.84 [Zelikovsky]

16/9 = 1.78 [Berman & Ramayer]

PTAS with the limit ratios:

1.73 [Borchers & Du]

1+ln2 = 1.69 [Zelikovsky]

5/3 = 1.67 [Promel & Steger]

1.64 [Karpinski & Zelikovsky]

1.59 [Hougardy & Promel]

This paper:

1.55 = 1 + ln3 / 2

Cannot be approximated better than 1.004


Approximation in quasi bipartite graphs l.jpg

Steiner points = P

Terminals = S

Steiner tree

Approximation in Quasi-Bipartite Graphs

Quasi-bipartite graphs =all Steiner points are pairwise disjoint

Approximation ratios:

1.5 + [Rajagopalan & Vazirani, 1999]

This paper:

1.5 for the Batched 1-Steiner Heuristic [Kahng & Robins, 1992]

1.28 for Loss-Contracting Heuristic, runtime O(S2P)


Approximation in complete graphs with edge costs 1 2 l.jpg

Steiner tree

Approximation in Complete Graphs with Edge Costs 1 & 2

Approximation ratios:

1.333 Rayward-Smith Heuristic [Bern & Plassmann, 1989]

1.295 using Lovasz’ algorithm for parity matroid problem

[Furer, Berman & Zelikovsky, TR 1997]

This paper:

1.279 + PTAS of k-restricted Loss-Contracting Heuristics


Terminal spanning trees l.jpg

Terminal-Spanning Trees

Terminal-spanning tree = Steiner tree without Steiner points

Minimum terminal-spanning tree = minimum spanning tree

=> efficient greedy algorithm in any metric space

Theorem: MST-heuristic is a 2-approximation

Proof: MST<Shortcut TourTour = 2 • OPTIMUM


Full steiner trees gain l.jpg

T

K

Full Steiner Trees: Gain

  • Full Steiner Tree = all terminals are leaves

  • Any Steiner tree = union of full components (FC)

  • Gain of a full component K, gainT(K) = cost(T) - mst(T+K)


Full steiner trees loss l.jpg

FC K

Loss(K)

C[K]

FC K

Full Steiner Trees: Loss

  • Loss of FC K = cost of connection Steiner points to terminals

  • Loss-contracted FC C[K] = K with contracted loss


K restricted steiner trees l.jpg

k-Restricted Steiner Trees

k-restricted Steiner tree = any FC has  k terminals

optk = Cost(optimal k-restricted Steiner tree)

opt=Cost(optimal Steiner tree)

Fact: optk (1+ 1/log2k) opt [Du et al, 1992]

lossk = Loss(optimal k-restricted Steiner tree)

Fact:loss (K) < 1/2 cost(K)


Loss contracting algorithm l.jpg

mst

mst

gain(K1)

gain(K1)

gain(K2)

loss(K1)

gain(K3)

gain(K2)

reduction

of T cost

reduction

MST(H)

gain(K4)

loss(K2)

gain(K3)

loss(K4)

loss(K3)

loss(K3)

gain(K4)

loss(K2)

loss(K4)

loss(K1)

opt

opt

Loss-Contracting Algorithm

Input: weighted complete graph G

terminal node set S

integer k

Output: k-restricted Steiner tree spanning S

Algorithm:

T = MST(S)

H = MST(S)

Repeat forever

Find k-restricted FC K maximizing

r = gainT(K) / loss(K)

If r  0 then exit repeat

H = H + K

T = MST(T + C[K])

Output MST(H)


Approximation ratio l.jpg

mst - optk

Approx  optk + lossk ln (1+ )

lossk

Approximation Ratio

Theorem: Loss-Contracting Algorithm output tree

Proof idea:

New Lower Bound

Let H = Steiner tree and gain C[H] (K)  0 for any k-restricted FC K

Then cost(C[H]) = cost(H) - loss(H)  optk

With every iteration, cost(T) decreases by gain(K)+loss(K)

Until cost(T) finally drops below optk

The total loss does not grow too fast

Similar techniques used in [Ravi & Klein, 1993/1+ln 2-approximation]


Derivation of approximation ratios l.jpg

mst - optk

Approx  optk + lossk ln (1+ )

lossk

Quasi-bipartite and complete with edge costs 1 & 2  1.28

mst  2•(optk - lossk) - it is not true for all graphs :-(

Approx  optk + lossk ln ( - 1)

partial derivative by lossk = 0 if x = lossk / (optk - lossk ) is root of 1 + ln x + x = 0

then upper bound is equal 1 + x = 1.279

optk

lossk

Derivation of Approximation Ratios

General graphs  1+ ln3 /2

mst  2•opt

partial derivative by lossk is always positive

lossk 1/2 optk

maximum is for lossk= 1/2 optk


Open questions l.jpg

Open Questions

  • Better upper bound (<1.55)

    • combine Hougardy-Promel approach with LCA

    • speed of improvement 3-4% per year

  • Better lower bound (>1.004)

    • really difficult …

    • thinnest gap = [1.279,1.004]

  • More time-efficient heuristics

    • Tradeoffs between runtime & solution quality

  • Special cases of Steiner problem

    • so far LCA is the first working better for all cases

  • Empirical benchmarking / comparisons


  • Login