• Aucun résultat trouvé

Robotique de Groupes

2- Amélioration des performances liée à l’exécution des tâches à réaliser, comme :

4.4.2 Concept de coopération

4.4.2 Concept de coopération

La robotique coopérative impose que les robots doivent partager et/ou intervenir simultanément sur des ressources communes (un objet à déplacer collectivement, une voiture à souder ou à peindre dans une chaîne de montage de voiture), ce qui signifie que, d’une part les robots doivent évoluer dans le même environnement, et d’autre part qu’ils sont appelés à coordonner leurs actions pour réaliser la tâche coopérative (voir Section 4.2.5.2). Cette coordination, lorsqu’elle est issue d’interactions simples (basée sur des mécanismes réactifs) induites par les robots, elle est plutôt émergente. Mais lorsqu’elle se complexifie, elle requière des mécanismes de haut niveau dits cognitifs [Bro 86]1[Ado 07]. Exemples : maintient de patrouille en formation, l’exploration spatiale et le transport coopératif.

Afin d’évaluer les différentes architectures de contrôle proposées dans les travaux de recherche en robotique collective, des tâches de références peuvent être utilisées. Des exemples de ces tâches sont présentés dans ce qui suit :

4.4.2.1 Transport et manipulation coopérative d’objets : l’idée derrière ce type de tâches est

de faire coopérer un groupe de robots mobiles pour soulever, porter, réorienter, regrouper ou pousser des objets qu’un seul robot pourrait réaliser difficilement ou pas du tout. Exemples :

déplacer. Les robots mobiles disposent d’un capteur de force qui sert d’information pour contrôler le déplacement de la palette d’une manière stable et distribuée [Sti 93], - utiliser des robots pousseurs, guidés par des scénarios appropriés pour orienter collectivement des objets volumineux dans l’environnement. Cette approche dépend d’une multitude d’informations capteurs et d’une communication de haut niveau entre les robots [Rus 95]1, - utiliser un groupe de robots nommés s-bot avec la possibilité de s’auto-assembler pour former différents types de structures physiques. Parmi elles, on retrouve une structure qui permet de pousser-tirer d’une manière coopérative des objets en les entourant complètement afin de donner la possibilité à certains robots de pousser et à d’autres de tirer [Bal 03], - utiliser un comportement inspiré de celui des fourmis pour contrôler un groupe de robots complètement réactifs, afin de réaliser une tâche de poussée d’objets sans utiliser de communication directe entre eux [Kub 00].

4.4.2.2 Mouvement en formation : Naviguer en formation malgré la présence d’obstacles est

une autre tâche générique qui consiste à : - se déplacer vers l’objectif, - éviter les obstacles statiques, - éviter les autres robots, et - maintenir la formation. Exemple : supposons qu’on veut contrôler la navigation de 4 robots mobiles en formation dans un milieu contenant des obstacles en utilisant des schémas moteurs spécifiques (voir Figure.4.14). Yamaguchi a réussit avec ses collègues de traiter cette tâche en distribuant complètement le contrôle sur les entités autonomes qui n’exploitent que des informations localisées pour établir leurs actions. Il établit également un modèle logique pour démontrer la faisabilité de l’approche proposée [Yam 01].

