• Aucun résultat trouvé

Les approches distribuées

3.2 Approches existantes d’ordonnancement d’activité des noeuds 46

3.2.2 Les approches distribuées

Obtenir un comportement global cohérent à partir de décisions prises

locale-ment est l’objectif principal d’une approche distribuée. Chaque nœud décide

de sa propre activité en se basant sur l’observation de ses propres voisins. Il

n’existe aucune hiérarchie ni infrastructure. Le comportement de chaque nœud

est devenu influencé uniquement que par ceux de ses voisins directs. Ce qui

nous permet de passer facilement à l’échelle et obtenir en conséquences des

solutions plus robustes. Dans cette partie, nous présentons quelques exemples

d’algorithmes distribués.

Un algorithme simple d’ordonnancement distribué appelé "Peas" a été

pro-posé dans [160]. Initialement, tous les nœuds sont en mode inactif.

Périodique-ment, un nœud quitte ce mode et diffuse un message de sondage dans une zone

de communication de rayonR. Si aucune réponse n’est reçue durant une période

de temps définie, il reste actif jusqu’à ce qu’il épuise sa batterie. Sinon, un voisin

qui se trouve à une distance inférieure àP répond à l’émetteur lui permettant

de repasser en mode veille. La valeurP est choisie en fonction de la densité des

nœuds désirée (nombre de capteurs par unité de surface), alors que la période

50CHAPITRE 3. Génération automatique d’un ordonnancement des activités de noeuds

pour qu’un nœud s’active et émet le message dépend de la période de détection.

Cette approche distribuée est tolérante aux fautes (perte de messages, panne

d’un nœud, etc..). Par contre, il ne garantit pas la couverture totale de la zone

d’intérêt.

Un autre mécanisme de couverture distribué est proposé par Tian et

Geor-ganas dans [147]. Le fonctionnement de cet algorithme est divisé en cycles, où

chaque cycle commence par une phase d’auto-ordonnancement suivie d’une

phase de détection. Au cours de la première phase, les nœuds vérifient la règle

d’éligibilité d’être inactif. Un nœud est dit éligible si ses nœuds voisins (sponsors)

surveillent sa région de détection. Pour obtenir les informations de ses voisins,

chaque nœud diffuse un message d’avertissement au début de chaque cycle. Ce

message contient l’identité et la localisation du nœud. Si plusieurs nœuds voisins

prennent la décision d’être en veille simultanément alors il se peut qu’il y ait

occurrence de points "noirs" (zones non couvertes). Pour éviter ce problème, un

back-offest utilisé où chaque nœud commence l’évaluation de la règle après un

temps aléatoire, puis il diffuse un messageADV pour annoncer s’il est prêt à

se désactiver. Avant de se désactiver, le nœud attend encore une périodeT W

pour écouter les mises à jour de ses voisins. Les résultats des simulations ont

montré que cet algorithme permet de diminuer considérablement le nombre de

nœuds actifs et d’augmenter la durée de vie d’une moyenne de 1,7 fois, tout en

conservant une couverture totale du réseau.

Dans [166], Zairi et al proposent l’algorithme ERGS comme une amélioration

du protocole [147]. L’algorithme ERGS repose sur l’idée d’exploiter l’énergie

restante pour décider quel nœud doit entrer dans l’état de veille. La première

caractéristique principale de l’algorithme ERGS consiste à appliquer un principe

d’équité en équilibrant l’énergie restante des nœuds. La deuxième caractéristique

consiste à éviter les phases de négociation, car la décision d’entrer dans l’état de

veille utilise une priorité calculée basée sur une connaissance de voisinage à un

saut. Cela contribue à prolonger la durée de vie du réseau, par la réduction des

échanges de messages d’une part, et par l’évitement des points noirs (points non

couverts) d’autres part.

CKN [108] est un algorithme distribué qui permet de désactiver les nœuds

re-dondants tout en satisfaisant la K-connectivité. Si un nœud a moins que k-voisins,

