Neural Network Based Dynamic Multicast Routing

The Hopfield neural network is suggested for dynamic multicast routing in communication network of arbitrary topology and under variable traffic conditions. A new algorithm takes into account not only the most important parameters describing the actual network state (the network topology, link and router bandwidths, estimated link delays, and the traffic density), but also the history of link/router occupancy. The goal of the paper is to find the Pareto optimal path for multicast routing case and to avoid possible packets loss, due to heavy traffic. The effectiveness of the new routing algorithm has been verified under various network topologies and traffic conditions


I. INTRODUCTION
Standard communication in computer networking comprises the transmission of data from one source (S) to single destination (D), which is known as the unicast (i.e., point-to-point or S-D pair) transmission.New services for entertainment and commercial applications (video-ondemand, video games, telemedicine, videoconference, triple play services, distance learning, multiservice networks, distributed databases, etc.) are based on multicasting, when one source sends the same content to a group of m destinations, (point-to-multipoint transmission or 1S-mD, m>1, case) [1]- [5].Consequently, corresponding routing algorithms are known as the unicast or multicast routing.Historically, the routing algorithms have evolved from static routing, in which "good routes" are computed off-line, to more sophisticated dynamic routing, in which the routes are computed online, taking the actual traffic conditions into account [6], which is very important for ensuring the quality of service in IP networks [4], [5].
Most frequently, routing algorithms are based on the shortest path (SP) problem.In the simplest way, the physical path length (distances) may be considered, as used in classic optimization problem known as the traveling salesman problem (TSP).But, similarly as in road traffic, in Manuscript received October 7, 2012; accepted August 5, 2012.telecommunications the shortest path is not always the optimal solution.Some other measures may be considered when determining optimal solution in routing.For instance, the number of hops between source and destination node [7], the mean transmission delay [8], [9], commercial cost, link and/or node bandwidth, average traffic density, the input buffer occupancy, etc., [1], [3].
The problem of finding the shortest path from a single source to a single destination has some well-known polynomial algorithmic solutions, such as Dijkstra's [6] and Bellman-Ford's [6], but the problem is computationally very hard, particularly in large-scale networks and constrained problems.In their well-known paper Hopfield and Tank [10] introduced an analog neural network (known as the HNN) suitable for solving different constrained and computationally hard optimization problems -among others the well-known TSP problem.Note that in real communication networks, due to particular limitations dictated by technological and/or commercial requirements, some parameters affecting the routing path are fixed.In this case, instead of standard optimization method more appropriate is to use Pareto optimization [11].Moreover, in multicast routing, instead of the shortest path, the minimum Steiner tree (MST) problem [6] should be resolved for the given network.
In this paper the dynamic multicast routing algorithm, which takes into account many different parameters describing actual state within the network, such as the network topology (including its possible changes), node and link bandwidth, traffic dynamics, and link delays, is considered.The new algorithm uses Hopfield-like neural network for optimizing, in Pareto sense, the cost of the total Steiner tree [6], and minimizing the total cost whit regard to different network parameters.

