• Aucun résultat trouvé

Simulations parallèle et distribuée

5.2 La simulation distribuée

5.2.5 La simulation physique distribuée : cas des criquets

Le standard HLA est utilisé pour unifier des simulations parallèles. La simulation physique du modèle regroupe quatre simulateurs que sont Locust,Climat, RCSF et

Visualisation. Ces simulations sont fédérées en accord avec le modèle de programmation CUDA et le standard HLA. Ensuite elles sont exécutées en parallèles comme quatre différentes simulations.

La migration des criquets d’une cellule à une autre est gouvernée par des règles de transition basées sur les conditions climatiques dans des cellules. Lorsqu’une cellule est occupée à l’instantt, le modèle climatique inclut ses nouvelles données à l’instant

t+1. En ce qui concerne la communication entre les simulateursRCSFetLocust, les capteurs collectent régulièrement l’état d’une cellule. De nouvelles informations seront envoyées au simulateurVisualisation et si une densité de population seuil est atteinte,

FIGURE 5.5: Structure de la fédération de simulateurs

Visualisationémet des signaux d’urgence. Pour cela, la synchronisation doit être réalisée comme indiqué dans le tableau 5.1 et les données partagées doivent être déclarées comme indiqué dans le tableau 5.2.

Le fichier FOM pour la fédération est présentée dans le fichier cyber.fed qui suit : ; ; Cyber p h y s i c a l s i m u l a t i o n ( Fed ( F e d e r a t i o n Cyber ) ( F e d V e r s i o n v1 . 0 ) ( F e d e r a t e " L o c u s t " " P u b l i c " ) ( F e d e r a t e " C l i m a t " " P u b l i c " ) ( F e d e r a t e "RCSF" " P u b l i c " ) ( F e d e r a t e " v i s u a l i s a t i o n " " P u b l i c " ) ( O b j e c t s ( C l a s s O b j e c t R o o t ( A t t r i b u t e p r i v i l e g e T o D e l e t e r e l i a b l e t i m e s t a m p ) ( C l a s s R T I p r i v a t e ) ( C l a s s LocustNode ( A t t r i b u t e P o s i t i o n X RELIABLE TIMESTAMP) ( A t t r i b u t e P o s i t i o n Y RELIABLE TIMESTAMP) ( A t t r i b u t e S t a t e RELIABLE TIMESTAMP) ) ( C l a s s ClimatNode ( A t t r i b u t e T e m p e r a t u r e RELIABLE TIMESTAMP) ( A t t r i b u t e P l u v i o m e t r i e RELIABLE TIMESTAMP) ( A t t r i b u t e Vent RELIABLE TIMESTAMP)

) ( C l a s s RCSFNode ( A t t r i b u t e P o s i t i o n X RELIABLE TIMESTAMP) ( A t t r i b u t e P o s i t i o n Y RELIABLE TIMESTAMP) ( A t t r i b u t e S t a t e RELIABLE TIMESTAMP) ) )

5.2. La simulation distribuée 79

)

Le simulateur Locust Il est basé sur un modèle de migration de groupes de criquets pèlerins. Chaque cellule est initialisée aléatoirement avec un certain nombre d’individus et à chaque étape un nombre aléatoire de criquets se déplace vers les cellules voisines ayant reçu une plus grande quantité de pluie, par conséquent ayant un couvert végétal plus fourni. Cette migration dépend des conditions éco-météorologiques dans les cellules. Nous nous sommes intéressés aux paramètres vent, température, pluviométrie. Le dernier détermine la végétation et le taux d’humidité relative dans les cellules.

FIGURE5.6: Simulation de migration cellulaire avec un voisinage de Von Neumann. La couleur rouge représente la propagation des criquets

Sur la Figure 5.6, la couleur verte foncée de la première image représente le nombre initial de criquets, choisi aléatoirement entre 0 et 150. La couleur rouge sur la deuxième image représente le nombre de criquets compris entre 300 et 350. Cet état est obtenu après dix tours synchrones. La couleur rouge sera plus vive au fur et à mesure de l’évolution de la simulation (voir Figure 5.7) caractérisant une densité de population plus élevée.

Les règles de transition La règle de transition tient compte du nombre d’insectes des cellules voisines, et choisit d’envoyer plus ou moins d’insectes aux voisins. Par exemple si on suppose qu’une cellule centrale reliée à ses voisines par Von Neumann 1, dispose de 100 criquets, sa voisine Nord, de 200, celle du Sud de 10 et celle de l’Est de 50 criquets. La cellule centrale calcule de façon aléatoire une quantité de sa population (exemple 20%) et les envoie avec une proportion qui est fonction du nombre de criquets reçus des voisines au tour précédent ( exemple 200 + 10 + 120 + 50 = 380). Ainsi, la voisine Nord recevra 200/380, la voisine Sud 10/380, celle de l’Ouest 120/380 et celle de l’Est 50/380.

Les messages représentent le nombre d’insectes d’une cellule à envoyer aux voisines. Ensuite, la cellule soustrait les insectes perdus de son effectif, et s’occupe des messages entrants. Puis, le nuage d’insectes bouge dans une direction choisie aléatoirement.

Après vingt tours synchrones, on obtient la Figure 5.7 ci-dessus :

FIGURE5.7: Etat des cellules après vingt tours synchrones

Ces figures (Figures 5.6 et 5.7) montrent la migration des criquets en rouge au début, milieu et fin de simulation. Les pixels dans les cellules représentent l’espace de données (la végétation) et une densité de population dans une cellule. La dégradation de la couleur verte signifie que la densité de population de la cellule devient de plus en plus faible. Ceci est dû à des conditions météorologiques défavorables.

Le simulateur Climat Initialement les cellules disposent d’un bon couvert végétal matérialisé par la couleur verte initiale des cellules. Durant la migration des criquets, ce simulateur reçoit les états des criquets du simulateurLocustpar l’intermédiaire du bus RTI.

Il évalue le couvert végétal, comme les criquets se nourrissent de la végétation, la densité de végétation décroit proportionnellement avec la densité de criquets dans une cellule. Le bus RTI envoie les données au simulateurClimatdès qu’il reçoit des mises à jour du simulateurLocust. Ces mises à jour ont lieu lorsque les criquets atteignent les frontières d’une cellule.

Le simulateur RCSF À chaque étape synchrone, les nœuds capteurs recevront des

données du simulateurLocustpar l’intermédiaire du bus RTI. Seules les cellules dont la portée est comprise dans la plage de détection sont considérées. Lorsque la densité de criquets dépasse un certain seuil, le comportement duRCSFpeut consister à expédier une alerte à un centre de traitement. Ainsi un réseau de surveillance synchrone basé sur les réseaux de capteurs sans fil permet de contrôler le mouvement des insectes. L’objectif de ces simulations est de prospecter les fonctions possibles des RCSF, en tenant compte de circonstances pratiques telles que les connectivités, ou de besoins, tels que la collecte synthétique des états réels. En première approche, le signalement d’un danger est toutefois un minimum significatif.

5.3. Conclusion 81

Le simulateur Visualisation Ce simulateur est basé sur un système de visualisation 2D présenté sur X11. Tout d’abord il s’enregistre au niveau du bus RTI et recueille toutes les données nécessaires qui ont été publiées par les autres simulateurs. Son rôle est de fournir une vue d’ensemble des résultats de simulation. Pendant l’exécution de la co-simulation, il reçoit des données des autres simulateurs et met à jour la présentation des résultats pour chaque étape.

5.3 Conclusion

Ce chapitre a porté sur les modélisations sur des architectures distribuée et parallèle. Il a permis de présenter les différentes architectures des calculateurs. La co-simulation distribuée avec couplage de HLA et CUDA a été évoqué avec une étude de cas sur la modélisation de la dynamique de criquets pèlerins dans leur milieu de reproduction.

L’intégration de données spécialisées requiert toutefois des efforts de programmation non triviaux. On conçoit bien que quantité de considérations conduisent à séparer les simulateurs : par exemple, l’effet des traitements, ou des accidents climatiques peuvent justifier des compositions de simulations.

Ce chapitre a permis également de montrer comment les paramètres climatiques ont été intégrés dans les cellules. Ce dernier aspect diffère nos modèles cellulaires de ceux existants car il permet de disposer de données de vent et pluie directement dans les cellules, évitant de disposer de modèles parallèles qui peuvent nécessiter des temps de simulation importants et d’utiliser des techniques de co-simulation distribuée.

6

Calcul de couverture radio et déploiement