Práctica de aprendizaje por refuerzo

Autor

Óscar Belmonte Fernández

1 Introducción

En esta práctica vas a probar a modificar las soluciones de aprendizaje por refuerzo y aprendizaje por refuerzo profundo que hemos visto en clase de teoría.

Puedes utilizar la documentación de Gymnasium, para los ejemplos del lago helado y cartpole.

Puedes utilizar la documentación de Stable Baseline 3, para el ejemplo de lunar lander.

2 Duración de la práctica

A esta práctica le vamos a dedicar dos sesiones.

3 Objetivos de aprendizaje

Aplicar el algoritmo Q-learning en el caso de espacio de estado discreto, y en el caso de espacio de estados continuo.

Vas a trabajar a partir de los ejemplos que hemos visto en clase, vas a modificarlos para experimentar con este tipo de aprendizaje.

4 Metodología

Necesitas instalar los siguientes paquetes en Python:

micromamba install gymnasium pygames boxed-py
micromamba install stable-baseline3

5 Objetivo

Construir soluciones basadas en aprendizaje por refuerzo a partir de ejemplos sencillos vistos en clase.

6 Tareas a realizar

6.1 Lago helado

  • Existe una versión de 8x8 del lago helado, map_name=“8x8” usa esta versión.
  • Prueba varios valores de descuento \(\gamma\) para experimentar con ellos. ¿Qué ocurre si utilizar un valor de \(\gamma\) cercano a 1? ¿Y si utilizas un valor cercano a 0?
  • Prueba varios valores para la tasa de exploración \(\epsilon\). ¿Qué ocurre si es muy alta (mayor que uno)? ¿Y si es baja (cercana a cero)?
  • ¿Cómo afecta el decaimiento?

6.2 Cartopole

  • Prueba a hacer una discretización más fina (más de 10 niveles en cada una de las variables).
  • Modifica algunos hiperparámetros igual que lo has hecho con el ejemplo del lago helado.

6.3 Lunar lander

  • Prueba a cambiar los hiperparámetros del modelo-
  • Prueba a reducir el número de interaciones para entrenar el modelo.

7 Entrega

En esta práctica no vas a realizar ninguna entrega.