#### Abstract

This paper presents a multiconstrained quality-of-service routing (QoSR) based on a differentially guided krill herd (DGKH) algorithm in mobile ad hoc networks (MANETs). QoSR is a NP-complete and significant problem with immense challenges in determining an optimum path that simultaneously satisfies various constraints in MANETs, where the topology varies constantly. Various heuristic algorithms are widely used to solve this problem with compromise on excessive computational complexities and/or low performance. This paper proposes a krill herd based algorithm called DGKH, where the krill individuals do not update the position in comparison with one-to-one (as usual), but instead it uses the information from various krill individuals and then searches to determine a feasible path. Experiment results on MANETs with different number nodes (routes) are considered with three constraints which are maximum allowed delay, maximum allowed jitter, and minimum requested bandwidth. It is demonstrated that the proposed DGKH algorithm is an effective approximation algorithm exhibiting satisfactory performance than the KHA and existing algorithms in the literature by determining an optimum path that satisfies more than one QoS constraint in MANETs.

#### 1. Introduction

Mobile ad hoc networks (MANETs) are class of wireless communication networks without a fixed infrastructure. The MANET nodes do not provide reliable services and QoS (quality of service) guarantees as compared to other wireless networks such as WiFi, WiMAX, GSM, and CDMA [1]. The QoS parameters to be guaranteed for multimedia group communication are bandwidth, delay, packet loss rate, jitters, and bandwidth-delay product. QoS is one of the significant components to evaluate MANET performance since QoS restricts the bounds on bandwidth, delay, bandwidth delay product, jitter, and packet loss [2, 3]. The violation of these parameters degrades the overall performance of an application.

Its primary goal is to allocate network resources efficiently while the different QoS requirements are satisfied simultaneously. The QoS requirements can be classified into link constraints (e.g., band width), path constraints (e.g., end to end delay), and tree constraints (e.g., delay-jitter). The interdependency and confliction among multiple QoS parameters, however, make the problem very difficult and NP-complete [4, 5]. For the reason that the QoS multicast routing problem is NP-complete, several heuristic algorithms have been deployed to address this problem. For example, simulated annealing (SA), a powerful global optimization procedure, was utilized to solve the QoSR problem [6]. Unlike other heuristic techniques SA involves single candidate to search for the solution that make the method inefficient while solving large dimension problems.

Subsequently another powerful population based technique called genetic algorithms (GAs) has been engaged to solve the QoSR problem [7–9]. GA assures a larger possibility of locating a global optimum by starting with multiple random search points and processing several candidate solutions simultaneously. Perhaps, it is always criticized that genetic algorithms encounters some faults such as lack of local search ability, premature convergence, and slow convergence speed. Similarly, due to the advent of swarm intelligence theory, a category of stochastic search methods for solving optimization (GO) problems of NP nature, ant colony optimization (ACO), and particle swarm optimization (PSO) is introduced.

Similar to GA, these two methods were also shown to be efficient tools for solving the multicast routing problem [10–13]. In [10, 11] the QoS-multiple constrained optimization problem has been solved using ant colony optimization (ACO) algorithm. Here the authors examined the degree and delay-constrained broadcasting problem with minimum cost using an ant colony-based algorithm. After simulations and comparisons with previous ant algorithm, and to two GA-based algorithms, the obtained results exhibited the best cost but again with too long computation time.

Consequently PSO [12, 13] was also used to address the QoSR problem. PSO can be easily implemented and is computationally inexpensive, since its memory and CPU speed requirements are low. PSO has been proved to be an efficient approach for many optimization problems with its fast convergence and simple steps to solve a problem. In spite of these merits, a known fact that PSO has a severe drawback in the update of its global best (gbest) particle, which has a crucial role of guiding the rest of the particles, this leads to overcoming better solutions in the course of search.

In row of these heuristics, another new metaheuristic called Bees Life Algorithm (BLA) is proposed [14]. As one of the specie colony optimization, BLA is considered as a swarm intelligence algorithm and an approximate optimization method which performs according to collaborative individual behaviors in the population. But still like other probabilistic optimization algorithms, BLA has inherent drawback of premature convergence or stagnation that leads to loss of exploration and exploitation capability. In line to this, other heuristics like tabu search [15] and harmony search algorithm [16] were proposed for QoSR with minimum number of constraints.

In fact there is a growing body of literature in the application of emerging heuristics to solve the NP-hard QoSR problem. This paper proposes a krill herd based algorithm for QoSR in MANETS. Krill herd algorithm (KHA) is a recently developed powerful evolutionary algorithm proposed by Gandomi and Alavi [17]. The KHA is based on the herding behavior of krill individuals. Each krill individual modifies its position using three processes, namely, movement induced by other individuals, foraging motion, and random physical diffusion. The motion induced by other individuals and foraging motion contain global and local strategies, respectively, which make KHA a powerful technique. However, sometimes, KHA is unable to generate global optimal solutions on some high-dimensional nonlinear optimization problems.

