把「环境」写进数学 — 马尔可夫决策过程
这一章讲三件事: 为什么 RL 必须先变成数学才能被计算; 六个部件怎么拼成一个马尔可夫决策过程(后面全书写作 MDP); 「只看现在、不看历史」这一条性质为什么是整个框架能运转的前提。 读完你会拿到全书所有方法共享的那块地基——第 04 章的价值函数、 第 06 章起的每个方法,都定义在这六件套上。
1. 这一章讲什么
第 01 章说 RL 是「试错 + 事后分数」。「试错」怎么试、「分数」怎么记, 总得有一套精确的语言,否则没法写算法(按步骤执行的求解流程)。原书第 3 章开篇先列 RL 与其他学习范式的四条差别1:
- 没有监督者——没人告诉智能体下一步最好做什么;
- 反馈延迟——分数可能隔很久才到,而凭一时冲动乱动可能闯祸;
- 决策在时间上前后相连——这一步的选择影响后面所有局面;
- 反馈取决于你自己——同一动作在不同情境、不同环境下得分不同。
这四条决定了:描述 RL 问题的数学必须能装下「时间」「不确定」「自己的责任」。 MDP 就是这套语言。
2. 顶层全景:六件套拼出一个可计算的世界
┌────────────────────────────────────────────┐
│ MDP = ( S , A , P , r , γ , s₀ ) │
└────────────────────────────────────────────┘
S:有哪些局面 A:能做哪些动作 P:做了之后世界怎么变(带概率)
r:每步给多少分 γ:未来的分打几折 s₀:从哪个局面开始
t 时刻:处在 sₜ ──选动作 aₜ──► 世界按 P 掷骰子 ──► 落进 sₜ₊₁
│
▼
环境发奖 rₜ
图说:智能体管「选动作」,环境管「变成什么局面、发多少分」,每一拍循环一次。
图说:这本书后面每个算法,都是在回答同一个问题——在这个循环里,动作该怎么选? 选法有个名字,叫策略(policy):在什么局面做什么动作的一套规则2。
本章的主走查是一条 3 格走廊,下面每个部件都在它上面落一个具体的数:
[坑 D]◄────[A 起点]────►[B]────►[C 宝箱 +10]
−10,踢回 A 唯一动作:「前进」
前进的成功率 0.9;打滑 0.1,掉进坑 D(−10,被踢回 A)
(这条走廊与全部数字是为演示编的,不是书里的例子;
部件的定义全部照书,数字只是让定义看得见。)
3. 核心原理
3.1 六件套,一件一件在走廊上落数
书里给出的 MDP 由六个元素构成3,逐个对照走廊:
| 部件 | 书里的定义 | 走廊上的取值 |
|---|---|---|
| S 状态集 | 所有可能局面的集合,有限或无限 | {A, B, C, D} |
| A 动作集 | 所有可能动作的集合 | {前进} |
| P 转移概率 | 在 sₜ 做动作 aₜ 后落到 sₜ₊₁ 的概率 | P(B|A,前进)=0.9,P(D|A,前进)=0.1 |
| r 奖励函数 | 在 sₜ 做动作 aₜ 得到的分数,可确定可随机 | 进 B 得 0;掉 D 得 −10;进 C 得 +10 |
| γ 折扣因子 | 一个小于 1 的数,压低远期奖励,防总和无穷 | 0.9 |
| s₀ 初始状态 | 起点局面,通常按某个分布(各种可能各占多少机会)抽 | A |
书里注明 MDP 是无限期、带折扣的过程——任务可以一直走下去, 靠 γ 保证累计分数不爆炸3。
3.2 马尔可夫性质:只看现在,不看历史
整座大厦的地基是一条性质,书里表述为:动作对状态的作用,只取决于这个状态本身, 与它此前怎么演化而来无 关——不带入任何对过去的记忆(存下的往事), 于是只用当前状态里的信息,就能对未来的状态做推断4。
在走廊上验证:「在 B 处前进会以 0.9 到 C」—— 不管你是 A 一步走到 B 的,还是掉坑被踢回来又走到 B 的,下一个局面的概率一模一样。 历史不进公式。这就是为什么「状态」必须是充分的:如果走廊里还有一扇只有 第偶数次经过才开的暗门,「B」这个状态就不够用了——得把「第几次经过」塞进状态里, 把性质修补回来。
3.3 策略的两种性格
策略是「局面 → 动作」的规则,输出也可以是一套概率分布(各动作各占多少机会);书里沿两个维度给它分类2:
| 维度 | 取值 | 意思 |
|---|---|---|
| 时间结构 | 稳定(stationary) | 规则不随时间变,适合无限期任务 |
| 非稳定(nonstationary) | 规则带时间下标,适合有限步任务 | |
| 输出形式 | 确定性(同一局面永远给同一个动作) | 一个状态只对应一个动作 |
| 随机 | 一个状态对应一套概率分布(各动作各占多少机会) |