Métodos de Monte Carlo

Los métodos de Monte Carlo requieren solo experiencia: secuencias de muestra de estados, acciones y recompensas de la interacción real o simulada con un entorno.

El aprendizaje a partir de la experiencia real es sorprendente porque no requiere un conocimiento previo de la dinámica del entorno, pero aún así puede lograr un comportamiento óptimo.

El aprendizaje a partir de la experiencia simulada también es poderoso. Aunque se requiere un modelo, el modelo solo necesita generar transiciones de muestra, no las distribuciones de probabilidad completas de todas las transiciones posibles que se requieren para la programación dinámica (PD).

En un número sorprendente de casos, es fácil generar experiencia muestreada de acuerdo con las distribuciones de probabilidad deseadas, pero no es factible obtener las distribuciones en forma explícita.

Los métodos de Monte Carlo son formas de resolver el problema del aprendizaje de refuerzo basándose en el promedio de los retornos de la muestra. Para garantizar que se disponga de retornos bien definidos, aquí definimos los métodos de Monte Carlo solo para tareas episódicas.

El término Monte Carlo suele utilizarse de forma más amplia para cualquier método de estimación cuyo funcionamiento implica un componente aleatorio significativo. Es una manera de transformar un problema determinista a uno estocástico.

Predicción de Montecarlo

Comenzamos considerando los métodos de Monte Carlo para aprender la función de valor del estado para una política dada. Recordemos que el valor de un estado es el retorno esperado (la recompensa futura acumulada esperada descontada) a partir de ese estado.

Una manera obvia de estimarlo a partir de la experiencia, entonces, es simplemente promediar los retornos observados después de las visitas a ese estado. A medida que se observan más retornos, el promedio debería converger al valor esperado .

En particular, supongamos que deseamos estimar vπ(s), el valor de un estado s bajo la política π, dado un conjunto de episodios obtenidos siguiendo π y pasando por s. Cada ocurrencia del estado s en un episodio se llama visita a s.

Por supuesto, s puede ser visitado varias veces en el mismo episodio; llamemos a la primera vez que se visita en un episodio la primera visita a s. El método MC de la primera visita estima vπ(s) como el promedio de los retornos posteriores a las primeras visitas a s, mientras que el método MC de cada visita promedia los retornos posteriores a todas las visitas a s. Estos dos métodos de Monte Carlo (MC) son muy similares pero tienen propiedades teóricas ligeramente diferentes.

La primera visita de MC se muestra en forma de procedimiento en el recuadro.

Predicción con la primera visita MC, para estimar

Entrada: una política π a ser evaluada.

Inicializar:

V(s)R arbitrariamente para todo sS

Devolucion(s) una lista vacía para todo sS

Bucle para siempre (para cada episodio):

Generar un episodio siguiendo π:

S0,A0,R1,S1,A1,R2,,ST1,AT1,RT

G0

Bucle para cada paso del episodio, t=T1,T2,,0:

GγG+Rt+1

Hasta que St esté en S0,S1,,St+1:

Añadir G a Devolucion(St)

V(St)promedio(Devolucion(St))

Estimación de valores de acción mediante Monte Carlo

Si no hay un modelo disponible, resulta especialmente útil estimar valores de acción (los valores de los pares estado-acción) en lugar de valores de estado.

El problema de evaluación de políticas para valores de acción es estimar qπ(s,a), el retorno esperado al comenzar en el estado s, tomar la acción a y luego seguir la política π. Los métodos de Monte Carlo para esto son esencialmente los mismos que los que se acaban de presentar para los valores de estado, excepto que ahora hablamos de visitas a un par estado-acción en lugar de a un estado. Se dice que un par estado-acción s,a es visitado en un episodio si alguna vez se visita el estado s y se toma la acción a en él.

La única complicación es que muchos pares de acciones y estados pueden no ser visitados nunca. Si π es una política determinista, entonces al seguir π se observarán retornos solo para una de las acciones de cada estado. Sin retornos al promedio, las estimaciones de Monte Carlo de las otras acciones no mejorarán con la experiencia. Este es un problema serio porque el propósito de aprender los valores de las acciones es ayudar a elegir entre las acciones disponibles en cada estado. Para comparar alternativas necesitamos estimar el valor de todas las acciones de cada estado, no solo de la que actualmente favorecemos.

Éste es el problema general de mantener la exploración. Para que la evaluación de políticas funcione en el caso de los valores de acción, debemos asegurar una exploración continua. Una forma de hacerlo es especificando que los episodios comienzan en un par estado-acción, y que cada par tiene una probabilidad distinta de cero de ser seleccionado como inicio. Esto garantiza que todos los pares estado-acción serán visitados una cantidad infinita de veces en el límite de una cantidad infinita de episodios. A esto lo llamamos el supuesto de inicios de exploración.

En particular, cuando se aprende directamente de la interacción real con un entorno. El enfoque alternativo más común para garantizar que se encuentren todos los pares de estado-acción es considerar solo políticas que sean estocásticas con una probabilidad distinta de cero de seleccionar todas las acciones en cada estado.

Control Monte Carlo

Ahora estamos listos para considerar cómo se puede utilizar la estimación de Monte Carlo en el control, es decir, para aproximar políticas óptimas. La idea general es proceder de acuerdo con la idea de iteración generalizada de políticas (GPI).

