Ant Colony Optimization for Multi-Objective Multicast Routing

In the distributed networks, many applications send information from a source node to multiple destination nodes. To support these applications requirements, the paper presents a multi-objective algorithm based on ant colonies to construct a multicast tree for data transmission in a computer network. The proposed algorithm simultaneously optimizes total weight (cost, delay and hop) of the multicast tree. Experimental results prove the proposed algorithm outperforms a recently published Multi-objective Multicast Algorithm specially designed for solving the multicast routing problem. Also, it is able to find a better solution with fast convergence speed and high reliability.

based algorithms to solve QMR problem. In the case of expanding the network, i.e., adding nodes to the network, the system scans all nodes to search the solution. In the case of QoS with multiple constraints such as bandwidth, delay, and packet loss rate, many algorithms are presented in Wang et al. [Wang and Crowcroft (1996); Guo and Matta (1999); Chen, Li and Dong (2006)] to solve this problem. Chu et al. [Chu, Gu, Hou et al. (2002)], presented an ant colony-based heuristic to search minimum cost multicast tree in the case of considering QoS metrics, such as bandwidth, delay, delay jitter, and packet loss rate. Huang et al. [Huang, Han and Hou (2007)], constructed an algorithm called ASDLMA (Ant system for delay-constrained low-cost multicast routing algorithm) to solve low-cost multicast tree subject to delay constraints. In the last years, some genetic algorithms (GAs) were considered as a solution approach to many problems, network design problem [Chen and Sun (2005)] and unicast routing [Atzori and Raccis (2004)]. Also, GAs used to solve multicast routing problem [Hwang, Do and Yang (2000); Bhattacharya, Venkateswaran, Sanyal et al. (2005)]. In addition, there is the the constrained QoS problem [Chen, Yang and Xu (2004); Hamdan and El-Hawary (2004); Randaccio and Atzori (2006); Mahseur, Meraihi, Boukra et al. (2017); Shi, Zhang, Chen et al. (2018); Li, Tian, Mishra et al. (2019)] and [Wang and Hou (2000)].
When considering more than one parameter in traffic engineering problem such as the cost of the tree, hop count, bandwidth utilization, the problem is considered as Multi-Objective Problem (MOP) [Veldhuizen (1999)]. The behavior of the ant colony in real world is simulated by a meta-heuristic which is considered as Ant colony optimization (ACO) [Dorigo and Di Caro (1999); Kumar and Reddy (2006)]. The ACO is applied to network routing and QoS multicast routing problems. In this paper, generating a multicast tree with low-cost, minimum delay, and minimum number of hop is considered as a multi-objective multicast tree problem. An algorithm based on AS is proposed to solve the presented problem. The presented algorithm starts with generating the m number of paths from the source to the sink node based on its corresponding probabilities function and update Pheromone on that path at each iteration. The experimental results prove that the proposed algorithm outperforms a recently published Multi-objective Multicast algorithm specially designed for solving the multicast routing problem. The rest of the paper is organized as follows: Section 2 presents the problem description and formulation. Sections 3 describe ant behavior. The proposed ant algorithm is presented in Section 4. Simulation results are presented in Section 5. Section 6 concludes the paper.

Problem description and formulation
Given G= (N, E), where N represents the nodes set and the set of edges denoted by E, is a weighted directed graph. The number of nodes and edges is defined by |N| and |E| respectively. Here we define the multicast routing problem subject to the sum of the cost, delay and hop from one source node to a destination node in a given network. Let The cost of the path PT is defined as the sum of the cost of all links in that path and can be given by: The total cost of the tree T is defined as the sum of the cost of all links in that tree and can be given by The total delay of the path PT (n0, d) is simply the sum of the delay of all links along PT(n0, d): The delay of multicast tree T is the maximum value of delay in the path from source node n0 to each destination node d∈U.
The hop of the path PT is defined as the sum of the hop of all links in that path and can be given by The hop of multicast tree is defined as the sum of the hop of all links in that tree and can be given by: The vector SW(PT) of the path PT consists of the vector sum of the vectors corresponding to arcs.
( ) = ( ) + ( ) + ( ) (7) where SW(PT) is the weight of a shortest path tree (PT). The objective of presented problem is to find a multicast routing tree (T) such that minimizes the cost C( ), the delay ( ), and the hop ( ). The problem can be formulated as follows: where W(T) is the weight of a multicast routing tree (T). The cost C( ), the delay ( ), and the hop ( ) are defined as follows: 3 Ant behavior Along the path on which the ant moves, it lets out a special material called pheromone. This material can be sensed and detected by ants and used it as a guide to move and to find food. Ant colony behavior may be changed based on the exchanged information to find the optimal path between the nest and the food location. An ant will move from node i to node j with probability: where: , is the amount of pheromone on edge i; j, α is a parameter to control the influence of , β is a parameter to control the influence of , Ƞi,j is the desirability of edge i; j (typically 1/di,j) α, β are user defined parameters (0 ≤ α, β ≤ 1): Amount of pheromone is updated according to the equation where: , is the amount of pheromone on a given edge i; j ρ is the rate of pheromone evaporation and ρ (0, 1) ∆ , is the amount of pheromone deposited, typically given by where Lk is the cost of the k th ant's tour (typically length).

