Modèles et algorithmes pour systèmes multi-robots hétérogènes

Modèles et algorithmes pour systèmes multi-robots
hétérogènes

Intégration des modèles 

Nous détaillons ici l’intégration des modèles utilisés par nos algorithmes de planification de patrouille, pour laquelle nous avons mis en œuvre nos idées développées au chapitre 5. À l’heure actuelle, nos algorithmes de planification de patrouille n’utilisent pas directement la librairie Gladys mais sont construits autour d’un équivalent écrit en Python et exploitant les mêmes données de base, et en particulier les cartes au format GeoTIFF exploitant GDAL et les modèles des robots et de mission au format json – voir aussi l’annexe A à ce sujet. Cela nous a permis un premier prototypage rapide dont nous montrons les résultats ici et qui est tout à fait compatible avec l’exploitation future de la librairie Gladys. En particulier, on exploite les données d’entrée suivantes : — descriptif de la mission (json) ; — descriptif de chaque robot impliqué dans la mission (json) ; — cartes d’accessibilité, une par robot (GeoTIFF) ; — cartes de visibilité, une par robot (GeoTIFF) ; — carte d’utilité, une pour la mission (GeoTIFF), décrivant l’utilité initiale de chaque position objectif et son importance, et représentant son évolution au cours du temps, entre deux instances. Le descriptif de la mission précise notamment les fichiers utilisés (dont les cartes), les positions de départ des protagonistes et les paramètres de la mission – ici la durée T d’un cycle). Chaque robot utilise un modèle de déplacement basé sur sa carte d’accessibilité, sa taille et sa vitesse nominale, un modèle de visibilité basé sur sa carte de visibilité, la hauteur de son capteur, le type de capteur, sa portée et sa qualité – les paramètres sont utilisés pour définir la fonction de perception décrite plus loin – et un modèle de communication fonction de la distance. Ces modèles sont facilement extensibles. Actuellement, nous considérons des robots ayant un angle de vue à 360° et nous ne prenons pas en compte leur orientation. Cela peut s’avérer problématique dans certains cas – voir à ce sujet le chapitre 9 – mais reste suffisant pour nos algorithmes de patrouille et les résultats présentés ici. Ce n’est pas une perte de généralité, mais il est important de considérer que la prise en comte de l’orientation du robot impacte fortement l’étape d’échantillonnage et la complexité du problème instancié. Par ailleurs, P r et Q sont basés sur des ensembles de positions 2D, disposées selon une grille cartésienne – des rasters GDAL au format GeoTIFF. Ces grilles sont géoréférencées, et différent d’un robot à l’autre – par la taille du robot et par ses capacités d’accès – comme illustré à la figure  32. À partir du tableau 1, explicitons les fonctions de base utilisées ici : percept ion φ r pq =    1 si dist(p, q) = 0 0 si dist(p, q) > sensor range min .

 Solveur IP

 Nous avons utilisé le solveur IP GLPK. Nous détaillons ce choix et le fonctionnement de ce solveur dans l’annexe B. Plus spécifiquement, la section 7.2 utilise directement les binaires de la librairie (lp_solve) tandis À propos de que les autres résultats expérimentaux ont été obtenus à travers la librairie PyMathProg, voir http:// pymprog.sf.net/ PyMathProg∗ fournissant une API Python à GLPK à travers PyGLPK. Cette API a été retenue pour sa simplicité et sa lisibilité. En outre, il est très important de noter que GLPK est un solveur déterministe. Cela permet de garantir la reproductibilité des résultats pour une instance donnée Il est courant de – l’échantillonnage restant lui stochastique. laisser tourner un solveur IP pendant plusieurs heures pour évaluer ses capacités et obtenir le meilleur résultat possible ; nous trouvons ces temps de calculs trop longs pour notre application qui vise la replanification en cours de mission, c’est pourquoi nous nous limitons à quelques minutes de calculs seulement. Dans le présent chapitre, tous les résultats sont issus d’une résolution centralisée : le solveur utilise l’ensemble des données disponibles pour élaborer en même temps les plans de chaque robot, ce qui permet une coordination optimale entre les robots, au contraire du chapitre 8 qui étudie une approche séquentielle et décentralisée du problème. Le solveur GLPK, de par son fonctionnement, est capable d’évaluer sa résolution du problème IP qui lui est donné. En particulier, il est capable d’indiquer si des solutions existent ou non, et lorsqu’il en a renvoyé une il indique si elle est optimale ou non. Si la solution est sous-optimale, il peut fournir des bornes sur son optimalité, bien que celles-ci se révèlent assez larges en pratique. En outre, il est possible de fixer une limite de temps au bout de laquelle le solveur s’arrête et renvoie la meilleure solution trouvée jusque-là, généralement sous-optimale. Nous faisons un usage systématique de cette fonction, avec une limitation du temps de calcul à cinq minutes, ce qui pour nous correspond à un « maximum acceptable∗ » en cours de mission pour planifier le prochain chemin.  Il n’est pas facile d’évaluer a priori quelles sont les capacités du solveur face à un nouveau problème IP car ses performances dépendent du nombre de variables et de contraintes mais aussi de sa capacité à exploiter les liens entre elles, c’est-à-dire en quelque sorte de la « topologie » du problème. Or, si nos problèmes TOP et SP sont proches du classique TSP, ils sont différents dans leur complexité – plus grande – et dans les variables – il y a des variables et des relations supplémentaires. Afin d’évaluer grossièrement les capacités de notre solveur, nous avons dans un premier temps lancé de nombreuses instances afin de définir quels étaient les jeux de paramètres acceptables pour le solveur. Ceci est présenté dans la section 7.2 ; les sections suivantes évaluent alors plus en détails les performances de notre approche dans ces bornes. 

