A Fast Multi-objective Genetic Algorithm based Approach for Energy Efficient QoS-Routing in Two-tiered Wireless Multimedia Sensor Networks

With the growing demand for real time services in wireless Multimedia Sensor Networks (WMSNs), quality of service (QoS) based routing has emerged as an interesting research topic. But offering some QoS guarantee in sensor networks raises significant challenges. The network needs to cope with battery constraints, while providing QoS (end-to-end delay and reliability) guarantees. Designing such QoS-routing protocols that optimize multiple objectives is computationally intractable. Higher power relay nodes can be used as cluster heads in a two-tiered WMSN and these relay nodes may form a network among themselves to route data towards the sink. In this model, the QoS guarantee is determined mainly by these relay nodes. In this paper a solution based on NSGA-II is proposed for energy efficient QoS-routing in two-tiered WMSNs. Simulation results demonstrate that the proposed protocol outperforms network performance by optimizing multiple QoS parameters and energy consumption.


Introduction
Wireless sensor networks (WSNs) are a framework for the future ubiquitous environment and have many applications for home, health, military, and industry (Akyildiz et al., 2002).The concept of sensor networks lies in a set of smart, autonomous sensor nodes, equipped with heavily integrated sensing, processing, and communication capabilities that are networked in an ad hoc fashion.
Sensor nodes are usually powered by lightweight batteries, and replacing or recharging these batteries is often not feasible.Recently, researchers have proposed the use of some special nodes, called relay nodes within the network, for balanced data gathering, to achieve fault tolerance and to extend network lifetime (Bari et al., 2009).The relay nodes can be provisioned with higher energy as compared to the other sensor nodes in network.
In this paper, we consider a two-tiered network architecture, where relay nodes act as cluster heads and sensor nodes transmit their data directly to their respective cluster heads.However, the relay nodes are still battery operated and, hence, power constrained.
Today's wireless communication is a gradually changing paradigm from its existing voice-alone services to a new world of real time audio-visual applications.A main objective behind deployment of wireless sensor networks is to capture and transmit the pictures, videos, and important data to the sink.Such multimedia applications require strict quality-of-service (QoS) guarantee.However, QoS-routing is relevant to many factors such as the energy status of nodes in the network, and the delay, the bandwidth and the reliability requirements to transmit the data.Hence, good routing protocols have to make the comprehensive considerations of multiple factors to satisfy the transmission requirements of the different data.QoS parameters may be conflicting and interdependent, thus making the problem even more challenging.For example, short multiple-hops reduces transmission power but results in greater number of hops thereby, increasing the delay of the data transmission.
The objective of present work is to identify the major challenge in QoS-routing over sensor networks and providing optimal (or near-optimal) solutions.More specifically the contributions of this paper are the following: 1) Analyze QoS parameters, end-to-end delay and reliability (mainly measured by link quality), and energy consumptions in WSNs.
2) Develop an efficient protocol that determines a set of near-optimal routes, satisfying application-specific QoS-parameters, in WSNs using elitist non-dominated sorting genetic algorithm (NSGA-II).
3) Analyze the performance of our approach through simulations.
The rest of the paper is organized as follows.Section 2 reviews existing works in sensory routing protocols.In section 3 we explain network model and analyze QoS parameters.The basic concept of multi-objective optimization relevant to our context is highlighted in Section 4. The proposed energy-aware QoS-routing algorithm is described and illustrated in Section 5. Simulation results in Section 6 corroborate the fast optimization of the required QoS parameters and the efficiency of the protocol.And finally section 7 concludes the paper.