4.4.2.3 Fourragement : Cette tâche caractérise à l’origine les insectes sociaux (fourmis et

abeilles). Elle consiste à rechercher la nourriture dans l’environnement soit d’une manière aléatoire, soit d’une manière dirigée (utilisation de marquage par phéromone pour guider les autres congénères vers la source de nourriture) et à la transporter vers le nid. Cette tâche générique à inspiré bon nombre de travaux en robotiques collective (en remplaçant les insectes par les robots, la nourriture par des objets spécifiques dans l’environnement, les phéromones par des communications directes entre robots et le nid par une position identifiée dans l’environnement. Exemple : utiliser un groupe homogène de 7 robots mobiles communiquant ente-eux, pour trouver et collecter des palets disposés aléatoirement sur le terrain [Mat 04].

4.4.2.4 Groupement et tri : la formation en tas d’objets est une tâche générique inspirée de

l’amassement de nourriture chez certaines espèces d’insectes sociaux comme les fourmis (voir Figure.4.15.à-gauche). Elle consiste à amasser tous les objets que les robots peuvent rencontrer dans un même endroit qui émerge ou qui peut être désigné [Bar 95]. De même pour le tri d’objets qui consiste à mettre les objets de mêmes caractéristiques dans le même tas (voir Figure.4.15.à-droite). Elle est inspirée, entre autres, par la classification du couvain chez les fourmis [Mel 01].

Figure.4.14-Navigation en formation maintenue : les 4 robots mobiles sont

les points noirs avec les 4 trajectoires. Les autres points noirs représentent des obstacles. De gauche à droite on a respectivement les formations en diamant, cale, ligne et colonne [Bal 95].

Figure.4.15-Groupement et tri : à gauche, la simulation d’une

formation en tas d’un groupe d’agent-robots homogènes et réactifs [Bar 95], à droite : une expérience réelle de tri selon la couleur de frisbees effectuée par un groupe de robots.

136

4.4.2.5 Exploration d’environnements inconnus : cette tâche a pour but de dresser une carte

de l’environnement en vue de l’exploiter par la suite [Coh 96][Sin 93]. Notons que la localisation a besoin, sous une forme ou une autre, d'une représentation informatique de l'environnement. Il existe deux types principaux de cartes : les grilles d’occupation et les graphes [Sem 04].

- Grille d’occupation : l’environnement est quadrillé en cases d’une dizaine de centimètres de côté [Thr 96][Fox 98][Sim 96]. Durant l’exploration, à l’aide des sonars ou d’un télémètre laser, chacune de ces zones se voit attribuer une probabilité d’être occupée par un obstacle. Le résultat est une image probabiliste des murs et des espaces libres (voir Figure.4.16). Cette représentation donne lieu à une localisation sous forme de coordonnées qui désignent une case du quadrillage. L’un des inconvénients des grilles d’occupation vient de la grande quantité de données qu’il faut manipuler. L’exploitation de ces représentations est coûteuse en temps de calcul.

Cartes topologique : dans ce cas on ne s’intéresse qu’aux points représentatifs du milieu.

Elles ont la forme d’un graphe où les sommets représentent des endroits spécifiques, comme l’intersection de couloirs, et les arcs représentent l’existence d’un chemin entre deux sommets (voir Figure.4.17). C’est une vue plus abstraite de l’environnement que celle proposée par les grilles d’occupation. Elle vise à ne conserver que l’information utile. Si le quadrillage est précis, il manque de discernement. Un long couloir uniforme ne nécessite pas a priori une accumulation de milliers de données [Kui 91][Nag 98].

Ces deux méthodes peuvent être complémentaires ; la grille d’occupation créée par exploration peut servir à construire un graphe topologique[Thr 96].

4.4.3 Communication

Dans la section 4.2.6 on a dit que la communication (partage d’informations, d’expression des états, de négociation pour trouver le meilleur compromis aux situations, de requête pour avoir des informations) est à la base du travail coopérative.

Ce sont des mécanismes qui permettent au groupe d’être plus efficace, à condition qu’ils soient utilisés à bon escient. Nous allons essayer, dans cette section, de creuser encore plus cette question dans le contexte de la robotique de groupe. Convenons d’emblée que l’intérêt de la communication est de guider les interactions entre robots vers des situations non conflictuelles d’un point de vue spatiaux-temporels et/ou coopérative [Ler 98][Sim 01]. En ce qui concerne la communication entre robots, elle peut être classée, entre autres, selon le degré de sophistication, le type d’informations échangées et les mécanismes de fonctionnement comme suit :

Figure.4.16-Grille d'occupation d'un couloir du laboratoire : Chaque pixel correspond à un

espace de 10×10 cm. La probabilité d'occupation d'une case est représentée par le niveau de gris. La dérive de l'odomètre cause la courbure des murs. Cet exemple est tiré de [Hug 02].

Figure.4.17-Représentation topologique :

elle consiste à enregistrer les endroits et leurs relations les uns vis-à-vis des autres. La carte devient alors un graphe où les nœuds correspondent à des lieux et où les arcs correspondent au chemin entre elles. Ci-contre un quartier à Nancy (France)

4.4.3.1 communications de haut niveau : qui s’exerce entre individus à travers des protocoles

évolués, tels que : - l’établissement d’une connexion orientée entre deux entités communicantes avec des identifiants (Emetteur(idx), Récepteur(idy)), - l’échange d’information de haut niveau, comme l’état d’achèvement des sous-tâches entreprises par chaque robot [Par 98] ou les plans d’actions propres à chaque robot pour trouver le meilleur compromis des actions à entreprendre pour chaque robot [Rob 96][Ler 98], et l’allocation dynamique des tâches à effectuer par un groupe de robots mobiles [Ger 02], - l’existence de protocole de validation de la réception des messages, et - l’existence d’une structure qui centralise les messages émis par les différents agents présents dans l’environnement et ce à la manière d’une base de données partagées. Dans ce système, un superviseur centralise les décisions et les communications globales du système multi-robots (voir Figure.4.18).

4.4.3.2 communications de bas niveau : s’établissent de manière localisée autour du robot

émetteur en véhiculant des informations simples. Elle n’utilise pas d’identifiant pour caractériser l’émetteur et le récepteur du message. Autrement dit, les messages sont diffusés spontanément. Aussi, elle n’utilise pas de protocole particulier de négociation entre agents (voir Figure.4.19).

4.4.3.3 communications indirectes (stigmergie) : Dans ce genre de communication c’est

l’environnement des agents qui sert d’intermédiaire de communication [Jun 00][Hug 00]et cela à l’exemple des insectes sociaux comme les fourmis qui déposent des phéromones dans leur environnement pour guider les autres fourmis vers les sources de nourriture.