• Aucun résultat trouvé

Dans ce chapitre, nous étendons un protocole de routage basé sur les méta-heuristiques, particulièrement la technique d’optimisation par colonies de fourmis (ACO). Ce protocole montre des propriétés souhaita- bles pour les RCSFs en termes d’adaptabilité, de scalabilité et de ro- bustesse. Cependant, l’utilisation des techniques d’ACO dans les RCSFs présente deux inconvénients majeurs, notamment le temps de conver- gence nécessaire pour trouver un chemin et la surcharge du réseau par les paquets de routage.

Notre objectif dans ce chapitre est donc de faire face à ces incon- vénients afin de fournir la meilleure QoS possible en termes de délai et

CHAPTER 3: SWARM INTELLIGENCE ROUTING APPROACH 38 de taux de paquets reçus(PDR). Ainsi, nous avons proposé une améliora- tion du protocole AntNet en optimisant les chemins trouvés, changeant la façon de mettre à jour le phéromone, et en introduisant de nouveaux con- cepts tel que la liste des ancêtres. Les résultats de plusieurs simulations sur NS2 montrent que notre proposition a de meilleures performances par rapport à la version initiale du protocole AntNet et par rapport à l’AODV.

3.1 INTRODUCTION 39

3.1 Introduction

Transmitting the collected information through WSNs imposes many challenges. In fact, satisfying the need for high QoS metrics performance such as delay, packet delivery ratio or overhead requires dedicated solution at each layer of the commu- nication stack. In addition, due to the limited energy resources of the WSNs, an efficient energy policy must be designed to extend the network lifetime.

Furthermore, routing with QoS constraints has been shown to be NP-complete prob- lem [31, 32]. Among the solutions addressed to tackle such problem are those based on the meta-heuristic approach, specially the Ant Colony Optimization (ACO) [36, 107]. In fact, by using ants and other social swarms as a model, software agents can be launched to solve many complex problems such as traffic routing in busy communication networks. However, the ACO solution incurs two main disadvan- tages. In fact, in the case of high density network , the convergence time needed to reach the destination becomes very significant. Also, the generated overhead grows dramatically which leads to more consumption energy.

In this chapter, we will discuss an enhancement of the AntNet routing protocol [26] which is based on the stigmergy driven shortest path following the biological ant’s behaviour. According to the AntNet analysis given in [25], the robustness and near optimal performance of the AntNet algorithm makes it an attractive solution for routing in communication networks. In addition, AntNet algorithm performs better than shortest path routing under varying traffic loads. Our main goal is to reduce the inherent AntNet disadvantages effects, namely the convergence time and the overhead cost, while keeping an acceptable QoS level. We achieve our goal by optimizing the found paths, modifying the updating pheromone policy and introducing the Ancestor list approach. We have called our solution Enhanced- AntNet protocol. Simulation scenarios conducted over the NS2 simulator have shown promising results in terms of delay, PDR, overhead and remaining energy. These results show the efficiency of our contributions.

The remain of this chapter is organized as follows: in Section 3.2, we give an overview of the ACO functionality with a discussion of some related works. In Section 3.3, we present our enhancement of the AntNet protocol. In Section 3.4, we present the studied scenarios and we discuss the simulation results. Finally, Section 3.5 concludes this chapter.

3.2 ANT COLONY OPTIMIZATION ROUTING 40

3.2 Ant colony Optimization routing

One of the most successful swarm intelligence techniques employed in routing prob- lem is the ACO [28]. This optimization algorithm is used to find approximate solu- tions for difficult combinatorial optimization problems such as Travelling Salesman Problem (TSP). We can say that during the last two decades, ACO has served as an important source of inspiration for the design of novel algorithms and systems [70]. As described in [29], when ants are out searching for food, they leave their nest and walk toward the food. When an ant reaches a crossroad, it must decide which way to follow. While walking, ants deposit pheromones, leaving behind tracks of the route taken. Ants can smell pheromone and they are more likely to follow paths characterized by strong pheromone concentrations. The pheromone trails allow ants to find their way to the food source, or back to the nest. The same pheromone can be used by other ants to find the location of the food sources discovered by their mates.

