InicioIA y Aprendizaje AutomáticoControlador de Clima de Invernadero — Q-Learning en Vivo

🌱 Controlador de Clima de Invernadero — Q-Learning en Vivo

Observa a un agente real de aprendizaje por refuerzo Q-learning aprender a controlar en vivo la calefacción y ventilación de un invernadero simulado, actualizando genuinamente su tabla Q a partir de la retroalimentación de recompensa por temperatura en cada episodio.

IA y Aprendizaje Automático3DAvanzado60 FPS
ai-greenhouse-climate-control ↗ Abrir independiente

Acerca del Controlador de Clima de Invernadero

Los invernaderos reales equilibran dos objetivos en conflicto cada hora del día: mantener el aire cerca de una temperatura y humedad ideales para el cultivo, y no desperdiciar energía haciéndolo. Esta simulación entrena a un agente genuino de Q-learning tabular para resolver exactamente ese problema. El estado es una lectura discretizada (contenedor de temperatura × contenedor de humedad × contenedor de hora del día) de un modelo térmico/de humedad simple de un invernadero que responde a un ciclo día/noche de temperatura exterior, ganancia solar y transpiración de las plantas. El espacio de acciones son cuatro combinaciones de calefacción/ventilación. Cada episodio de entrenamiento se desarrolla en 24 horas simuladas, acumula una recompensa que penaliza estar fuera de la banda de confort y penaliza el consumo energético de la calefacción, y realiza la actualización real de Bellman Q(s,a) ← Q(s,a) + α[r + γ·max Q(s′,a′) − Q(s,a)] después de cada paso — nada en la curva de aprendizaje está guionizado.

🔬 Qué muestra

Una curva de aprendizaje de recompensa por episodio en vivo y no guionizada producida por miles de episodios de entrenamiento reales, una política de exploración epsilon-greedy que decae a lo largo de esos episodios, y un invernadero 3D cuyo tinte de vidrio cambia de azul frío pasando por verde objetivo hasta rojo caliente a medida que cambia la temperatura interna, con una calefacción brillante y una trampilla de ventilación abisagrada que se abre y cierra con las acciones realmente elegidas por el agente.

🎮 Cómo usarlo

Ajusta la tasa de aprendizaje α, el factor de descuento γ, y los controles deslizantes de decaimiento de epsilon, luego pulsa Entrenar y observa cómo sube la curva de recompensa. Usa Reiniciar tabla Q para empezar de nuevo con el agente en blanco, y usa Ver agente / Ver termostato para reproducir un episodio completo de 24 horas de cualquiera de los dos controladores dentro de la escena 3D, con lecturas en vivo de temperatura, humedad, calefacción y ventilación.

💡 ¿Sabías que...?

El termostato ingenuo de referencia usa exactamente la misma física y función de recompensa que el agente de Q-learning — simplemente reacciona a la temperatura y humedad actuales con umbrales fijos. Como no puede condicionar según la hora del día de la forma en que puede hacerlo el agente entrenado, un agente de Q-learning bien entrenado suele terminar con una recompensa media por episodio notablemente más alta una vez que su tasa de exploración ha decaído.

Preguntas frecuentes

¿Qué es el Q-learning y en qué se diferencia del aprendizaje supervisado?

El Q-learning es un algoritmo de aprendizaje por refuerzo sin modelo: un agente interactúa con un entorno, realiza acciones, y aprende únicamente de la recompensa numérica que recibe, sin que nunca se le muestre la acción "correcta" para una situación dada. El aprendizaje supervisado, en cambio, se entrena con ejemplos etiquetados de pares entrada-salida correctos. Aquí, al controlador del invernadero nunca se le dice "enciende la calefacción ahora" — descubre esa política por sí mismo probando acciones, observando si la temperatura y humedad resultantes obtuvieron una recompensa buena o mala, y actualizando su tabla Q en consecuencia a lo largo de miles de días simulados.

¿Cómo equilibra la política epsilon-greedy la exploración y la explotación?

En cada paso, el agente elige una acción aleatoria con probabilidad ε (exploración) o la acción con el valor Q más alto conocido con probabilidad 1−ε (explotación). Al principio del entrenamiento ε empieza en 1.0, por lo que el agente se comporta casi aleatoriamente y reúne una experiencia amplia de lo que ocurre bajo cada combinación de calefacción/ventilación. Después de cada episodio ε se multiplica por un factor de decaimiento (por ejemplo 0.985) y se limita a un mínimo pequeño, de modo que la exploración disminuye suavemente mientras el agente explota cada vez más la política que ha aprendido — exactamente la curva de decaimiento de epsilon que puedes ajustar y ver actualizarse en vivo.

