Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Control Monte Carlo | Métodos de Monte Carlo
Introducción al Aprendizaje por Refuerzo
course content

Contenido del Curso

Introducción al Aprendizaje por Refuerzo

Introducción al Aprendizaje por Refuerzo

1. Teoría Central de RL
2. Problema del Bandido de Varios Brazos
3. Programación Dinámica
4. Métodos de Monte Carlo
5. Aprendizaje por Diferencia Temporal

book
Control Monte Carlo

Al reemplazar el paso de evaluación de la política en el algoritmo estándar de iteración de políticas con las técnicas de estimación Monte Carlo descritas en el capítulo anterior, ya podemos derivar una nueva variación de la iteración de políticas—una que se basa en la experiencia muestreada en lugar de la programación dinámica.

Sin embargo, existe una limitación crítica. En la iteración de políticas tradicional, el paso de mejora de la política depende de tener acceso a un modelo completo del entorno. Específicamente, para actualizar la política, utilizamos la siguiente expresión:

π(s)arg maxas,rp(s,rs,a)(r+γv(s))\pi(s) \gets \argmax_a \sum_{s', r} \textcolor{red}{p(s', r | s, a)} \Bigl(r + \gamma v(s')\Bigr)

Esta ecuación asume que conocemos las probabilidades de transición p(s,rs,a)p(s', r | s, a). Pero este es precisamente el problema: los métodos Monte Carlo están diseñados para entornos sin modelo, donde la dinámica de transición del entorno es desconocida. Si se dispone de un modelo completo, entonces sería preferible utilizar programación dinámica en todo momento, incluso para la evaluación de la política, ya que sería más eficiente y preciso.

Por lo tanto, aunque sustituir los métodos Monte Carlo para la estimación de valores es un paso hacia el aprendizaje por refuerzo sin modelo, también debemos encontrar una manera de realizar la mejora de la política sin depender del conocimiento del modelo. Esto requiere cambiar de la función de valor de estado a la función de valor de acción.

¿Por qué valores de acción?

Al utilizar valores de acción, es posible realizar la mejora de la política sin necesidad de un modelo del entorno. En lugar de depender de las probabilidades de transición para calcular los retornos esperados, podemos seleccionar directamente las acciones que parecen ofrecer el mayor valor. El paso de mejora de la política se convierte entonces en:

π(s)arg maxaq(s,a)sS\pi(s) \gets \argmax_a q(s, a) \qquad \forall s \in S

Y no es difícil demostrar que la nueva política no es peor que la anterior, ya que el teorema de mejora de la política aún se puede aplicar:

qπk(s,πk+1(s))=qπk(s,arg maxaqπk(s,a))=maxaqπk(s,a)qπk(s,πk(s))=vπk(s)\begin{aligned} q_{\pi_{k}}(s, \pi_{k+1}(s)) &= q_{\pi_k}(s, \argmax_a q_{\pi_k}(s, a))\\ &= \max_a q_{\pi_k}(s, a)\\ &\ge q_{\pi_k}(s, \pi_k(s))\\ &= v_{\pi_k}(s) \end{aligned}

Y, al igual que con la programación dinámica, este teorema garantiza que πk+1\pi_{k+1} es mejor que πk\pi_k, o que ambas son iguales y óptimas.

Estimación de la Función de Valor de Acción

El proceso de estimación es casi idéntico al de la función de valor de estado. Todas las ideas utilizadas para estimar valores de estado pueden emplearse para estimar valores de acción.

Pseudocódigo

De esta manera, con suficientes iteraciones, los valores de acción estimados deberían aproximarse a los valores de acción verdaderos.

Con esto, ya se puede construir un método similar a la iteración de políticas que no depende de un modelo. Para lograrlo, se reemplazan los pasos de evaluación de la política y mejora de la política por los procesos descritos anteriormente.

Optimización

Aunque el paso de evaluación puede realizarse utilizando la estimación de Monte Carlo como se describió, suele ser computacionalmente ineficiente. Como ya se ha visto, los métodos de Monte Carlo normalmente requieren una gran cantidad de muestras para producir estimaciones razonablemente precisas. Si seguimos una estructura similar a la de la iteración de políticas, esta ineficiencia se magnifica: después de cada mejora de la política, es necesario volver a ejecutar la estimación de Monte Carlo para re-evaluar la nueva política, lo que genera una sobrecarga considerable y un aprendizaje lento.

Una alternativa más natural es actualizar la política inmediatamente después de procesar cada episodio. En lugar de esperar a completar una evaluación completa de la política, se permite que el agente refine su comportamiento episodio por episodio, utilizando las estimaciones de valor de acción más recientes.

Esto da lugar a un método que se asemeja más a la iteración de valores: combina aspectos de evaluación y mejora en un solo paso. Esto incrementa la eficiencia de las muestras y aumenta la velocidad de cómputo.

Pseudocódigo

Este algoritmo sigue un marco de trabajo GPI, ya que tiene pasos de evaluación de la política y mejora de la política, y se denomina control Monte Carlo. La principal desventaja de esta implementación específica es la suposición de inicios exploratorios. En los próximos capítulos verás por qué esto es un problema y cómo puede abordarse.

question mark

¿Cuál es la principal ventaja de utilizar valores de acción en lugar de valores de estado en el control Monte Carlo?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 3

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

course content

Contenido del Curso

Introducción al Aprendizaje por Refuerzo

Introducción al Aprendizaje por Refuerzo

1. Teoría Central de RL
2. Problema del Bandido de Varios Brazos
3. Programación Dinámica
4. Métodos de Monte Carlo
5. Aprendizaje por Diferencia Temporal

book
Control Monte Carlo

Al reemplazar el paso de evaluación de la política en el algoritmo estándar de iteración de políticas con las técnicas de estimación Monte Carlo descritas en el capítulo anterior, ya podemos derivar una nueva variación de la iteración de políticas—una que se basa en la experiencia muestreada en lugar de la programación dinámica.

Sin embargo, existe una limitación crítica. En la iteración de políticas tradicional, el paso de mejora de la política depende de tener acceso a un modelo completo del entorno. Específicamente, para actualizar la política, utilizamos la siguiente expresión:

π(s)arg maxas,rp(s,rs,a)(r+γv(s))\pi(s) \gets \argmax_a \sum_{s', r} \textcolor{red}{p(s', r | s, a)} \Bigl(r + \gamma v(s')\Bigr)

Esta ecuación asume que conocemos las probabilidades de transición p(s,rs,a)p(s', r | s, a). Pero este es precisamente el problema: los métodos Monte Carlo están diseñados para entornos sin modelo, donde la dinámica de transición del entorno es desconocida. Si se dispone de un modelo completo, entonces sería preferible utilizar programación dinámica en todo momento, incluso para la evaluación de la política, ya que sería más eficiente y preciso.

Por lo tanto, aunque sustituir los métodos Monte Carlo para la estimación de valores es un paso hacia el aprendizaje por refuerzo sin modelo, también debemos encontrar una manera de realizar la mejora de la política sin depender del conocimiento del modelo. Esto requiere cambiar de la función de valor de estado a la función de valor de acción.

¿Por qué valores de acción?

Al utilizar valores de acción, es posible realizar la mejora de la política sin necesidad de un modelo del entorno. En lugar de depender de las probabilidades de transición para calcular los retornos esperados, podemos seleccionar directamente las acciones que parecen ofrecer el mayor valor. El paso de mejora de la política se convierte entonces en:

π(s)arg maxaq(s,a)sS\pi(s) \gets \argmax_a q(s, a) \qquad \forall s \in S

Y no es difícil demostrar que la nueva política no es peor que la anterior, ya que el teorema de mejora de la política aún se puede aplicar:

qπk(s,πk+1(s))=qπk(s,arg maxaqπk(s,a))=maxaqπk(s,a)qπk(s,πk(s))=vπk(s)\begin{aligned} q_{\pi_{k}}(s, \pi_{k+1}(s)) &= q_{\pi_k}(s, \argmax_a q_{\pi_k}(s, a))\\ &= \max_a q_{\pi_k}(s, a)\\ &\ge q_{\pi_k}(s, \pi_k(s))\\ &= v_{\pi_k}(s) \end{aligned}

Y, al igual que con la programación dinámica, este teorema garantiza que πk+1\pi_{k+1} es mejor que πk\pi_k, o que ambas son iguales y óptimas.

Estimación de la Función de Valor de Acción

El proceso de estimación es casi idéntico al de la función de valor de estado. Todas las ideas utilizadas para estimar valores de estado pueden emplearse para estimar valores de acción.

Pseudocódigo

De esta manera, con suficientes iteraciones, los valores de acción estimados deberían aproximarse a los valores de acción verdaderos.

Con esto, ya se puede construir un método similar a la iteración de políticas que no depende de un modelo. Para lograrlo, se reemplazan los pasos de evaluación de la política y mejora de la política por los procesos descritos anteriormente.

Optimización

Aunque el paso de evaluación puede realizarse utilizando la estimación de Monte Carlo como se describió, suele ser computacionalmente ineficiente. Como ya se ha visto, los métodos de Monte Carlo normalmente requieren una gran cantidad de muestras para producir estimaciones razonablemente precisas. Si seguimos una estructura similar a la de la iteración de políticas, esta ineficiencia se magnifica: después de cada mejora de la política, es necesario volver a ejecutar la estimación de Monte Carlo para re-evaluar la nueva política, lo que genera una sobrecarga considerable y un aprendizaje lento.

Una alternativa más natural es actualizar la política inmediatamente después de procesar cada episodio. En lugar de esperar a completar una evaluación completa de la política, se permite que el agente refine su comportamiento episodio por episodio, utilizando las estimaciones de valor de acción más recientes.

Esto da lugar a un método que se asemeja más a la iteración de valores: combina aspectos de evaluación y mejora en un solo paso. Esto incrementa la eficiencia de las muestras y aumenta la velocidad de cómputo.

Pseudocódigo

Este algoritmo sigue un marco de trabajo GPI, ya que tiene pasos de evaluación de la política y mejora de la política, y se denomina control Monte Carlo. La principal desventaja de esta implementación específica es la suposición de inicios exploratorios. En los próximos capítulos verás por qué esto es un problema y cómo puede abordarse.

question mark

¿Cuál es la principal ventaja de utilizar valores de acción en lugar de valores de estado en el control Monte Carlo?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 3
some-alt