Some Approximation Algorithms for Constructing Combinatorial Structures Fixed in Networks Jianping Li Email: jianping@ynu.edu.cn Department of Mathematics Yunnan University, P.R. China 11 / 31
8 ¹ 1 3 2 The Spanning Tree Packing Problem 5 3 The Single Source Shortest Path Tree Packing Problem 10 4 The Metric Steiner Tree Packing Problem 14 5 The Strongly Connected Spanning Directed Subgraph Packing Problem 18 6 The Path Packing Problem 22 7 26 12 / 31
1 We consider the new following model: a network (simply, a graph or digraph) G = (V,E;w) and a kind material of length L, where the weight function w : E R +, and for each edge e = uv in E, when the weight w(u,v) L holds, the two vertices u and v may be connected by a part of such kind material if requiring, otherwise the vertices u and v can never be connected by such kind material. For a given combinatorial structural property P, we are asked to construct (or find) a structure as a (spanning) subnetwork G from the network G to ensure G maintaining such a property P, the objective is to minimize the number of such kind materials used in such a (spanning) subnetwork G. We shall study the problems with some combinatorial structural property P : a spanning tree (STP), a single 13 / 31
source shortest path tree (SSSPTP), a metric Steiner tree (MSTP), a strongly connected spanning directed subgraph (SCSDSP) and a path (PP), respectively. 14 / 31
2 The Spanning Tree Packing Problem Problem 1. (Spanning tree packing problem, STP) Given a connected graph G = (V,E;w) and a constant L, where w : E R +, we are asked to find a spanning connected subgraph (i.e., spanning tree), denoted by T = (V,E T ), such that all edges in T are packed into some bins with length L. The objective is to minimize the number of bins used. Theorem 1 The STP problem is NP-hard in a strong sense. Proof. We can prove the NP-hardness of the STP problem by transforming any instance of 3-Partition problem to an instance of the STP problem. The Spanning Tree... 15 / 31
Theorem 2 For any ε >, there is no approximation algorithm of performance guarantee 3 2 ε for the STP problem, unless P = N P. Proof. Suppose that there were such an approximation algorithm A of performance guarantee 3 2 ε for the STP problem, then we show how to solve the Partition problem by the algorithm A, i.e., deciding if there is a way to partition n nonnegative numbers a 1, a 2,..., a n into two sets, each adding up to 1 2 Σn i=1 a i. The Spanning Tree... 16 / 31
Our approximation algorithm for the STP problem is described in the following structural form: Algorithm: STP Input: a weighted graph G = (V,E;w) and a constant L; Output: a spanning connected subgraph (i.e., spanning tree) T = (V,E T ) and the minimum number of bins used with length L. Begin Step 1 Utilize the algorithm Prim [11] to compute a minimum spanning tree T = (V,E T ) in G, depending on the weight function w : E R +, where E T = {e i1,e i2,...,e in 1 }; The Spanning Tree... 17 / 31
Step 2 Sort the weights of all edges in the tree T by nondecreasing order, for convenience, we denote w(e i1 ) w(e i2 ) w(e in 1 ); Step 3 Utilize the algorithm Bin-Packing [4] to pack the items with sizes w(e i1 ), w(e i2 ),..., w(e in 1 ) into some bins with length L; Step 4 Output the spanning tree T in the step 1 and the number of bins used in the step 3. End of Algorithm STP The Spanning Tree... 18 / 31
Theorem 3 The algorithm STP is an 3 2 -approximation algorithm to solve the spanning tree packing problem, its computational complexity is O(n 2 ), where n is the order of a graph G. The Spanning Tree... 19 / 31
3 The Single Source Shortest Path Tree Packing Problem Problem 2. (The Single source shortest path tree packing problem, SSSPT) Given a connected graph G = (V,E;w;s) and a constant L, where w : E R + and s is a fixed vertex in G, we are asked to find a single source shortest path tree at root s, denoted by T = (V,E T ;s), such that (1) for each other vertex u in G s, the distance in the graph T is the same as that in the graph G, i.e., d T (s,u) = d G (s,u); (2) all edges in T are packed into some bins with lengths L. The objective is to minimize the number of bins used. The Single Source... 110 / 31
Algorithm: Anticircuit Begin Step 1 Set V s = {s}, λ(s) = 0 and A s = /0. Step 2 While (V s V and Φ(V s ) /0) do For each edge uv Φ(V s ) to satisfy λ(u) + w(u,v) = min{λ(u ) + w(u,v ) u V s, v / V s and u v Φ(V s )}, define λ(v) = λ(u)+w(u,v), then construct an arc (u,v) in A s and put such a vertex v in V s, i.e., A s := A s {(u,v)} and V s := V s {v}, and repeat the step 2. Step 3 If (V s V and Φ(V s ) = /0) then output there is no path from s to some vertex in V V s, stop. Step 4 Output such a digraph D s = (V s,a s ). End of Algorithm Anticircuit The Single Source... 111 / 31
Algorithm: SSSPTP Step 1 For the fixed vertices s in the graph G, utilize the algorithm Anticircuit to construct the auxiliary acyclic digraph D s = (V s,a s ). Step 2 For each vertex u V, choose an arc with minimum weight entering the vertex u in the digraph D s = (V s,a s ), then we find a minimum arborescence T at the root s in D s = (V s,a s ); Step 3 Utilize the algorithm Bin-Packing [4] to pack the items with sizes w(e i1 ), w(e i2 ),..., w(e in 1 ) of T into some bins with length L; Step 4 Output the spanning tree T OUT according to the minimum arborescence T in the step 2 and the number of bins used in the step 3. End of Algorithm SSSPTP The Single Source... 112 / 31
Theorem 4 The algorithm SSSPTP is an 3 2 -approximation algorithm to solve the single source shortest path tree packing problem, its computational complexity is O(n 2 ), where n is the order of the graph G. The Single Source... 113 / 31
4 The Metric Steiner Tree Packing Problem Problem 3. (The Metric Steiner tree packing problem, MSTP) Given a connected graph G = (V,E;w;S) and a constant L, where w : E R + and a Steiner set S V, we are asked to find a Steiner tree, denoted by T S, such that (1) S V (T S ); (2) all edges in T S are packed into some bins with lengths L. The objective is to minimize the number of bins used. Theorem 5 For any ε > 0, there is no approximation algorithm of performance guarantee 2 ε for the metric Steiner tree packing problem, unless P = N P. The Metric Steiner T... 114 / 31
Now, we design an approximation algorithm to solve the metric Steiner tree packing problem in the following algorithmic structure form. Algorithm: MSTP Begin Step 1 For each edge e = uv in the graph G which satisfies the triangle property, if the weight w(u,v) > L, remove the edge e = uv, and then we still denote the current connected graph as G, otherwise output no solution ; Step 2 For each pair of nonadjacent vertices u and v in the current connected G, we add the edge e = uv into G, its weight w(u,v) is denoted by the length of shortest path to connect u and v in the current graph G; The Metric Steiner T... 115 / 31
Step 3 Utilize the algorithm Steiner [12, 8, 10] to compute a minimum Steiner tree T in current graph G; Step 4 Utilize the algorithm Bin-Packing to pack the items with sizes w(e i1 ), w(e i2 ),..., w(e in 1 ) of T into some bins with length L; Step 5 Output the Steiner tree T OUT and the number of bins used in the step 4. End of Algorithm MSTP For the metric Steiner tree problem, there is an α- approximation algorithm to solve it, for example, α = 2, 1.598, 1.55 are found in [12, 8, 10], respectively. The Metric Steiner T... 116 / 31
Utilizing the algorithm MSTP, we obtain the following result for the MSTP problem. Theorem 6 The algorithm MSTP is an 2αapproximation algorithm to solve the metric Steiner tree packing problem (MSTP), its computational complexity is max{ f (n),g(n)}, where n is the order of a graph G, α is the performance guarantee of an approximation algorithm [12, 8, 10] for the metric Steiner tree problem with the computational complexity f (n) and g(n) is the computational complexity for the Bin-Packing problem. Conjecture The algorithm MSTP would be an αβapproximation algorithm to solve the metric Steiner tree packing problem (MSTP), where α is the performance guarantee of an approximation algorithm for the metric Steiner tree problem and β is the performance guarantee of an approximation algorithm for the Bin-Packing problem. The Metric Steiner T... 117 / 31
5 The Strongly Connected Spanning Directed Subgraph Packing Problem Problem 4. (Strongly connected spanning directed subgraph packing problem, SCSDS) Given a strongly connected digraph D = (V, A; w) and a constant L, where w : A R +, we are asked to find a strongly spanning connected directed subgraph, denoted by D, all arcs in D are packed into some bins with lengths L. The objective is to minimize the number of bins used. Theorem 7 For any ε > 0, there is no approximation algorithm of performance guarantee 2 ε for the SCSDSP problem, unless P = N P. The Strongly Conne... 118 / 31
Now, we design an approximation algorithm to solve the SCSDSP problem in the following algorithmic structure form. Algorithm: SCSDSP Begin Step 1 For each arc e = (u,v) in the digraph D, if the weight w(u,v) > L, remove the arc e = (u,v), and then we still denote the current digraph as D which is still strongly connected digraph, otherwise output no solution ; Step 2 Choose any vertex of D as the root v 1 ; Step 3 Utilize the algorithm Arborescence [3, 5] to compute a minimum arborescence D 1 = (V,A 1 ) as the root v 1 in the current digraph D; The Strongly Conne... 119 / 31
Step 4 Utilize the algorithm Arborescence [3, 5] to compute a minimum reverse-arborescence D 2 = (V,A 2 ) as the root v 1 in the current digraph D; Step 5 Utilize the algorithm Bin-Packing to pack the items with sizes w(e i1 ), w(e i2 ),..., w(e ik ) of the strongly connected spanning directed subgraph D 1 D 2 into some bins with length L; Step 6 Output the strongly connected spanning directed subgraph D OUT = D 1 D 2 and the number of bins used in the step 5. End of Algorithm SCSDSP The Strongly Conne... 120 / 31
Utilizing the algorithm SCSDSP, we obtain the following result for the SCSDSP problem. Theorem 8 The algorithm SCSDSP is an 4- approximation algorithm to solve the SCSDSP problem, its computational complexity is max{ f (n), g(n)}, where n is the order of a graph G, f (n) is the computational complexity for the minimum arborescence problem [3, 5] and g(n) is the computational complexity for the Bin-Packing problem. The Strongly Conne... 121 / 31
6 The Path Packing Problem Problem 5. (Path packing problem, PP) Given a connected graph D = (V,E;w;s,t) and a constant L, where w : E R +, we are asked to find a path from the vertex s to the vertex t, denoted by P s,t, such that all edges in P s,t are packed into some bins with lengths L. The objective is to minimize the number of bins used. Our strategy to design an approximation algorithm is as follows: (1) find a shortest path P s,t from the vertex s to the vertex t, where E(P s,t ) = {e i1,e i2,...,e ik }; (2) utilize the algorithm Bin-Packing to pack the items with sizes w(e i1 ), w(e i2 ),..., w(e ik ) of P s,t into some bins with length L. The Path Packing P... 122 / 31
Our approximation algorithm for the STP problem in the following structural form: Algorithm: PP Input: a weighted graph G = (V,E;w;s,t) and a constant L; Output: a path P s,t from s to t and the minimum number of bins used with lengths L. Begin Step 1 Remove all edges in G with the weights greater than L, and we may assume the current graph G is still connected, otherwise output no solution ; Step 2 Utilize the algorithm Bellman-Ford algorithm [1, 6] to compute a shortest path P s,t from s to t, depending on the weight function w : E R +, where E(P s,t ) = {e i1,e i2,...,e ik }; The Path Packing P... 123 / 31
Step 3 Utilize the algorithm Bin-Packing to pack the items with sizes w(e i1 ), w(e i2 ),..., w(e ik ) into some bins with length L; Step 4 Output the path P s,t in the step 2 and the number of bins used in the step 3. End of Algorithm PP The Path Packing P... 124 / 31
By the algorithm PP, we obtain the following result. Theorem 9 The algorithm PP is an 2-approximation algorithm to solve the shortest path packing problem, its running complexity is O(n 2 ), where n is the order of the graph G, and the algorithm PP is tight. The Path Packing P... 125 / 31
7 We obtain the following main results: (1) for the property of spanning tree in the network G, there is no approximation algorithm of performance guarantee 2 3 ε for the problem, where ε > 0, and we can present an 2 3 -approximation algorithm to solve it; (2) for the property of a single source shortest path tree in the network G, there is no approximation algorithm of performance guarantee 3 2 ε for the problem, where ε > 0, and we can present an 3 2-approximation algorithm to solve it; (3) for the property of metric Steiner tree in the network G, there is no approximation algorithm of performance guarantee 2 ε for the problem, where ε > 0, and we can design an 4-approximation algorithm to solve it; 126 / 31
(4) for the property of strongly connected spanning directed subgraph, there is no approximation algorithm of performance guarantee 2 ε for the problem, where ε > 0, and we can design an 4-approximation algorithm to solve it; (3) for the property of a path to connect a vertex s to t in the network G, we design a 2-approximation algorithm to solve it. 127 / 31
References [1] R. Bellman, On a routing problem, Quarterly of Applied Mathematics, 16 (1958), 87-90. 23 [2] C. Berge and A. Ghouila-Houri, Programming, games and transportation networks, New York: John Wiley & Sons, Inc. 1965. [3] Y.J. Chu and Z.H. Liu, On the shortest arborescence of a directed graph, Scientia Sinica, 14 (1965), 1396-1400. 19, 20, 21 [4] E. G. Coffman, M. R. Garey and D. S. Johnson, Approximation Algorithms for Bin Packing: A Survey, in the book Approximation Algorithms for NP- Hard Problems, D. Hochbaum (ed.), PWS Publishing, Boston (1996), 46-93. 8, 12 128 / 31
[5] J. Edmonds, Optimum branchings, Journal of Research National Bureau of Standards Section B, 71 (1967), 233-240. 19, 20, 21 [6] L.R. Ford, Network Flow Theory, The RAND Corporation, Santa Monica, California, 1956, 923-923. 23 [7] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP- Completeness, W.H. Freeman, San Francisco (1979). [8] S. Hougardy and H. J. Prommel, A 1.598 approximation algorithm for the Steiner problem in graphs, Proceedings of ACM-SIAM Symposium on Discrete Algorithms (1999), 448-453. 16, 17 [9] C.H. Papadimitriou and K. Steiglitz, Combinatorial Optimization: Algorithms and Complexity, Prince-Hall Inc. 1982. 129 / 31
[10] G. Robins and A. Zelikovsky, Improved Steiner tree approximation in graphs, Proceedings of the eleventh annual ACM-SIAM symposium on Discrete algorithms (2000), 770-779. 16, 17 [11] R.C. Prim, Shortest connection networks and some generalizations, The Bell System Technical Journal 36 (1957), 1389-1401. 7 [12] V.V. Vazirani, Approximation Algorithms, Springer- Verlag (Berlin, Heidelberg and New York), 2001. 16, 17 130 / 31
. Thank You! 131 / 31