Realizamos pasos completos alternos de evaluación de políticas y mejora de políticas, comenzando con una política arbitraria π0 y terminando con la política óptima y la función de valor de acción óptima: π0Eqπ0Iπ1Eqπ1Iπ2EIπEq, donde E denota la evaluación de la política y I denota la mejora de política.

La mejora de la política se realiza haciendo que la política sea codiciosa con respecto a la función de valor actual. En este caso, tenemos una función de valor de acción y, por lo tanto, no se necesita ningún modelo para construir la política codiciosa. Para cualquier función de valor de acción q, la política codiciosa correspondiente es la que, para cada sS, elige de manera determinista una acción con el valor de acción máximo: π(s)=argmaxaq(s,a).

La mejora de la política puede entonces realizarse construyendo cada πk+1 como la política codiciosa con respecto a qk. El teorema de mejora de política aplicado a πk y πk+1 porque, para todo sS, qπk(s,πk+1(s))=qπk(s,argmaxaqπk(s,a))=maxaqπk(s,a)qπk(s,πk(s))vπk(s).

Esto, a su vez, nos asegura que el proceso general converge hacia la política óptima y la función de valor óptima. De esta manera, los métodos de Monte Carlo pueden utilizarse para encontrar políticas óptimas dados solo episodios de muestra y ningún otro conocimiento de la dinámica del entorno.

Para obtener fácilmente esta garantía de convergencia para el método de Monte Carlo, hemos hecho dos suposiciones poco probables:

Una era que los episodios tienen inicios exploratorios.

Y la otra era que la evaluación de políticas se podía hacer con un número infinito de episodios.

Para obtener un algoritmo práctico tendremos que eliminar ambas suposiciones.

La evaluación de políticas suele asumirse sobre episodios infinitos, pero este supuesto puede eliminarse. Tanto en Programación Dinámica (DP) como en Monte Carlo, la convergencia es asintótica. Para abordar esto, se puede aproximar qπk en cada evaluación, estableciendo límites de error y asegurando que sean pequeños. Aunque este método garantiza una buena convergencia teórica, puede requerir demasiados episodios, volviéndolo poco práctico para problemas grandes.

Otro enfoque para evitar episodios infinitos es no completar la evaluación antes de mejorar la política. En cada paso, la función de valor se mueve hacia qπk, pero sin esperar una aproximación completa. Un caso extremo es la iteración de valor, donde solo se realiza una evaluación antes de mejorar la política. Aún más extremo es hacerlo por estado, alternando mejora y evaluación continuamente.

Para la iteración de políticas de Monte Carlo es natural alternar entre evaluación y mejora episodio por episodio. Después de cada episodio, los retornos observados se utilizan para la evaluación de políticas y luego la política se mejora en todos los estados visitados en el episodio. Un algoritmo simple completo en esta línea, que llamamos Monte Carlo ES, para Monte Carlo con inicios exploratorios, se presenta en pseudocódigo en el recuadro de la página siguiente.

Monte Carlo ES, para estimar ππ

Inicializar:

π(s)A(s) arbitrariamente, para todo sS

Q(s,a)R aribitrariamente, para todo sS,aA(s)

Devolucion(s,a)empty, para todo sS,aA(s)

Bucle para siempre (para cada episodio):

Escoge S0S,A0A(S0) aleatoriamente tales que todos los pares tienen probabilidad >0

Genera un episodio desde S0,A0, siguiendo π: S0,A0,R1,,ST1,AT1,RT

G0

Bucle para cada episodio, t=T1,T2,,0:

GγG+Rt+1

Hasta que el par St,At aparezca en S0,A0,S1,A1,,St1,At1:

Añadir G a Devolucion(St,At)

Q(St,At)promedio(Devolucion(St,At))

π(St)argmaxaQ(St,a)

Control de Montecarlo sin inicios exploratorios

¿Cómo podemos evitar la improbable suposición de que inicios exploratorios? La única forma general de garantizar que todas las acciones se seleccionen con una frecuencia infinita es que el agente continúe seleccionándolas. Existen dos enfoques para garantizar esto, que dan como resultado lo que llamamos métodos on-policy y métodos off-policy.

Los métodos on-policy intentan evaluar o mejorar la política que se utiliza para tomar decisiones.

Los métodos off-policy evalúan o mejoran una política diferente de la utilizada para generar los datos.

En los métodos de control basados on-policy, la política es generalmente blanda (soft), lo que significa que π(a|s)>0 para todos los sS y todos los aA(s), pero gradualmente se va acercando cada vez más a una política óptima determinista.

El método de política que presentamos en esta sección utiliza políticas ε-codiciosas, lo que significa que la mayoría de las veces eligen una acción que tiene un valor de acción estimado máximo, pero con probabilidad ε seleccionan una acción al azar. (con ε(0,1) )

Todas las acciones no codiciosas se les da la probabilidad miníma de ser seleccioandas ε/|A(s)| y a la acción con mayor valor 1ε+ε/|A(s)|.

La idea general del control de Monte Carlo en función de la política sigue siendo la del GPI. Al igual que en el método Monte Carlo ES, utilizamos métodos de control de Monte Carlo de primera visita para estimar la función de valor de la acción para la política actual.