Thus this paper proposes a differentially guided krill herd (DGKH) algorithm where the krill individuals do not update the position in comparison with one-to-one (as usual) instead it uses the information from various krill individuals and then searches to determine a feasible path. Thus the induction stage uses the position information from various krill individuals at random, making the search exhaustive, and leads to quick search of better solutions.

The rest of the paper is organized as follows. In Section 2, the problem statement of QoS routing problem in MANETS is introduced. The overview of KHA is briefly explained in Section 3 with description of the proposed differential guiding mechanism. Section 4 presents the numerical experiments with a standard QoS multicast routing problem. A detailed discussion about the proposed method in theoretical perspective is detailed in Section 5. The paper is concluded in Section 6.

#### 2. Problem Statement

Let be an undirected graph representing the network topology, where is the set of nodes and is the set of links. The source node and the multicast destination node set containing destinations are the routes for multicast [18]. The end-to-end QoS requirements are expressed as constraints from the source to the destinations and are given by the following.

The delay (DL) is the maximum delay along any branch of the tree. A penalty is added if no link is found between two nodes. Consider

The bandwidth (BW) of the multicast tree is the average bandwidth requirement of all the tree branches. Consider

The delay-jitter (DJ) is the maximum delay variation along any branch of the tree. Consider

The packet loss rate is the average packet loss along the tree branches. The cutoff for PLR is set at 10%. If a branch is having more than 10% packet loss, then a penalty is assigned, such that the model tries to search a path less than 10% PLR:The above QoS criteria have to be fulfilled with an objective to minimize cost function of the multicast tree as given by Thus the QoS routing problem is formulated as an optimization problem whose goal is to find a multicast tree such that the cost function is minimized subject to the constraints as follows: Subsequently the fitness function is defined as the sum of the cost function and penalized constraints as follows: wherewhere QD is delay constraint, QB is bandwidth constraint, QDJ is delay-jitter constraint, and QPL is packet loss constraint. Also , are the weights of bandwidth, delay, delay-jitter, and packet loss, respectively. In the next section, the solution methodology to solve the multicast QoS routing problem is explained in detail.

#### 3. Proposed Methodology

##### 3.1. Krill Herd Algorithm: An Overview

Krill herd algorithm (KHA) is a recently developed heuristic algorithm based on the herding behavior of krill individuals. It has been first proposed by Gandomi and Alavi [17]. It is a population based method consisting of a large number of krill in which each krill moves through a multidimensional search space to look for food. In this optimization algorithm, the positions of krill individuals are considered as different design variables and the distance of the food from the krill individual is analogous to the fitness value of the objective function. In KHA, the individual krill alters its position and moves to the better positions. The movement of each individual is influenced by the three processes, namely, (i) induction process, (ii) foraging activity, and (iii) random diffusion. These operators are briefly explained and mathematically expressed as follows.

*(i) Induction.* In this process, the velocity of each krill is influenced by the movement of other krill individuals of the multidimensional search space and its velocity is dynamically adjusted by the local, target, and repulsive vector. The velocity of the th krill at the th movements may be formulated as follows [17]:where is the maximum induced motion; and are the induced motion of the th krill at the th and movement; is the inertia weight of the motion induced; and are the worst and the best position, respectively, among all krill individuals, of the population; , are the fitness value of the th and th individuals, respectively; is the number of krill individuals surrounding the particular krill; and are the current iteration and the maximum iteration number.

A sensing distance () parameter is used to identify the neighboring members of each krill individual. If the distance between the two krill individuals is less than the sensing distance, that particular krill is considered as neighbor of the other krill. The sensing distance may be represented by [17]where is the population size; and are the position of the th and krill, respectively.

*(ii) Foraging Action.* Each individual krill updates its foraging velocity according to its own current and previous food location. The foraging velocity of the th krill at the movement may be expressed by [17]where is the inertia weight of the foraging motion; and are the foraging motion of the th krill at the th and movement.

*(iii) Random Diffusion.* In KHA algorithm, in order to enhance the population diversity, random diffusion process is incorporated in krill individuals. This process maintains or increases the diversity of the individuals during the whole optimization process. The diffusion speed of krill individuals may be expressed as follows [17]:where is the maximum diffusion speed; is a directional vector uniformly distributed between (−1, 1).

*(iv) Position Update.* In KHA, the krill individuals fly around in the multidimensional space and each krill adjusts its position based on induction motion, foraging motion, and diffusion motion. In this way, KHA combines local search with global search for balancing the exploration and exploitation. The updated position of the th krill may be expressed as [17]where is the number of control variables; and are the maximum and minimum limits of the th control variable; is the position constant factor. The above procedure will be used to optimize (7) for MANET routing optimization.