¿Qué controlan realmente la tasa de aprendizaje (α) y el factor de descuento (γ)?

La actualización de Bellman es Q(s,a) ← Q(s,a) + α·[r + γ·max Q(s′,a′) − Q(s,a)]. Alfa (la tasa de aprendizaje) controla cuánto sobrescribe cada nueva experiencia el valor Q existente — un α alto se adapta rápido pero puede ser ruidoso e inestable, un α bajo es más suave pero más lento en converger. Gamma (el factor de descuento) controla cuánto le importan al agente las recompensas futuras frente a la inmediata: un γ cercano a 0 lo hace miope, mientras que un γ cercano a 1 lo hace planificar todo el ciclo de 24 horas.

¿Por qué discretizar la temperatura y la humedad en contenedores para el espacio de estados?

El Q-learning tabular necesita un número finito de estados para que Q(s,a) pueda almacenarse y actualizarse como una simple tabla de consulta. Esta simulación agrupa la temperatura del invernadero en contenedores de 2°C, la humedad en contenedores del 10%, y la hora del día en cuatro bloques de 6 horas, dando 1,000 estados discretos y 4 acciones discretas. Los contenedores más gruesos aprenden más rápido pero controlan con menos precisión; los más finos controlan con más precisión pero necesitan más episodios para rellenar cada valor Q — el clásico compromiso de resolución del espacio de estados que también motiva la aproximación de funciones (redes Q profundas) en problemas más grandes.

¿Cómo está diseñada la función de recompensa para reflejar los objetivos reales de operación de un invernadero?

La recompensa de cada paso es negativa: penaliza la desviación al cuadrado de la temperatura fuera de una banda de tolerancia de ±2.5°C alrededor de 22°C, una penalización al cuadrado menor por humedad fuera de una banda del ±12% alrededor del 60%, y un coste energético fijo siempre que la calefacción esté encendida. Elevar al cuadrado la desviación castiga las grandes excursiones mucho más que las pequeñas, mientras que el coste constante de la calefacción impide que el agente simplemente dispare la calefacción todo el tiempo. Maximizar la suma de estas recompensas a lo largo de un episodio de 24 horas es matemáticamente equivalente a mantener el invernadero confortable mientras se minimiza el uso de energía.

¿Por qué comparar al agente entrenado con un termostato de umbral fijo de referencia?

Un termostato simple enciende la calefacción por debajo de un umbral de baja temperatura y abre la ventilación por encima de un umbral de alta temperatura o alta humedad — exactamente el tipo de control basado en reglas que se encuentra en controladores reales baratos. Ejecutar esa misma regla fija a través de la física y función de recompensa idénticas da un punto de referencia justo y equivalente. Como el agente de Q-learning puede condicionar su acción según la hora del día y la humedad conjuntamente, un agente bien entrenado normalmente supera la recompensa media por episodio del termostato ingenuo una vez que epsilon ha decaído lo suficiente como para que explote lo que ha aprendido.

¿Sigue aprendiendo el agente si cambio α, γ o el decaimiento de epsilon durante el entrenamiento?

Sí. Los tres controles deslizantes son leídos directamente por el bucle de entrenamiento en ejecución en cada episodio, por lo que moverlos surte efecto inmediatamente en la siguiente actualización de Bellman — no hay reinicio oculto. Subir α mucho hace que la curva de recompensa se vea visiblemente más ruidosa, mientras que ralentizar el decaimiento de epsilon mantiene al agente explorando (y su curva de recompensa más plana) durante más tiempo antes de que se asiente en explotar su política.

⚙ Bajo el capó

Un agente de Q-learning tabular se entrena contra un modelo térmico/de humedad de invernadero simulado, actualizando genuinamente Q(s,a) mediante la ecuación de Bellman con una política epsilon-greedy que decae a lo largo de los episodios, y se compara en vivo con un termostato de umbral fijo.

Q-LearningAprendizaje por refuerzoEpsilon-GreedyDiseño de recompensasInvernadero

3D · Renderizador Three.js / WebGL · Objetivo de 60 FPS · funciona totalmente en el cliente, sin instalación

¿Qué encontraste?

Añadir pasos de reproducción (opcional)