Aller au contenu principal

Chargement du lab visuel…

#q-learningApprentissage par renforcement

Q-learning : apprendre un chemin par essais et erreurs.

Ce que tu vas manipuler

  1. Bienvenue dans #q-learning. À l'écran, une grille 5 × 5 vue de haut : l'agent (sphère bleue) attend sur la case cerclée de gris, en bas à gauche ; le but doré (+1) est en haut à droite, un piège rouge (−1) au centre. Chaque case porte sa valeur V(s) = max Q(s, a) : toutes à zéro pour l'instant, donc grises — l'agent ne sait rien. Personne ne lui donnera la carte : il touche −0,04 à chaque pas, +1 s'il atteint le but, −1 s'il tombe dans le piège. C'est l'apprentissage par renforcement : apprendre un chemin par essais et erreurs, comme on apprend à traverser une maison la nuit sans allumer.
  2. Joue un seul pas : /pas. L'agent choisit une action (au hasard, puisque tout se vaut encore), la joue, encaisse la récompense et met à jour une seule case de la table Q avec la règle Q ← Q + α·(r + γ·max Q(s′,·) − Q). Les chiffres exacts arrivent dans la réponse.
  3. Lance vingt épisodes d'un coup : /episode 20. Un épisode, c'est l'agent qui repart du départ et joue jusqu'au but, au piège ou au centième pas.
  4. Continue : /episode 100. Regarde le vert gagner la grille de proche en proche, et la longueur d'épisode se tasser vers l'optimum (8 pas, le pointillé vert de la courbe).
  5. Une couleur par case, c'est la valeur. Mais que fait l'agent ? Affiche sa politique : /affichage fleches.
  6. Le facteur γ (gamma) règle l'importance du futur pour l'agent. Coupe-lui l'horizon : /gamma 0.5. La table Q dépend de γ, elle repart donc de zéro.
  7. Relance l'apprentissage avec cet horizon court : /episode 100.
  8. Dernier point de vue : le chemin que suivrait l'agent s'il ne faisait que suivre ses flèches, sans plus explorer. Tape /politique — l'affichage passe en mode chemin (/affichage chemin y mène aussi).
  9. À toi de jouer : /grille moyenne (murs et deux pièges) ou /grille labyrinthe (un couloir de 25 pas : compte les épisodes nécessaires), /glissement 0.2 pour un vent qui fait déraper une action sur cinq (l'agent apprend à s'écarter du piège), /epsilon 0.5 pour explorer davantage, /alpha 0.1 pour apprendre plus prudemment, /gamma 0.95 pour un agent patient, puis /episode 200 pour voir la différence ; /graine 42 pour d'autres tirages, /reinit pour repartir. Tu as fait le tour du lab : retourne au premier canal, #neurone, pour boucler — tu y verras d'un autre œil ce que « apprendre » veut dire.

Commandes du canal

  • /grille <petite|moyenne|labyrinthe>Change de grille ; la table Q repart de zéro.
  • /episode <1..200>Joue n épisodes d'un coup (chacun ≤ 100 pas) et met la table Q à jour à chaque pas.
  • /pasUne seule transition (s, a, r, s′) et la mise à jour de Q qui va avec, chiffrée.
  • /alpha <0.01..1>Taux d'apprentissage α : quelle part de l'erreur on corrige à chaque mise à jour.
  • /gamma <0..0.99>Facteur d'actualisation γ : poids du futur ; la table Q repart de zéro.
  • /epsilon <0..1>Exploration ε : probabilité de jouer une action au hasard plutôt que la meilleure.
  • /glissement <0..0.3>Vent : probabilité qu'une action dérape d'un quart de tour ; la table Q repart de zéro.
  • /affichage <valeurs|fleches|chemin>Ce que la grille montre : les valeurs, les flèches de la politique ou le chemin glouton.
  • /politiqueTrace le chemin glouton depuis le départ et donne sa longueur (ou signale une boucle).
  • /graine <1..9999>Change la suite de tirages (exploration, égalités, vent) ; la table Q repart de zéro.
  • /reinitRevient à la petite grille, α = 0,5, γ = 0,9, ε = 0,1, sans vent, table vierge.

Glossaire

apprentissage par renforcement
Apprendre par essais et erreurs : un agent agit dans un environnement et ne reçoit qu'une récompense, jamais la bonne réponse. Il cherche la stratégie qui maximise la somme des récompenses à long terme. Jeux (AlphaGo), robotique et réglage des LLM (RLHF) en relèvent.
agent, environnement et récompense
La boucle du renforcement : l'agent observe un état s, choisit une action a ; l'environnement répond par une récompense r et un nouvel état s′. Ici : la case, l'une des quatre directions, −0,04 / +1 / −1, et la case d'arrivée.
table Q
Tableau Q(s, a) qui estime, pour chaque état et chaque action, le retour actualisé qu'on obtiendra en jouant a puis en se comportant au mieux. La valeur d'un état est V(s) = max_a Q(s, a) ; c'est elle qui colore les cases.
équation de Bellman
Relation de cohérence entre valeurs voisines : Q(s, a) = r + γ·max_a′ Q(s′, a′). Le Q-learning corrige chaque estimation vers cette cible, une transition à la fois : Q ← Q + α·(r + γ·max Q(s′,·) − Q). Le terme entre parenthèses est l'erreur de différence temporelle.
facteur d'actualisation γ
Nombre entre 0 et 1 qui pondère le futur : une récompense reçue dans k pas compte pour γ^k. Proche de 1, l'agent est patient et les valeurs se propagent loin ; petit, il est myope et ne voit que les récompenses proches.
taux d'apprentissage α
Part de l'erreur corrigée à chaque mise à jour, entre 0 et 1. Grand, la table apprend vite mais oublie tout au moindre coup de malchance ; petit, elle moyenne le hasard du monde (vent) au prix de plus d'épisodes.
ε-glouton
Façon de choisir l'action : avec probabilité ε on explore (action au hasard), sinon on exploite (l'action de plus grand Q). Sans exploration, on ne découvre jamais les chemins qu'on n'a pas encore essayés ; avec trop, on n'exploite jamais ce qu'on sait.
politique
Règle qui associe une action à chaque état : ce que l'agent fait. La politique gloutonne joue l'action de plus grand Q — ce sont les flèches et le chemin tracé. Le but du renforcement est de trouver la politique optimale.
hors-politique et sur-politique
Le Q-learning est hors-politique (off-policy) : il apprend la valeur de la politique gloutonne en utilisant max Q(s′,·), même si les actions jouées viennent d'une exploration ε-gloutonne. SARSA est sur-politique (on-policy) : il utilise Q(s′, a′) avec l'action réellement jouée ensuite, et apprend donc la valeur de la politique exploratoire — plus prudent près des pièges.
DQN
Deep Q-Network : quand les états sont trop nombreux pour une table (pixels d'un jeu Atari), un réseau de neurones approxime Q(s, a). Même règle de Bellman, plus deux astuces pour stabiliser l'apprentissage : la mémoire de rejeu et un réseau cible figé. C'est le pont entre ce canal et les réseaux de neurones du lab.

Autres canaux du thème Apprentissage par renforcement

  • #bandit-manchotBandit manchot : explorer ou exploiter ?
  • #q-learningQ-learning : apprendre un chemin par essais et erreurs.