The routing protocols based on the meta-heuristic approach, especially the ant colony optimization, show desirable properties of being adaptive, scalable, and robust. Such characteristics make this kind of protocols more suitable for QoS-constrained appli- cations.

According to [22], the ACO routing displays several features making it particularly suitable for WSNs, these features are summarized as follows:

– the algorithm is fully distributed; there is no single point of failure. – at every node, the operations to be performed are very simple.

– the algorithm is based on agent’s asynchronous and autonomous interactions. – the algorithm is characterized by its self-organization capacity and robustness;

so we do not need to define a path recovery algorithm.

– it inherently adapted to all kinds of long-term variations in topology and traffic

demand, which are difficult to take into account by deterministic approaches.

Related work

Here, we review some routing protocols proposed in the literature that are designed for WSNs and based on the ant colony optimization.

– ASAR (an Ant-based Service-Aware Routing algorithm for multimedia sen-

sor networks) [80]: this protocol defines three different services for sensor net- works, namely, event-driven, data query and stream query services. The ASAR chooses suitable paths to meet diverse QoS requirements from different kinds of

3.2 ANT COLONY OPTIMIZATION ROUTING 41

services in order to improve network performances and maximize network uti- lization . Compared to the typical routing algorithm in sensor networks and the traditional ant-based algorithm, ASAR algorithm has better convergence and provides better QoS for multiple service types in multimedia sensor networks.

– EEABR (Energy-Efficient Ant-Based Routing Algorithm) [21]: it uses ant

agents that travel through the network looking for paths between the source node and the destination node in such a way to maximize the WSNs lifetime. The constructed path must be short in terms of number of hop and energy- efficient. Each ant chooses the next hop node with a probability depending on the node energy and the pheromone amount of the node’s connections. The simulation results show that the EEABR protocol minimizes communication load and maximizes energy saving.

– AntHocNet [27]: this protocol can be described as a hybrid algorithm, since it

combines a reactive path set-up with a proactive path probing, maintenance and improvement. The protocol aims to design an algorithm which works effi- ciently in MANETs while maintaining the properties which make ACO routing algorithms so appealing. Simulation shows that the AntHocNet outperforms AODV compared to different evaluation metrics like delay and overhead. The performance advantage is visible over a broad range of possible network sce- narios.

– M-IAR (Multimedia-enabled Improved Adaptive Routing) [65]: it is a flat

multi-hop routing protocol that exploits the sensor nodes location in order to select the best routing path. The author relies on the point that finding the shortest path with the least number of forwarding nodes will help achieving the least end-to-end delay and the best jitter conditions. So the M-IAR protocol finds the shortest path between the source and the destination node, which leads it to satisfy the communication constraint and the multimedia processing cost.

AntNet description

Here, we will present an overview of the AntNet algorithm that was the starting for our work. The algorithm works as follows:

– The protocol is proactive, therefore, during each time interval, a forward ant

(FANT) Fs→d is launched from every network node s towards a randomly se- lected destination node d.

– The forward ants memorize the address of each visited node and the departure

3.3 ENHANCED ANTNET PROTOCOL 42

as data packets, so they experience the same traffic delays.

– The ants, once generated, are considered as autonomous agents. They act

concurrently, independently and asynchronously. They communicate in an in- direct, stigmergic way, through the information they locally read from and write to the nodes.

– The forward ant migrates from a node to an adjacent one towards its desti-

nation. At each intermediate node, a stochastic decision policy is applied to select the next node to move to. The parameters of the local policy are: (i) the local pheromone variables, (ii) the status of the local link queues, and (iii) the information carried into the ant memory (to avoid cycles). The decision is the results of some tradeoff among all these components.

– Once arrived at destination, the forward ant becomes a backward ant (BANT) Bd→sand goes back to its source node by moving along the same path as before

but in the opposite direction. For its return trip the ant uses higher priority queues than those used by data packets in order to quickly retrace the path.

– Arriving at a node k coming from a neighbour node h, the backward ant updates

the routing table Tkfor all the entries corresponding to the destination node d.

