强化学习:动态规划和蒙特卡罗方法—第二部分

强化学习:动态规划和蒙特卡罗方法—第二部分

介绍两种简单的迭代技术来解决马尔可夫决策过程

Image by Wil Stewart on Unsplash

在前一篇文章《第一部分》中,我们将马尔可夫决策过程(MDP)作为解决任何强化学习(RL)问题的范例进行了阐述。然而,讨论的总体框架并没有提及解决MDP的系统性方法。我们排除了使用线性技术(如矩阵求逆),并简要提及了使用迭代技术来解决MDP的可能性。要重新访问MDP的思想,请查看下面的第一部分:

强化学习:马尔可夫决策过程——第一部分

介绍强化学习的核心——马尔可夫决策过程

pub.towardsai.net

从本文开始,我们将讨论迭代技术和解决MDP的方法。具体而言,在本文中,我们将介绍两种迭代方法来解决MDP——动态规划和蒙特卡洛方法。

1. 动态规划

首先让我们来讨论动态规划。动态规划是一种利用问题结构的两个特性的迭代解决技术:

  • 子问题可以多次重复出现
  • 每次重复出现时的解决方案可以被缓存和重用

因此,这在MDP问题中特别适用,因为贝尔曼方程可能给出状态值函数 V(s) 的递归分解。让我们重新审视一下贝尔曼方程:

然而,动态规划的区别在于,对于特定的策略 π ,我们使用贝尔曼方程将时间步 t 的相邻状态 V(s') 映射到当前状态 V(s) 的时间步 t+1 。下面的图表给出了类似的直观理解(下面的 k 变量是迭代步骤)。还要注意,在动态规划算法中,以下迭代适用于每个状态