##### 3.2. Differentially Guided Procedure

This procedure is incorporated in the movement induced by other krill individuals. In the original KHA, the velocity of the th krill at the th run is given in ( 10 ). The vectors show the induced directions by different neighbors and each value presents the effect of a neighbor. The neighbors’ vector can be attractive or repulsive since the normalized value can be negative or positive. For choosing the neighbor, in original KHA a sensing distance () is adopted. Instead of such choice, where the krill individuals update the position in comparison with one-to-one (as in original KHA), this research proposes a new mechanism whence the induction stage uses the position information from various krill individuals at random.

*Differential Guiding Mechanism*. All krill individuals can generate new positions in the search space using the information derived from different krill individuals’ using best information. To ensure that a krill individual learns from good exemplars and to minimize the time wasted on poor directions, we allow the krill individual to learn from the exemplars until the krill individual ceases improving for a certain number of generations called the refreshing gap. We observe three main differences between the DGKH algorithm and the original KHA [17].(1)Once the sensing distance is used to identify the neighboring members of each krill individual, as exemplars to update the position, this mechanism utilizes the potentials of all krill individualsas exemplars to guide a krill individual’s new position.(2)Instead of learning from the same exemplar krill individual’s for all dimensions, each dimension of a krill individual in general can learn from different krill individuals for different dimensions to update its position. In other words, each dimension of a krill individual may learn from the corresponding dimension of different krill individual based on the proposed equation (15).(3)Finding the neighbor for different dimensions to update a krill individual position is done randomly (with a vigil that repetitions are avoided). This improves the thorough exploration capability of the original KHA with large possibility to avoid premature convergence in complex optimization problems.Compared to the original KHA, DGKH algorithm searches more promising regions to find the global optimum. The difference between KHA and DGKH is that the differential operator applied to only accept the basic KHA generating new better solution for each krill instead of accepting all the krill updating adopted in KH. This is rather greedy. The original KHA is very efficient and powerful but is highly prone to premature convergence. Therefore, to evade premature convergence and further improve the exploration ability of the original KHA, a differential guidance is used to tap useful information in all the krill individuals to update the position of a particular krill individual. The following expresses the differential mechanism:where is the first element in the dimension vector , is the th element in the dimension vector , is the first element in the dimension vector , and is the random integer generated separately for each , between 1 to , but .

Figure 1 shows the differential mechanism for choosing the neighbor krill individual for ( 10 ). This assumes that the dimension of the problem as 5 and assumes krill size as 6 are in the search. Once the neighbor krill individuals are identified using the sensing distance, the th individual position will be updated (with all neighbor krill individuals) as shown in Figure 1. This is in an effort to avoid premature convergence and explore a large promising region in the prior run phase to search the whole space extensively.

#### 4. Experimental Analysis

Numerical Simulations were carried out to validate the performance of the proposed DGKH based QoSR algorithm and experimental analysis is performed on a test network [12] as shown in Figure 2, on three different cases. For Case constraint Set1, delay constraint , delay-jitter constraint , and bandwidth constraint . In Case constraint Set2, delay constraint , delay-jitter constraint , and bandwidth constraint . In Case in addition to the constraints Set 2, packet loss rate constraints are also taken into account. For the packet loss rate constraint, we set as used in [4], since ad hoc networks are high mobility networks with limited resources. Also considering all these parameters can indicate timeliness and precision which is used to measure the output performances of a routing algorithm.

First two cases are studied to establish the superiority of the proposed DGKH based QoSR in comparison to the existing QPSO method. The proposed DGKH algorithm was executed for 30 trials on each case. The performance of the proposed algorithm from the perspectives of the best multicast tree obtained, best fitness value, average fitness value, convergence speed, and so forth is demonstrated.

The multicast tree with the best fitness value of Cases and that satisfies the constraints estimated out of 30 runs of each algorithm is shown in Figure 3. The least cost, delay, and delay-jitter of each identified multicast tree are summarized in Table 1.

**(a)**

**(b)**

In addition the mean and standard deviation of the best fitness values in 30 trial runs of all algorithms under consideration are also listed. The averaged values are obtained for delay and delay-jitter over all the paths of the multicast tree from the source node to the end nodes. It is proved that for both cases of the constraint sets, the best fitness value of the multicast trees generated by both QPSO [12] and proposed DGKH have the same least costs with the considered constraints, informing that DGKH algorithm could guarantee better multicast tree than QPSO, PSO and GA [12].

