《强化学习数学原理》学习笔记3——贝尔曼方程核心概念梳理

贝尔曼方程核心概念梳理

1. 状态价值(State Value)

v π ( s ) = E [ G t ∣ S t = s ] v_\pi(s) = \mathbb{E}[G_t | S_t = s] vπ(s)=E[Gt∣St=s]

解释:策略 π \pi π 下,当前处于状态 s s s 时,从该状态往后所有回报的期望。

2. 动作价值(Action Value)

q π ( s , a ) = E [ G t ∣ S t = s , A t = a ] q_\pi(s, a) = \mathbb{E}[G_t | S_t = s, A_t = a] qπ(s,a)=E[Gt∣St=s,At=a]

解释:策略 π \pi π 下,当前处于状态 s s s 且选动作 a a a 时,从该"状态 - 动作对"往后所有回报的期望。

3. 贝尔曼方程(元素形式)

v π ( s ) = ∑ a π ( a ∣ s ) [ ∑ r p ( r ∣ s , a ) r + γ ∑ s ′ p ( s ′ ∣ s , a ) v π ( s ′ ) ] = ∑ a π ( a ∣ s ) q π ( s , a ) \begin{align*} v_{\pi}(s) &= \sum_{a} \pi(a|s) \left[ \sum_{r} p(r|s,a)r + \gamma \sum_{s'} p(s'|s,a)v_{\pi}(s') \right] \\ &= \sum_{a} \pi(a|s) q_{\pi}(s, a) \end{align*} vπ(s)=a∑π(a∣s)[r∑p(r∣s,a)r+γs′∑p(s′∣s,a)vπ(s′)]=a∑π(a∣s)qπ(s,a)

解释:状态 s s s 的价值 = 该状态下各动作的选择概率 × 对应动作价值,再求和;而动作价值包含"即时回报期望 + 后续状态价值的折扣期望"。

4. 贝尔曼方程(矩阵 - 向量形式)

v π = r π + γ P π v π v_\pi = r_\pi + \gamma P_\pi v_\pi vπ=rπ+γPπvπ

解释:用矩阵、向量整体表示状态价值关系, v π v_\pi vπ 是状态价值向量, r π r_\pi rπ 关联回报, P π P_\pi Pπ 关联状态转移,体现状态价值与后续状态、即时回报的线性联系。

5. 贝尔曼方程的解法

解析解(Closed - form Solution):通过代数运算直接求精确的状态价值表达式。

迭代解(Iterative Solution):通过不断迭代更新,逐步逼近状态价值的准确值。

最后贴一下原书第2章最后的问答,对笔者很有帮助:

问题1:状态价值与回报之间有什么关系?

答:某一状态的价值是智能体从该状态出发所能获得的回报的均值。

问题2:我们为何关注状态价值?

答:状态价值可用于评估策略。事实上,最优策略是基于状态价值来定义的。这一点在下一章会更加清晰。

问题3:我们为何关注贝尔曼方程?

答:贝尔曼方程描述了所有状态价值之间的关系。它是分析状态价值的工具。

问题4:为何求解贝尔曼方程的过程被称为策略评估?

答:求解贝尔曼方程会得到状态价值。由于状态价值可用于评估一个策略,因此求解贝尔曼方程可被解读为对相应策略的评估。

问题5:我们为何需要研究贝尔曼方程的矩阵 - 向量形式?

答:贝尔曼方程涉及为所有状态建立的一组线性方程。为了求解状态价值,我们必须将所有线性方程整合起来。矩阵 - 向量形式是这些线性方程的简洁表达式。

问题6:状态价值与动作价值之间有什么关系?

答:一方面,一个状态的价值是该状态下各动作价值的均值。另一方面,一个动作的价值依赖于智能体在采取该动作后可能转移到的后续状态的价值。

问题7:我们为何关注给定策略无法选择的动作的价值?

答:尽管给定的策略无法选择某些动作,但这并不意味着这些动作不好。相反,有可能给定的策略并非良策,从而错失了最佳动作。为了找到更好的策略,我们必须持续探索不同的动作,即便其中一些动作可能不会被给定的策略所选择。

相关推荐
明明真系叻7 分钟前
最优传输理论学习(1)+PINN文献阅读
深度学习·学习
文火冰糖的硅基工坊1 小时前
[人工智能-大模型-66]:模型层技术 - 两种编程范式:数学函数式编程与逻辑推理式编程,构建起截然不同的智能系统。
人工智能·神经网络·算法·1024程序员节
笨鸟笃行1 小时前
百日挑战之单词篇(第三天)
学习
im_AMBER1 小时前
Leetcode 34
算法·leetcode
im_AMBER1 小时前
Leetcode 31
学习·算法·leetcode
Miqiuha1 小时前
观察者模式学习
学习·观察者模式
百锦再2 小时前
破茧成蝶:全方位解析Java学习难点与征服之路
java·python·学习·struts·kafka·maven·intellij-idea
雨奔2 小时前
Django 学习路线图
学习·django·sqlite
吃着火锅x唱着歌2 小时前
LeetCode 74.搜索二维矩阵
算法·leetcode·矩阵
老王熬夜敲代码2 小时前
C++继承回顾
c++·笔记