About this Journal Submit a Manuscript Table of Contents
Journal of Applied Mathematics
Volumeย 2012ย (2012), Article IDย 394721, 8 pages
http://dx.doi.org/10.1155/2012/394721
Research Article

Polynomial Time Approximation Schemes for the Constrained Minimum Spanning Tree Problem

Department of Computer Science, Taipei Municipal University of Education, No. 1, Ai-Guo West Road, Taipei 10048, Taiwan

Received 28 October 2011; Accepted 18 January 2012

Academic Editor: Rudongย Chen

Copyright ยฉ 2012 Yen Hung Chen. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

Let ๐บ=(๐‘‰,๐ธ) be an undirected graph with a weight function and a cost function on edges. The constrained minimum spanning tree problem is to find a minimum cost spanning tree T in G such that the total weight in T is at most a given bound B. In this paper, we present two polynomial time approximation schemes (PTASs) for the constrained minimum spanning tree problem.

1. Introduction

Motivated by the applications of quality of service (QoS) routing and multicasting, several multiple criteria problems have been studied (see [1โ€“6] and references therein). Marathe et al. [5] studied a class of bicriteria network design problems that are defined as follows. Given an undirected graph ๐บ=(๐‘‰,๐ธ) and two independent minimization criteria with a bound on the first criterion, a generic bicriteria network design problem involves the minimization of the second criterion but satisfies the bound on the first criterion among all possible subgraphs from ๐บ [5]. They considered three different criteria that have total edge cost, diameter, and maximum degree of a graph. The total edge cost of a graph is the sum of the costs of all edges in the subgraph. The diameter of a graph is the maximum distance between any pair of nodes in the subgraph. The degree of a node is the number of nodes adjacent to this node, and the maximum degree of a graph is maximum over the degrees of all nodes in the subgraph. Let ๐บ=(๐‘‰,๐ธ) be an undirected graph and a positive integer ๐ต. Two different nonnegative functions, weight and cost, associate on edges in ๐ธ, respectively. The constrained minimum spanning tree (CMST) problem [7โ€“10] is to find a minimum total cost spanning tree ๐‘‡ in ๐บ such that the total weight in ๐‘‡ is at most ๐ต. Aggarwal et al. [7] showed that the CMST problem is weakly NP-hard. Then Hong et al. [9] gave a pseudopolynomial time algorithm to solve the CMST problem. Moreover, some approximation algorithms have been proposed to solve the CMST problem [5, 8, 10].

Given two positive real numbers ๐›ผ and ๐›ฝ, an (๐›ผ,๐›ฝ)-approximation algorithm for the CMST problem is defined as a polynomial-time algorithm that produces a solution with the total weight at most ๐›ผ times the bound ๐ต and the total cost at most ๐›ฝ times the total cost of optimal solution for the CMST problem. The approximation ratio is denoted by (๐›ผ,๐›ฝ). An (๐›ผ,๐›ฝ)-approximation algorithm for the CMST problem is called the polynomial time approximation scheme (PTAS) that produces a spanning tree with an approximation ratio of (1,1+๐œ€), for any constant ๐œ€>0. For any constant ๐œ€>0, Marathe et al. [5] gave a (1+๐œ€,1+1/๐œ€)-approximation algorithm for the CMST problem. Ravi and Goemans [10] presented a (2,1)-approximation algorithm to solve the CMST problem in ๐‘‚(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|) time and improved the ratio to (1+๐œ€,1), where the time complexity is ๐‘‚(|๐‘‰|๐‘‚(1/๐œ€)(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)) for any constant ๐œ€>0. These algorithms are based on the Lagrangian relaxation. Hassin and Levin [8] employed Ravi and Goemans' [10] algorithm with the matroid intersection strategy [11โ€“13] to design a (1,1+5๐œ€)-approximation algorithm in ๐‘‚((1/๐œ€2)(1/๐œ€)|๐‘‰|3) time for the CMST problem. For other related bicriteria problems, Hassin [14] gave a fully polynomial time approximation scheme (FPTAS) for the restricted shortest path problem. The purpose of this problem is to find a minimum cost shortest path ๐‘ƒ from a source to a destination subject to the constraint that the total weight in ๐‘ƒ is at most ๐ต. Then, Lorenz and Raz [15] gave an improved FPTAS whose time complexity is ๐‘‚(|๐‘‰||๐ธ|loglog|๐‘‰|+(|๐‘‰||๐ธ|)/๐œ€) for the restricted shortest path problem. Further, Xue et al. [16] also designed an FPTAS with improved time complexity to ๐‘‚(|๐‘‰||๐ธ|logloglog|๐‘‰|+(|๐‘‰||๐ธ|)/๐œ–) for the restricted shortest path problem. If the graph is directed acyclic, and Ergun et al. [17] provided an improved FPTAS for the restricted shortest path problem with running time ๐‘‚((|๐‘‰||๐ธ|)/๐œ€). Chen and Xue [18, 19] used a similar method to design PTASs for the ๐‘˜-pair delay constrained minimum cost routing problem and the weight constrained Steiner tree problem in series-parallel graphs. These algorithms are based on the rounding and scaling strategy that is offered by Hassin [14]. In this paper, we present two polynomial time approximation schemes to find (1,1+๐œ€)-approximation ratio for the CMST problem. Applying the second PTAS to Hassin and Levin's algorithm [8], the approximation ratio can be improved to (1,1+4๐œ€) for the CMST problem.