– Once they have returned to their source node, the agent is removed from the

network.

3.3 Enhanced AntNet protocol

Now we will discuss our optimizations that we have made over the initial version of the AntNet protocol. These optimizations can be classified into two categories:

3.3.1 Adaptation for wireless communications

This first category summarises some required modification to the basic version of the AntNet protocol. First of all, we need to adapt the AntNet protocol to the wireless environment since it has been designed for fixed networks. After that, we add a priority queuing mechanism allowing traffic classification at the network layer. Also, we add a neighbour discovery mechanism to detect the wireless neighbourhood nodes. Some of these modifications were inspired from others works like [27] and [21]. Also, we were led to make some changes to the packet classes and to the node structure as we describe in what follows:

(a) Packet Classes

3.3 ENHANCED ANTNET PROTOCOL 43 – Data packet: represents the information which must be transmitted by the

sensor node.

– Control packet: can be subdivided into two types: Forward ants used to

search the path to reach destination and Backward ants used to update the routing tables. The control packets contain the following information: the packet ID, the destination address, the generation time (the time when the ant has been generated), the arrival time (the time when the ant reaches the final destination), and finally the memory stack that contains the visited nodes addresses and the departure time towards the next hop.

– Hello packet: is used to build the neighbourhood of every node over the

network. The HELLO packets are broadcasted periodically during the discovery period from each node to all its neighbours.

(b) Node’s routing table

Each node k has a routing table Tk that the routing agents can interact with in an indirect way. The routing table, as shown in Table 3.1, contains the triplet (d,n,ψnd), where d is the destination address, n is the neighbour used as next

hop to reach this destination and ψnd is the pheromone value. Contrary to the original work, where each node can potentially be a destination, we make the assumption that there is one destination in the network commonly called sink.

Table 3.1: Routing table at node k Destinations Neighbour Pheromone

d a ψad b ψbd c ψcd ... ... ... ... n ψnd

The ψnd value expresses the accuracy of choosing the associated next hop n to

reach the destination d. The sum of the pheromone value in the neighbourhood have to verify: ∑n∈N

kψnd = 1, where Nk is the neighbour set of the node

k. The ψnd value is initialized after the neighbour discovery period to 1/|Nk|.

The routing table Tk is updated by incrementing (Eq 3.1a) or decrementing (Eq 3.1b) the pheromone value ψnd.

ψnd ← ψnd+ r∗ (1 − ψnd) (3.1a)

3.3 ENHANCED ANTNET PROTOCOL 44

Where r is a reinforcement parameter in the interval [0,1]. Concerning the next hop selection, we substitute the policy in AntNet protocol by that used in [27]. In fact, the AntNet policy is based on the availability of the queue size information of neighbour nodes. However, such information needs a significant control packets to be accurate. Hence, we adopt the same policy as in [27] and we differentiate two cases:

(a) In the forward ant case, the next hop n is selected with the probability Pnd:

Pnd =

(ψnd)β

m∈Nk(ψmd)

β, β≥ 1, (3.2)

(b) In the data case, the next hop n is selected with the probability Pnd :

Pnd = (ψnd)

β

m∈Nk′(ψmd)β

, β≥ 1, (n ∈ Nk′), (3.3) where Nk is the set of neighbours over which a path to the destination is available.

For the two cases, β is a parameter value which can control the exploratory behaviour of the ants.

3.3.2 Proposed improvements

The second category of optimization that we made contains all functions and meth- ods added in order to make the protocol more robust and more suitable for WSNs. We denote our proposition: Enhanced-AntNet. In what follows, we describe all these functions and methods.

(a) Path optimization.

The goal here is to minimize the number of hops of the path constructed by the forward ant. Optimization is performed by removing redundant nodes and also nodes contained in the same neighbourhood. It means that if the next hop is a neighbour of the previous node, that is already in the path, then the current node will not be part of the final path. Figures 3.1a and 3.1b show an example of non optimized and optimized path, where the node a is the source and the node d is the destination.

(b) Pheromone initialization.