Table des matières

Introduction
I considérations générales sur la planification
multirobot
1 état de l’art : taxonomie
1.1 Motivations
1.2 Taxonomie
1.2.1 Détection de cibles
1.2.2 Pistage de cibles
1.3 État de l’art
2 détection de cibles
2.1 Couverture de zones – Gardiens de musée
2.2 Capture – Nettoyage de graphes contaminés
2.3 Fouille probabiliste
2.4 Patrouille
2.5 Chasse
3 pistage de cibles
3.1 Localisation des cibles
3.2 Suivi
3.3 Observation – CMOMMT
4 analyse et synthèse de l’état de l’art
4.1 Approches récurrentes
4.1.1 Théorie et Pratique
4.1.2 De la décentralisation
4.1.3 Le besoin de coopération
4.1.4 Environnements incertains et dynamiques
4.1.5 Planification et Optimisation
4.2 Modèles principalement exploités
4.2.1 Modèles de l’environnement
4.2.2 Modèles des agents
4.3 Résultats et validations expérimentales
Bilan
II contributions algorithmiques
5 modèles
5.1 Impact des modèles
5.2 Modèles et planification
5.3 Organisation des modèles et données associées
5.3.1 Une gestion commune
5.3.2 Différents niveaux d’abstraction
5.3.3 Géolocalisation
5.4 Intégration
5.4.1 La librairie Gladys
5.4.2 Fonctions d’accès aux données
5.4.3 Gestion des états
5.5 Bilan
6 patrouille de zones sécurisées : formalisme
et théorie
6.1 Contexte et approche
6.2 Modélisation du problème
6.3 Échantillonnage et instanciation
6.3.1 Échantillonnage orienté positions
6.3.2 Échantillonnage orienté perceptions
6.3.3 Échantillonnage multiple perceptions-positions
6.4 Résolution par parcours de graphe
6.4.1 Algorithme de patrouille
6.4.2 Terminaison, correction et complexité
6.5 Optimisation en nombres entiers
6.5.1 Formulation TOP orientée positions
6.5.2 Formulation TOP orientée perceptions
6.5.3 Formulation « Sightseeing Problem »
6.5.4 Élimination des sous-tours
6.6 Discussion sur les formulations IP
6.6.1 Exploitation des modèles
6.6.2 Résoudre le problème d’optimisation
6.6.3 Fonctions objectifs alternatives
6.6.4 Contraintes de communication
6.6.5 Patrouilles cycliques et considérations sur le long terme
7 résultats expérimentaux
7.1 Intégration
7.1.1 Intégration des modèles
7.1.2 Solveur IP
7.2 Résultats préliminaires
7.2.1 Complexité des formulations IP
7.2.2 Performances face à la complexité
7.3 Les schémas de patrouille
7.3.1 Environnement « Parking du LAAS »
7.3.2 Environnement « Caylus »
7.3.3 Environnement « Manhattan »
7.3.4 Environnement « Plaine »
7.4 Influence de l’échantillonnage
7.5 Cycles et performances sur le long terme
7.5.1 Métriques
7.5.2 Oisiveté
7.5.3 Non-prédictibilité
7.6 Communication
7.7 Bilan et perspectives
8 patrou illes décentral isées
8.1 Décentralisation et résolution IP
8.2 Le besoin de coordination
8.3 Aspects long terme
8.3.1 Oisiveté
8.3.2 Non-prédictibilité
8.3.3 Formulations SP
8.3.4 Aspects « très long terme »
8.4 Communications
8.5 Bilan et perspectives
9 su iv i de c ible
9.1 Contexte
9.2 Approche : un suivi monorobot avec support multirobot
9.2.1 Formalisme
9.2.2 Modèles réalistes
9.3 Évaluer le besoin de renforts
9.3.1 Évaluer les échecs
9.3.2 Stratégie locale de suivi
9.3.3 Arbre d’états et graphe cyclique de suivi
9.4 Résultats expérimentaux
9.4.1 Simulations ad hoc
9.4.2 Simulations réalistes
9.5 Suivi et renforts
9.6 Bilan et perspectives
Discussion
III annexes
a librairie gladys
a.1 Données d’entrée
a.1.1 Modèles d’environnement : cartes géolocalisées
a.1.2 Modèles de robot
a.1.3 Modèle de mission
a.2 API et exemples
b solveurs ip
b.1 Solveurs disponibles
b.2 GLPK
b.3 Fonctionnement
b.4 Caractéristiques
c complexité du suivi  nomenclature
glossaire
bibliographie

projet fin d'etudeTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *