强化学习基础
本讲迁移自原课程讲义,经 AI 事实核查未发现存疑项,未逐页人工审核;如有出入,以原始论文和 CS285 课程资料为准。
学习目标
- 写出 MDP 五元组 $(\mathcal{S},\mathcal{A},P,r,\gamma)$,并推导轨迹分布 $p_\theta(\tau)$。
- 理解 RL 目标 $J(\theta)=\mathbb{E}_{\tau\sim p_\theta}[\sum_t\gamma^t r_t]$ 与有限/无限时域、平稳分布。
- 掌握 $V^\pi,Q^\pi,A^\pi$ 的定义、相互关系与直觉。
- 能从定义推导贝尔曼期望方程,说清每步假设。
- 掌握"生成样本→估计回报→改进策略"的通用解剖,理解 on/off-policy 与各算法族的样本效率取舍。
模块 01 告诉我们”模仿”有天花板——想做得”最好”,就必须先定义”好”。本模块搭建强化学习的整个数学舞台:用 MDP 形式化问题,用目标函数 定义”好”,用值函数 与贝尔曼方程刻画长期回报的递归结构,最后给出一切 RL 算法共享的”解剖结构”。这些概念是后续每个模块的通用语言。
学习目标
- 写出 MDP 五元组 ,并推导轨迹分布 。
- 理解 RL 目标 与有限/无限时域、平稳分布。
- 掌握 的定义、相互关系与直觉。
- 能从定义推导贝尔曼期望方程,说清每步假设。
- 掌握”生成样本→估计回报→改进策略”的通用解剖,理解 on/off-policy 与各算法族的样本效率取舍。
编者按 · 批判性视角
本讲默认一个”信息丰富、折扣、无限时域”的 MDP——但要清楚它的适用边界。部分单轮、仅终局奖励的 RLVR 可近似看作 contextual bandit(上下文老虎机,最简的单步 RL 设定;定义见下方 §1 的”术语预备”);多轮交互、工具使用或 token 级信用分配则仍具有序列决策结构。另一方面,真实世界大量问题是部分可观测(POMDP),本讲为清晰起见做了简化。学这套 MDP 机器时,请同时记住它”在哪里成立、在哪里失效”。
1. 马尔可夫决策过程 MDP
强化学习研究的问题几乎都能形式化为马尔可夫决策过程(Markov Decision Process, MDP),一个五元组:
| 元素 | 含义 | 说明 |
|---|---|---|
| 状态空间 state space | 可离散或连续(如机器人关节角)。 | |
| 动作空间 action space | 离散(如上下左右)或连续(如力矩)。 | |
| 转移概率 transition | 又称动态 dynamics,通常未知。 | |
| 奖励函数 reward | 标量反馈,定义任务目标。 | |
| 折扣因子 discount | 权衡近期与远期回报,兼具数学与建模意义。 |
马尔可夫性质是 MDP 的灵魂:。它保证”当前状态是历史的充分统计量”,从而最优策略只需依赖当前状态(无需记忆整段历史),这是所有值函数递归成立的前提。
批判性追问:“最优策略只依赖当前状态”——这句总是对的吗?
它读起来像定理,其实是一个条件结论,缺了前提就不成立。
- 它靠两条假设。 只有当(1)环境满足马尔可夫性、(2)智能体能观测到完整状态 时,“只看当前状态”才够。两者缺一不可。
- 反例:真实世界几乎都是部分可观测(POMDP)。 你拿到的是带噪、不完整的观测 ,同一个 可能对应完全不同的真实状态(走廊里两个一模一样的路口)。此时”只看当前观测”的策略必然次优,最优策略不得不依赖历史(见 §10 的信念状态)。
- 藏着一处近乎循环的定义。 这句话之所以”成立”,一半是因为我们把”状态”定义成”历史的充分统计量”——于是它接近同义反复;真正的难点被转移到了”如何构造出一个满足马尔可夫性的状态表示”上。
- 如何补救 / 是否仍开放。 用堆叠帧 / RNN / Transformer 近似信念状态可缓解,但”从原始观测学到马尔可夫状态”至今没有通用解(§10、模块 12)。所以这条”灵魂命题”更该读作:“一旦你能拿到真正的马尔可夫状态,最优策略才只依赖它。”
举例
“赢棋""别摔倒”本身都不是数字,但奖励函数的作用就是把它们压成一个标量 :下棋可设赢 、输 、和 ;学走路可设每稳稳迈出一步 、一摔倒就 并结束。整个任务的”好坏”从此只由这一个数表达,智能体要最大化它的累计值。代价是——目标一旦被压成标量,设计不当就会被”钻空子”:比如只奖励”向前的速度”,机器人可能学会头朝前栽倒着扑,速度分照拿。这也是为什么”奖励怎么定”本身是一门大学问。
前沿实验室视角
把复杂目标压成一个标量 看似只是权宜的简化,DeepMind 却把它抬成了关于智能本质的假说:Silver、Sutton 等在《Reward is Enough》(2021)中主张,仅靠最大化单一标量奖励,或许就足以在足够丰富的环境里催生出感知、语言乃至通用智能等各种能力。它至今有争议(真正的难点被推给了”奖励该怎么定”),但恰说明本讲这个不起眼的 承载着多大的赌注(这条主线的展开见 模块 00 §7)。
术语预备:多臂老虎机 与 上下文老虎机(bandit)
下面会用到”bandit”这个词,先定义清楚——它是理解 MDP 的最佳参照系:
- 多臂老虎机(Multi-armed bandit, MAB):最简单的 RL 雏形。没有状态(或只有一个固定状态),每一轮从 个”臂(arm)“(即动作)中选一个,拉下去得到一个随机奖励,目标是多轮累计奖励最大。名字来自老虎机(“独臂强盗”)。关键特征:动作只影响当下奖励、不改变未来(无状态转移、无序列耦合)——于是它把 RL 的”探索 vs 利用”这单独一个难题拎出来研究:该多拉没试过的臂(探索),还是多拉当前最好的臂(利用)?(它本身也是实用模型:A/B 测试、推荐、临床试验、广告分配。详见 模块 10。)
- 上下文老虎机(Contextual bandit):在 MAB 基础上,每轮先观察一个上下文 / 特征 (相当于”状态”),再选动作 ,得到奖励 ;最优臂随上下文变化。但它仍是单步——动作不影响下一个上下文(上下文由环境 i.i.d. 给出),因此没有长期信用分配、没有动态。可理解为”监督学习 + 只对所选动作给评价式反馈 + 需要探索”。
据此,本讲那条包含链 SL contextual bandit RL 就是”逐层加难度”:SL(有标准答案、全反馈、单步)→ 加”只对所选动作给标量反馈 + 探索” → 上下文老虎机 → 再加”动作改变后续状态”的序列耦合 → 完整 RL。这也解释了为何单轮 RLHF/RLVR 更像上下文老虎机而非深度 MDP:prompt = 上下文,整段回答 = 一个”臂”,奖励 = RM/验证器打分,且这一步不改变”下一个 prompt”(呼应上方编者按与 模块 13)。
本质 Insight:监督学习是 MDP 的退化特例
MDP 是”做决策”的通用形式化语言,而我们熟悉的监督学习(supervised learning, SL)恰是它的退化特例:把时域压成单步、样本 i.i.d.、且每一步都有密集标签,MDP 就塌缩成 SL。沿这条谱系可以排出一条包含链 SL contextual bandit RL:SL 有标准答案且当前决策不影响未来;bandit 只有”选了才知道好坏”的标量反馈、但仍是单步且动作不改变状态;完整 RL 再叠加”动作改变后续状态分布”的序列耦合。理解这条链,就理解了本套资料每个算法在”反馈信息量 vs 问题一般性”这条轴上的位置。
部分可观测 POMDP
当智能体只能看到观测 而非完整状态 (如只有摄像头图像),问题成为 POMDP。此时观测不满足马尔可夫性,需要用历史/循环网络/信念状态来近似恢复马尔可夫性。本资料默认 MDP,除非特别说明。
图 1:MDP 的时间展开。策略 决定动作,动态 决定下一个状态;奖励 在每步产生。
2. 轨迹分布与 RL 目标
固定策略 后,一次包含 次决策的交互产生轨迹 。它出现的概率由初始分布、策略、动态相乘(用了马尔可夫性把联合分布因子化):
推导:轨迹分布为什么能这样因子化?
关键假设
马尔可夫性(转移只依赖当前 )+ 策略只依赖当前状态()。
第 1 步(用:概率链式法则,无条件恒等展开)。 任意联合分布都可按时间顺序精确展开(尚未用任何假设):
第 2 步(用:策略假设 + 马尔可夫性,逐项压缩条件)。 策略假设把动作项的条件缩到当前状态 ;马尔可夫假设把转移项的条件缩到当前 得 。
第 3 步。 逐项替换即得连乘式。局限: 若非马尔可夫(POMDP)或策略依赖历史,则此因子化不成立,需要保留历史条件。
为什么这样 · 能不能不这样
为什么策略与值函数都只以”当前状态 “为输入,把整段历史丢掉? 靠的正是马尔可夫性: 已是历史的充分统计量,未来只由它决定(式(2.2) 的因子化就用了这一点)。这带来两个决定性好处:其一,输入维度固定、不随时间增长,同一个 / 能在所有时刻复用;其二,回报的递归(贝尔曼方程,式(2.12)/(2.13))得以闭合——“从现在起”只需接上”从下一状态起”,不必回溯来路。
能不能索性把全历史 都喂进去? 原则上可以(历史一定充分),并且把历史视为扩展状态后,值函数与贝尔曼递归在数学上仍然成立。但代价惨重:输入长度随 增长、可能的历史条数迅速膨胀,状态空间、计算与样本复杂度都显著增加,学习和泛化更加困难。真正需要历史的情形(部分可观测,见 §10)通常会把它压成一个紧凑的充分统计量(信念状态、RNN/Transformer 隐状态),以便复用表示与计算。
RL 的目标是找到使期望累计(折扣)奖励最大的策略参数:
本质 Insight:为什么是”期望”?
环境动态 与策略 都是随机的,同一策略每次 rollout 得到的回报不同。我们不能优化”某一次”的运气,只能优化平均表现,所以目标是对轨迹分布求期望 。这也解释了后续所有算法的核心难点: 是一个期望,而期望里的分布 又依赖 ——如何对”分布依赖参数的期望”求梯度,正是模块 03 策略梯度要解决的。
3. 有限/无限时域与平稳分布
目标的具体形式取决于任务是有限时域还是无限时域。
3.1 有限时域(finite horizon)
共 步(episodic,如一局游戏)。目标可写成对每步状态-动作边缘分布 求和:
形象理解:有限时域 = 有截止日期;无限时域 = 永不停机
有限时域(有 T 步、有终局):一局棋、一场考试、一次 200 步的机器人 episode、一段有限轮的对话。关键特征——最优策略可能取决于”还剩几步”(时变 / 非平稳):临近终局会改变打法。例:篮球比赛最后 10 秒的战术 ≠ 第一节;考试最后 5 分钟”先抢做会做的”;棋类的”残局”下法与开局不同。
无限时域(持续运行、无自然终止):恒温器、服务器调度、一直走下去的机器人。关键特征——配上折扣后,最优策略只依赖当前状态、与”现在几点”无关(平稳 / 时不变)。为什么?因为从任何时刻往后看,(折扣)未来都”长得一样”(相同的有效视野 1/(1−γ)),每一步面对的决策问题完全相同 → 每个状态的最优动作也相同。例:恒温器的最优规则只看”当前温度”,不看钟表几点。
图 2:图(时域):有限时域像”有截止日期”的任务——临近终点会改变最优打法,故最优策略与时间有关;无限时域 + 折扣像”永不停机”——从任何时刻往后看都相同,故最优策略只依赖当前状态(平稳、时不变)。这就是为什么无限时域下我们只需学一个”状态 → 动作”的固定策略。
3.2 无限时域(infinite horizon)与平稳分布
当 (持续控制任务),若有限马尔可夫链在策略 下不可约,则存在唯一平稳分布(stationary distribution);再加非周期性,状态-动作边缘才从任意初始分布逐时收敛到它 [1]。平稳分布 满足不动点方程 ( 为状态转移算子)。在相应遍历条件下,时间平均回报可写成对平稳分布的期望:
注意这不是把式(2.4)的未归一化折扣和直接令 ;折扣目标应写成对折扣占用度 的期望:。平稳占用度与折扣占用度只有在相应极限与正则条件下才接上。
无限时域下, 是保证折扣回报收敛(有界) 的关键:。
本质 Insight:折扣因子 γ 到底是什么?
有三重身份:(1) 数学上保证无限和收敛;(2) 建模上表达”未来不确定/更倾向近期回报”,等价于每步有 概率”游戏结束”的几何时域;(3) 算法上是一个方差-偏差旋钮—— 越小,有效时域 越短,梯度方差越小但越”短视”(有偏)。第三点会在模块 04 详述。
举例
把 想成”能看多远”。取 : 步后的奖励只剩 的分量、 步后仅 ——差不多只”看得清”眼前十来步,像个只盯这周 KPI 的人。取 : 步后仍保留 ,视野一下拉长到上百步,像会为半年后打算的人。有效视野 正好给出这个尺度: 步、 步。所以调大 就是”逼智能体多想几步以后”。
3.3 折扣回报 vs 平均回报:两种”无限时域目标”
无限时域下”总回报”发散( 可能是 ),必须换一种方式定义”好”。主流有两种,它们并非对立而是同一件事的两种刻画:
- 折扣回报(discounted return):。用 强制收敛,隐含”重近轻远”,是深度 RL 的默认选择(TD/GAE 都建立其上)。
- 平均回报(average reward):。不打折扣、平等对待每一步,更适合”持续运转、无自然终止”的任务(如恒温控制、排队系统)。
两者的桥梁是一个 Abel/Blackwell 型极限:对有界奖励,并在遍历/unichain 等保证长期平均良定义的条件下,当 时,。所以折扣目标在这些条件下、经 归一化后才趋近平均回报;有限 的最优策略仍可能与平均回报最优策略不同。
批判性追问:把 当成”让求和收敛的无害技巧”,对吗?
不对——它悄悄换掉了你要解的问题,是 RL 里一处安静却根本的近似。
- 不严谨在哪:优化的 ≠ 在意的。 我们通常真正在意总回报 / 平均回报(),却因为收敛好、方差小而去优化一个 的折扣代理目标。这不只是数值近似,而是目标本身被改写。
- 反例(一算就见)。 “现在拿 ,或等 步后拿 “。未折扣总回报下应当等待();但 时只要 ,即 ,折扣目标就选”现在拿 “。取 得 ——超过约 步的延迟满足就被系统性放弃:折扣最优 ≠ 未折扣总回报最优, 一变最优策略就变。
- 靠什么假设才”无害”。 只有当有效视野 远长于任务真实的信用跨度时,这个缺口才可忽略;而长时程 / 稀疏奖励任务恰恰不满足。
- 如何补救 / 是否仍开放。 平均回报 RL、Blackwell 最优、以及” 退火”都在缩小缺口,但”该用哪个 、代价是什么”仍是问题设定而非纯超参(与下文洞察三” 是问题设定的一部分”互为印证)。
3.4 平稳分布 dᵖ:无限时域的”访问频率”
平稳分布 回答”长期来看,策略 有多大比例时间待在状态 “。它是状态转移算子的不动点:
直觉:把”流入 的概率流”加起来,若与”流出”平衡( 不再变化),系统就到达了平稳分布。在折扣设定里对应的是折扣状态占用度(discounted state occupancy) ,前面的 是归一化常数(使其为概率分布)。
形象理解:平稳分布 = “长期访问频率”,且与起点无关
- 扫地机器人(Roomba):用一套固定策略在房子里逛,时间一长,它待在各房间的时间占比会稳定下来(比如客厅 40%、厨房 15%、卧室 20%…)——而且无论从哪个房间出发,最终占比都一样。这个稳定占比就是平稳分布 dᵖ。
- 随机上网者(PageRank 的由来):一个不停随机点链接的浏览者,长期停留在每个网页的概率,正是网页跳转图的平稳分布——这就是 PageRank。
- 天气链:晴/雨按固定概率互相转移,长期看”晴天占比”收敛到一个定值,就是它的平稳分布。
换句话说:dᵖ 不是某一时刻在哪,而是”长期平均下来,多大比例时间在各状态”;系统跑久了会”忘记”从哪出发,稳定到同一个分布。
下面这个 3 状态马尔可夫链(固定策略),转移矩阵为(行 = 从,列 = 到):
| P(→) | A | B | C |
|---|---|---|---|
| A | 0.10 | 0.60 | 0.30 |
| B | 0.50 | 0.20 | 0.30 |
| C | 0.25 | 0.25 | 0.50 |
静态示意:无论从哪出发,分布都收敛到同一个平稳分布
下图概括状态分布 随时间趋近平稳分布 的过程。由于该转移矩阵对应的链不可约且非周期,不同初始分布都会收敛到同一个 。
以从 A 出发为例,,一步后 ,两步后 ,五步后 ,最终趋近 。从 B 或 C 出发也趋近同一分布。
本质 Insight:为什么后面处处出现 ?
RL 目标可以写成对占用度的期望 ——策略通过它诱导的状态访问分布 来影响回报。这解释了两件贯穿全书的事:其一,未经分布校正的朴素策略梯度估计需要 on-policy 数据;off-policy 数据可通过重要性采样等方法校正,但往往带来高方差;其二,分布漂移(模块 01)本质就是训练分布 ≠ 。 是连接”策略”与”回报”的隐形枢纽。
3.5 更深洞察:折扣、占用度与”分布”这条暗线
前面把定义讲清了。下面几条是更高层、也更容易被忽略的洞察——它们把”折扣 / 时域 / 平稳分布”串成一条贯穿全书的暗线。
洞察一:折扣 = 重启(最漂亮的统一)
折扣状态占用度 看似是个技术定义,其实有个惊艳的等价:它恰好是”另一条马尔可夫链”的平稳分布——这条链每走一步,以概率 正常转移、以概率 随机重启回初始分布 。于是:
“带折扣 的无限时域 RL” ≡ “在一条会以 概率重启的增广链上做平均回报 RL”。
为什么等价(一步验证)。 在重启链上,“从 起连续存活 步且不重启”的概率恰是 (每步独立以 存活)。于是重启链的长期访问频率 = 各时刻存活概率的加权叠加 ,归一化后正是折扣占用度 (式(2.7) 里那条平稳性方程换成这条增广链即成立)——归一化常数 恰好是”几何存活时间的期望 “的倒数。这就把”折扣权重 “与”某条链的平稳分布”对上了号。
这一下把三件事统一了: 的”重近轻远”、“每步 概率终止的几何时域”、以及”占用度是某条链的平稳分布”——它们是同一件事的三种说法。折扣不神秘,它就是”随机重启”。
图 4:图(折扣=重启):把折扣 RL 看成一条”以 (1−γ) 概率随机跳回起点”的链——它的平稳分布正是折扣占用度 。所以”折扣""几何随机终止""某条链的平稳分布”是同一件事的三种说法。
算例:两状态链上手算 ,并用”重启链”验证(点开)
设定
两个状态 (起点)、,初始分布 全在 。固定策略诱导的动态: 必然走到 、 必然停在 。于是轨迹恒为 ——最简单也最能看清”折扣=重启”的例子。
(a) 直接按定义叠加 。 折扣占用度的定义是 。本链里各时刻状态是确定的: 只在 出现, 在所有 出现。列个小表把每一时刻的访问概率与折扣权重摆开:
权重 按定义分别求和:
这里用了几何级数 。再验证归一化 ——确实是一个概率分布。
(b) 用”重启链”的平稳分布验证(呼应洞察一)。 按洞察一,把折扣改写成一条增广链:每步以 概率照原动态走、以 概率重启回起点 。写出这条增广链的转移矩阵(行 = 从,列 = 到):
增广 从 :以 重启回 、以 继续到 ,得行 ;从 :以 重启回 、以 继续留 ,同样得行 。两行完全相同,意味着不管当前在哪,下一步的分布都是 ——这本身就是平稳分布。核验一下不动点 :令 ,则流入 的概率为 、流入 的为 ,正是 自身。于是重启链的平稳分布 ,与 (a) 逐项一致。
(c) 代入具体数字。 取 ,得 :长期看,只有约 的(折扣)时间待在起点 、 在 。直觉上,有效视野 步,而起点只在 被”折扣地”访问约一次,占比恰为 ;其余视野都消耗在了 上。
结语。 两条路径——(a) 按定义把 叠加、(b) 在重启链上求平稳分布——落到同一个 。这就把洞察一那句”折扣 = 重启”从抽象等价,落到了可以拿笔手算、逐位对齐的具体数字上。
洞察二:为什么策略梯度”不用穿过 求导”?
目标 里, 也依赖 ——直觉上求 得对 求导,可那要”穿过环境动态”,我们并不知道 。策略梯度定理最终给出 ,不必显式对状态分布求导。直接用当前策略采样即可得到朴素估计;若复用 off-policy 数据,则需重要性采样或其他分布校正,并承担相应的方差与偏差权衡。(完整推导见 模块 03。)
洞察三:γ 是”问题设定”的一部分,不只是超参
改变 会改变最优策略本身: 小则短视,可能宁要眼前小利、放弃远期大利。所以用不同 的两个人,其实在解不同的问题。更尖锐的是:我们真正在意的往往是总回报 / 平均回报(),却实际优化一个 的代理目标——只因为它收敛好、方差小。这个”在意的目标 ≠ 优化的目标”的缺口,是 RL 里一处安静但根本的近似( 越接近 1 缺口越小,但方差与难度上升)。
洞察四(前提与局限):平稳分布需要”遍历性”
对有限马尔可夫链,不可约足以保证唯一平稳分布;再加非周期性,才保证从任意初始分布逐时收敛 [1]。带终止/吸收态的 episodic 链仍可有平稳分布(例如质量集中在吸收态),但可能不唯一,且通常不表达我们关心的幕内访问频率。工程上常给它加上”到终止就重启”,用**(折扣)占用度**统一表述。
洞察五: 是”分布问题”的统一透镜
RL 里几乎所有”稳定性 / 正确性”的麻烦,都可以翻译成同一句话:我们评估或训练所用的分布,是不是策略真正的 ? —— 致命三要素(off-policy 在错的分布上自举,模块 05)、离线 RL(数据分布 ≠ ,模块 09)、重要性采样(显式纠正分布,模块 03/06)、分布漂移(模块 01)——本质都是” 对不上”。记住这条透镜,半部课的难点都能一眼归位。
洞察六:有效视野 是”难度旋钮”
决定有效视野 ( 步)。它不只是”看多远”,更出现在误差放大与样本复杂度界里:值误差常按 甚至 放大, 时问题迅速变难。这正是”长时程信用分配”困难的量化根源,也是为何多轮 agent(长 )比单轮难得多(理论细节见 模块 11,agent 语境见 模块 13)。
3.6 深化拓展:有效视野 如何放大误差(定量)
洞察六说”值误差常按 、甚至 放大”。这里把它量化,让” 迅速变难”有具体的数字面孔。两条经典事实:
- 值估计误差按 放大。 若每步的贝尔曼 / 自举误差有界为 ,它会被折扣链向后传播约 步,于是值函数的稳态误差量级约 。
- 策略次优性按 放大。 经典的贪心策略误差界:若 ,据其贪心得到的策略满足 [2]。平方分母通常对应先由贝尔曼残差推到值误差、再推到策略损失的口径。
代入几个 感受增速(取误差单位 ;末列收敛轮数用 §6 的 ):
| 有效视野 | 值误差放大 | 给定值误差时的策略损失量级 | 值迭代收敛轮数 | |
|---|---|---|---|---|
从 走到 , 缩小 倍:在这里采用的误差口径下,值误差与策略损失界都随之增大约 倍,值迭代收敛轮数也增约 倍。这说明长视野会放大估计误差与计算难度;具体阶数仍取决于使用的是值误差、贝尔曼残差还是其他误差口径。
4. 值函数 V、Q 与优势 A
直接优化 需要对整条轨迹求期望,方差大。值函数把”从某状态/状态-动作出发的期望未来回报”缓存下来,是几乎所有高效算法的核心工具。
为什么这样 · 能不能不这样
为什么把”值函数”选作核心中间量? 一句话: 是对整条轨迹的高方差总分,难归因、难复用;值函数把”从某状态起的期望回报”缓存成函数,靠贝尔曼递归(式(2.12)/(2.13))把长求和压成一步自洽,信用落到单步、经验跨状态共享——这是”省样本”算法的公共支点。
那能不能干脆不要它? 能,而且两条”绕开值函数”的路线都真实存在:(1) 只用策略(纯策略梯度 / REINFORCE,甚至无梯度 ES)直接拿采样回报更新策略,实现简单,但通常方差较高;(2) 只用模型(基于模型 RL)改去学动态 再规划,在模型准确、规划有效的任务上可能更省真实交互,但模型偏差会沿 rollout 累积。值函数是两者之间的折中枢纽;具体取舍依任务、数据复用方式、模型误差与计算预算而变。
状态值函数(state-value):从状态 出发、之后遵循 的期望回报。
动作值函数(action-value / Q 函数):在 先执行 (不管策略),之后遵循 。
优势函数(advantage):动作 相对”平均”好多少。
三者关系(都可从定义直接得到):
本质 Insight:为什么优势函数如此重要?
的绝对值里混入了”这个状态本身好不好”()这一与动作无关的部分。要决定”该不该多做动作 “,我们真正关心的是它相对于平均的好坏,即 。用 代替 能扣掉 这个”公共基线”,大幅降低方差而不引入偏差——这正是模块 03 baseline 与模块 04 actor-critic 的理论支点。
举例
某个中局局面本身就不错,平均下来价值 (约六成胜率的味道)。此时你算出两手棋:走马 、走车 。优势就是”这一步比该局面平均好多少”:(确实更好),(反而拖了后腿)。注意两手棋的 都是正数——光看 会误以为”走车”也不赖,只有扣掉局面本身的 才看清它其实低于平均。这正是我们用 (而非 )来决定”该多下哪一步”的原因。
5. 贝尔曼期望方程
值函数的威力来自它的递归结构——“从现在起的回报 = 这一步的奖励 + 折扣后从下一步起的回报”。这就是贝尔曼期望方程(Bellman expectation equation)。
推导:贝尔曼期望方程(逐步,从定义到递归)
关键假设
马尔可夫性(未来只依赖当前 );期望的线性;折扣几何求和可拆首项;全期望公式 。
第 1 步(用: 的定义,式(2.9))。 令 为从 起的回报,并约定终止状态的 。则由定义 。
第 2 步(用:折扣几何结构,把首项从求和中提出)。 把 这一项单独拿出、其余项提一个公因子 (因 ):
第 3 步(用:条件期望的线性 + 在给定 下为确定量)。
第 4 步(用:全期望公式分两层 + 马尔可夫性收缩条件)。 未来回报 只依赖 (及其后的策略动作),与”如何到达 “无关。用全期望公式先对 求外层期望、再对 求内层期望,末端用第 1 步的定义把内层认成 :
第 5 步(用:代回合并)。 把式(2.16) 代回式(2.15) 即得 的贝尔曼方程(式(2.13));再对 求一层期望并用 (式(2.11))得 的版本(式(2.12))。
局限: 推导核心依赖马尔可夫性(第 4 步 式(2.16))。非马尔可夫时 会依赖更早历史,方程不闭合。此外,这是期望方程(评估给定 );把 换成 就得到贝尔曼最优方程(模块 05)。
推导: 互推(全期望公式的两次使用)
关键工具
全期望公式(law of total expectation / 塔性质):。它让我们”先固定一层随机变量、求内层期望,再对外层求期望”,是所有值函数关系的公共引擎。
① 由 得 (用:全期望公式,以第一步动作 为条件层)。 是”从 出发遵循 的回报期望”。全期望公式让我们先固定 求内层期望(恰是 的定义,式(2.9)),再对 求外层期望:
② 由 得 (用:全期望公式,以下一状态 为条件层 + 式(2.14) 的首项拆分)。 先执行给定的 (拿到即时奖励 ),随后进入 ,从 起又变回”遵循 的回报”即 。以 为条件层再用一次全期望公式:
③ 互相代入 = 贝尔曼期望方程。 把式(2.18) 代进式(2.17) 得 的贝尔曼方程(式(2.12));把式(2.17) 代进式(2.18)(对 用 )得 的贝尔曼方程(式(2.13))。两个”互推关系”其实就是把贝尔曼方程拆成两半:式(2.17) 是”对动作求期望”(策略层),式(2.18) 是”走一步转移”(动态层)。
④ 优势的自洽。 由式(2.17) 立刻得 ——优势按策略求期望恒为零(即式(2.11) 的后半),这正是它能当”无偏 baseline”的根源(模块 03)。
本质 Insight:贝尔曼方程为什么是整个 RL 的引擎?
它把”求一个无穷长求和的期望”这个可怕的问题,变成了”一个一步的自洽方程”。动态规划(值迭代/策略迭代)直接迭代这个不动点;时序差分(TD) 用采样近似它的右端(模块 04/05);actor-critic 用它来训练 critic。可以说,之后每个算法都是在”如何近似求解贝尔曼方程”上做文章。
6. 值迭代手算小例
贝尔曼方程不只是理论——它是可以直接迭代求解的。这里用一个 3 状态的迷你 MDP 手算几步,直观感受”值如何从奖励处向后传播、并收敛到不动点”。这里用的是把 换成 的贝尔曼最优方程版本(即值迭代 value iteration),它预告了模块 05,但拿来演示收敛最直观。
环境设定。 三个状态 ( 为目标 / 吸收态,)。每个非终止状态有两个确定性动作:→(前进) 与 stay(原地)。折扣 。奖励只在”迈入目标”时给出:
| 状态 · 动作 | 转移到 | 即时奖励 |
|---|---|---|
| · → | ||
| · stay | ||
| · → | (目标) | |
| · stay |
图 2:迷你 MDP 状态图。奖励集中在”迈入目标 “的那一步,值迭代会把这份价值逐轮向左传播回 、。
迭代规则(值迭代):,初始 。逐步手算:
| 轮次 | 手算过程 | ||
|---|---|---|---|
| 初始化 | |||
| ; | |||
| ; | |||
| 不再变化 → 已收敛 |
读出结果: ,最优策略是”处处前进 →“。注意价值如何从目标处向后扩散:第 1 轮只有紧邻目标的 拿到价值,第 2 轮才轮到 (被 折了一次,)。这正是”贝尔曼方程作为引擎”的最小可视化——每一轮迭代把价值信息又向后传播一步。
本质 Insight:为什么会收敛?(压缩映射 → 几何收敛,可量化)
这里迭代的 是把式(2.12)/(2.13) 里的 换成 的贝尔曼最优算子。它是一个以 为系数的压缩映射(contraction,在 范数下):
。
第 1 步(用:压缩性 + 令 为不动点 )。 反复作用得 ——误差每轮至多乘 ,按几何级数 指数衰减。第 2 步(用:巴拿赫不动点定理)。 保证压缩,故不动点存在且唯一,迭代必收敛到 。
量化: 要把误差压到 ,所需轮数约为 (末式用 )。可见 时轮数按 (有效视野)放大——收敛虽仍是几何式,但越接近 1 越慢,这正呼应洞察六里” 是难度旋钮”。在本小例中确实两三轮即收敛(、状态少)。 于是身兼两职:保证回报有界,也保证这个迭代指数收敛。
7. RL 算法的通用解剖
CS285 的一个核心视角:几乎所有 RL 算法都可拆成三个循环往复的模块。看懂这张图,你就有了归类任何新算法的坐标系。
图 3:所有 RL 算法都在循环执行”生成样本 → 估计回报/拟合模型 → 改进策略”。不同算法族的差异在于每一步做多重、用什么代价做。
| 算法族 | ② 估计什么 | ③ 如何改进策略 |
|---|---|---|
| 策略梯度(PG) | 回报 (可加 baseline) | 沿 上升(模块 03) |
| Actor-Critic | 拟合 (critic) | 用优势加权更新 actor(模块 04) |
| 价值方法 | 拟合 (贝尔曼最优) | 隐式:贪心 (模块 05) |
| 基于模型 | 拟合动态 | 用模型规划/反传(模块 08) |
本质 Insight:成本都花在哪一步?
“②估计”这一步的选择,决定了算法的方差、偏差与样本效率:直接用采样回报(PG)通常高方差;拟合值函数(AC/价值方法)以自举引入偏差并换取数据复用;学动态模型在部分任务上可减少真实交互,但受模型误差与规划成本制约。整套课程后面就是在这条”用什么估计回报”的谱系上展开。
8. on-policy vs off-policy
这是贯穿全书的分类维度,直接决定样本能否复用。
- on-policy(同策略):改进的目标策略 = 采样数据的行为策略。策略一更新,旧数据就”过期”,必须重新采样。朴素策略梯度、A2C/A3C 属此类。
- off-policy(异策略):用行为策略 (可以是旧策略、探索策略甚至人类)产生的数据,去改进另一个目标策略 。可复用历史数据(经验回放),样本效率高。Q-learning、DDPG、SAC 属此类。
本质 Insight:为什么 on-policy 必须”用完即弃”?
策略梯度的期望是对当前策略的轨迹分布 求的。参数一变, 就变了,旧样本来自旧分布 ,直接拿来估当前梯度是有偏的。要复用就得做重要性采样修正(模块 03/06),但权重方差会爆炸——这正是 off-policy PG 困难、以及 PPO/TRPO 要限制”步子别迈太大”的根本原因。
| 维度 | on-policy | off-policy |
|---|---|---|
| 数据来源 | 当前策略 | 任意行为策略(可回放) |
| 样本效率 | 低(用完即弃) | 高(可复用) |
| 稳定性 | 较稳定 | 易受分布不匹配/自举发散影响 |
| 代表算法 | REINFORCE, A2C, TRPO, PPO* | Q-learning, DQN, DDPG, SAC |
*PPO 通过重要性采样与裁剪在小范围内复用数据,介于严格 on/off 之间,常被称为”近端 on-policy”。
9. 算法族的取舍与样本效率
选择算法时,核心权衡是样本效率(每条经验能榨出多少改进) 与稳定性/实现难度/计算成本。下面仅给出常见实现与典型任务下的启发式趋势,不是对算法族普遍成立的全序:
与总纲的分工(避免重复)
本节是从”RL 基础”角度的速览。更完整的家族谱系——含各家代表工作(PILCO/PETS/Dreamer/MuZero、DQN/Rainbow/DDPG/TD3/SAC、REINFORCE/A2C、TRPO/PPO、ES/CEM,直到 GRPO/DAPO)与 off↔on-policy 正交轴——见 总纲 §6「算法家族全景与取舍」。两处采用同一朝向(左 = 更省样本),可对照阅读。
图 4:样本效率谱(与总纲 §6 同一朝向:左 = 更省样本)。越省样本的方法引入越多假设(值函数自举、学到的模型),换来更高偏差风险或实现复杂度;最右端无梯度法最费样本。
| 算法族(按样本效率从高到低) | 样本效率 | 稳定性 | 偏差来源 | 适用 |
|---|---|---|---|---|
| 基于模型·浅层 (PILCO/GP) | 任务相关 | 中(模型偏置大) | 低容量模型的系统偏置 | 数据极稀缺、动力学较简单 |
| 基于模型·深层 (PETS/Dreamer) | 任务相关 | 低-中 | 模型误差累积(被利用) | 真实机器人、数据稀缺 |
| off-policy 价值/AC (DQN/SAC) | 通常可复用数据 | 中(致命三要素风险) | 自举 + off-policy + 逼近 | 样本昂贵、可回放 |
| Actor-Critic | 依实现而异 | 中 | critic 自举引入偏差 | 连续控制 |
| on-policy PG | 通常较少复用旧数据 | 较稳定 | 高方差 | 仿真廉价 |
| 无梯度 / 黑箱 (ES/CEM/CMA-ES) | 常需较多评估 | 依任务而异 | 搜索方差随维度增长 | 奖励不可导/极稀疏、海量并行 |
陷阱:样本效率 ≠ 墙钟时间效率
样本效率高不等于墙钟时间短;实际耗时还取决于环境采样成本、并行方式、每次更新的计算量和系统实现。选算法时应先判断瓶颈是采样还是计算,不能仅凭样本复用率推断运行速度或稳定性。
前沿实践
LLM 的部分 RL 后训练可按这套解剖理解:①生成样本=让模型对 prompt 采样回答;②估计回报=奖励模型或可验证奖励打分;③改进策略=按具体算法更新策略。选择 on-policy、近端更新或其他方法取决于数据生成成本、稳定性、基础设施与目标,不能仅归因于“生成便宜”。
10. POMDP 与信念状态
前面的 MDP 假设智能体能看到完整状态 。但这是理想化:真实世界几乎都是部分可观测的。摄像头有遮挡与视野盲区、传感器有噪声、对手的手牌看不见、对话里用户的真实意图没写在字面上……智能体拿到的只是状态的一个带噪 / 不完整的投影——观测 。这类问题是 部分可观测马尔可夫决策过程(POMDP),一个七元组 ,比 MDP 多了观测空间 与观测模型 。
核心困难:观测不满足马尔可夫性
单个观测 不是历史的充分统计量:同一个观测可能对应完全不同的真实状态(走廊里两个长得一样的路口)。于是”最优策略只依赖当前观测”不再成立——直接把 MDP 那套 套上去会失效,因为 丢了区分状态所必需的信息。
解法:用信念状态恢复马尔可夫性。 定义信念状态(belief state) ——即”在给定全部历史后,对当前真实状态的后验分布”。关键事实:信念状态本身是马尔可夫的,它是历史的充分统计量。于是 POMDP 可以转写成一个以信念为状态的 belief MDP,MDP 的全部机器(值函数、贝尔曼方程)在信念空间里重新成立。信念随每步观测按贝叶斯滤波更新:
图 5:POMDP 中智能体看不到真实状态,只能维护一个信念分布 ,并随每个新观测用贝叶斯滤波更新。信念状态恢复了马尔可夫性,使 MDP 的机器重新可用。
前沿实践:深度 RL 怎么处理部分可观测?
精确维护信念在高维下不可行,实践中用近似的充分统计量替代:把最近若干帧堆叠(DQN 玩 Atari 堆 4 帧)、用 RNN/LSTM/GRU 或 Transformer 把历史压成隐藏状态(R2D2、Decision Transformer)。LLM 更是天然的”历史编码器”:整个上下文窗口就是被压缩的信念,注意力机制在读全部历史后决定下一步——这也是为什么”上下文长度”对智能体能力如此关键。
方法溯源:动机 · 启发 · 局限
本讲的概念大多不是”深度学习时代”的发明,而是继承自 1950 年代的动态规划与最优控制。把它们按”为什么被提出 → 受什么启发 → 遗留局限”重排,能看清这套 MDP 机器从哪来、又为什么会通向后面的采样式算法。
| 概念 / 代表作(年代) | 要解决什么问题(动机) | 受什么启发 / 技术脉络 | 关键局限(→ 引出谁) |
|---|---|---|---|
| 经典表格型动态规划 Bellman 1957;Howard 1960(策略迭代) | 在 MDP 中把多步序列决策拆成可递归求解的子问题 | Bellman 的最优性原理:最优解的子路径也最优;源自变分法 / 最优控制 | 通常需已知模型 并枚举状态空间(维度诅咒)(→ 采样式 model-free RL) |
| 折扣因子 | 无限时域回报 会发散,需保证收敛有界 | 经济学的贴现;等价于每步 概率终止的几何时域 | 引入短视偏差,是方差-偏差旋钮(→ 平均回报视角 / GAE 模块 04) |
| 值函数 Bellman;Watkins(-learning,1989) | 避免对整条轨迹反复求期望,缓存”从某状态起的期望回报” | DP 里作为核心中间量的”cost-to-go / value” | 需估计与自举,off-policy + 逼近下易发散(→ TD、DQN、AC) |
| 贝尔曼期望方程 | 把”无穷长求和的期望”变成一步自洽的递归 | 最优性原理 + 马尔可夫性 + 期望线性 | 是期望方程,右端需已知或采样估计 (→ TD 采样近似) |
| 优势函数 | 里混入了与动作无关的”状态本身好坏”,需扣掉公共基线 | 控制变量 / baseline 的方差缩减思想 | 需同时估计 与 (→ GAE 用 TD 残差近似,模块 04) |
| 通用解剖”生成→估计→改进” | 为所有 RL 算法建立统一坐标系 | Sutton & Barto 的广义策略迭代(GPI) | 三步各自的方差 / 偏差 / 样本效率取舍不同(→ 后续各模块) |
演进故事线①:为什么用 MDP 抽象决策?
1950 年代 Bellman 研究多阶段最优控制时面对一个组合爆炸的难题:一个 步决策序列的可能路径随 指数增长。他的最优性原理给出破解口:无论如何到达当前状态,此后的最优决策只取决于当前状态——于是整段优化被拆成”当前一步 + 从下一状态起的最优子问题”的递归。MDP 正是承载这条递归的最小形式化:用马尔可夫性保证”当前状态是历史的充分统计量”,最优策略便只需依赖当前状态,无需记忆整段历史。MDP 形式化本身不要求智能体知道模型或枚举状态;需要已知模型 并枚举状态的是经典表格型动态规划方法。这些计算条件促使研究者发展出从样本学习的 model-free 强化学习。
演进故事线②:折扣因子 γ 为什么被引入?
不是可有可无的超参数,它的引入同时回应两个问题。数学上:无限时域下 可能发散,“哪个策略更好”无从比较;乘上 ()后几何级数收敛到 ,“好”才被良好定义。建模上: 表达”未来越远越不确定、越该打折”,它精确等价于一个每步有 概率突然终止的几何随机时域——把”未来可能戛然而止”编码进目标。这两重身份之外还有第三重(算法上的方差-偏差旋钮,模块 04 详述)。局限也随之而来: 意味着系统性短视,只有当 才逼近”公平看待长远”的平均回报视角。
演进故事线③:值函数为什么是核心中间量?
直接优化目标 要对整条轨迹求期望,方差大且无法复用。值函数的关键洞察是:把”从某状态 / 状态-动作出发的期望未来回报”缓存成一个函数,长期回报的递归结构(贝尔曼方程)就把一个可怕的无穷求和压缩成一步自洽方程。于是它成了连接一切算法的枢纽:动态规划直接迭代这个不动点,TD 用采样近似其右端,actor-critic 用它当 critic,优势 又把它变成降方差的基线。可以说后面每个算法都在回答同一个问题——如何更省、更稳地近似求解贝尔曼方程。它的局限是必须估计值函数,而估计中的自举会引入偏差与不稳定,这正是模块 04、05 要处理的主题。
11. 小结与要点
- MDP 是 RL 的通用形式化;马尔可夫性让最优策略只依赖当前状态。
- 轨迹分布 ;RL 目标是 。
- 兼具收敛性、建模与方差-偏差旋钮三重身份;无限时域下引出平稳分布 。
- :, 扣掉公共基线以降方差。
- 贝尔曼期望方程把无穷求和变成一步自洽递归,是 DP/TD/AC 的共同引擎。
- 所有算法 = “生成样本→估计回报→改进策略”三步循环;差异在②怎么估计、on/off-policy 与样本效率取舍。
承上启下
我们已经把”好”定义为 ,也知道它是个依赖 的期望。下一步的核心问题呼之欲出:如何对 求梯度并做梯度上升?——即使我们不知道环境动态 。这正是模块 03 策略梯度的主题。