Optimisation d’énergie dans les algorithmes de routage ... · Pr. Azzedine Bilami Membre...

108
Année universitaire 20122013 Ministère de l’enseignement supérieur et de la recherche scientifique Université Constantine 2 Faculté des Nouvelles Technologies de l’Information et de la Communication Département d’Informatique Fondamentale et ses Applications Thèse pour l’obtention du grade de Docteur en Sciences Présentée et soutenue publiquement par : Melle Samia Chelloug Le 21 / 03 / 2013 Titre : Optimisation d’énergie dans les algorithmes de routage pour réseaux mobile Directeur de thèse: Pr. Mohammed Benmohammed Jury : Pr. Allaoua Chaoui Président Université Constantine 2 Pr. Mohammed Benmohammed Rapporteur Université Constantine 2 Dr. Salah Merniz Examinateur Université Constantine 2 Dr. Smain Maazouzi Membre Université de Skikda Pr. Azzedine Bilami Membre Université de Batna

Transcript of Optimisation d’énergie dans les algorithmes de routage ... · Pr. Azzedine Bilami Membre...

  Année universitaire 2012‐2013 

Ministère de l’enseignement supérieur et de la recherche scientifique

Université Constantine 2

Faculté des Nouvelles Technologies de l’Information et de la Communication

Département d’Informatique Fondamentale et ses Applications

 

Thèse pour l’obtention du grade de Docteur en Sciences

Présentée et soutenue publiquement par :

Melle Samia Chelloug

Le 21 / 03 / 2013

 

Titre :

Optimisation d’énergie dans les algorithmes de routage pour réseaux mobile

 

Directeur de thèse:

Pr. Mohammed Benmohammed

Jury :

Pr. Allaoua Chaoui Président Université Constantine 2

Pr. Mohammed Benmohammed Rapporteur Université Constantine 2

Dr. Salah Merniz Examinateur Université Constantine 2

Dr. Smain Maazouzi Membre Université de Skikda

Pr. Azzedine Bilami Membre Université de Batna

 

 

 

 

Remerciements 

 

 

J’exprime ma profonde gratitude à mon directeur de thèse Pr. Mohammed Benmohammed pour ses conseils, sa disponibilité, son écoute et ses encouragements.

J’adresse mes sincères remerciements aux membres du jury pour m’avoir fait l’honneur de juger mon travail. Mes remerciements s’adressent en particulier à Monsieur le Professeur Allaoua Chaoui, pour avoir accepté d’être président du jury. Un grand merci à Monsieur le Docteur Salah Merniz, Dr. Smail Mazouzi et Pr. Azzedine Bilami pour avoir accepté de participer dans le jury.

Je souhaite aussi remercier Madame le Professeur Touraya Boumaza (département d’électronique, Université de Constantine) pour son soutien qui m’a permis de mener à terme mon travail de recherche.

Je remercie également Pr.Reza Mohammed Soleymani (Université Concordia, Canada) et Pr. Jean-Claude Konig (Université Montpellier 2, France) pour leurs invitations et leurs bonnes collaborations.

Je tiens également à remercier tous les auteurs qui m’ont assisté à distance et m’ont clarifié divers aspects liés à leurs papiers.

Merci aux : Pr. Samia Bouhedja, Dr. Mounia Benyamina, Mme. Afifa Benazouz, Mme. Nadia Boucheham, Melle Huda Sobhi, Melle Dua Odeh, … Je n’oublierai jamais les moments passés ensemble.

Enfin, un merci particulier à Mr.Nelson Clara Moller pour ses conseils judicieux et son aide précieuse.

 

 

 

 

 

 

 

 

 

 

 

Je dédie ce travail à mes très chers parents, mes frères et mes sœurs ; en particulier Fatima-Zohra (Chargé de cours, Université Tebessa) pour

ses conseils consistants qui dépassent le nombre de pages de ce manuscrit…

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

بسم اهللا الرحمن الرحيم