The rest of this paper is organized as follows. In Section 2, we first describe a (1,(1+๐œ€)2)-approximation algorithm for the CMST problem and then improve the approximation ratio to (1,1+๐œ€). Finally, we make a conclusion in Section 3.

2. PTASs for the Constrained Minimum Spanning Tree Problem

In this section, we first clarify a (1,(1+๐œ€)2)-approximation algorithm for the CMST problem. Hassin and Levin [8] first used this algorithm to obtain a (1,2(1+๐œ€)) ratio for the CMST problem. Then they applied the Lagrangian relaxation and matroid intersection methods to improve the ratio to (1,1+5๐œ€) in ๐‘‚((1/๐œ€2)(1/๐œ€)|๐‘‰|3)) time. However, they did not describe the details of this algorithm. Then, we improve this approximation ratio into (1,1+๐œ€). Note that applying our algorithm, the approximation ratio of Hassin and Levin's algorithm [8] can be improved to (1,1+4๐œ€) ratio with the same time complexity. For convenience, we use ๐ถ(๐ป) (resp., ๐‘Š(๐ป)) to denote the sum of the costs (resp., weights) of all edges in any subgraph ๐ป of ๐บ. Let ๐‘‡OPT be the optimal solution of the CMST problem. For any constant ๐œ€>0 and an integer ๐ต, Ravi and Goemans' [10] algorithm, denoted by ๐’œ๐‘…(๐œ€,๐ต), produces a spanning tree ๐‘‡ of the ๐‘Š(๐‘‡) at most (1+๐œ€)๐ต and of the ๐ถ(๐‘‡) at most ๐ถ(๐‘‡OPT). Our algorithm first finds a cost of the lower bound, denoted by LB, and a cost of the upper bound, denoted by UB, for the CMST problem. Then, iteratively shrink this range between LB and UB until UBโ‰ค(1+๐œ€)LB. A trivial lower bound LB can be set to 1, and an upper bound UB can be set to |๐‘‰|โˆ—๐ถmax, in which ๐ถmax is the maximum edge cost in ๐บ. However, the range between the trivial lower bound and upper bound is too large (i.e., not polynomial in input size). We reduce the range by Lorenz and Raz's method [15] such that UB โ‰ค|๐‘‰|โˆ— LB. First, let ๐‘1,๐‘2,โ€ฆ,๐‘๐‘˜ be all the distinct costs of edges in ๐บ. ๐บ๐‘—=(๐‘‰,๐ธ๐‘—) denotes the subgraph of ๐บ(๐‘‰,๐ธ), where ๐ธ๐‘— is the set of edges with costs not greater than ๐‘๐‘—. It is clear that ๐บ๐‘˜=๐บ and ๐บ๐‘—โŠ†๐บ๐‘—+1 for 1โ‰ค๐‘—โ‰ค๐‘˜โˆ’1. For 1โ‰ค๐‘—โ‰ค๐‘˜, we can use Prim's algorithm [20] to find a minimum weight spanning tree ๐‘‡๐‘— in ๐บ๐‘—. Let ๐ฝ be the smallest index ๐‘— such that ๐‘Š(๐‘‡๐‘—) is no more than ๐ต. Then, finding the value ๐‘๐ฝ of a graph ๐บ can be done in ๐‘‚(|๐‘‰|2log|๐‘‰|)time by binary search and Prim's algorithm [20]. Therefore, we have ๐‘๐ฝโ‰ค๐ถ(๐‘‡OPT)โ‰ค|๐‘‰|โˆ—๐‘๐ฝ. Hence, we can let the initial UB be |๐‘‰|โˆ—๐‘๐ฝ and LB be ๐‘๐ฝ. If UBโ‰ค(1+๐œ€)LB, then ๐ถ(๐‘‡๐ฝ)โ‰คUBโ‰ค(1+๐œ€)LBโ‰ค(1+๐œ€)๐ถ(๐‘‡OPT). Otherwise, we first swap the cost (resp., weight) to the weight (resp., cost) for each edge in ๐บ and find a value ๐‘€ between LB and UB. Then, apply algorithm ๐’œ๐‘…(๐œ€,๐‘€) to find a spanning tree ๐‘‡ in ๐บ. If the total weight of ๐‘‡ is no more than ๐ต, let UB=(1+๐œ€)๐‘€; otherwise, let LB=๐‘€. Hence, the range between LB and UB is shrunk. Then, we repeatedly run the algorithm ๐’œ๐‘…(๐œ€,๐‘€) until UBโ‰ค(1+๐œ€)LB. The next lemma shows that we can obtain either a lower bound ๐‘€ or an upper bound (1+๐œ€)๐‘€ for the CMST problem after running ๐’œ๐‘…(๐œ€,๐‘€).

