Aprendizaje por refuerzo explicado simplemente (con diagramas y código real)
Reinforcement Learning: lo esencial en un artículo — código real, diagramas y pasos concretos, extractos de un curso de 45 lecciones.
Una guía que va al grano: Reinforcement Learning desglosado con diagramas, ejemplos concretos y comandos probados. Todo proviene de un curso estructurado de 16 capítulos — aquí tienes lo mejor.
- Introducción e Instalación
- Fundamentos del Reinforcement Learning
- Proceso de Decisión de Markov
- Q-Learning Clásico
- Programación dinámica
Primer entorno Gymnasium (FrozenLake)
reset / step, el concepto de episodio, y hacer jugar a un agente aleatorio en el juego FrozenLake.Objetivos pedagógicos
- Crear un entorno con
gym.make - Comprender los métodos
resetystep - Identificar el espacio de observación y el espacio de acción
- Escribir un bucle de episodio completo
- Lanzar un agente aleatorio y observar su puntuación
FrozenLake : el terreno de juego
FrozenLake es una cuadrícula de 4x4 casillas que representa un lago helado. El agente parte de la casilla de inicio (S), debe alcanzar el regalo (G) caminando sobre el hielo sólido (F), evitando los agujeros (H) donde cae y pierde la partida. Simple, visual, perfecto para empezar.
is_slippery=True). El agente que quiere ir a la derecha puede resbalar y terminar en otro lugar. Esto añade azar y hace el problema más interesante. Se puede desactivar para empezar.La interfaz universal : reset y step
Todos los entornos Gymnasium comparten la misma interfaz, lo que hace que escribir agentes sea muy práctico. Dos métodos bastan.
reset()
Reinicia el entorno a su estado inicial y devuelve el primer estado. Se llama al inicio de cada episodio (una partida completa).
step(action)
Ejecuta una acción y devuelve cinco valores : el nuevo estado, la recompensa, si el episodio ha terminado, si está truncado, y la información adicional.
env.close() al final, especialmente con el renderizado gráfico. De lo contrario, pueden quedar ventanas fantasma abiertas que consumen memoria.Visualizar el juego
Para ver al agente jugar en pantalla, añade el modo de renderizado :
Resolver FrozenLake con Value Iteration
Objetivos pedagógicos
- Escribir Value Iteration completo para FrozenLake
- Extraer la política óptima a partir de V*
- Evaluar al agente en numerosos episodios
- Interpretar los valores y la política obtenidos
- Comprender el efecto del hielo resbaladizo
Paso 1 : acceder al modelo de FrozenLake
FrozenLake proporciona su modelo completo mediante env.unwrapped.P. Es un diccionario que da, para cada estado y cada acción, la lista de transiciones posibles.
Arquitectura DQN con PyTorch
Objetivos pedagógicos
- Definir una red con
nn.Module - Elegir el tamaño de entrada y salida según el entorno
- Comprender el papel de las capas ocultas y de ReLU
- Hacer una predicción (forward pass)
- Comprender que la salida proporciona un Q por acción
La anatomía de un DQN
Un DQN para CartPole es una red muy sencilla : toma los 4 números del estado, los pasa por dos capas ocultas, y produce 2 valores Q (uno por acción : izquierda, derecha).
Este artículo cubre los extractos más útiles — el curso completo Reinforcement Learning (16 capítulos, 45 lecciones, ejercicios corregidos y proyecto final) te lleva hasta el final.
./acceder-al-curso-completo curso gratuito : Dominar Claude CodeFAQ
¿Cuánto tiempo se necesita para aprender Reinforcement Learning?
¿Se necesitan requisitos previos?
¿Por dónde empezar de forma concreta?
📬 ¿Quieres recibir este tipo de guía cada semana? Suscríbete gratis — código real, cero palabrería.