🚀 动手学深度学习 - 17.1 马尔可夫决策过程(MDP)

理论 + 实战双视角,带你掌握强化学习建模的起点


🎯 前言:为什么我们需要 MDP?

在强化学习中,Agent 想要学习如何在环境中做决策,找到能获得最大长期奖励的策略。我们需要一个严谨的框架来定义“状态-动作-奖励-转移”,这就是 马尔可夫决策过程(MDP)


1️⃣ MDP 的定义

马尔可夫决策过程(MDP) 是一个五元组:

符号 含义
$\mathcal{S}$ 状态空间,Agent 可能处于的所有状态
$\mathcal{A}$ 动作空间,Agent 可执行的所有动作
$P(s' s,a)$
$R(s,a)$ 奖励函数,执行 $a$ 后从 $s$ 获得的奖励
$\gamma$ 折扣因子,用于计算长期回报

🧠 我的理解:MDP 就像是为 RL 设计的一套世界规则,把每一步决策都纳入数学建模,同时提供了一个“试错反馈”的机制。


📷 图示:GridWorld 示例

机器人需要从起点移动到目标(房子🏠),同时避开红色叉(陷阱❌)。
这就是一个典型的 MDP 建模场景:

  • 状态:格子坐标

  • 动作:上下左右移动

  • 奖励:到终点 +10,掉陷阱 -10,其余动作 -1

  • 转移:可能受风/概率随机影响


2️⃣ 回报与折扣因子

轨迹(trajectory)是一个序列:

✅ 总回报(Return):

如果轨迹无限长(如不停绕圈),总回报可能发散。

✅ 引入折扣因子 $\gamma$:

  • $\gamma$ 越小:更看重眼前奖励(短视)

  • $\gamma$ 越大:更看重长远目标(远见)

🔧 工程经验

  • DQN/PPO 中常设 $\gamma=0.99$

  • 对于像 GridWorld 这样“终点明确”的任务,使用 $\gamma$ 可以防止绕圈,促使模型快速达成目标


3️⃣ 马尔可夫假设的讨论

🧩 马尔可夫性定义:

状态转移只与当前状态和当前动作有关:

🎯 也就是说,历史信息通过“当前状态”完全封装了

🚧 非马尔可夫例子:

如果一个机器人的位置不仅与当前位置、动作有关,还与“过去的速度/加速度”有关,则该系统不是马尔可夫的,除非我们把“位置 + 速度”都塞进状态空间!

✅ 结论:是否马尔可夫,取决于你怎么定义状态空间。


4️⃣ 小结(from 17.1.4)

概念 解释
MDP 五元组 $(\mathcal{S}, \mathcal{A}, P, R, \gamma)$
马尔可夫性 下一个状态只依赖当前状态和动作
强化学习目标 找到策略 $\pi$ 最大化期望累计回报
折扣回报公式 $\sum_t \gamma^t r_t$,使得未来奖励有界

5️⃣ 实战练习设计(from 17.1.5)

🚙 练习一:MountainCar

  • 状态空间:$(position, velocity)$

  • 动作空间:${左推、右推、不动}$

  • 奖励函数

    • 每一步 -1(鼓励尽快爬上山)

    • 抵达终点后 episode 结束

🧠 经验:此任务 reward sparse,训练困难,建议使用 DDPG/PPO 等策略优化方法。


🕹️ 练习二:Pong(Atari 游戏)

  • 状态空间:图像帧(或抽象 paddle+ball 的位置速度)

  • 动作空间:${上、下、不动}$

  • 奖励函数

    • 赢球 +1

    • 输球 -1

    • 其他时间 0

💡 建议搭配 DQN + CNN 特征提取模块 + ReplayBuffer 实现效果更佳。


✅ 总结一句话

马尔可夫决策过程是强化学习建模的根基,只有理解它,才真正进入了 RL 世界的大门。


Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