跳转到正文

2.2 MDP 与马尔可夫性

本节导读

核心内容

  • 掌握 MDP 五元组如何描述状态、动作、转移、奖励和折扣。
  • 理解折扣累积回报 为什么是 RL 的总目标。
  • 区分确定性策略 与随机策略

上一节通过多臂老虎机,我们建立了 RL 的三个基本概念:策略是智能体选择动作的规则,期望回报是衡量策略优劣的指标,探索和利用是 RL 区别于其他学习方式的标志性挑战。老虎机之所以适合作为起点,正是因为它剥离了状态变化——不管上一轮选了什么,下一轮面对的局面都一样。这个简化让我们能单独看清试错搜索中的动作选择问题。

但真实任务不是这样。CartPole 里你推一下车,杆子角度会变;游戏里你走一步,地图位置会变;大模型生成一个词,后面的上下文也会变。你不能只回答”哪个动作更好”,还得回答”在当前这个局面下,哪个动作更好”——而且回答完之后局面又变了,你得在新局面下重新决策。问题从”哪个按钮平均更好”升级成了”局面不断变化中的连续决策”。

要描述这类问题,需要一套更完整的数学框架——马尔可夫决策过程(Markov Decision Process, MDP)。它不是抽象包装,而是把”动作会改变下一步局面”这件事写成了精确的数学语言: 说清现在看到了什么, 说清能做什么, 说清做完以后世界怎么变, 说清得多少分, 说清未来分数还值多少。

本节的角色是给出描述问题的语言——MDP 五元组、 都是建模工具,告诉你”怎样把一个真实任务翻译成 RL 能处理的数学对象”。有了语言才能谈求解——下一节的价值函数 和贝尔曼方程才是解决这些问题的计算工具

具体来说,本节回答三个问题:游戏规则是什么(MDP 五元组)、总目标是什么(折扣累积回报 )、每一步怎么选(策略 )。

核心概念

MDP 是强化学习的标准建模语言。几乎所有 RL 算法——从 Q-learning 到 PPO,再到大模型的 RLHF——都建立在 MDP 框架之上。老虎机是 MDP 的退化特例(只有一个状态、无转移),而 CartPole、Atari、LLM 生成则是完整的 MDP。

核心公式

马尔可夫决策过程 (Markov Decision Process):

  • :状态空间(State Space),所有可能局面的集合。
  • :动作空间(Action Space),所有可能采取的操作的集合。
  • :状态转移概率(Transition Probability),描述环境的物理规律。
  • :奖励函数(Reward Function),描述环境对动作的打分规则。
  • :折扣因子(Discount Factor),决定智能体有多”短视”或”远视”。

折扣累积回报 (Discounted Return):

  • :从第 步开始,未来所有打折后奖励的总和(Return)。
  • :未来第 步实际拿到的单步奖励。

策略 (Policy):

  • :策略(Policy),智能体大脑里的决策规则。
  • :确定性策略,在状态 下固定输出动作
  • :随机策略,在状态 下选择动作 的概率分布。

MDP 五元组

一个 MDP 由五个要素定义,写作 。这五个要素环环相扣,构成一个完整的决策循环:你在某个局面(S)下做了一个选择(A),世界因此变了(P),你得到了反馈(R),然后进入下一个局面,继续循环——而 决定了你有多在乎"以后还能拿多少分"

拿到任何一个 RL 问题,问自己五个问题就够了:

  • 站在哪(S)—— 智能体当前感知到什么?环境用什么信息描述"现在的局面"?
  • 干什么(A)—— 智能体能做什么操作?是有限个按钮(离散),还是连续的控制量(如力矩、角度)?
  • 会怎样(P)—— 做完动作后,世界会变成什么样?这个变化是确定性的还是有随机性?
  • 得几分(R)—— 做完这一步,环境给你什么反馈?是每步都有,还是只有终点才给?
  • 未来打几折(γ)—— 眼前利益和长远收益如何权衡?未来的 1 分现在值多少?