To demonstrate the convergence properties of the algorithms under considerations, the convergence graph of both KHA and DGKH algorithm on the problem is experimented and plotted. Since this research did not implement other algorithms which are used for comparison, the KHA and DGKH algorithms are considered. Figure 3 traces the dynamic changes of cost, average delay, and average delay-jitter with the development of iteration for two algorithms, that is, QPSO [12] and the proposed DGKH algorithm. As evident from Figure 3, the convergence speed of DGHK is better. It conveys that proposed DGKH algorithm has stronger search ability than QPSO on the tested problem.

To validate the proposed algorithm with additional constraints as mentioned in Case , the network under consideration is amended by including the packet loss rate constraint in the last part of the representation. Thus the features of the edges in the proposed network, as shown in Figure 4, are arranged by a pentuple (D, DJ, B, C, PL) with the components representing delay, delay-jitter, band width, cost, and packet loss, respectively. The multicast tree as shown in Figure 5, with the best fitness value of Case , that satisfies the constraints estimated out of 30 runs of each algorithm, is shown in Figure 5. The least cost, delay, delay-jitter, and packet loss of each identified multicast tree for Case are also summarized in Table 1.

**(a)**

**(b)**

#### 5. Experiments on Scalability

In this section, numerical simulations were conducted in order to investigate the scalability of the proposed DGKH algorithm. To achieve this objective, we used the network topologies created by Salama stochastic network topology generation [4, 12]. The data is adopted from [12] for comparison purpose and is shown in Table 2. Here the packet loss rate constraints are relaxed as the purpose of this section is to demonstrate the scalability of the proposed DGKH algorithm for QoSR. The number of nodes of each network was set randomly from 10 to 100. Table 3 summarizes the results of the proposed algorithm. Due to the space limitation, we only show in Figure 6 the convergence properties of the algorithms averaged over 30 runs on the problem under constraint Set 2 for Case .

The other parameters of each algorithm were configured as in the first group of experiments. The algorithms were evaluated from angles of least cost of obtained multicast tree, execution time, and routing request success ratio.

By simulation, scalability of the algorithm with the problem size was evaluated according to execution time and least cost of the obtained multicast tree. For comparison purpose the plots of the proposed DGKH algorithm is merged with the plots of the QPSO method. We did not implement the QPSO at any part of this research. The values of QPSO [12] are taken from the simulation software. Figure 7 shows the least cost generated by each algorithm that is averaged over different constraints for the problems with different numbers of network nodes. It can be observed that the multicast tree obtained by DGKH on each problem has best fitness value compared to the QPSO method; establishing it can generate the higher-quality solutions on the multicast routing problems in MANETS. Figure 8 shows the execution time of the two algorithms in comparison to the problems with different numbers of network nodes. The results convey the superiority of the proposed method, as the QPSO is more time consuming than DGKH on the problems with the same network scale. In summary both the DGKH and the QPSO, algorithms for QoSR in MANETS, seem to consume almost the same amount of simulation time on the problem with the same scale. In conclusion, when comparing two algorithms for OoS in multicast routing problem of MANETs, DGKH method could generate best multicast trees (with best fitness (cost) values) compared to QPSO. Additionally to find out the solutions with same quality, the DGKH algorithm has consumed (comparatively) least computational time among its contestant algorithm QPSO.

The performance of the algorithm can also be evaluated by the routing request success ratio given by where is the number of successful routing requests and is the number of all routing requests.

Successful routing request means that the multicast tree obtained by the algorithm satisfies the bandwidth, delay, and delay-jitter constraints [18]. It is, however, too complicated to compare all of the QoS parameters synchronously. Therefore, the performance is verified by each of QoS parameters. The comparison of routing request success ratios among DGKH and QPSO is curved and shown in Figure 9. It is proved that DGKH has the highest success ratio according to each QoS parameter and thus has the best convergence performance.

**(a)**

**(b)**

**(c)**

#### 6. Conclusion

A QoS multicast routing method based on a modified krill herd algorithm is proposed in this paper. Searching for the feasible/optimal route after simultaneously satisfying more than one QoS constraint in wireless mobile ad hoc networks is classified as an NP-complete problem. This research considers four different constraints while optimizing the total cost of the multicast tree. Hence the original krill herd algorithm is refined to perform the thorough exploration of the search space by differentially guided mechanism to update their krill individual positions. Experimental result reveals the proposed that DGKH algorithm can search the solution space in a very effective and efficient manner. Simulation results also shows that the proposed algorithm can search the better multicast trees with rapider convergence speed effectively compared with other algorithms.

As a future work, we plan to consider other heuristic techniques for estimation of multicast routing considering other constraints like queuing delays, propagation error, maximum link utilization, bandwidth consumption parameters, blocking probability, and so forth as multiobjective optimization problem.

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.