Related Works
Most protocols in WSNs are energy aware, which attempt to reduce the energy consumption of the nodes and balance the energy load of the network by all kinds of ways such as geographic information, data aggregation/fusion, and clustering technologies and so on.SPIN (Heinzelman et al., 1999) is probably the first data-centric routing protocol, which considers data negotiation to reduce redundancy and save energy.Directed diffusion (Intanagonwiwat et al., 2000) and its extensions provide different variations to conserve the energy for increasing the life-time of sensor networks.Location based protocols, such as, MECN (Rodoplu et al., 1999), SMECN (Li et al., 2001), GAF (Xu et al., 2001), GEAR (Yu et al., 2001), primarily rely on the accuracy of sensors' location information to calculate the optimal energy requirement.
The energy aware QoS-routing protocol in (Gao et al., 2006) finds a least cost energy efficient path, while meeting certain end-to-end delay constraints.SPEED (Hea et al., 2003), as another QoS-routing protocol, depends on state-less geographical non-deterministic forwarding to provide soft real time end-to-end QoS guarantee.Sequential Assignment Routing (SAR) (Sohrabi et al., 2000) is the first routing protocol for sensor networks that creates multiple trees routed from one-hop neighbors of the sink by taking into consideration both energy resources, QoS metric on each path and priority level of each packet.However, the protocol suffers from the overhead of maintaining the tables and states at each sensor node especially when the number of nodes is large.
A number of papers have demonstrated the usefulness of a Genetic Algorithm (GA) based approach in sensor networks (Pan et al., 2007), (Qiu et al., 2006), (Bari et al., 2009), (Saxena et al., 2009).The work of (Qiu et al., 2006) focused on deriving an energy efficient scheme that satisfy the required detection probability (Qiu et al., 2006) using a distributed GA.The work of (Pan et al., 2007) focused on finding an optimal traffic distribution to improve the lifetime of multi-sensor networks.
A GA based approach for routing in two-tiered sensor networks is proposed in (Bari et al., 2009) that only used energy optimization to maximize life time of network.QuESt (Saxena et al., 2009) is a routing protocol that uses MOGA (Srinivas et al., 1995) to find paths in a flat (non-clustered) wireless sensor network.

Network Model
For our model, we consider a two-tiered wireless sensor network, with n relay nodes acting as cluster heads and one base station (sink).We assume that each sensor node belongs to exactly one cluster and the routing schedule is computed by some centralized entity (e.g., the sink), which is not power constrained.
Sensor nodes transmit their data directly to their respective cluster head nodes (relay nodes) and then cluster head nodes perform the initial fusion of the received data and send them to the sink by the routing tree.According to the energy reserved in the node, the requested delay and the reliability, the sink node determines a routing tree in order to optimize QoS parameters (delay and reliability) and energy consumptions of wireless sensor network.
We represent the sensor network by a graph G = (V, E), where V is the set of relay nodes and E is the set of edges between the relay node-pairs, Figure 1 shows a two-tiered WSN with 4-relay nodes.
A path between a source relay node (v r ) and a destination sink (v d ) is represented by a sequence of nodes v r , v 1 , v 2 , . . ., v d , where v i V.There can be multiple such paths between a source-destination pair.Figure 2 shows two possible routing trees, considering 3 source relay nodes (4, 6, 7) and node 0 as the sink (destination).

Analysis of QoS parameters
The parameters that we consider in proposed routing algorithm are: 1) End-to-End delay, 2) Rreliability, and 3) Energy consumption.

End-to-End Delay
We use Weibullian distribution (Tang et al., 2006) as used in (Saxena et al., 2009) for modeling the delay.The delay over a particular route from a source to the sink is basically a sequence of links that is assumed to obey Weibullian distribution with parameter μ.Hence, the probability that the delay d p , over an individual path p of length k is less than t, is estimated using modified, heavy-tailed Erlangian distribution (Tang et al., 2006).

! 1
Where the constants α>0 is the scale parameter, and β is the shape parameter.Now, assuming the worst-case scenario with all independent paths in the routing tree, the probability that the delay of the selected tree (d Tree ) will meet the specific delay constraint, is obtained by taking the product of delays over individual paths in that tree: 2 We attempt to maximize this probability.

Reliability
We use ETX (De Coutoet al., 2005) as reliability metric to calculate the path reliability.ETX is defined as the expected number of transmissions (including retransmission) for a successful end-to-end data forwarding and hop-by-hop acknowledgment.The following expression shows how to compute the ETX metric for a path p consisting of links v 1 ,…,v n with forward delivery ratio of and reverse delivery ratio of for link v i : The forward delivery ratio is the measured probability that a data packet successfully arrives at the recipient and the reverse delivery ratio is the probability that the ACK packet is successfully received (De Coutoet al., 2005).
The entire routing tree reliability, R Tree , is calculated by taking the mean of the individual path reliability and then reversing it.
The objective of our routing protocol is to maximize the whole routing tree reliability.

