Rendez-vous de robots: Simulation d`un algorithme réparti

publicité
Rendez-vous de robots: Simulation d’un algorithme réparti
Nombre d’étudiants: 2
(possibilité d’avoir deux groupes de 2 étudiants)
Contact: Swan Dubois ([email protected])
Marjorie Bournat ([email protected])
Mot-clefs: robots, rendez-vous, simulateur, JBotSim.
Contexte
Un système distribué/réparti est un système composé de plusieurs entités indépendantes.
Un algorithme réparti est un algorithme exécuté par ces entités dans le but de résoudre un problème commun.
L’agorithme distribué [3] que vous étudierez durant ce projet est un algorithme de rendez-vous.
Le problème du rendez-vous consiste à faire en sorte que deux entités indépendantes se rejoignent en un
même point sans aide extérieure. Aucune des deux entités ne connaı̂t bien sûr au préalable la position de l’autre
entité qu’elle doit rencontrer.
Les entités auxquelles on s’intéresse sont des robots. Ils sont identiques (aucun moyen ne permet de les
distinguer), ils sont autonomes (ils se suffisent à eux même pour exécuter un algorithme), ils possèdent une
mémoire illimitée, ils sont asynchrones (ils ne se déplacent pas à la même vitesse, et leurs vitesses ne sont pas
constantes au cours du temps). Ils se déplacent dans une grille inifinie dont ils connaissent l’origine (0, 0).
Chacun des robots connaı̂t également ses propre coordonnées dans cette grille.
L’exécution de l’algorithme permet que les deux robots se rencontrent rapidement (en un temps polynomial
en fonction de la distance initiale qui les sépare).
Le but de ce projet est de comprendre cet algorithme et de le simuler sous JBotSim [1, 2] afin d’en apporter
une validation et une analyse expérimentale.
JBotSim est une interface au-dessus de Java qui permet de simuler des systèmes dynamiques (évoluant au
cours du temps). Ici, on veut simuler le mouvement de robots, cette interface est donc approrpiée pour notre
problème.
Déroulement du projet / objectifs
•
Dans un premier temps il vous sera demandé de prendre en main le simulateur JBotSim [1, 2].
•
Puis vous devrez vous familiariser avec l’algorithme de rendez-vous décrit dans l’article [3].
•
Enfin, il vous sera demandé d’implémenter cet algorithme de rendez-vous sous le simulateur JBotSim.
Pré-requis: savoir coder en java.
References
[1] Arnaud Casteigts. http://jbotsim.sourceforge.net/.
1
[2] Arnaud Casteigts. Jbotsim: a tool for fast prototyping of distributed algorithms in dynamic networks. In
Proceedings of the 8nd international ICST conference on simulation tools and techniques, SIMUTools’15,
Athens, Greece, 2015.
[3] Andrew Collins, Jurek Czyzowicz, Leszek Gasieniec, and Arnaud Labourel. Tell me where I am so I can
meet you sooner. 2010.
2
Téléchargement