#q-learning — Apprentissage par renforcement
Q-learning : apprendre un chemin par essais et erreurs.
Ce que tu vas manipuler
- 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 valeurV(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,+1s'il atteint le but,−1s'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. - 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ègleQ ← Q + α·(r + γ·max Q(s′,·) − Q). Les chiffres exacts arrivent dans la réponse. - 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. - 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). - Une couleur par case, c'est la valeur. Mais que fait l'agent ? Affiche sa politique :
/affichage fleches. - 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. - Relance l'apprentissage avec cet horizon court :
/episode 100. - 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 cheminy mène aussi). - À 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.2pour un vent qui fait déraper une action sur cinq (l'agent apprend à s'écarter du piège),/epsilon 0.5pour explorer davantage,/alpha 0.1pour apprendre plus prudemment,/gamma 0.95pour un agent patient, puis/episode 200pour voir la différence ;/graine 42pour d'autres tirages,/reinitpour 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./pas— Une 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./politique— Trace 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./reinit— Revient à 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 utiliseQ(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-manchot — Bandit manchot : explorer ou exploiter ?
- #q-learning — Q-learning : apprendre un chemin par essais et erreurs.