Aprendizaje por refuerzo Programación dinámica y Monte Carlo – Parte 2
Aprendizaje por refuerzo Programación dinámica y Monte Carlo - Parte 2
Presentando dos técnicas iterativas simples para resolver el Proceso de Decisión de Markov

En el artículo anterior – Parte 1 – hemos formulado el Proceso de Decisión de Markov (MDP) como un paradigma para resolver cualquier problema de Aprendizaje por Refuerzo (RL). Sin embargo, el marco general discutido no mencionó una solución sistemática para el MDP. Hemos descartado el uso de técnicas lineales, como la inversión de matrices, y brevemente planteamos la posibilidad de utilizar técnicas iterativas para resolver el MDP. Para revisar la idea de MDP, consulta la Parte I a continuación:
Aprendizaje por Refuerzo: Proceso de Decisión de Markov – Parte 1
Presentando el pilar del Aprendizaje por Refuerzo: El Proceso de Decisión de Markov
pub.towardsai.net
A partir de este artículo en adelante, relacionado con RL, discutiremos técnicas iterativas y soluciones para el MDP. Específicamente, en este artículo, presentaremos 2 métodos iterativos para resolver el MDP: Programación Dinámica y Métodos de Monte Carlo.
1. Programación Dinámica
Primero hablaremos sobre la Programación Dinámica. La Programación Dinámica es una técnica de solución iterativa que utiliza 2 propiedades de la estructura del problema:
- El subproblema puede repetirse muchas veces
- Las soluciones en cada repetición se pueden almacenar en caché y reutilizar
Por lo tanto, esto es especialmente aplicable a problemas de MDP, ya que la ecuación de Bellman puede proporcionar una descomposición recursiva de la Función de Valor del Estado V(s)
. Revisemos la Ecuación de Bellman para V(s)
:
- Investigadores de Virginia Tech y Microsoft presentan el Algoritmo ...
- Las mejores herramientas de IA para estudiantes (septiembre de 2023)
- Utilice el uso compartido de tarjetas de modelo de Amazon SageMaker...
Sin embargo, la diferencia en la Programación Dinámica es que, para una política particular π
, estamos utilizando la Ecuación de Bellman para mapear el V(s')
vecino del paso de tiempo t
al estado actual V(s)
del paso de tiempo t+1
. El diagrama a continuación proporciona una intuición similar (la variable k
a continuación es el paso de iteración). Además, ten en cuenta que esta iteración se aplica en cada estado en el algoritmo de Programación Dinámica.