Lemma 2.1. Given an instance of the CMST problem with a constant ๐œ€>0 and an integer ๐’ž, one swaps the cost (resp., weight) to the weight (resp., cost) for each edge and then applies algorithm ๐’œ๐‘…(๐œ€,๐’ž) to find a spanning tree ๐‘‡. If ๐‘Š(๐‘‡)โ‰ค๐ต, then there is an upper bound (1+๐œ€)๐’ž. Otherwise, one can obtain a lower bound ๐’ž.

Proof. For convenience, we use ๐‘‡๐’ž to denote the minimum weight spanning tree of ๐บ with total cost at most ๐’ž. After running the algorithm ๐’œ๐‘…(๐œ€,๐’ž), we have a spanning tree ๐‘‡ with ๐‘Š(๐‘‡)โ‰ค๐‘Š(๐‘‡๐’ž) and ๐’ž(๐‘‡)โ‰ค(1+๐œ€)๐’ž since the costs and weights of all edges are exchanged. Hence, if ๐‘Š(๐‘‡)โ‰ค๐ต, then ๐’ž(๐‘‡OPT)โ‰ค๐’ž(๐‘‡)โ‰ค(1+๐œ€)๐’ž. Otherwise, ๐‘Š(๐‘‡๐’ž)โ‰ฅ๐‘Š(๐‘‡)>๐ต. Then we assume ๐’ž(๐‘‡OPT)<๐ถ for contradiction. Hence, we have ๐‘Š(๐‘‡๐’ž)โ‰ค๐‘Š(๐‘‡OPT). However, ๐‘Š(๐‘‡OPT)โ‰ค๐ต, and we have ๐‘Š(๐‘‡๐’ž)โ‰ค๐ต. Hence, ๐’ž must be less than or equal to ๐ถ(๐‘‡OPT).

For clarification, we describe the (1,(1+๐œ€)2)-approximation algorithm for the CMST problem as follows.

Algorithm PTAS-CMST
Input: A graph ๐บ=(๐‘‰,๐ธ) with a weight function and a cost function on edges, an integer bound ๐ต, and two real numbers ๐œ€>0 and ๐œŒ>0.
Output: A spanning tree ๐‘‡APX of ๐บ subject to ๐‘Š(๐‘‡APX)โ‰ค๐ต. (1)For each edge in E, swap cost to weight and weight to cost, respectively. end for(2)Let an initial upper bound UB=|๐‘‰|โˆ—๐‘๐ฝ and an initial lower bound LB=๐‘๐ฝ. (3)Ifโ€‰โ€‰UBโ‰ค(1+๐œ€)LB,โ€‰โ€‰then let ๐‘‡APX=๐‘‡๐ฝ and return.Else(3.1)Let ๐ฟ=LB and ๐‘ˆ=โŒˆUB/(1+๐œŒ)โŒ‰.(3.2)Repeat the following steps until the condition (1) ๐‘ˆโ‰ค(1+๐œ€)๐ฟ or (2) ๐‘ˆโ‰ค๐ฟ+1 holds. (3.2.1) Let a middle value โˆš๐‘€=๐‘ˆโˆ—๐ฟ. (3.2.2) Use algorithm ๐’œ๐‘…(๐œŒ,๐‘€) to find a spanning tree ๐‘‡. (3.2.3)/* if ๐‘Š(๐‘‡)>๐ต, then we have a lower bound ๐‘€; else we have an upper bound (1+๐œŒ)๐‘€ and ๐ถ(๐‘‡) is less than or equal to this upper bound. โ€‰*/ Ifโ€‰โ€‰๐‘Š(๐‘‡)โ‰ค๐ต,โ€‰โ€‰then let ๐‘ˆ=๐‘€ and ๐‘‡APX=๐‘‡;โ€‰โ€‰else let ๐ฟ=๐‘€.