II. HOPFIELD NEURAL NETWORK IN ROUTING
The first step in the Hopfield approach to the optimization problem is to formulate an appropriate energy function E which depends on the outputs v={v i } of nonlinear devices (cells, or neurons in NN terminology) driven by voltages u={u i }, and synaptic weights T ij .Synaptic weights connect neurons and enable collective functioning of the network.Indices i and j relate to neurons.The energy function is composed by two parts: a term that needs to be minimized leading to the optimization of the energy function, and some penalty terms (constraints).The role of penalty terms is to increase the value of energy function if any of the problem constraints is not satisfied.From the energy function the dynamical equations describing the network state are derived as from which follows that the steadystate response (u={u i }=const) corresponds to the minimum of the network energy.Significant advantage of Hopfield approach is that the neural network can be realized by standard electronic components: amplifiers, resistors and capacitors.Due to intrinsic parallel work of neural network, hardware realization of HNN is capable to find near optimal solution of the TSP problem in a very short time [10].
Optimal routing in communication network may be considered as the SP problem and can be resolved by HNN.For this purpose instead of physical distances, d ij , between nodes i and j, some other attributes called the link costs, C ij , are associated to links, describing the transmission conditions between nodes [12].The goal is to minimize the total cost, C tot i.e., to find the "minimal-length path" between the source and destination node going through internodes i, j, k, …, r.The use of HNN in finding the shortest path between a given S-D pair in communication network with n nodes was described in several papers.Rauch and Winarske [13] proposed a HNN of size n×m, where m<n denotes the number of nodes forming the path.The serious limitation in their representation is that it requires fixed and a prior known number of nodes, m, in the shortest path.This drawback was corrected in [14], but for fixed S-D pair.For another S-D pair, the neural configuration has to be changed, which is hardly impractical.Furthermore, the cost terms in the energy function, which correspond to synaptic conductances, are quadratic.Consequently, such a solution is not appropriate for a real case because, in practice, the link conditions (costs) are time varying and, thus, the conductances in corresponding neural network have to be changed, too.
Significant improvements in routing using HNN are suggested by Ali and Kamoun [12].For communication network with n nodes their computational network uses n(n-1) neurons -the diagonal elements in the connection matrix n×n are removed.The squared matrix corresponds to neurons into the HNN, with locations (x,i) relating to rows and columns, respectively.
For solving routing problem Ali and Kamoun proposed the energy function of the form where terms C xi denote the link costs from node x to node i, the terms ρ xi describe physical connection between nodes (the value of ρ xi is set to 1 if nodes are not connected, and 0 for connected nodes), while v xi are neurons' outputs.
Coefficients µ k , k=1,…,5, control the influence of particular terms on the energy function.The term associated with µ 1 minimizes the total cost of the route S-D, while other terms relate to constraints: µ 2 prevents the inclusion of nonexisting links into the solution; µ 3 determines valid paths, µ 4 forces the state of the neural network to converge to one of the stable states -corners of the hypercube defined by v xi ∈{0,1}.The state v xi is close to 1 for node belonging to the valid path otherwise the state is close to 0. The term associated to µ 5 is introduced to ensure the source and the destination nodes belong to the valid solution (i.e., to the shortest S-D path).
The main contribution in Ali-Kamoun's paper [12] is that synaptic conductances in HNN are constant, given by where δ ij are the Kronecker delta, having values of δ ii =1 and δ ij =0 (i≠j), while the link costs and the information about the connection between nodes are associated to bias currents ( , for ( ) ( In this way their SP algorithm becomes very attractive for real time processing, because bias currents may be easily online controlled.Ali and Kamoun [12] successfully applied this algorithm to the minimum delay routing problem in computer networks under different network topologies and link costs.Several modifications and improvements of their approach have been introduced by Park and Choi [15], for the multicast routing problem.However, as noticed in [16], despite the improvements their method still has several drawbacks, for instance, multiple convergence points and poorer behavior with increasing number of graph nodes.

A. Dynamic Unicast Routing by Neural Network
For better understanding the new algorithm for dynamic multicast routing we will describe, first, similar algorithm applied to unicast routing.In [17] we suggested the following energy function 2 where the first term, E AK corresponds to that of the Ali and Kamoun's, given by (2), while the new terms are introduced for avoiding the packet loss due to heavy and highly variable traffic.
The term with µ 6 relates to the traffic conditions.Each link x-i is characterized by its capacity, K xi , meaning by maximal data flow -the maximal number of data units per second (i.e., the bandwidth).On the other hand, each link has the actual data flow in particular direction, i.e., the traffic density, G xi , expressed also in terms of data units per second.For reliable traffic the condition K xi ≥ G xi must be satisfied, otherwise packets exceeding the input buffer will be lost.For avoiding this effect we introduce the difference (K xi −G xi ), which represents the link capacity margin i.e., the free space in link capacity.The routing policy has to find a path with enough free space in link capacity (high value of M xi ).If G xi approaches to K xi this link may be overloaded and thus the HNN should distimulate this link to be included into the final path.For that reason the term (1−M xi ) is used in the energy function (5).
Next parameters characterizing the links are their delays, τ xi .The term associated with µ is introduced to minimize total delivery time of packets on the final path, for a given S-D pair.By minimizing this term an overall throughput in the network is increased and thus the network efficiency as well.
The last parameter in the energy function (5) After forming the energy function, the bias current in our algorithm is defined as: 6 7 (1 or, more precisely (1 ), otherwise.
By embedding (5)-( 9) into the network state equations the following expression, suitable for computer simulation, is suggested in [17] The term 10) denotes the cell's time constant which provides the network dynamics.

