Robotique
Robotique
Département d’Informatique
Septembre 2020
Dédicace
I would like to dedicate this work:
For each person who gave me a positive energy, who helped me go through these five years
My Grand-Mother the light of my life
My mother, father and of course my brother Amine
All my cousins and Uncles especially the sweet Balkis Nada Elrihane, Yassmine and Mofida – well I
would say Razane Sajida her daughter and Yussuf were the most positive thing that ever happened to
me in this five years.
Friends who come and went that were a big impact both positive and negative on me such as Salah
Eddine, Imen, Hamida and the list goes on.
My People and other family in CreatiVa club who; which I am not exaggerating changed my life;
each member of us the newest and the oldest.
And all the people that I actually known in my life such us Yasser Benyounes, Ziou Abdrezzag,
Benzaid Aymen, Fadlia Bessma, Djakdjak Hadjer, Chemmakh Amira …
The teachers at “Guelma Informatique Department” my role models
a special gratitude to the beautiful Bouthaina who was just there whenever
and Myself for being able to take all these struggles and survive
Maya
i
Remerciement
Remerciement
I want to give my gratitude to all those in whom, by their presence, their support, their availability and their
Above all, it seems opportune to give thanks to Allah for giving us the will and the patience and the ability to
i will start by thanking myself for being able to complete this thesis and all these years, it was so pleasing to be
I would love to be able to thank my parents for the unconditional support they have shown. Thank you for
the financial, moral, psychological and material support. If I am here today, it is thanks to you!
I would like to thank the members of the jury for having done me the honor of being part of this work.
I would like also to thank my supervisor Dr. ZEDADRA Ouarda, teacher at the University of GUELMA, for all
the help, guidance, as well as for her precious advice while the realization of my thesis. I learned a lot from her
I would also like to thank all the people who, near or far, friends or family for their support, encouragement
Finally, I will thank my friends and colleague of the class of 2020; and of course our dearest computer
science department : each member whether it is a students or a teacher or just a worker there for all these
years we spent together, in the best moments as in the worst even thought there were not any bad moments.
ii
Résumé
Résumé
L’application de recherche et de sauvetage consiste à naviguer dans un espace catastrophique selon une
stratégie de déploiement dans le but de chercher et transporter des victimes à certaines localisations
(dépôt). C’est une tâche qui se compose de deux comportements de base : l’exploration et le retour au
dépôt. Ces deux comportements constituent des défis dans la littérature et plusieurs travaux veille à leur
résolution.
Nous proposons dans ce travail d’utiliser un essaim de robots pour la résolution d’une mission de
recherche et de sauvetage. En se concentrant, d’un côté, sur la dispersion de robots qui assure une large
couverture de l’environnement et donc une grande éventuelle de localiser plus de victimes, et de l’autre
côté, sur le retour rapide et non couteux au dépôt. Les systèmes biologiques forment de meilleures
inspirations dans de telles conditions. L’exploration est ainsi assurée par la marche aléatoire Lévy (Lévy
walk) et l’algorithme Dragonfly. Tandis que, le retour est assuré par des spots lumineux qui guident le
robot jusqu’au dépôt. Le robot va suivre la lumière jusqu’au dépôt et n’as pas besoin de mémoriser sa
position.
L’algorithme a été implémenté sous la plateforme de robotique mobile ARGoS. Plusieurs simulations ont
été réalisé sous la même plateforme et une analyse des résultats montre l’efficacité de notre proposition
par rapport à la marche aléatoire.
Mots clés : intelligence en essaim, robotique en essaim, exploration Multi-Robots, recherche et sauvetage
Multi-Robots, Algorithme Levy Walk (LW), algorithme Dragonfly.
iii
Sommaire
Sommaire
Résumé ................................................................................................................................................ iii
Sommaire ............................................................................................................................................ iv
Liste des figures................................................................................................................................... vi
Liste des équations ............................................................................................................................ viii
Introduction générale .......................................................................................................................... 1
Chapitre 1 : Intelligence et robotique en essaim ................................................................................. 3
I Introduction .................................................................................................................................. 3
II Intelligence en essaim ................................................................................................................... 3
II.1 Introduction à l'intelligence en essaim .................................................................................. 3
II.2 Interactions et transferts d'information dans les systèmes d'intelligence en essaim ........... 6
II.3 Fonctions assurées par les systèmes d'intelligence en essaim ............................................... 6
II.4 Applications de l'intelligence en essaim ................................................................................ 7
II.5 Principaux algorithmes issus de l'intelligence des essaims ................................................... 8
III Robotique en essaim ................................................................................................................ 11
III.1 Définitions ............................................................................................................................ 12
III.2 Caractéristiques ................................................................................................................... 13
III.3 Applications ......................................................................................................................... 13
III.4 Avantage de la robotique en essaim .................................................................................... 15
III.5 Plateformes de simulation de robotique en essaim ............................................................. 16
IV Conclusion ............................................................................................................................... 17
Chapitre 2 : Recherche et Sauvetage Multi-Robots – Synthèse des travaux ................................... 18
I Introduction ................................................................................................................................ 18
II Recherche et sauvetage Multi-Robots ........................................................................................ 18
II.1 Définition .............................................................................................................................. 18
III Recherche et sauvetage Multi-Robots – Synthèse des travaux .............................................. 19
IV Conclusion ............................................................................................................................... 29
Chapitre 3 : Conception..................................................................................................................... 30
I Introduction ................................................................................................................................ 30
II Problématique, objectifs et proposition ..................................................................................... 30
III Algorithmes reliés .................................................................................................................... 31
IV.1. DragonFly Algorithme ......................................................................................................... 31
IV.2. Levy-walk :........................................................................................................................... 33
iv
Sommaire
v
Liste des figures
Chapitre 2 :
Figure 2.1 : Paramètres principaux de l'algorithme libellule ............................................................... 19
Figure 2.2 : environnement de simulation dans la phase finale ........................................................... 20
Figure 2.3 : L'arène réelle et la carte de chaleur correspondante ......................................................... 23
Chapitre 3 :
Figure 3.1: machine d’état de l’algorithme DAL ................................................................................. 34
Chapitre 4 :
Figure 4.1 : l'architecture du simulateur ARGoS ................................................................................. 37
Figure 4.2 : Capture de DAL sous ARGoS .......................................................................................... 38
Figure 4.3 : le premier scenario : variation du nombre de robots.......................................................... 41
Figure 4.4 : Une exécution sous ARGoS de DAL avec 120 robots .................................................... 41
Figure 4.5 : le deuxième scenario : variation de la taille de l’environnement ....................................... 42
Figure 4.6 : Une exécution sous ARGoS de DAL avec taille de 160 x 160 ......................................... 42
Figure 4.7 : le troisième scenario : variation du nombre de Victimes ................................................... 43
Figure 4.8 : Une exécution sous ARGoS de DAL avec 1000 victime.................................................. 43
Figure 4.9 : le quatrième scenario : la distribution des nombre de victimes sauver ............................... 44
Figure 4.10 : Une exécution sous ARGoS de DAL avec diffèrent distribution des victime ................. 45
Figure 4.11 : le cinquième scenario : variation du nombre de victimes sauver ..................................... 45
Figure 4.12 : Une exécution sous ARGoS de DAL changer le nombre de victime possible à sauver .... 46
vi
Liste des tableaux
Chapitre 2 :
Tableau 2.1 : Comparaison qualitative des travaux reliés. ................................................................... 28
Chapitre 4 :
Tableau 4.1 : Scenarios de simulations réalisés .................................................................................. 40
Tableau 4.2 : le premier scenario : variation du nombre de robots ...................................................... 40
Tableau 4.3 : le deuxième scenario : variation de la taille de l’environnement ..................................... 42
Tableau 4.4 : le troisième scenario : variation du nombre de Victimes ................................................ 43
Tableau 4.5 : le quatrième scenario : la distribution des victimes ........................................................ 44
Tableau 4.6 : le cinquième scenario : variation du nombre de victimes sauver..................................... 45
vii
Liste des équations
Chapitre 3 :
Equation (3.01) l’équation de séparation de dragonfly ........................................................................ 32
Equation (3.02) l’équation de alignement de dragonfly ....................................................................... 32
Equation (3.03) l’équation de cohésion de dragonfly........................................................................... 32
Equation (3.04) l’équation de attraction de dragonfly ......................................................................... 32
Equation (3.05) l’équation de distraction de dragonfly ........................................................................ 33
Equation (3.06) l’équation de prochain pas de dragonfly ..................................................................... 33
Equation (3.07) l’équation de prochain position de dragonfly ............................................................. 33
Equation (3.08) l’équation de densité de probabilité ........................................................................ 33
Equation (3.09) l’équation de Probabilité de distribution de longeur l ............................................. 33
Equation (3.10) l’équation de diffusion de génération de longueur l .................................................... 33
Equation (3.11) l’équation de prochain position .................................................................................. 33
Equation (3.12) l’équation de dragonFly-levy ..................................................................................... 33
Equation (3.13) l’équation de Segma .................................................................................................. 34
Equation (3.14) l’équation de Gamma................................................................................................ 34
viii
Introduction générale
Introduction générale
La robotique en essaim c’est une branche de la robotique mobile qui prend ses inspirations de l’intelligence
en essaim. Elle forme un cadre applicatif de l’intelligence en essaim. Elle permet de coordonner l’activité
de plusieurs robots afin qu’ils accomplissent collectivement une tâche. Plusieurs applications de la
robotique en essaim existent : le mouvement coordonné, le nettoyage, le foraging, la recherche et le
sauvetage…etc.
Le problème de recherche et de sauvetage constitue une instance du problème de foraging dans le monde
réel. Elle consiste à naviguer dans l’espace selon une stratégie de déploiement dans le but de chercher et
transporter des victimes a certaines localisations. C’est une tâche qui se compose de deux comportements
de base : l’exploration et le retour au dépôt. Ces deux comportements constituent des défis dans la
littérature et plusieurs travaux veille à leur résolution. Une exploration est plus efficace s’il y a eu une
détection d’un grand nombre de victimes dans des temps réduits. La dispersion des robots sur des zones
distinctes peut assurer une exploration efficace où la recherche sera plus rapide, le nombre de victimes
collectés sera plus élevé et les collisions seront évitées. Aussi, réduire le temps de retour va réduire le
temps total de recherche et sauvetage.
1
Introduction générale
Nous proposons dans ce mémoire une contribution pour résoudre efficacement le problème de recherche
et sauvetage en utilisant un essaim de robots. Nous utilisons : (1) dans la phase d’exploration la marche
aléatoire Dragonfly Lévy connue par sa force à disperser les robots dans la totalité de l’environnement ;
(2) dans la phase de retour au dépôt, des spots lumineux qui guident les robots vers le dépôt sans besoin
d’avoir une mémoire pour sauvegarder des informations complémentaires (comme la position du dépôt...).
La proposition a été implémenté sous la plateforme ARGoS et les simulations montrent de bons résultats
en comparaison avec la marche aléatoire simple.
2
Chapitre 1 : Intelligence et robotique en essaim
I Introduction
L'intelligence en essaim est un sous-domaine de l'informatique naturelle et s'inspire du comportement
collectif des insectes et autres animaux sociaux pour concevoir des algorithmes de résolution de problèmes
(Li & Clerc, 2019). Elle est caractérisée par une collection structurée d'individus aux capacités
individuelles limitées interagissant et présentant un comportement intelligent collectif capable de résoudre
des problèmes complexes (Cruz et al.,2019). Les recherches sur l'intelligence en essaim sont
principalement axées sur les applications permettant de résoudre des problèmes complexes, la conception
de nouvelles approches et l'amélioration de celles existantes (Bahel et al., 2020).
La robotique en essaim est la nouvelle approche de la coordination de systèmes multi-robots, qui prends
ses inspirations de l’intelligence en essaim.
Nous divisons ce chapitre en deux parties : dans la première, nous présentons quelques définitions de
l'intelligence en essaim, ses propriétés, ses stratégies d'interaction et de transfert d'informations avec ses
fonctions et applications, et enfin quelques algorithmes issus de l’intelligence en essaim. Dans la deuxième
partie, nous présentons la robotique en essaim comme une branche de recherche inspirée de l’'intelligence
en essaim. Nous présentons quelques définissons, ses caractéristiques et ses applications, et enfin nous
montrons les plateformes de simulation de robotique mobile.
II Intelligence en essaim
II.1 Introduction à l'intelligence en essaim
En 1989, Beni et Wang (Beni & Wang, 1993) ont utilisé le terme intelligence d'essaim dans le domaine
des systèmes robotiques cellulaires pour définir une collection de robots autonomes, non synchronisés et
non intelligents coopérant pour atteindre un objectif global, tandis que dans le domaine de l'intelligence
artificielle, elle était définie comme le comportement collectif de systèmes décentralisés et auto-organisés
(naturels ou artificiels). Autrement dit, la robotique en essaim est définie comme un ensemble de
nombreux individus simples qui interagissent avec d'autres individus et l'environnement en utilisant une
gestion décentralisée et auto-organisée pour atteindre leurs objectifs (Cruz et al.,2019). Bonabeau et al.
3
Chapitre 1 : Intelligence et robotique en essaim
Ont étendu leur définition pour inclure toute tentative de concevoir des algorithmes ou des dispositifs
distribués de résolution de problèmes inspirés par le comportement collectif des colonies d'insectes
sociales et d'autres sociétés animales (Bonabeau et al., 1999).
1) Naissance et définitions
L’intelligence en essaim est une branche des techniques modernes d'intelligence artificielle étudiées et
inspirées par les comportements collectifs des insectes sociaux, des animaux et des sociétés humaines (Li
& Clerc, 2019), Et traite de la conception de systèmes multi-agents tels que l'optimisation et la robotique
(Charrier,2009).Puisque l'intelligence est une entité collective et non une entité isolée, l'intelligence en
essaim peut donc être considérée comme un concept plus large d'intelligence car elle met l'accent sur le
fait que l'intelligence doit être modélisée dans un contexte social, en raison de l'interaction les uns avec
les autres (Li & Clerc, 2019).
La Figure 1.1 présente quelques exemples de systèmes qualifiés d’intelligents en essaim.
4
Chapitre 1 : Intelligence et robotique en essaim
Définition 1.1 : ‘L’intelligence en essaim est un domaine hautement bio-inspiré dont l'objectif est de
modéliser au moyen de systèmes multi-agents, les mécanismes d'auto-organisation et d'adaptation
observés dans les organismes vivants. Ces modèles donnent finalement naissance à des algorithmes qui
simulent des phénomènes naturels dans des logiciels (sur un ordinateur) ou du matériel (avec des robots),
ou servent de méta-heuristiques aux problèmes de l'intelligence artificielle’ (Charrier,2009).
Définition 1.2 : ‘D'un point de vue méthodologique, l'intelligence en essaim est un ensemble de solutions
heuristiques inspirées des comportements des essaims d'animaux et capables d'offrir des solutions
empiriques à de nombreux problèmes de calcul difficiles appartenant à plusieurs disciplines’ (Zoghby et
al., 2014).
Définition 1.3 : ‘L'intelligence en essaim fait référence à une sorte de capacité de résolution de problèmes
qui émerge dans les interactions de simples unités de traitement de l'information. Les unités de traitement
de l'information qui composent un essaim peuvent être animées, mécaniques, informatiques ou
mathématiques ; ils peuvent être des insectes, des oiseaux ou des êtres humains ; ils peuvent être réels ou
imaginaires. Leur couplage peut avoir un large éventail de caractéristiques, mais il doit y avoir
interaction entre les unités’ (Li & Clerc, 2019).
Mise à l’échelle : elle résout des problèmes de différentes tailles et le nombre d’individus impliqués
n'affectera pas l'expérience.
Flexibilité : C'est la possibilité pour un essaim de robots de résoudre différentes tâches dans
différents environnements. Ceci s'inscrit dans les conséquences de la redondance des systèmes. Si
5
Chapitre 1 : Intelligence et robotique en essaim
les mêmes robots sont utilisables pour différentes tâches et environnements, ils peuvent alors
s'adapter à ceux-ci.
Transfert indirect d'information : Les interactions indirectes sont la communication entre les
insectes médiés par l'environnement. Certains individus modifient l'environnement et d'autres
perçoivent cette modification, ajustant leurs comportements en conséquence. Cette réaction est un
exemple de stigmatisation. Ce terme signifie la forme de communication indirecte dans laquelle
chacun travaille sur l'environnement et d'autres individus qui découvrent certains changements dans
l'environnement interagissent avec la stimulation. Ce processus conduit à une coordination quasi
complète du travail d'équipe et peut nous donner l'impression que la colonie suit un plan précis (Cruz
et al., 2019), (Garnier, 2008).
6
Chapitre 1 : Intelligence et robotique en essaim
1) Coordination : C’est l’organisation des tâches nécessaires dans l'espace et le temps pour résoudre un
problème (Garnier, 2008). Cette fonction affecte la séquence temporelle et / ou la distribution spatiale
des activités des individus pour atteindre un objectif donné. Par exemple, la coordination du travail
pendant la construction du nid chez certaines espèces de guêpes sociales ou termites. En général, la
coordination de l'activité des individus est la principale conséquence des processus d'auto-organisation
qui sont au cœur des systèmes d'intelligence en essaim (Garnier et al., 2007).
2) Collaboration : La collaboration se produit lorsque des individus accomplissent ensemble une tâche
qui ne peut être accomplie par un seul. Les individus doivent conjuguer leurs efforts pour résoudre
avec succès un problème qui dépasse leurs capacités individuelles (Garnier et al., 2007), c'est-à-dire
la répartition des activités entre individus ou groupes d'individus spécialisés dans la réalisation d'une
de ces activités, qui peut être établie sur la base des différences morphologiques interindividuelles :
des individus ayant des capacités physiques différentes effectueront différentes tâches. Il apparaît que
ce mécanisme basé sur l'expérience des individus est à l'origine de l'organisation du travail chez
plusieurs espèces d'insectes sociaux (Garnier, 2008).
3) Délibération : La délibération fait référence aux mécanismes qui se produisent lorsqu'une colonie fait
face à plusieurs opportunités, qui fera un choix collectif ou une décision collective. Par exemple, la
fourmi des espèces de « Lasius Niger » est en mesure de choisir la plus riche parmi plusieurs sources
de nourriture, et parmi plusieurs chemins menant au chemin le plus court vers la source (Garnier,
2008).
7
Chapitre 1 : Intelligence et robotique en essaim
inefficaces dès que certaines propriétés de la fonction objectif ne sont plus vérifiées (par exemple si la
fonction objective n'est pas convexe) (Charrier, 2009).
Robotique d'essaim : Il s'agit d'un nouveau domaine de recherche concerné par la conception, le
contrôle et la coordination de systèmes multi-robots. La robotique en essaim est définie comme l'étude
de la façon dont un grand nombre d'agents incarnés physiquement relativement simples peuvent être
conçus de telle sorte qu'un comportement collectif souhaité émerge des interactions locales entre les
agents et entre les agents et l'environnement (Li & Clerc, 2019). La robotique est l'une des applications
ciblées par l'intelligence en essaim ; robotique d'essaim offre un champ d'expérimentation et de
validation stimulant pour les algorithmes d'intelligence en essaim (Charrier, 2009).
1) L’optimisation des Colonies de Fourmis (Ant Colony Optimization- ACO) : Marco Dorigo et ses
collègues ont introduit l'optimisation des
colonies de fourmis (ACO) au début des
années 1990, comme une solution méta-
heuristique inspirée de la nature pour
problèmes d'optimisation combinatoire
difficiles (Patnaik et al., 2017). La source
d'inspiration de l'ACO est le comportement
des fourmis réelles, qui utilisent les Figure 1.2 : Un exemple d’exécuter de ACO
phéromones comme moyen de (NADIPALLY, 2019)
communication (Dorigo & Stützle, 2019). Il est basé sur le comportement foraging de fourmis, et
l'objectif est de trouver le chemin optimal entre la source de nourriture et leur nid. Pour utiliser l'ACO,
le problème ciblé doit être transformé en un problème de graphe pondéré et l'objectif sera de rechercher
le meilleur chemin sur le graphe. Les agents des fourmis utilisent un processus stochastique pour
8
Chapitre 1 : Intelligence et robotique en essaim
construire la solution en traversant le graphique, et ce processus est contrôlé par un modèle de
phéromone composé d'un ensemble de paramètres associés à chaque composant du graphique.
2) Optimisation par Essaims Particulaires (Particle swarm optimization- PSO) : L'optimisation des
essaims de particules (PSO) est une
technique de calcul évolutif développée
par Kennedy et Eberhart en 1995 (Li &
Clerc, 2019). C’est une approche
évolutive qui s'inspire du comportement
social projeté par les individus dans un
troupeau d'oiseaux ou un banc de
poissons. Ce comportement social des
particules individuelles est influencé par Figure 1.3 : Principe de fonctionnement du PSO
sa propre expérience passée ainsi que par (ZEMZAMI, ET AL., 2017)
l'expérience passée de son voisinage (Patnaik et al., 2017). L'optimiseur d'essaim de particules se
compose d'un certain nombre de particules, qui orbite autour et recherchent l'espace pour le meilleur
emplacement. Les individus communiquent directement ou indirectement les uns avec les autres les
directions de recherche. PSO est une technique de recherche simple mais puissante, avec peu de
paramètres à régler et facile à mettre en œuvre (Jevtić et al.,2007).
3) Colonies d'Abeilles Artificielles (Artificial Bee Colony- ABC) : L'algorithme est défini comme un
méta-heuristique qui adopte la technique
employée par un essaim intelligent
d'abeilles pour identifier leur source de
nourriture. La nature des abeilles est
étudiée en fonction de leur communication,
de la sélection de l'emplacement du nid, de
l'accouplement, de l'attribution des tâches,
de la reproduction, de la danse, du
placement des phéromones et du
mouvement pour modifier ensuite Figure 1.4 : Les types d’abeille dans un ABC et leur
l'algorithme en fonction des exigences du fonctionnement (KAUR & SHARMA, 2017)
9
Chapitre 1 : Intelligence et robotique en essaim
problème. L'algorithme de la colonie d'abeilles artificielles effectue une optimisation en recherchant
de manière itérative la solution là mieux adaptée parmi un grand nombre de données tout en essayant
de résoudre des problèmes critiques (Patnaik et al., 2017).
4) Algorithme des Lucioles (Firefly Algorithm- FA) : L'algorithme Firefly (FA) a été développé pour
la première fois par Xin-She Yang fin 2007 et
2008 à l'université de Cambridge sur la base du
comportement de clignotement des lucioles
(Yang, 2014). FA suppose qu'une solution d'un
problème d'optimisation est codée comme
l'emplacement de l'agent / luciole, tandis que
la fonction objectif est codée comme l'intensité
lumineuse. Dans FA, il y a deux problèmes
importants qui font le succès de l’algorithme : Figure 1.5 : Explication for FA (Ali et al.,2019)
(1) les variations dans l'intensité lumineuse, et (2) la bonne formulation de l'attractivité, qui est
déterminée par la fonction de luminosité, qui à son tour est associée à la fonction objective (Srivatsava
et al., 2013).
10
Chapitre 1 : Intelligence et robotique en essaim
(exploitation). Les étapes importantes du
comportement d'essaimage des libellules sont
décrites ci-dessous (Abedi & Gharehchopogh,
2020).
Séparation (S) dans cette étape, les
essaims sont séparés des autres individus,
ce qui évite les conflits avec les voisins.
Alignement (A), la vitesse de chaque
individu est adaptée aux autres.
Figure 1.7 : Principe de fonctionnement de DA
La cohésion (C) concerne l'attraction de
(Suresh et al., 2019)
l'essaim vers le centre de l'équipe d'essaims.
L'attraction vers l'origine de la nourriture est mathématiquement montrée par (F).
Distraction de l'ennemi (E).
Les robots en essaim sont une méthode relativement nouvelle pour les systèmes Multi-Robots, inspirés
par le comportement des animaux sociaux tels que les fourmis, les oiseaux, les poissons, etc., un groupe
peut effectuer une tâche complexe. En simulant le comportement collectif d'animaux sociaux, les robots
en essaim peuvent mettre en œuvre des scénarios complexes à l'aide de robots simples (Huang et al.,
2019).
11
Chapitre 1 : Intelligence et robotique en essaim
III.1 Définitions
Définition 1.4 : ‘La robotique en essaim est l'étude de la façon de créer des groupes de robots qui
fonctionnent sans dépendre d'une infrastructure externe ou de toute forme de contrôle centralisé. Dans
un essaim de robots, le comportement collectif des robots résulte de l'interaction locale entre les robots
et l'environnement dans lequel ils interagissent’ (Dorigo & Gambardella, 1997).
Définition 1.5 : ‘La robotique en essaim est définie avec les principes qu'un système d'essaim doit avoir
un grand nombre de robots, les tâches doivent être résolues et améliorées en utilisant un système d'essaim
et que les robots échangent des informations locales par des distances de communication limitées’
(Huang et al., 2019).
12
Chapitre 1 : Intelligence et robotique en essaim
Définition 1.6 : ‘La robotique en essaim est l'étude de la façon dont un grand nombre d'agents incarnés
physiquement relativement simples peuvent être conçus de telle sorte qu'un comportement collectif
souhaité émerge des interactions locales entre les agents et entre les agents et l'environnement’ (Sahin,
2004).
III.2 Caractéristiques
La robotique en essaim doit être caractérisée avec ces principales caractéristiques observées dans la
nature (Li & Clerc, 2019), (Zoghby et al., 2014), (Yogeswaran & Ponnambalam, 2010) :
Parallélisme : les robots peuvent accomplir une tâche donnée plus rapidement qu'un seul robot en
divisant la tâche en sous-tâches et en les exécutant simultanément.
Robustesse : le système est toujours en mesure de fonctionner malgré les perturbations de
l'environnement ou le dysfonctionnement de certains individus.
Évolutivité : l'essaim est capable d'opérer sous différentes tailles de groupe et avec un grand nombre
d'individus.
Hétérogénéité : Puisqu'un groupe de robots peut être hétérogène, il peut utiliser des robots spécialistes
dont les propriétés physiques leur permettent d'effectuer efficacement certaines tâches bien définies.
La flexibilité : les individus de l'essaim peuvent coordonner leurs comportements pour accomplir
diverses tâches.
Tâches complexes : Les tâches peuvent être intrinsèquement trop complexes (ou impossibles) pour
un seul robot à accomplir ou à exécuter, alors qu'un essaim est capable.
Alternative pas chère : Construire et utiliser plusieurs robots simples peut être plus facile, moins
cher, plus flexible et plus tolérant aux pannes que d'avoir un seul robot puissant pour chaque tâche
distincte.
III.3 Applications
1) Agrégation : L'agrégation est utilisée pour placer
les robots dans un essaim suffisamment rapproché
et peut être utilisée comme point de départ pour
effectuer des tâches supplémentaires complexes,
telles que le transport collectif où les objets
Figure 1.9 : un exemple de agrégation
(CAMPO & DORIGO, 2020).
13
Chapitre 1 : Intelligence et robotique en essaim
d'intérêt doivent être transportés par plusieurs robot (Liekna
et al., 2014).
2) Exploration : L'objectif d'un processus d'exploration est de
couvrir l'ensemble de l'environnement dans un délai
raisonnable ; il s'agit de découvrir des zones auxquelles les
humains ne peuvent pas accéder facilement.
Figure 1.10 : une simulation de
exploration (FALCONI, 2009).
3) Déplacements coordonnés : Les robots adoptent ici une
direction de mouvement commune au sein d'un groupe où ils
doivent estimer à plusieurs reprises la direction de mouvement
des autres membres du groupe afin qu'elle reste constante. La
tâche des mouvements coordonnés représente le mouvement
tout en préservant l'entraînement et est aussi appelée flocage
(flocking). Ceci est utile dans les applications impliquant des
groupes de mouvements de robots car la préservation de la Figure 1.11 : une simulation de
flockage (DUCATELLE, ET AL.,
formation permet d'éviter les collisions entre robots et sert de 2014)
mécanisme de navigation (Liekna et al., 2014).
14
Chapitre 1 : Intelligence et robotique en essaim
6) Recherche et sauvetage : Des essaims de robots envoyés dans des endroits où l'aide n'a pas pu être
obtenue, alors ils recherchent et sauvent des vies. La
recherche et sauvetage (SAR) est l'un des principaux
problèmes de gestion des catastrophes ; car il s’agit
d’une tâche difficile, limitée dans le temps et qui
nécessite à la fois l’exploration de l’arène et la
détermination de l’emplacement exact des victimes
sans compromettre la sécurité des sauveteurs (Din et
al., 2018). Figure 1.14 : une simulation de sauvetage.
Il existe bien d’autres applications de la robotique en essaim, citons par exemple (Bahel et al., 2020),
(Mahendra & Pandey, 2016) :
Sciences spatiales : La NASA utilisait auparavant la robotique d'essaim pour alimenter les missions
d'exploration de l'espace (Mahendra & Pandey, 2016).
Médicament : Les experts prévoient d'avoir des micro-robots avancés qui pénètrent profondément
dans le corps et tuent toutes les cellules nocives à leur entrée.
Pollinisation autonome d'un champ de cultures (Mahendra & Pandey, 2016).
Surveillance et défense militaire : Les experts militaires estiment que les véhicules aéronautiques
bioniques inspirés de la technologie de renseignement sur les essaims deviendront applicables dans
quelques années. Il peut être prévu que des abeilles ou des cafards avec du matériel de reconnaissance
et des bombes apparaîtront dans une guerre future (Tan, 2013).
Cartographie météorologique et climatique haute résolution.
Surveillance du trafic.
Nettoyage et détection des déversements d'hydrocarbures : Le « Senseable City Lab » du MIT a
développé une flotte de robots à faible coût absorbant le pétrole appelés Seaswarm pour l'écrémage
des océans et l'élimination du pétrole. Un robot nanomatériau peut absorber du pétrole jusqu'à 20 fois
son poids. Le système fournit une solution autonome pour la protection de l'environnement océanique
(Tan, 2013).
15
Chapitre 1 : Intelligence et robotique en essaim
16
Chapitre 1 : Intelligence et robotique en essaim
3) Webots : Webots est un progiciel de simulation de
robot mobile professionnel. L'utilisateur peut
ajouter des objets passifs simples ou des objets
actifs appelés robots mobiles. Ces robots peuvent
avoir différents schémas de locomotion (robots à
roues, robots à pattes ou robots volants).
L'utilisateur peut programmer chaque robot
individuellement pour présenter le comportement Figure 1.17 : le simulateur Webots [12]
souhaité. Webots contient un grand nombre de modèles de robots et d'exemples de programme de
contrôleur pour aider les Utilisateurs à démarrer [13].
IV Conclusion
Ce chapitre a été divisé en deux parties. Dans la première, nous avons présenté quelques définitions du
domaine de l'intelligence en essaim. Dans la deuxième partie, nous avons défini le domaine de la robotique
en essaim ainsi que certains comportements de base qui en découlent. Nous avons terminé cette partie
avec quelques-unes des plateformes de simulation pour la robotique en essaim.
17
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
I Introduction
Il y a beaucoup de catastrophes dans notre vie telles que : tremblements de terre, ouragans, tsunami et
attaques terroristes. Ces catastrophes entrainent les blessures, les handicaps...etc. L'évaluation correcte de
la situation joue un rôle clé lors de ces opérations. Cependant, réussir dans un problème aussi difficile et
dangereux nécessite des informations fiables, une bonne organisation et une utilisation efficace des
ressources. Les robots peuvent aider en remplaçant les humains dans de telles situations, ce qui minimise
les risques pour le personnel de recherche et de sauvetage, tout en augmentant les taux de survie des
victimes, en déployant des équipes de robots collaboratifs, en réduisant les besoins personnels et en
accédant à des zones autrement inaccessibles sont les avantages des robots de sauvetage.
Dans ce chapitre, on se concentre sur l’application de recherche et le sauvetage, nous commençons par
une petite définition de cette application. Puis nous synthétisons les travaux reliés et nous terminerons par
une comparaison des travaux à travers des critères que nous avons proposé et jugé importants.
Dans la robotique mobile, l'exploration et la localisation sont toujours des défis, mis à part l'exigence de
le faire avec une contrainte de temps, même si cela présente de nombreux avantages par rapport aux robots
complexes basés sur des modèles dans des applications telles que la recherche et le sauvetage, l'exploration
et la couverture spatiales, la surveillance, le transport et le déminage.
18
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
1) Cooperative Search and Rescue with Swarm of Robots Using Binary Dragonfly Algorithm
(Abuomar & Al-Aubidy, 2018)
Abuomar et Al-Aubidy proposent dans (Abuomar & Al-Aubidy, 2018), un algorithme de recherche et de
sauvetage avec un essaim de robots. L’algorithme fait une amélioration de l’algorithme d’optimisation de
libellule binaire (Optimization binary dragonfly) en concentrant sur deux comportements : l'évitement
d'obstacles et de contraintes de communication.
Les cinq comportements de base de BDA sont : séparation qui concerne l’évitement d’obstacles et tout
autre individu ; Alignement qui concerne la correspondance de vitesse des individus ; Cohésion qui
concerne le rapprochement vers un centre d’une zone ; Attraction qui concerne l’attraction a une zone
d’intérêt (moniteur) ; et Distraction qui concerne le comportement de fuir de toute contrainte qui influence
négativement le suivi des individus.
L'algorithme mis en œuvre a été testé sous le Toolbox virtual « SIMROBOT » sous Matlab pour valider
la solution proposée où un robot avec algorithme victime peut être ajouté à l'environnement de travail, et
peut être considéré comme la solution optimale. L'environnement (300 𝑥 300 𝑚) mis en œuvre a des
obstacles statiques et dynamiques et distribuées aléatoirement. Le nombre initial de robots est de 5 robots
et le nombre maximal de robots est de 15 robots. L’algorithme RBDA a été testé sur des fonctions de
Benchmark (Sphere, Rosenbrock, De Jong’s, Griewank, Rastrigin, Ackley) et comparé avec l’algorithme
19
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
BDA. Les résultats montrent que RBDA minimise l’erreur pour converger à la solution optimale. Les
résultats simulés ont montré que l'algorithme RBDA a une meilleure précision de convergence pour
atteindre la solution optimale en un temps plus court, et que l’augmentation du nombre de robots
diminuera le nombre de tours, ce qui réduira le temps nécessaire pour atteindre la solution optimale.
2) Search and Rescue Operations Using Robotic Darwinian Particle Swarm Optimization (Kumar
et al., 2017)
Kumar et al. (Kumar et al., 2017) Ont implémenté le Robotic Darwinian Particle Swarm Optimization
(RDPSO) c'est un algorithme d'exploration qui surmonte la limitation de convergence sur plusieurs cibles,
c'est considéré comme une extension de PSO. Il permet la création dynamique de groupes au sein de
l'essaim, ou d'autres essaims, en utilisant un mécanisme de récompense et de punition. Par conséquent,
RDPSO permet une diminution de la quantité d'informations requises à partager entre les robots.
Tous les robots qui utilisent l'algorithme RDPSO exploreront initialement (solitairement ou en petits
groupes) dans des directions aléatoires jusqu'à ce qu'ils reçoivent un signal, par exemple le son de la voix
humaine ou l'intensité des incendies. Une fois un signal reçu est connu, le robot compare l'intensité du
signal avec tous ses partenaires pour voir quel robot a détecté l'intensité maximale du signal. Par exemple,
le robot le plus proche de la victime recevra la valeur maximale d'intensité. Ce robot est traité comme le
robot le plus performant de l'essaim et sera récompensé en lui donnant un robot partenaire. D'autres robots
socialement exclus marchent dans des directions aléatoires jusqu'à ce que toute la zone soit couverte. De
cette façon, des opérations de recherche et de sauvetage sont effectuées.
Figure 2.2 : environnement de simulation dans la phase finale (Kumar et al., 2017)
20
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
Les auteurs ont simulé des missions de recherche et de sauvetage dans la vie réelle avec plusieurs cibles
statiques et des robots d'essaim. Les victimes étaient supposées être statiques dans tous les essais. Ces
robots n'ont aucune connaissance préalable de la localisation des victimes ou des incendies dans
l'environnement et n'ont que la connaissance de leurs positions initiales, vitesses initiales et environnement
à explorer. Deux algorithmes d'exploration ont été utilisés pour effectuer des opérations SaR et ont évalué
leurs performances dans des opérations SaR avec plusieurs cibles. La simulation est présentée à l'aide de
Robot Operating System (ROS) et Gazebo, avec une visualisation dans Rviz utilisant des cartes d'intensité
qui imitent des scénarios du monde réel. Le résultat expérimental a montré que RDPSO a de meilleures
performances par rapport à RPSO pour les opérations SaR à cibles multiples.
3) Behavior-based swarm robotic search and rescue using fuzzy controller (Din et al., 2018)
Din et al. (Din et al., 2018) Ont concentré sur le problème de la recherche et du sauvetage collectifs dans
un site post-catastrophe en utilisant un modèle basé sur le comportement d'essaim de robots relativement
petits avec des capacités de communication et de calcul limitées. Ce mécanisme d'exploration et de
couverture basé sur le comportement est étendu vers une architecture basée sur l'essaim et l'application de
la logique floue, où un leader virtuel conduira l'essaim vers une zone inexplorée, il est sélectionné
dynamiquement.
Les performances d'un essaim dépendent en grande partie des règles de contrôle locales des robots
individuels. Chaque robot de l'essaim a un système de contrôle embarqué, un module de communication
sans fil, un système de capteur (laser et ultrasons) et un contrôleur de mouvement. Les robots doivent être
dynamiques, adaptatifs et flexibles. Un mécanisme autonome de recherche d'objectifs dynamiques,
utilisant une approche basée sur le comportement, est conçu pour rechercher des cibles (victimes) sous la
direction d'un leader virtuel dynamique bio-inspiré, et la logique floue a été utilisé pour concevoir des
modules comportementaux constituants à savoir éviter le comportement passé, évitement d'obstacles,
alignement et cohésion inter-robots. Dans ce qui suit, une description des sous-comportements d'essaim
est présentée :
Contrôle de cohésion-séparation : Les champs de potentiel d'attraction et de répulsion dépendent de
la distance entre les robots. Le champ potentiel d'attraction est plus fort à de plus grandes distances,
tandis que la répulsion domine lorsque les robots sont plus proches. Il existe une distance d à laquelle
ces deux champs potentiels sont égaux.
21
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
L'ensemble flou linguistique pour le GD contient des valeurs très grandes, grandes, moyennes, petites et
très petites ({VL, L, M, S, VS}). L’ensemble flou linguistique de l'OE est représenté par positif grand,
positif, positif petit, proche de zéro, négatif petit, négatif, grand négatif ({PL, P, PS, NZ, NS, N, NL}), la
fonction d'appartenance de sortie des variables linguistiques ont sept valeurs linguistiques de grande
dispersion, dispersion, petite dispersion, pas de changement, petite attraction, attraction et grande
attraction représentées par un ensemble logique {LD, D, SD, NC, SA, A, LA}. Ce comportement devrait
définir le cap du leader virtuel vers le nouvel objectif.
Mécanisme d'évitement d'obstacles (OA) : chaque robot de l'essaim possède un capteur de distance
laser pour détecter la distance de l'obstacle.
Comportement de mise à l'échelle de l'essaim : ce comportement dépend de la localisation de l'espace
libre, évite le passé et évite les comportements d'obstacle.
La simulation est faite à l'aide du simulateur ARGoS. Un essaim de robots homogènes est déployé dans
l'un des coins qui explore la région urbaine désastreuse pour rechercher les victimes. Cet environnement
22
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
qui contient divers obstacles et débris, est réparti en neuf grilles de tailles égales, et un nombre égal de
victimes sont réparties au hasard dans chaque grille en utilisant une technique d'échantillonnage stratifié,
et la détection des victimes dépend du niveau de gravité. On suppose que les victimes sont statiques, car
elles les considèrent comme piégées. Les robots se déplacent en troupeau en utilisant un mécanisme de
sélection de leader dynamique pour diriger l'essaim vers des régions inexplorées, en évitant les visites
répétées dans l'environnement. Les paramètres utilisés : La taille de l'espace de recherche est 100 × 100
unités, nombre de robots : 12, temps d'échantillonnage 100 ms, portée d'interaction maximale 3 unités,
temps de simulation 25 min, Rayon dans lequel la victime peut être détectée 3 unités. Pour faciliter
l'évaluation, quinze répétitions de chaque expérience ont été effectuées pour chaque condition pendant 25
min chacune, comprenant 370 essais expérimentaux (même en cas d'échec du leader). Il a été observé que
le modèle proposé était plus résilient et qu'il fonctionnait mieux par rapport à plusieurs robots.
23
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
L'environnement de test : une arène rectangulaire en bois de 8 x 4 pouces a été fabriquée pour servir
d'environnement de test pour les robots. Dans cette arène, deux lampes chauffantes de 200 watts ont
été utilisées pour créer des points chauds maximaux locaux et mondiaux. L'arène ainsi que les deux
lampes sont représentées dans la Figure 2.22.
Les robots : Les trois robots utilisés pour effectuer la recherche sont des « Propeller Activity Bot
robots de Parallax, Inc ». Les robots incluent des platines montées permettant l'ajout de circuits
auxiliaires tels que les circuits de détection de température ainsi que des modules de communication
et des capteurs de proximité ultrasonore.
Communication inter-robots : L'une des caractéristiques importantes de l'algorithme PSO est qu'il
s'agit d'une méthode de contrôle décentralisée. En d'autres termes, les robots n'ont pas besoin de
communiquer avec une station de base et ils ne se rapportent ni ne reçoivent d'instructions d'un
centre de commande central. Néanmoins, le contrôle décentralisé ne signifie pas que les robots n'ont
pas besoin de communiquer entre eux. Chaque robot est censé recevoir des signaux pour savoir à
tout moment quelle est la meilleure solution globale et où. De même, un robot qui trouve une
meilleure solution est censé transmettre les informations sur les nouvelles meilleures solutions
mondiales aux autres robots.
Détection de température : le capteur de température utilisé est Micro chip MCP9700A. Le
potentiomètre sur le circuit de conditionnement du signal permet à l'utilisateur d'ajuster la plage du
signal pour différentes températures ambiantes. Il permet également à l'utilisateur d'étalonner les
différents robots pour permettre des lectures cohérentes sur les trois robots.
La mise en œuvre de l'algorithme a présenté des défis multiples qui ne seraient pas observés dans une
implémentation informatique. Ces défis sont : les capacités de calcul des robots, navigation hors limites,
collision, détection de la cohérence (sensing consistency). Les résultats expérimentaux montrent que
l'algorithme modifié a toujours été en mesure de trouver le point maximum global en pas plus de 80
secondes, il a également montré que le changement de la taille d'incrément des robots n'avait pas d'effet
significatif sur l'efficacité de l'essaim ou sa convergence.
5) Using auction-based task allocation scheme for simulation optimization of search and rescue in
disaster relief (Tang, et al., 2018)
Tang & al. (Tang, et al., 2018) Ont proposé d'optimiser la recherche et le sauvetage grâce à une simulation
basée agents qui utilise la marche aléatoire Lévy.
24
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
Les auteurs simulent le cas catastrophe avec le cas du sauvetage par glissement de terrain. Ils construisent
un environnement post-catastrophe basé sur une modélisation Multi-Agents. Les probabilités de survie
des victimes prises au piège dans les décombres devraient se détériorer avec le temps. Lié à la recherche
de victimes, l'environnement est une zone entièrement recouverte de gravats, de roches, de débris, etc. Il
est difficile d'obtenir des informations critiques sur l'environnement (telles que l'emplacement des
victimes). Ils adoptent les « Truncated Lévy walks » pour simuler les comportements de recherche des
équipes de secours.
Les agents actifs peuvent réagir à l'environnement et agir sur lui. Les tâches sont réparties de manière
aléatoire dans une zone et diffèrent par certaines propriétés, telles que la priorité des tâches, les charges
de travail requises pour les terminer. Deux types d'agents actifs sont inclus, à savoir les victimes et les
équipes de secours. Les paramètres essentiels des victimes comprennent la profondeur enfouie, les
coordonnées et la gravité des blessures :
La profondeur enfouie indique la quantité de gravats sur les victimes piégées. On suppose que les
victimes dans le même site enterré sont égales en profondeur enterrée contre les gravats.
Les coordonnées indiquent l'emplacement des victimes.
Gravité des blessures, trois scénarios sont supposés (« Fatal », « Serious » et « Normal »), et ils
seront combinés avec la gravité des blessures.
Tandis que les paramètres essentiels des équipes de sauvetage comprennent le rayon de recherche
(l'étendue maximale de recherche de survivants), l'angle de braquage maximal (la plage d'angle de
braquage à chaque étape), la vitesse de sauvetage (la vitesse de déplacement des décombres par une équipe
de sauvetage), l'étendue de la coopération (la coopération se produit uniquement entre les équipes de
secours dans cette zone spécifiée et qu'elle est limitée par la portée de communication), la longueur du
mouvement, l'angle de braquage(sont tirés de distributions de probabilités particulières. Les étapes sont
terminées lorsqu'une longueur de déplacement ou une limite est atteinte, ou lorsqu'un site enterré est
détecté. À la fin d'une étape, les équipes de secours se déplacent vers le site enfoui ou sélectionnent l'étape
suivante pour continuer la recherche).
L'algorithme d'attribution des tâches basé sur les enchères a été utilisé pour répartir la tâche de sauvetage
entre les équipes de sauvetage dans le cadre de la coopération. Il existe deux types d'éditeur de tâche et de
répondeur de tâche, correspondant respectivement aux commissaires-priseurs (Auctioneers) ; Les équipes
de secours qui ont détecté un site enterré dans le rayon de recherche et aux enchérisseurs (Bidders) ; Les
25
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
équipes de secours qui ont reçu des messages d'enchères jouent le rôle de soumissionnaires. Les
soumissionnaires ne soumissionneraient que pour une seule tâche à chaque fois. Lors de la réception de
plusieurs messages d'enchères, les soumissionnaires sont censés choisir la tâche qui pourrait générer
l'utilité la plus nette pour soumissionner. Le but de l'algorithme basé sur les enchères est la maximisation
des performances globales.
Les auteurs ont comparé le plan de sauvetage, proposé au plan de sauvetage non coopératif (dans le plan
de sauvetage non coopératif, les équipes de sauvetage ne sauvent que les victimes qui sont détectées par
elles-mêmes), puis le comparons avec le plan de sauvetage basé sur F-Max-Sum (il s'agit d'un algorithme
décentralisé, qui est développé sur la base de Max-Sum). La simulation est implémentée dans NetLogo et
R. Les paramètres de cette simulation ont les caractéristiques de nombreux cas du monde réel. La zone
affectée est caractérisée comme une zone circulaire de rayon 100 m. En supposant qu'il y a 100 victimes,
20 équipes de secours dans ce domaine. Les victimes se trouvent dans des sites enterrés répartis au hasard.
L'unité des étapes de simulation est la minute. Un cycle de simulation se poursuivrait jusqu'à ce que tous
les survivants soient secourus, et le délai d'un cycle de simulation est fixé à 72 h. les simulations ont été
répété 200 fois pour obtenir des résultats de simulation de haute précision.
Les résultats de la simulation indiquent que le plan de sauvetage coopératif pourrait améliorer
considérablement l'efficacité du sauvetage, et il fonctionne un peu mieux que l'approche basée sur F-Max-
Sum en ce qui concerne certains indicateurs. En outre, sa faible complexité le rend plus approprié pour la
coopération entre les équipes de secours que F-Max-Sum. L'analyse de robustesse montre que le rayon de
recherche peut affecter considérablement l'efficacité du sauvetage, tandis que la portée de la coopération
a peu d'effet sur l'efficacité du sauvetage. L'analyse de sensibilité montre que les deux paramètres, le délai
pour terminer les opérations de sauvetage dans un site enterré et l'angle de braquage maximal pour l'étape
suivante, ont tous deux une grande influence sur l'efficacité du sauvetage, et il existe une valeur optimale
pour les deux en vue d’efficacité du sauvetage.
Le Tableau 2.1 montre une comparaison des travaux relies selon certains critères que nous jugeons
importants.
26
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
Axe 1 Axe 2 Axe 3 (Abuomar & Al- (Kumar et (Greenhagen et al., (Din et al., (Tang, et al.,
Aubidy, 2018) al.,2017) 2016) 2018) 2018)
27
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
Non X X
Stratégies communication Directe X X
Indirecte X X X
Inspiration VL
exploration Aléatoire X
Stratégique X X X X
Inspiration BDA RDPSO PSO VL Lévy
recrutement Oui X X
Non X X
Inspiration VL
Simulation Monde réelle Expérimentation X
réel
Plateforme Argos X
Player/ Stage
Webots
Gazebo X
auto développé X X
28
Chapitre 2 : Recherche et sauvetage Multi-Robots – Synthèse des travaux
L'objectif principal de ce travail est de localiser les victimes et de les transporter vers un dépôt central. La
comparaison des travaux dans le tableau ci-dessus montre déjà que les expériences qui ont été faites se
sont concentrées uniquement sur la recherche et négligent le retour au dépôt.
IV Conclusion
Dans ce chapitre, nous avons défini l'application de recherche et sauvetage Multi-Robot. Ensuite, nous
avons présenté et discuté des travaux connexes disponibles dans ce domaine. Nous avons terminé cette
partie par un tableau de comparaison qui nous a permis de faire plusieurs observations importantes pour
proposer une solution adéquate.
29
Chapitre 3 : Conception
Chapitre 3 : Conception
I Introduction
Dans la foraging, les robots sont chargés de chercher, collecter et transporter un ou plusieurs objets vers
un ou plusieurs dépôts. La recherche et le sauvetage est considérée comme étant l'application du foraging
dans la vie réelle, donc une telle application partage les même caractéristiques et définitions que celle de
foraging.
Dans ce travail, nous avons proposé une solution au problème de recherche et la sauvegarde des victimes
et nous avons utilisé un modèle d'interaction robotique basé sur les algorithmes Dragon Fly et Lévy-walk.
Nous commençons ce chapitre par présentation de la problématique. Nous présentons ensuite l'objectif à
atteindre ainsi qu'une présentation détaillée de la solution que nous avons proposée. Ensuite, nous nous
concentrons sur l'algorithme proposé, le comportement de nos robots à travers une machine d’états et les
pseudo codes des différents comportements. Nous terminons le chapitre par une conclusion.
Dans ce travail nous cherchons à proposer des comportements efficaces d’exploration et de retour au dépôt
dans l’objectif à chercher et sauver le maximum possible de victimes dans des temps minimaux.
30
Chapitre 3 : Conception
1. Assurer une large dispersion des robots pour couvrir le maximum possible de zones et de détecter
le maximum possible de victimes ;
2. Guider les robots après une détection de victime pour se rendre rapidement au dépôt ;
3. Eviter les communication directe ou indirecte entre les robots pour assurer une solution non
couteuse ;
Pour répondre aux objectifs fixés précédemment, nous avons jugé intéressant d'utiliser des algorithmes
issus de l'intelligence en essaim. Premièrement, nous avons utilisé le dragon Fly basée sur la marche
aléatoire Levy, dans cette marche les robots utilisent une équation qui calcule la prochaine position, ce
qui permet une dispersion dans la totalité de l’espace de recherche. Deuxièmement, nous avons utilisé des
spots lumineux dans la base et dans l’environnement qui permettent de guider les robots au dépôt. Les
robots commencent par une marche aléatoire, jusqu’à atteindre une lumière, dans ce cas ils suivent la
lumière jusqu’au dépôt.
31
Chapitre 3 : Conception
Figure 3.1 : Primitive corrective patterns between individual in swarm (Palappan & Thangavelu, 2018)
Cinq primitifs de base sont utilisés pour modéliser les comportements des essaims de libellules (où p
représente la position de l'individu courant, pj la position du j ème individu voisin et m le nombre
d'individus voisins ) :
1) Séparation : représente l'évitement de collision statique que les individus suivent pour éviter une
collision avec d'autres individus dans le quartier ;
𝐒𝐢 = − ∑𝒎
𝒋−𝟏 𝒑 − 𝒑𝒋 ………………….…..(𝟏)
32
Chapitre 3 : Conception
Après avoir calculé le vecteur de pas, le vecteur de position (𝑋𝑡 ) est calculé comme suit :
𝑋𝑡+1 = 𝑋𝑡 + 𝛥𝑋𝑡+1 ………………..…..(𝟕)
IV.2. Levy-walk :
La marche de Lévy est une stratégie de recherche aléatoire, la trajectoire du processus de Lévy est
caractérisée par un ensemble de petits pas reliés par un long pas, peut être approximée par la fonction de
densité dans l'équations (Où 𝑈 est un nombre flottant distribué dans un intervalle de [0,1] et 𝑙0 est la
longueur initiale) :
𝑃(𝑥 ) ~ |𝑥[ − 1 − 𝛽 𝑎𝑣𝑒𝑐 ( 0 < 𝛽 ≤ 2 𝑒𝑡 𝑥 ⟶ ∞ ………………..…..(𝟖)
𝛽
P(𝑙 ) = 𝑙 1+𝛽 ………………..…..(𝟗)
𝐿0 (1+ )
𝑙0
1
𝑙 = 𝑙0 ( U1/𝛽 − 1) ………………..…..(𝟏𝟎)
IV Algorithme proposé
Nous présentons dans cette partie, une description de l’algorithme propose, la machine d’état et le pseudo
code.
IV.1. Description
Cherche : nous avons utilisé l'équation DragonFly-Levy (Palappan & Thangavelu, 2018) pour
permettre aux robots de chercher et sauvetage :
𝑋𝑡+1 = 𝑋𝑡 + 𝐿𝑒𝑣𝑦(𝑑) × 𝑋𝑡 ………………..…..(𝟏𝟏)
𝑟1 ×𝜎
𝐿𝑒𝑣𝑦(𝑑 ) = 0.01 × 1 ………………..…..(𝟏𝟐)
|𝑟2 |𝑑
33
Chapitre 3 : Conception
τ(1+β)×sin(𝜋𝛽/2)
𝜎=( )1/𝛽 ………………..…..(𝟏𝟑)
𝜏((1+𝛽)/2)×𝛽×2((𝛽−1)/2)
𝜏(𝑥 ) = (𝑥 − 1)!………………..…..(𝟏𝟒)
Deux cas se présentent :
1. Si le robot détecte une victime et le nombre de victimes = N (où N est prédéfini et représente le
nombre de victime maximum qui peut être transporté par le robot en même temps; il passe à l’état
sauvetage.
2. Si le robot détecte un autre robot, un obstacle ou atteint l’un des dépôts il passe à l’état
Eviter_obstacle.
Sauvetage : le robot cherche les lumières et les suivent. On a deux conditions qui se présentent aussi :
1. Si le robot est dans l’un des dépôts ; il passe à Déposer_Victime Sinon il continu à suivre la
lumière.
2. Si le robot détecte un autre robot ou un obstacle dans l’environnement ; il passe à l’état
Eviter_obstacle.
Déposer_Victime : Si le robot est dans le dépôt ; il dépose tous les victimes et passe directement à l’état
Cherche.
Eviter_obstacle : le robot calcule avec ses 24 capteurs la valeur de proximité pour détecter les obstacles
et les robots dans son voisinage. S’il y a un obstacle proche ou des robots, il tourne dans la direction
opposée, sinon le robot continu l’exécution de son état courant : l’état sauvetage ou l’état de cherche.
34
Chapitre 3 : Conception
35
Chapitre 3 : Conception
II Conclusion
Nous avons proposé dans ce chapitre un algorithme de recherche et de sauvetage (voir du foraging) qui
hybride deux méthodes bio-inspirées : le Lévy walk et le dragonfly. L’idée été d’assurer une large
dispersion des robots avec le Lévy walk, puis de les guider au dépôt pour se rendre rapidement au dépôt
avec les spots lumineux.
Nous avons commencé par présenté la problématique, les objectifs et proposition, puis nous avons
expliqué brièvement les deux algorithmes reliés. Par la suite, nous avons montré notre proposition, sa
machine d’état et les pseudos-codes associés.
36
Chapitre 4 : Implémentation et simulations
I Introduction
Dans ce chapitre, nous testons les performances et la validation de l'algorithme proposé DragonFly Avec
Levy (DAL). Nous l'avons implémenté sous la plateforme robotique ARGoS. Pour tester l'impact des
améliorations apportées, nous avons effectué plusieurs simulations dans différentes configurations
environnementales et pour comparer les résultats avec d'autres algorithmes, nous avons implémenté un
algorithme aléatoire simple.
Nous commençons par présenter la plateforme de simulation ARGoS. Puis nous expliquons les
caractéristiques des robots utilisés. Nous proposons ensuite un ensemble de scénarios de simulation.
Ensuite, nous discutons et comparons les résultats obtenus, et nous terminons par une conclusion.
II Environnement de développement
ARGoS est un simulateur multi-robot open source qui a d'abord été développé dans le cadre du projet
Swarmanoid financé par l'UE pour étudier les outils et les stratégies de contrôle des essaims hétérogènes
de robots. Aujourd'hui, il s'agit d'une plateforme de simulation largement utilisée dans de nombreuses
recherches et projets dédiés aux contrôles de synthèse pour les comportements d'essaimage.
37
Chapitre 4 : Implémentation et simulations
ARGoS est livré avec tous les outils nécessaires au cycle de développement du code de contrôle des robots,
de la conception à la validation sur de vrais robots. Par conséquent, il n'y a aucune différence entre le
codage pour la simulation ou la réalité. ARGoS peut simuler à grande échelle des essaims hétérogènes de
robots en simulation en temps réel. Son architecture est conçue pour être flexible de telle sorte que les
fonctionnalités personnalisées peuvent être facilement modifiées ou ajoutées sous forme de plug-ins ou
de modules.
38
Chapitre 4 : Implémentation et simulations
Une caméra omnidirectionnelle qui peut être utilisée pour percevoir des objets colorés affichés par
d'autres robots (jusqu'à une distance d'environ 50 cm).
Quatre (4) capteurs au sol placés sous le châssis peuvent être utilisés pour percevoir des repères ou
des trous sur le sol.
Vingt-quatre (24) capteurs IR pour la détection d'obstacles et de proximité.
Un dispositif de communication à distance et relèvement, appelé RAB, pour échanger des messages
entre robots dans une portée limitée.
Un connecteur de préhension pour permettre au foot-bot d'effectuer des connexions physiques telles
que la prise d'abjects ou des connexions robot-robot.
39
Chapitre 4 : Implémentation et simulations
1) Scénario 1
Dans ce scénario, Nous étudions l’influence du nombre de robots sur les performances de l’algorithme.
40
Chapitre 4 : Implémentation et simulations
80
Figure 4.4 : Une exécution sous ARGoS de DAL avec 120 robots
Discussion et comparaison
Le Tableau 4.2 et la Figure 4.3 montrent les résultats obtenus avec les algorithmes DAL et Random. Les
résultats montrent que l'augmentation du nombre de robots conduit à une augmentation du pourcentage
de sauvetage avec l’algorithme DAL. Dans Random, il y a eu une augmentation lorsque nous avons utilisé
70 robots et ensuite le graphique s'est dégradé ; tandis qu'en DAL il y avait une augmentation significative
du nombre des victimes sauver par les robots. Cependant, les résultats obtenus en DAL sont meilleurs par
rapport au Random.
41
Chapitre 4 : Implémentation et simulations
2) Scénario 2
Dans ce scénario, Nous étudions l’influence de la taille de l’environnement sur les performances de
l’algorithme.
100
80
60
DAL
40 Random
20
0
80X80 100X100 120X120 160X160
la taille de environnement
Figure 4.6 : Une exécution sous ARGoS de DAL avec taille de 160 x 160
42
Chapitre 4 : Implémentation et simulations
Discussion et comparaison
Le Tableau 4.3 et la Figure 4.5 montrent les résultats obtenus avec les algorithmes DAL et Random en
changent la taille de l'environnement. Les résultats montrent que l'augmentation la taille de
l'environnement conduit à une décrémentation du pourcentage de sauvetage dans les deux algorithmes.
Cependant, les résultats obtenus en DAL sont meilleurs que ceux de Random.
3) Scénario 3
Dans ce scénario, nous étudions l’influence de nombre de victimes sur les performances de l’algorithme.
N° victimes 500 600 800 1000
Algorithmes
DAL 62.4% 58.17% 41.13% 34.8%
Random 24.4% 21.17% 27.58% 17.77%
Tableau 4.4 : le troisième scenario : variation du nombre de Victimes
80
pourcentage de victime sauver
70
60
50
40
DAL
30
Random
20
10
0
500 600 800 1000
Nombre de Victimes
Figure 4.8 : Une exécution sous ARGoS de DAL avec 1000 victime
43
Chapitre 4 : Implémentation et simulations
Discussion et comparaison
Le Tableau 4.4 et la Figure 4.7 montrent les résultats obtenus avec les algorithmes DAL et Random en
changent le nombre de victimes. Les résultats montrent que l'augmentation de nombre de victime conduit
à une décrémentation du pourcentage de sauvetage dans l'algorithme DAL. Avec Random, il y a eu une
décrémentation, mais il y a eu une incrémentation significative quand le nombre de victimes est 800.
Cependant, les résultats obtenus avec DAL sont meilleurs que ceux de Random.
4) Scénario 4
Victimes
Aléatoire Cluster
Algorithmes
DAL 62.4% 17.6%
Random 24.4% 10.67%
Tableau 4.5 : le quatrième scenario : la distribution des victimes
70
60
pourcentage de sauvetage
50
40
30 DAL
Random
20
10
0
ALEORATIRE CLUSTER
Nombre de Victimes
Discussion et comparaison
Le Tableau 4.5 et la Figure 4.9 montrent les résultats obtenus avec les algorithmes DAL et Random en
modifiant la distribution des victimes. Les résultats montrent que lorsque la distribution est aléatoire le
pourcentage de sauvetage est meilleur que lorsque la distribution est en clusters. Cependant, les résultats
obtenus en DAL sont meilleurs que ceux de Random.
44
Chapitre 4 : Implémentation et simulations
Figure 4.10 : Une exécution sous ARGoS de DAL avec diffèrent distribution des victime
5) Scénario 5
Dans ce scénario, Nous étudions l’influence de nombre de victimes qui on peut sauver sur les
performances de l’algorithme (Les résultats obtenus dans les expériences suivantes sont dans un temps
fixe de 20 min).
N° sauver 1 2 4 5
Algorithmes
DAL 62.4% 90.36% 70.44% 85.68%
Random 24.4% 60% 69.87% 58.67%
80
70
60
50
DAL
40
30 Random
20
10
0
1 2 4 5
Nombre de Victimes
Figure 4.12 : Une exécution sous ARGoS de DAL changer le nombre de victime possible à sauver
Discussion et comparaison
Le Tableau 4.6 et la Figure 4.11 montrent les résultats obtenus avec les algorithmes DAL et Random en
modifiant le nombre de victimes à transporter à la fois. Les résultats montrent qu'une augmentation du
nombre de victimes possibles à sauver conduit à une augmentation dans le pourcentage de sauvetage de
l'algorithme DAL. Avec Random, le plus grand nombre possible de victimes à sauver conduit à une
augmentation des résultats mais lorsque nous arrivons à la quantité 5 victimes, il a commencé à diminuer,
tandis que dans l'algorithme DAL les résultats commencent par augmenter puis en 4 ils diminuent et
recommencent à augmenter en 5 victimes. Cependant, les résultats obtenus en DAL sont meilleurs que
ceux de Random.
V Conclusion
Dans ce chapitre, nous avons présenté la plateforme ARGoS utilisée et le robot Footbot, ses
caractéristiques et ses composants, puis nous avons proposé un ensemble de scénarios avec variation de
certains paramètres pour voir s'ils ont une influence sur les performances. Les résultats obtenus ont été
comparé avec la marche aléatoire simple (les résultats peuvent s'améliorer si nous avons plus de temps et
un bon matériel).
Enfin, dans toutes les simulations, DAL montre ses supériorités sur Random. Cela prouve
quantitativement que la stratégie d'exploration proposée est efficace.
46
Conclusion générale et perspectives
Nous avons proposé dans ce travail une solution basée intelligence en essaim qui assure une recherche est
un sauvetage de plusieurs victimes dispersés aléatoirement dans un environnement. Notre contribution se
compose d’: (1) une exploration basée Dragonfly et Lévy walk qui permet une large dispersion des robots
et qui augmente la chance de détecter plus de victimes ; (2) un sauvetage (autrement dit le transport des
victimes au dépôt le plus proche) en utilisant des spots lumineux qui s’étale sur la totalité de l’environnent.
L’algorithme a été implémenté sous la plateforme de robotique mobile ARGoS. Plusieurs simulations ont
été réalisé sous la même plateforme et une analyse des résultats montre l’efficacité de notre proposition
par rapport à la marche aléatoire.
1. Améliorer l’algorithme proposé pour prendre en charge la limitation de l’énergie des robots ;
2. Comparer l’algorithme avec des travaux relies de la littérature.
47
Bibliographie
Bibliographie
Abedi, M., & Gharehchopogh, F. S. (2020). An improved opposition based learning firefly algorithm with
dragonfly algorithm for solving continuous optimization problems. Intelligent Data Analysis,
24(2), 309--338.
Abuomar, L., & Al-Aubidy, K. (2018). Cooperative Search and Rescue with Swarm of Robots Using
Binary Dragonfly Algoritlnn. 2018 15th International Multi-Conference on Systems, Signals &
Devices (SSD) (pp. 653--659). IEEE.
Ali, A., Othman, R., Yacob, Y., & Alkanaani, J. (2019). ParametersTuning of Adaptive Firefly Algorithm
based Strategy for t-way Testing.
Bahel, V., Peshkar, A., & Singh, S. (2020). Swarm Intelligence-Based Systems: A Review. Proceeding
of International Conference on Computational Science and Applications (pp. 149--156).
Singapore: Springer.
Beni, G., & Wang, J. (1993). Swarm Intelligence in Cellular Robotic Systems. Robots and biological
systems: towards a new bionics? (pp. 703--712). Berlin, Heidelberg.: Springer.
Bonabeau, E., Dorigo, M., & Theraulaz, G. (1999). Swarm intelligence: from natural to artificial systems
(Vol. 1). Oxford university press.
Campo, A., & Dorigo, M. (2020). On the Design of Self-Organized Decision Making in Robot Swarms.
Charrier, R. (2009). L'intelligence en essaim sous l'angle des systèmes complexes : étude d'un système
multi-agent réactif à base d'itérations logistiques couplées Autre [cs.OH]. Doctoral dissertation,
Université Nancy 2.
Chen, J., Gauci, M., Li, W., Kolling, A., Groß, R., & others. (2015). Occlusion-based cooperative transport
with a swarm of miniature mobile robots. IEEE Transactions on Robotics, 31(2), 307-321.
Récupéré sur http://playerstage.sourceforge.net/index.php?src=stage
Cruz, D. P., Maia, R. D., & De Castro, L. N. (2019). A critical discussion into the core of swarm
intelligence algorithms. Evolutionary Intelligence, 12(2), 189--200.
Devi, N., Uma, V., Praveena, T., & Jyothi, M. (2013). Emerging and Challenging Applications In Swarm
Robotics. Int J Eng Sci, 318--321.
Din, A., Jabeen, M., Zia, K., Khalid, A., & Saini, D. (2018). Behavior-based swarm robotic search and
rescue using fuzzy controller. Computers & Electrical Engineering, 70, 53-65.
Dorigo, M., & Gambardella, L. (1997). Ant colony system: a cooperative learning approach to the
traveling salesman problem. IEEE Transactions on evolutionary computation, 1(1), 53-66.
Dorigo, M., & Stützle, T. (2019). Ant colony optimization: overview and recent advances. Dans Handbook
of metaheuristics (pp. 311--351). Springer, cham.
Ducatelle, F., Di Caro, G., Förster, A., Bonani, M., Dorigo, M., Magnenat, S., . . . Others. (2014).
Cooperative navigation in robotic swarms. Swarm Intelligence, 8(1), 1-33.
Falconi, R. (2009). Coordinated control of robotic swarms in unknown environments. Doctoral
dissertation, alma.
48
Bibliographie
Garnier, S. (2008). Decisions collectives dans des systemes d'intelligence en essaim. Doctoral dissertation,
Universite de Toulouse, Universite Toulouse III-Paul Sabatier.
Garnier, S., Gautrais, J., & Theraulaz, G. (2007). The biological principles of swarm intelligence. Swarm
intelligence, 1(1), 3--31.
Greenhagen, C., Krentz, T., Wigal, J., & Khorbotly, S. (2016). A real-life robotic application of the particle
swarm optimization algorithm. Dans C. Greenhagen, 2016 Swarm/Human Blended Intelligence
Workshop (SHBI) (pp. 1-5). IEEE.
Huang, X., Arvin, F., West, C., Watson, S., & Lennox, B. (2019). Exploration in Extreme Environments
with Swarm Robotic System. Dans 2019 IEEE International Conference on Mechatronics (ICM)
(Vol. 1, pp. 193--198). IEEE.
Jevtić, A., & Andina de la Fuente, D. (2007). Swarm intelligence and its applications in swarm robotics.
WSEAS International Conference on Computational Intelligence, Man-Machine Systems and
Cybernetics ; 6 CIMMACS ; 6. Tenerife, España.
Kaur, S., & Sharma, S. (2017). Performance Evaluation of Artificial Bee Colony and Compressive
Sensing Based Energy Efficient Protocol for WSNs. 2017 13th International Conference on
Signal-Image Technology & Internet-Based Systems (SITIS), 91-96.
Kornienko, S., & Kornienko, O. (2011). New principles of coordination in large-scale micro-and
molecular-robotic groups. CoRR, abs/1109.3765.
Kumar , A., Manikutty, G., Bhavani, R., & Couceiro, M. (2017). Search and rescue operations using
robotic darwinian particle swarm optimization. Dans 2017 International Conference on Advances
in Computing, Communications and Informatics (ICACCI) (pp. 1839-1843). IEEE.
Larfi, O., & Aisset, A. (2016). Developpement d’un algorithme intelligent pour la commande des robots
mobiles.
Li, X., & Clerc, M. (2019). Swarm intelligence. Dans M. Gendreau, & J. Potvin (Éds.), Handbook of
Metaheuristics (Vol. 272, pp. 353-384). Springer, cham.
Liekna, A., Grundspenkis, J., & others. (2014). Towards practical application of swarm robotics: overview
of swarm tasks. Engineering for rural development, 13, 271--277.
Mahendra, P., & Pandey, R. (2016). Swarm Intelligence. In International Conference on Advanced
Computing. Teerthanker Mahaveer University, College of Computing Sciences and Information
Technology (CCSIT), Moradabad.
Mayeur, B. (2014). Outil automatique de placement de robots pour des expériences de Swarm Robotics.
Mémoire présenté en vue de l’obtention Du diplôme du Master en Sciences Année académique
2013 – 2014, UNIVERSITE LIBRE DE BRUXELLES, UNIVERSITE D’EUROPE, Faculté des
Sciences Département d’Informatique.
Mosavi, M., Khishe, M., & Ghamgosar, A. (2016). Classification of sonar data set using neural network
trained by Gray Wolf Optimization. Neural Network World, 26(4), 393.
Nadipally, M. (2019). Optimization of Methods for Image-Texture Segmentation Using Ant Colony
Optimization. Dans Intelligent Data Analysis for Biomedical Applications (pp. 21-47). Elsevier.
49
Bibliographie
O’Keeffe, J., Tarapore, D., Millard, A., & Timmis, J. (2017). Towards fault diagnosis in robot swarms:
An online behaviour characterisation approach. Dans Annual Conference Towards Autonomous
Robotic Systems (pp. 393-407). Springer.
Palappan, A., & Thangavelu, J. (2018). A New Meta Heuristic Dragonfly Optimizaion Algorithm for
Optimal Reactive Power Dispatch Problem. Gazi University Journal of Science, 4, 1107-1121.
Patnaik, S., Yang, X.-S., & Nakamatsu, K. (2017). Nature-Inspired Computing and Optimization (éd. 1,
Vol. 10). heidelberg: Springer.
Pinciroli, C., Trianni, V., O’Grady, R., Pini , G., Brutschy, A., Brambilla, M., . . . others. (2012). ARGoS:
a modular, parallel, multi-engine simulator for multi-robot systems. Swarm intelligence, 6(4), 271-
295.
Sahin, E. (2004). Swarm robotics: From sources of inspiration to domains of application. Dans E. Sahin,
& W. Spears (Éds.), International workshop on swarm robotics (Vol. 3342, pp. 10-20). Berlin,
Heidelberg: Springer.
Srivatsava, P., Mallikarjun, B., & Yang, X.-S. (2013). Optimal test sequence generation using firefly
algorithm. Swarm and Evolutionary Computation, 8, 44-53.
Suresh, V., Sreejith, S., Sudabattula, S., & Kamboj, V. (2019). Demand response-integrated economic
dispatch incorporating renewable energy sources using ameliorated dragonfly algorithm.
Electrical Engineering, 101(2), 421- 442.
Tan, Y. (2013). Swarm robotics: collective behavior inspired by nature. J Comput Sci Syst Biol, 6(6),
e106.
Tan, Y., & Zheng, Z.-y. (2013). Research advance in swarm robotics. Defence Technology, 9(1), 18-39.
Tang, J., Zhu, K., Guo, H., Gong, C., Liao, C., & Zhang, S. (2018). Using auction-based task allocation
scheme for simulation optimization of search and rescue in disaster relief. Simulation Modelling
Practice and Theory, 82, 132-146.
Yang, X.-S. (2014). Cuckoo search and firefly algorithm: overview and analysis. Dans X.-S. Yang (Éd.),
Cuckoo search and firefly algorithm (Vol. 516, pp. 1-26). Springer, cham.
Yogeswaran, M., & Ponnambalam, S. (2010). Swarm robotics: An extensive research review.
Zemzami, M., Elhami, A., Makhloufi, A., Elhami, N., Itmi, M., & Hmina, N. (2017). Applying a New
Parallelized Version of PSO Algorithm for Electrical Power Transmission. IOP Conference
Series: Materials Science and Engineering, 205, 12-32.
Zoghby, N., Loscri, V., Natalizio, E., & Cherfaoui, V. (2014). Chapter 8: Robot Cooperation and Swarm
Intelligence. Dans Wireless Sensor and Robot Networks: From Topology Control to
Communication Aspects (pp. 163-201). World Scientific.
50
Bibliographie
Webographie
51
Bibliographie
52