Découvrez nos
ressources
Matériel nécessaire :
- 2 robots minimum
- 1 ordinateur/robot
- Arène de course
Les + de cette activité :
- Ludique
- Appréciée de tous les âges
- Parfaite pour introduire le principe de l’apprentissage supervisé
Durée :
40 à 60 minutes
Age :
+ 8 ans
Configuration logiciel :
Mode "course de robot"
Activité ludique pour une arène avec plusieurs robots : les élèves entraînent les robots à rouler dans un circuit puis une course est organisée. Les élèves apprennent par la manipulation le principe de l'apprentissage supervisé et l'importance de la qualité des données d'entraînement.
La course de robots est l’activité recommandée pour débuter la solution AlphAI.
Introduction
Construisez votre arène de manière à former un circuit. Nous vous recommandons d’utiliser une arène de course conçue par Learning Robots, mais vous pouvez également construire votre propre circuit : veillez dans ce cas à ce qu’il y ait un bon contraste visuel entre le sol et les bords du circuit, que l'éclairage soit uniforme et que le sol soit propre.
Paramétrage
Connectez chaque robot à un ordinateur, puis choisissez le configuration d'exemple “course de robots” ou créez vos propres paramètres.
Veillez à vérifier que tous les robots ont les mêmes paramètres et surtout la même vitesse.
Entraînement
Vérifiez que le bouton « autonome » est bien désactivé, et que le bouton “apprentissage” est bien activé.
C’est à vous de jouer ! Chacun entraîne son robot à se déplacer en cliquant sur les actions à droite de l’écran ou en le contrôlant avec les flèches directionnelles ou AZEQSD du clavier.
Nous vous conseillons de faire des tours d’arène dans le sens des aiguilles d’une montre.
Pendant cette phase d’apprentissage, ce n’est pas la peine de chercher à aller vite : le but est surtout d’apprendre au robot à faire des tours dans le bon sens et sans se cogner aux murs. Prenez le temps de bien choisir l’action adéquate à chaque fois (si vous vous trompez, cliquez sur “Oublier action” à côté du bouton apprentissage). Faites attention à ne pas confondre la gauche et la droite quand le robot est en sens inverse !
Apprenez au robot à rester loin de l’obstacle central pour éviter qu’il s’y coince lorsqu’il sera autonome.
Vous pouvez également déplacer le robot à la main pour le mettre intentionnellement face à des obstacles et lui apprendre quoi faire dans ces situations.
Dans le panneau de contrôle en bas de l’écran, vous pouvez fixer la vitesse de pointe du robot. Nous vous conseillons une vitesse maximale de 30 pour une arène petite course, 35 pour une arène grande course, et 40 pour une arène très grande course.
Plus vous augmentez la vitesse, plus le robot sera rapide, mais plus il sera difficile à contrôler. Choisir une vitesse très élevée n’est pas toujours un avantage !
Test de l’apprentissage et améliorations
Après avoir fait quelques tours de l’arène, vous pouvez activer l’autonomie. Si votre robot est bien entraîné, il se mettra alors à faire des tours par lui-même !
Mais l’apprentissage n’est pas terminé ; même lorsque le robot se pilote lui-même, vous pouvez continuer de le commander en appuyant sur les flèches pendant qu’il se déplace. Par exemple, si le robot se coince contre un mur et ne sait plus quoi faire, vous pouvez le débloquer en lui demandant de faire marche arrière (à condition que l'action "reculer" ait été activée dans l'onglet "actions" sur la gauche de l'interface du logiciel.
La course de robots
Une fois vos robots entraînés, organisez une compétition : placez les robots concurrents sur la ligne de départ. Donnez le top départ et les équipes cliquent alors en même temps sur le bouton « Autonome » (ou appuient sur la barre d’espace du clavier) pour démarrer la course.
Pendant la course, seul le mode autonome est autorisé : les participants ne doivent pas donner d’instruction à leur robot. Un arbitre pourra déplacer les robots qui sont bloqués pendant plus de 5 secondes, pour leur permettre de continuer la course.
Le premier robot qui a effectué 3 tours complets a gagné !
Retours d'expérience et conclusion
Nous avons utilisé ici un algorithme d’apprentissage supervisé. Cet algorithme est basé sur le réseau de neurones artificiels qui est affiché à l’écran (mais il existe d’autres types d’algorithmes qui ne sont pas basés sur des réseaux de neurones, par exemple l’algorithme des K plus proches voisins). Tous les algorithmes d’apprentissage supervisé fonctionnent de la manière suivante :
Dans une première phase appelée entraînement, nous avons fourni des exemples de décisions à l’algorithme, c’est-à-dire à la fois des images de ce que voit la caméra du robot et les actions qu’il faut choisir lorsque la caméra voit ces images. Pendant l’entraînement, le réseau de neurones artificiels a été modifié par l’algorithme d’apprentissage (plus spécifiquement, certaines connexions ont été renforcées, d’autres diminuées, de sorte que le réseau de neurones devienne capable d’imiter les mêmes prises de décision).
Dans un second temps appelé utilisation, l’algorithme est capable de prendre de bonnes décisions sur de nouvelles images.
Nous avons vu que tous les robots n’ont pas appris la même chose, certains se sont mieux comportés pendant la course, d’autres moins bien. Comme tous les participants ont utilisé le même algorithme, nous voyons bien que la qualité des prises de décisions en autonomie dépend de la qualité des données d’entraînement.
Nous pouvons discuter ensemble de ce qui fait la qualité des données d’entraînement :
• Qualité des données d’entraînement = absence d’erreurs dans les prises de décisions
• Quantité des données pas toujours gage de qualité d’autonomie
• Exhaustivité des situations : le robot a plus de risques de faire un mauvais choix lorsqu’il est confronté à une situation inconnue
Pour aller plus loin
Maintenant que les élèves ont compris que pour gagner la course, le plus important est la qualité des données d'entraînement, recommencer l'activité depuis le début !
Vous pouvez également recommencer la course en ajoutant de nouvelles règles :
- Limiter les données d’entraînement (par exemple : 25 points de données maximum), mais en laissant la possibilité aux participants de déplacer leur robot à la main pendant la phase d'entrainement
- Complexifier l’arène
- Avoir une arène différente pour l’entraînement et pour la course