AccueilIA et apprentissage automatiqueRégulateur climatique de serre — Q-Learning en direct

🌱 Régulateur climatique de serre — Q-Learning en direct

Regardez un véritable agent d'apprentissage par renforcement Q-learning apprendre à contrôler en direct le chauffage et la ventilation d'une serre simulée, mettant réellement à jour sa table Q à partir du retour de récompense de température à chaque épisode.

IA et apprentissage automatique3DAvancé60 FPS
ai-greenhouse-climate-control ↗ Ouvrir en autonome

À propos du Régulateur climatique de serre

Les vraies serres jonglent avec deux objectifs contradictoires à chaque heure de la journée : maintenir l'air à une température et une humidité idéales pour la culture, et ne pas gaspiller d'énergie pour y parvenir. Cette simulation entraîne un véritable agent de Q-learning tabulaire à résoudre exactement ce problème. L'état est une lecture discrétisée (classe de température × classe d'humidité × créneau horaire) d'un modèle thermique/hygrométrique simple d'une serre répondant à un cycle jour/nuit de température extérieure, au gain solaire et à la transpiration des plantes. L'espace d'actions comprend quatre combinaisons chauffage/aération. Chaque épisode d'entraînement déroule 24 heures simulées, accumule une récompense qui pénalise le fait d'être en dehors de la plage de confort et pénalise la consommation d'énergie du chauffage, et effectue la véritable mise à jour de Bellman Q(s,a) ← Q(s,a) + α[r + γ·max Q(s′,a′) − Q(s,a)] après chaque étape individuelle — rien dans la courbe d'apprentissage n'est scripté.

🔬 Ce que ça montre

Une courbe d'apprentissage de récompense par épisode en direct et non scriptée, produite par des milliers de véritables épisodes d'entraînement, une politique d'exploration epsilon-greedy qui décroît au fil de ces épisodes, et une serre 3D dont la teinte du verre passe du bleu froid au vert cible puis au rouge chaud à mesure que la température interne change, avec un chauffage lumineux et un volet d'aération articulé qui s'ouvre et se ferme selon les actions réellement choisies par l'agent.

🎮 Comment l'utiliser

Ajustez les curseurs de taux d'apprentissage α, de facteur d'actualisation γ, et de décroissance d'epsilon, puis appuyez sur Entraîner et regardez la courbe de récompense grimper. Utilisez Réinitialiser la table Q pour repartir l'agent d'une page blanche, et utilisez Observer l'agent / Observer le thermostat pour rejouer un épisode complet de 24 heures de l'un ou l'autre régulateur dans la scène 3D, avec des relevés en direct de température, d'humidité, de chauffage et d'aération.

💡 Le saviez-vous ?

Le thermostat de référence naïf utilise exactement la même physique et la même fonction de récompense que l'agent de Q-learning — il réagit simplement à la température et à l'humidité actuelles avec des seuils fixes. Comme il ne peut pas conditionner son action sur l'heure de la journée comme le peut l'agent entraîné, un agent de Q-learning bien entraîné finit généralement avec une récompense moyenne par épisode nettement plus élevée une fois que son taux d'exploration a décru.

Questions fréquentes

Qu'est-ce que le Q-learning et en quoi diffère-t-il de l'apprentissage supervisé ?

Le Q-learning est un algorithme d'apprentissage par renforcement sans modèle : un agent interagit avec un environnement, entreprend des actions, et apprend uniquement à partir de la récompense numérique qu'il reçoit, sans jamais qu'on lui montre l'action « correcte » pour une situation donnée. L'apprentissage supervisé, lui, s'entraîne sur des exemples étiquetés de paires entrée-sortie correctes. Ici, le régulateur de serre ne se voit jamais dire « allume le chauffage maintenant » — il découvre cette politique par lui-même en essayant des actions, en observant si la température et l'humidité résultantes ont valu une bonne ou une mauvaise récompense, et en mettant à jour sa table Q en conséquence sur des milliers de journées simulées.

Comment la politique epsilon-greedy équilibre-t-elle exploration et exploitation ?

À chaque étape, l'agent choisit une action aléatoire avec une probabilité ε (exploration) ou l'action avec la plus haute valeur Q connue avec une probabilité 1−ε (exploitation). Au début de l'entraînement, ε démarre à 1,0, si bien que l'agent se comporte presque aléatoirement et accumule une large expérience de ce qui se passe sous chaque combinaison chauffage/aération. Après chaque épisode, ε est multiplié par un facteur de décroissance (par exemple 0,985) et plafonné à un minimum faible, si bien que l'exploration s'atténue progressivement tandis que l'agent exploite de plus en plus la politique qu'il a apprise — exactement la courbe de décroissance epsilon que vous pouvez ajuster et regarder se mettre à jour en direct.

