Estaba leyendo las notas de la conferencia de Andrew Ng sobre el aprendizaje por refuerzo, y estaba tratando de entender por qué la iteración de políticas convergía con la función de valor óptimo y la política óptima .
La iteración de la política de recuperación es:
¿Por qué es que un algoritmo codicioso conduce a una política óptima y una función de valor óptimo? (Sé que los algoritmos codiciosos no siempre garantizan eso, o pueden quedar atrapados en los óptimos locales, por lo que solo quería ver una prueba de su optimización del algoritmo).
Además, me parece que la iteración de políticas es algo análogo al agrupamiento o al descenso de gradiente. Para la agrupación, porque con la configuración actual de los parámetros, optimizamos. Similar al descenso de gradiente porque solo elige algún valor que parece aumentar alguna función. Estos dos métodos no siempre convergen a máximos óptimos, y estaba tratando de entender cómo este algoritmo era diferente de los anteriores que mencioné.
Estos son mis pensamientos hasta ahora:
Digamos que comenzamos con alguna política , luego, después del primer paso, para esa política fija tenemos que:
Donde V ^ {(1)} es la función de valor para la primera iteración. Luego, después del segundo paso, elegimos una nueva política para aumentar el valor de . Ahora, con la nueva política , si hacemos el segundo paso del algoritmo, la siguiente desigualdad es cierta:
Debido a que elegimos en el segundo paso para aumentar la función de valor en el paso anterior (es decir, para mejorar . Hasta ahora, está claro que elegir solo puede aumentar V ^ {(1)}, porque así es como elegimos . Sin embargo, mi confusión viene en el paso de repetición porque una vez que repetimos y volvemos al paso 1, en realidad cambiamos las cosas por completo porque volvemos a calcular para la nueva política . Lo que da:
pero NO es:
Lo que parece ser un problema porque se eligió para mejorar , y no esta nueva . Básicamente, el problema es que garantiza mejorar haciendo en lugar de cuando la función de valor es . Pero en el paso de repetición cambiamos a , pero no veo cómo eso garantiza que la función de valor mejore monotónicamente en cada repetición porque se calculó para mejorar la función de valor cuando las funciones de valor permanecen en, pero el paso 1 cambia a (lo cual es malo porque I solo mejoró la función de valor anterior que teníamos).
Respuestas:
Creo que la parte que falta es que está garantizado por la misma razón por la que podemos pedir . Esa es esencialmente la definición de que una política es mejor que otra: que su función de valor es mayor o igual en todos los estados. Lo ha garantizado eligiendo las acciones de maximización: ningún valor de estado puede ser peor que antes, y si solo una opción de acción ha cambiado para elegir una mejor acción de maximización, entonces ya sabe (pero puede que no haya calculado) que el para ese estado será mayor de lo que fue para . π 2 ≥ π 1 V π 2 ( s ) V π 1 ( s )Vπ2≥Vπ1 π2≥π1 Vπ2(s) Vπ1(s)
Cuando elegimos maximizar los resultados para generar , no sabemos cuáles los nuevos para cualquier estado, pero sí sabemos que .V π 2 ( s ) ∀ s : V π 2 ( s ) ≥ V π 1 ( s )π2 Vπ2(s) ∀s:Vπ2(s)≥Vπ1(s)
Por lo tanto, al volver al ciclo y calcular para la nueva política, se garantiza que tendrá los mismos valores o más altos que antes, y cuando se trata de actualizar la política nuevamente, . π 3 ≥ π 2 ≥ π 1Vπ2 π3≥π2≥π1
fuente
Primero veamos por qué funciona el algoritmo de iteración de políticas. Tiene dos pasos.
Paso de evaluación de políticas:
Aquí, los términos son recompensas inmediatas y las filas correspondientes de la matriz de transición.rdn,Pdn
Estos términos dependen de la políticaΠn
Resolviendo el sistema de ecuaciones anterior, podemos encontrar los valores devn
Paso de mejora de la política:
Supongamos que pudimos encontrar una nueva política tal queΠn+1
Ahora, según la nueva política , podemos encontrar , digamos que esta es la ecuación 2.Πn+1 vn+1=rdn+1+γPdn+1vn+1
Vamos a mostrar que ;vn+1≥vn
es decir, esencialmente para todos los estados, la política recientemente elegida ofrece un mejor valor en comparación con la política anteriorΠn+1 Πn
Prueba:
De la ecuación 2, tenemos,
De, , tenemos1&2
Esencialmente, los valores aumentan monotónicamente con cada iteración.
Esto es importante para entender por qué la Interación de políticas no se atascará en un máximo local.
Una política no es más que un espacio de acción estatal.
En cada paso de iteración de política, intentamos encontrar al menos una acción de estado que sea diferente entre y y ver si . Solo si se cumple la condición, calcularemos la solución al nuevo sistema de ecuaciones lineales.Πn+1 Πn rdn+1+γPdn+1vn≥rdn+γPdnvn
Suponga que y son el óptimo global y local respectivamente.Π∗ Π#
Implica,v∗≥v#
Suponga que el algoritmo está atascado en el óptimo local.
Si este es el caso, el paso de mejora de la política no se detendrá en el espacio de acción de estado óptimo local , ya que existe al menos una acción de estado en que es diferente de y produce un valor más alto de comparación conΠ# Π∗ Π# v∗ v#
o, en otras palabras,
Por lo tanto, la iteración de la política no se detiene en un óptimo local
fuente