3.2. Approches existantes d’ordonnancement d’activité des noeuds 51

aucun de ses voisins ne se désactive pas, et s’il a plus que K-voisins, au moins

K d’entre eux doivent rester actifs. Le paramètrek utilisé par cet algorithme

désigne le nombre minimal exigé de voisins actif pour chaque nœud. Le choix

de nœuds actifs est complètement basé sur les rangs qui sont aléatoirement

obtenus au début de l’exécution de l’algorithme (CKN) dans chaque période, et

l’ensemble des nœuds actifs change d’une période à une autre.

CKN ne peut pas assurer une consommation énergétique uniforme, ce pour

cela, un nouvel algorithme d’ordonnancement (EC-CKN), basé sur CKN, est

développé, "Energy Consumed Uniformly Connected K-Neighborhood

algo-rithm" [165]. Dans (EC-CKN) l’information de résidus énergétiques des nœuds

est un paramètre important pour déterminer les nœuds qui doivent être actifs.

Un nœudSu diffuse son résidu énergétique courantEranku puis il calcule un

ensemble Eu des voisins ayant Erank > Eranku. Avant qu’il choisisse de se

désactiver,Sudoit être sûr que tous les nœuds de l’ensembleEu sont connectés,

Erank > Eranku et chacun de ses voisins a au moins k-voisins de l’ensemble

Eu. Ces exigences assurent que si un nœud a moins quekvoisins, aucun de ses

voisins ne se désactive pas, et s’il a plus quekvoisins, au moins kd’entre eux

doivent rester actifs. Ces exigences sont faciles à garder en calculant localement

les informations des voisins à 2 sauts. Cependant, ce protocole exige un niveau

élevé de synchronisation et de communication entre les noeuds voisins, sans

prendre en considération les limites qui caractérisent les réseaux de capteurs

tels que la faible capacité de stockage et de calcul.

Un autre algorithme d’ordonnancement distribué proposé récemment dans [76],

appelé DiLCO (Distributed lifetime coverage optimization protocol in wireless

sensor networks), qui maintient la couverture et améliore la durée de vie d’un

réseau de capteurs sans fil. Tout d’abord, la zone d’intérêt est divisée en

sous-régions en utilisant la méthode classique de diviser pour mieux régner. Dans une

deuxième étape, une méthode distribuée est appliquée dans chaque sous-région

pour optimiser la couverture et les performances de la durée de vie du réseau.

Dans une sous-région, DiLCO consiste à choisir un nœud leader qui va ensuite

effectuer un ordonnancement d’activité des autres noeuds de sa sous-région.

Les défis incluent comment sélectionner le leader le plus efficace dans chaque

sous-région et le meilleur ensemble représentatif de nœuds actifs pour assurer

52CHAPITRE 3. Génération automatique d’un ordonnancement des activités de noeuds

un niveau élevé de couverture. L’impact du nombre de sous-régions choisies

pour subdiviser la zone d’intérêt est aussi étudié dans ce travail, en considérant

différentes tailles du réseau. Les expériences montrent que l’augmentation du

nombre de sous-régions améliore la durée de vie. Plus il y a de sous-régions, plus

le réseau est robuste contre la déconnexion aléatoire résultante de nœuds "morts".

Cependant, les auteurs n’ont pas trouvé le nombre optimal de sous-régions.

Dans [106] Mostafaei et al. proposent l’algorithme PCLA qui se concentre

sur le problème de la couverture partielle, en ciblant des scénarios dans lesquels

la surveillance continue d’une partie limitée de la zone d’intérêt est suffisante.

PCLA repose sur les automates d’apprentissage "Learning Automata" pour

or-donnancer les noeuds ( mode actif ou veille). Il vise à minimiser le nombre de

noeuds à activer de sorte qu’une partie désirée de la zone d’intérêt soit couverte

et que la connectivité entre les capteurs soit préservée.