深度强化学习课程文档
贝尔曼方程:简化我们的价值评估
并获得增强的文档体验
开始使用
贝尔曼方程:简化我们的价值评估
贝尔曼方程 简化了我们状态价值或状态-动作价值的计算。

根据我们目前所学的知识,我们知道如果我们要计算(状态的价值),我们需要计算从该状态开始的回报,然后永远遵循策略。 (我们在以下示例中定义的策略是贪婪策略;为了简化,我们不折扣奖励)。
因此要计算,我们需要计算预期奖励的总和。因此

然后,为了计算,我们需要计算从该状态开始的回报.

因此您可能已经注意到,我们正在重复计算不同状态的价值,如果您需要为每个状态价值或状态-动作价值都这样做,这可能会很乏味。
与其计算每个状态或每个状态-动作对的预期回报,我们可以使用贝尔曼方程。(提示:如果您知道什么是动态规划,这非常相似!如果您不知道它是什么,也没关系!)
贝尔曼方程是一个递归方程,它的工作原理如下:与其从每个状态的开头开始并计算回报,我们可以将任何状态的价值视为
即时奖励+ 后续状态的折扣价值( ) .

如果我们回到我们的例子,我们可以说状态 1 的价值等于如果我们从该状态开始的预期累积回报。

为了计算状态 1 的价值:如果智能体从状态 1 开始,然后在所有时间步中遵循策略的奖励总和。
这等价于= 即时奖励+ 下一个状态的折扣价值

为了简洁起见,这里我们不进行折扣,所以 gamma = 1。但是您将在本单元的 Q-学习部分学习一个 gamma = 0.99 的示例。
- 的价值= 即时奖励+ 下一个状态的折扣价值( ).
- 等等。
总结一下,贝尔曼方程的思想是,与其将每个价值计算为预期回报的总和,这是一个漫长的过程,我们不如将价值计算为即时奖励 + 后续状态的折扣价值的总和。
在进入下一节之前,思考一下 gamma 在贝尔曼方程中的作用。如果 gamma 的值非常低(例如 0.1 甚至 0)会发生什么?如果该值为 1 会发生什么?如果该值非常高,例如一百万,会发生什么?
< > 在 GitHub 上更新