The approximation ratio of Algorithm PTAS-CMST is shown in the next lemma.

Lemma 2.2. Algorithm PTAS-CMST returns a spanning tree ๐‘‡APX with ๐ถ(๐‘‡APX)โ‰ค(1+๐œ€)(1+๐œŒ)๐ถ(๐‘‡OPT).

Proof. Let the upper bound ๐‘ˆ๐‘–, the middle value ๐‘€๐‘–, and the lower bound ๐ฟ๐‘– be parameters at the beginning of the ๐‘–th iteration of step (3.2) for Algorithm PTAS-CMST. Let ๐‘‡๐‘– denote a spanning tree after running the ๐‘–-th iteration of step (3.2.2). It is clear that ๐ฟ๐‘–โ‰ค๐‘€๐‘–โ‰ค๐‘ˆ๐‘–. Hence, ๐‘ˆ๐‘–+1โ‰ค๐‘ˆ๐‘– and ๐ฟ๐‘–+1โ‰ฅ๐ฟ๐‘–. Moreover, we have ๐ฟ๐‘–+1=โˆš๐‘ˆ๐‘–โˆ—๐ฟ๐‘– and ๐‘ˆ๐‘–+1=๐‘ˆ๐‘– when ๐‘Š(๐‘‡๐‘–)>๐ต. Then, we also have ๐‘ˆ๐‘–+1=โˆš๐‘ˆ๐‘–โˆ—๐ฟ๐‘– and ๐ฟ๐‘–+1=๐ฟ๐‘– when ๐‘Š(๐‘‡๐‘–)โ‰ค๐ต. Further, ๐‘ˆ๐‘–+1/๐ฟ๐‘–+1=๐‘ˆ๐‘–/โˆš๐‘ˆ๐‘–โˆ—๐ฟ๐‘–, or ๐‘ˆ๐‘–+1/๐ฟ๐‘–+1=โˆš๐‘ˆ๐‘–โˆ—๐ฟ๐‘–/๐ฟ๐‘–. Therefore, we have ๐‘ˆ๐‘–+1/๐ฟ๐‘–+1=โˆš๐‘ˆ๐‘–/๐ฟ๐‘–. Note that it successively narrows down the range between the lower bound ๐ฟ and the upper bound ๐‘ˆ after each iteration of step (3.2). After running the ๐‘–th iteration of step (3.2.3), we obtain either a lower bound ๐‘€๐‘– or an upper bound (1+๐œŒ)๐‘€๐‘– by Lemma 2.1. Let ๐‘˜ be the number of iterations of step (3.2). After performing this algorithm, we have either ๐‘ˆ๐‘˜+1โ‰ค(1+๐œ€)๐ฟ๐‘˜+1 or ๐‘ˆ๐‘˜+1โ‰ค๐ฟ๐‘˜+1+1. For the former case, we have ๐ถ๎€ท๐‘‡APX๎€ธโ‰ค(1+๐œŒ)๐‘ˆ๐‘˜+1โ‰ค(1+๐œ€)(1+๐œŒ)๐ฟ๐‘˜+1๎€ท๐‘‡โ‰ค(1+๐œ€)(1+๐œŒ)๐ถOPT๎€ธ.(2.1)For the latter case, we have ๐ถ๎€ท๐‘‡APX๎€ธโ‰ค(1+๐œŒ)๐‘ˆ๐‘˜+1โ‰ค๎€ท๐ฟ(1+๐œŒ)๐‘˜+1๎€ธ๎€ท๐ถ๎€ท๐‘‡+1โ‰ค(1+๐œŒ)OPT๎€ธ๎€ธ.+1(2.2)Let ๐œŒ be ๐œ€, and hence Algorithm PTAS-CMST achieves an approximation ratio of (1,(1+๐œ€)2) for the CMST problem.

Therefore, we have the following theorem.

Theorem 2.3. The CMST problem admits a PTAS. For any constant ๐œ€>0, a (1,(1+๐œ€)2)-approximation algorithm for the CMST problem can be found in polynomial time.

