Mat-2.108 Independent esearch Projects in Applied Mathematics Optimal Multicast outing in Ad Hoc Networks Juha Leino 47032J Juha.Leino@hut.fi 1st December 2002
Contents 1 Introduction 2 2 Optimal Multicasting in Ad Hoc Networks 3 2.1 Problem Description........................ 3 2.2 Linear Programming Formulation................. 4 2.3 Cutting Plane Algorithm...................... 5 2.4 Separating Inequalities....................... 7 3 Computational esults 8 4 Further Work 10 5 Conclusions 12 eferences 13
1 Introduction 2 1 Introduction Ad hoc networks (AHNs) are wireless networks without fixed infrastructure or centralized administration. The network consists of terminals, which act as routers in the network. In other words, a terminal is not only responsible for sending and receiving its own data, but it also has to forward the traffic of the other terminals. In Figure 1, an AHN is illustrated. Transmission range Source eceiver Figure 1: A multicast transmission in an ad hoc network Major advantages of the AHNs are rapid deployment, robustness, flexibility and support for mobility, which are useful in a wide range of applications. Existing technologies containing ad hoc networking support include wireless local area networks (WLANs) and personal area networks (PANs), for example the 802.11 [9] and bluetooth [15] standards. The AHNs are useful in areas, where natural disasters have destroyed existing infrastructure. The independence of infrastructure is also a great benefit in a battlefield environment. The IETF s MANET working group [13] is creating standards and protocols for ad hoc networks. The group has published several internet-drafts of suggested AHN routing protocols. Multicasting in AHNs, i.e. one terminal sends the same data to multiple receivers, is an active field of research. Many multicast heuristics
2 Optimal Multicasting in Ad Hoc Networks 3 and protocols have been developed. For an introduction and performance analysis of five ad hoc multicast protocols, see [12]. In fixed networks, the metric used to evaluate route alternatives is often the throughput or the delay of the transmission. In many AHNs, the terminals are powered by batteries, thus energy consumption is an important issue. If power consumption is considered in the routing, the energy reduction can be up to 40-70% [16]. The less energy is spent, the longer the network remains operable. In this paper, we study the energy-efficient multicast routing in ad hoc networks. Instead of finding a good route as in previous research, the aim is to find the optimal one. While the approximate solutions are usually accurate enough for practical applications, the optimal solution is useful when the accuracy of the approximations is estimated. The optimal multicast routing in fixed networks, the Steiner tree problem in graphs, have been studied extensively and effective algorithms have been developed [3, 10, 14]. The best methods use linear programming (LP) algorithms. In this paper, the methods used in Steiner tree problems are applied to the AHN multicasting problem. This paper is organized as follows. In section 2, the problem is formulated and the algorithm used is introduced. In section 3, numerical results are presented. Improvements to the algorithm and further work are discussed in section 4. Finally, conclusions appear in section 5. 2 Optimal Multicasting in Ad Hoc Networks 2.1 Problem Description In this section, the optimal multicasting problem is described. The ad hoc network is assumed static. It consists of N identical nodes. The exact locations of the nodes are known when the routing decision is made. The transmission power p is proportional to r α, where r is the transmission range. The distance-power gradient α depends on the communication medium and varies between 2 and 4 [17]. The power of the nodes is limited, thus there is a maximum range max. A random node is chosen as the source s and a selected number N T as receivers T. The other nodes function as routers. A node must receive the signal before it
2.2 Linear Programming Formulation 4 can retransmit it and every receiver has to get the signal. Only one connection is studied at a time, thus there are no limitations on the capacity of the network. The problem is to choose such a transmission power for each node that the total power is minimized while there is a connection to every receiver. 2.2 Linear Programming Formulation In order to solve the multicast routing problem, we formulate it as an optimization problem. While the problem is to choose the transmission powers, the link states x ij are used as decision variables. x ij = 1 if the link from node i to node j is used and x ij = 0 otherwise. The notation t i (j) refers to the node, which is the jth closest to the node i. For example, x iti (1) is the variable related to the link from node i to its closest neighbour. In wireless networks, when a node transmits a signal, it is received by all the nodes within the transmission range. If the link x iti (j) is used, all the links x iti (k), k < j are also used. In the optimization problem, this broadcast constraint can be formulated as x iti (j+1) x iti (j), i, j. The cost c iti (j) corresponding to the link x iti (j) is the addition of power, if the transmission range of the node i is increased from the previous power level to the level which reaches the node t i (j), i.e. c iti (j) = r α it i (j) rα it i (j 1). The connectivity requirement is formulated using subsets of the nodes. We call the links, whose head is in a subset and tail in the complement of the subset, the crossing links. If an arbitrary subset containing at least one receiver is selected and not containing the source, the signal must be transmitted into the subset, thus the sum of the crossing links must be at least one. We call this the connectivity constraint. The problem formulation is min i,j c ij x ij (1) x ij 1, for all W V, s W, W C T (2) i W,j W C x iti (j+1) x iti (j), i, j (3) 0 x ij 1 (4) x ij integer, (5)
2.3 Cutting Plane Algorithm 5 where V is the set containing all the nodes. The problem is linear, thus integer linear programming (ILP) algorithms can be used. For an introduction to linear programming, see e.g. [2]. In Steiner tree research, the branch-and-cut algorithm has been used to solve the optimization problem. However, only a fraction of Steiner tree problems needs branching. If branching is not needed, the branch-and-cut algorithm reduces to the cutting plane algorithm. The implementation of a branch-and-cut algorithm is technical and laborious, hence we use a modified cutting plane algorithm instead. 2.3 Cutting Plane Algorithm The cutting plane algorithm can be summarized in the following way: Create a relaxed LP problem Do Solve the LP problem Separate violated constraints and add them to the problem Add cutting planes While there are inequalities added The relaxed problem is created from the original problem by removing the integer constraints. Also, part of the equation constraints can be removed. The relaxed problem is solved with some LP algorithm, for example the simplex. If the solution satisfies all the original constraints, it is the optimum. Otherwise, violated equation constraints are added to the relaxed problem. If the integer constraints are violated, cutting planes are added, which make the current fractional solution infeasible while preserving all the feasible integer values. The LP problem is solved again and the procedure is repeated until a feasible solution is found. In this paper, all the constraints except the bounds of the variables are removed, i.e. both the inequality and the integer constraints are removed. The separation of the inequality constraints (2) and (3) is presented in section 2.4. In Steiner tree problems, an integer solution is usually found using only the connectivity constraints. However, in ad hoc networks the broadcast constraints will often induce solutions with fractional link states, which are hard to eliminate with linear equations.
2.3 Cutting Plane Algorithm 6 In Figure 2, there is an example network with a fractional solution. Node 1 is the source and node 3 the receiver. The relevant constraints are x 13 + x 23 1 (6) x 13 + x 12 1 (7) x 13 x 12. (8) The optimal real valued solution is x 12 = x 13 = x 23 = 1/2 with the total cost 1.65. An integer solution can be obtained with a cutting plane. Equation x 12 1 makes the fractional solution infeasible while all the integer link state values satisfying the equation constraint remain feasible. If the problem is solved with the additional constraint, the solution is x 12 = x 23 = 1 and x 13 = 0 and the total cost is 2.8. In the equivalent fixed network problem, the cost c 13 = 3.0 and the constraint (8) is missing. The optimal integer solution is found without any cutting planes. The separation of the cutting planes is hard if the network is more complex, thus we modify the cutting plane algorithm to avoid this problem. 1 c 12 =2.5 c 13 =0.5 2 c 23 =0.3 3 Figure 2: Example of fractional link states The modified algorithm is Create a relaxed LP problem Do Solve the LP problem using simplex Separate violated constraints and add them to the problem While there are inequalities added
2.4 Separating Inequalities 7 If there are fractional link states values Declare the variables integers Do Solve the ILP problem using branch-and-bound Separate violated constraints and add them to the problem While there are inequalities added First, inequality constraints are added and fractional link states are ignored. When no more violated equation constraints are found, the variables are declared integers and the iteration is continued. An optimization problem with integer variables can not be solved with simplex, thus the branch-and-bound algorithm is used. While the branch-and-bound algorithm consumes more time than the simplex algorithm, it is used only when no more violated constraints are found using real valued variables. This will reduce the number of branch-and-bound iterations and the total computation time. 2.4 Separating Inequalities There are two kinds of inequality constraints in the problem, the connectivity constraints (2) and the broadcast constraints (3). The number of these equations is very high, thus only the constraints which are needed are added. The connectivity constraint is examined separately for each receiver. The maxflow min-cut theorem [5] states, that the maximum value of the flow from a source node s to a sink node t in a capacitated network equals the minimum capacity among all s-t cuts. The link states are interpreted as capacities, thus the maximum flow from the source to a terminal equals the minimum sum of the crossing link states. If the sum is less than one, there is no connection to the receiver and a new constraint is added, i.e. the sum of states of the crossing links is at least one. The preflow-push algorithm by Goldberg and Tarjan [6] is used to find the maximum flow. To make the constraints more efficient, an idea called creep-flow [10] is applied. If a tiny capacity (10 6 is used) is added to links with zero capacity, the minimum cut calculation also minimizes the number of the crossing links. While the time to find the minimum cut increases with the creep-flows, the number of cutting plane iterations reduces significantly, thus the total time to solve the problem decreases.
3 Computational esults 8 When a violated connectivity constraint is found, the corresponding broadcast constraints are added. The constraints are added to every node, from which a crossing link originates. 3 Computational esults In this section, we report the computational experiences with the algorithm described in section 2. The algorithm is implemented in C and all runs are performed on a Sun Ultra 4 server. The LP solver used is IBM Optimization Solutions and Library (OSL) [8]. It is an efficient solver with great flexibility and customisability. The branch-and-bound routine is used without any problem specific tuning. The nodes are placed in a [0, 1] [0, 1] square. Value 2 is used for α when the link costs are determined. The number of the nodes, the number of the receivers and the maximum range are variated in order to analyze the performance of the algorithm. First, the effect of the maximum transmission range is studied. Every network has a critical transmission range crit, which is the threshold range required for connectivity, i.e. a connection can be established between any nodes in the network. If the size of the network is fixed, crit (N) is a random variable with a certain distribution for each N. In [11], Koskinen has analyzed the statistical properties of these distributions. The 95% quantile of crit (N) is 95 (N) 1 0.224535N + 0.657157. (9) For example, 95 (50) 0.29, i.e. if max = 0.29, a random network with 50 nodes is connected with probability 0.95. In Table 1, there are the computation times with different max. andom networks with 40 nodes and 5 receivers were generated. If all the receivers could not be connected when max = 95 (40), the network was omitted. Each network were solved with three different max values. Thirty problems were solved. Table 1: The effect of the maximum range on computation time max crit = 0.32 3 crit = 0.97 Mean computation time (s) 46.5 169.2 201.7
3 Computational esults 9 The longer the maximum range is, the longer the solving takes. The number of the broadcast constraints increases rapidly, because there are more crossing links in each cut. Each node has more links, which also results in more broadcast constraints. If the maximum range is long, a simple method can be used to speed up the computation. First, a heuristic approach is used to find an upper bound to the total energy. All the links, whose cost is higher than the upper bound, can be removed from the problem. For example, when the results in Table 1 were generated, the mean total power with unlimited range was 0.28. If the heuristic solution is 30 percent worse than the optimum, the max can be set to 1.3 0.28 = 0.60. The shorter maximum range leads to significantly shorter computation times. Methods, which reduce the size of the optimization problem, are called preprocessing and will be discussed in more detail in section 4. When the scalability of the algorithm is studied, the choice of the max is critical as the previous results illustrated. If the maximum range is long, the number of links is high in larger networks. On the other hand, with a short maximum range, the networks with few nodes are seldom connected. When the scalability of the algorithm is studied, the 95 (N) threshold is used as max. Fifty random networks with 5 receivers were generated with different number of nodes. The results are in Table 2. Table 2: The effect of the number of the nodes on computation time Nodes 30 50 70 max 0.37 0.29 0.25 Mean computation time (s) 14.2 161.0 285.2 The computation times grow longer as the number of the nodes increases. The amount of the variables and constraints in the individual optimization problems increases, thus the solving takes longer. Example solutions with 30 and 70 nodes are in Figure 3. The higher number of the nodes results in shorter transmission ranges. On the other hand, more links are used to establish the connection. Finally, the number of the receivers is varied. There are forty nodes and the maximum range is 95 (40) 0.32. Fifty random networks were generated and solved. The computation times are in Table 3. Table 3: The effect of the number of the receivers on computation time eceivers 5 20 35 Mean computation time (s) 41.2 186.7 277.4
4 Further Work 10 S S (a) Network with 30 nodes (b) Network with 70 nodes Figure 3: Example solutions with 5 receivers. Node S is the source and nodes are the receivers The number of the receivers have a significant effect on the computation time. With 5 receivers, the time depends on the topology of the network. If the receivers are on different edges of the network, the computation lasts longer than if the receivers are concentrated in a part of the network. When there are more receivers, the multicast connection spreads out over the whole network, thus the problem is harder to solve. Figure 4 illustrates the solutions with 5 and 35 receivers. The solution times are 1.84 and 43.6 seconds. 4 Further Work While the presented algorithm does work, the performance is not very good. Only small networks with limited number of receivers can be solved in reasonable time. There are numerous ways to improve the performance. In large optimization problems with integer variables, preprocessing is an important issue. The objective of the preprocessing is to remove unnecessary information from the problem. In network optimization, logical implications can be used to remove vertices and edges, while at least one optimal solution of the original problem remains. While the preprocessing consumes time, the total time to find
4 Further Work 11 S S (a) Network with 5 terminals (b) Network with 35 terminals Figure 4: Example solutions with 40 nodes. Node S is the source and nodes are the receivers the optimum is usually reduced significantly. The best Steiner tree algorithms [10, 14] have very efficient preprocessing algorithms. Only part of these algorithms can be used in ad hoc networks. For example, the Degree-Test I introduced by Beasley [1] is applicable, but the Special- Distance-Test by Duin and Volgenant [4] is not. In order to solve large ad hoc multicast problems, the suitable algorithms used with Steiner trees need to be applied. Also, new algorithms utilizing the properties of ad hoc networks could be developed. In the modified cutting plane algorithm, the most time consuming part is the branch-and-bound stage, whose effectiveness could be improved with problem specific tuning. The selection of the branching variable has a great impact on the course of the solving. The network topology could be used to choose a good branching variable selection strategy. An other approach is to select a better algorithm instead of the modified cutting plane method. The branch-and-cut algorithm is used in Steiner tree problems with good results. The impact of the fractional variables is lower, thus the performance improvement would be significant. The major disadvantage is the technical implementation.
5 Conclusions 12 A more efficient preflow-push algorithm of Hao and Orlin [7] could be used to find the minimum cut. However, the algorithm is more complex and the time to find the minimum cuts is not critical, because most of the time is consumed in the branch-and-bound algorithm. 5 Conclusions In this paper, we have studied energy-efficient multicasting in wireless ad hoc networks. The network was assumed static and only one connection was examined at a time. The multicast problem was formulated as a linear integer programming problem and a modified cutting plane algorithm was used to solve it. The performance of the algorithm was studied with different kinds of networks. The optimal solutions can be used to evaluate the performance of approximate solutions, but the performance is too slow for practical applications. The ad hoc problem proved to be significantly harder to solve than the Steiner tree problem. The broadcast constraints cause fractional link state values, which are hard to eliminate. Several improvements to the algorithm were suggested. Most importantly, a more efficient method of dealing with the fractional link states is needed, e.g. the branch-and-cut algorithm.
EFEENCES 13 eferences [1] J. E. Beasley. An algorithm for the Steiner tree problem in graphs. Networks, 14:147 159, 1984. [2] D. Bertsimas and J. N. Tsitsiklis. Introduction to Linear Optimization. Athena Scientific, 1997. [3] C. W. Duin. Steiner s Problem in Graphs. PhD thesis, Amsterdam University, 1993. [4] C. W. Duin and A. Volgenant. An edge elimination test for the Steiner problem in graphs. Operation esearch Letters, 8:79 83, 1989. [5] L.. Ford, Jr. and D.. Fulkerson. Maximal flow through a network. Canadian Journal of Mathematics, 8:399 404, 1956. [6] A. V. Goldberg and. E. Tarjan. A new approach to the maximum-flow problem. Journal of the ACM, 35:921 940, 1988. [7] J. Hao and J. B. Orlin. A faster algorithm for finding the minimum cut in a graph. In Proceedings of the third annual ACM-Siam Symposium on Discrete Algorithms, pages 165 174, 1992. [8] IBM. Optimization solutions and library, http://www-3.ibm.com/ software/data/bi/osl/index.html. [cited 1st December 2002]. [9] IEEE. Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications. LAN MAN Standards Committee, 1999. [10] T. Koch and A. Martin. Solving Steiner tree problems in graphs to optimality. Technical eport SC-96-42, Konrad-Zuse-Zentrum für Informationstechnik Berlin, 1996. [11] H. Koskinen. Connectivity in ad hoc networks. Technical report, Networking Laboratory, Helsinki University of Technology, 2002. [12] S. Lee, W. Su, J. Hsu, M. Gerla, and. Bagrodia. A performance comparison study of ad hoc wireless multicast protocols. In Proceedings of the IEEE Infocom 2000, pages 565 574, 2000. [13] http://www.ietf.org/html.charters/manet-charter. html. [cited 1st December 2002].
EFEENCES 14 [14] T. Polzin and S. Vahdati Daneshmand. Improved algorithms for the Steiner problem in graphs. Discrete Applied Mathematics, 112:263 300, 2001. [15] Bluetooth SIG, Inc. http://www.bluetooth.org. [cited 1st December 2002]. [16] S. Singh, M. Woo, and C. S. aghavendra. Power-aware routing in mobile ad hoc networks. In Proceeding of MOBICOM 1998, pages 181 190, 1998. [17] J. E. Wieselthier, G. D. Nguyen, and A. Ephremides. Algorithms for energyefficient multicasting in static ad hoc wireless networks. Mobile Networks and Application, 6:251 263, 2001.