Energy
Energy consumption in a relay node can be estimated using the energy used during data transmission (E T ) and energy used during data reception (E R ): Where d i,j is the Euclidian distance between node i and j, is the transmit energy coefficient, is the amplifier coefficient, m is the path loss exponent, 2 m 4, and θ is the receive energy coefficient.b represents the traffic bit-rate in the relay nodes, which is a factor of the current bandwidth.If L Tree represents the tree lifetime and E available represents the available energy of a relay node, then by using ( 5) and ( 6) we have: We also attempt to maximize L .
Therefore, an optimal route from all the source nodes to the sink needs to maximize all the three parameters.
Hence, the optimization problem can be stated as: Max (L Tree , P r (d Tree < t), R Tree ).

Multi-Objective Optimization Problem
In the case of a Multi-Objective Optimization (MOO) problem, there is usually no single solution that is optimum with respect to all objectives.There are a set of optimal solutions known as Pareto optimal solutions.Without additional information, all these solutions are equally satisfactory.The goal of MOO is to find as many of these solutions as possible.
In the research of Pareto front many methods have been proposed.David Schaffer first implemented a multi-objective evolutionary algorithm called the vector-evaluated genetic algorithm or VEGA in 1984 (Schaffer, 1984).His algorithm started off well but tended to converge to a single solution.To prevent the convergence to a single solution, Goldberg and Richardson (1987) suggested using a non-dominated sorting procedure coupled with a niching strategy called sharing.Sharing takes into account that individuals in the same niche must share the available resources.This concept is integrated into the Pareto genetic algorithm by increasing the cost of chromosomes as a function of their distance from each other.Closely grouped chromosomes will find their costs increased more than chromosomes that are spaced far apart.
The multi-objective genetic algorithm (MOGA) (Fonesca and Flemming, 1993) starts by finding all non-dominated chromosomes of a population and gives them a rank of one.These chromosomes are removed from the population.Next, all the non-dominated chromosomes of this smaller population are found and assigned a rank of two.This process continues until all the chromosomes are assigned a rank.The largest rank will be less than or equal to the size of the population.Usually there are many solutions that have the same rank.
The selection procedure uses the chromosome ranking to determine the mating pool.MOGA also uses niching on the cost to distribute the population over the Pareto optimal region (Haupt et al., 2004).
Non-dominated Sorting Genetic Algorithm (NSGA) ranks chromosomes in the same manner as MOGA.The NSGA algorithm then calculates a unique value.This unique value is related to the distance between each solution and its two closest neighbors.Distance may be calculated from the variable values or the associated costs.The resulting values are scaled between 0 and 1 and subtracted from the cost.Further information about the evolution of this method can be found in (Srinivas et al., 1995), (Haupt et al., 2004), (Deb et al., 2002).
Determining optimal routes satisfying multiple QoS parameters simultaneously, in an energy-aware sensor network is a NP-complete problem (Saxena et al., 2009).For the sake of brevity the proof is omitted.This motivates us to look for heuristics/approximate algorithms to obtain a near-optimal solution in computationally feasible time.
The goal of our approach is to find the solutions giving the best trade-off among the three objectives, known as Pareto optimal.MOGAs (Srinivas et al., 1995), (Deb et al., 2002) are recognized to be well qualified to tackle multi-objective optimization problems.And NSGA-II (Deb et al., 2002) is one of the most popular MOGAs.Some concepts of multi-objective optimization problem are defined as follows.
Multi-objective optimization problem: Given an n-dimensional decision vector x={x 1 ,…,x n } in the solution space X, find a vector x* that maximizes a given set of m objective functions f(x*)={f 1 (x*),…, f m (x*)}.
Dominance: A vector Q=(q 1 ,…,q n ) is said to dominate a vector R=(r 1 ,…,r n ) iff Q is partially more than R, i.e., i=1,…,n, q i r i i=1,…,n, q i r i .

Pareto optimal solution:
A solution x q is said to be Pareto optimal iff there is no x r for which R=f(x r )=(r 1 ,r 2 ,…,r n ) dominates Q=f(x q )=(q 1 ,q 2 ,…,q n ).
Pareto optimal set and front: A non-dominated set regarding X, represented by X p , X p X, is defined as X p ={ │ is non-dominated regarding X}.The corresponding objective function values in the objective space are defined as Y p =F(X p )={f( )│ X p }. X p is called the Pareto optimal set, and Y p is called the Pareto optimal front, see Figure 3.