Proof. By Lemma 2.2, Algorithm PTAS-CMST returns a (1,(1+๐œ€)2)-approximation solution for the CMST problem. Next, we analyze the time complexity of Algorithm PTAS-CMST as follows. Let ๐‘˜ be the number of iterations of step (3.2). We also let ๐ฟ1 and ๐‘ˆ1 be the initial lower bound and upper bound, respectively. Since ๐‘ˆ๐‘–+1/๐ฟ๐‘–+1=โˆš๐‘ˆ๐‘–/๐ฟ๐‘–, we have ๐‘ˆ1๐ฟ1,๎‚ต๐‘ˆ2๐ฟ2๎‚ถ=๎‚ต๐‘ˆ1๐ฟ1๎‚ถ1/2,๎‚ต๐‘ˆ3๐ฟ3๎‚ถ=๎‚ต๐‘ˆ2๐ฟ2๎‚ถ1/2=๎‚ต๐‘ˆ1๐ฟ1๎‚ถ(1/2)2,โ‹ฎ๎‚ต๐‘ˆ๐‘˜๐ฟ๐‘˜๎‚ถ=๎‚ต๐‘ˆ๐‘˜โˆ’1๐ฟ๐‘˜โˆ’1๎‚ถ1/2๎‚ต๐‘ˆ=โ‹ฏ=1๐ฟ1๎‚ถ((1/2)๐‘˜โˆ’1).(2.3)Because (๐‘ˆ๐‘˜/๐ฟ๐‘˜)>(1+๐œ€) and ๐‘ˆ1/๐ฟ1โ‰ค(|๐‘‰|/1+๐œŒ)+1, we have ๐‘˜โ‰คlog1/2log(|๐‘‰|+1+๐œŒ)/(1+๐œŒ)(1+๐œ€)+1. Hence, ๐‘˜ is ๐‘‚(loglog|๐‘‰|โˆ’loglog(1+๐œ€)). Then, step (3.2.2) can be done in ๐‘‚(|๐‘‰|๐‘œ(1/๐œŒ)โˆ—(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)) time by Ravi's algorithm [10]. Hence, Algorithm PTAS-CMST is a polynomial time approximation scheme for the CMST problem.

Now, we improve the approximation ratio to (1,1+๐œ€) for the CMST problem. This algorithm is the modification of the one designed in [17] for the restricted shortest path problem.

Algorithm Modify-PTAS-CMST
Input: A graph ๐บ=(๐‘‰,๐ธ) with a weight function and a cost function on edges, an integer bound ๐ต, and two real numbers ๐œ€>0 and 0<๐›พ<1.
Output: A spanning tree ๐‘‡APX of ๐บ subject to ๐‘Š(๐‘‡APX)โ‰ค๐ต. (1)For each edge in ๐ธ, swap cost to weight and weight to cost, respectively. end for(2)Let an initial upper bound UB=|๐‘‰|โˆ—๐‘๐ฝ and an initial lower bound LB=๐‘๐ฝ. (3)IfUBโ‰ค(1+๐œ€)LB,then let ๐‘‡APX=๐‘‡๐ฝ and return. Else(3.1)Let ๐ฟ=LB and ๐‘ˆ=UB. (3.2) Repeat the following steps until the condition (1) ๐‘ˆโ‰ค(1+๐œ€)๐ฟ or (2) ๐‘ˆโ‰ค๐ฟ+1 holds. (3.2.1) Let a real number ๐œŒ=(๐‘ˆ/๐ฟ)๐›พโˆ’1 and a middle value โˆš๐‘€=๐‘ˆโˆ—๐ฟ/(1+๐œŒ). (3.2.2) Use algorithm A๐‘…(๐œŒ,๐‘€) to find a spanning tree ๐‘‡.(3.2.3)/* if ๐‘Š(๐‘‡)>๐ต, then we have a lower bound ๐‘€; else we have an upper bound (1+๐œŒ)๐‘€ and ๐ถ(๐‘‡) is less than or equal to this upper bound. โ€‰*/Ifโ€‰โ€‰๐‘Š(๐‘‡)โ‰ค๐ต,โ€‰โ€‰then let ๐‘ˆ=(1+๐œŒ)๐‘€ and ๐‘‡APX=๐‘‡;โ€‰โ€‰else let ๐ฟ=๐‘€.

The approximation ratio of Algorithm Modify-PTAS-CMST is shown in the next lemma.

Lemma 2.4. The spanning tree ๐‘‡APX is a (1, 1+๐œ€)-approximation solution for the CMST problem.

