7 - Práctica 1: Introducción a OpenAI Gym

Lección 7 del curso Aprendizaje por Refuerzo Nivel Intermedio.

Introducción

En la lección anterior vimos el último de los principales algoritmos de la Programación Dinámica: la iteración de valores, así que ya estamos listos para iniciar el componente práctico del curso.

En esta primera práctica del curso veremos una Introducción a OpenAI Gym, una librería de Python desarrollada por OpenAI y que facilita no sólo la implementación de Algoritmos de Aprendizaje por Refuerzo sino también la simulación de la interacción entre el Agente y el Entorno.

Suscríbete y accede al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

¿Qué es OpenAI Gym?

OpenAI Gym es una librería de Python desarrollada por OpenAI (una de las compañías de investigación en Inteligencia Artificial más importantes a nivel mundial) y que permite implementar diferentes algoritmos de Aprendizaje por Refuerzo y simular la interacción entre Agentes y Entornos.

Instalación

Desde Google Colab simplemente usamos el comando pip, el cual descargará e instalará automáticamente la librería en nuestro entorno virtual

Entornos

Los entornos son el bloque fundamental de OpenAi Gym.

Básicamente implementan en Python un simulador del entorno en el cual queremos entrenar nuestro Agente.

OpenAI Gym contiene ya pre-instalados varios entornos útiles en problemas básicos (como el que veremos en esta lección) y en áreas como el control, la robótica o incluso los videojuegos. Además permite la creación de entornos personalizados.

En esta lección usaremos el entorno Frozen Lake (o “El lago congelado”) que en esencia es el Tablero Bidimensional Estocástico que hemos venido utilizando como base para la comprensión de los diferentes algoritmos.

A continuación se resumen algunos métodos y variables de este tipo de objeto:

Esta función de transición es un diccionario que tendrá un tamaño igual al número de estados. Si por ejemplo escribimos P[0][2] lo que obtendremos será la función de transición partiendo del estado s=0 y tomando la acción a=2

3. Interactuando con el entorno

Además, el entorno contiene métodos útiles que permiten la interacción del Agente:

Recuerda suscribirte para acceder al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Muy bien, acabamos de ver las herramientas básicas de la librería OpenAI Gym, con lo cual ya estamos listos para poner en práctica todo lo aprendido hasta el momento.

Así que en la práctica 2 veremos cómo realizar la implementación de los diferentes algoritmos de Programación Dinámica vistos en las lecciones anteriores haciendo uso precisamente de esta librería.

Ver todas las lecciones de este curso