这五个要素不是随便拼凑的——它们恰好覆盖了序列决策的所有环节。缺了 S,你不知道当前局面;缺了 A,你无计可施;缺了 P,你无法预判动作后果;缺了 R,你不知道什么算"好";缺了 γ,你无法权衡短期与长期。五元组就是一个"世界模型"的最小完备描述。

符号英文名称直觉老虎机CartPole
SState状态集合"站在哪"{初始}(单状态)R⁴(4 维连续值)
AAction动作集合"干什么"{选 A, 选 B}{左推, 右推}
PTransition Probability转移概率"会怎样"始终回到同一状态由物理引擎决定
RReward奖励函数"得几分"中奖 +1,没中 -1存活 +1
γDiscount Factor折扣因子"未来打几折"不涉及(单步游戏)通常 0.99

状态 S

状态是环境在某一时刻的完整描述。老虎机只有一个状态——每一轮面对的情况都一样。CartPole 的状态是一个 4 维向量:

分别代表小车的位置、速度、杆子的角度和角速度。

MDP 最核心的假设是马尔可夫性:只要看清当前状态,不需要知道之前是怎么走到这个局面的,就能做出最优决策。就像下象棋,只需看当前的棋盘,不需要知道前面十步是怎么走的。

这意味着状态必须"完整"——如果 CartPole 只给你"杆子角度"但不给"角速度",你就无法判断杆子是在加速倒还是在减速。就像只看了一眼车速表,却不知道车是在加速还是刹车。状态必须包含做决策所需的所有信息。

动作 A

老虎机有两个离散动作 {选 A, 选 B},CartPole 也是两个离散动作 {左推, 右推},机器人行走则可能是连续的关节力矩向量

动作空间的类型直接决定算法选择:

动作空间特点适用算法
离散(如 {左, 右})可枚举所有选择,挑最好的Q-learning / DQN
连续(如关节力矩)无法枚举策略梯度(PPO 等)

转移概率 P

老虎机中,不管你选哪台,状态都不变。CartPole 中, 由牛顿力学决定。假设当前杆子角度 (微倾),动作为"右推":

一个关键区分: 是否已知。知道 就能用动态规划直接算最优策略;不知道 就只能通过交互来"摸索"。大多数真实 RL 问题中 是未知的——围棋有 个状态,LLM 有天文数字的 token 序列组合。"不知道 P"恰恰是 RL 区别于传统最优化的核心特征。

奖励函数 R

奖励是 RL 中唯一的学习信号——没有奖励,智能体无从学起。不同任务的奖励信号差异很大:

任务奖励信号特点
老虎机中奖 +1,没中 -1即时、密集
CartPole存活 +1/步即时、密集
围棋终局 +1(赢)/ -1(负)延迟、稀疏

Richard Sutton 提出了奖励假设(Reward Hypothesis):所有目标都可以被描述为"最大化期望累积奖励信号"(Sutton & Barto, 2018)[1]。不管你想要智能体做什么——赢棋、开车、聊天——只要编码成奖励函数,RL 理论上就能学到。

但设计好奖励函数是 RL 工程中最困难的环节之一。"奖励黑客"问题:智能体可能找到奖励函数的漏洞,用意想不到的方式拿高分,实际表现却完全偏离初衷。大模型对齐中"什么样的回答值得高分"本身就是一个研究课题——这正是 RLHF 和 DPO 要解决的核心问题。

折扣因子 γ

控制智能体对"延迟满足"的重视程度。先用一个例子建立直觉:两个策略,策略 A 第 1 步就拿 10 分,之后什么都不拿;策略 B 前 9 步拿 0 分,第 10 步拿 20 分。谁更好?

γ策略 A 的 G₀策略 B 的 G₀更优策略
0.5100.5⁹ × 20 = 0.39A(几乎只看眼前)
0.9100.9⁹ × 20 = 7.7A(短期偏好)
0.99100.99⁹ × 20 = 18.3B(远视偏好)

γ 越接近 1,智能体越"远视",越看重长期收益。下一节会详细讨论它的数学作用。

三个任务对比

把老虎机、CartPole 和 LLM 对齐三个任务放在一起比较,看看五元组各自长什么样:

要素老虎机CartPoleLLM 对齐
S{初始}(单状态)R⁴(连续)已生成的 token 序列
A{选 A, 选 B}{左, 右}词表中的下一个 token
P出奖率(固定但未知)物理引擎语言模型自身的采样
R±1+1/步人类偏好/奖励模型打分
γ—(单步)0.99通常不使用(整句评估)

逐行看:

S:老虎机只有一个状态——你在哪一轮面对的情况都一样。CartPole 的状态是 4 维连续向量。LLM 的状态是"到目前为止生成的所有 token"——每多生成一个 token,状态就变了。

A:老虎机选 A 还是 B。CartPole 左推还是右推。LLM 的动作是"下一个 token 是什么"——从几万个候选 token 中选一个。

P:老虎机的转移概率就是出奖率,固定但未知。CartPole 由物理引擎决定。LLM 比较特殊: 就是语言模型本身——给定已有 token,下一个 token 的概率分布由模型的 softmax 输出决定。所以 LLM 训练中, 和策略 几乎是同一回事。

R:老虎机即时给 ±1。CartPole 每步 +1。LLM 对齐中的奖励更复杂——通常不是一个固定的函数,而是另一个"奖励模型"网络对生成的整段回答打分(RLHF),或者直接用人类偏好数据来训练(DPO)。

γ:老虎机不涉及(单步游戏)。CartPole 通常用 0.99。LLM 对齐中通常不用折扣因子——因为奖励是对整段回答打的,不是每步都有,所以 退化为单步奖励。

三个任务表面差异巨大,但底层都是同一套数学语言。

折扣回报 G_t

MDP 五元组描述了游戏规则。但有了规则,还需要定义智能体到底在追求什么——即"一个回合结束时,总共希望拿多少分"。这里的回合(episode),指的是环境从 reset 开始,到终止条件触发或时间上限到达为止的一次完整尝试。CartPole 中,一根杆子从立起来开始,到倒下、出界,或撑满步数上限,就是一个 episode。

为了衡量这个回合表现得好不好,我们需要把其中每一步的奖励合在一起。 就是这个目标:它把一段交互中的奖励加起来,同时给未来的奖励打折,定义了"从当前时刻起,总共能拿多少分"。

五元组定义了"单步"的规则。但 RL 不是一步游戏——CartPole 要活 200 步,大模型要生成几百个 token。每一步都会产生状态、动作和奖励,一连串下来形成一条轨迹(trajectory)

在回合制任务中,一个完整 episode 通常对应一条完整 trajectory;但 trajectory 更强调"数据长什么样",范围也更宽:它可以是一整局,也可以只是训练中截取的一段经验,或者持续性任务中人为切出来的一段交互数据。

老虎机只有一步,轨迹就是 ,得分就是那一步的奖励。CartPole 活了 4 步呢?4 步各拿 +1 分,总成绩怎么算?最直觉的做法是直接求和:。但眼前的 1 分和 10 步后的 1 分真的等价吗?

不等价。越远未来的奖励越"贬值",折扣因子 就是这个贬值率。加进去就得到折扣累积回报

用 CartPole 的具体数字感受:每步奖励 +1,,活了 4 步后杆子倒了:

同样是 +1 的奖励,第 3 步的 1 分只值 —— 连乘三次后,"未来的 1 分"贬值到不到原来的四分之三。

为什么要折扣

数学上的必要性。 在无限期游戏中,如果 CartPole 永远活下去,每步都拿 +1:

两个永远活着的策略总回报都是 ,无法比较,优化无从谈起。折扣因子让每步奖励递减,保证累积奖励收敛到有限值。当 时:

γ上界含义
0.910 R_max主要关心未来 ~10 步
0.99100 R_max关心未来 ~100 步
0.9991000 R_max几乎等权看待未来 ~1000 步

经济学上的合理性。 即使游戏是有限期的,折扣因子仍有意义——经济学中叫"货币时间价值":今天的 100 块比明年的 100 块更值钱,因为你今天拿到钱可以拿去投资。 本质上量化了"早拿比晚拿好"的偏好。