Que contrôlent réellement le taux d'apprentissage (α) et le facteur d'actualisation (γ) ?

La mise à jour de Bellman est Q(s,a) ← Q(s,a) + α·[r + γ·max Q(s′,a′) − Q(s,a)]. Alpha (le taux d'apprentissage) contrôle à quel point chaque nouvelle expérience écrase la valeur Q existante — un α élevé s'adapte vite mais peut être bruyant et instable, un α faible est plus lisse mais converge plus lentement. Gamma (le facteur d'actualisation) contrôle à quel point l'agent se soucie des récompenses futures par rapport à la récompense immédiate : un γ proche de 0 le rend myope, tandis qu'un γ proche de 1 le fait planifier sur tout le cycle de 24 heures.

Pourquoi discrétiser la température et l'humidité en classes pour l'espace d'états ?

Le Q-learning tabulaire a besoin d'un nombre fini d'états pour que Q(s,a) puisse être stocké et mis à jour comme une simple table de correspondance. Cette simulation répartit la température de la serre en classes de 2 °C, l'humidité en classes de 10 %, et l'heure de la journée en quatre blocs de 6 heures, ce qui donne 1 000 états discrets et 4 actions discrètes. Des classes plus larges apprennent plus vite mais contrôlent moins précisément ; des classes plus fines contrôlent plus précisément mais nécessitent plus d'épisodes pour remplir chaque valeur Q — le compromis classique de résolution de l'espace d'états, qui motive aussi l'approximation de fonction (réseaux Q profonds) dans les problèmes plus vastes.

Comment la fonction de récompense est-elle conçue pour refléter les véritables objectifs d'exploitation d'une serre ?

La récompense de chaque étape est négative : elle pénalise l'écart au carré de la température en dehors d'une bande de tolérance de ±2,5 °C autour de 22 °C, une pénalité au carré plus faible pour l'humidité en dehors d'une bande de ±12 % autour de 60 %, et un coût énergétique fixe chaque fois que le chauffage est allumé. Élever l'écart au carré pénalise beaucoup plus les grands écarts que les petits, tandis que le coût constant du chauffage empêche l'agent de simplement faire tourner le chauffage en permanence. Maximiser la somme de ces récompenses sur un épisode de 24 heures équivaut mathématiquement à maintenir la serre confortable tout en minimisant la consommation d'énergie.

Pourquoi comparer l'agent entraîné à un thermostat de référence à seuil fixe ?

Un thermostat simple allume le chauffage en dessous d'un seuil de basse température et ouvre l'aération au-dessus d'un seuil de haute température ou de forte humidité — exactement le type de contrôle basé sur des règles que l'on trouve dans les régulateurs bon marché du monde réel. Faire passer cette même règle fixe par la physique et la fonction de récompense identiques donne un point de comparaison équitable, à conditions égales. Comme l'agent de Q-learning peut conditionner son action conjointement sur l'heure de la journée et l'humidité, un agent bien entraîné bat généralement la récompense moyenne par épisode du thermostat naïf une fois qu'epsilon a suffisamment décru pour qu'il exploite ce qu'il a appris.

L'agent continue-t-il d'apprendre si je change α, γ ou la décroissance d'epsilon en cours d'entraînement ?

Oui. Les trois curseurs sont lus directement par la boucle d'entraînement en cours à chaque épisode, si bien que les déplacer prend effet immédiatement à la prochaine mise à jour de Bellman — il n'y a pas de redémarrage caché. Monter α très haut rendra la courbe de récompense visiblement plus bruyante, tandis que ralentir la décroissance d'epsilon garde l'agent en exploration (et sa courbe de récompense plus plate) plus longtemps avant qu'il ne se stabilise dans l'exploitation de sa politique.

⚙ Sous le capot

Un agent de Q-learning tabulaire s'entraîne face à un modèle thermique/hygrométrique de serre simulé, mettant réellement à jour Q(s,a) via l'équation de Bellman avec une politique epsilon-greedy qui décroît au fil des épisodes, et est comparé en direct à un thermostat à seuil fixe.

Q-LearningApprentissage par renforcementEpsilon-GreedyFaçonnage de récompenseSerre

3D · Moteur de rendu Three.js / WebGL · Cible 60 FPS · fonctionne entièrement côté client, sans installation

Qu'avez-vous trouvé ?

Ajouter des étapes de reproduction (facultatif)