Proof. Let the upper bound ๐‘ˆ๐‘–, the middle value ๐‘€๐‘–, the lower bound ๐ฟ๐‘–, and the real number ๐œŒ๐‘– be parameters at the beginning of the ๐‘–th iteration of step (3.2) for Algorithm Modify-PTAS-CMST. Let ๐‘‡๐‘– denote a spanning tree after running the ๐‘–-th iteration of step (3.2.2). If ๐‘Š(๐‘‡๐‘–)โ‰ค๐ต, we have ๐‘ˆ๐‘–+1=(1+๐œŒ๐‘–)๐‘€๐‘–=(๐‘ˆ๐‘–1+๐›พโˆ—๐ฟ๐‘–1โˆ’๐›พ)1/2 and ๐ฟ๐‘–+1=๐ฟ๐‘–. Otherwise, if ๐‘Š(๐‘‡๐‘–)>๐ต, we have ๐ฟ๐‘–+1=๐‘€๐‘–=(๐‘ˆ๐‘–1โˆ’๐›พโˆ—๐ฟ๐‘–1+๐›พ)1/2 and ๐‘ˆ๐‘–+1=๐‘ˆ๐‘–. Hence, (๐‘ˆ๐‘–+1/๐ฟ๐‘–+1)=(๐‘ˆ๐‘–/๐ฟ๐‘–)((๐›พ+1)/2). Note that it successively narrows down the range between the lower bound ๐ฟ and the upper bound ๐‘ˆ after each iteration of step (3.2) since 0<๐›พ<1. Let ๐‘˜ be the number of iterations of step (3.2). After performing this algorithm, we have either ๐‘ˆ๐‘˜+1โ‰ค(1+๐œ€)๐ฟ๐‘˜+1 or ๐‘ˆ๐‘˜+1โ‰ค๐ฟ๐‘˜+1+1. For the former case, we have ๐ถ๎€ท๐‘‡APX๎€ธโ‰ค๐‘ˆ๐‘˜+1โ‰ค(1+๐œ€)๐ฟ๐‘˜+1๎€ท๐‘‡โ‰ค(1+๐œ€)๐ถOPT๎€ธ.(2.4)For the latter case, we have ๐ถ๎€ท๐‘‡APX๎€ธโ‰ค๐‘ˆ๐‘˜+1โ‰ค๎€ท๐ถ๎€ท๐‘‡OPT๎€ธ๎€ธ+1.(2.5)

Therefore, we have the following theorem.

Theorem 2.5. The CMST problem admits a PTAS. For any constant ๐œ€>0, a (1,1+๐œ€)-approximation algorithm for the CMST problem can be found in polynomial time.

