Presentation is loading. Please wait.

Presentation is loading. Please wait.

Variations of the Prize- Collecting Steiner Tree Problem Olena Chapovska and Abraham P. Punnen Networks 2006 Reporter: Cheng-Chung Li 2006/08/28.

Similar presentations


Presentation on theme: "Variations of the Prize- Collecting Steiner Tree Problem Olena Chapovska and Abraham P. Punnen Networks 2006 Reporter: Cheng-Chung Li 2006/08/28."— Presentation transcript:

1 Variations of the Prize- Collecting Steiner Tree Problem Olena Chapovska and Abraham P. Punnen Networks 2006 Reporter: Cheng-Chung Li 2006/08/28

2 162 Outline Introduction Polynomial Algorithms A linear Algorithm for P(4) NP-Hard Problems Conclusion

3 163 Introduction to PCSTP Let G be an undirected graph with node set V(G) and edge set E(G) Let F be the family of all trees in G For each edge e  E(G), a nonnegative cost c e is prescribed; for each node i  V(G), a nonnegative weight w i is also prescribed Then the prize collecting Steiner tree problem(PCSTP) is to –Minimize –Subject to T  F 12 3 4 PCSTP=10

4 164 About PCSTP PCSTP has applications in the design of fiber-optic networks PCSTP was first considered by Goemans and Williamson in 1995 If w i =M, a large number for all i  V(G), PCSTP reduces to the minimum spanning tree However, PCSTP in general is NP-hard, since the Steiner tree problem is a particular case of it Some people developed polynomial time approximation algorithms to solve PCSTP with guaranteed performance bound

5 165 In This Paper The paper considers seven new variations of the PCSTP. The ith problem P(i), 1  i  7, in this class can be defined as –P(i): Minimize f i (T) –Subject to T  F The objective function of problems P(1) to P(7) can be given as follows: O(m+nlogn) NP-hard

6 166 Related to Other Problems If w i =M, for all i  V(G), P(1), P(2), P(3), and P(4) reduce to the bottleneck spanning tree problem(BSP) Let V*  V(G) be a set of prescribed nodes in G. Choose wi=M for all i  V* and wi=0 for all i  V(G)\V*, P(1), P(2), P(3), and P(4) reduce to the bottleneck Steiner tree problem(BSTP)

7 167 Polynomial Algorithms Let S be a subtree of V(G) and T be a spanning tree of G. A subtree T ’ of T is said to be cover S if S  V(T ’ ). A subtree T ’’ of T that covers S is minimal, if there is no subtree T ’’’ of T that covers S such that V(T ’’’ )  V(T ’’ ) Let T 0 be a tree in G containing at least one edge and T* be a minimal spanning tree of G. Let T ^ be a minimal subtree of T* that covers V(T 0 ). Note that V(T 0 )  V(T ^ ) and V(T ^ )\V(T 0 ) may or may not be empty

8 168 Polynomial Algorithms Lemma 1: max e  T0 {c e }  max e  T^ {c e } –Choose an edge e d  T^ such that c ed = max e  T^ {c e }, if e d  T 0, the result follows immediately. –Otherwise, let P[a,b](respectively,  [a,b]) be the unique path of node a, b in T^(respectively, T 0 ). There exists two nodes u and v in V(T 0 ) such that e d  P[u,v] but e d  [u,v], i.e., P[u,v]  [u,v] –So P[u,v]  [u,v] u v

9 169 Polynomial Algorithms Theorem 2: Let T* be a minimum spanning tree of G. Then, there exists an optimal solution to P(i), i=1,2,3,4 which is a subtree of T* –We first prove the case for i=1 –Suppose no subtree of T* is an optimal solution to P(1) and let T 0 be an optimal solution to P(1). Let T ^ be the minimal subtree of T* covering V(T 0 ). By lemma 1, max e  T0 {c e }  max e  T^ {c e } –Because V(T 0 )  V(T ^ ) and w i  0, sum_{i\nin V(T^0)}\geq \sum_{i\nin V(T^0)} –So, f 1 (T ^ )  f 1 (T 0 ) and hence, T ^ is also an optimal solution to P(1). This contradicts the fact that no subtree of T* is an optimal solution to P(1) –Also, V(G)/V(T ^ )  V(G)/V(T 0 ), P(2), P(3), P(4) follows using similar arguments.

