1 LEA2C : Une nouvelle approche de routage dans les

Transcription

1 LEA2C : Une nouvelle approche de routage dans les
LEA2C : Une nouvelle approche de routage dans les réseaux de capteurs pour
l’optimisation de la consommation d’énergie
Lahcene DEHNI *, Younès BENNANI *, Francine KRIEF +
* Laboratoire d'Informatique de Paris Nord
UMR 7030 du CNRS, Université Paris 13
+ LAboratoire Bordelais de Recherche en Informatique
UMR 5800 du CNRS, Université Bordeaux 1
99, avenue J.B. Clément - 93430 Villetaneuse
351, cours de la Libération - 33405 Talence Cedex
{ldehni, younes}@lipn.univ-paris13.fr
[email protected]
Résumé : L’utilisation des réseaux de capteurs ne devrait cesser d’augmenter et ceci dans de
nombreux domaines, que ce soit scientifique, logistique, militaire ou encore de la santé. La taille des
capteurs constitue, cependant, une limitation importante, principalement, en terme d’autonomie d’énergie
et donc de durée de vie car la batterie doit être très petite. C’est pourquoi, de nombreux travaux portent
aujourd’hui sur la gestion de l’énergie consommée par les capteurs dans un réseau en prenant en
considération, en premier lieu, les communications. C’est dans ce but, que nous avons proposé un
algorithme de routage adaptatif basé sur le clustering que nous avons nommé LEA2C. Ce dernier
s’appuie sur des techniques d’apprentissage connexionniste et plus exactement sur les cartes autoorganisatrices de Kohonen auxquelles nous avons ajouté de nouvelles règles pour le choix des
représentants des clusters. En comparant les résultats obtenus avec ce protocole à ceux d’autres méthodes
de clustering utilisées dans les réseaux de capteurs, à savoir LEACH et LEACH-C, nous avons pu
constater des gains en terme d’énergie et donc de durée de vie très intéressants.
Mots clés : Réseaux de capteurs, Clustering, Consommation d’énergie, Routage, Apprentissage
numérique, Cartes auto-organisatrices de Kohonen.
1. Introduction
Les réseaux de capteurs présentent un champ d’application très vaste, que ce soit, par exemple, dans le
domaine scientifique, logistique, militaire ou encore de la santé. Selon MIT’s Technology Review, il
s’agit de l’une des dix nouvelles technologies qui bouleverseront le monde et notre manière de vivre et de
travailler [EME03].
La batterie est un composant important d’un capteur. En général, elle n’est ni remplaçable ni
rechargeable. Elle peut être, en partie, alimentée par une unité génératrice d’énergie comme les cellules
solaires. De petite taille, elle fournit donc une quantité d’énergie très limitée à l’échelle de 1 à 2J par
nœud (capteur) [POT00]. Elle limite ainsi la durée de vie du capteur et influe sur le fonctionnement
global du réseau. C’est pourquoi, les protocoles permettant d’économiser l’énergie occupent, aujourd’hui,
un axe important de recherche dans ce domaine.
Un capteur assure l’acquisition, le traitement de données et les communications. C’est cette dernière
tâche qui est la plus consommatrice d’énergie. Un bon schéma de gestion d’énergie doit donc, en priorité,
prendre en compte les communications. La plupart des protocoles de communications dans les réseaux
Ad-Hoc ne s’adaptent pas aux particularités des réseaux de capteurs. D’où, la nécessité de les améliorer
ou de développer de nouveaux protocoles. Les deux principales classes de protocoles utilisées, à l’heure
actuelle, dans les réseaux sans fils, s’appuient sur la technique de routage multi-sauts ou le clustering
(voir une hybridation des deux). Plusieurs approches sont proposées pour calculer le chemin optimal dans
les protocoles de routage multi-sauts. Certaines proposent de prendre le chemin le plus court, en terme
de distance, vers la station de base [PER99]. D’autres, se basent sur le niveau d’énergie dans les nœuds
1
tout au long du chemin en privilégiant les nœuds ayant des quantités d’énergie maximales
[LIN98][SIN98]. D’autres encore, choisissent un chemin optimal en privilégiant certains nœuds dont la
présence dans le chemin permet de consommer moins d’énergie [SCO96].
Cependant, le premier inconvénient du routage multi-sauts dans les réseaux sans fils est la périodicité
des messages envoyés pour maintenir les itinéraires valides, ce qui a pour effet d’encombrer le réseau
et de consommer ainsi de l’énergie supplémentaire.
Le clustering (ou la classification) donne en revanche de meilleurs résultats [GHI02], c’est pourquoi
nous avons, également, retenu cette approche.
Il s’agit d’un problème de classification auquel l’apprentissage numérique s’est intéressé depuis
longtemps, notamment, les modèles connexionnistes et, plus particulièrement, les cartes topologiques
auto-organisatrices (SOM) de Kohonen. Ces dernières ont prouvé leur efficacité dans ce type de
problème.
Dans ce papier, nous proposons d’adapter une méthode d’apprentissage connexionniste non
supervisée, à la nature du problème traité en introduisant l’aspect évolutif et dynamique de la
classification. Cette nouvelle approche de classification évolutive permettra d’améliorer l’efficacité du
routage dans les réseaux de capteurs. En effet, le nouvel algorithme de routage que nous proposons donne
de meilleurs résultats que ceux obtenus par les protocoles LEACH (Low-Energy Adaptive Clustering
Hierarchy) [HEI00] et LEACH-C (Low-Energy Adaptive Clustering Hierarchy - C) [HEI02], ces derniers
étant basés, également, sur des méthodes de classification.
Notre travail est organisé comme suit : nous présentons, tout d’abord, un modèle de consommation
d’énergie dans les réseaux de capteurs. Nous étudions, ensuite, deux protocoles de routage basés sur
le clustering que nous utiliserons lors de nos expérimentations. Puis, nous présentons la technique
d’apprentissage numérique non supervisée pour le clustering, à savoir les cartes auto-organisatrices
de Kohonen. L’adaptation de cette technique de classification au problème de routage nous a permis
de proposer un algorithme de routage adapté aux réseaux de capteurs. En effet, celui-ci minimise
la consommation d’énergie prolongeant, ainsi, la durée de vie des batteries et, par conséquent, la survie
du réseau. Finalement, nous montrons, à travers une série d’expérimentations, quelques résultats de
validation de notre nouvel algorithme et présentons nos perspectives de recherche.
2. Un modèle de consommation d’énergie dans les réseaux de capteurs
Un capteur utilise son énergie pour réaliser trois actions principales : l’acquisition, la communication
et le traitement des données.
- Acquisition : L’énergie consommée pour effectuer l’acquisition n’est pas très importante.
Néanmoins, elle varie en fonction du phénomène et du type de surveillance effectué.
- Communication : Les communications consomment beaucoup plus d’énergie que les autres tâches.
Elles couvrent les communications en émission et en réception. La figure 1 présente un modèle d’antenne
et les règles de consommation d’énergie associées [AKY02].
Pour transmettre un message de k bits sur une distance de d mètres, l’émetteur consomme :
ETx(k,d) = ETx(l)+ ETx_ amp(k,d)
ETx (k, d ) =
(1)
k.Eelec(k, d ) + k.ε friss.d
k.Eelec(k, d ) + k.ε two_ ray_ amp.d 4
si d < dcrossover
sinon
2
(2)
Pour recevoir un message de k bits, le récepteur consomme :
E Rx (k ) = E Rx _ elec (k ) = k.E elec
(3)
Avec : Eelec : énergie de transmission/réception électronique ; k : taille d’un message ; d : distance entre
l’émetteur et le récepteur ; ETx _ amp : énergie d’amplification; ε amp : facteur d’amplification; d crossover :
distance limite pour laquelle les facteurs de transmission changent de valeur.
2
Figure 1 Modèle de consommation d’énergie pour la communication
- Traitement des données : L’énergie consommée pour les opérations de calculs est beaucoup plus
faible que l’énergie de communication. Un exemple est cité dans [POT00]. L’énergie nécessaire pour
transmettre 1 KB sur une distance de 100m est approximativement équivalente à l’énergie nécessaire pour
exécuter 3 millions d’instructions avec une vitesse de 100 millions d’instructions par seconde (MIPS). Ce
niveau peut être dépassé en fonction des circuits installés dans les nœuds et des fonctionnalités requises.
Par la suite, elle sera calculée en appliquant la formule suivante :
E DA = 5 nJ/bit/signal
(4)
3. Les protocoles LEACH et LEACH-C
Nous avons retenu les travaux de Heinzelman et al. [HEI00][HEI02] qui présentent aujourd’hui
d’excellents résultats en terme d’économie d’énergie. Ces derniers ont proposé le protocole LEACH et
une version centralisée de ce protocole, appelé LEACH-C. Tous deux s’appuient sur le clustering (Figure
2), qui consiste, de façon similaire aux réseaux téléphoniques cellulaires, à partitionner le réseau en
groupes (clusters). Les nœuds transmettent leurs données vers des représentants de groupes dits
clusterheads (CHs), qui à leur tour envoient ces données vers la destination désirée ou la station de base.
Dans certaines applications les clusterheads font des traitements simples (agrégations par exemple) sur les
données reçues avant de les retransmettre à la station de base. Cette approche permet la réutilisation de la
bande passante. Elle offre aussi une meilleure allocation de ressources et aide à améliorer le contrôle de
l’énergie dans le réseau. [KWO99] [JUN02] [KAW03].
Figure 2 : Le Clustering dans un réseau de capteurs
Avec le protocole LEACH (Low-Energy Adaptive Clustering Hierarchy), les agrégations, les
compressions ainsi que le routage des données minimisent la consommation d’énergie en réduisant le flux
des données et ainsi les communications globales. Les nœuds d’un réseau sont homogènes et ont les
mêmes contraintes d’énergie. Le clustering permet aux nœuds d’effectuer des communications sur de
petites distances avec leurs CHs, ces derniers ayant pour tâche de communiquer les résultats de leurs
calculs à la station de base. Ceci leur coûte en terme d’énergie. Ce protocole présente d’excellents
résultats comparés à d’autres algorithmes de clustering [HEI02].
Dans LEACH, les nœuds s’auto-élisent pour être des CHs. Ils se basent sur le pourcentage désiré de
CHs et le nombre d’itérations au cours duquel un nœud a pris le rôle de CH. Ainsi, un nœud n prend une
valeur aléatoire entre 0 et 1. Si cette valeur est inférieure au seuil T(n), le nœud se déclare CH. Les CHs
informent leur voisinage de leur élection. Chaque nœud restant décide de choisir le CH le plus proche.
Après la formation des clusters, chaque CH programme les nœuds appartenant à son cluster en leur
envoyant les codes et les fréquences de communication. Chaque nœud, autre qu’un CH, éteint son
antenne lorsqu’il ne communique pas ses données
3
P
T (n ) =
1 − P × r mod
0
1
P
si (n ∈ G)
(5)
sinon
Avec : P : pourcentage désiré de CHs. r : itération actuelle. G : ensemble des nœuds qui ont été
sélectionnés comme CH durant les dernières (1 P ) itérations.
Le système fixe le nombre optimal de clusters en fonction de quelques paramètres comme la topologie
du réseau, le coût des opérations de communication et de calcul. (Généralement les CHs représentent 5%
des nœuds du réseau). On observe donc que les nœuds meurent aléatoirement.
Les CHs reçoivent les réponses des nœuds simples. Ils créent des tables TDMA en se basant sur
le nombre de nœuds constituant le cluster.
Chaque nœud transmet ses données vers le CH de son cluster en fonction des intervalles de temps
spécifiés dans les tables TDMA. Les nœuds éteignent leurs antennes en attendant leurs temps de parole.
Cette technique permet ainsi de minimiser la dissipation de l’énergie. Par contre, les CHs laissent leurs
récepteurs en état de marche pour recevoir toutes les données des nœuds appartenant à leur cluster. Une
fois que toutes les données sont reçues, elles sont compressées par les CHs et transmises à la station
de base.
Chaque CH choisit aléatoirement un code dans une liste de codes de propagation CDMA, il le
transmet aux nœuds appartenant à son cluster afin de l’utiliser pour leurs transmissions, ceci afin de
minimiser les interférences entre les messages des CHs les plus proches.
Avantages
Le protocole LEACH présente les avantages suivants :
– L’auto-configuration des clusters se fait indépendamment de la station de base (algorithme distribué).
– Les données sont fusionnées pour réduire la quantité d’informations transmise vers la station de base.
– La consommation d’énergie est partagée sur l’ensemble des nœuds prolongeant ainsi la durée de vie
du réseau.
– L’utilisation des techniques TDMA/CDMA permet d’avoir une hiérarchie et de réaliser des
clusterings sur plusieurs niveaux. Ces derniers permettent d’économiser d’avantage d’énergie.
Inconvénients
En revanche, LEACH a les inconvénients suivants :
– Sans justifier leur choix, les auteurs fixent le pourcentage optimal de CHs pour le réseau à 5% du
nombre total des nœuds. Néanmoins, la topologie, la densité et le nombre de nœuds peuvent être
différents dans d’autres réseaux.
– Aucune suggestion n’est faite à propos du temps de réélection des CHs (temps des itérations).
– Les CHs les plus éloignés de la station de base meurent rapidement par rapport à ceux qui sont
proches de la station.
Pour éviter ces inconvénients, les auteurs proposent une extension de l’algorithme. Cette fois-ci, ils
proposent un algorithme centralisé (LEACH-C) [HEI02]. C’est un algorithme itératif, dans lequel la
structure des clusters est calculée au niveau de la station de base en utilisant la méthode d’optimisation du
"Recuit simulé" [MUR94]. Cependant, la station de base affecte dans chaque itération des rôles pour les
différents nœuds du réseau (CH ou capteur simple). Ensuite, le fonctionnement continue de la même
manière que pour LEACH.
4. L’apprentissage numérique non supervisé et les cartes auto-organisatrices de Kohonen
L’apprentissage numérique non-supervisé, appelé aussi classification automatique, consiste
à déterminer une partition de l’espace des observations à partir d’un ensemble de situations données
(ensemble d’apprentissage). Il s’agit d’identifier une éventuelle tendance des données à être regroupées
en classes. Ce type d’apprentissage, appelé "Clustering", recherche des régularités parmi un ensemble
4
d’exemples, sans être nécessairement guidé par l’utilisation, qui sera faite, des connaissances apprises.
La plupart des algorithmes de clustering utilisent la distance euclidienne pour calculer les similarités entre
les observations.
Les cartes auto-organisatrices de Kohonen (SOM : Self Organizing Map) implémentent une forme
particulière de réseaux de neurones, dits réseaux de neurones à compétition, où le "succès" d’un neurone
de sortie - couche de compétition - à reconnaître une entrée, conduit à inhiber les autres neurones, donc à
renforcer le neurone vainqueur. Par conséquent, le neurone vainqueur pour un exemple tend à se
spécialiser dans la reconnaissance de cet exemple. On note que l’apprentissage dans ces modèles est nonsupervisé car ni les classes ni leur nombre n’est donné à priori.
Ce type de réseau est organisé en une couche à deux dimensions (figure 3). Chaque neurone k est
connecté à un nombre n d'entrées à travers n connexions de poids respectifs w. Les connexions latérales
qui assurent la compétition entre les neurones sont de poids fixes et excitatrices dans un proche voisinage.
Figure 3 : Architecture d'une carte auto-organisatrice (réseau 2D).
Ces cartes s'organisent par rapport aux exemples présentés en respectant les contraintes topologiques
de l'espace d'entrée. Il y a mise en correspondance de l'espace d'entrée avec l'espace du réseau. Les zones
voisines de l'espace d'entrée sont voisines sur la carte auto-organisatrice.
Les informations reçues par le réseau neuronal déterminent un arrangement spatial optimal des
neurones. Lorsque la dimension de l’espace d’entrée est inférieure ou égale à 3, il est possible de
représenter visuellement la position des vecteurs poids et les relations de voisinage direct entre deux
cellules. Cette présentation permet de faire une appréciation visuelle de la carte. Elle fournit une
information qualitative de la carte et le choix de son architecture.
L'apprentissage connexionniste se présente souvent comme la minimisation d’une fonction de risque.
Dans notre cas, il sera réalisé par la minimisation de la distance, entre exemples d’entrées et prototypes
(référents) de la carte, pondérée par une fonction de voisinage h i j . On pourra employer pour cela un
algorithme de gradient. Le critère à minimiser dans ce cas est défini par :
ESOM =
Où
1
N
N
N
M
k =1
j =1
h j NN ( x ( k ) ) w. j − x (k )
2
(06)
représente le nombre d’exemples d’apprentissage, M le nombre de neurones de la carte,
NN(x k ) est le neurone dont le référent est le plus proche de la forme d’entrée x (k ), et h la fonction de
voisinage.
La fonction de voisinage
hr s =
h peut être de la forme suivante :
2
1
1
d (r,s)
exp − 2
λ (t)
λ (t)
(07)
5
où
λ(t) est la fonction température modélisant l’étendue du voisinage :
λ
λ(t) = λi f
λi
λi
et
λf
t
t max
(08)
sont respectivement la température initiale et la température finale (par exemple λ i = 2
et λ f = 0 .5 ) et t max le nombre maximum attribué au temps (nombre d’itérations x nombre d’exemples
d’apprentissage).
d1 (r , s ) la distance de Manhattan définie, entre deux neurones de la carte r et s de coordonnées
respectives (k,m) et (i, j ), par :
d1 (r,s) = i − k + j − m
(09)
L’algorithme d’apprentissage de ce modèle se déroule essentiellement en trois phases :
- La phase d’initialisation où des valeurs aléatoires sont affectées aux poids des connexions (référents ou
prototypes) de chaque neurone de la carte.
(k )
k
- La phase de compétition pendant laquelle, pour toute forme d’entrée x ( ) , un neurone NN ( x ) , de
voisinage V
( k ) , est sélectionné comme gagnant. Ce neurone est celui dont le vecteur de poids est le
NN ( x
)
plus proche au sens de la distance euclidienne de la forme présentée :
NN(x (k ) ) = argmin w. i − x (k )
2
(10)
1≤i≤M
- La phase d’adaptation où les poids de chaque neurone de la carte sont mis à jour selon les règles
d’adaptation suivantes :
Si
w. j ∈ VNN(x (k ) )
ajuster les poids selon la formule suivante:
(
w. j (t +1) = w. j (t) - ε( t ) h j NN( x (k ) ) w. j (t) - x (k)
)
(11)
sinon :
w. j (t +1) = w. j (t)
(12)
Ce processus d’adaptation est répété jusqu’à stabilisation de l’auto-organisation.
Segmentation de la carte SOM :
Nous avons segmenté la carte SOM en utilisant la méthode de K-means. C’est une autre méthode de
classification. Son principe consiste à choisir arbitrairement une partition. Ensuite, les exemples sont
examinés un par un. Si un exemple devient plus proche du centre d'une classe autre que la sienne, il est
déplacé vers cette nouvelle classe. On recalcule, ensuite, les centres des nouvelles classes et on réaffecte
les exemples aux partitions, et ainsi de suite jusqu’à avoir des partitions stables.
Le critère à minimiser dans ce cas est défini par :
E K −means =
où
1
C
C
k=1
x − ck
2
(13)
x ∈Q k
C représente le nombre de clusters, Qk le cluster k, c k est le centre du cluster Qk ou le référent.
L’algorithme de base nécessite à priori de fixer une valeur pour K, représentant le nombre de clusters
souhaité. Cependant, il existe un algorithme qui permet de calculer une meilleure valeur pour K pour
laquelle le clustering est optimal. Son principe de base est la minimisation de l’indice de Davies-Bouldin
[DAV79], défini comme suit :
6
I DB =
1 C
S (Q )+ S c (Ql )
max c k
C k =1 l ≠k
d ce (Qk ,Ql )
(14)
avec
Sc (Qk ) =
2
xi − ck
(15)
i
Qk
dcl (Qk , Ql ) = c k − c l
2
(16)
où C est le nombre de clusters, Sc est la dispersion intra-cluster, et dcl est la distance (centroid linkage)
entre les centres des clusters k et l. Cette procédure de clustering vise à trouver des clusters sphériques
compacts intérieurement mais largement séparés.
Il existe plusieurs méthodes pour segmenter les SOMs [JUH00]. Habituellement, elles sont basées sur
les observations visuelles et l’affectation manuelle des nœuds de la carte à des clusters. Plusieurs d’entre
elles utilisent l’algorithme de K-means avec des plages données pour la valeur de K. Une de ces
approches, qui a prouvé sa puissance, est basée sur la minimisation de l’indice de Davies-Bouldin. Notre
travail est basé sur cette dernière. On note que l’approche K-means peut être appliquée directement sur les
données au lieu des SOMs. Dans notre travail, nous l’avons appliquée sur les résultats de SOM. L’idée est
d’utiliser les SOMs comme une phase préliminaire dans le but d’effectuer une sorte de prétraitement des
données (réduction de la dimension, regroupement, visualisation, …). Ce qui permet de réduire la
complexité de calculs des clusters et d’assurer également une meilleure visualisation des résultats de la
classification automatique. Il faut noter que l’utilisation des SOMs pour la visualisation est cruciale,
surtout dans le cas de données multivariées : dimension > 2 ou 3. En effet, dans ce dernier cas, les SOMs
permettent, d’une part, de réduire la dimension de l’espace des données, et, d’autre part, de visualiser les
clusters dans le plan.
1er Clustering
N exemples
M prototypes
2ème Clustering
C clusters
Figure 4 : Deux clusterings successifs : SOM suivi de K-means
5. LEA2C : Une nouvelle approche de routage dans les réseaux de capteurs
Nous utilisons des méthodes de clustering basées sur les techniques d’apprentissage connexionniste
non supervisé et quelques particularités du protocole LEACH-C afin de proposer une nouvelle approche
de routage dans les réseaux de capteurs. Ce nouvel algorithme est appelé : LEA2C (Low Energy Adaptive
Connectionist Clustering)
Idée de base :
Notre approche s’appuie sur les principaux axes suivants :
-
Le réseau se compose de N nœuds homogènes et dispersés aléatoirement dans un espace donné
et la station de base (BS) se trouve loin de cet espace.
-
Les nœuds disposent d’un système de localisation géographique "GPS" (Global Positioning
System) qui leur permet de se localiser.
7
-
Le modèle de consommation d’énergie des nœuds est celui montré dans la figure 1. Il s’agit
également du même modèle utilisé pour simuler les deux protocoles LEACH et LEACH-C dans
[HEI00][HEI02].
-
L’algorithme est itératif : à chaque itération, la station de base calcule le clustering en fonction
des coordonnées des nœuds vivants.
-
Elle crée, ainsi, pour chaque cluster une table de fréquences TDMA et lui affecte aussi un code
aléatoire d’une liste de codes de propagation CDMA. Elle attribue, ensuite, à chaque nœud un
rôle (CH ou nœud simple) en lui envoyant son code et sa fréquence de communication.
-
Les deux techniques TDMA et CDMA permettent d’éviter les interférences entre les signaux de
communication de façon à restreindre les communications entre un nœud et le CH de son cluster.
D’un autre côté, la technique TDMA permet aux nœuds de mettre en veille leurs antennes
lorsqu’ils ne communiquent pas leurs données, ce qui permet d’économiser de l’énergie.
-
Le clustering de l’ensemble des nœuds se fait avec les cartes auto-organisatrices de Kohonen
(SOMs).
-
On optimise le clustering trouvé avec l’algorithme de K-means.
-
Dans chaque cluster, le choix du CH peut être fait à l’aide d’un des trois critères suivants que
nous avons proposés :
-
Le CH est le nœud ayant la quantité d’énergie maximale dans le cluster.
-
Le CH est le nœud le plus proche du centre de gravité du cluster (au sens des distances
physiques).
-
Le CH est le nœud le plus proche de la station de base.
-
On simule la transmission des données des nœuds simples vers les clusterheads (CHs).
-
On effectue une agrégation et une compression des données au niveau des CHs
-
On simule la transmission de données des CHs vers la station de base
-
Les nœuds perdent de leur énergie avec le temps. Par conséquent, il y a des nœuds qui meurent
au fur et à mesure du processus.
-
On répète ces étapes jusqu’à ce qu’il ne reste aucun nœud dans le réseau.
Algorithme LEA2C :
Pour comparer notre approche avec la méthode LEACH et sa variante LEACH-C, nous utilisons le
même modèle de communication et les mêmes données.
1) Initialisation
Déploiement aléatoire de N = 100 nœuds dans un espace donné (100mX100m), avec une même
quantité d’énergie (e=2J). Positionnement de la station de base (BS) aux coordonnées (50,300).
2) Clustering
2.1) En utilisant l’algorithme SOM, nous calculons un premier clustering des nœuds : un clustering
sur les deux variables x, y qui représentent les coordonnées des nœuds.
2.2)
Nous effectuons un deuxième clustering "k-means" sur le résultat de l’étape précédente.
2.3) Les CHs sont sélectionnés dans l’ensemble des clusters selon l’un des critères de choix cités
ci-dessus.
2.4)
On attribue un rôle pour chaque nœud (CH ou simple).
3) Transmission des données
3.1) Les messages sont de taille fixe (500 octets). On ajoute pour chaque message une entête de 25
octets.
3.2) On transmet les données des nœuds simples vers leurs clusterheads : on calcule l’énergie
consommée par chaque nœud simple en utilisant les formules (01) et (02).
8
3.3)
On calcule, pour chaque CH :
- l’énergie de réception des données en utilisant la formule (03)
- l’énergie d’agrégation des données en utilisant la formule (04)
- l’énergie de transmission des résultats vers la station de base en utilisant la formule (01).
avec
Eelec = 50 nJ/bit : énergie de transmission/réception électronique
k = 500+ 25 octets : taille d’un message. d : distance entre l’émetteur et le récepteur, elle est
calculée par le programme. d crossover = 85 m : distance limite pour laquelle les facteurs de
transmission changent de valeur. ε two _ ray _ amp = 0.0013 pJ/bit/m 4 : facteur d’amplification.
ε friss =10 pJ/bit/m2 : facteur d’amplification (si d < dcrossover).
3.4) Dans le cas où le choix du CH est fait selon le premier critère (énergie maximale), on réélit les
CHs dans les mêmes clusters après chaque transmission.
3.5) Répéter les étapes 3.1) à 3.5) jusqu’à la perte d’un nœud à cause du manque d’énergie ou de
défaillance.
4) Répéter les étapes 2) et 3) jusqu’à ce qu’il ne reste plus aucun nœud dans le réseau.
6. Résultats des simulations
Pour les simulations et le développement de nos algorithmes, nous avons utilisé le noyau SOM
(SomToolbox) proposé par des chercheurs de l’HUT (Helsinki University of Technology) [AHPV00].
Nous avons exécuté notre algorithme sur les mêmes données que celles retenues dans [HEI02]. Nous
avons trouvé les résultats représentés par les figures ci-dessous.
-
La figure 5.a. représente la segmentation des neurones de la carte SOM.
-
La figure 5.b. représente l’ensemble des nœuds du réseau, en montrant les CHs (cercles rouges) reliés
chacun aux nœuds (cercles bleus) de son cluster, les liens sont représentés par des lignes bleues. Si
un nœud est défaillant il est représenté par un carré noir. Pour chaque nœud, est également affiché
son identificateur ainsi que son état d’énergie à l’instant donné. Les positions des nœuds sur la figure
reflètent leurs positions géographiques réelles.
Figure 5.b Visualisation des communications
entre les nœuds selon l’algorithme LEA2C
Figure 5.a Visualisation de la segmentation de
la carte SOM
Les figures 6.a, 6.b et 6.c présentent respectivement la variation du nombre de nœuds vivants en
fonction du nombre de messages reçus par la station de base, la variation du nombre de nœuds vivants en
fonction du temps et la variation du nombre de messages en fonction du temps. Dans chacune des figures,
on considère la variation correspondante selon les quatre scénarios suivants :
transmission directe vers la station de base, pour laquelle chaque nœud communique ses données
directement.
9
le clustering selon notre approche avec les trois critères de choix du clusterhead déjà cités, à
savoir :
- le choix du nœud le plus proche du centre de gravité (CG) du cluster.
- le choix du nœud le plus proche de la station de base (BS).
- le choix du nœud ayant la quantité d’énergie maximale dans le cluster.
Les figures 7.a, 7.b et 7.c présentent les mêmes variations pour les protocoles suivants : un routage
multi-sauts MTE [ETT98], un clustering fixe, le protocole LEACH et le protocole LEACH-C.
D’une manière globale, les figures 6.a, 6.b et 6.c montrent, pour notre algorithme, que le choix du CH
selon le critère d’énergie maximale est nettement meilleur que les choix selon les autres critères. Les
choix selon les critères de proximité du centre de gravité et de la station de base ont des performances
voisines qui sont assez loin de celle du premier critère mais meilleures que la performance du protocole
de transmission directe.
Les figures 7.a, 7.b et 7.c montrent l’efficacité du protocole LEACH-C par rapport au LEACH
standard. On remarque aussi que les protocoles LEACH et LEACH-C donnent des résultats meilleurs que
le protocole basé sur le clustering statique qui à son tour est légèrement plus performant que le protocole
de routage multi sauts MTE. Ce dernier se base sur le choix du plus court chemin vers la station de base.
En comparant les figures (6.a, 6.b et 6.c) et les figures (7.a, 7.b et 7.c) nous remarquons que les
graphes ont les mêmes allures avec des gains très apparents apportés par notre algorithme par rapport aux
protocoles LEACH et LEACH-C.
CH Max Energie
CH proche de BS
Directe
CH proche de CG
Figure 6.a Nombre de nœuds vivants en fonction
du nombre de messages reçus par la station de base
pour LEA2C
Figure 7.a Nombre de nœuds vivants en
fonction du nombre de messages reçus par
la station de base pour le LEACH [HEI02]
CH Max Energie
CH proche
de BS
Directe
CH proche de CG
Figure 6.b Nombre de nœuds vivants
en fonction du temps pour LEA2C
Figure 7.b Nombre de nœuds vivants
en fonction du temps pour le protocole
LEACH [HEI02]
Sur les graphes de 6.a et 6.b, nous remarquons que le LEA2C, avec le meilleur critère de choix des
CHs, permet d’assurer une survie de la totalité des nœuds durant 90% de la durée de vie de tout le réseau.
Par rapport à LEACH et à LEACH-C, notre algorithme offre un gain 30 fois plus important en terme de
durée de vie globale du réseau, et 40 fois plus dans le cas où le CH retenu est le nœud le plus proche de la
station de base parmi les nœuds de chaque cluster.
10
CH Max Energie
CH proche de BS
CH proche de CG
Directe
Figure 6.c Nombre de messages reçus
par la station de base en fonction du temps pour LEA2C
Figure 7.c Nombre de messages reçus par
la station de base en fonction du temps
pour le protocole LEACH [HEI02]
n terme de quantité de données reçue par la station de base, qui est exprimée en fonction du nombre de
messages envoyés par les nœuds vers la station de base, les figures 6.c et 7.c montrent que LEA2C assure
la transmission de jusqu’à 10X104 messages (dans le cas du choix des CHs ayant le maximum d’énergie)
devant 6.5X104 pour LEACH-C, soit par conséquent un gain de 50% pour notre algorithme.
7. Conclusion et perspectives
Nous avons pu réaliser un algorithme de routage LEA2C dans une chaîne de traitements automatiques
évolutifs et non supervisés, qui assure un gain important par rapport aux protocoles LEACH et LEACHC. Les résultats obtenus sont très prometteurs avec une durée de vie jusqu’à 40 fois plus longue, une
couverture du réseau assurée pendant 90% du temps global du traitement et jusqu’à 50% de données en
plus reçues par la station de base.
Pour améliorer les résultats obtenus, nous envisageons, par la suite, les adaptations suivantes:
-
La hiérarchisation du clustering, i.e. l’application d’un super-clustering sur les CHs de premier
niveau, et l’étalement du clustering sur plusieurs niveaux.
-
L’utilisation d’autres versions de SOMs et le couplage avec d’autres protocoles de
communication.
-
L’optimisation du choix des paramètres des algorithmes d’apprentissage (SOMs, k-means).
-
L’intégration de paramètres autre que la position géographique dans le processus de clustering,
telle que par exemple la vitesse de déplacement des nœuds dans le cas de nœuds mobiles.
8. Bibliographie
[AKY02] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, "A Survey on Sensor Networks,
IEEE Communications Magazine, Vol. 40, No. 8, pp. 102-114, (2002).
[AHPV00] E. Alhoniemi, J. Himberg, J. Parhankangas and J. Vesanto, "SOM Toolbox", Copyright (C)
2000. (http://www.cis.hut.fi/projects/somtoolbox/)
[DAV79] David L. Davies and Donald W. Bouldin, "A Cluster Separation Measure", IEEE Trans. on
Pattern Analysis and Machine Intelligence, PAMI-1(2): pp. 224-227. (1979)
[EME03] "10 Emerging Technologies That Will Change the World", Technology Review February 2003
(http://www.technologyreview.com).
[ETT98] M. Ettus, "System Capacity, Latency, and Power Consumption in Multihop-Routed SS-CDMA
Wireless Networks", In Radio and Wireless Conference (RAWCON '98), pp. 55-58. (1998)
[GHI02] S. Ghiasi et al, "Optimal Energy Aware Clustering in Sensor Networks", SENSORS Journal,
Vol. 2, Issue 7, pp. 258-269, July 2002.
11
[HEI00] W. Heinzelman, A.P. Chandrakasan and H. Balakrishnan, "Energy-Efficient Communication
Protocol for Wireless Microsensor Networks", Sensor 2002, 2, pp. 258 –269. (2002)
[HEI02] W. Heinzelman, A.P. Chandrakasan and H. Balakrishnan, "An Application-Specific Protocol
Architecture for Wireless Microsensor Networks", In IEEE Transactions on Wireless Communications,
Vol. 1, No. 4, pp. 660-670. (2002)
[JUH00] A. Juha and A. Esa, "Clustering of the Self-Organizing Map", IEEE Tractions On Neural
Networks volume 11, n° 3, (2000)
[JUN02] E.-S. Jung and N. H. Vaidya, "A power control MAC protocol for ad-hoc networks", In ACM
MOBICOM. (2002)
[KAW03] V. Kawadia and P. R. Kumar, "Power Control and Clustering in Ad Hoc Networks", IEEE
INFOCOM. (2003)
[KWO99] T. Kwon and M. Gerla, "Clutering with Power Control", In Proceedings MILCOM '99,
volume 2. (1999)
[LIN98] X. Lin and I. Stojmenovic, "Power-Aware Routing in Ad Hoc Wireless Networks", In SITE,
University of Ottawa, TR-98-11. (1998)
[MUR94] T. Murata and H. Ishibuchi, "Performance evaluation of genetic algorithms for flowshop
scheduling problems", In Proceedings of the 1st IEEE Conference. Evolutionary Computation, volume 2,
pp. 812–817. (1994)
[PER99] C. Perkins and E. Royer, "Ad-Hoc On-Demand Distance Vector (AODV) Routing", In
Proceedings of the Second IEEE Workshop on Mobile Computing Systems and Applications
(WMCSA'99), pp- 90-100. (1999)
[POT00] G.J. Pottie, W.J. Kaiser, "Wireless integrated network sensors", Communications of the ACM
43 (5), pp. 551– 558. (2000)
[SCO96] K. Scott and N. Bambos, "Routing and Channel Assignment for Low Power Transmission in
PCS". In 5th IEEE Int. Conf. on Universal Personal Communications, volume 2, pp. 498-502. (1996)
[SIN98] S. Singh, M. Woo, and C.S. Raghavendra, "Power-Aware Routing in Mobile Ad Hoc Networks",
In Proceedings of the Fourth Annual ACM/IEEE International Conference on Mobile Computing and
Networking (MobiCom '98). (1998)
12