CHAPITRE 3
-- BOA with intensive search (mBOA) [12]
-- BOA with non-linear adaptative rule (ABOA) [96]
Nous avons réimplémenté BOA et chacune de
ces variantes en langage Python, et les avons adaptés à la
bibliothèque Pygmo2 pour s'assurer que la différence des
performances n'est pas causée par l'utilisation de techniques
d'implémentation différentes, ou par des outils
différents.
Finalement, nous allons effectuer un test en modifiant le
nombre de robots pour valider l'adaptabilité de notre
modélisation à des scénarios mono et multirobots.
3.7.2 Paramétrage de l'environnement de simulation
102
. Empty Map (24x24m) House Map (24x24m)
FIGURE 3.13 - Cartes de l'environnement de simulation
utilisé durant les expériences
La figure 3.13 montre la cartographie en 2D des deux
environnements qui seront utilisés pour effectuer les
expériences. La première (dénommée Empty map)
représente une zone vide ne contenant aucun obstacle à
l'exception du mur d'entourage qui délimite son périmètre.
La deuxième zone (dénommée House map) est
inspirée de l'architecture d'une maison et est partiellement couverte
d'obstacles à un taux d'occupation de 27% après suppression des
portes et fenêtres. Ces deux zones ont une taille de 24x24m soit une
surface totale de 576m2 chacune.
Pour chaque zone, deux types d'expériences seront
effectuées en variant le nombre d'emplacements cibles (points de
destinations) générés par le processus d'optimisation. Ce
paramètre influencera la stratégie d'exploration des robots : un
nombre de destinations réduit poussera le robot à effectuer une
planification à court terme, alors qu'un nombre plus élevé
le poussera à effectuer une planification à long terme. Pour
chaque expérience, nous enregistrerons le temps d'exécution, le
taux d'exploration ainsi que les performances de chaque
métaheuristique.
Nous utiliserons également une carte d'environnement
inspirée d'une usine avec une superficie de 1500m2 afin
d'effectuer des expériences de validation de l'approche sur des zones
à plus large échelle. Cet environnement contient un nombre plus
important d'obs-tacles et plusieurs couloirs étroits et des chemins dont
l'extrémité finale conduit à une im-
103
passe, ce qui sera utile pour tester les capacités des
robots à naviguer efficacement sans se bloquer mutuellement le chemin.
La figure 3.14 montre la cartographie de cette usine.
Factory Map (30x50m)
FIGURE 3.14 - Carte d'environnement utilisé pour simuler
les scénarios à large échelle
Dans le but de réduire la variabilité des
expériences causées par différentes initialisations, nous
allons fixer les mêmes conditions de départ pour chaque session de
test:
-- Position de départ du robot : dans les
coordonnées (1,1) avec un angle de 0° vers le nord.
-- Distance de mesure du capteur LIDAR : 4m, avec un taux de 5%
d'erreurs.
-- Plage de mesure angulaire du capteur LIDAR : 180°,
avec une résolution de 1°. -- Taille de la population: 20
individus.
-- Nombre maximal de générations : 30
itérations.
-- Condition d'arrêt prématuré :
arrêt si aucune amélioration de la valeur de fitness pendant 10
générations consécutives.
-- Population initiale : même population pour toutes les
méthodes.
-- SEED du générateur de nombre aléatoires :
25 (choisi arbitrairement).
Le nombre de simulations prévues pour pouvoir
réaliser les objectifs fixés peut être calculé en
multipliant le nombre des expériences x nombre de méthodes x
nombre de répétitions. Ce chiffre s'élève donc
à 380 exécutions en total. Nous diviserons ces exécutions
sur plusieurs machines en utilisant la configuration suivante:
-- Python 3.9.5 -- Numpy 1.21 -- Matplotlib 3.4.2 -- Pygmo
2.16.1
104
|