10 1610 Greedy Algorithm for P(1) Let T* be a minimum spanning tree of G and t 1 <t 2 < … <t |E| be an ascending arrangement of all distinct edge costs of T* Initially, consider isolated nodes as “ current forest ” and designate it F*; Choose a node with largest weight in T* and designate it as the “ best solution sofar ” Introduce the edges that cost t 1 <t 2 < … <t |E to F*, update F* and the “ best solution sofar ” (if necessary) The process is continued until F* becomes T*

11 1611 The Time Complexity of Algorithm Once T* is given, the greedy algorithm can be implemented in O(nlogn) using appropriate data structures. Thus P(1) can be solved in O(  (m,n)+nlogn), where  (m,n) is the complexity of computing the minimum spanning tree Note that a minimum spanning tree of G can be identified in O(m+nlogn) time, and hence, P(1) can be solved in O(m+nlogn) time. Of course, it is possible to incorporate the above greedy algorithm within the minimum spanning tree computations itself, without explicitly computing a minimum spanning tree first.

12 1612 NP-hard Problems Theorem P(5) and P(7) are NP-hard –Let V ’  V(G). By choosing each nodes in V ’ have weight M, and nodes in V(G)/V ’ have weight 0 –So, an optimal solution to P(5) solves the Steiner tree problem on G and the Steiner tree problem is NP-hard –A similar proof can be given for the case of P(7)

13 1613 NP-hard Problems Theorem P(6) is NP-hard –We consider the PARTITION problem first: Given n numbers a 1,a 2, …,a n, the PARTITION problem is to find a partition S 1,S 2 of {1,2, … n} such that \sum_{j  S 1 }a j =\sum{j  S 2 }a j or declare that no such partition exists –It can be verified that optimal objective funcation value of P(6) on this instance is ½ \sum_{i=1}^{n}a i precisely when the required partition exists –Because PARTITION is NP-hard, P(6) is NP-hard too v1v1 v2v2 vnvn v0v0 a1a1 a2a2 anan

14 1614 NP-hard Problems Theorem P(1) and P(3) are NP-hard for arbitrary node weights 1 1 10 100 -300

15 1615 NP-hard Problems W first consider P(1) and reduce the node-weighted Steiner tree problem (NWSTP) to it. The NWSTP can be defined as follows –Let G ’ be a graph and for each i  G ’ a weight x i is prescribed. Let V ’ be a given subset of V(G ’ ). Then the NWSTP is to find a tree T ’ in G ’ with V ’  V(T ’ ) such that \sum_{i  V(T ’ )\V ’ }x i is minimized. Choose G=G ’ and w i =M for all i  V ’. Set c(e)=1 for all e  E(G) and w i =-x i for each i  V(G)-V ’. It can be verified that an optimal solution to this instance of P(1) will solve NWSTP Using similar arguments, it can be shown that P(3) is NP- hard for arbitrary node weights

16 16 Conclusion P(1)~P(4), O(m+nlogn) P(5)~P(7), NP-hard In problems P(1) to P(7) if trees are replaced by s- t paths of G, the resulting problems are NP-hard. It follows from the fact that by choosing wi=M for all i  V(G) where M is a large number, optimal s-t paths are forced to include all nodes of G and hence solving the Hamiltonian path problem on G


Download ppt "Variations of the Prize- Collecting Steiner Tree Problem Olena Chapovska and Abraham P. Punnen Networks 2006 Reporter: Cheng-Chung Li 2006/08/28."

Similar presentations


Ads by Google