Routing Algorithm and Protocol Details
The motivation here is to provide the user (sink) with a set of Pareto optimal solutions by the NSGA-II (Deb et al., 2002) algorithm and give it the flexibility to choose the best possible solution from this set, depending on the specific application requirements.
The chromosomes of a genetic algorithm contain all the building blocks to a solution for the genetic operators and the fitness functions.In our implementation, we finds a pool of possible routing paths from sink to each of source relay nodes, using a depth first search (DFS) algorithm, see Figure 4. DFS algorithm starts at root (sink).Then it finds the first relay node that is adjacent to the Sink.It repeats with this node and explore the first relay node that is adjacent to it.When a relay node is found that has no unexplored vertices adjacent to it then backtrack up one level.The algorithm terminates when all source relay node have been discovered and examined.At the end, DFS results in a forest of trees.
However, we note that our proposed protocol does not depend on the particular algorithm used for generating the initial population, and any suitable routing algorithm such as existing geographic routing techniques can also be used for this purpose.
Thus an initial set of routing trees is constructed.Each of these routing trees is mapped to a string consisting of the sequence of nodes along the path from each of the source relay nodes to the sink.The set of all such initial strings constitutes the initial population of chromosomes.Figure 5 shows the string representations of two routing trees of Figure 2.
The length of each chromosome is equal to the number of source relay nodes, but the length of genes is different based on path link count.In Figure 5 (A) the values of the gene 3 are 6, 1 and 0, indicating that node 6 transmits to the sink through node 1.Similarly, the values in gene 3 in Figure 5 (B) are 6,8,1,0, indicating that node 6 transmits to the sink through node 8 and 1.
For calculating objective functions, we need to derive paths of a tree from each chromosome.As we could see in Figure 5, each gene that ends to 0 (sink number) represents a path from a source relay node to the sink.
We assign each individual with three fitness functions, Energy consumption, Delay and Reliability.By introducing the non-dominated sorting approach and the crowded distance operator the replacement scheme is executed.First, a combined population R t = P t Q t is formed with the parent population P t and the offspring population Q t , where t is the number of generation.Therefore the population R t will be of size 2N.And it is sorted according to the non-domination and crowded comparison.By adding solutions from the first front till the size exceeds N, the new parent population P t+1 is formed.After that, the solutions of the last accepted front are sorted according to the crowed comparison and the first (N-Size (P t+1 )) points are picked.
In this way, the population P t+1 of size N is constructed.Subsequently, it is used for the circulated selection, crossover, and mutation to create a new population Q t+1 of size N.The recombination operator used in this paper is K-point crossover (k = 1, 2, or 3 selected randomly depended on the source node count).Figure 6 shows an example of single point crossover, with two parent chromosomes, Parent A and Parent B from Figure 5.After the crossover, two new child chromosomes, Child A and Child B, are generated.To give an equal probability to all genes for crossover, we select genes randomly.In fact, we create new routing trees by using the crossover operation.
After recombination, the mutation operator is applied to change some relay nodes in genes (paths) of the chromosomes (trees) of the offspring randomly.Indeed, mutation operator has been used to create new paths in routing trees.Mutation cannot be performed on any arbitrary relay nodes, as that may result in some illegal paths.So, to select a relay node for mutation, first a gene is selected from the chromosome randomly, and then a relay node like x at position i, x i , of the gene is selected randomly.Then x i changed with a randomly selected relay node y, where y belongs to the intersection of neighbors of relay node at i-1 position and relay node at i+1 position, y {neighbors (relay_node i-1 ) neighbors (relay_node i+1 )}.For example, Figure 7 shows a path between source node 8 and sink (0).Z 1 is the coverage area of relay node 1 and Z 7 is the coverage area of relay node 7. Hence, nodes 3, 4,5,6,8 are neighbors of node 7 and nodes 3, 4,5,2,0 are neighbors of node 1.So if node 3 has been selected for mutation it can be changed with relay nodes 4 or 5 because only these nodes are in intersection area of Z 1 and Z 7.This entire process is repeated until the difference of fitness values among the current Pareto optimal set and the previous one is less than a chosen precision (ε).The main procedure of algorithm is described below:

