27
A 2-Approximation algorithm for finding an optimum 3-Vertex-Connected Spanning Subgraph

A 2-Approximation algorithm for finding an optimum 3-Vertex-Connected Spanning Subgraph

  • View
    223

  • Download
    0

Embed Size (px)

Citation preview

A 2-Approximation algorithm for finding an optimum

3-Vertex-Connected Spanning Subgraph

The problem

• Having sites, the problem is to build roads between them, so you'll be able to travel from each city to the other.

• You have to build the roads in a way that even if sites are destroyed, the other cities will be still connected.

• You’ll need to build it as cheap as possible when the cost of each road (if possible to build) is known.

N

1k

Definitions

• Graph , Directed graph• degree of v• Spanning subgraph of graph• Weighted Graph• Weight of an edge set

( ) ( ) ( )G G GN v and d v N v

EeewEW :)()(

( , )G V E

G

Definitions cont.

• A graph is connected if for any two vertices of there is a path connecting them.

• A subset is a vertex cut of if is disconnected.

• If then is called a k-cut

• A side of a cut is the vertex set of a connected component of .

C V

GG

G \G C

C k C

C\G C

• Graph is k-vertex-connected if either it is a complete graph of vertices or if it has at least vertices and contains no with .

• Alternatively it can be said that is k-vertex-connected graph if for every set of vertices , and G\V’ is connected.

• Connectivity of G, defined to be the maximum k, for which G is k-connected.

V V 1V k

Definitions cont.

( )G

( , )G V Ek

1k h cut h k

G

• k-connected subgraph problem is an NP-hard.

• This is our motivation to find approximation algorithms.

• Approximation Algorithm is called if it is a polynomial time algorithm and produces a solution of weight no more than times the weight of the optimum solution.

- approximation

Known Approximation

• Ravi and Williamson [1997]:

• For an arbitrary k, it achieves where

For k=2 achieves 3-approximation k=3 achieves -approximation

k=4 achieves -approximation

1 1 1( ) 1 .. log

2 3H k k

k

233164

2 ( )H k approximation

More results

Improved results for particular cases:

• In case of edge weights satisfying triangle inequality, Kuller-Raghavachari [1996] suggested an –approximation, algorithm for an arbitrary k.

2( 1)2 kn

More result (cont.)

• Cheyiyan-Thurimella [1996]: -approximation for finding minimum size k-connected spanning subgraph, for an arbitrary k, meaning finding the k-connected spanning subgraph with minimal number of edges.

11 k

• Kuller-Raghavachari [1996]: achieves a for .

• Result was improved by Penn and Shasha-Krupnik [1997] to for .

• Penn and Shasha-Krupnik [1997] also introduced a for .

12 n approximation

More result cont.

2k

2 approximation2k

3 approximation 3k

• Today we show an improved result: a 2-approximation algorithm for finding a minimim weight 3-connected subgraph, introduced by Auletta, Dinitz ,Nutov and Parente [1999]

• Path are internally disjoint paths if no two of them have an internal vertex in common.

• Menger’s therom: For any graph G and its vertices s,t holds: The minimal size if a cut separating t from s equals the maximum number of vertex-disjoint paths between s and t.

More Definitions

Definition:

Graph is k-out-connected from vertex r if there exists k internally vertex-disjoint simple paths to every other vertex

• If there are 2 vertices with k internally disjoint simple paths between them, then for every implies . h cut h k

( , )G V E

Corollary:

A graph is a k-out-connected from vertex r if it has no with separating r from some other vertex

( , )G V Eh cut h k

• Conclusion: In k-out-connected graph from vertex r, any with , if exists, must contain .

h cut h kr

• What is the motivation to use k-out-connected graph algorithm for the problem of finding minimum weight k-connected subgraph?

• There is known algorithm by Frank and Tardos [1996] that find in a directed graph a minimum weight k-out-connected subdigraph in polynomial time.

Lemma 1:

Let be a k-out-connected graph from , and

let be an of with .

Then and for any side holds:

. ( ) 1h k S N r

h cutG r

C G h kr C \S G C

• Corollary:Also exists that for the above graph

( )1

2

d rh k

• Corollary:Let be a k-out-connected graph from a vertex r of degree . Then is .In particular if then is .

• Conclusion: For such a vertex r (of degree k) k-connected graph and k-out-connected graph from r are equal.

2 1k connected kG

G 2,3k G

k connected

r

• Graph G=(V,E) is given and its weight function, .

• D(G)= weight digraph obtained from (G,w):

Each undirected edge is replaced by 2 directed edge with same weight as the undirected edge.U(D) underlying graph of digraph D, where for each directed edge replace it by undirected edge .

( )( ), D GD G w

( , ), ,u v u v V

( , ), ,u v u v V

w

( , ), ( , )u v v u

( , )u v

• If is then it is from .

• If is undirected graph and from then is also a from .

G

k connectedk out connected r

G

k out connected r ( )D G

k out connected r

• Theorem [Halin]: Any minimally graph has a vertex of degree k.

• Corollary: It follows from Halin’s theorem that in any graph , exists a minimum weight subgraph with a vertex of degree . We denotes this vertex by .

k connected Gk connected

*vk

k connected

Out Connected Subgraph Algorithm

• Input: A weighted graph , and an integer k.

• Output: a subgraph of and a vertex such that is k-out-connected from and if exists.

GG

( , )G w ( , )G V E

G rr

( )Gd r k

• Set undefined,

• For every vertex do:(1) Set

(2) Find a minimum weight k-out-connected from r subdigraph ofif such exists.(3) If the degree of r in is k and

then set:

,G r , 2 ( ) 1w M w G r V

( )( )

( )r

w e M if e is incident to rw e

w e otherwise

rD ( , )rD G w

rU D

rw U D w

, ,r rG U D r r w w U D

Remarks:

• The algorithm finds k-out-connected subdigraphs with a minimal outdegree in r.

• From all those subdigraph it chooses the subdigraph with the minimal weight.

• Lemma: For any integer and for any weighted graph G that contains a spanning subgraph which is k-out-connected from a vertex of degree k, the algorithm outputs such a subgraph of weight at most twice the minimal possible.The complexity is .

1k

2 3( )O k n m

• Theorem: For any and any weighted k-connected graph G, algorithm outputs a spanning subgraph of G of weight at most in time where is the weight of the optimal subgraph of

2k

2 1k connected *2w 2 3( )O k n m

Theorem: For OCSA is a 2-approximation algorithm for the minimum weight k-connected subgraph problem with complexity 3 5O mn O n

*wk connected G

2,3k