B. Dynamic Multicast Routing by Neural Network
The NN algorithm described by ( 5)- (10) was successfully applied to unicast routing in large networks under different traffic conditions [17], [18].In multicast routing the goal is to optimize m paths from the source node S to the set of destination nodes: D m ={D 1 ,D 2 ,…,D m }.In general, paths S-D 1 , S-D 2 , ..., S-D m are not independent (several paths may share the same links).For the given destination D m it is necessary to find relations between partial S-D solutions, S-D 1 , S-D 2 , ..., S-D m .First, instead of the unique terms v xi , describing output voltages of neurons, we will observe voltages m xi v corresponding to links belonging to the multicast tree from S to D m .Furthermore, the new term , describing the influence of other routes to particular path S-D j , j=1,2,...,n, j≠m, has to be used [19] ., 1 From the new term ) (v f m xi outputs of the neurons from different routes, belonging to the same links in the network, try to cooperate to minimize the overall cost associated to the constant µ 1 .In this way, every link that is a part of individual paths S-D 1 , S-D 2 , ..., S-D m , will be stimulated to be included in the final route [19].Here, we will extend the use of this function to minimize additional terms in (5) controlled by constants µ 6 to µ 8 .
The partial energy function corresponding to the S-D m pair now reads while the overall energy function for the set of all multicast routes is given as the sum of partial energy functions .
The dynamics of ith neuron now becomes where, for simplicity, we denote the constant K MDS as

IV. SIMULATION MODEL AND RESULTS
By using the algorithm described in previous section we derived the simulation model.For n-node network we started by initial square matrices n×n describing the link costs C={C ij }, network topology ρ ρ ρ ρ={ρ ij }, and other terms introduced in (5-11): Κ Κ Κ Κ={K ij }, G={G ij }, T={τ ij }, and S={S ij }.Initially, the matrix ρ ρ ρ ρ was defined according to the node connectivity.Parameters in matrices G, T, and S are updated dynamically every time when the new route is established and may change the terms in matrix ρ ρ ρ ρ according to (7).In all simulations we considered the possibility of nonsymmetrical link costs and other parameters, i.e., the case C ij ≠C ji , K xi ≠K ix , G xi ≠G ix , τ xi ≠τ xi , and S xi ≠S ix is assumed.
Identical neuron cells, with τ i =τ=1 and the same sigmoid transfer function, are used.As usual in NN simulations, neurons are initially excited randomly with small input voltages close to 0.5.Constants µ 1-8 , which control the impact of particular term on the energy function, are determined by following suggestions given in [12], [15]- [18].Starting from defined intervals for constants µ i in [10], [12], we first analyzed stability of energy function for µ 1 -µ 5, considering only one input, link costs C. We used suggested value for these constants as in [17], [18] and refined them empirically.We also used network topology and parameters, and final solution based on Dijkstra's algorithm in [15], to additionally modifies constants values.Based on it, we iteratively changed constants values until we get final shortest route, as Dijsktra's algorithm found.After that, we have included matrices K, G, τ and S, whit their neutral values, and again modify all constants µ i in order to find previously defined shortest path.In our network we used the following values µ 2 =2500, µ 3 =3500, µ 4 =480, µ 5 =3000, for constants controlling the constraints, while remaining constants, controlling the minimization part of the energy function take the values µ 1 =1500, µ 6 =1200, µ 7 =1000, µ 8 =1800.Note that if these constants are equal-valued (µ 1 =µ 6 =µ 7 =µ 8 ) all terms will have the same influence on the minimization of energy function.Using smaller value corresponding term will be stimulated and vice versa.We found system is stable if these constants are within the limits [600,2000].
When we tested our algorithm we started with the unicast case.By intensive simulations over a large number of randomly chosen different networks (meaning, different number of nodes, different node connections, and different values of parameters describing other network conditions), and for randomly chosen S-D pairs, we found that energy function converges very fast to stable state.As an illustration, in Fig. 1 depicts the typical plot of energy function vs. the number of iterations, k, for 20-node network and unicast routing.The saturation of energy function is obtained after less than 100 iterations.
After the unicast case we tested our algorithm to multicast case.We analyzed randomly chosen network topologies with different number of routers (up to n = 90) and randomly loaded matrices C, K, G, T, and S. As a reference, in Fig. 2 the mean and standard deviation of iterations before saturation is depicted for the case 1S-3D: nodes are randomly chosen and randomly repeated 5 times.
It is evident that our algorithm still converges very fast.In the worst case of non-realistic (90-node) network the maximal number of iterations was less than 1400 (800 in average), while for reasonable sized network (up to 40 nodes) the maximal number of iterations does not exceed 650.The efficiency of our algorithm was compared with already published algorithms for multicast routing.In their paper [15] Park and Choi analyzed the network as in Fig. 3 with 20 nodes and 45 bidirectional links described by their normalized costs.The 1S-3D case is assumed: the source router is S=2 and destinations are D 3 ={9,15,20}.Park and Choi considered only the link cost minimization and compared their results with those after applying Dijkstra's SP, Kruskal's MTS, and Ali-Kamoun's [15].Their results are presented in Table I -first four rows.In our algorithm, when minimizing only the link costs (expressed by matrix C) the entries in matrices K, T and S, are chosen to be neutral, with values of 0.5, while the matrix G is filled by zeros.In this case our algorithm found as optimal the routes depicted in Fig. 4. Determined routes are exactly the same as obtained by closed-form Dijkstra's SP algorithm and the NN algorithm by Park and Choi [15].Corresponding costs of partial routes are listed in the last row of Table I.Note that Park and Choi presented route costs in the form 2→9, 9→15 and 15→20 (left side of columns in Table I).We calculated and presented also the costs of routes from the source (node 2) to individual destinations (9,15,20) -right side of columns in Table I.The possibility to find an optimal route is a main descriptor of the routing algorithm quality.The second descriptor is the execution time (processing speed).We compared our algorithm with other algorithms analyzed in [15] in terms of the number of iterations before saturation.The number of iterations for Ali-Kamoun's, Park-Choi's and our algorithm for routes S:2-D:9, S:9-D:15 and S:15-D:20 are approximately (7000, 3500, 140), (15000, 8000, 185) and (6500, 2000, 120) respectively.Our method was significantly faster than Ali-Kamoun's and Park-Choi's methods.In our approach, even for more than 50 randomly chosen 1S-3D routing in 20 node network, the average number of iterations was less than 200.
The execution time is compared also with results recently presented in Araujo et al. [16].They analyzed 40-node network and random S-D pairs in unicast routing, and compared their results with those of Park and Choi.Comparative results are listed in Table II.Except the shortest path(s) determination, our algorithm successfully responded to dynamic network conditions (described by link capacity margins, M xi =(K xi −G xi ), and statistics of network occupancy, S xi ), and avoided links with large delays -according to new terms in energy function (5) and (11).Since similar results are not reported yet in literature we will present in Fig. 5 only some characteristic examples, describing the capability of our method.As a reference, the routes when assuming only link costs (as in Fig. 4) are depicted as thin solid lines.First, we included node bandwidths by randomly loaded matrix K with

V. CONCLUSIONS
The paper considers the dynamic multicast routing in large communication networks.A new algorithm based on Hopfield neural network has been proposed.It takes into account parameters relevant for such a complex problem.Taking into consideration different network topologies, including the changeable topology due to unpredictable user's connection to a multicast group, an overall cost function is defined.The HNN energy function is derived to include different parameters such as link distances (costs), bandwidth, estimated link delays, link density and maximal allowed link delays.We introduced also the link occupancy statistics because it is expected that, if some links are used frequently, this link may be overloaded and packets will be lost.By minimizing the energy function Pareto optimal paths have been found.
The simulation results are equal and even better to similar ones, presented in available literature.Moreover, our method is significantly faster than others, which is approved through the convergence time, describing by the number of iterations before the energy function saturation.

Fig. 1 .
Fig. 1.Typical plot of energy function vs. the number of iterations for unicast routing in 20-node network.

Fig. 2 .
Fig. 2. Mean and standard deviation of iterations before the saturation of energy function, for the new algorithm for multicast routing in different sized networks.The case 1S-3D is presented.
range [0.45, 1.0].One solution was drawn by wide solid lines in Fig.5-a.By inspecting the matrix K we found the bottleneck was the link 13-12 (belonging to previous routes to destinations15 and 20), having now the value K 13 , 12 =0.46 and thus the algorithm avoided this bottleneck finding alternative routes.Next example includes the traffic density, by matrix G, also randomly loaded with values within [0, 0.8].One solution was drawn by dotted lines in Fig.5(a).Now for links 3-7 and 13-20 the link capacity margins M xi =(K xi −G xi ) become negative and, according to constraint (7) these links are hardly excluded.

5 .
Multicast routes 2→{9,15,20} under different network conditions: (a) Based on matrices C and K (wide solid lines) and on matrices C, K and G (dotted lines); (b) Based on matrices C, K, G and hardly excluded links 12-16 and 11-15 (dots) and with addition of time delay matrix T (dash).In Fig. 5(b) by dot lines are drawn routes with fixed matrices C, K and G as previous when links 12-16 and 11-15 are hardly excluded, while by dash line are drawn routes when delay matrix T is included, with the constraint τ max =0.45.The main difference now is in the route 2→9.In previous route 2-3-7-10-9 the total delay was 1.101 while the new route 2-1-4-8-9 has the delay 0.875.
the node capacity, i.e., if M xi ≤0, the term ρ xi will be temporarily set to ρ xi =1, irrespectively of the physical node connection.Furthermore, we can consider the maximal allowed link delay, τ max .Such a parameter may be important in some cases, for instance, for real-time video streaming with guaranteed QoS.If the transmission time (delay) τ xi through some particular link exceeds τ max this link may be temporarily excluded form the path by setting ρ xi =1.Finally, if it is necessary to hardly exclude the link x-i from the final path, network administrator can externally set the value S xi =0, producing ρ xi =1.The described crisp logic can be , which is controlled by µ 8 , we are calling as the statistics of link occupancy.Corresponding parameter, S xi , depends on the history of links occupancy in previously determined routes.Our assumption is that if some of the links are frequently used in past the probability of its overload in future increases.Data describing the link occupancy are recorded and parameters S xi are calculated in inverse sense regarding to occupancy: greater occupancy -smaller S xi (approaching to zero), while rarely used links have S xi close to unity.constant µ 2 in (2).As noted before terms ρ xi describe network topology having values ρ xi =1 or ρ xi =0 (for nonexisting and existing links, respectively).But, we can assume even some virtual node connectivity in order to avoid possible packet loss due to heavy and changeable traffic.For instance, if in some time periods the traffic density exceeds

TABLE I .
COMPARISON OF ALGORITHM EFFICIENCY EXPRESSED BY TOTAL LINK COSTS (×10 -4 ) THROUGH DETERMINED ROUTES*.

TABLE II .
NUMBER OF ITERATIONS BEFORE SATURATION FOR 40-NODE NETWORK AND UNICAST ROUTING.