Simulation Experiments And Results
In this section, we will present the simulation results as the performance evaluation of our proposed protocol.We use OPNET Modeler 14.0 for simulation.The performance of our proposed algorithm is compared with SPEED (Hea et al., 2003) and SAR (Sohrabi et al., 2000) routing protocols in wireless sensor networks in terms of the end-to-end delay, energy consumption and reliability of data transmission.For our experiments, we use a 151-node network, with 40 relay nodes, 110 sensor nodes and a sink, which is not power constrained.Nodes are distributed in a 480 480 meter square area.The experiments were run several times with this strategy that relay nodes placed at predetermined grid points and the placement for other sensor nodes were randomly.To evaluate the performances of the protocols properly, experimental parameters of the three protocols were set as the same ones: 1) The values for the constants are the same as in (Bari et al., 2009), as follows: a) = = 50 nJ/bit, b) = 100 pJ/bit/m 2 and c) The path loss exponent, m=4.

2)
The range of each sensor (relay) node is 40m (200m), as in (Tang et al., 2006), and 3) The initial energy of each relay node is 5 J, as in (Tang et al., 2006).The performance of the genetic algorithm is greatly affected by a number of factors, such as the population size, the probability of mutation and crossover, and the method of replacement.We have run a number of experiments with different values of these parameters to determine the optimal set for our network size.Finally, the GA parameters used in our simulations are listed in table 1.Although we allow the GA to run for a maximum of 100 generations, we have observed that the best solution is typically found within 20 generations.
The end-to-end delay metric is compared between proposed routing protocol, SAR (Sohrabi et al., 2000) and SPEED (Hea et al., 2003) for wireless traffic in Figure 8.It explains that average end-to-end delay for wireless traffic is lower for proposed protocol than SPEED (Hea et al., 2003) and SAR (Sohrabi et al., 2000).This is because that in proposed protocol the packets have been routed to sink from the short delay paths.
With the decrease of the reliability in the network, the error rate of data transmission in the protocols increases as fast as the exponential principle.However, the error rate of data transmission in the proposed protocol is lower than SPEED (Hea et al., 2003) and SAR (Sohrabi et al., 2000) at fixed reliability (see Figure 9).The results are because the proposed protocol can keep away from the paths with low reliability (channel quality) and choose the best path with good channel quality from various paths, which reduces the error rate of data transmission.
Figure 10 delineates the comparative performance in terms of energy consumption of sensor nodes.Results show that the energy consumption of our proposed protocol is less than both SAR (Sohrabi et al., 2000) and SPEED (Hea et al., 2003) routing protocols.This shows the efficiency of the proposed protocol in reducing the energy consumption to near-optimal values, while optimizing quality of service parameters (end-to-end delay and reliability) as well.
To further inspect of the dynamics of sensory energy consumption, we have shown the average energy consumption in SPEED (Hea et al., 2003), SAR (Sohrabi et al., 2000) and the proposed protocol with different increasing traffic arrival rate in Figure 11.However, all the strategies result in increase of energy consumption with increasing traffic arrival, but our proposed protocol results in lowest energy consumption for different traffic arrival rates.This shows the efficiency of the proposed protocol.

Conclusion and feature work
In this paper, we have developed a QoS based, energy-aware routing protocol in two-tiered wireless sensor networks from the perspective of multi-objective optimizations utilizing NSGAII (Deb et al., 2002).Optimizing a particular objective function may sacrifice optimization of another dependent and conflicting objective.The proposed protocol efficiently optimizes the QoS parameters, reliability and end-to-end delay, and reduces average power consumption of nodes, in fact extending the lifetime of the network.Simulation results delineate the efficiency and performance of the proposed protocol.For the feature, we are investigating the implementation of the approach in a distributed manner and enhancing the NSGA-II for solving the combined problem of routing and clustering.
Table 1.GA parameters used for the simulation

Figure 1 .
Figure 1.An example of a two-tiered WSN

Figure 4 .
Figure 4. Pseudo code for creating initial routing tree Figure 10.Energy consumption of WSN