Proof. Clearly, Algorithm Modify-PTAS-CMST returns a (1,1+๐œ€)-approximation solution for the CMST problem by Lemma 2.4. Next, we analyze the time complexity of Algorithm Modify-PTAS-CMST as follows. Let ๐‘˜ be the number of iterations of step (3.2). We also let ๐ฟ1 and ๐‘ˆ1 be the initial lower bound and upper bound, respectively. Then, we have ๐‘ˆ1๐ฟ1,๎‚ต๐‘ˆ2๐ฟ2๎‚ถ=๎‚ต๐‘ˆ1๐ฟ1๎‚ถ(๐›พ+1)/2,๎‚ต๐‘ˆ3๐ฟ3๎‚ถ=๎‚ต๐‘ˆ2๐ฟ2๎‚ถ(๐›พ+1)/2=๎‚ต๐‘ˆ1๐ฟ1๎‚ถ(((๐›พ+1)/2)2),โ‹ฎ๎‚ต๐‘ˆ๐‘˜๐ฟ๐‘˜๎‚ถ=๎‚ต๐‘ˆ๐‘˜โˆ’1๐ฟ๐‘˜โˆ’1๎‚ถ(๐›พ+1)/2๎‚ต๐‘ˆ=โ‹ฏ=1๐ฟ1๎‚ถ(((๐›พ+1)/2)๐‘˜โˆ’1)(2.6)since ๐‘ˆ๐‘–+1/๐ฟ๐‘–+1=(๐‘ˆ๐‘–/๐ฟ๐‘–)(๐›พ+1/2).
Initially, ๐‘ˆ1/๐ฟ1=|๐‘‰|. After running Algorithm Modify-PTAS-CMST, we have (๐‘ˆ๐‘˜+1/๐ฟ๐‘˜+1)โ‰ค(1+๐œ€). Step (3.2.2) can be done in ๐‘‚(|๐‘‰|๐‘œ(1/๐œŒ)โˆ—(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)) time by Ravi's algorithm [10]. Let ๐ผ be the smallest index ๐‘— such that |๐‘‰|๐‘œ(1/๐œŒ๐‘—)>|๐‘‰|, for 1โ‰ค๐‘—โ‰ค๐‘˜. For all 1โ‰ค๐‘—โ‰ค๐ผโˆ’1, the time is โˆ‘๐ผโˆ’1๐‘—=1๐‘‚(|๐‘‰|๐‘œ(1/๐œŒ๐‘—)(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)). It is clear that (๐‘ˆ๐ผ/๐ฟ๐ผ)<21/๐›พ and (๐‘ˆ๐ผโˆ’1/๐ฟ๐ผโˆ’1)โ‰ฅ21/๐›พ. Hence, we have log(๐›พ+1)/2(1/(๐›พโˆ—log2|๐‘‰|))+1โ‰ฅ๐ผโˆ’1>log(๐›พ+1)/2(1/(๐›พโˆ—log2|๐‘‰|)) since (๐‘ˆ๐ผ/๐ฟ๐ผ)=(๐‘ˆ1/๐ฟ1)(((๐›พ+1)/2)๐ผโˆ’1). If ๐ผโˆ’1โ‰ฅ1, the complexity is at most ๐‘‚(|๐‘‰|(1โˆ’log((๐›พ+1)/2)๐›พโˆ’log(๐›พ+1/2)(log2|๐‘‰|))(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)), for all 1โ‰ค๐‘—โ‰ค๐ผโˆ’1. Then, for all ๐ผโ‰ค๐‘—โ‰ค๐‘˜, the time complexity is โˆ‘๐‘˜๐‘—=๐ผ๐‘‚(|๐‘‰|๐‘œ(1/๐œŒ๐‘—)(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)). Since (๐‘ˆ๐‘˜/๐ฟ๐‘˜)>(1+๐œ€) with (๐‘ˆ๐‘˜/๐ฟ๐‘˜)=(๐‘ˆ1/๐ฟ1)(((๐›พ+1)/2)(kโˆ’1)), we have ๐‘˜<log(๐›พ+1)/2(log(1+๐œ€)/log|๐‘‰|)+1. Moreover, (1/๐œŒ๐ผ)โ‰ค(1/(๐œŒ๐ผ+1))โ‰คโ‹ฏโ‰ค(1/๐œŒ๐‘˜). Hence we have the time complexity at most ๐‘‚(|๐‘‰|๐‘œ(1/๐œŒ๐‘˜)(1+log(๐›พ+1)/2log(1+๐œ€)+log(๐›พ+1)/2๐›พ)(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|))for all ๐ผโ‰ค๐‘—โ‰ค๐‘˜. Because ๐›พ is a constant, the total time complexity is at most ๐‘‚((|๐‘‰|loglog|๐‘‰|+|๐‘‰|1/((1+๐œ€)๐›พโˆ’1)loglog(1+๐œ€))(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)), where 1/๐œŒ๐‘˜โ‰ค1/((1+๐œ€)๐›พโˆ’1), 0<๐›พ<1.

Let ๐œ€=1 and ๐›พโ‰ˆ1. Use Algorithm Modify-PTAS-CMST to find a feasible solution for the CMST problem with ratio (1,2). The total time complexity of this algorithm is at most ๐‘‚((|๐‘‰|1/(2๐›พโˆ’1)+|๐‘‰|loglog|๐‘‰|)(|๐ธ|log2|๐‘‰|+|๐‘‰|log3|๐‘‰|)). Then, we can apply Hassin and Levin's [8] algorithm (i.e., the Lagrangian relaxation and matroid intersection), and the approximation ratio can be improved to (1,1+4๐œ€) with the same time complexity of Hassin and Levin's algorithm (i.e., ๐‘‚((1/๐œ€2)(1/๐œ€)|๐‘‰|3)).

3. Conclusion

In this paper, we presented two polynomial time approximation schemes for the CMST problem. Using the second PTAS with the Lagrangian relaxation and matroid intersection, the approximation ratio of Hassin and Levin's algorithm [8] can be improved to the ratio of (1,1+4๐œ€). A open problem left in the paper could involve studying whether there exists a fully polynomial time approximation scheme for the CMST problem.

Acknowledgment

This work was supported in part by the National Science Council of the Republic of China under Contract NSC99-2221-E-133-003.

