Découvrez nos
ressources

🚩 Découverte : Évitement d’obstacles par Renforcement

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.

‍

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 !
À télécharger
Cursus liés