The proposed ant algorithm
Assuming n0 is a source node, and U={u1, u2 … um} denotes a set of destination nodes, the proposed algorithm generates n paths from n0 to each ∈ . To solve the multiobjective multicast routing problems: an ant moves through a path by using the corresponding probabilities function and update Pheromone on that path after finishing each iteration. The following steps describe the proposed algorithm:

Ant algorithm for solving the multicast routing problem
(1) Define the node numbers of a network (say |N| nodes).
Generate the network of |N| nodes.
Check on the connection of the proposed network.
If the proposed network is not connection then repeat from Step 2.
Define 0 and U as shown in Section 2.
Set (The number of candidate trees).
Set ℊ = 0 (ℊ is a loop counter.), and put m (m is the number of ants) ants into 0 .
For each destination node ui ∈ U, generate Pi, the set of paths for each destination node ui. (10) Assign an initial value ; 0 = k τ to the pheromone intensity of every path Pk, k=1, 2, …, n, Begin the first tour; Let m ants move from 0 to ui on Pi equally (the ants number in each path pk is equal).
Compute the pheromone amount left by x ants at pk ( k τ ∆ ) by using Eq. (11).
Begin a new tour.
Printout the best tree. End

Experimental results
In this section, we show the effectiveness of the above algorithm by applying it on three cases. The proposed algorithm is implemented as a system by C++ language and it can apply on the different networks (has small or large nodes). The parameters setting in the proposed algorithm as follows: ants number m=40, 5 . 0 = ρ , α=β=1, and ℊ =20 (maximum iteration number).

First case
In the first case, consider a network with 10 nodes created by the system as shown in Fig.  1. Each link in the network has three parameters: cost, delay, and hop (C, D, H), the values of these parameters are generated randomly as shown in Figs. 2-4. Assuming that n0 =1 and U={3, 5, 7, 9}, the candidate multicast routing trees from source node no. 1 to the given destination nodes, are shown in Tab. 1. Also, the corresponding ( ), Average delay of T, and the required computation time (in Seconds) are given for each candidate T. It is clear that, the best tree is no. 7 with ( ) = , Average Delay(T)=27.39 and CPU time=6.46 s.

Comparison and discussion
In this paper, we tackle the problem of multicast routing in multi-objectives as cost, delay, and hop, and use an ant colony algorithms to find the shortest paths from a source node to the destination nodes in the computer network. This paper proposed a fast effect algorithm to solve the multicast routing problem in multi-objective. In addition, we considered the multi-processing system in a general form, as in the computer networks or wireless networks the use multi-nodes with different kind of objectives, which can be described as multi-objective multicast routing. Multi-objective multicast routing is a hard problem, all researches are proposed a heuristic algorithm to solve it. In this paper under certain constrains we aim to get a fast ant colony algorithm to solve that problem. The conclusion section will summarize the propose algorithm performance against the other selected algorithm with the same constrains. The CPU time in case 1 ranges from 6.42 to 6.48 according to Fig. 7, it ranges from 16.88 to 25.50 as shown in Fig. 10. In comparison with Atzori et al. [Atzori and Raccis (2004); Ahn and Ramakrishna (2002)], the proposed algorithm is more efficient.

Conclusion
In this paper, the cost, delay and hop are addressed as multi-objective multicast routing problem. Ant colony algorithm is one of the heuristic algorithms that can solve these problems; therefore, it has been used to tackle the presented problem. The paper solved the multicast routing problem subject to the total of cost, delay, and hop count. The experimental results illustrated that the proposed algorithm found diverse solutions to the considered problem in short time. The experimental results illustrated also the proposed algorithm always find solutions which fits the lower bound of the described network solution.

Conflicts of Interest:
The authors declare that they have no conflicts of interest to report regarding the present study.