Découvrez nos
ressources
Matériel nécessaire :
- 1 robot minimum
- 1 ordinateur/robot
- Arène individuelle minimum
Configuration logiciel :
- configuration d'exemple : “Apprentissage par renforcement - évitement d’obstacles”
Durée :
30 minutes
Age :
8 ans et +
Les + de cette activité :
- Introduire l’apprentissage par renforcement
- Comprendre le principe du “Try and learn” = bénéfices pédagogiques
- Peut être réalisée avec le simulateur
Cette activité consiste à observer un robot qui apprend de manière autonome selon le principe de l’apprentissage par renforcement. On peut en tirer des conclusions assez générales sur les conditions nécessaires pour un apprentissage efficace.
[Contenu vidéo à venir]
Introduction
Dans cette activité, on n’entraîne pas le robot : c’est le robot lui-même qui va créer les exemples sur lesquels se baser afin de prendre les bonnes décisions d’actions à effectuer.
Pour que le robot soit capable de distinguer les bonnes des mauvaises décisions, l’algorithme comporte un système de récompenses.
Ici, le robot reçoit en fonction des actions effectuées les récompenses suivantes :
- avancer : 100 points
- tourner : 82 points
- reculer : -50 points
- Le robot reçoit également une pénalité de -50 points lorsqu’il se bloque
Dans la barre “Niveau”, vous pourrez observer la note moyenne de récompenses obtenues par le robot. Son but est de maximiser ce score ; il va donc peu à peu apprendre à choisir les actions qui lui apporteront les récompenses optimales, en prenant en compte ce que ses capteurs lui indiquent
Nous allons donc pouvoir observer les progrès du robot au cours de son apprentissage. Commencez par monter une arène sans obstacle, et placez-y le robot.
Apprentissage du robot en autonomie
Dans le logiciel AlphAI, choisissez la configuration d'exemple : “Apprentissage par renforcement - évitement d’obstacles”.
Dans cette activité, c’est le robot qui apprend tout seul !
Lancez le mode autonome, et observez votre robot. Comment se comporte-t-il ?
Quand le robot a identifié une action qui lui rapporte une récompense (par exemple tourner), il se peut qu’il décide dorénavant d’effectuer uniquement cette action.

Nous allons maintenant activer le bouton “exploration” : de temps en temps, le robot va alors décider d’effectuer une action aléatoire. Il pourra ainsi découvrir que l’action qu’il aurait choisie n’est peut-être pas celle qui correspond à la récompense optimale possible, et ainsi enrichir son apprentissage avec de nouvelles données.
Normalement il apprend successivement à aller tout droit, à se retourner quand il se cogne à un obstacle, puis à reconnaître ces obstacles à l’avance et donc à tourner avant de se cogner dedans ! Cet apprentissage prend à peu près 10 minutes.
N’hésitez pas à désactiver le mode “exploration” lorsque le robot commence à majoritairement choisir les bonnes actions à effectuer.
Bilan et retours d'expérience
Une fois l’apprentissage terminé, arrêtez votre robot et cliquez sur “graphes” dans la barre inférieure (si le bouton n’apparaît pas, changez l’affichage des paramètres en “avancé” ou “expert”). Vous pourrez alors observer dans le graphe du bas l’évolution des erreurs effectuées par le robot : normalement, les valeurs devraient être très hautes en début d’activité, puis peu à peu tendre vers zéro : le robot s’est entraîné tout seul à ne plus faire d’erreurs !
Le fonctionnement de l’apprentissage par renforcement peut être résumé de cette manière :

Ce qui est nécessaire à l’apprentissage du robot :
- La répétition d’une même tâche : le robot ne parvient pas tout de suite à trouver la bonne solution, ce n’est qu’à force de répétitions qu’il s’améliore.
- L’exploration : le robot doit parfois tester de nouvelles idées, pour ne pas rester enfermé dans une solution non optimale.
- Les récompenses ou pénalités : le robot a besoin d’une aide extérieure pour évaluer si ses décisions sont optimales ou non.
- La place de l’erreur : le robot apprend de ses erreurs sans se décourager ! Les erreurs lui permettent d’apprendre quelles actions ne pas répéter !