References

  1. C. H. Chow, โ€œOn multicast path finding algorithms,โ€ in Proceedings of the 10th Annual Joint Conference of the IEEE and Communications Societies (IEEE INFOCOM '91), vol. 3, pp. 1274โ€“1283, Bal Harbour, Fla, USA, 1991.
  2. A. Goel, K. G. Ramakrishnan, D. Kataria, and D. Logothetis, โ€œEfficient computation of delay-sensitive routes from one source to all destinations,โ€ in Proceedings of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 2, pp. 854โ€“858, Anchorage, Alaska, USA, 2001.
  3. B. Kadaba and J. Jaffe, โ€œRouting to multiple destinations in computer networks,โ€ IEEE Transactions on Communications, vol. 31, pp. 343โ€“351, 1983.
  4. V. P. Kompella, J. C. Pasquale, and G. C. Polyzos, โ€œMulticasting for multimedia applications,โ€ IEEE/ACM Transactions on Networking, pp. 286โ€“292, 1993.
  5. M. V. Marathe, R. Ravi, R. Sundaram, S. S. Ravi, D. J. Rosenkrantz, and H. B. Hunt, III, โ€œBicriteria network design problems,โ€ Journal of Algorithms, vol. 28, no. 1, pp. 142โ€“171, 1998. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  6. Z. Wang, โ€œOn the complexity of quality of service routing,โ€ Information Processing Letters, vol. 69, no. 3, pp. 111โ€“114, 1999. View at Publisher ยท View at Google Scholar ยท View at MathSciNet
  7. V. Aggarwal, Y. P. Aneja, and K. P. K. Nair, โ€œMinimal spanning tree subject to a side constraint,โ€ Computers and Operations Research, vol. 9, no. 4, pp. 287โ€“296, 1982.
  8. R. Hassin and A. Levin, โ€œAn efficient polynomial time approximation scheme for the constrained minimum spanning tree problem using matroid intersection,โ€ SIAM Journal on Computing, vol. 33, no. 2, pp. 261โ€“268, 2004. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  9. S.-P. Hong, S.-J. Chung, and B. K. Park, โ€œA fully polynomial bicriteria approximation scheme for the constrained spanning tree problem,โ€ Operations Research Letters, vol. 32, no. 3, pp. 233โ€“239, 2004. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  10. R. Ravi and M. Goemans, โ€œThe constrained minimum spanning tree problem,โ€ in Proceedings of the 5th Scandinavian Workshop on Algorithm Theory, vol. 1097 of Lecture Notes in Computer Science, pp. 66โ€“75, 1996.
  11. P. Chalasani and R. Motwani, โ€œApproximating capacitated routing and delivery problems,โ€ SIAM Journal on Computing, vol. 28, no. 6, pp. 2133โ€“2149, 1999. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  12. W. J. Cook, W. H. Cunningham, W. R. Pulleyblank, and A. Schrijver, Combinatorial optimization, Wiley-Interscience Series in Discrete Mathematics and Optimization, John Wiley & Sons, New York, NY, USA, 1998, A Wiley-Interscience Publication.
  13. E. L. Lawler, Combinatorial Optimization: Networks and Matroids, Holt, New York, NY, USA, 1976.
  14. R. Hassin, โ€œApproximation schemes for the restricted shortest path problem,โ€ Mathematics of Operations Research, vol. 17, no. 1, pp. 36โ€“42, 1992. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH
  15. D. H. Lorenz and D. Raz, โ€œA simple efficient approximation scheme for the restricted shortest path problem,โ€ Operations Research Letters, vol. 28, no. 5, pp. 213โ€“219, 2001. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  16. G. Xue, W. Zhang, J. Tang, and K. Thulasiraman, โ€œPolynomial time approximation algorithms for multi-constrained QoS routing,โ€ IEEE/ACM Transactions on Networking, vol. 16, pp. 656โ€“669, 2008.
  17. F. Ergun, R. Sinha, and L. Zhang, โ€œAn improved FPTAS for restricted shortest path,โ€ Information Processing Letters, vol. 83, no. 5, pp. 287โ€“291, 2002. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  18. G. Chen and G. Xue, โ€œK-pair delay constrained minimum cost routing in undirected networks,โ€ in Proceedings of the Twelfth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA '01), pp. 230โ€“231, SIAM, Washington, DC, USA,, 2001.
  19. G. Chen and G. Xue, โ€œA PTAS for weight constrained Steiner trees in series-parallel graphs,โ€ Theoretical Computer Science, vol. 304, no. 1–3, pp. 237โ€“247, 2003. View at Publisher ยท View at Google Scholar ยท View at Zentralblatt MATH ยท View at MathSciNet
  20. T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithms, MIT Press, Cambridge, Mass, USA, 2nd edition, 2001.