Si se conoce el modelo del ambiente, osea las transiciones de probabilidad ( ) y los valores esperados de recompensas ( ), las ecuaciones de optimalidad de Bellman nos representan un sistema de ecuaciones y incognitas.
Consideremos primero como calcular la función de valor dada una política arbitraria .
donde es la probabilidad de tomar la acción en estado bajo la política .
Podemos hacer aproximaciones sucesivas, evaluando en
términos de .
Podemos entonces definir un algoritmo de evaluación iterativa de políticas como se muestra en la tabla 11.1.
Una de las razones para calcular la función de valor de una política es para tratar de encontrar mejores políticas. Dada una función de valor para una política dada, podemos probar una acción y ver si su es mejor o peor que el .
En lugar de hacer un cambio en un estado y ver el resultado, se pueden considerar cambios en todos los estados considerando todas las acciones de cada estado, seleccionando aquella que parezca mejor de acuerdo a una política greedy.
Podemos entonces calcular una nueva política y continuar hasta que no mejoremos.
Esto sugiere, partir de una política () y calcular la función de valor (), con la cual encontrar una mejor política () y así sucesivamente hasta converger a y .
A este procedimiento se llama iteración de políticas y viene descrito en la tabla 11.2.
Uno de los problemas de iteración de políticas es que cada iteración involucra evaluación de políticas que requiere recorrer todos los estados varias veces.
Sin embargo, el paso de evaluación de política lo podemos truncar de
varias formas, sin perder la garantía de convergencia. Una de ellas
es pararla después de recorrer una sola vez todos los estados. A esta
forma se le llama iteración de valor (value iteration). En
particular se puede escribir combinando la mejora en la política y la
evaluación de la política truncada como sigue:
Se puede ver como expresar la ecuación de Bellman en una regla de actualización. Es muy parecido a la regla de evaluación de políticas, solo que se evalúa el máximo sobre todas las acciones (ver tabla 11.3).
Para espacios muy grandes, el ver todos los estados puede ser computacionalmente muy caro. Una opción es hacer estas actualizaciones al momento de estar explorando el espacio, y por lo tanto determinando sobre qué estados se hacen las actualizaciones.
El hacer estimaciones en base a otras estimaciones se conoce también como bootstrapping.