贝尔曼最优方程

贝尔曼最优方程:

\[\begin{align*} V^*(s) &= \max_{a\in\mathcal{A}}\left\{r(s,a) + \gamma\sum_{s'\in\mathcal{S}}p(s'|s,a)V^*(s')\right\}\\ Q^*(s,a) &= r(s,a) + \gamma\sum_{s'\in\mathcal{S}}p(s'|s,a)\max_{a'\in\mathcal{A}}Q^*(s',a') \end{align*} \]

对公式的解释

  • 符号说明

    • \(V^*(s)\):最优状态价值函数,表示在所有可能的策略下,从状态 \(s\) 开始所能获得的期望累计折扣回报的最大值。
    • \(Q^*(s,a)\):最优动作价值函数,表示在所有可能的策略下,从状态 \(s\) 执行动作 \(a\) 后,所能获得的期望累计折扣回报的最大值。
    • \(\mathcal{A}\):动作空间,即所有可能动作的集合。
    • \(\mathcal{S}\):状态空间,即所有可能状态的集合。
    • \(r(s,a)\):在状态 \(s\) 执行动作 \(a\) 后所获得的即时奖励。
    • \(\gamma\):折扣因子,取值范围是 \([0, 1]\),用于衡量未来奖励的现值,\(\gamma\) 越接近 0,表明智能体越注重即时奖励;\(\gamma\) 越接近 1,则越看重未来的奖励。
    • \(p(s'|s,a)\):在状态 \(s\) 执行动作 \(a\) 后转移到状态 \(s'\) 的概率。
  • 公式含义

    • 对于 \(V^*(s)\) 的公式:要计算状态 \(s\) 的最优价值,需要遍历在状态 \(s\) 下所有可能的动作 \(a\) 。对于每个动作 \(a\) ,考虑执行该动作后获得的即时奖励 \(r(s,a)\) ,以及后续所有可能转移到的状态 \(s'\) 的最优价值 \(V^*(s')\) (乘以状态转移概率 \(p(s'|s,a)\) 和折扣因子 \(\gamma\) ) ,然后取所有这些计算结果中的最大值,作为状态 \(s\) 的最优价值。
    • 对于 \(Q^*(s,a)\) 的公式:计算从状态 \(s\) 执行动作 \(a\) 的最优动作价值时,先考虑执行动作 \(a\) 获得的即时奖励 \(r(s,a)\) 。接着,考虑转移到后续所有可能状态 \(s'\) 的情况,对于每个后续状态 \(s'\) ,在其所有可能的动作 \(a'\) 中选择能使 \(Q^*(s',a')\) 最大的动作(即 \(\max_{a'\in\mathcal{A}}Q^*(s',a')\) ) ,乘以状态转移概率 \(p(s'|s,a)\) 和折扣因子 \(\gamma\) 并求和,最后与即时奖励相加,得到 \(Q^*(s,a)\)

这两个公式是强化学习中用于求解最优策略的核心方程,它们通过迭代的方式不断更新最优价值函数,帮助智能体找到能最大化长期回报的行为策略。

posted @ 2025-03-19 20:31  icuic  阅读(212)  评论(0)    收藏  举报