و يسألونك عن الروح قل الروح من أمري ربي و ما أوتيتم من العلم

)85:اإلسراء(إال قليال

 

العظيم اهللا صدق

 

 

 

 

 

 

Résumé

 

 

Les réseaux de capteurs constituent un nouveau thème de recherche offrant l’opportunité de

développer de nouvelles applications et posant ainsi le challenge de la conception d’objets autonomes.

Une des thématiques les plus intéressantes consiste à minimiser le temps d’achèvement nécessaire à la

transmission des paquets des données dans un réseau de capteurs contenant une seule source et une

seule destination et dont les liens sont soumis à des erreurs de transmission. Pour cela, le routage

opportuniste qui fonctionne avec le codage réseau linéaire aléatoire s’avère une idée intéressante. Le

routage opportuniste tire profit de la diffusion et le codage réseau linéaire aléatoire permet de

combiner les paquets avant de les envoyer évitant ainsi toute coordination entre les noeuds. D’autre

part, la récupération d’énergie représente le présent enjeu pour la prolongation de la durée de vie d’un

réseau de capteurs. Cette thèse concerne donc principalement la consommation énergétique dans les

algorithmes de routage pour les réseaux de capteurs. Une grande partie de ce travail a porté sur la

proposition d’un modèle pour la minimisation du temps d’achèvement nécessaire au décodage réseau

linéaire aléatoire dans un réseau de capteurs opérant sous l’hypothèse de récupération d’énergie et

exploitant l’idée de l’opportunisme pour acheminer les données. Pour parvenir à résoudre le modèle

proposé, F-Lipschitz a été utilisée. Cette méthode est adéquate aux modèles qui ne soient pas

convexes et assure l’existence d’une solution. De plus, le calcul par intervalles a été exploité pour

tenir compte de l’incertitude lors du calcul des dérivées. D’un point de vue avantage, cette

arithmétique assure que le résultat calculé se trouve toujours dans l’intervalle en sortie. Les résultats

de simulation ont été menés par Matlab et Omnet++ et représentent une évaluation du modèle en

termes de l’énergie, débit, et temps de terminaison. Ils suggèrent d’augmenter la densité réseau pour

diminuer la probabilité d’effacement. Associer des probabilités de réception aux noeuds capteurs et

prolonger la durée de vie sous routage opportuniste est une contribution connexe à la première. Dans

ce cadre, les métaheuristiques s’avèrent un outil puissant qui converge vers une solution optimale. Le

modèle considéré garantit une consommation énergétique uniforme entre les différents noeuds

capteurs. L’autre volet de cette thèse concerne le routage économe en énergie dans les réseaux de

capteurs mobiles où la prédiction peut être exploitée conjointement avec une approche de routage par

voisinage afin d’acheminer les données dans un réseau dense avec un bon taux d’acheminement.

Mots clefs : réseaux de capteurs, routage opportuniste, routage géographiques, énergie, codage réseau

linéaire aléatoire, récupération d’énergie, optimisation, F-Lipshitz, métaheuristiques, mobilité,

Omnet++.

 

 

 

Abstract

 

 

The new field of wireless sensor networks presents many opportunities and new challenges. One

particularly difficult aspect of wireless sensor networks is minimizing the completion time requires

for sending data packets in an end-to-end session network with lossy links. To enable data routing,

opportunistic routing together with random linear network coding can be used. Thus, opportunistic

routing takes advantage of broadcast transmission and mixing packets before sending them avoids any

coordination between nodes of the network. To allow extending the lifetime of wireless network

composed of a huge number of sensor nodes equipped by small batteries; a technique that harvests

ambient energy is assumed integrated. This thesis concentrates on energy efficient routing protocols

in sensor networks. It mainly proposes a framework for minimizing the completion time in a wireless

sensor network with energy harvesting under opportunistic routing and random linear network coding.

Traditional techniques are not suitable for solving the proposed model since it is non convex. So, F-

Lipschitz method was exploited and demonstrated the existence of a solution for the formulated

problem. To further address the uncertainty during calculation of derivates, interval arithmetic has

been used where the exact result is contained in the computed interval. Simulation results obtained by

Matlab and Omnet++ give an evaluation of the proposed scheme in term of energy, throughput and

completion time. They suggest to operate at high density to decrease the erasure probability. By

another hand, prolonging the lifetime of a sensor network is another contribution of this work. In this

context, sensor nodes are associated with reception probabilities such that uniform energy

consumption among the nodes is guaranteed. The model has been solved with the simulated annealing

and linear programming and yields to convergence.

The other part of this thesis concerns energy efficient routing in mobile sensor networks where the

prediction is used in conjunction with a neighborhood approach for routing data in a dense network.

The delivery rate is good and the localization errors acceptable.

Keywords: sensor networks, opportunistic routing, geographic routing, energy, random linear

network coding, energy harvesting, optimization, F-Lipshitz, Metaheuristics, mobility, Omnet++.

 

 

ملخص

 

أحد الصعوبات . الحقل الجديد من شبكات االستشعار الالسلكية يعرض العديد من الفرص والتحديات الجديدة

في شبكة للشبكات االستشعار الالسلكية يكمن في التقليل من الوقت الالزم لحل الرمز و إرسال حزم البيانات

لتمكين توجيه البيانات، يمكن استخدام التوجيه االنتهازي و . مع وجود منبع و جهة واحدة تتميز بوصالت الضياع

وهكذا، توجيه االنتهازية يستفيد من بث اإلرسال والخلط قبل إرسال البيانات . الخطي العشوائي الشبكيالترميز

اح بتمديد عمر شبكة السلكية مكونة من عدد هائل من العقد للسم. آي يتجنب أي تنسيق بين العقد في الشبكة

هذه األطروحة . استشعار مجهزة ببطاريات صغيرة؛ وضعنا إفتراض إستخدام تقنية تحصيل الطاقة المحيطة

ترآز على بروتوآوالت آفاءة الطاقة في شبكات االستشعارو تقترح أساسا إطارا لتقليل وقت اآتمال في شبكة

 التقنيات التقليدية . الخطي العشوائي الشبكيلكية مع حصاد الطاقة تحت توجيه االنتهازية و الترميزاستشعار الس

ليبشيتز وأثبتت وجود حل Fلذلك، تم استغالل طريقة . محدب غير ألنه النموذج المقترح حلليست مناسبة ل

دام الحساب الفاصل حيث ترد النتيجة و لمعالجة عدم اليقين خالل حساب المشتقات، قمنا باستخ .للمشكلة المصاغة

تعطي تقييم الخطة + + نتائج المحاآاة التي حصل عليها بواسطة مطلب وأمنيت .الدقيقة في المجال المحسوب

هذه النتائج توحي للعمل في آثافة عالية لتقليل احتمال .المقترحة من حيث اإلنتاجية ،الطاقة ووقت االنتهاء

في هذا السياق، تتعلق عقد .، إطالة عمر شبكة االستشعار هو مساهمة أخرى في هذا العملمن جهة أخرى .المحو

و لقد حل النموذج باستخدام .االستشعار باحتماالت استقبال بحيث يتم ضمان موحدة استهالك الطاقة بين العقد

 .سمليتاد أنالين والبرمجة الخطية وأدى إلى التقارب

لة تعلق بوضع خطة لتوجيه البيانات مع مراعاة استخدام الطاقة في شبكات االستشعار الجزء اآلخر من هذه الرسا

معدل التسليم جيد وأخطاء التمرآز . المحمولة حيث يتم استخدام التنبؤ بالتزامن لتوجيه البيانات في شبكة آثيفة

 .مقبولة

آلمات البحث

الترميز الشبكي الخطي العشوائي، تحصيل الطاقة، شبكات اإلستشعار، التوجيه اإلنتهازي، التوجيه الجيغرافي،

 + +أمنيت ميتا أورستيك، التنقل، ليبشيتز Fالتحسين،

 

 

 

Table de matière

Introduction générale 8

Chapitre1 : Réseaux de capteurs

1. Introduction 10

2. Qu’est-ce qu’un capteur ? 10

3. Réseaux de capteurs 11

4. Composants d’un capteur 11

5. Plateformes des réseaux de capteurs 13

6. Réseaux de capteurs versus Manet 14

7. Challenge de réseaux de capteurs 14

8. Applications des réseaux de capteurs 15

9. Pile protocolaire d’un réseau de capteurs 16

10. Protocoles de routage dans les réseaux de capteurs 16

10-1. Inondation 17

10-2. Gossiping 17

10-3. Protocole Spin 17

10-4. Protocoles hiérarchiques 18

10-5. Protocoles géographiques 18

10-6. Techniques cross-layer 19

11. Pourquoi la récupération d’énergie dans les réseaux de capteurs ? 20

12. Architecture d’un nœud 20

13. Sources énergétiques 22

14. Gestion de l’énergie récupérée 23

15. Routage avec récupération d’énergie 24

16. Conclusion 24

Chapitre2 : Routage opportuniste et codage réseau1

 

 

1. Introduction 26

2. Définition d’un champ 26

3. Champs de Galois 27

4. Addition et multiplication dans GF (2m) 28

5. Codage réseau 29

5-1.Avantages du codage réseau 30

5-2.Théorème du codage réseau 32

6. Codage réseau linéaire aléatoire 32

7. Pourquoi et c’est quoi le routage opportuniste ? 33

7-1. Métrique ETX 34

7-2. Protocole EXOR 34

8. Protocole MORE 35

8-1. Nombre de transmissions 36

8-2. Format des paquets 36

8-3. Test de l’indépendance linéaire 37

9. Protocole SOAR 38

10. Conclusion 39

Chapitre 3 : Optimisation F-Lipschitz

1. Introduction 41

2. Problème d’optimisation 41

3. Classification des problèmes d’optimisation 42

4. Méthodes de résolution 42

4-1. Méthodes par décomposition 43

5. Fonction Lipschitz 43

6. Problème d’optimisation F-Lipschitz 45

7. Problème canonique 47

8. Optimalité de la solution F-Lipschitz 49

2

 

 

9. Calcul de la solution optimale 50

10. F-Lipschitz pour les réseaux de capteurs 51

11. Conclusion 52

Chapitre 4 : Contributions pour le routage opportuniste et géographique

1. Introduction 53

2. Contribution principale ‘Système de routage opportuniste avec récupération d’énergie’ 53

2-1. Travaux connexes 53

2-2. Système proposé 55

2-3. Temps de terminaison 56

2-4. Modèle d’optimisation 58

2-5. Formulation F-Lipschitz 63

2-6. Estimation de la probabilité d’effacement 65

2-7. Scénarios d’exécution 66

3. Contributions secondaires 68

3-1. Maximisation de la durée de vie d’un réseau de capteurs sous routage opportuniste 68

3-2. Localisation et routage géographique dans un réseau de capteurs statiques 69

3-2-1. Formulation du problème 70

4. Conclusion 74

Chapitre 5 : Résultats de simulation

1. Introduction 75

2. C’est quoi Omnet++ ? 75

3. Modélisation de la simulation Omnet++ 75

3-1. Composants 77

3-2. Messages et paquets 78

3-3. Configuration de la simulation 79

4. Résultats de simulation 79

3

 

 

4-1. Résultats de la contribution principale 79

4-2. Evaluation de la consommation énergétique 82

4-3. Evaluation du débit 82

4-4. Evaluation du temps de terminaison 84

4-5. Impact du nombre des paquets 84

4-6. Résultat du système de la maximisation de la durée de vie 85

4-7. Résultats de localisation et de routage géographique 86

5. Conclusion 90

Conclusion générale et perspectives 92

Annexe : Calcul par intervalles 94

Références bibliographiques 97

4

 

 

Liste des figures

 

Chapitre 1 : Réseaux des capteurs

Figure 1. Principe de l’étalonnage 10

Figure 2. Architecture d’un réseau de capteurs 11

Figure 3. Architecture d’un nœud capteur 13

Figure 4. Pile protocolaire d’un réseau de capteurs 16

Figure 5. Principe du protocole SPIN 18

Figure 6. Principe du routage géographique 19

Figure 7. Zebra Net 21

Figure 8. Architecture d’un système de récupération d’énergie 21

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

Figure 1.a. Routage vers R1 30

Figure 1.b. Routage vers R2 30

Figure 1.c. Multicast avec codage réseau 30

Figure 2.a. Echange de x1, x2 sans codage réseau 31

Figure 2.b. Echange de x1, x2 avec codage réseau 31

Figure 3.a. Envoi des données sans codage réseau 31

Figure 3.b. Envoi des données avec codage réseau 31

Figure 4.a. Taille de la coupe au niveau de D 32

Figure 4.b. Taille de la coupe au niveau de E,F 32

Figure 5. Principe du codage réseau linéaire aléatoire 33

Figure 6.a. Exemple d’un réseau 34

Figure 6.b. Métrique ETX de chaque chemin 34

Figure 7. Format d’un paquet MORE 37

Figure 8. Principe du protocole MORE 40

5

 

 

Chapitre 3 : Optimisation F-Lipschitz

Figure 1. Processus de décision 41

Figure 2. Optimalité au sens Pareto 50

Chapitre 4 : Contributions pour le routage opportuniste et géographique

Figure 1. Phases et quantités d’énergie récupérées 55

Figure 2. Principe du modèle proposé 57

Figure 3. Algorithme de Prim 61

Figure 4. Chaîne de Markov proposée pour le décodage 65

Figure 5. Figure 5. Principe de la résolution du modèle 66

Figure 6. Scénario 1 67

Figure 7. Scénario 2 67

Figure 8. Algorithme du recuit simulé pour le calcul des probabilités de réception 69

Figure 9. Prédiction des positions des nœuds capteurs 73

Chapitre5 : Résultats de simulation

Figure 1. Topologie des nœuds capteurs 81

Figure 2. Architecture d’un nœud capteurs 81

Figure 3. Consommation énergétique des deux scénarios 82

Figure 4. CDF du débit des deux scénarios 83

Figure 5. Temps de terminaison en fonction de la probabilité d’effacement 84

Figure 6. Effet de la densité et du nombre de paquets sur le deuxième scénario 85

Figure 7. Probabilité de réception moyenne versus le nombre d’itérations 86

Figure 8. Ordonnées prédites versus temps de simulation 88

Figure 9. Abscisses prédites versus temps de simulation 88

Figure 10. Impact du paramètre a’ sur le taux d’acheminement 89

Figure 11. Impact du paramètre a’ sur la consommation énergétique 90

6

 

 

Liste des tableaux

 

Chapitre 1 : Réseaux des capteurs

Tableau 1. Plateformes des réseaux de capteurs 14

Tableau 2. Sources d’énergie et leurs caractéristiques 22

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

Tableau 1.a. Addition dans Z7 27

Tableau 1.b. Multiplication dans Z7 27

Tableau 2. Exemples de polynômes primitifs 28

Tableau 3.a. Représentation polynomiale 29

Tableau 3.b. Addition dans GF (23) 29

Chapitre 3 : Optimisation F-Lipschitz

Tableau 1. Notations et définitions 45

Chapitre 4 : Contributions pour le routage opportuniste et géographique

Tableau 1. Notations du modèle proposé 59

Tableau 2. Notations et définitions 68

Chapitre 5 : Résultats de simulation

Tableau 1. Paramètres de la simulation 80

Tableau 2. Paramètres de la simulation du routage géographique 87

Tableau 3. Meilleures valeurs du paramètre a’ 90

7

 

 

Introduction génèrale

LLa démultiplication massive des technologies sans fil a révolutionné les moyens de communication depuis le début du vingt et unième siècle avec notamment l’apparition des réseaux ad hoc. Alors que les hôtes dans un réseau ad hoc ont un intérêt propre, les réseaux de capteurs amènent en supplément la possibilité d’acquérir et de communiquer les données de manière locale. Il s’agit de nier le concept de miniaturisation à la notion de communication pour couvrir une large palette d’applications. Dans un réseau de capteurs, une quantité d’énergie considérable est consommée durant les communications sans fil (mode de transmission et de réception). De plus, les batteries utilisées sont petites et leur remplacement n’est pas toujours pratique. Deux alternatives existent : la première consiste à développer des protocoles maximisant la durée de vie du réseau tout en spécifiant le critère de fonctionnement du réseau. Cependant, l’enjeu actuel consiste à intégrer des systèmes de récupération d’énergie dans chaque capteur afin de garantir une durée de vie infinie. Evidemment, la quantité d’énergie récupérée dépend des caractéristiques de la source employée. D’autres parts, divers travaux ont traité le problème du routage dans les réseaux de capteurs où chaque capteur n’a aucune information a priori à propos du réseau auquel il appartient. L’inconvénient majeur des protocoles de routage traditionnels ; entre autre le routage géographique qui dépend de la localisation est qu’ils ne tiennent pas compte des erreurs de transmission sans fil. Pour cela, le routage opportuniste exploite le concept de diffusion qui caractérise les réseaux sans fil pour acheminer convenablement des paquets.

Au sens large, aucune route n’est établie a priori et les nœuds se mettent en mode de réception si aucune transmission n’est prête ou autorisée. Les nœuds qui ont eu l’opportunité de recevoir un paquet peuvent prendre le rôle de relais. Ce protocole a fait l’objet d’une certaine fascination des chercheurs, qui ont intégré le codage réseau linéaire aléatoire au routage opportuniste. Le focus ici est d’effectuer un routage décentralisé sans aucune synchronisation. De sa part, le codage réseau linéaire aléatoire tire avantage des caractéristiques des champs de Galois et offre ainsi un débit de transmission maximal.

Dans ce contexte, le temps de terminaison nécessaire au décodage des paquets reçus par une ou plusieurs destinations est un problème d’optimisation essentiel. Les études réalisées sont orientées autour des topologies constituées d’une seule source où les communications multi-sauts ne sont pas nécessaires. Elles décrivent le processus de transmission et du décodage par des chaînes de Markov discrètes.

Notre objectif principal dans cette thèse sera donc d’étudier ce problème dans un réseau de capteurs pouvant récupérer l’énergie et acheminer les paquets par routage opportuniste et codage réseau aléatoire tout en ayant la possibilité de changer les puissances de transmissions associées aux capteurs. En d’autre terme, les contraintes liées à la couche réseau et physique sont ainsi modélisées.

La formulation proposée nous a amenés à s’interroger sur une méthode de résolution qui soit adéquate pour un modèle qui n’est pas convexe. En conséquence, une résolution centralisée moyennant la méthode F-Lipschitz a été adoptée. La première étape consiste à vérifier si le problème d’optimisation manipulé respecte la forme F-Lipschitz. Le cas, échant, un certain

8

 

 

nombre de conditions doit être vérifié avant de procéder à la transformation du problème en question. Ensuite, le calcul de la solution optimale est obtenu moyennant le gradient des contraintes du modèle et la projection des variables sur un domaine borné.

Une seconde question s’est posée lors du calcul des dérivées sachant que chaque capteur opère selon des phases qui soient différentes celles utilisées par les autres capteurs. Pour cela, nous avons jugé utile l’intégration du calcul par intervalles pour prendre en compte les incertitudes présentes. L’idée du calcul par intervalles consiste à représenter chaque nombre par un intervalle le contenant.

A côté de la contribution principale, deux contributions secondaires ont été mises en œuvre. La première a consisté à étudier un système de routage opportuniste et de trouver la durée de vie maximale assurant sa convergence moyennant une classe de métaheuristique appelée ‘recuit simulé ‘. Enfin, la dernière proposition a consisté à localiser des capteurs mobiles selon une technique prédictive et d’exploiter les positions estimées lors d’un routage géographique économe en énergie.

Cette thèse est organisée en cinq chapitres:

La première partie du premier chapitre intitulé ‘Réseaux de capteurs’ est consacrée à un état de l’art sur les réseaux de capteurs. Des critiques ont porté sur les réseaux de capteurs traditionnels et la seconde partie décrit donc la technologie de récupération d’énergie qui permet d’atteindre une durée de vie approximativement infinie et de dépasser les contraintes énergétiques.

Le deuxième chapitre est intitulé ‘Routage opportuniste et codage réseau linéaire aléatoire’ présente essentiellement l’idée du protocole de routage opportuniste ‘MORE’ qui exploite conjointement la diversité spatiale et le codage réseau linéaire aléatoire. Les champs de Galois constituent la partie introductive de ce chapitre puisque le codage réseau linéaire aléatoire est basé sur ces champs infinis.

Le troisième chapitre est intitulé ‘Optimisation par F-Lipschitz ‘. Il est consacré à la technique d’optimisation F-Lipschitz. Les avantages de cette méthode par rapport aux méthodes d’optimisation existantes sont mis en œuvre et les conditions nécessaires pour transformer un problème en un problème F-Lipschitz sont expliquées.

Le quatrième chapitre est intitulé ‘Contributions pour le routage opportuniste et géographique’ contient nos contributions. Les modèles proposés ainsi que les scénarios de simulation seront présentés au sein de ce chapitre.

Le cinquième chapitre est intitulé ‘Résultats de simulation’. Un aperçu du simulateur Omnet++ est présenté. Les résultats de simulation obtenus tout au long de ce parcours de recherche sont illustrés et expliqués.

Notons que ce manuscrit contient à la fin une annexe sur le calcul par intervalles.

9

Chapitre 1 : Réseaux de capteurs

  10

1. Introduction

Les technologies permettant la transmission sans fil des informations sont désormais d’usage courant. Plus spécifiquement, l’avènement des réseaux de capteurs a révolutionné le monde. Il s’agit d’unités miniaturisées dotées de capacités d’acquisition et de communication des informations à une faible portée. Aux contraintes traditionnelles des réseaux ad hoc s’ajoutent des limites très strictes : capacité de calcul, la mémoire et en particulier l’énergie. L’émergence de ce champ d’étude impose une sévérité de divers problèmes et de nouveaux protocoles qui soient efficaces en énergie sont requis. Le problème du routage est ainsi omniprésent dans les réseaux de capteurs et c’est d’ailleurs un problème d’optimisation bi-objectifs : trouver le chemin optimal et minimiser la consommation énergétique et/ou maximiser la durée de vie du réseau. Depuis quelques années, l’accent a été mis sur la conception des capteurs autonomes pouvant convertir l’énergie récupérée à partir de l’environnement externe afin de prolonger la durée de vie du réseau.

L’objectif de ce chapitre est de dresser un état de l’art des réseaux de capteurs et la technologie de récupération d’énergie.

2. Qu’est-ce qu’un capteur?

La surveillance des paramètres physiques, chimiques ou biologiques dans une chaîne de mesure requiert souvent l’utilisation des capteurs. Par définition, un capteur est un dispositif qui génère une image sous forme en général électrique, d’une grandeur physique. De manière plus précise, un capteur peut être vue comme une boite noire qui accepte en entrée une mesurande c’est à dire la quantité que l’on cherche à mesurer (m) et produit en sortie une grandeur électrique notée S pouvant être une charge électrique, un courant, un différentiel de potentiel ou une impédance. Autrement, dit, le rôle d’un capteur est de calculer S= F(m) [1]. Le principe de base repose sur l’opération d’étalonnage. Sachant différentes valeurs m1, m2, …, mi, on relève les signaux S1, S2, …, Si. Le rôle du capteur consiste donc à lire S lorsque m est inconnu [2].

Si

S?

mi m

Figure1. Principe de l’étalonnage

Chapitre 1 : Réseaux de capteurs

  11

Dans la littérature, on trouve souvent le terme capteur actif et passif. On parle de capteur passif lorsque le signal généré S est une différence d’impédance et une source d’énergie est intégrée pour le lire. En fonction des paramètres que l’on souhaite mesurer et contrôler, une multitude de capteurs existent dans le marché industriel. Il s’agit des capteurs de température, position, vitesse,… chacun ayant des caractéristiques de précision, rapidité et de sensibilité [3].

3. Réseaux de capteurs

Traditionnellement, l’emploi des capteurs était limité au prélèvement de la température, l’humidité, la vitesse,… par la suite on a pensé à rajouter des capacités de communication en ayant la possibilité d’accéder à distance aux grandeurs mesurées par les capteurs. L’idée consiste donc à déployer des capteurs dans un champ. Un ou plusieurs nouds capteurs prennent le rôle de source (entité qui fournit des informations). De plus, on a besoin d’une ou plusieurs stations de base (entité où l’information est requise). Ça peut être un PDA ou un Gateway à un autre réseau Internet, satellitaire, wifi, wimax… Dans ce contexte, un ou plusieurs utilisateurs peuvent avoir accès aux informations collectées et acheminées par les capteurs qui assurent la double fonction de collecte des données et celle du routage. En particulier, l’interaction avec l’environnement, le traitement des informations et la communication de manière locale constituent les éléments clés d’un réseau de capteurs [4].

Figure2. Architecture d’un reseau de capteurs.

4. Composantes d’un nœud capteur

L’architecture de base d’un nœud capteur est illustrée en figure 3 [4].

-Unité de capture : elle a été expliquée dans la section précédente. Pratiquement, chaque unité de capture est caractérisée par trois rayons: un rayon de communication qui lui permet d’échanger

Chapitre 1 : Réseaux de capteurs

  12

des messages et des données avec les autres nœuds capteurs, un rayon d’interférence permettant de détecter les collisions et un rayon plus large qui constitue le rayon de sensation. Ce dernier est la portée assurant la détection des évènements. Les technologies matérielles offrent deux choix : des valeurs fixes ou variables pour les trois rayons. Evidemment, des valeurs assez élevées pour le rayon de communication et de sensation requièrent une puissance considérable.

-Contrôleur : collecte les données produites par les capteurs associés à un nœud et celles envoyées par les nœuds capteurs voisins. Il assure également le traitement des données et la prise de décision concernant leur envoi (quand est ce qu’il faudra envoyer et quand ?). Les réseaux de capteurs déployés par les entreprises industrielles incluent des microcontrôleurs tels que : Intel( 32 bits RISC, Core, 206 MHZ) , Texas (16 bits RISC Core) et Atmel ( 8 bits et il est équipé par différentes interfaces).

Trois motivations pour l’utilisation des microcontrôleurs dans le cadre des réseaux de capteurs sont à mentionner :

Facilité de connexion avec les capteurs.

Faible consommation énergétique.

Possibilité de réduction de la consommation énergétique par la mise dans l’état de veille.

-Mémoire : les valeurs lues ainsi que les paquets reçus sont stockés dans la RAM tandis que l’application du réseau de capteurs réside en ROM. Plus précisément, une EEPROM est requise afin de servir pour la sauvegarde des données en cas où la RAM n’est pas suffisante.

-Communication : la plupart des réseaux de capteurs s’appuient sur les communications radio fréquence (RF) puisqu’elles offrent un débit élevé et la distance de communication tolérée est bonne. A cela s’ajoute le fait que les erreurs sont acceptables et qu’aucune ligne de visée n’est requise. Pour cela, l’architecture d’un capteur intègre un émetteur/récepteur dont le rôle est de convertir les trames de bits émises par le microcontrôleur en une onde radio. Il est à noter que le problème des communications RF est qu’elles requièrent la modulation, le multiplexage, filtrage et la démodulation des signaux. Ces opérations sont complexes et consomment de l’énergie.

-Source énergétique : la batterie constitue la source d’énergie la plus utilisée mais nous allons voir au niveau de la deuxième partie de ce chapitre qu’actuellement les capteurs sont capables de récupérer l’énergie à partir de l’environnement externe. Signalons que les batteries ont des caractéristiques matérielles (capacité, taux de décharge,…) qu’il faudra prendre en considération.

Les capteurs, le microcontrôleur et l’émetteur/récepteur radio sont les composants qui consomment une grande partie d’énergie. Les études réalisées confirment que l’émetteur/récepteur consomme une très grande quantité d’énergie (lorsqu’il est en mode transmission, réception ou en veille) par rapport aux capteurs et microcontrôleurs [5]. Plus précisément, 62% de l’énergie est consommée par l’émetteur/récepteur radio d’une architecture d’un réseau de capteurs typique lorsqu’il est en mode de transmission. Cependant, 19% de l’énergie est consommée en mode de réception et le reste de l’énergie est consommé par le microcontrôleur.

Chapitre 1 : Réseaux de capteurs

  13

Figure3. Architecture d’un nœud capteur.

5. Plateformes des réseaux de capteurs

Diverses plateformes des réseaux de capteurs ont été conçues et peuvent être regroupées en low-end et high-end. La première classe est caractérisée par des capacités limitées en termes de traitement de l’information et celle de stockage. Dans ce cas, un nombre important de capteurs doit être déployé [5]. D’un point de vue architectural, les plateformes de type ‘high-end’ sont basées sur des composants plus performants. Le tableau 1 donne un aperçu des plateformes existantes.

A l’issu de l’hétérogénéité des plateformes des réseaux de capteurs, des standards ont été développés.

-IEEE 802.15.4 offre trois bandes de communication. La bande globale de 2.4 MHZ, la bande de 915 MHZ réservée à l’Amérique et celle de 868 MHZ réservée à l’Europe. Ce standard définit les protocoles de la couche physique et la couche MAC (medium Access control). Il s’adapte bien à des réseaux de topologie étoile, mesh, arbre et cluster. IEEE 802.15.4 permet des communications à une distance de 10-100 m avec un débit de 20-250 Kbps.

-Zigbee est un second standard définit au-dessus du IEEE802.15.4 et spécifie les protocoles de la couche réseau et application. Les dispositifs Zigbee nécessitent très peu d’énergie pour fonctionner ; ce qui favorise l’utilisation de ce standard dans le cas des réseaux de capteurs. Néanmoins, le débit offert par Zigbee est un point critique surtout si le réseau considéré est dense. Au niveau de la couche réseau, le routage peut être direct si l’adresse réseau est connue ou indirect (de manière hiérarchique) dans le cas contraire et ceci après une phase de découverte de la route comme c’est le cas du protocole AODV ‘Ad hoc on demande distance vector’.

Contrôleur

Mémoire

Capteurs/actionners

Source énergétique

Communication 

Chapitre 1 : Réseaux de capteurs

  14

Type Année Vitesse CPU (MHZ)

Mémoire programmes (Kb)

RAM (Kb) Fréquence (MHZ)

Débit de transmission (Kbps)

Mica 2002 6 128 4 868 10/40

Mica2 2003 16 128 4 433/868/916 38.4Kbaud

Micaz 2004 16 128 4 2.4GHZ 250

TelosB/Tmote 2005 16 48 10 2.4GHZ 250

BTnode 2007 8 128 64 433-915 Varié

Stargate 2005 400 32Mb(SD) 64Mb (SD) 2.4GHZ varié

Tableau1. Plateformes des réseaux de capteurs.

6. Réseaux de capteurs versus Manet

Les réseaux de capteurs et les réseaux ad hoc représentent deux catégories des réseaux sans fil. La communication sans fil, le fonctionnement sans avoir besoin d’une infrastructure pour la gestion des échanges et la dépendance de la portée de communication aux capacités de rayonnement et de la puissance choisie sont des points communs à eux. Les réseaux ad hoc sont composés d’objets ayant un intérêt propre [6] et sont souvent utilisés directement par des êtres humains (PDA, portables,…). Par exemple, dans un réseau de téléphonie, chaque hôte désire joindre un correspondant ou accéder à des services. Les hôtes dans un réseau de capteurs sont fréquemment déployées dans un environnement hostile, ont une application commune et sont orientées vers la collecte des données. Elles sont peu mobiles par rapport aux hôtes dans un réseau ad hoc. Un autre point concerne les capacités de calcul et d’énergie qui sont souvent limitées dans les réseaux de capteurs. Enfin, il est à noter que les réseaux ad hoc opèrent à un débit élevé en comparaison au débit utilisé dans les réseaux de capteurs [7].

7. Challenge des réseaux de capteurs

-Type de service : une fois déployé, un réseau de capteurs doit fournir des informations significatives et ne doit pas se limiter au transport des bits de données comme dans le cas des réseaux classiques [4].

Chapitre 1 : Réseaux de capteurs

  15

-Qualité de service : le délai des applications temps réel est un facteur crucial. La qualité du service peut être atteinte en assurant un bon taux de délivrance des messages tout en garantissant une meilleure qualité des informations mesurées et transportées [4].

-Tolérance aux fautes : ce paramètre est directement lié à l’aspect matériel et software. Divers points sont à prendre en considération : épuisement de l’énergie des capteurs, interférences et des capacités de calcul très limitées. La solution pratique consiste à faire un déploiement redondant [4,5].

-Passage à l’échelle : lors de l’ajout de capteurs, le réseau est sensé fournir le même service [5].

-Durée de vie : la définition la plus connue de la durée de vie c’est l’intervalle de temps qui sépare l’instant de déploiement de l’instant où le premier capteur épuise son énergie. Elle doit être maximisée puisque le remplacement des batteries des capteurs n’est pas toujours pratique [4].

Quelques mécanismes sont disponibles pour atteindre ces objectifs. On peut citer les communications multi-sauts qui permettent de réduire la consommation énergétique, l’auto-configuration des paramètres et la collaboration afin de bien décider sur l’apparition d’un évènement [4].

8. Applications des réseaux de capteurs

Les caractéristiques des réseaux de capteurs leur permettent de couvrir une gamme importante d’applications qui peuvent être orientées temps, évènements, requêtes ou hybrides. On parle d’applications orientées temps si un instant précis est spécifié pour l’acquisition des données. La deuxième classe concerne le cas d’envoi des données lorsqu’un évènement spécifique se produise. Des fois, les nœuds capteurs ont besoin d’envoyer des données seulement si la station de base le demande. Enfin, on peut envisager une application hybride dont le mode d’envoi des données combine une ou deux stratégies de celles énoncées auparavant.

-Applications militaires : les réseaux de capteurs sont faciles à déployer et peuvent s’auto-configurer [7]. De plus, la destruction d’un nœud dans un environnement hostile n’affecte pas les autres. Ces caractéristiques favorisent l’utilisation des réseaux de capteurs pour la surveillance des troupes, champs de bataille, guidage des missiles, détection d’attaques nucléaires,… Dans ce cadre, SmartDust est un projet qui a été financé par DARPA où l’information est obtenue à partir des mouvements des ennemies et la détection d’agents chimiques [5].

-Applications environnementales : il peut s’agir de la surveillance des animaux ou le suivi des conditions de l’environnement (telles que la détection des altérations dans une structure d’un bâtiment [7], la collecte des informations sismiques qui peuvent avoir lieu à côté des volcans en s’appuyant sur des capteurs sismiques et acoustiques ou la détection des tempêtes de sable). Par exemple, une recherche sur le microclimat des arbres géants a été menée en déployant un réseau de capteurs. Les capteurs sont munis de petites stations météorologiques afin d’étudier les variations microclimatiques suivants les régions d’une forêt.

Chapitre 1 : Réseaux de capteurs

  16

-Applications médicales : CodeBlue est un projet à l’université Harvard. Son objectif est le déploiement des capteurs afin de surveiller la saturation de l’oxygène dans le sang, les activités électriques et musculaires chez des patients tout en ayant la possibilité d’accéder à ces informations à travers des PDA [5].

9. Pile protocolaire d’un réseau de capteurs

La figure suivante schématise les différentes couches de la pile protocolaire [5].

Figure 4. Pile protocolaire d’un réseau de capteurs.

-Couche physique : elle est responsable de la sélection de la fréquence, la détection des signaux et la modulation.

-Couche liaison : effectue le multiplexage des données, détecte les frames et sert d’accès au medium.

-Couche réseau : décide du routage des paquets en fonction des requêtes, évènements,…

-Couche transport : elle est requise lorsque le réseau est accessible à travers Internet ou un autre réseau.

-Couche application : spécifie le code de l’application.

Les plans de gestion de l’énergie, de la mobilité et des tâches surveillent la puissance, le mouvement et la distribution des tâches.

10. Protocoles de routage dans les réseaux de capteurs

Liaison 

Physique 

Réseau 

Transport 

Application  Gestion 

de 

l’énergie 

Gestion  

de  

la mobilite 

Gestion  

des  

tâches 

Chapitre 1 : Réseaux de capteurs

  17

Acheminer des paquets des données d’une ou plusieurs sources vers une ou plusieurs destinations est la tâche assurée par la couche réseau de la pile protocolaire. Cependant, diverses contraintes liées aux réseaux de capteurs impliquent la conception de nouveaux protocoles de routage qui diffèrent de ceux dédiés aux réseaux ad hoc. En effet, les protocoles de routage dans les réseaux de capteurs doivent [5]:

-Etre basés sur un échange réduit de messages vue les contraintes énergétiques et celles de calcul et de capacité mémoire.

-Supporter un nombre élevé de capteurs dont les adresses peuvent être inconnues lors du déploiement.

-Etre robustes puisque tous les nœuds capteurs peuvent jouer le rôle de routeurs.

-Opérer dans des topologies qui soient même aléatoires.

Les techniques de routage présentées dans la littérature regroupent : l’inondation, routage hiérarchique, géographique et cross-layer.

10-1. Inondation

L’idée de l’inondation est intéressante dans les réseaux de capteurs denses où il est impossible d’affecter des adresses aux nœuds capteurs. Dans ce contexte, la source diffuse des paquets à ses voisins et tout nœud qui reçoit ce paquet doit à son tour le diffuser à ses voisins. Ce processus se répète jusqu’à ce que la destination puisse avoir les paquets de la source. Le problème de cette technique est qu’elle nécessite des ressources de calcul importantes. En pratique, on peut penser à contrôler l’opération de diffusion.

10-2. Gossiping

Un des problèmes de la diffusion est lié à la réception de la même copie du paquet par plusieurs nœuds capteurs et à un moment donné, on peut observer diverses copies du même paquet en train de circuler dans le réseau. Le gossiping a résolu ce problème en sélectionnant un seul nœud pour relayer le paquet. De cette façon, la consommation énergétique sera faible en comparaison à l’inondation.

10-3. SPIN

J.Kulik et al. [5] ont développé un protocole de routage dont le principe se base sur la diffusion et la négociation. Ce protocole fonctionne comme suit : avant de procéder à l’envoie des données, un nœud avertit ses voisins en transmettant un paquet ADV (advertise) qui contient des meta-données. Le nœud qui s’intéresse répond par un message request (REQ). Enfin, le paquet de données est envoyé. Un avantage de ce protocole est lorsqu’un nœud constate que sa batterie

Chapitre 1 : Réseaux de capteurs

  18

est au-dessous d’un certain seuil, il cesse de participer dans le protocole. Autrement dit, il ne répond plus aux ADV reçus.

B B B

C C C

A A A

D D D

E E E

Figure 5. Principe du protocole SPIN.

Par exemple la figure ci-dessus montre les étapes du protocole SPIN. Dans cet exemple, seul le nœud C est intéressé aux données.

10-4. Routage hiérarchique

Considérons un réseau de capteurs contenant plusieurs sources et adoptant l’inondation comme technique de routage. Dans ce cas, les nœuds qui soient proches de la destination consomment une énergie importante et leurs batteries peuvent être épuisées rapidement. Pour cela, on a pensé à regrouper les nœuds capteurs en clusters ; chacun d’entre eux est dominé par un cluster-head. Le problème majeur de cette technique est le manque de robustesse si les clusters heads tombent en panne. Dans Leach [5], les cluster head sont sélectionnés de manière dynamique. Le protocole opère en cycles. Dans chaque cycle, des cluster heads sont élus, les clusters sont formés et la communication est établie entre eux.

10-5.Routage géographique

Cette technique exploite les positions des capteurs obtenues soit par système GPS soit par localisation. Des règles simples sont utilisées pour acheminer les paquets. L’inconvénient majeur de cette technique concerne les erreurs de localisation. On trouve deux variantes pour le routage géographique [9] :

-Routage par voisinage: les algorithmes de routage greedy basent leur raisonnement sur la trajectoire à vol d’oiseau entre une source et une destination. Le principe consiste à acheminer le

AD

AD

AD

AD

DATA RE

Chapitre 1 : Réseaux de capteurs

  19

message par le biais du meilleur voisin qui soit proche de la destination en termes du progrès, distance ou angle est sélectionné. Ce procédé est répété jusqu’à ce que la destination soit atteinte. Par exemple, le voisin A minimise l’angle par contre B minimise le progrès et la distance. L’efficacité de cette technique, en terme du taux d’acheminement des messages est liée à la densité réseau. De plus, la consommation énergétique est une contrainte inhérente aux réseaux de capteurs ; d’où l’idée d’envoyer les paquets réseau au voisin qui minimise la dépense énergétique. Le travail présenté dans [10] traite conjointement deux problèmes complexes qui sont étroitement liés et dont la résolution simultanée est fonction de diverses contraintes. Il s’agit de localiser des capteurs mobiles et d’effectuer un routage géographique efficace en énergie.

-Routage par face : définit une forme géométrique afin d’éviter le problème des trous qui se pose dans le routage greedy. Evidemment, la forme construite doit inclure l’ensemble des nœuds du réseau. Lorsqu’un nœud capteur envoi un message à une destination, le message sera transmis le long des faces de ce graphe qui intersectent la droite passant par la source et la destination. Un problème de complexité de la construction du graphe est à prendre en compte.

A

S D

B

Figure6. Principe du routage géographique.

-CFG (greedy- face-greedy) : cette catégorie a été proposée afin de combiner les avantages des de techniques citées plus haut. Le principe ici est de procéder par routage greedy et de basculer au routage par face dès la présence d’un trou.

10-6.Techniques cross-layer

Les études récentes ont montré que l’intégration des fonctionnalités de deux ou trois couches de la pile protocolaire permet de diminuer considérablement la consommation énergétique. La tendance actuelle consiste à mettre en œuvre des protocoles de routage qui tiennent compte du

Dis(A,D) 

Dis(B,D) 

Prog(A,D)

Prog(B,D)

Chapitre 1 : Réseaux de capteurs

  20

fonctionnement de la couche MAC et/ou physique [5]. Par exemple, acheminer les paquets en tenant compte du fait que les nœuds capteurs peuvent être mis en veille [6] constitue une thématique de recherche très intéressante. De plus, l’influence des conditions du canal lors du routage est un autre problème d’un intérêt important. I-F. Akyildiz et al. [5] ont conçus un protocole avantageux d’un point de vue latence, énergie et complexité. Un seul module a été défini tel que chaque nœud possédant des données diffuse un paquet spécial dans le but d’indiquer à ses voisins qu’il possède un paquet. La décision de la participation d’un voisin dépend de quatre paramètres : la puissance du signal reçu, la congestion, le dépassement de capacité au niveau du buffer et l’énergie résiduelle. Ce protocole a été comparé à quelques configurations s’appuyant sur le routage géographique et l’inondation et adoptant un protocole MAC (SMAC, CSMA,…).

11. Pourquoi la récupération d’énergie dans les réseaux de capteurs ?

Par définition, la récupération d’énergie est le processus qui consiste à obtenir l’énergie à partir de l’environnement externe (lumière solaire et artificielle, mouvements vibratoires, chaleur, rayonnement électromagnétique,…) et de transformer cette énergie en une énergie électrique directement exploitée par les nœuds capteurs [11]. Les premiers nœuds capteurs étaient munis de petites batteries et la durée de vie est ainsi limitée. On a donc pensé à remplacer les petites batteries par d’autres qui soient plus puissantes mais le coût et de la taille des capteurs étaient deux paramètres à prendre en charge. D’autre part, quelques réflexions ont abordé les problématiques liées aux réseaux de capteurs tout en spécifiant la maximisation de la durée de vie comme fonction objective. Cependant, la durée de vie reste toujours limitée et bornée. Une autre alternative a récemment émergé et consiste à intégrer un système de récupération d’énergie dans chaque nœud capteur. Présentement, des solutions spécifiques pour quelques applications existent mais aucun standard n’a été mis en œuvre. Citons par exemple, ZebraNet qui est un réseau de capteurs mobiles où les capteurs sont équipés par un système GPS pour le suivi des zèbres et leur habitat. Il est basé sur des cellules solaires. En d’autres termes, la récupération d’énergie permet :

-maximiser la durée de vie du réseau.

-Des avantages économiques en évitant les coûts non négligeables de remplacement des batteries.

-Avoir des capteurs autonomes.

12. Architecture d’un nœud

A côte des composants déjà cités en section 3, chaque nœud du réseau doit inclure un système de récupération et de conversion de l’énergie. Dans ce cas, deux possibilités sont offertes.

Chapitre 1 : Réseaux de capteurs

  21

Figure 7. ZebraNet.

Figure 8. Architectures d’un système de récupération d’énergie

Dans le premier cas illustré en figure 8, le système de récupération d’énergie alimente directement le capteur qui soit opérationnel tant que l’énergie récupérée dépasse le minimum requis pour son fonctionnement.

Dans le second cas, l’énergie récupérée est tout d’abord sauvegardée avant toute éventuelle utilisation. Dans ce contexte, le composant de stockage peut être dupliqué pour servir de backup en cas de problème de décharge. L’avantage majeur de cette architecture est que tout excès d’énergie sera sauvegardé et exploité plus tard. Notons que le composant de stockage (buffer) a généralement une capacité limitée et des mécanismes de gestion de l’énergie sont préconisés [11].

Composant de stockage 

Système de récupération 

Composant de stockage secondaire 

Capteur Système de récupération 

Capteur 

Chapitre 1 : Réseaux de capteurs

  22

13. Sources énergétiques et technologies des batteries

Différentes sources d’énergie peuvent être exploitées et chacune possède ses propres caractéristiques. De manière générale, les sources énergétiques peuvent être classées en [12]:

-Contrôlables ou non contrôlables : les sources d’énergie contrôlables fournissent l’énergie des qu’elle soit requise. Cependant, les sources non contrôlables permettent de récupérer l’énergie seulement si elle est disponible. Dans ce cas, un modèle de prédiction de l’énergie est nécessaire. Si le modèle de prédiction est complexe on parle de source non contrôlable et imprédictible. Les ondes radio fréquences sont partiellement contrôlables puisque la quantité d’énergie produite n’est pas déterministe et elle dépend des caractéristiques de propagation.

-Ambiante : l’énergie ambiante est celle obtenue à partir de l’environnement externe. Une autre catégorie représente l’énergie récupérée à partir du corps humain.

Tableau 2. Sources énergétiques et leurs caractéristiques.

Chaque source énergétique adopte un mécanisme pour la conversion de l’énergie récupérée. On peut citer [13]:

-Effet photovoltaïque : les cellules solaires exploitent l’effet photovoltaïque pour convertir la lumière du soleil en une énergie électrique. Le composant principal de ces cellules est le silicium. Dès que les cellules sont exposées au soleil, les électrons échappent du silicium puis un flot est créé.

-Effet thermique : un voltage est créé en présence d’une différence d’énergie entre deux métaux ou semi-conducteurs. Par exemple, ThermoLife est un petit générateur qui offre une puissance de

Source énergétique Caractéristiques

Solaire Ambiante, incontrôlable, prédictible

Vent Ambiante, incontrôlable, prédictible

RF Ambiante, partiellement contrôlable

Chaleur du corps et pression du sang Incontrôlable, imprédictible

Enfoncement d’un bouton Contrôlable

Vibrations dans un environnement indoor Ambiante, incontrôlable, imprédictible

Chapitre 1 : Réseaux de capteurs

  23

10-100 MW pour une température de quelques Kelvins. ThermoLife a un diamètre de 1cm et une hauteur de 1.4mm.

-Effet vibratoire : génère un potentiel électrique par conversion d’une énergie mécanique. Le mécanisme piézoélectrique est une sous-catégorie qui tire profit des caractéristiques de quelques matériaux dont les cristaux deviennent électriquement polarisés lorsqu’ils sont soumis à une force mécanique. La chaussure générant de l’énergie pendant la marche et qui a été développée par l’équipe MIT Media laboratory représente le prototype le plus marquant qui convertit l’énergie mécanique en une énergie électrique.

Une fois l’énergie a été récupérée à partir d’une source, on a besoin de batteries rechargeables présentant une bonne capacité, durée de recharge et vitesse de rechargement. Les batteries à base du LI-ion constituent un bon choix technologiques.

14. Gestion de l’énergie récupérée

La thématique des réseaux de capteurs classiques concerne la minimisation de la consommation énergétique ou la maximisation de la durée de vie du réseau. Dans les réseaux de capteurs pouvant récupérer de l’énergie à partir de l’environnement externe, deux visions sont possibles : traiter l’énergie récupérée comme un supplément et maximiser donc la durée de vie ou bien trouver des mécanismes pour adapter la puissance de transmission en fonction de l’énergie récoltée. Nous décrivons ci-dessous les règles nécessaires dans le dernier cas [12].

Considérons que la source énergétique fournit une puissance (t)PS et que la puissance consommée est (t)Pc . Trois cas peuvent être distingués pour modéliser le comportement d’un système de récupération de l’énergie.

-Aucun stockage de l’énergie : le système peut opérer à tout instant si :

t (t)P(t)P cs ∀≥ (1)

-Buffer idéal :

Dans le cas d’un buffer idéal

0sc dtPdtP Bt

o

t

o+∫ ∫≤ (2)

Tel que 0B représente la quantité initiale d’énergie.

-Buffer non idéal :

B dtP-dt]P-[P-dt ]P-[PηBt

o

t

0

t

0leaksccs0 ∫ ≤∫ ∫+ ++ (3)

Chapitre 1 : Réseaux de capteurs

  24

B : Capacité du buffer.

η : Efficacité du chargement.

leakP : Puissance de décharge.

⎩⎨⎧

<=>

=+

0 xsi 00 xsix

[x] (4)

15. Routage avec récupération d’énergie

La récupération d’énergie est un domaine qui se trouve à l’intersection de l’électronique et l’informatique. Cependant, la plupart des travaux s’intéressent à la fabrication de systèmes autonomes qui soient aptes à récupérer et à convertir l’énergie.

La présente section donne un aperçu des travaux de recherche qui se sont focalisés à formuler et à résoudre le problème du routage dans les réseaux de capteurs en considérant la récupération d’énergie.

Dans [14], les auteurs ont proposé une formulation cross-layer qui inclut le routage et l’ordonnancement où plusieurs stations de base sont présentes. Le système fonctionne selon des slots de temps. Chaque nœud capteur peut être actif ou passif dans un slot. Dans l’état passif, un nœud peut uniquement récupérer de l’énergie et ne participe pas dans les transmissions ou les réceptions. La technique de routage adoptée est celle d’inondation limitée (muslticast). Divers paramètres ont permis de conclure les performances de la solution proposée.

Dans [15], le routage considéré s’appuie sur une topologie arbre mais chaque capteur peut avoir plusieurs parents afin de pouvoir sélectionner le meilleur chemin en termes de latence. Chaque nœud contrôle l’énergie consommée par rapport à celle récupérée.

Quelques d’autres travaux ont abordé le routage opportuniste sous l’hypothèse de récupération d’énergie. En fait, la première idée du routage opportuniste a été publiée en 2008 et constitue une bonne solution pour dépasser quelques problèmes de la transmission sans fil. D’ailleurs, le chapitre suivant de ce manuscrit va détailler le principe du routage opportuniste.

16. Conclusion

La consommation énergétique dû aux communications est à l’origine de divers problèmes dans les réseaux de capteurs. Ainsi, plusieurs applications critiques ne tolèrent pas que des capteurs déployés ne maintiennent pas leurs charges. La proposition de protocoles efficaces en énergie est donc l’atout majeur dans les réseaux de capteurs. Plus précisément, les protocoles de la couche réseau, Mac et physique doivent tenir en compte de :

-consommation énergétique.

Chapitre 1 : Réseaux de capteurs

  25

-Les capacités limitées en termes de calcul et de mémoire.

D’autre part, la technologie actuelle de récupération d’énergie permet d’augmenter les capacités énergétiques des capteurs mais il est primordial de bien utiliser cette énergie vue les caractéristiques des sources énergétiques.

Après cet état de l’art concernant les réseaux de capteurs et la récupération d’énergie, nous allons se focaliser sur la couche réseau. En particulier, le routage opportuniste est une nouvelle idée qui prend en compte les erreurs de transmission. Le routage opportuniste et le codage réseau linéaire aléatoire feront donc l’objet du chapitre suivant.

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  26

1. Introduction

Pour assurer des communications dans les réseaux sans fil, de nombreux protocoles de routage existent et ont été suffisamment testés. Le problème crucial de ces protocoles et qu’ils ne tiennent pas compte des erreurs de transmission. En exploitant la diversité spatiale et la caractéristique de diffusion des réseaux sans fil, le routage opportuniste choisit le prochain voisin en fonction des critères de proximité par rapport à la destination. Le protocole le plus connu s’appelle MORE. Ce dernier tire profit des avantages du codage réseau aléatoire afin d’éviter la coordination entre les nouds. Il opère sur les vecteurs de codes, ignore tout vecteur qui ne soit pas innovant et code chaque nouvelle transmission. Ceci favorise son utilisation dans des réseaux de capteurs ayant de faibles ressources énergétiques. Ce chapitre porte donc sur le routage opportuniste et donne en parallèle un aperçu concernant les champs de Galois qui sont souvent utilisés dans le codage réseau aléatoire.

2. Définition d’un champ

C’est une structure algébrique munie des opérations (+ ,- , * , /) et préservant les règles connues. Plus spécifiquement, si F est un champ associé des opérations d’addition (+) et de multiplication (.) alors [16]:

1‐ cb)(ac)(ba ++=++ //Associativité de l’addition

2‐ abba +=+ //Commutativité

3‐ Il y a un élément 0 tel que 00a a =+∀

4‐ (-a) a ∃∀ Tel que 0 (-a) a =+

5‐ (a.b).ca.(b.c) = //Associativité de la multiplication

6‐ b.aa.b = //Commutativité de la multiplication

7‐ Il existe un élément 1 diffèrent de zéro tel que a aa.1 ∀=

8‐ 1a0,a −∃≠∀ Tel que 1a.a-1 =

9‐ a.ca.bc)a.(b +=+ //Distribution de la multiplication par rapport à l’addition

L’ensemble des réels et celui des complexes sont des exemples de champs.

La notation pZ réfère à l’ensemble des entiers 1}p,{0,1,2,... − en utilisant l’arithmétique modulo p .

Si p est premier alors pZ est un champ et toutes les propriétés énoncées ci-dessus sont vérifiées.

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  27

Par exemple, les tables suivantes montrent l’opération d’addition et de multiplication dans le champ 7Z .  

Table1.a. Addition dans le champ Z7. Table1.b. Multiplication dans le champ Z7.

3. Champs de Galois

Sont très utilisés dans les opérations de codage et de cryptographie. Les propriétés fondamentales des champs de Galois ont été découvertes par le mathématicien Français Galois.

Si p est premier alors )GF(p m est composé des polynômes de degré 1)(m − définis dans le champ pZ . La forme générale d’un polynôme est [17]:

⎪⎩

⎪⎨⎧

−∈+++−

1}{0,1,...paxaxa...xa

i

00

11

1m1m (1)

Dans la pratique on se limite souvent à 2p= .

La construction d’un champ de Galois est obtenue à partir d’un polynôme primitif qui dépend de m. Ainsi, la table suivante spécifie les polynômes primitifs pour 3,...,10m=

+ 0 1 2 3 4 5 6

0 0 1 2 3 4 5 6

1 1 2 3 4 5 6 0

2 2 3 4 5 6 0 1

3 3 4 5 6 0 1 2

4 4 5 6 0 1 2 3

5 5 6 0 1 2 3 4

6 6 0 1 2 3 4 5

. 0 1 2 3 4 5 6

0 0 0 0 0 0 0 0

1 0 1 2 3 4 5 6

2 0 2 4 6 1 3 5

3 0 3 6 2 5 1 4

4 0 4 1 5 2 6 3

5 0 5 3 1 6 4 2

6 0 6 5 4 3 2 1

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  28

Table2. Exemples de polynômes primitifs.

4. Addition et multiplication dans )GF(2 m

L’opération )p(p 21 + consiste à additionner les coefficients de 1p et 2p .

Pour la multiplication, le résultat peut être en dehors du champ et il est donc nécessaire de considérer )modp.p(p 21 .

Nous allons donc expliquer ces deux opérations à travers un exemple dans )GF(2 3 dont la représentation des polynômes est donnée en table 3.a et le résultat de l’addition est illustré en table 3.b. Prenons par exemple l’addition de 12 ++ xx , 1+x et 12 +x ainsi que la multiplication de ( 12 +x ) et ( xx +2 ). Ces opérations peuvent être effectuées comme suit [16]:

12 ++ xx 12 +x

10 ++ x xx +2

102 ++x

1 0 0 xx +3

24 xx +

m )(xP

3 31 xx ++

4 41 xx ++

5 521 xx ++

6 61 xx ++

7 731 xx ++

8 84321 xxxx ++++

9 941 xx ++

10 1031 xx ++

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  29

xxxx +++ 234 31 xx ++

xxx ++ 24

3x x

Table3. a. Représentation polynomiale. Table 3.b. Addition dans )2( 3GF .

5. Codage réseau

Le codage réseau est un nouveau paradigme qui a attiré l’attention des informaticiens et électroniciens. L’idée principale consiste à permettre aux nœuds du réseau de traiter les paquets reçus (effectuer une addition binaire) avant de les envoyer. Ceci permet d’accroitre considérablement le débit des transmissions. Afin d’avoir une idée préliminaire à propos du codage réseau, nous allons considérer le réseau illustré en figure 1 où les nœuds représentent des terminaux et les liens représentent des canaux de transmission. Deux sources 21 S,S et deux destinations 21 R,R sont présentes. Le temps est divisé en slots et chaque canal peut envoyer 1bit/slot. La source 1S peut générer un seul bit/slot qui est dénoté par 1x et la source 2S peut générer un seul bit/slot qui est dénoté par 2x [18].

Si seul 1R utilise le réseau, elle peut obtenir 21 x,x à travers DECBet DA −−−− .

Décimal Binaire Polynomiale

0 000 0

1 001 1

2 010 x

3 011 1+x

4 100 2x

5 101 12 +x

6 110 xx +2

7 111 12 ++ xx

+ 0 1 2 3 4 5 6 7

0 0 1 2 3 4 5 6 7

1 1 0 3 2 5 4 7 6

2 2 3 0 1 6 7 4 5

3 3 2 1 0 7 6 5 4

4 4 5 6 7 0 1 2 3

5 5 4 7 6 1 0 3 2

6 6 7 4 5 2 3 0 1

7 7 6 5 4 3 2 1 0

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  30

Pareil, si seul 2R utilise le réseau, elle peut obtenir 21 x,x à travers FBet FECB −−−− .

Le problème se pose dès que 21 R,R s’intéressent en parallèle à obtenir 21 x,x . Le codage réseau a résolu ce problème en transmettant 213 xxx += de cette manière 1R reçoit ( 31 x,x ) et 2R reçoit ( 32 x,x ) et chacun d’entre elles peut résoudre un système d’équations.

x1+x2

R1 R2 R1 R2 R1 R2

Figure 1. a. Routage vers R1. Figure 1.b. Routage vers R2. Figure 1.c. Multicast avec codage réseau.

5-1. Avantages du codage réseau

A côté de l’amélioration du débit de transmission qui a été montrée à travers l’exemple introductif, deux avantages clés doivent être mentionnés [18].

-Minimisation des ressources énergétiques : soit le réseau ad hoc de la figure 2 où A et C veulent échanger 21 x,x en utilisant B comme relais. Le temps est divisé en slots et chaque équipement peut transmettre ou recevoir dans un slot. Avec le codage réseau, B fait une seule transmission contenant 21 xx + au lieu d’en faire deux et ceci permet un gain énergétique important.

A  B 

F D 

A  B

C

D  F

E

A B 

C F 

S1  S2  S2 S1  S2 S1 

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  31

-Sécurité : supposant qu’un nœud attaquant tente d’écouter les transmissions faites sur le chemin DBA −− ou DCA −− . Avec le codage réseau, la présence d’un attaquant ne va pas dégrader les

performances du système en termes de sécurité puisqu’il est impossible de décoder n’importe quelle partie des données.

x1 x1

x1 x1 x2

x2 x1 + x2 x1+ x2

x2 x2

Figure2.a. Echange de x1 et x2 sans codage réseau. Figure 2.b. Echange de x1 et x2 avec codage réseau.

x1 x1 x1+x2 x1+x2

x2 x2

x1+2x2 x1+2x2

Figure 3.a. Envoi des données sans codage réseau. Figure 3.b. Envoi des données avec codage réseau.

A  CB  A B C

A  CB  A B C

A  CB  A B C

A  CB 

A

B

C

DA 

D

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  32

5-2. Théorème du codage réseau

Soit G un graphe. Une coupe est une division des nœuds en deux sous-ensembles. Elle est caractérisée par sa taille qui est le nombre de liens traversant la coupe. Le théorème du codage réseau affirme que le débit observé au niveau de chaque nœud du réseau est égal à la valeur de la coupe minimale entre la source et le nœud concerné. Ce débit peut être atteint par codage réseau [19].

.

Coupe= 3 coupe = 2 coupe =2

Figure 4.a. Taille de la coupe au niveau de D. Figure 4.b. Taille de la coupe au niveau de E et F.

6. Codage réseau linéaire aléatoire

L’un des problèmes du codage réseau est qu’il est difficile de l’utiliser dans des topologies aléatoires, variables ou denses. Une autre réflexion a été proposée par [20] et consiste à effectuer des combinaisons linéaires aléatoires des paquets dans un champ fini ; le plus souvent le champ de Galois. Considérant n paquets n21 M,...,M,M générés par une ou plusieurs sources. Chaque paquet est associé à un vecteur de coefficients )g,...,g,(gg n21= dans )GF(p n . Chaque nœud choisit les coefficients de façon indépendante et décentralisée. De plus, les paquets peuvent être recombinés par les nœuds intermédiaires. La figure 4 montre que la source a diffusé un paquet combiné )X,(g 11 .

1g Est le vecteur code.

S

T w

D

A B 

S

E F 

C

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  33

∑==

n

1iii1 MgX (2)

Le nœud C a procédé à une combinaison des deux paquets reçus et a diffusé )g,(X '' tels que :

⎪⎪⎩

⎪⎪⎨

=

=

=

=

2

1j

jij

2

1j jj

ghg'

XhX' (3)

n21 M,...,M,M

nn221 M...gMgMg1

++ nn221 M...gMgMg1

++

)M...gMgM(gh

)M...gMgM(gh

nn2212

nn2211

1

1

++

+++

Figure 5. Principe du codage réseau linéaire aléatoire.

7. Pourquoi et c’est quoi le routage opportuniste ?

C’est un nouveau mécanisme de routage dédié aux réseaux mesh dont le taux d’erreur de transmission est considérable. Dans le routage traditionnel, on sélectionne le prochain voisin avant la transmission mais ceci implique des problèmes de réception si les liaisons sont soumises à des erreurs. Le routage opportuniste exploite la diffusion qui existe dans les réseaux sans fil tel

A  B

S

E  F

C

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  34

que chaque nœud qui arrive à surprendre un paquet et soit proche de la destination est apte à participer dans l’envoi des paquets reçus. La technique la plus récente du routage opportuniste est basée sur le codage réseau telle que la source diffuse ses paquets et les routeurs créent une combinaison linéaire aléatoire des paquets reçus. Enfin, la destination envoi un acquittement suivant le chemin inverse en cas où tous les paquets ont été reçus [21].

0.49 1/0.49

1.1 1.1 1.1 1/1.0 1/1.0

P1,P2 P1

Figure 6.a. Exemple d’un réseau. Figure 6.b. Métrique ETX de chaque chemin.

Dans l’exemple précèdent, on suppose que S a diffusé deux paquets P1, P2. R a reçu P1, P2 par contre D a uniquement reçu P1. Dans ce cas, R n’a pas besoin de retransmettre P2 mais peut directement envoyer P1 + P2 . Deux questions principales sont à noter :

-Combien de paquets faut-il envoyer de sorte à garantir qu’au moins un nœud puisse recevoir un paquet ?

-Comment peut-on réduire la complexité des opérations d’additions et de multiplication ?

7-1Métrique ETX

Le raisonnement de base du routage opportuniste s’adapte bien à des réseaux sans fil soumis à des phénomènes physiques entraînant des erreurs de transmission des bits même en absence des collisions. La solution classique à ce problème s’appuie sur les retransmissions au niveau de la couche liaison et l’envoi d’un acquittement une fois le décodage est réussi. Ce mécanisme est inapproprié dans le cas où la diffusion est un principe de base. Pour cela, le routage opportuniste adopte bien la métrique ETX ‘expected number of transmissions’ pour délivrer un message. En fait, l’ETX est inversement proportionnelle au taux d’erreur. Par exemple le nombre de transmissions attendu suivant le chemin (S-R-D) de la figure 4.b est égale a 1/1.0+1/1.0=2 . Cependant, le nombre de transmissions attendu suivant le chemin (S-D) est 1/0.49=2.04 > 2 [22].

7-2 Protocol EXOR

S  DR  S DR

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  35

C’est le premier protocole de routage opportuniste et d’autres voies de réflexions ont été conçues après sa mise en œuvre. EXOR dépend de la couche Mac et assure ainsi le routage et l’ordonnancement des transmissions afin d’éviter les problèmes de collision. Partant de l’exploitation du principe de la diffusion dans un réseau sans fil contenant une seule source et une seule destination, ce protocole suit les étapes suivantes [23] :

-la source prépare un batch de paquets à diffuser. Elle doit également établir une liste de priorités concernant les nœuds pouvant participer dans la transmission. La priorité est basée sur la métrique ETX.

-La réception d’un paquet par un nœud n’appartenant pas à la liste des nœuds concernés par la transmission provoque son ignorance. Dans le cas contraire, le paquet est stocké dans un buffer et un ordonnancement est assuré. Le nœud le plus prioritaire est autorisé à transmettre en premier et chaque nœud maintient un compteur qui lui permet d’estimer l’instant adéquat pour la transmission. Si un paquet a été déjà transmis par un nœud prioritaire, les autres nœuds doivent le supprimer de leurs espaces de stockage et donc la possibilité qu’un paquet soit retransmis plusieurs fois est faible.

-Des que la destination reçois un pourcentage élevé (90%) des paquets du batch, un autre cycle est déclenché.

8. Protocole MORE ’Mac independant and Opportunistic routing’

C’est un protocole pour les réseaux mesh statiques. Il est situé entre la couche IP et la 802.11. Son principe peut être résumé par les opérations effectuées au sein de chaque nœud du réseau [21].

-Source : divise le fichier à transmettre en batchs de K paquets et lorsque la 802.11 autorise l’envoi des paquets, la source crée une combinaison linéaire aléatoire des K paquets et diffuse

∑=

=1..ki

iiPCP' tels que KiCi ...1, = représentent des coefficients aléatoires générés à partir d’un

champ de Galois. Chaque paquet envoyé contient l’IP de la source, la destination et la liste des nœuds pouvant participer dans la transmission en s’appuyant sur l’estimation de la métrique ETX.

-Nœuds intermédiaires : à la réception d’un paquet, le nœud concerné vérifie s’il appartient à la liste des nœuds devant participer dans la transmission. Dans ce cas, la vérification du contenu du paquet est exécutée. Il s’agit de tester si le paquet est innovant (porte une nouvelle information ou non). Plus particulièrement, un paquet est innovant s’il est linéairement indépendant des autres. Par la suite, si un nœud j a reçu des paquets de la forme ∑=

iiji PCP' , il crée une

combinaison linéaire aléatoire de tous les paquets reçus ∑=j

j'

j'' PRP .

-Destination : de même, la destination vérifie si les paquets reçus sont innovants et lorsque K nouveaux paquets ont été reçus, le processus de décodage aura lieu par l’inversion de la matrice des coefficients.

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  36

⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜

⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜

=

⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜

⎛−

'k

'2

'1

1

KKk2k1

2k2221

1k1211

k

2

1

P

.

.

.P

P

.

C . . . C C . . .

C . . . C CC . . . C C

P...PP

(4)

A la fin, un acquittement est soumis à la source pour terminer le protocole.

8-1. Nombre de transmissions

L’heuristique utilisée par MORE est la suivante : le prochain voisin est celui qui soit proche de la destination en termes du nombre de transmission attendu. ji <  Signifie que i est plus proche de la destination par rapport à j [21]. Le nombre de paquets attendus au niveau du nœud j est

∑>

−ji

iji )ε(1Z  

iZ  : Nombre de transmissions faites par le nœud i.

jiε : C’est le taux d’erreur sur le lien (i,j).

Plus précisément, chaque nœud maintient un compteur Cmp initialisé à 0 et il est incrémenté suivant la formule (5) après chaque réception d’un paquet.

∑>

−+=

jiiji

jjj

)ε(1Z

ZCmpCmp                                                         (5)

Si le compteur est positif, le nœud est autorisé à créer une nouvelle combinaison aléatoire des paquets reçus et lors d’une réception, le compteur est décrémenté de 1.

8-2. Format des paquets

Les paquets manipulés par le protocole MORE sont de deux types : donnée ou acquittement pour arrêter le processus de transmission. Chaque paquet contient donc un champ spécifiant son type, l’adresse IP de la source et l’adresse IP de la destination. A cela s’ajoute l’identificateur du flot généré et le numéro du batch auquel appartient le paquet. Dans le cas d’un paquet de données, d’autres champs sont nécessaires : le vecteur des coefficients, le nombre des nœuds concernés par la transmission, l’identificateur et le compteur de crédit associé à chacun d’entre eux. Enfin, le résultat du codage réseau aléatoire est inséré [21].

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  37

Type du paquet

IP de la source IP de la destination

Id du flot

N° du batch

Vecteur des coefficients

Nombre de nœuds

Id1 Cmp1

Id2 Cmp2

Figure 7. Format d’un paquet MORE.

8-3. Test de l’indépendance linéaire

Informellement deux vecteurs 21 V,V sont linéairement indépendants si toute combinaison linéaire finie nulle de ces deux vecteurs a nécessairement tous ses coefficients nuls. Cela revient à dire qu’aucun vecteur considéré n’est combinaison linéaire des autres. Prenons l’exemple des vecteurs 1,2)(3,et (1,0,1)1,1),(2, −− . Nous constatons que 1,2)(3, (1,0,1) 1,1)(2, −=+− et les trois vecteurs sont linéairement dépendants. Le test de l’indépendance linéaire est souvent mené par l’algorithme Gauss-Jordan [24]. Soit M la matrice des coefficients. L’objectif de cet algorithme est de maintenir une matrice triangulaire à la réception d’un nouveau paquet de données contenant bien sûr un vecteur de codes. Evidemment, chaque vecteur reçu doit être inséré dans la bonne ligne de la matrice M . Les transformations de l’algorithme Gauss-Jordan peuvent être expliquées à travers l’exemple qui suit.

Si le premier vecteur reçu est 1,1)- , (2 la matrice M devient :

⎟⎠⎞

⎜⎝⎛=

21

21- 1M tel que :

2M(1)M(1) =

Le deuxième vecteur reçu 0,1) , (1 ne pourra pas être inséré en ligne 2. Par contre on peut l’insérer en ligne 3 et matrice M devient :

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  38

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

=

21

21 0

21

21- 1

M , tel que : M(1)M(3)M(3) −=

Le troisième vecteur reçu 2,-1) , (-3 peut être inséré en deuxième ligne. La matrice M a donc la forme suivante :

⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜

=

21

21 0

21

21 0

21

21- 1

M , tel que M(1)*3M(2)M(2) +=

Reste à transformer la deuxième ligne.

⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜

=

0 0 021

21 0

21

21- 1

M , tel que : M(2)M(3)M(3) +=

Nous constatons que la matrice M contient une ligne nulle et le nouveau vecteur reçu n’est pas linéairement indépendant des autres.

Enfin, la figure 6 explique les principales étapes du protocole MORE.

9. Protocole SOAR

Ce dernier a été présenté dans [25] afin de supporter des flots multiples. C’est un protocole de routage proactif où chaque nœud maintient une table de routage contenant la destination, la route sélectionnée par défaut et la liste des nœuds impliqués dans la participation. La sélection de la route peut être basée sur la métrique ETX ou n’importe quelle autre métrique tout en tenant compte de la priorité. A la différence de MORE, SOAR permet aux nœuds non sélectionnés et qui soient proches de la route établie par défaut de participer dans la transmission afin de minimiser des transmissions inutiles. Cependant, la source doit limiter le nombre de nœuds concernés. En ce qui concerne les transmissions, SOAR procède de la même manière que le

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  39

protocole TCP et le compteur de temps est calculé pour estimer l’instant de la prochaine transmission.

10. Conclusion

L’exploitation de la diversité spatiale dans un environnement caractérisé par des erreurs de transmission constitue l’idée clé du routage opportuniste. MORE est le protocole de routage opportuniste le plus populaire. Ce dernier code chaque nouvelle transmission par le biais du codage réseau aléatoire. Aucune synchronisation n’est nécessaire dans ce cas.

Le problème traité dans cette thèse est essentiellement basé sur le protocole MORE. Notre souci est de reformuler ce protocole pour le cas de capteurs ayant des capacités de récupération d’énergie à partir d’un environnement externe tout en minimisant le temps nécessaire pour compléter l’application (terminer le décodage de tous les paquets envoyés). Le but donc du chapitre qui suit est de présenter la technique d’optimisation utilisée avant de passer à la description du système principal de cette thèse.

Chapitre 2 : Routage opportuniste et codage réseau linéaire aléatoire

  40

Emission Réception

Figure 8. Principe du protocole MORE.

Autoriser a transmettre et Cmpi>0?

ETX du noeud précèdent>ETX(i)

Créer un paquet

Source?

Cmpi Cmpi-1

Encoder

Envoyer

Incrémenter Cmpi selon (5)

Paquet innovant?

Stocker Rejeter

Destination et nombre des paquets =K ?

Décoder

Chapitre 3 : Optimisation F-Lipschitz

  41

1. Introduction

Les applications potentielles de l’optimisation sont diverses. En particulier, les protocoles spécifiques aux réseaux de capteurs définissent souvent une fonction objective à atteindre sous un ensemble de contraintes. Cependant, la forme de la fonction objectif et l’ensemble des contraintes peuvent être différentes d’un problème à un autre et il est toujours question de chercher une méthode de résolution adéquate. Récemment, la méthode d’optimisation F-Lipschitz a été proposée et cette dernière s’adapte bien aux réseaux de capteurs. Son avantage clé est qu’elle peut être appliquée à un problème linéaire, non linéaire, convexe ou non. De plus, il est également possible de calculer la solution de manière distribuée. L’existence de la solution optimale est assurée par cette technique d’optimisation.

L’objectif de ce chapitre est de présenter en premier lieu l’optimisation de manière générale puis de détailler la méthode F-Lipschitz.

2. Problème d’optimisation

Une prise de décision efficace requiert souvent un processus de formulation, modélisation et d’optimisation du problème. Une première version du problème traité est spécifiée dans la première étape. L’accent doit être mis sur les objectifs du problème ainsi que les facteurs qui le caractérisent. La deuxième étape établie un modèle du problème considéré tout en s’appuyant sur les modèles existants dans la littérature. La simplicité du modèle est un paramètre à prendre en charge. La résolution du problème est la troisième étape qui vise à trouver une solution optimale ou sous optimale en fonction des objectifs dressés lors de l’analyse des besoins. Ce processus peut être itératif afin d’atteindre de bonnes performances [26].

Figure1. Processus de prise de décision.

Dans ce chapitre, on se focalise sur l’optimisation mais avant d’y aller plus loin il est nécessaire de définir ce concept.

Formulation Modélisation Optimisation Implémentation

Chapitre 3 : Optimisation F-Lipschitz

  42

Définition

Soit cette fonction à valeurs réelles :

0}h(x)0,g(x)|F{xCRx

RF:f(x)n

=≤∈=∈

→ (1)

L’objectif de l’optimisation est de déterminer Fx * ∈ qui minimise f(x) tel que : Fxf(x))f(x * ∈∀≤

f Dénote la fonction objective, F est l’ensemble des solutions admissibles et C est l’ensemble des contraintes.

3. Classification des problèmes d’optimisation

Suivant la forme de hg,f, on obtient diverses classes parmi lesquelles on peut citer:

-Optimisation linéaire : dans ce cas, la fonction objective et les contraintes d’inégalités sont linéaires.

-Optimisation convexe : la fonction objectif et les contraintes d’inégalité sont convexes. En fait, la convexité est une propriété importante pour assurer l’existence et l’unicité de la solution.

Définition

Un ensemble nRC ⊂ est convexe si pour toute paire de points 2Cy)(x, ∈ le segment

1t0, t)y)(1(txy][x, ≤≤−+= est inclut dans C .

Définition

On dit qu’une fonction f est convexe si :

t)f(y)(1tf(x)t)y)(1f(tx [0,1]t,Cy)(x, 2 −+≤−+∈∀∈∀ (2)

4. Méthodes de résolution

Résoudre un problème d’optimisation fait souvent appel aux méthodes itératives qui calculent la solution optimale en procédant comme suit [26]:

n0,1,...,kf(x(k)),1)x(k ==+ (3)

Où x(k) est un vecteur de dimension n.

Chapitre 3 : Optimisation F-Lipschitz

  43

Si cette séquence converge vers une limite *x et f est continue alors *x est un point fixe. La convergence de ces méthodes peut être accélérée en exploitant le parallélisme. Un système composé de n agents peut trouver la solution optimale selon l’équation suivante :

n0,1,...,i(k)),(k)...x(xf1)(kx n1ii ==+ (4)

L’algorithme de la descente procède par une résolution itérative. Il est très utilisé pour l’optimisation convexe. Cet algorithme fait décroître la fonction coût en appliquant des itérations dans le sens contraire du gradient.

F(x(k))γx(k)1)x(k ∇−=+ (5)

Le paramètre γ est très important pour la convergence de l’algorithme.

4-1. Méthodes par décomposition

L’idée consiste à diviser le problème en sous problèmes et de résoudre chacun d’entre eux. Leurs solutions doivent être coordonnées pour aboutir à la solution optimale [26].

⎪⎩

⎪⎨

∈∈

+

22

11

21

CxCx

(x2)f(x1)fmin (6)

Par exemple, on introduisant une variable y qui sert d’interfaces entre les deux sous problèmes, on transforme le problème (6) au problème (7) comme suit :

⎩⎨⎧

y),(xfmin y),(xfmin

22

11 (7)

Pour cela, on fixe une valeur pour y , on résout le problème puis on met à jour cette variable.

5. Fonction Lipschtiz

Avant de détailler la méthode F-Lipschtiz qui s’appuie sur les notations présentées dans le tableau 1, il est nécessaire de définir une classe importante de fonctions nommées F-Lipschitiz. Ces fonctions sont limitées dans leur manière d’évolution. Une fonction Lipschitz est une fonction tel que tout segment reliant deux points du graphe d’une telle fonction aura une pente qui soit inférieure à une certaine constante [27].

Chapitre 3 : Optimisation F-Lipschitz

  44

yxK.f(y)-f(x) :Ey)(x,

RE:f2 −≤∈∀

→ (8)

Soient deux métriques YX d,d , une autre définition plus générale est comme suit :

y)(x,K.df(y)-f(x) (d YY ≤ (9)

Pour bien comprendre les fonctions Lipschitz ont peut par exemple penser à la fonction sin(x) qui a comme dérivée )cos( x . Cette dernière est toujours bornée par la valeur 1. L’exemple suivant montre la vérification de la condition Lipschitz de manière plus détaillée.

Soit :

1yet 1x,xyy)f(x, 2 ≤≤= (10)

12

1212

21

22

21

221

y-y1.2

yyyyx

yyxxyxy)yf(x,y2)f(x,

=

−+=

−=−=− (11)

Notation Définition

+R Ensemble des réels strictement positifs

. Valeur absolue d’un réel

. Norme d’une matrice

1A ∑=

=

n

1jji

n1 amax i

∞A ∑=

=

n

1iji

n1 amax i

1 T)(1,1,...,1

∞<<<∞=

imaximin

nmaxnmin2max2min1max1minxx-

]x,[x*...*]x,[x*]x,[xD Vecteur des bornes des contraintes

Chapitre 3 : Optimisation F-Lipschitz

  45

⎪⎩

⎪⎨

>

<∈

=

imaximax

iminimini

iiD

i

xxi,xxx,x

max][min,x,x][x

Projection orthogonale par rapport à la norme euclidienne

∇ Opérateur gradient

(x)]F(x)...F[F(x)alors RR:F(x) Si

n1

nn

∇∇=∇→

Gradient d’une fonction

Tableau 1. Notations et définitions.

6. Problème d’optimisation F-Lipschitz

Un problème d’optimisation F-Lipschitz est de la forme [28]:

n,...1i xR]x,[x*...*]x,[x*]x,[xD

Dxn1,...,li (x)hx

l1,...,i (x)fx(x)fmax

imin

nnmaxnmin2max2min1max1min

ii

ii

0

=∀+∞<<∞−⊂=

∈+==

=≤

                                              (12)

Tels que :

n1,...,li R D:(x)hl1,...,i R D:(x)f

1m RD:(x)f

i

i

m0

+=→=→≥→

                                                                                               (13)

Les conditions suivantes doivent être vérifiées :

1F(x)0(x)f 0

<∇

>∇

(14.a)

Et :

Chapitre 3 : Optimisation F-Lipschitz

  46

ji, 0(x)Fij ∀≥∇ (14.b)

Ou :

1F(x)ji, 0jFi(x)Rc x,c1(x)f T

0

<=∞∇

∀≤∇∈= +

(14.c)

Ou :

(x)f max Δ(x)f minδ

ΔδδF(x)

0iDix

0iDix

∇=∇=+

<∇

(14.d)

Notons que :

Tn2l1l

Tl21

(x)]h(x),...,h(x),[hh(x)

(x)]f(x),...,f(x),[ff(x)

h(x)f(x)

F(x)

++=

=

⎥⎦

⎤⎢⎣

⎡=

                                                                                                        (15)                               

Un problème F-Lipschitiz peut avoir la forme centralisée ou distribuée. Dans ce cas, chaque nœud est associé de sa variable de décision ix et la contrainte i appartient au nœud i. Il peut s’agir également de problème d’optimisation mono ou multi-objectifs. C’est-à-dire la fonction objectif peut être représentée par un vecteur. Le cas des variables manquantes dans la fonction objectif n’est pas également un obstacle pour l’emploi de la méthode F-Lipschitz. Il est à noter que la forme standard requiert une contrainte pour chaque variable. Soit le problème [30] :

⎥⎦

⎤⎢⎣

⎡≤⎥

⎤⎢⎣

z

x

x

0

bb

zx

z)(x,fx z)(x,fmax

                                                                         (16)

Chapitre 3 : Optimisation F-Lipschitz

  47

La proposition 14 établie dans [30] nous permet d’utiliser cette transformation afin d’avoir un nombre de variables qui soit égale au nombre de contraintes :

zz

x

0

bz)(x,fzz)(x,fx z)(x,fmax

=≤≤

                                                                   (17)

Exemple

Soit le problème F-Lipschitz suivant :

⎪⎪⎪

⎪⎪⎪

≤≤++≤

+≤

+

21a0

1x0)xx0.3(1x2

xax0.7x)2xmax(x

21

211

21

pp

                                                               (18)

On a :

00.3 ax0.3 ax

F(x)

021

(x)f

1

2

0

≥⎥⎦

⎤⎢⎣

⎡=∇

>⎥⎦

⎤⎢⎣

⎡=∇

                                                            (19)

21aet 1xpour x 1)0.30.3,axaxmax(F(x) 21121

p==<++=∇ 

7. Problème canonique

Généralement, les problèmes d’optimisation ont la forme décrite par le système suivant [28]:

D xn1,...,li 0(x)p

l1,...,i 0(x)g S.t.(x)gmin

i

i

0

∈+==

=≤

                                                             (20)

Chapitre 3 : Optimisation F-Lipschitz

  48

Ce problème a la même solution optimale que le problème (12) et peut être transformé en un problème F-Lipschitz comme suit :

Dxn1,...,li (x)hx

l1,...,i (x)fx(x)fmax

ii

ii

0

∈+==

=≤

                                                 (21)     

Tels que :

 

Rμ0,γ(x)pμx(x)h

(x)gγx(x)f(x)g(x)f

ii

iiii

iiii

00

∈>−=−=

−=

                                                           (22)

Le théorème (4.1) dans [28] établie les conditions nécessaires pour vérifier si le problème est F-Lipschitiz. Ces conditions sont données par les équations suivantes.

i 0(x)G0(x)g

ii

0∀<∇

<∇

                                                                                                                                          

(23.a)

Et :

i∀∇∇

≠∀≤∇

∑≠ij

ijii

ij

(x)G(x)G

ij 0(x)G

f                                                                                                                      (23.b)

Ou :

i (x)G(x)G

ij 0(x)GRCx,C1(x)g

ijjiii

ij

T0

∀∇∇

≠∀≥∇∈−=

∑≠

+

f                                                                                                                   (23.c)                                   

Ou :

Chapitre 3 : Optimisation F-Lipschitz

  49

i (x)G(x)GΔδ

δRg0(x)

ijjiii ∀∇∇

+

∑≠

f                                                                                                       (23.d)

Exemple :

Soit le problème suivant :

}110,110{

565

1243

9ymin x

1010

122

23

2-

≤≤≤≤=

≤−+

≤+

+

−−

−−

yxD

xyx

yx

                                            (24)

Nous constatons que y∇ de la deuxième contrainte n’est pas négative. Si on remplace 1yt −= , nous pouvons obtenir :

}10t1 , 1x{10D

5x6t5x

124t3x

9tmin x

1010

122

23

-1-2

≤≤≤≤=

≤+

≤+

+

−−

                                            (25)

8. Optimalité de la solution d’un problème F-Lipschitz

La solution d’un problème F-Lipschitz est une solution Pareto optimale. Ceci est énoncé à travers le théorème suivant. Rappelons que *x est une solution Pareto optimale s’il n’existe pas x tel que )(xf(x)f *

00 ≥

Par exemple, la solution C illustrée en figure est dominante par contre A et B sont dominées par C.

Chapitre 3 : Optimisation F-Lipschitz

  50

Figure2. Optimalité au sens Pareto.

Théorème :

Soit un problème d’optimisation F-Lipschitz. Le problème admet une solution Pareto optimale *x obtenue par l’ensemble des équations suivantes [29]:

⎪⎩

⎪⎨⎧

+==

==

1...nli , )(xhx

1...li ,)](x[fx*

ii

D*i

*i

                                                           (26) 

9. Calcul de la solution optimale

Le calcul de la solution d’un problème F-Lipschitz peut être mené selon l’une des approches suivantes :

-approche centralisée : dans ce cas, on peut faire appel à la méthode itérative de Newton. La solution est obtenue selon l’équation qui suit.

D1 F(x(k)))](x(k)F(x(k))β(I[x(k)1)x(k −∇−−=+ −                                          (27) 

Evidemment, la convergence est assurée lorsque F(x(k))(I ∇− est inversible.

-Approche distribuée : un problème F-Lipschitz peut être également résolu par une approche distribuée en utilisant un réseau, une grille de calcul ou un ensemble d’agents. Soit 0x

    une

solution initiale et (k)x i le vecteur de décision du nœud i à l’instant k.

Chapitre 3 : Optimisation F-Lipschitz

  51

(k)](x(k),...,( x(k),([x(k)x i11

i11

i11

i τττ=                                            (28)

(k)ijτ est le délai nécessaire pour que le noeud j prenne une décision et la fait communiquer au

nœud i.

Dans ce cas, les équations décrites par les équations qui suivent convergent vers une solution optimale.

⎩⎨⎧

+==+==+

1...nl i , (k))(xh1)(kx1...li ,(k))(xf1)(kx

iii

Diii                                                   (29)

10. F-Lipchitz pour les réseaux de capteurs

Quelques exemples liés aux réseaux de capteurs ont été résolus dans [28]. Les exemples traités montrent qu’il est possible de tirer profit de cette méthode pour résoudre des problèmes d’ordre important. Considérons par exemple le problème de l’allocation de la puissance dans un réseau constitue de n nœuds responsable de l’émission et n nœuds pour la réception. Chaque nœud i possède une puissance de transmission iP

  

Ce problème est formulé comme suit :

maximin

min

ikkiki

iii

T

PPP

SPGσ

PG

P1min

≤≤

≥∑+≠

                                                                       (30)

P Est le vecteur de puissance et représente le gain de transmission entre le nœud et le récepteur.

Ce problème peut être transformé en un problème F-Lipschitz par la transformation ii Px −=

Chapitre 3 : Optimisation F-Lipschitz

  52

minimax

ikkikiminiii

T

PxP-

0)xG(σSxG

x1max

−≤≤

∑ ≤−+≠                                                         (31)

11. Conclusion

La convergence assurée par F-Lipschitz et la possibilité du calcul de la solution de manière distribuée sont des points qui favorisent l’utilisation de cette technique dans le cadre des réseaux de capteurs. Tout le fondement mathématique pour transformer un problème en un problème F-Lipschitz a été établie dans [28, 29]. D’un point de vue avantage, cette méthode peut être appliquée à des problèmes d’optimisation :

-Convexes ou non.

-Ayant même des variables manquantes dans la fonction objectif.

-Dont le nombre de contraintes peut être inférieur par rapport au nombre de variables.

L’inconvénient majeur qu’il faudra noter concerne la complexité de la vérification et la transformation. L’objectif du prochain chapitre est de détailler notre système.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  53

1. Introduction

Le temps minimal nécessaire pour la terminaison d’une application est un problème d’optimisation intéressant. En considérant un réseau de capteurs basé sur des communications multi-sauts, une autre dimension s’ajoute au problème du temps de d’achèvement minimal puisqu’il faudra tenir compte que la destination n’est pas capable d’avoir des données directement à partir de la source. Notre système traite ce problème et adopte le routage opportuniste comme mécanisme de transmission au niveau de la couche réseau. Afin d’échapper un petit peu du problème des contraintes énergétiques, les nœuds capteurs sont supposés munis de systèmes de récupération d’énergie. Mais ceci complique le routage opportuniste puisque chaque transmission est soumise à la contrainte de rechargement des batteries des autres nœuds du réseau. Une formulation du problème est proposée et deux variantes sont considérées : la première suppose que la probabilité d’effacement des paquets sur chaque lien est connue à l’avance tandis que la deuxième estime cette probabilité. La résolution est menée de manière centralisée par le biais de la méthode F-Lipschitz et le calcul par intervalles. La méthode F-Lipschitiz est appropriée vue que le domaine de variation des variables est borné. D’autres parts, le calcul par intervalles est adéquat pour représenter les possibilités de quelques variables vue que la phase de rechargement des batteries diffère d’un nœud capteur à un autre.

Une autre problématique étudiée dans ce chapitre concerne la maximisation de la durée de vie sous routage opportuniste. Dans ce contexte, une métaheuristique simple a été exploitée pour résoudre un modèle non linéaire. Cependant, le dernier système s’intéresse à la thématique de la localisation des capteurs mobiles et du routage géographique sans tenir compte des erreurs de transmission.

2. Contribution principale ‘Système de routage opportuniste avec récupération d’énergie’

2-1. Travaux annexes

Au travers les travaux de recherche liés aux réseaux de capteurs, différentes problématiques se sont relevées. La maximisation de la durée de vie d’un réseau de capteurs a gagné une attention particulière. Nous mentionnons que notre travail est étroitement basé sur les travaux suivants :

[31] Ont formulé le problème de la maximisation de la durée de vie sous l’hypothèse de l’agrégation des données. Les positions des capteurs et celle de la station de base sont connues à l’avance. Un algorithme polynomial a été proposé pour résoudre le problème considéré. Ce dernier est linéaire.

[32] Ont traité le problème du routage par le biais du plus court chemin en considérant des capteurs ayant des capacités pour adapter leurs puissances de transmission.

Le travail de la maximisation de la durée de vie le plus marquant est celui présenté dans [33]. Les auteurs ont proposé un framework qui tient compte des contraintes de la couche réseau, MAC et physique. Le framework s’adapte bien à des transmissions orthogonales ou non et a été évalué pour différentes topologies. Les performances en termes de la durée de vie sont remarquables.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  54

[34] ont formulé le problème de la maximisation de la durée de vie dans le cas du routage opportuniste et codage linéaire aléatoire. L’idée consiste à recevoir l’information selon une certaine probabilité afin d’équilibrer la consommation énergétique entre les nœuds capteurs. Le modèle proposé n’est pas convexe et tient seulement compte des contraintes de la couche réseau (contraintes énergétiques, de conservation du flot et de la capacité calculée dans le cas du routage opportuniste). Le standard IEEE802.11 (couche physique et MAC) a été intégré durant les simulations.

[35] ont proposé d’utiliser le recuit simulé pour calculer les probabilités de réception dans le modèle proposé dans [34]. Les résultats de simulation obtenus ont montré que le choix de la solution voisine a une grande influence pour la convergence du système.

L’activation des liens est une technique ancienne qui assure des transmissions sans interférence. Elle consiste à construire un graphe de conflit tel que chaque nœud représente un lien dans le graphe original et un lien existe dans le graphe de conflit si et seulement si les transmissions associées ne peuvent pas être activées en parallèle. La construction du graphe de conflit peut être menée selon le modèle protocolaire qui est assez simple et imprécis. Une transmission est activée dans ce cas si le récepteur se trouve dans le rayon de transmission de l’émetteur. Le modèle physique permet d’activer une transmission une fois la puissance agrégée au récepteur plus le bruit soit supérieur à un certain seuil. K.Zeng [36] a introduit le concept de la CTS ‘conservative transmission set’ pour l’activation des nœuds (au lieu des liens) sous routage opportuniste. Il a défini une CTS comme étant un ensemble de nœuds tel que tous (un) liens impliqués peuvent être activés en parallèle. Le calcul de la CTS est un problème NP-complet et nous montrons dans [37] notre contribution pour le calcul de la CTS. Supposons que l’ensemble CS des CTS a été calculé, le modèle proposé dans [37] permet de maximiser la durée de vie en tenant compte de l’activation des nœuds qui n’engendrent pas d’interférence tout en adoptant le routage opportuniste comme moyen pour délivrer les paquets à leur destination. En effet, le calcul des CTS procède en deux étapes. Nous calculons en premier pour chaque nœud du réseau l’ensemble des nœuds qui peuvent transmettre avec lui. Pour cela, on trie les nœuds selon les valeurs croissantes de la puissance reçue au niveau du récepteur et on commence par le nœud qui a la plus petite contribution en termes de puissance. Ensuite, on fixe un seuil Bmax (le nombre maximum de CTS) et on élimine les ensembles qui soient sous-ensembles des autres. Tant que le rapport de l’agrégation des puissances bruit est supérieur au seuil fixe on continue l’etape1. Les simulations réalisées ont considéré différentes densités et ont démontré les performances en termes de la durée de vie.

[38, 39, 40] ont étudié l’effet de la probabilité d’effacement, l’énergie et la taille du champs de Galois sur le temps de terminaison en s’intéressant à une seule source qui diffuse des paquets à plusieurs destinations. Le processus de décodage a été modélisé par une chaîne de Markov. Les auteurs se sont penchés sur la détermination du nombre optimal des paquets codés avant d’attendre un acquittement. Rappelons qu’une chaîne de Markov est une chaîne sans mémoire. Autrement dit, la prédiction de l’état actuel dépend uniquement de l’état précédent et non pas de tous les états antécédents. Le comportement de la chaîne peut être visualisé en traçant un graphe orienté contenant les états et la fonction de transition [41].

[42] ont présenté une étude intéressante qui porte sur le temps minimal de terminaison sous l’hypothèse de récupération d’énergie et ont pu déduire la relation entre la puissance de transmission à utiliser et la quantité d’énergie récupérée.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  55

2-2. Système proposé

On considère un réseau de capteurs contenant une seule source et une seule destination. Le réseau est modélisé par un graphe ),( ζNG = . N est l’ensemble des nœuds et ζ est l’ensemble des liens. Le taux d’erreur sur chaque lien ),( ji est dénoté ijε . Le voisinage d’un nœud i est définie par {}{ }1εi/jnb(i) ij p∈= .

La source a M paquets destinés à D . Chaque nœud capteur possède une file pour stocker les données et un composant de stockage idéal pour conserver l’énergie récoltée. La capacité du composant de stockage du nœud i est iE max . L’énergie initiale du nœud i est iE 0 . Les instants de récupération et les quantités d’énergie  correspondantes sont { },...S ,S 2

i1

i , { },...E ,E 2i

1i .

respectivement. La longueur d’une phase est égale à 1ki

ki

ki SSl −−= avec 0S 0

i =

Ei0 Ei

1 Ei2 Ei

3 Eik

Si0 Si

1 Si2 Si

3 Sik

Figure1. Phases et quantités d’énergie récupérées.

L’énergie est récupérée au début de chaque phase. k

iPr est la probabilité pour que le nœud capteur i  

soit actif (en émission ou en réception) durant la phase k . À chaque instant, l’énergie consommée doit être inférieure à celle récupérée [43].

Hypothèses :

- Les nœuds capteurs connaissent leurs positions (soit par GPS, soit par une technique d’estimation).

- Les nœuds capteurs sont synchronisés et il y a un temps global.

- Les nœuds capteurs peuvent adapter leurs puissances de transmission.

Le schéma illustré en figure 2 donne un aperçu du modèle proposé, tandis que le tableau 1 explique toutes les notations utilisées par la suite.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  56

2-3.Temps de terminaison

C’est le temps nécessaire pour décoder tous les paquets envoyés par la source. Le processus de la transmission et du décodage peut être modélisé par une chaîne de Markov. Cette dernière permet de modéliser l’évolution dynamique d’un système aléatoire. Les états de la chaîne varient de M à 0 et chaque état dénote le nombre de paquets manquants afin de lancer l’opération de décodage. Pour cela, nous considérons que la probabilité de transition durant la phase k  de l’état iSe à l’état jSe ( iSe = jSe ) est décrite par l’équation qui suit :

(1)

Cette expression traduit une disjonction entre les énoncés suivants :

- le nœud capteur i est en train de recharger sa batterie.

-Les liens associés à i ont subi un grand taux d’erreur.

i est incapable de décoder des paquets reçus en parallèle.

La probabilité du décodage d’un paquet parmi TA  paquets reçus

 est obtenue par l’équation (2)

[44].

                                      

(2)

Cette expression est obtenue après le calcul de la PDF ‘probability density function’ du SNR associé à chacun des paquets reçus.

Le nœud i

passe de l’état iSe à l’état

jSe ( iSe ≠ jSe ) suivant cette probabilité [43]:

(3)

Il est à mentionner que l’expression rNk1)M(M

rk1)M(M

nb

1r

i i)P(1*)(PrN −

−>−−>−=

−⎟⎟⎠

⎞⎜⎜⎝

⎛∑ représente le fait

qu’au moins un des voisins du nœud i

 

a reçu au moins un paquet. De plus, le temps de

iiii

Seki

kiavg

ki

Sekiiavg

ki

k)Sei(Se )))PR(1*ε*)Pr((1))PR(1ε)Pr(((1P −−−−++−=>−

k

kiavg

21)1PA(2*

ki γ

12e21)!(TA

TA!PR −−−

=−−−

rNk1)M(M

rk1)M(M

nb

1r

ikSei)(Sei

kSej)i(Se

ii

)P(1*)(PrN

*)P(1P −−>−−>−

=>−>− −⎟⎟

⎞⎜⎜⎝

⎛−= ∑

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  57

Figure 2. Principe du modèle proposé.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  58

terminaison est soumis aux contraintes du routage opportuniste. Soient kijf ,

kjif les flots

envoyés et reçus durant la phase k .

Le flot et la capacité sont calculés par les équations suivantes :

)))ε(1Pr(1Π(1Zx

PR)Prε(1αZf

)Prε(1αZf

ijk

jSjk

ik

Si

ki

kiij

kji

kj

kji

kjij

kij

ki

kij

−−−=

−=

−=

∈                                                 (4) 

 

                          A la réception d’un paquet, le nombre de transmissions moyen effectué par le nœud i est égale à :

∑ −=

l

kili

kl

kik

i)Prε(1z

zn

                                                        (5)       

                          2-.4. Modèle d’optimisation

      Soit Tp le temps nécessaire pour envoyer un paquet codé.

(6)

Tel que :

(q)logg 2= (7)

Notation Définition

Temps de terminaison k

iPr Probabilité associée au noeud capteur i

kiavg

21)1PA*(2

ki

γ12e2

1)!(TATA!PR −−−

=−−−

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  59

Table1. Notations du modèle.

d’être actif dans la phase k.

kip Puissance utilisée par le noeud i durant la

phase k (puissance consommée pour la transmission ou la réception)

kiE Energie récupérée par le noeud i dans la

phase k.

kiZ Nombre de transmissions réalisées par le

noeud i durant la phase k.

inb Nombre de voisins du noeud i.

q Taille du champ utilisé pour le codage

ir Débit utilisé par le nœud i

kjiα Probabilité de transmission associée au

noeud j durant la phase k.

kSejSeiiP )( >−

Probabilité de transition (associée au noeud i) l’état Sei à l’état Sej durant la phase k

kiPR Probabilité associée au noeud i pour

couvrir un paquet durant la phase k.

kiavgγ SNR moyen associé au nœud i durant la

phase k

kil Temps consommé par le nœud i durant la

phase k

ktil Temps consommé par le noeud i pour

recharger sa batterie durant la phase k.

η Bruit

kiavgε Probabilité d’effacement moyenne associée

au nœud i durant la phase k

H La taille de l’en-tête d’un paquet

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  60

On peut maintenant formuler le problème de la minimisation du temps de terminaison sous l’hypothèse de la récupération d’énergie et celle du routage opportuniste comme suit :

Tmin                                                                                                                                                             (8)

(8.1)

(8.2)

(8.3)

                                                                                 

(8.4)

(8.5)

∑∑∑∑

∑ ∑∑

=

++

=

+

++

=

+

= ∈=

≤−+

+

−+−

h

1k

ki

1h'i

1h'i

h'

1k'

k'j

1h'i

nb(i)j

1h'j

1hi

h

1k

ki

1hi

k'i

k'j

k'i

k'jt

k'j

h'

1k' nb(i)j

k'j

h

1k

kiti

ki

ki

EPR*Pr*)l(Tp*ZZ*)l-(T*p

PR*z*Pr*)l(l*p Z*)l(l*p k

))η

plog(121(Pr*)ε(1*α*Z

:nb(i)jk

i1h

1k

1h

1k

kjij

kji

ki +≤−

∈∀

∑ ∑+

=

+

=

hopsij

1j

nb(S)j11

1 nb*)r(S)

))ε(1*Pr(1Π(1*Z(D

−−−−≤−

1hi

1hjji

nb(i)j

1hji

ki

kjji

h

1k nb(i)j

kji

1h'j

1h'i

1h'iji

nb(i)j

1h'ji

h

1k

ki

k'j

k'i

k'iji

h'

1k' nb(i)j

k'ji

Z*Pr*)ε(1*αZ*Pr*)ε(1*α

z*PR*Pr*)ε(1*α

)l-(T z*PR*Pr*)ε(1*α

++

+

= ∈

+++

+

== ∈

−+−

=

−+

+−

∑∑ ∑

∑∑ ∑

1k0)D(1

nb(D)j

kj

k2)M1D(M

nb(D)j

kj

k1)MD(M

nb(D)j

kj1h

1kD]

P

Tp*Z...

P

Tp*Z

P

Tp*Z([T ++++≤

>−

−>−−

−>−

∈+

=

∑∑∑∑

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  61

(8.6)

La première contrainte exprime la conservation d’énergie, la deuxième est liée à la capacité au niveau de la couche physique, la troisième décrit le processus de décodage et la quatrième représente la conservation du flot. Le dernier système d’équations exprime le fait que toutes les variables du modèle sont bornées. Revenons maintenant à l’équation (8.3) qui dépend de D1. En fait, D1 est le délai après lequel au moins un des voisins de la destination a pu recevoir au moins un paquet. Il est obtenu par la construction d’un arbre couvrant minimal tel que

hopnb représente sa longueur. L’algorithme de Prim [45] est un algorithme très connu en recherche opérationnelle pour calculer un tel arbre. Son principe est comme suit :

S: source;

D: destination;

Dis(i,j) : distance entre le nœud i et le nœud j ;

Nb : le nombre de nœuds dans le réseau ;

Début

M= ∅;

A=S ;

M=M∪{A} ;

Tant que A ≠ D faire

Pour i = 1 : Nb

Si (i ∉{M}) et Dis(A,i) = min (Dis(A,j)) et j ∉ i alors

M= M∪{i} ;

A=i ;

Fin Si

Fin Pour

Fin Tant que

Figure3. Algorithme de Prim.

max1

max

kji

ki

ki

maxk

i

maxk

i

DD0TT0

1α0k j,i,

1PR0k i,

1Pr0k i,

pp0k i,

ZZ0k i,

≤≤≤≤

≤≤∀

≤≤∀

≤≤∀

≤≤∀

≤≤∀

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  62

Une question primordiale de notre modèle est la suivante :

-Comment peut-on calculer la puissance et la probabilité pour qu’un nœud soit actif durant la phase associée à un autre ?

Nous avons pensé à exploiter le calcul par intervalles pour tenir compte de l’ensemble des différentes possibilités. La probabilité est décrite par le système d’équations (9) tandis que la puissance de transmission est décrite par le système (10).

ij

i1-j

1-i1-j

j1-j

1-i

k'j

kj

SS'

SS'

SS'

]S',[S'sur definieest k'Si],[Ssur definieest k :que tel

Pr ΠPr

=

                                                   (9)

     ij

i1-j

1-i1-j

j1-j

i1-i

k'j

k'j

kj

SS'

SS'

SS'

]S',[S'sur definieest k']S,[Ssur definieest k :que tel

]pmax ,p[min p

=

                                                         (10)

Soit un réseau qui contient deux nœuds capteurs. Les instants ainsi que les quantités d’énergie récupérées sont comme suit :

0 mJ 10mJ 12mJ 9mJ

0s 2s 2.5s 2.9s

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  63

0mJ 8mJ 7mJ 8mJ

0s 1.7s 2.3s 2.7s

Le modèle associé continent donc deux contraintes calculées selon l’équation 8.1, deux contraintes calculées selon l’équation 8.2, une contrainte calculée selon 8.3, une autre contrainte calculée selon 8.4, deux contraintes calculées selon 8.5 et d’autres contraintes calculées par 8.6. En effet :

Tel que :

[ ] sPPP

20

max2

min2

12 ,= ²

2-5. Formulation F-Lipschitz

Il est clair que le modèle proposé n’est pas convexe à cause du produit des variables. On va utiliser la méthode F-Lipschitz pour sa résolution vue que les variables sont bornées. Pour cela, nous devons adopter ce changement de variable :

  (11)

                                                                        (12)

TT1 −=

1max T

( ) 11111

1ZC1 Pll t−=∂∂

( ) 12

11

11221

2

PrZC1 PPRll t−=∂∂

( ) ∏=

−=∂∂ 2

02

112121

1

Pr1ZC3

k

kαε

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  64

 

                             

     

 

(12.3)

 

(12.4)

(12.5)

(12.2) )))η

plog(1

21 Pr*)ε(1*α*Z(λZZ

:nb(i)jk

i1h

1k

1h

1k

kjij

kji

kii

1hi

1hi +−−−≤

∈∀

∑∑+

=

+

=

++

)D]P

Tp*Z...

P

Tp*Z

P

Tp*Z([Tλ(TT 1k

0)D(1

nb(D)j

kj

k2)M1D(M

nb(D)j

kj

k1)MD(M

nb(D)j

kj1h

1k111 ++++−−−−≤−

>−

−>−−

−>−

∈+

=

∑∑∑∑

)nb*)r(S)

))ε(1*Pr(1Π(1*Z(Dλ(DD hops

ij1j

nb(S)j11

111−−−

+−−−≤−∈

1hi

1hjji

nb(i)j

1hji

ki

kjji

h

1k nb(i)j

kji

1h'j

1h'i

1h'iji

nb(i)j

1h'ji

h

1k

ki1

k'j

k'i

k'iji

h'

1k' nb(i)j

k'jii

1i

1i

Z*Pr*)ε(1*αZ*Pr*)ε(1*α

z*PR*Pr*)ε(1*α

))l-(-T z*PR*Pr*)ε(1*α(μpp

++

+

= ∈

+++

+

== ∈

−+−

−+

+−−≤

∑∑ ∑

∑∑ ∑

∑∑∑∑

∑ ∑∑

=

++

=

+

++

=

+

= ∈=

−−−+

+

−+−≤

h

1k

ki

1h'i

1h'i

h'

1k'

k'j1

1h'i

nb(i)j

1h'j

1hi

h

1k

ki1

1hi

k'i

k'j

k'i

k'jt

k'j

h'

1k' nb(i)j

k'j

h

1k

kiti

ki

kii

1i

1i

)EPR*Pr*)lT(p*ZZ*)l-(-T*p

(12.1)

PR*Z*Pr*)l(l*p Z*)l(l*p ( λ - Z Z k

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  65

(12.6)

Ce modèle remplie la condition (23.C) lorsque les valeurs des puissances utilisées sont inférieures à 1 et les puissances associées sont considérables ou l’inverse.

2-6. Estimation de la probabilité d’effacement

Le second volet de notre travail a consisté à estimer la probabilité d’effacement au lieu de se baser sur des valeurs aléatoires. Pour cela, la chaîne de Markov devient comme suit :

                 

kM)i(MP >−

              

k1)-M1-i(MP >−

              

k2)-M2-i(MP >−

         

k3)-M3-i(MP >−

                         

k0)i(0P >−

Figure 4. Chaîne de Markov proposée pour le décodage.

L’état 0’ correspond à un effacement d’un paquet. C’est un état absorbant de la chaîne de Markov et sa valeur est obtenue par cette équation :

01k r*Q)(Iε −−=iavg                                                                   (13)

Q : est la matrice de transition entre les états.

maxk

ji

max1h

ji

1hi

maxk

i

maxk

i

maxik

αα N:1j N:1ih :1k

αα N:1j N:1i

pp N:1i N:1i

pp N:1ih :2k

Z ZN:1ih :2k

Zh Z:2k

max

==∀=∀=∀

==∀=∀

==∀=∀

==∀=∀

==∀=∀

==∀

+

+

0’

M‐1  M‐2    0 M‐3 …

Prik 

Prik

PrikPri

k

  M 

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  66

r0 : est le vecteur de transition vers l’état 0’.

(14)

Autrement dit, la probabilité d’effacement dépend de la valeur moyenne du SNR mais aussi de la probabilité pour que le nœud concerné soit en état actif.

Pour cela, l’algorithme illustré en figure 5 est préconisé pour calculer la solution finale.

2-7. Scénarios d’exécution

Afin de mener des comparaisons, nous avons suivi la même idée présentée dans [34]. Deux scénarios sont possibles:

-Dans le premier cas, lorsqu’un nœud diffuse un paquet seul le nœud actif qui minimise la métrique ETX est susceptible de continuer la transmission.

-Dans le second cas, lors d’une diffusion tout nœud qui soit actif est susceptible de prendre le rôle de relais.

K← 0

1. Générer une solution initiale 0x  

2. Répéter

Estimer la probabilité d’effacement par (13)

Mise à jour de la solution par (chapitre3.27)

-Si ξ≥−+ kk xx 1 alors allez à l’étape 2

K← K+1

Jusqu’à convergence

Figure 5. Principe de la résolution du modèle.

iiii

Seki

kiavg

ki

Sekiiavg

ki

k)Sei(Se )))PR(1*ε*)Pr((1))PR(1ε)Pr(((1P −−−−++−=>−

k

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  67

Ces deux scénarios sont schématisés en figure 6 et 7.

ETXA=1/0.5=2

0.5

0.4 ETXB=1/0.6=1.67

0.6

ETXC=1/0.4=2.5

Figure 6. Scénario 1.

ETXA=1/0.5=2

0.5

0.4 ETXB=1/0.6=1.67

0.6

ETXC=1/0.4=2.5

Figure 7. Scénario 2.

On suppose que seuls B et C sont actifs au moment où A fait sa diffusion. Dans le premier scénario seul le nœud B sert de relais puisqu’il possède la valeur minimale en termes de la métrique ETX. Dans le second cas, C peut continuer la diffusion.

C

E

F

C

E

F

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  68

3. Contributions secondaires

3.1. Maximisation de la durée de vie d’un réseau de capteurs sous routage opportuniste

En face du coût de la technologie de la récupération d’énergie, la maximisation de la durée de vie reste une thématique d’actualité. Pour cela, la maximisation de la durée de vie sous routage opportuniste dans un réseau de capteurs statiques est une contribution secondaire de notre travail. Les notations du modèle sont données en tableau 2.

Les contraintes du système sont comme suit :

∏∑

∑∑

∈∈

∈∈

−−−≤⊆∀

=+

≤+

Sjjiij

iOjij

iOjij

iOkkii

iOkikki

rii

ti

iNi

fiOS

ffTr

EZEZE

T

)))1(1(1( Z)(

min max

^i

)(

^

)(

^

)(

^

)(

^^

εγ

γ

(15)

Notation Définition iE Energie initiale du nœud

capteur i t

iE Energie consommé par i pour envoyer un seul paquet.

riE Energie consommé par i pour

recevoir un seul paquet. jif Flot du lien ),( ji

ir Débit utilisé par i iZ Nombre de transmissions

effectuées par i T Durée de vie du réseau

^iZ Nombre de transmissions

effectuées par i durant T ^

jif Flot du lien ),( ji Durant T

Table2. Notations et définitions.

(16)

∑∈

+=

)(***

iOkkik

rii

ti

ii ZEZE

ET

γ

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  69

La première contrainte est celle de l’énergie, la seconde exprime la conservation de flot ; tandis que la troisième est liée au routage opportuniste. Il est clair que le modèle proposé n’est pas convexe. A la différence de [34], nous avons pensé à introduire une métaheuristique simple ‘recuit simulé’ [46] pour estimer les probabilités de réception de sorte que la solution finale sera calculée par programmation linéaire ainsi que la métaheuristique impliquée. Le recuit simulé est paramétré par la température et consiste à effectuer des mouvements dans un espace de recherche. La figure 8 contient le schéma de la résolution.

3.2. Localisation et routage géographique dans un réseau de capteurs statiques

Connue comme étant l’un des problèmes considérables lors de la mise en œuvre d’un réseau de capteurs, la localisation est nécessaire pour accomplir la tâche de surveillance d’une zone. Elle est indispensable pour les réseaux de capteurs statiques et possède en même temps des motivations fortes dans un réseau de capteurs mobiles. Le sujet de la localisation des capteurs pour un routage géographique nous a amenés à proposer une contribution secondaire dans ce travail de recherche. Informellement, la localisation consiste à affecter ou à déduire les coordonnées des nœuds capteurs. Dans ce contexte, deux solutions existent. La solution matérielle concerne l’équipement des capteurs par des GPS. L’inconvénient majeur de cette technologie concerne sont coût important et l’énergie requise quant à la réception d’un signal.

Début

1. Choisir une solution aléatoire pour jiji , ∀γ

Répéter 2. Mise à jour de jiji , ∀γ

ηγγ *() ' randjiji ±=

3. Calculer la probabilité d’acceptation de jiji , ∀γ

0)'(( 1

0)'(( i

))()'(((

exp

) '(

⎪⎪⎪

⎪⎪⎪

≤−

>−

−−

=

jiji

jiji

k

jiji

ij

if

fT

assceptedisP

γγ

γγ

γγ

γ

4. Résoudre (5) et calculer iZ , ijα ji, ∀ Jusqu’à convergence

Fin

Figure 8. Algorithme du recuit simulé pour le calcul des probabilités de réception.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  70

Pour cela, il était nécessaire de réfléchir sur des solutions software permettant ainsi une localisation propre. Divers critères peuvent être employés pour classer les approches de localisation mises en place. La présence des capteurs équipés par des GPS (ancres) conduit souvent à une localisation globale tandis que leur absence implique une localisation relative. La mesure de la distance (ou l’angle) par rapport aux autres capteurs ou son estimation est également un critère de classification des techniques de localisation. Dans un environnement dynamique, la localisation est un problème ayant d’autres dimensions qu’il faudra prendre en charge : les positions reçues peuvent être anciennes à cause de la mobilité des noeuds, la localisation devient gourmande en terme de communication puisque chaque capteur doit de se localiser et se re-localiser à chaque déplacement,…

De façon générale, les méthodes Monté-Carlo ont démontré leur efficacité pour localiser des capteurs mobiles. Il s’agit de calculer la future position (éventuellement la vitesse et l’accélération) sur la base des calculs déjà effectués. Il existe une variété de modèles de prédiction ; dont l’application est fonction du modèle de mobilité. Signalons que les modèles de prédiction de la trajectoire peuvent être de type déterministe, stochastique ou basés sur l’historique. En cas où les mobiles suivent un mouvement uniforme, il est très recommandé de faire appel à un modèle déterministe pouvant être du premier ou second ordre. Cependant, au cas où le mouvement des mobiles est aléatoire, ont peut investiguer une approche stochastique ou une approche basée sur l’historique passant par une phase d’apprentissage des motifs de mobilité. Parmi les techniques stochastiques, on peut citer les filtres particulaires qui représentent une variante des méthodes Monté Carlo séquentielles. Il s’agit d’estimer les paramètres

,..3,2,1, =kxk d’un problème en tenant compte des données observées ,..3,2,1, =kyk Autrement dit, un filtre particulaire cherche une estimation de la distribution a posteriori ( )yyx kkp ,.../ 0 [47]. En effet, un ensemble de p particules pondérées par des poids w sont générées telle que l’approximation de la distribution à posteriori est donnée par :

( )∑ =pl

lk

l xw f1 (17)

3-2-1. Formulation du problème

Classée comme étant une approche de type neighborhood-based routing, la contribution proposée s’appuie sur l’idée suivante : à chaque instant, une prédiction de la trajectoire des capteurs voisins d’une source est réalisée. Il s’agit de sélectionner le voisin qui se dirige vers la station de base (celui qui forme un angle minimal avec la station de base) en tenant compte de l’aspect énergétique. A ce stade, nous précisons que le modèle énergétique considéré est le suivant :

( )⎩⎨⎧ ≥≠+

=sinon,0

2aet 0d,cdJ d a

(18)

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  71

Ce modèle traduit le fait que la dépense énergétique J(d) est fonction de la distance d’émission en suivant une loi de puissance. Dans un objectif d’appliquer une simple méthode de prédiction, nous nous sommes basés sur l’algorithme de filtrage particulaire présenté dans [47]. Il s’agit d’un algorithme issu de la méthode Monté Carlo dont l’idée de base est celle de la génération des nombres aléatoires. De façon générale, on définit N particules. Chaque particule x est un vecteur ayant trois dimensions tels que :

x(0) : correspond à l’abscisse prédite.

x(1) : correspond à l’ordonnée prédite.

x(2) : correspond à la vitesse prédite.

La première étape consiste à faire une prédiction selon un modèle de mobilité. Le modèle de mobilité utilisé est celui de Gauss-Markov. C’est un modèle dans lequel, chaque capteur choisit une vitesse et une direction selon les équations (19) et (20) et réitère ce processus tout au long de la simulation.

( ) ( )( ) ( ) XVV nn 12

11 *1*1* αμαα −+−+= − (19)

( ) ( )( ) ( ) Xdirdir nn 22

21 *1*1* βμββ −+−+= − (20)

Tels que :

μμ 21, : correspondent respectivement à la vitesse et la direction moyenne.

XX 21, : sont deux variables aléatoires.

En passant par l’état de l’art concernant les modèles de mobilité, nous précisons qu’on a adopté au départ un modèle de mobilité de type Random-Way point. Dans ce cas, un modèle de prédiction déterministe du premier ordre est strictement adéquat. Cela nous a poussés pour se baser sur un modèle de mobilité plus complexe. C’est le cas de Gauss-Markov. Bien sûr, la prédiction effectuée est mise à jour après avoir réalisé une étape de mesure par rapport à trois

ancres. ^x Représente le résultat final.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  72

Formellement, le principe de la prédiction est comme suit :

1. Initialisation :

Générer N particules.

Pour j=1..N faire

Nw j /1=

Fin pour

2. Prédiction :

Pour j=1..N faire

( ) ( ) ( ) ( )

( ) ( ) ( ) ( )dir

dir

xxx

xxx

jjj

jjj

sin*211

cos*200

+=

+=

( ) ( )( ) ( )( ) ( ) Xxx jj 12

1 *1*12*2 αμαα −+−+=

Fin pour

3. Mesure :

Soient vvv 321 ,, les puissances des signaux reçus à partir de trois ancres et d ki la distance séparant le capteur k et l’ancre i tels que :

( )²10 log10 dv kii ηϕ −= ;

ϕ  est une constante qui caractérise la puissance de transmission des ancres

vvvh 23

22

21 ++=

Pour j=1..N faire

hww jj *=

Fin pour

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  73

Normalisation :

Pour j=1..N faire

∑= www jjj /

Fin pour

Mise à jour :

Pour j=1..N faire

∑ == Nj jj wxx 1

^*

Fin pour

Figure 9. Prédiction des positions des nœuds capteurs.

Suite à cette phase, vient le routage qui consiste à minimiser la fonction (21) où la variable 'a attribue une priorité soit à l’angle et l’énergie, soit à l’angle et la vitesse.

( ) ( ) ⎟⎠⎞

⎜⎝⎛−+

vE aa

1**1* '''' αα (21)

Tels que:

α ' : L’angle obtenu par prédiction.

E : L’énergie.

v : Vitesse obtenue par prédiction.

Chapitre 4 : Contributions pour le routage opportuniste et géographique

  74

Supposons que s est la source, u le voisin choisis et t la station de base, le calcul de α ' peut être mené selon cette équation :

dd

ddd21

23

22

21'

2arccos

−+=α (22)

Enfin, il est à indiquer que les valeurs des termes ( )E*'α et ⎟⎠⎞

⎜⎝⎛

v1*'α ont été normalisées entre 0

et 1.

4. Conclusion

Dans ce chapitre, nous avons présenté un système centralisé de routage opportuniste fonctionnant sous l’hypothèse de récupération d’énergie. Plus particulièrement, le fonctionnement de chaque nœud capteur procède en phases. Une quantité d’énergie peut être récupérée au début de chaque phase puis le nœud capteur peut se mettre en mode actif selon une certaine probabilité. Quelques contraintes ont été posées pour minimiser le temps nécessaire au décodage des données. La méthode d’optimisation choisie est F-Lipschitz. Elle est adéquate aux modèles qui ne soient pas convexes. De plus, les chaînes de Markov ont été exploitées pour modéliser le processus de décodage. Deux systèmes ont été également étudiés : le premier s’intéresse à la maximisation de la durée de vie en impliquant des probabilités de réception et en proposant les métaheuristiques comme outil de résolution. Enfin, le routage dans les réseaux de capteurs mobiles est un problème complexe. Pour cela, nous avons proposé de lancer un processus de prédiction des positions des nœuds capteurs à des instants fixes qui conviennent au modèle de mobilité et d’acheminer les paquets en tenant compte de la dépense énergétique.

Ceci termine donc le présent chapitre. Le chapitre suivant détaille l’implémentation de nos systèmes. Les modèles liés au routage opportuniste ont été implémentés moyennant Matlab, Omnet++ [48] et Intlab [49]. Matlab est approprié pour l’optimisation tandis que Intlab est une boite à outils pour le calcul par intervalles. Les résultats obtenus par Matlab et Intlab constituent l’entrée de la simulation réalisée par Omnet++. Le calcul sur les champs de Galois est réalisé par le biais de [50]. L’outil Omnet++ sera présenté au niveau du chapitre 5 avant l’illustration des résultats obtenus. Cependant, des exemples réalisés par Intlab sont illustrés en annexe. Omnet++ a été largement suffisant pour simuler le routage géographique.

Chapitre 5 : Résultats de simulation

  75

1. Introduction

Ce chapitre est réservé à l’explication de l’outil Omnet++ ainsi que les simulations réalisées dans le cadre de cette thèse. Omnet++ est approprié aux réseaux sans fil et offre diverses packages de méthodes. Il suffit de bien choisir les méthodes adéquates à une application. Le cas échant, il faut modifier le code de ces méthodes ou développer de nouvelles procédures. L’architecture des nœuds capteurs est facile à modéliser par le biais d’Omnet++. De plus, la flexibilité de cet outil permet de rajouter ou supprimer n’importe quel composant de l’architecture. L’objectif de nos simulations est de comparer le scénario 1 et 2 du chapitre 4 en termes de la consommation énergétique, temps de terminaison, débit, probabilité d’effacement et le nombre de paquets. Les résultats de simulation des contributions secondaires sont également détaillés dans ce chapitre.

2. C’est quoi Omnet++?

Omnet++ est l’acronyme de ‘Objective Modular Tes-Bed in C++”. C’est un outil de simulation permettant de tester des simulations d’évènements discrètes. Cet outil peut être utilisé dans les cas suivants :

-Simulation des protocoles des réseaux informatiques y compris les réseaux sans fil.

-Simulation des architectures multiprocesseurs.

-Evaluation des systèmes complexes.

-Simulation du parallélisme dans quelques systèmes.

Omnet++ permet de créer l’interface de la simulation et d’écrire le code par le biais du langage C++. Deux versions de l’outil Omnet++ existent. Une est opérationnelle sous Windows tandis que la seconde est opérationnelle sous Linux. Omnet++ a été développé après l’apparition de quelques outils notamment NS2 et OPNET. NS2 est approprié pour les protocoles TCP/IP, le routage et la communication multicast dans les réseaux filaires. Son utilisation pour les réseaux sans fil est très limitée. OPNET est un outil commercial pour la simulation de la communication. Il comprend plusieurs processus basés sur des machines à états finis. Ces dernières sont aptes à communiquer entre elles. A la différence d’OPNET, Omnet++ est un outil académique gratuit. Il est basé sur la programmation modulaire qui offre une grande flexibilité.

3. Modélisation de la simulation Omnet++

L’élément de base de la simulation Omnet++ s’appelle un module. Un module peut être simple ou composé. Un réseau est considéré comme un module composé des nœuds (chacun d’entre eux est représenté par un module) et d’un canal de transmission. Si l’on souhaite simuler plusieurs protocoles de la pile protocolaire, chaque nœud sera lui-même considéré comme un module composé. L’hiérarchie des modules n’est pas limitée. L’envoi des messages est le mécanisme de

Chapitre 5 : Résultats de simulation

  76

communication entre les modules. Chaque message contient un certain nombre d’attributs. Les modules peuvent posséder des interfaces (nommées portes dans Omnet++) pour l’envoi de messages et peuvent avoir des paramètres (variables locales de type : string, numeric, boolean) [48].

Le langage NED (Network Description) est utilisé pour créer l’interface de la simulation. Cet exemple illustre la syntaxe NED.

Network Network

{

//commentaires

Node1: node;

Node2:node;

Connections:

Node1.port < - - > {datarate=100Mbps ;} < - - > node2.port ;

}

Cet exemple déclare un réseau composé de deux nœuds appelés Node1 et Node2 qui sont une instance du module node. Chacun des deux nœuds possède une interface nommée port et sont connectés par une liaison symétrique pouvant véhiculer un débit de 100 Mbps.

On peut créer un canal de transmission qui encapsule le débit de 100Mbps. Ceci est utile afin d’éviter de répéter le débit pour chaque transmission si le réseau est composé de plusieurs nœuds.

Types:channel C extends ned.Datarate.Channel

{

Datarate = 100Mbps;

}

Connections:

Node1.port < - - > C < - - > Node2.port;

Chapitre 5 : Résultats de simulation

  77

Le module node peut avoir des paramètres, des portes. On peut également trouver des connections et des sous-modules (en cas où il est compose). La syntaxe utilisée est la suivante :

La première déclaration correspond à un module simple et la seconde correspond à un module composé. Dans ce cas, le module node est composé de deux sous modules ; chacun d’entre eux est une instance de mod1 qui possède une porte in1.

3-1. Composants

Les modules et les canaux sont nommés composants et représentent une instance de la classe appelée Ccomponent qui possède les méthodes suivantes :

Initialize() : invoquée après la création du réseau et fournit l’espace pour tout code d’initialisation.

Finish() : appelée à la fin de l’exécution de la simulation et permet par exemple de récolter des statistiques.

Handlemessage(cMessage *msg) invoquée avec le nom du message en paramètre et ceci lorsque le module concerne reçoit un message.

Void Hellomod ::initialize()

Simple node

{

Parameters:

Int: destination;

Gates:

Inout: port ;

}

Module node

{

Parameters:

Int: destination;

Submodules:

Routing: mod1;

Physical:mod1;

Connections:

Routing .in1 < -- >Physical.in1;

Gates:

Inout: port;

Chapitre 5 : Résultats de simulation

  78

{

Ev<< “Hello world\n “ ;

}

Lors de l’initialisation, on affiche un simple message “hello world”.

Void Hellomod :: Handlemessage(cMessage *msg)

{

Delete (msg);

}

Tout message reçu est supprimé.

3-2. Messages et paquets

Les messages et les paquets peuvent être crées de la même façon. Il suffit d’utiliser le mot clé message à la place de packet pour avoir un message.

Packet mypacket

{

Int source@;

Int des@

Int data;

}

Ils sont associés des mêmes méthodes énoncées auparavant. Cependant, les paquets ont des méthodes supplémentaires. La plus importante est setBitLength (int 64 l ). De plus, les paquets peuvent être encapsulés. Les méthodes usuelles sont :

Void setName (cosntChar *name) ;

Void getKind(short k) ;

setTimestamp(simtime_t t);

setSchedulingPriority(short p);

Chapitre 5 : Résultats de simulation

  79

L’envoi des messages et paquets peut être effectue par l’une des méthodes suivantes:

Send (cMessage *msg, cGate *gate) ;

cMessage *copy =msg->dup

for (int I = 0 ; I < n; i++)

{

Send (copy,’out’);

}

sendDelayed(cMessage *msg, double delay, cGate *gate)

La première méthode envoie le message à travers une porte. La deuxième diffuse le message à travers toutes les portes associées au module et la troisième méthode permet d’envoyer le message après un certain délai.

3-3. Configuration de la simulation

Peut être menée par le biais d’un fichier nomme omnetpp.ini.

Ce fichier contient une section General qui précise le modèle à simuler et le temps de la simulation. On peut également assigner des paramètres aux modules ou répéter la simulation plusieurs fois.

L’exemple qui suit déclare que le modèle de la simulation est Fifo. Il contient 15 nœuds. Le symbole ‘*’ signifie n’importe quel module dont le nom commence par host.

[General]

Network =Fifo

Fifo.Numhost=15

Fifo.host[*].length = 20

Chapitre 5 : Résultats de simulation

  80

4. Résultats de simulation

4-1. Résultats de la contribution principale

Cette section détaille les résultats de simulation obtenus. Nous considérons une topologie de 10 nœuds capteurs comme celle utilisée dans [34] où chaque liaison radio est caractérisée par un taux fixe d’erreur. La manipulation des champs de Galois a été réalisée moyennant [50]. Les nœuds peuvent récupérer des quantités d’énergie à des intervalles aléatoires prédis à l’avance et leurs batteries sont supposées idéales. En effet, l’énergie solaire s’avère un exemple pratique pour nos simulations. Les paramètres de la simulation sont comme suit :

Tableau1. Paramètres de la simulation.

Nous précisons que nos simulations ont été réalisées sur la machine Plough du département EEC (Université Concordia) sous Windows 7 Entreprise. La machine contient 8 processeurs Intel Core 2.93Ghz et une Ram de 4 GB. Plus particulièrement, les nœuds capteurs simulés sont munis d’une couche application, de codage réseau linéaire aléatoire, de routage opportuniste, d’accès aléatoire au médium et une couche physique. A côte de ceci, une batterie est intégrée.

Paramètre Valeur

maxp 20mW

maxZ 5

maxT 15s

β 0.02

η 10-6

M 100

q 256

h 128 bits

max1D 5s

0iE 10MJ

Chapitre 5 : Résultats de simulation

  81

Figure1. Topologie des nœuds capteurs.

Figure 2. Architecture d’un noeud capteur.

Chapitre 5 : Résultats de simulation

  82

4-1-1. Evaluation de la consommation énergétique

La comparaison de la consommation énergétique des deux scénarios déjà expliqués en chapitre 4 a constitué le premier volet de nos simulations. Dans la figure 3, la consommation énergétique (transmissions et réceptions) mesurée en MJ de chaque nœud capteur est illustrée en barres. Cette consommation est nécessaire au décodage de 100 paquets. En fait, 1 et la source et 10 est la destination. Il est clair d’après la figure 3 que le scénario 2 résulte d’une consommation énergétique uniforme par rapport au scénario 1 (Protocole MORE) puisque chaque nœud capteur qui est dans l’état actif et qui arrive à recevoir correctement un paquet est susceptible d’être relais [43].

0

100

200

300

400

500

1 2 3 4 5 6 7 8 9 10

‐Our scheme ‐More Protocol

MJ

Figure 3. Consommation énergétique des deux scénarios.

4-1. Evaluation du débit

L’évaluation suivante concerne le débit des deux scénarios mesuré en nombre de paquets reçus par la destination par seconde. La CDF ‘Cumulative Distribution Function’ du débit après 20 exécutions est illustrée en figure 4 qui montre que le débit du premier scénario est inférieur à 280

Chapitre 5 : Résultats de simulation

  83

paquets/seconde avec une probabilité de 60%. Par contre, le débit du second scénario est inférieur à 360 paquets/seconde pour la même probabilité ; ce qui résulte d’un gain de 22%.

 

 

Figure 4. CDF du débit des deux scénarios.

Les statistiques concernant la CDF du débit des deux scénarios sont comme suit :

Scénario1      min: 2.019450000000000e+002  max: 3.436620000000000e+002  mean: 2.676452000000000e+002  median: 2.674945000000000e+002  std: 50.220062540152639 

Scénario2                min: 3.484160000000000e+002  max: 3.978330000000000e+002  mean: 3.656725000000000e+002  median: 3.614585000000000e+002  std: 12.042599271358585 

200 220 240 260 280 300 320 340 360 380 4000

0.2

0.4

0.6

0.8

1

Throughput (packets/s)

CD

F

CDF of the throughput

Our schemeMORE

Chapitre 5 : Résultats de simulation

  84

4-1-3. Evaluation du temps de terminaison

L’effet de la probabilité d’effacement sur le temps de terminaison a été également étudié. Pour cela, nous avons considéré que la probabilité d’effacement est la même sur tous les liens. Les courbes de bas en haut correspondent à un nombre de paquets égal à 10, 20 et 30 respectivement. La figure 5 montre que la probabilité d’effacement ainsi que le nombre de paquets sont deux paramètres importants. De plus, le temps de terminaison du scénario 2 est inférieur par rapport au temps de terminaison du scénario 1. Ceci est directement lié au débit ; résultat qui a été montré par l’évaluation précédente. Les barres qui apparaissent sur la figure représentent les intervalles du temps de terminaison. Lorsqu’une barre est absente ceci implique que la valeur inférieure de l’intervalle coïncide avec la valeur supérieure.

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.90

1

2

3

4

5

6

Erasure probability

Com

plet

ion

time

Completion time

 

Figure 5. Temps de terminaison des deux scénarios en fonction de la probabilié d’effacement. 

 

 

4-1-4. Impact du nombre des paquets

Chapitre 5 : Résultats de simulation

  85

Enfin, nous avons considéré le scenario2 tout en estimant la probabilité d’effacement. Dans cette simulation, nous avons déployé 10 nœuds capteurs dans une zone de 600*600 et puis nous avons augmenté le nombre de nœuds à 25. Autrement dit, on a augmenté la densité. La courbe en vert correspond au déploiement de 25 capteurs tandis que la courbe en rose correspond au déploiement de 10 nœuds capteurs. La figure 6 montre que l’accroissement de la densité permet de réduire le temps de terminaison

Figure 6. Effet de la densité et du nombre de paquets sur le scénario 2.

4-2. Résultat du système de la maximisation de la durée de vie

Le modèle précédent a été testé par le biais de Matlab et Omnet++. Le standard 802.11 a été utilisé dans ce cas. Pour plus de renseignements à propos du standard 802.11 qui est généralement employé dans les communications sans fil, le lecteur peut se référer à [51]. Tous les nœuds capteurs émettent à la même puissance de 10 mW dans la bande passante de 2.4 GHZ. Ils ont une énergie initiale de 1000 Joule et dépensent 1 Joule pour chaque transmission ou réception. La température initiale est 14000.

10  20  30  40 50 60 70 80 90  100 0 

Number of data packets

Completion time 

Completion time under the average erasure probability 

 

 

‐25 nodes

‐10 nodes 

Chapitre 5 : Résultats de simulation

  86

L’impact du paramètre η sur la convergence a fait l’objet de la simulation présentée en figure 7. Plus précisément, le critère d’arrêt de l’algorithme du recuit simulé dépend de la moyenne du vecteur des probabilités de réception dont la convergence nécessite une petite valeur pour le paramètreη. Autrement dit, la figure 7 démontre que la qualité de convergence de la solution optimale dépend de la fonction de décroissance de la température.

 

0 50 100 150 200 250 300

0.452

0.454

0.456

0.458

0.46

0.462

0.464

Number of iterations

Mea

n re

cept

ion

prob

abili

ty

n=0.2n=0.02

 

Figure 7. La probabilité de réception moyenne versus le nombre d’itérations.

4-3. Résultats de localisation et de routage géographique

Les simulations du système de localisation et routage géographique exposé en chapitre 4 ont été menées moyennant OMNET++ et ont été réalisées au sein du laboratoire Lirmm (Montpellier 2, France). Notons qu’on a adopté une architecture très simple. Chaque capteur est muni de deux couches : la première est responsable de la mobilité tandis que la seconde est responsable du routage. Le tableau 2 illustre les valeurs des paramètres considérés. Il est à noter que le nombre de particules est 50. On estime bien que ce nombre pourra être réellement supporté par des capteurs ayant de faibles capacités. Les valeurs assignées à la constante c et a sont celles proposées par les auteurs Rodoplu et Meng ayant déjà proposés le modèle énergétique de base. Les autres valeurs des paramètres ont été assignées de façon expérimentale.

Nous signalons également que nous nos simulations sont basées sur les aspects suivants :

Chapitre 5 : Résultats de simulation

  87

Un déploiement aléatoire des capteurs.

Une diffusion périodique des messages Hello. Chaque message Hello contient l’identité du capteur et son énergie.

Un rayon démission égal à 60.

N 50

μ1 20

μ2 90

XX 21, Normal (0 , 1)

ϕ 90

A 2

C 2*108

η 3

βα , 0,75

Tableau 2. Paramètres de simulation du routage géographique.

Les figures 8 et 9 illustrent respectivement le résultat de la prédiction des abscisses et des ordonnées. La courbe en bleu correspond au résultat obtenu par le modèle de prédiction et la courbe en rouge correspond au résultat exact associé au modèle de mobilité. Il est très clair qu’au début de la simulation, l’écart entre les deux modèles est important. Cependant, la précision de la prédiction s’améliore en fonction du temps d’exécution.

Chapitre 5 : Résultats de simulation

  88

Temps de simulation20 40 60

Abss

ices

100

200

300

400

Figure 8. Abscisses prédites versus temps de simulation.

Vue les capacités limitées des capteurs, on a décidé de ne pas augmenter le nombre de particules au delà de 50. Par contre, on a préféré lancer l’algorithme de routage après un certain temps d’exécution de la phase de prédiction. Notons également que nous avons préféré de distinguer le résultat de la prédiction des abscisses de celui des ordonnées. Cela revient au mouvement aléatoire des capteurs dont la schématisation n’est pas lisible.

Temps de simulation20 40 60

ordo

nnée

s

0

100

200

300

Figure 9. Ordonnées versus temps de simulation.

Chapitre 5 : Résultats de simulation

  89

Le taux d’acheminement des messages est l’un des paramètres importants lors de l’évaluation d’un protocole de routage. En effet, les figures 10 et 11 représentent respectivement le taux de délivrance des messages envoyés par les capteurs à une station de base et l’énergie moyenne consommée pour acheminer ces messages. Chaque figure contient trois courbes obtenues en faisant varier le nombre de capteurs. Chaque courbe correspond à l’évaluation de notre contribution en fonction du paramètre 'a .

La figure 10 montre que le choix de 'a est déterminant puisque le taux de délivrance est maximale lorsque la valeur de 'a est importante. En augmentant 'a , on favorise la sélection d’un capteur voisin qui s’oriente vers la station de base. D’où l’utilité de la prédiction de la trajectoire des capteurs afin d’augmenter la chance d’acheminement des messages. Notons également que lorsque le nombre de capteurs augmente ; le taux d’acheminement se rapproche de 1. Cela justifie bien le passage à l’échelle de notre contribution.

0

0,2

0,4

0,6

0,8

1

1,2

0 0,2 0,4 0,6 0,8 1

a'

taux

d'a

chem

inem

ent

n=26n=31n=36

Figure 10. Impact du paramètre 'a sur le taux d’acheminement.

La figure 11 démontre que 'a a un impact sur la consommation énergétique. Plus la valeur de 'a est importante, plus la probabilité de routage efficace en énergie augmente. Par contre, une diminution de la valeur de 'a fait augmenter la dépense énergétique puisque dans ce cas, la sélection d’un capteur ne tient pas compte de sa position. Néanmoins, le modèle énergétique utilisé croit de façon exponentielle en fonction de la distance.

Chapitre 5 : Résultats de simulation

  90

2,05E+08

2,05E+08

2,06E+08

2,06E+08

2,07E+08

2,07E+08

2,08E+08

2,08E+08

2,09E+08

0 0,2 0,4 0,6 0,8 1

a'

Ene

gie n=26

n=31n=36

Figure 11. Impact du paramètre 'a sur la consommation énergétique.

Une analyse croisée de la figure 10 et 11 permet facilement de déduire la valeur optimale de 'a . Il s’agit de la valeur maximisant le taux d’acheminement des messages et minimisant la consommation énergétique.

Nombre de capteurs

'a

26 0,9

31 0,9

36 0,7

Tableau 3. Meilleures valeurs du paramètre 'a .

5. Conclusion

Les performances de notre système principal ont été étudiées. Notons que les résultats obtenus dépendent des paramètres de la simulation et ont un grand impact sur la convergence de

Chapitre 5 : Résultats de simulation

  91

l’exécution. Fixer les nœuds relais en fonction de la métrique ETX n’est pas une bonne idée en termes d’énergie, temps de terminaison et du débit surtout que les nouds capteurs basculent entre l’état actif et passif. La dernière étape de nos simulations a exploité notre contribution pour l’estimation de la probabilité d’effacement et elle a montré que dans ce cas la densité du réseau joue un rôle important pour le décodage des paquets envoyés par la source. Notre résultat secondaire démontre qu’il est possible d’avoir une solution hybride (exacte et approchée) pour maximiser la durée de vie du réseau.

D’après les simulations réalisées sous Omnet++, le résultat de la prédiction est acceptable par rapport au modèle de mobilité et ceci ci d’un point de vue erreur de localisation. De plus, le modèle de prédiction employé s’avère très pratique pour quelques modèles de mobilité tel que Gauss-Markov. Ainsi, le résultat du taux d’acheminement des messages est encourageant.

A l’issue de cette étude, plusieurs perspectives ont été dressées et seront présentées à la fin de cette thèse.

 

 

 

 

 

 

 

 

 

 

  92

 

Conclusion génèrale et perspectives

LL’objectif principal de cette thèse est de minimiser le temps d’achèvement nécessaire au décodage des paquets envoyés par une source. La plus grande partie de notre travail a consisté à proposer un système où la réception et le décodage des paquets sont modélisés par une chaîne de Markov. Notre système tire profit des avantages du routage opportuniste avec codage réseau linéaire aléatoire et fonctionne sous l’hypothèse de récupération d’énergie. La sortie de notre système détermine la puissance, le nombre de transmissions ainsi que le flot durant chaque phase. Au travers notre modélisation, une question pertinente concernant l’incertitude de la puissance lors du calcul de la dérivée a été relevée. En conséquence, le calcul par intervalles nous a aidés pour trouver une solution au problème rencontré. Le modèle proposé n’est pas convexe et une autre question concernant le choix d’une méthode adéquate a été posée. La méthode F-Lipschitz a assuré l’existence d’une solution optimale pour notre problème. Deux cas ont été étudiés dans cette thèse. Le premier cas suppose une connaissance a priori de la probabilité d’effacement. Dans ce contexte, deux scénarios ont été simulés. Le premier s’appuie sur la métrique ETX tandis dans le second, chaque nœud qui soit actif et qui a pu recevoir un paquet est susceptible de prendre le rôle de relais. Les résultats de simulation obtenus moyennant Matlab et Omnet++ ont montré les performances du deuxième scénario en termes de la consommation énergétique et du débit. D’autre part, les simulations menées ont montré que le temps de terminaison dépend des probabilités d’effacement et du nombre des paquets. Dans le deuxième cas, une autre chaîne de Markov a été conçue et nous a permis de dériver l’expression de la probabilité d’effacement. Dans ce contexte, le temps de terminaison a été évalué en fonction de la densité réseau dont l’augmentation implique un bon SNR lors de la réception.

Un autre résultat intéressant concerne la possibilité d’hybridation entre une méthode de résolution exacte (programmation linéaire) et une métaheuristique (recuit simulé) pour la maximisation de la durée de vie d’un réseau de capteurs adoptant le routage opportuniste et le codage réseau linéaire aléatoire. Dans cette optique, la fonction de décroissance de la température joue un rôle important pour la convergence du système.

Enfin, le dernier volet concerne la mobilité dans les réseaux de capteurs. Pour cela, une fonction de routage géographique a été proposée et dépend de la prédiction. D’après les simulations réalisées, nous précisons que la sélection du voisin dont la direction est plus proche de la destination a donné des résultats encourageants d’un point de vue dépense énergétique et taux d’acheminement en respectant le modèle de mobilité Gauss-Markov.

Au terme de ce cheminement, nous sommes à même de discuter les perspectives suivantes :

 

  93

-Le travail démarré dans cette thèse s’est limité à un système centralisé. Sa résolution de manière distribuée tout en s’appuyant sur des règles simples est une thématique de recherche intéressante.

-Notre contribution dans cette thèse pourra être bien analysée en ayant un model réel pour la récupération d’énergie (par exemple un modèle de récupération d’énergie solaire).

-L’évanouissement est un problème crucial dans les transmissions sans fil et sa prise en compte nécessite une réflexion appropriée.

-Notre contribution doit être consolidée dans un certain nombre de directions, notamment la réalisation d’une étude expérimentale.

-Le résultat de la localisation peut servir au système de routage opportuniste et l’étude de l’effet des erreurs de location sur le système de routage géographique peut constituer une voie de recherche intéressante.

-Les performances du routage opportunistes peuvent être évaluées dans un environnement mobile.

-Enfin, une comparaison entre l’optimisation par métaheuristiques et F-Lipschitz est une perspective importante qui découle de ce travail de thèse.

 

 

 

 

 

 

 

 

 

 

Annexe : Calcul par intervalles

  94

L’arithmétique par intervalles est un ensemble d’outils basé sur l’idée de manipuler des intervalles comme une nouvelle classe de nombres réels. Tout nombre est représenté par un intervalle le contenant et tout calcul fournit un intervalle qui encadre le résultat recherché. L’avantage de l’arithmétique par intervalles est double : tenir compte des incertitudes sur les données et pouvoir manipuler des quantités qui ne sont pas exactement représentables. Par exemple π sera représenté par ]15.3 , 14.3[ . De cette façon, on est sûr que cet intervalle contient la valeur exacte de π .  

Un intervalle sur R noté ][x est défini comme l’ensemble des nombres réels compris entre les bornes inférieure x et supérieure x tel que [52] :

{ } xx x\ Rx ] x , [][ ≤≤∈== xx . 

Le milieu, la largeur, le rayon et la magnitude sont quatre propriétés d’un intervalle et sont définis comme suit :

xxw(x)2

xxmid(x)

−=

+=

x}xmin{(x),mig(x)2

w(x)rad(x)

∈=

=

 

Les opérations arithmétiques et ensemblistes classiques définies pour les réels sont étendues aux intervalles de cette manière [53]:

y0 , ] ) yx , yx , yx, yxmax( ), yx , yx , yx, yx(min [ ] y , y[ ] x , x[

] ) y*x , y*x , y*x, y*xmax( ), y*x , y*x , y*x, y*x(min [ ] y , y[ * ] x , x[

] y - x , y - x [ ] y , y[ ] x , x[

] y x , y x [ ] y , y[ ] x , x[

∉÷÷÷÷÷÷÷÷=÷

=

=−

++=+

Les caractéristiques des intervalles ont permis d’introduire de nouvelles opérations :

{ }{ }{ }( ){ }

( ) ( ){ }Zyxetyyxxz

yxyxyxyx

∈∈∃∈=

∈∈=

∉∈=∈∈=∪∈∈=∩

,][][Proj

[y]y et [x]xyx, ] [ * ] [ [y]y et [x]x ] [ \ ] [

[y]y ou [x]x ] [ ] [ [y]y et [x]x ] [ ] [

x

 

Le problème du calcul par intervalles est que certaines propriétés ne sont pas préservées. La soustraction n’est pas la réciproque de l’addition et la division n’est pas la réciproque de la multiplication. Une autre propriété perdue concerne la distributivité de la multiplication par rapport à l’addition. Quelques travaux se sont concentrés sur l’adaptation du calcul par

Annexe : Calcul par intervalles

  95

intervalles afin de préserver les propriétés classiques du calcul sur les réels. Nous donnons ci-dessous quelques exemples qui montrent la création des intervalles et leur manipulation par Intlab [49].

 

>> x=infsup(5 , 9)

intval x =

[ 5.0000, 9.0000]

>> y = infsup(-2 , 7)

intval y =

[ -2.0000, 7.0000]

>> z= x + y

intval z =

[ 3.0000, 16.0000]

>> z= x- y

intval z =

[ -2.0000, 11.0000]

>> z=x*y

intval z =

[ -18.0000, 63.0000]

>> z=x/y

intval z =

+/-Inf

>> z=sqrt(x)

intval z =

[ 2.2360, 3.0000]

>> z=log(x)

Annexe : Calcul par intervalles

  96

intval z =

[ 1.6094, 2.1973]

>> z=exp(x)

intval z =

1.0e+003 *

[ 0.1484, 8.1031]

>> z1 = x+ y

intval z1 =

[ 3.0000, 16.0000]

>> z1-y

intval ans =

[ -4.0000, 18.0000]

>> q= infsup(5 , 7)

intval q =

[ 5.0000, 7.0000]

>> z=x*(y+ q)

intval z =

[ 15.0000, 126.0000]

>> z1= (x*y + x*q)

intval z1 =

[ 7.0000, 126.0000]

 

  97

 

Références bibliographiques

[1] K. Beydoune, ‘Conception d’un protocole de routage hiérarchique pour les réseaux de capteurs’, Thèse de Doctorat, Université Franche Comte, 2009

[2] F. Lepoutre, ‘Capteurs, principes physiques’, CNAM Medias, 2001.

[3] P.Gatt , ‘Capteurs ‘

http://btscira.perso.sfr.fr/page1/page25/page25.html

[4] H. Karl, A.Willig, ‘Protocols And Architectures For Wireless Sensor Networks, ISBN 13-978-0-470-09510 2,2007

[5] I-F. Akyildiz, M-C. Vuran, ‘Wireless Sensor Networks’ , ISBN 978-0-470-03601-3(H/B), 2010

[6] A. Gallais, ‘Ordonnancement d'Activité dans les Réseaux de Capteurs : l'Exemple de la Couverture de surface’, Thèse de Doctorat, Université des Sciences et Technologies de Lille, June 2007.

[7] G. Chalhoub, ‘les reseaux de capteurs sans fil’, Workshop Réseaux et Télécommunication de l'IUT, 2010

[8] J. Kulik, W.R. Heinzelman, H. Balakrishnan: Negotiation–Based Protocols for Disseminating Information in Wireless Sensor Networks. In: Wireless Networks, Vol 8, pp. 169-185, 2002

[9] C. Saad, ‘Quelques contributions dans les réseaux de capteurs’, Thèse de Doctorat, Université d’Avignon et Des Pays de Vaucluse , 2008.

[10] S. Chelloug, M. Benmohammed, J-C. Konig, “Prédiction de la mobilité pour un routage géographique efficace en énergie dans les réseaux de capteurs mobiles «, in the proceedings of the JDIR’09, pp. 139-144, Belfort, France, 2009.

[11] S. Sudevalayam, P. Kulkarni, ‘Energy harvesting sensor nodes: Survey and implications. Communications Surveys & Tutorials’ , pages 1–19, 2010. [12] A. Kansal, J. Hsu, S. Zahedi,, M-B. Srivastava, ‘Power management in energy harvesting sensor networks’, in ACM Trans. on Embedded Computing Sys., vol. 6, no. 4, pp. 32, ACM, New York, NY, USA, December 2007 [13] C. Moser, ‘Power Management in Energy Harvesting Embedded Systems’, Phd Dissertation, SWISS Federal Institute Of Technology, 2009

 

  98

[14] V. Joseph, V. Sharma , U. Mukherji, ‘Joint power control, scheduling and routing for Multihop Energy harvesting Sensor Networks’, in 4th ACM International Workshop,PM2HW2N in MSWiM, Spain, October 2009 [15] H. Kwon, D. Noh, J. Kim, J. Lee, D. Lee , H. Shin , ‘Low-Latency Routing for Energy-Harvesting Sensor Networks’ , Springer Berlin, 2007, vol. Volume 4611, no. 978-3-540-73548-9. [16] http://designtheory.org/library/encyc/topics/gf.pdf [17] S. Dietler, ‘Implementation de codes de Reed-Solomon sur FPGA pour communications spatiales’, projet de diplome, Hute Ecole d’ingenieur et de gestion du Canton de Vaud, 2006 [18] C. Fragouli, E. Soljanin , ‘Network Coding Fundamentals, in Foundations and Trends in Networking’ , vol. Vol. 2, Issue 1, p. 1-133, 2007 [19] A. Mahmino, ‘Application du codage reseau aux architectures a garanties de qualitie de service’, These de Doctorat, Universite de Toulouse, 2009 [20] T. Ho, M. Médard, R. Koetter, D. R. Karger, M. Effros, J. Shi, B. Leong, “A Random Linear Network Coding Approach to Multicast”, the IEEE Transactions on Information Theory. [21] S. Chachulski, “Trading structure for randomness in wireless opportunistic routing’, Master’s thesis, MIT, 2007. [22] S. Chachulski, M. Jennings, S. Katti, and D. Katabi, “Trading structure for randomness in wireless opportunistic routing,” in SIGCOMM’07, Kyoto, Japan, Aug. 2007

[23] S. Biswas, R. Morris, ’opportunistic multi-hop routing for wireless networks’, ACMSIG COMM’05

[24] http://pages.pacificcoat.net/~cazelais/251/gauss-jordan.pdf

[25] E. Rozner, J. Seshadri, Y-A.Mehta, L.Qiu, ‘SOAR: Simple Opportunistic Adaptive Routing Protocol for Wireless Mesh Networks’ . IEEE Transactions on Mobile Computing 2009.

[26] T. El-Ghazali, Metaheuristics: from design to implementation, ISBN 978-0-470-27858-1

[27] http://en.wikipedia.org/wiki/Lipschitz_continuity

[28] C. Fischione, “Fast-Lipschitz optimization with wireless sensor networks applications”, IEEE transactions on automatic control, vol 56, NO 10, pp. 2319-2331, October, 2011.

[29] C. Fischione, “F-Lipschitz optimization”, IR-EE-RT_2010:023, April, 2010. [30] M. Jakobson, ‘‘On some extensions and performance of Fast-Lipschitz optimization’’, Master thesis, Skotholm, 2011. [31] K. Kalpakis, S. Tang, ‘’A Combinatorial Algorithm for the Maximum Lifetime Data Gathering with Aggregation Problem in Sensor Networks’’. In the Proceedings of the 9th IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks (WOWMOM 2008), pp. 1-8, Newport Beach, CA, USA, June 23-26, 2008

 

  99

[32] J.H. Chang and L. Tassiulas, “Maximum lifetime routing in wireless sensor networks,” IEEE/ACM Trans. Netw., vol. 12, no. 4, pp. 609–619, 2004. [33] R. Madan, S. Cui, S. Lall, and A. Goldsmith, ‘‘Cross-Layer Design for Lifetime Maximization in Interference-limited Wireless Sensor Networks’’, IEEE Transactions on Wireless Communications, Vol. 5, No. 11, pp. 3142-3152, November 2006 [34] M. Kaliszan and S. Stanczak , ‘‘Maximizing Lifetime in Wireless Sensor Networks under Opportunistic Routing ’’ , 44th Asilomar Conference on Signals, Systems and Computers, Nov. 2010. [35] S. Chelloug, M. Benmohammed, “Simulated annealing for maximizing the lifetime of sensor networks under opportunistic routing” , in the proceedings of BWCCA, pp.14-20, Victoria, Canada, November 2012. [36] K. Zeng, ‘‘Opportunistic Routing in Multihop Wireless Networks: Capacity, Energy Efficiency, and Security’’, Phd dissertation, Worcester Polytechnic Institute, 2008. [37] S. Chelloug, M. Benmohammed , ‘Maximizing the Lifetime of Sensor Networks under Joint Opportunistic Routing and Scheduling’ in the proceedings of World Academy of Science, Engineering and Technology 69 2012, ISSN 2010-3778, pp. 1188- 1192, 2012. [38] D. Lucani, M. Stojanovic , M. Médard, “Random Linear Network Coding for Time Division Duplexing: When To Stop Talking And Start Listening," in Proc. INFOCOM 2009, Rio de Janeiro, Brazil, Apr. 2009. [39] D. Lucani, M. Medard, M. Stojanovic, “Random Linear Network Coding for Time Division Duplexing: Field Size Considerations", in Proc. GLOBECOM 2009, Hawaii, USA, Dec. 2009 [40] D. Lucani, M. Medard, M. Stojanovic, “Random Linear Network Coding for Time Division Duplexing: Energy Analysis," in Proc. ICC 2009, Dresden, Germany, Jun. 2009. [41] M. Rousignol, “Processus stochastiques”, Master de mathématiques, Universite Paris-Est, 2008.

[42] J. Yang, S.Ulukus, “ Packet Optimal Scheduling in an Energy Harvesting communication system”, IEEE transactions on communications, Vol.60, No. 1, January 2012.

[43] S. Chelloug, M. Benmohammed, “Minimizing the completion time in wireless sensor networks with energy harvesting under opportunistic routing and random linear network coding”, The international journal of research and reviews in wireless sensor networks (IJRRWSN), Vol. 2, N°. 2, June 2012, ISSN: 2047-0037, pp.93-101.

[44] A.Tarable, I. Chatzigeorgiou, I-J. Wassell, "Randomly Select and Forward: Erasure Probability Analysis of a Probabilistic Relay Channel Model," 2009 IEEE Information Theory Workshop (ITW 2009), Taormina, Italy, Oct 2009

[45] Y. Wu, S. Fahmy, N-B. Shroff, "On the Construction of a Maximum-Lifetime Data Gathering Tree in Sensor Networks: NP-Completeness and Approximation Algorithm," In Proceedings of IEEE INFOCOM (the conference on computer communications), 9 pp., April 2008.

 

  100

[46] D. Bertsimas, J. Tsitsiklis, ‘‘Simulated Annealing’’, in the proceedings of statistical science, Vol. 8, N° 1, pp. 10-15, 1993. [47] L. Mihaylova, D. Angelova, S. Honary, D-R. Bull, C-N. Canagarajah, ‘Mobility tracking in cellular Networks using particle filtering ‘ , IEEE transactions on wireless communications, Vol.6, N°.10, 2007.

[48] A. Vargas, ‚’Omnet++’

http://www.omnetpp.org/

[49] S. M-Rump‚’Intlab’

http://www.ti3.tu-harburg.de/rump/intlab/ [50] J.S-Plank http://web.eecs.utk.edu/~plank/plank/papers/CS-07-593/ [51] L.Yan et al. ,’ Architecture Taxonomy for Control and Provisioning of Wireless Access Points (CAPWAP)’ http://www.armware.dk/RFC/rfc/rfc4118.html [52] F. Mourad, H. Snoussi, F. Abdallah, C. Richard, ‘‘Localisation par intervalles basée sur les ancres et les non-ancres dans les réseaux de capteurs mobiles’’. GRETSI 09, Dijon, France, 8-11 Sep., 2009. [53] N. Revol, ‘‘Introduction à l’arithmétique par intervalles’’ , rapport de recherche, ISSN 0249-6399, Université des sciences et technologies de Lille, 2001.

 

 

Nom du document :  Copie‐corrigée1 Répertoire :  I: Modèle :  C:\Documents and Settings\user\Application 

Data\Microsoft\Modèles\Normal.dot Titre :  Ministère de l’enseignement supérieur et de la recherche 

scientifique Sujet :   Auteur :    Mots clés :   Commentaires :   Date de création :  06/04/2013 06:34:00 N° de révision :  2 Dernier enregistr. le :  06/04/2013 06:34:00 Dernier enregistrement par :  pc Temps total d'édition :  2 Minutes Dernière impression sur :  06/04/2013 01:57:00 Tel qu'à la dernière impression   Nombre de pages :  107   Nombre de mots :  26 276 (approx.)   Nombre de caractères :  144 524 (approx.)