递归结构

可以写成递归形式:

展开看为什么:,把 提出来:

含义:从时刻 开始的总回报 = 这一步的奖励 + 折扣后的下一步总回报。只看一步奖励,剩下的交给

这个递归结构是贝尔曼方程的基石——后面会发现贝尔曼方程本质上就是在这个关系上建立的。记住这个等式,它会在后面的内容中反复出现。

策略 π

MDP 五元组描述了游戏规则, 定义了总目标。但规则和目标本身不产生行为——你还需要一个决策规则:在每一个状态下选哪个动作。策略 就是这个决策规则。训练的目标是找到让 最大的最优策略

策略有两种形式。

确定性策略——对同一个状态永远输出同一个动作:

Q-learning 和 DQN 用的就是确定性策略——学到 Q 值后直接选 。优点是简洁,缺点是缺乏探索——如果初始估计错误,可能永远锁定在次优动作上,所以 DQN 通常需要搭配 -贪婪机制。

随机性策略——输出动作的概率分布:

随机性策略天然兼顾探索——总有小概率去尝试非首选动作,不需要额外的探索机制。

回到老虎机:策略 1(随机 50/50)就是 ;策略 2(永远选 A)就是确定性策略

在 CartPole 中,策略的输入是 4 维状态向量,输出是"向左"和"向右"的概率。训练开始时接近均匀分布(),训练后学会在杆子右倾时输出 。这正是第 1 章训练曲线上"从随机到稳定"的过程。

在 LLM 对齐中,策略就是语言模型本身——给定已生成的 token 序列(状态),输出下一个 token 的概率分布(动作)。第 2 章做 DPO 时,你训练的模型就是一个策略网络。

为什么常用随机策略

原因确定性策略随机性策略
探索需要额外机制(如 ε-贪婪)天然内建
可微性输出离散动作,梯度为零或不存在输出概率分布,有明确解析梯度
不可预测性行为可预测,对手可利用提供变化,对手难以捉摸

2014 年 Silver 等人提出了确定性策略梯度定理 [2],证明确定性策略在连续动作空间中也可做梯度优化。但实践中 PPO、A3C 等主流算法仍用随机性策略——因为它同时解决了探索和优化的问题。

本节总结

本节给出了 RL 的建模语言——三个描述工具把任何序列决策问题翻译成统一的数学对象:

1. MDP 五元组 描述游戏规则。 拿到任何 RL 问题,问五个问题就够了:站在哪(S)、干什么(A)、会怎样(P)、得几分(R)、未来打几折(γ)。老虎机、CartPole、LLM 对齐三个任务表面差异巨大,但底层都是同一套数学语言。

2. 折扣累积回报 定义一局游戏的总目标。 越远的奖励越不值钱, 保证无限期任务的回报收敛到有限值。递归结构 是贝尔曼方程的基石。

3. 策略 定义智能体如何选动作。 确定性策略 简洁直接(DQN),随机性策略 自带探索且可微(PPO)。训练的目标是找到让 最大的最优策略

至此我们有了描述问题的完整语言,但还缺少解决问题的工具。 是一个全局指标,它不告诉你"某个具体的中间局面到底好不好"。如果你知道每个局面的"价值",就可以比较不同局面的好坏,做出更好的决策。象棋中,"走车后的局面价值 80 分,走马后的局面价值 60 分",那显然应该走车。价值函数 和贝尔曼方程就是这样的求解工具——下一节的主题。

下一节将介绍 以及计算它的核心工具贝尔曼方程。V(s) 与贝尔曼方程

参考文献


  1. Sutton, R. S., & Barto, A. G. (2018). Reinforcement Learning: An Introduction (2nd ed.). MIT Press. ↩︎

  2. Silver, D., et al. (2014). Deterministic Policy Gradient Algorithms. ICML 2014. ↩︎

现代强化学习实战课程

个人非商业离线镜像 · 内容版权归 WalkingLabs 所有,依 CC BY-NC-SA 4.0 授权 · 查看原文