The second change we made is to modify the manner that the forward ant chooses the next hop. As described in 3.2, a stochastic decision policy is ap- plied to select the next node to move to. But, if the destination is a neighbour, there is no need to calculate this probability. So we forward the ant directly to

3.3 ENHANCED ANTNET PROTOCOL 45

(a) Non optimized path (b) Optimized path

Figure 3.1: Unoptimized and optimized path

the destination, of course this is not a big change, but its impact on the results is important. To do so, we initialize the pheromone value of nodes neighbour to the destination to 1 and not to 1 divided by N, where N is the number of neighbours.

(c) Reactive mechanism.

The initial version of the protocol is proactive, it tries to create multiple paths from fictitious sources to destinations. It is the case for other works as in [21, 80]. However, this anticipation generates a high overhead. Also, in a large topology case, it would be useless to create paths that will probably never be used. An existing solution in the literature consists to use a hybrid FANT generation as in [22, 27]. It means that the paths are set-up with reactive ant process and during the data session, these paths are probed, maintained and improved proactively using specific ant’s agents. However, maintaining a proactive generation during the data transmission phase affects the received data quality. Therefore, we adopt the reactive approach to avoid these problems. Also, using the reactive manner will reduce congestion phenomena since the control packets are reduced. (d) Ancestor list.

When the source node needs to find a path to the destination, it generates FANT which is responsible for constructing the path. However, to succeed many pa- rameters affect the search process, as the generation FANT’s frequency, the topology size, the node density within the neighbourhood, and also the dis- tance from the source to the destination. Therefore, in order to increase the likelihood to find the path and accelerate the research, we applied a mecha- nism such that each node receiving a FANT generates itself another FANT to

3.3 ENHANCED ANTNET PROTOCOL 46

the same destination (is a kind of mutual help between nodes). To reduce the number of generated FANT, only nodes which receive a FANT coming from the source node can participate in the search process. However, in the case of success, every node that participates in the path search must report the found path to the source node. To do so, every node needs to maintain a history list nodes that we call ”Ancestor list”. This list is optimized and assigned to each node receiving a FANT (coming from the source node) before activating the forwarding process. Thus, in the backward ant phase the ant travels the reverse path to the source node and not to the node triggering the FANT.

(a) Send forward ant (b) Using list of ancestors by the backward ant

Figure 3.2: Forward and backward ant mechanism using the ancestor list

Figure 3.2a shows scenario case when the node a seeks a path to reach the node

D. In this case, the node a sends a forward ant F1, which will not succeed to

reach the destination (for example due to FANT loss). However, the forward ant F2 was sent once the F1 crosses the node b, and this time it reaches the destination. After that, the backward ant B2 was created to travel the reverse path until the source node (the green section of the path) as we can see in Figure 3.2b.

(e) Update pheromone

The update of the pheromone value is managed by the equations 3.1a and 3.1b. Or such update requires considerable time before converging to acceptable solution. This point becomes more significant in the case of large-scale topology. In order to accelerate the convergence time, we have changed the update policy by penalizing the neighbours that lead to the same destination with greater number of hops. The applied penalization is decreases by half the pheromone

3.4 SIMULATION RESULTS AND DISCUSSION 47

amount of such neighbours. Also, in the case of blocked nodes neighbours, we affect a null pheromone value. A blocked node is defined as a node having only one neighbour. Of course, the obtained solution is not necessarily the best, but the gain in convergence time is so important that we accept the obtained solution.

(f) Next hop selection

Most of routing protocols based on the ACO use a probabilist decision to select the next hop to forward data packets. In such cases, there is no predetermined paths between the source and the destination. Such behaviour helps to reduce the communication load in the topology by choosing different nodes depending on the probability value obtained by equation 4.1. However, it is not neces- sary helpful in the case of emergency information which requires lower latency. This is why we apply a deterministic selection of the next hop in the case of forwarding data packets. It means that, once the path is confirmed by the BANT agent, the next hop selection process will choose always the same nodes as determined by the BANT agent. Of course, we keep the stochastic decision for the FANT agents.

(g) Maintenance

The wireless environment is characterised by the instability of the communica- tion links due to many factors as the node mobility, the node energy shortage

Documents relatifs