A Novel QoS Provisioning Algorithm for Optimal Multicast Routing in WMNs

: The problem of optimal multicast routing in Wireless Mess Networks (WMNs) with Quality-of-Service (QoS) provisioning, which is Non-Deterministic Polynomial (NP)-complete, is studied in this paper. The existing algorithms are not very efﬁcient or effective. In order to ﬁnd an approximation optimal solution for WMNs in feasible time from source to the set of destination nodes, combining the previous deterministic algorithm with the well-known Minimum Path Cost Heuristic (MPH) algorithm, a novel multicast heuristic approximation (NMHA) algorithm with QoS provisioning is proposed in this paper to deal with it. The theoretical validations for the proposed algorithm are presented to show its performance and efﬁciency. After that, the random static networks with different destination nodes are evaluated. Simulations in these networks show that the proposed algorithm can achieve the approximate optimal solution with the approximation factor of 2(1 + ε )(1 ´ 1/ q ) and the time complexity of O( qmn 2 τ K ´ 1 ).


Introduction
In a relatively short period of time, the Internet has become a critical information delivery infrastructure for global commerce and multimedia [1].Over the last decade, multicast routing trees for efficient one-to-many communications applications (e.g., web broadcasting, video teleconferencing, Voice over Internet Protocol (VOIP), and High Definition Television (HDTV) have emerged on the Internet in WMNs [2].Considering different quality-of-service (QoS) provisioning, one of the solutions is the minimal-cost multicast routing.This presents the problem of finding a tree in a graph from the source to a subset of vertices called terminals such that the total edge cost is minimal.Nevertheless, these days, more and more practical problems, including Very Large Scale Integration (VLSI) layout, network design, etc., can be modeled as multicast routing tree subject to multiple QoS constraints.
The challenge of multicast routing subject to multiple QoS constraints is usually known as the multiply constrained multicast routing (MCMR) problem.To the best of our knowledge, finding the minimal-cost multicast routing tree (or a Steiner tree) is Non-Deterministic Polynomial (NP)-hard [3].In that way, it is also NP-hard to find the minimal-cost multicast routing tree subject to multiple QoS constrains.On one hand, there has been much work involved in deterministic algorithms [4], such as the genetic algorithm and the ant colony algorithm, which could finally find optimal solutions for this problem, while the time complexity grows exponentially with the increase of network nodes.On the other hand, there also has been much work involved in designing heuristic solutions for this problem [5][6][7][8][9][10][11][12][13], and they can find multicast trees close to the optimal multicast tree in feasible time, which is more suitable for network multicast use, due to the computing and processing performance of network nodes.
Recently, it seems that much work has been turned to focus on approximation algorithms to deal with the multiply constrained multicast routing (MCMR) problem.The authors did research on the Steiner tree problem at the earliest, then put forward the MPH algorithm to deal with it [14].Based on Yuan's study [15], Xue et al. proposed various polynomial time algorithms for the multiply constrained optimal paths (MCOP) problem [16,17].Feng and Korkmaz introduced a novel idea to show how a heuristic method can be used to boost the average performance of an approximation algorithm [18].Szymanski presented a Constrained Multicast-Max-Flow-Min-Cost algorithm to maximize the throughput of a multicast tree using network coding, subjected to routing cost constraints [19].At the same time, the authors did research on the optimal constrained path routing in WMNs in the previous paper [20]; following that, the Fast Minimum Path Cost Heuristic (FMPH) algorithm was put forward to deal with the MCMR problem in WMNs.Recently, Athanasios Vasilakos and his co-authors proposed the cross-layer protocol to decrease the delay [21][22][23][24][25] and devised a novel energy-saving algorithm.Alasaad and his co-authors argued for a ring-based multicast routing topology with support from infrastructure nodes for group communications in WMNs [26], and then developed heuristic algorithms to deal with it.Other excellent research on QoS multicast in wireless networks could be found in this literature [27][28][29][30][31][32][33][34][35].
Rather than the previous research model, in this paper, multiply constrained optimal multicast routing (MCOMR) is investigated from the perspective of approximation.As far as we know, Xue's algorithm is currently the fastest for path establishment in unicast routing with multiple QoS constraints [16], and the MPH algorithm is efficient for multicast routing [14].However, the solution to the MCOMR problem is rarely found or is found to be inefficient in the existing literature.In this study, a novel approximation algorithm is proposed to achieve a more excellent solution.The main contributions made in this paper are summarized as follows:

‚
We present a model for the MCOMR problem from the approximate perspective.This model allows multiple QoS metrics to be considered in WMNs with guaranteed multicast service performance.

‚
We formulate the problem of the MCOMR problem and develop a novel multicast heuristic approximation (NMHA) algorithm based on the technique of auxiliary graph construction, scaling, rounding and the MPH algorithm to solve the problem.

‚
We analyze the theoretical properties of the proposed algorithm.Analytical results show that our algorithm is effective and achieves lower complexity and the approximate optimal solution for WMNs.

‚
We conduct experiments to evaluate the performance of the proposed algorithm and compare the algorithm against variations of current best known algorithms.Obtained numerical results indicate that the proposed algorithm is efficient and accurate for multicast service in WMNs.
The rest of this paper is organized as follows: Section 2 formally formulates the problem to be studied, along with notations, and describes the previous algorithms that will be used in later sections.Section 3 presents the approximation algorithm for the optimal multicast routing with multiple QoS constraints and its theoretical analysis.Simulations obtained from special network are reported to verify the algorithm in Section 4. Finally, Section 5 summarizes this paper.

Problem Formulation
A wireless communication network with K QoS constraints can be represented by a connected and undirected graph GpV, E, á W, á L q, where |V| " n is the set of vertices, |E| " m is the set of edges, á W is the set of weights, and á L is the set of constraints.Each edge has KpK ě 2q weights, and á W " tw i pe x qu , w i pe x q ě 0 is the ith weight of an edge pe x P E, 1 ď i ď Kq, a positive constant matrix Future Internet 2016, 8, 38 3 of 14 á L " pL 1 , L 2 , . . ., L K q is the K constraint.Referring to previous related works, the authors have studied the constrained path routing in the literature [20], and then we have the definitions as follows.
Definition 1. MCMR Problem.Consider an undirected graph GpV, E, á W, á L q.Let s P V be the source node and D be the set of destination nodes, where D " td k u Ď V, s R D, k " 1, 2, . . .q. Denote T pV T , E T q " ř e x PT e x as a multicast routing tree from source s to the set of destination nodes w i pe x q, 2 ď i ď as the sum of the ith weight on edges along multicast tree T j .The goal is to find a multicast routing tree T j from s to D, such that w i `Tj ˘ď L i .We say that MCMR is feasible if it has a feasible solution; otherwise, it is infeasible.Definition 2. MCOMR Problem.It is a feasible multicast routing tree for T j , where w i `Tj ˘ď θ j L i for all θ j , L i P p0, 1s.The entire feasible multicast routing tree in GpV, E, á W, á L q is denoted as T j ( .The goal is to find an optimal multicast routing T ˚among feasible trees T j ( in G and θ ˚" min θ j ( such that w i pT ˚q ď θ ˚Li .We call θ ˚the optimal value to MCMR and T ˚an optimal multicast routing tree or an optimal solution to MCMR.Definition 3. (a-Approximation algorithm).Let a ě 1 be a constant.If the algorithm generates a multicast routing tree T opt from s to D such that w i `Topt ˘ď aθ ˚Li , 2 ď i ď K, then T opt is called an a-Approximation to MCOMR, and it is called an a-Approximation algorithm.Table 1 lists frequently used notations.the Steiner tree with j destination nodes in the set D V T , E T all the nodes and the edges of the multicast trees T, respectively T ˚, T opt the optimal and the approximate optimal multicast routing tree, respectively w ´dk , T j´1 ¯the total weights from d k to T j´1 PATH ´dk , T j´1 ¯the short path connected node d k to the T j´1 C i , D i the ith weight of path length from source s to any node u in G K,τ P pu, C i , . . ., C K q all the K weight of path length from source s to any node u in G K,τ

Deterministic Algorithm with Auxiliary Graph
Xue et al. provided an important methodology for finding the approximate optimal path for constrained unicast routing by constructing an auxiliary graph [16].It transforms an undirected graph G to a directed graph G K,τ .Each vertex v P G is associated with p1 `τq K´1 vertices, since each weight has been normalized w i peq {L i .Then, τ " rpn ´1q{εs (ε is the approximation factor) could be regarded as the maximum integer of all constraints in G K,τ .For example, from the source node s to any node u, C i P r0, τs, @2 ď i ď K is used for recording the ith weight of path length, and P pu, C 2 , C i , . . ., C K q for all the K weight of path length.To each undirected edge pu, vq in G, the directed edge in G K,τ is constructed from P pu, C 2 , C i , . . ., C K q to P pv, D 2 , D i , . . ., D k q, where D i " C i `wi pu, vq, @C i , D i P r0, τs.It is clear that the infeasible paths of the latter K ´1 metrics have been filtered.Therefore, an optimal path in G corresponds to an optimal path from P ps, 0, . . ., 0q to Ppd, τ, . . ., τq in G K,τ .
The basic idea behind Xue's algorithm is to replace time with space.As far as we know, Xue's approximation scheme with the time complexity of Opmτ K´1 q is currently the fastest way to calculate a path with multiple QoS constraints.As can be observed from the examples, using Xue's deterministic algorithm with an auxiliary graph, it is feasible and meaningful to seek an effective and efficient algorithm to approximate optimal multicast routing with multiple constraints.

Description of MPH Algorithm
In 1980, Takahashi and Matsuyama put forward the MPH algorithm to help solve the Steiner tree problem [14].The following are its steps: Step 1: Choose any node d 1 from the set D of multicast destination nodes, let j " 1, and initialize the generation of tree T 1 " td 1 u, V T 1 " td 1 u; Step 2: The cost w `dk , T j´1 ˘from d k pk ď qq in D X T j´1 to T j´1 can reach the minimum value by comparing formula (1): By connecting d j to T j´1 through the shortest PATH `dj , T j´1 ˘, the updated tree can get the result of T j " PATH `dj , T j´1 ˘Y T j´1 ; Step 3: Until i ą q, find the Steiner generating tree; otherwise, let j " j `1, then repeat Step 2.

Description of NMHA Algorithm
According to the algorithm analysis above, it is concluded that Xue's deterministic algorithm takes the lead in finding the optimal path for the unicast routing, and the MPH algorithm is fit for multicast routing problem subjected to one QoS constraint.Therefore, combining Xue's deterministic algorithm with the MPH algorithm, the NMHA algorithm is presented in this paper to deal with MCOMR problem.The following are its steps: Step 1: Convert the graph GpV, E, á W, á L q to the new graph G N pV, E, W N , τq based on the technique of the scaling and rounding; Step 2: Convert the graph G N pV, E, W N , τq to the new graph

τq based on the technique of the auxiliary graph construction;
Step 3: Choose any node d 1 from the set D of multicast destination nodes, let j " 1, and initialize the generation of tree T 0 opt " tsu, V T 0 " tsu; Step Step 5: It can reach the minimum value by comparing formula (2): Step 6: Until i ą q, go to Step 7; otherwise, let j " j `1, then repeat Step 5; Step 7: If w N 1 pT opt j´1 q ă τ, find the Steiner generating tree; Else No feasible multicast routing tree.

The Procedure of the NMHA Alogorithm
The detailed procedure of NMHA is presented as shown in Algorithm 1.

Algorithm 1 NMHA algorithm
Input: GpV, E, á W, á L q, the source node s and the set of destination nodes D, and the approximation ratio ε Output: T opt 1.For each e P E in GpV, E, Choose any node d 1 from the set D of multicast destination nodes, initialize generating tree T 0 opt " tsu, V T 0 " tsu; 7.
for every node v P V and C i " 0 to τ, end for 10. for j " 1 : q do 11.
for every adjacent node vpv R T opt j´1 q of node d j , where if Ppv, D 2 , D i , ..., D K q ą Ppd j , C 2 , C i , ..., C K q `w1 pu, vq where

Analysis of the NMHA Algorithm
Theorem 1. NMHA obtains a feasible multicast routing T opt from source s to destination set D, which minimizes max 1ďiďK w N i pT j q among all multicast routing trees in The worst case time complexity of the algorithm is O(qmn 2 τ K´1 ).
Proof of Theorem 1. NMHA consists of two major phases.In the first phase, it calculates the value after scaling and rounding for each edge and initializes the data structures (Lines 1-9), the time complexity of which is constant.In the second phase, it computes the optimal multicast routing tree (Lines 10-25), the time complexity of which is a crucial factor.Since it searches P pv, D 2 , D i , . . ., D K q in lexicographic order for every adjacent node vpv R T opt j´1 q of node d j P T opt j´1 in the NMHA algorithm (Lines 10-19), and guarantees that d i is not more than the largest integer τ, which means that NMHA searches a shortest path in the space of max 1ďiďK w N i pT j q, the NMHA obtains a multicast routing tree T opt from source s to destination set D that minimizes max 1ďiďK w N i pT j q among all multicast routing trees in G N K .During the running of NMHA, G N K have Opnτ k´1 q vertices and Op2mτ k´1 `nτ k´1 q edges, which confirm our observation that the space complexity is fairly large.Moreover, G N K contains a directed Future Internet 2016, 8, 38 6 of 14 edge from P `dj , C 2 , C i , . . ., C K ˘to P pv, D 2 , D i , . . ., D K q with length of w i `dj , v ˘.Therefore, the optimal multicast routing tree T opt found in NMHA minimizes max 1ďiďK w N i pT opt j q among multicast routing trees in G N K .Since each w i peq is a positive real-value for 2 ď i ď K, e P E, the existence of a directed edge from P `dj , C 2 , C i , . . ., C K ˘to P pv, D 2 , D i , . . ., D K q in G N K implies that C i ď D i for 2 ď i ď K, e P E. Therefore, the graph G N K is acyclic.For an acyclic graph, the worst-case time complexity of each running process is (Lines 11-17).As far as we know, the time complexity of the MPH algorithm is O `qn 2 ˘(Lines 18).Therefore, the worst case time complexity of NMHA is O(qmn 2 τ K´1 ).
Theorem 2. To any feasible multicast routing tree T j in G, it is a feasible multicast routing tree in G N K .Proof of Theorem 2. To a feasible multicast routing tree T j in G, it has It implies that ř Since and Then, it has w N i pT j q " According to Equations ( 4), ( 6) and ( 7), it has Hence, any feasible multicast routing tree T j in G is a feasible multicast routing tree in G N K .Theorem 3. The NMHA algorithm finds a 2(1 + ε)(1 ´1/q)-approximation multicast routing tree to MCOMR.
Proof of Theorem 3. To the optimal multicast routing tree T ˚in G, it has This implies that On the other hand, T opt minimizes max 1ďiďK w N i pT j q among all multicast routing trees in G N K and T ˚is a feasible multicast routing tree as mentioned in Theorem 1 and in Theorem 2, respectively, then it has max 1ďiďK w N i pT opt q ď max 1ďiďK w N i pT ˚q (12) Since T opt have |V| ´1 hops at most, and there are |V| " n nodes in G, it implies that According to Equations ( 11), ( 12) and ( 14), it has It implies that Let n´1 β " ε ¨θ˚, ε ą 0, then Takahashi and Matsuyarna have proved in literature [14] that there is corresponding relationship between each j and nodes pair `tj´1 , t j ˘, in which i, j " 2, 3, . . ., q and v 1 , v 2 , . . ., v k are from 1 to k.Let j and number pair " t qpjq´1 , t qpjq ı be one-to-one relationship: According to Equations ( 17) and (18), it has Hence, the NMHA algorithm can finally find a 2p1 `εq p1 ´1{qq-approximation multicast routing tree to MCOMR, and the time complexity of the algorithm is O(qmn 2 τ K´1 ).
Theorem 4. The NMHA algorithm is a sub-optimal algorithm for the MCOMR problem, and the upper bound of approximation ratio is 1 `ε.
Proof of Theorem 4. The authors in the literature [35] have shown that the total MOS problem was equivalent to generalize maximum coverage (GMC) problem, and then proved that for any ε ą 0, it had no p1 ´1{e `εq approximation algorithm unless P = NP.The approximation algorithm NMHA proposed in this paper for the MCOMR problem is the same as that in [35].It has been proven in Theorem 3 that the NMHA algorithm can finally find a 2p1 `εq p1 ´1{qq-approximation multicast routing tree to MCOMR.Thus, the upper bound of approximation ration should be discussed to evaluate the performance of NMHA.To the optimal multicast routing tree T ˚in G, it has According to Equations ( 19) and (20), it has The multicast routing is discussed in this paper, which means that number of destination nodes are more than two, it has Hence, the upper bound of approximation ration of the NMHA algorithm is 1 `ε, and thus the theorem is proven.

The Simulation Experiments
This section shall evaluate both the performance of NMHA and the performance of an experimentally obtained multicast routing tree.To evaluate its efficiency, NMHA is implemented and conducted in a performance study.
An example of the NMHA algorithm is shown in Figure 1. Figure 1a is a simple topology graph G of a static undirected network, in which the nodes in blue are the set of destination nodes D and others are non-multicast destination nodes.The numbers marked between two nodes are linked to cost or distance.The node is originally added to the generating tree T 0 = {A}.In order to find the multicast generating tree with the NMHA algorithm (Lines 10-11), the first node U 1 is selected, and then it is added to the tree A-U 1 in Figure 1b (Lines 12-20) with the total cost of the generating tree 3.In the following phase of the algorithm, destination nodes U 2 and U 3 are added to the tree, respectively, and the multicast destination nodes are sorted as U 1 -U 2 -U 3 .The final multicast tree obtained, whose total cost is 7, is shown in Figure 1c.According to the NMHA algorithm proposed in this paper, the generating graph is found.This section shall evaluate both the performance of NMHA and the performance of an experimentally obtained multicast routing tree.To evaluate its efficiency, NMHA is implemented and conducted in a performance study.
An example of the NMHA algorithm is shown in Figure 1. Figure 1a is a simple topology graph G of a static undirected network, in which the nodes in blue are the set of destination nodes D and others are non-multicast destination nodes.The numbers marked between two nodes are linked to cost or distance.The node is originally added to the generating tree T0 = {A}.In order to find the multicast generating tree with the NMHA algorithm (Lines 10-11), the first node U1 is selected, and then it is added to the tree A-U1 in Figure 1b (Lines 12-20) with the total cost of the generating tree 3.In the following phase of the algorithm, destination nodes U2 and U3 are added to the tree, respectively, and the multicast destination nodes are sorted as U1-U2-U3.The final multicast tree obtained, whose total cost is 7, is shown in Figure 1c.According to the NMHA algorithm proposed in this paper, the generating graph is found.To examine the performance of NMHA, we use the famous Waxman model to generate a large-size Random Network (RNET).The random static network RNET, is used in these experiments, which runs on an Intel Core Duo CPU 1.66 GHz PC with 2 GB memory (Lenovo, Beijing, China).There are 60 nodes and 100 edges in RNET as shown in Figure 2, and other parameters for the network were produced randomly by Waxman model.Each link of RNET has three weights, which correspond to Cost, Delay and Jitter.
(c) are the step 1, step 2 and step 3 of NMHA, respectively.
To examine the performance of NMHA, we use the famous Waxman model to generate a largesize Random Network (RNET).The random static network RNET, is used in these experiments, which runs on an Intel Core Duo CPU 1.66 GHz PC with 2 GB memory (Lenovo, Beijing, China).There are 60 nodes and 100 edges in RNET as shown in Figure 2, and other parameters for the network were produced randomly by Waxman model.Each link of RNET has three weights, which correspond to Cost, Delay and Jitter.All the red points denote the nodes of the network, the black wires denote the links, the green circles denote the source node s (No. 1) and the green stars denote the set of destination nodes D (No. 30, 51 and 55) in the network RNET, which is shown in Figure 3.Comparison with the costs from the source node s to every destination node by Xue's deterministic algorithm, the minimal-cost node (No.All the red points denote the nodes of the network, the black wires denote the links, the green circles denote the source node s (No. 1) and the green stars denote the set of destination nodes D (No. 30, 51 and 55) in the network RNET, which is shown in Figure 3. with the costs from the source node s to every destination node by Xue's deterministic algorithm, the minimal-cost node (No. 30) is selected first.Figure 4 shows the minimal-cost path from source node (No. 1) to destination nodes (No. 30), which is selected first by NMHA in the network.The blue paths in these figures indicate the minimal or the optimal paths from source to destination.Figure 5 illustrates that the following node (No. 55) is added to the tree by NMHA.As expected, the optimal multicast routing tree with three constraints added by the algorithm NMHA can be found after the last node (No. 51) is added to the multicast tree.At last, the optimal multicast routing tree described in Figure 6 shows the corresponding multicast tree from the source node (No. 1) to the set of destination nodes D (No. 30, 51 and 55).
Future Internet 2016, 8, x FOR PEER 10 of 15 source node s to every destination node by Xue's deterministic algorithm, the minimal-cost node (No. 30) is selected first.Figure 4 shows the minimal-cost path from source node (No. 1) to destination nodes (No. 30), which is selected first by NMHA in the network.The blue paths in these figures indicate the minimal or the optimal paths from source to destination.Figure 5 illustrates that the following node (No. 55) is added to the tree by NMHA.As expected, the optimal multicast routing tree with three constraints added by the algorithm NMHA can be found after the last node (No. 51) is added to the multicast tree.At last, the optimal multicast routing tree described in Figure 6 shows the corresponding multicast tree from the source node (No. 1) to the set of destination nodes D (No. 30, 51 and 55).In these simulation experiments, the approximating Steiner tree could be found by the NMHA algorithm presented in this paper.Following that the efficiency of the NMHA algorithm would be verified.Table 2 shows the comparisons of average time consuming for Steiner trees (ATCS) generated via the NMHA to Xue's deterministic algorithm in the simulation experiments, respectively.With the two algorithms, q destination nodes in the RNET network are randomly generated, and then the Steiner trees are obtained and the corresponding times are recorded.The simulations experiments are made to calculate the average values for ten times.In order to evaluate the efficiency of two algorithms, we define the following metrics:  In these simulation experiments, the approximating Steiner tree could be found by the NMHA algorithm presented in this paper.Following that the efficiency of the NMHA algorithm would be verified.Table 2 shows the comparisons of average time consuming for Steiner trees (ATCS) generated via the NMHA to Xue's deterministic algorithm in the simulation experiments, respectively.With the two algorithms, q destination nodes in the RNET network are randomly generated, and then the Steiner trees are obtained and the corresponding times are recorded.The simulations experiments are

NO.
q = 2 q = 35 q = 70 q = 105 q = 140 q = 175 q = 210 q = 245 NMHA NO. q = 270 q = 305 q = 340 q = 375 q = 410 q = 445 q = 496 q = 497 NMHA 3320 The results in Table 3 show that when there are 50 nodes in the random network, no matter how many destination nodes are involved, the AWO obtained from NMHA is always less than that from FMPH.In Table 4, when the total number of nodes in the random network reaches up to 500, the outcome is still the same.It is consistent with our analysis that the NMHA algorithm presented in this paper is looking for the approximate optimal solution in feasible time, while FMPH tends to find the approximate optimal solution as soon as possible according to the time-varying characteristics of wireless networks.From the above results and analysis, it could be concluded that, with certain destination nodes, the proposed NMHA can find a better solution compared with FMPH in feasible time.
Since the approximation factor 2(1 + ε)(1 ´1/q) solely does not illustrate the quality of the proposed algorithm, the approximation ratio will be studied in the following simulations, where we pay attention to the approximation ratio as well as its distribution.The inverse of the approximation ratio (IAR) is adopted to evaluate the performance of NMHA [35].In other words, the ratio equal to 1 means that the solution found is the optimal solution.The ratio of less than 1 means that the solution found is sub-optimal, and the ratio of its objective to the optimal solution is represented by the value of the ratio to the optimal solution, represented by the value of the ratio.The experiments results of approximation ratio for the NMHA algorithm are shown in Figure 7. Different numbers of destination nodes (from 2 to 59) were chosen each time to finish the simulation experiments, which were run to calculate the IAR ten times.From the results, it could be concluded that the lower bound of IAR is close to 0.63, and the upper bound is very close to 1.Over 80% of all scenarios have the approximation factor greater than 0.8, which means that our proposed NMHA algorithm found a solution very close to the optimal multicast routing tree.

Conclusions
This paper discussed the problem of optimal constrained multicast routing in WMNs.A novel approximation algorithm for the MCOMR problem was proposed, based on the technique of auxiliary graph construction, scaling, rounding, and the MPH algorithm.The proposed algorithm

Conclusions
This paper discussed the problem of optimal constrained multicast routing in WMNs.A novel approximation algorithm for the MCOMR problem was proposed, based on the technique of auxiliary graph construction, scaling, rounding, and the MPH algorithm.The proposed algorithm can achieve lower complexity and obtain the approximation optimal multicast routing tree in feasible time.According to the experiments on the special static networks, the proposed NMHA algorithm is capable of finding the optimal (or minimum-cost) multiply constrained optimal multicast routing tree with the approximation factor of 2(1 + ε)(1 ´1/q) and the time complexity of O(qmn 2 τ K´1 ).
As for future research work, we plan to study more excellent solutions and faster algorithms for the MCOMR problem according to the time-varying characteristics of wireless networks based on our current research.Investigation on comparisons of the NMHA with other algorithms is also interesting.

4 :
Calculate the cost w 1 ´dk , T opt j´1 ¯from d k pk ď qq in D X T opt j´1 to T opt j´1 for all nodes d k pk ď qq by Xue's deterministic algorithm; By connecting the node d j to T opt j´1 through the shortest PATH ´dj , T opt j´1 ¯, the updated tree can get the result of T opt j " PATH ´dj , T opt j´1 ¯Y T opt j´1 ; until i ą q, go to Step 4;

Figure 4 .
Figure 4.The No. 30 node connected to the multicast tree.

Figure 5 .
Figure 5.The No. 55 node connected to the multicast tree.

Figure 4 .
Figure 4.The No. 30 node connected to the multicast tree.

Figure 4 .
Figure 4.The No. 30 node connected to the multicast tree.

Figure 5 .
Figure 5.The No. 55 node connected to the multicast tree.

Figure 6 .
Figure 6.The No. 51 node connected to the multicast tree.

Figure 7 .
Figure 7. Experiment analysis of the approximation ratio.

Figure 7 .
Figure 7. Experiment analysis of the approximation ratio.