从 MDP 到 Dec-POMDP:理解单智能体与多智能体决策模型的差异
在强化学习和多智能体系统中,经常会遇到几个层层递进的概念:MDP、POMDP、Dec-POMDP。
它们都在描述“智能体如何在环境中连续做决策”,但它们对智能体数量、状态可见性、信息共享方式的假设并不相同。
本文主要对比 MDP 和 Dec-POMDP,并顺带引入 POMDP 作为中间桥梁,帮助理解它们之间的演进关系。
1. MDP:完整可观测下的单智能体决策
MDP 全称是 Markov Decision Process,中文叫 马尔可夫决策过程。
它描述的是:
一个智能体在能够观察完整环境状态的情况下,如何选择动作来最大化长期累计收益。
一个 MDP 通常可以表示为:
其中:
- :状态集合,表示环境可能处于哪些状态;
- :动作集合,表示智能体可以执行哪些动作;
- :状态转移概率,表示在状态 下执行动作 后进入状态 的概率;
- :奖励函数,表示在状态 下执行动作 可以获得的即时奖励;
- :折扣因子,用来衡量未来奖励的重要性。
MDP 的核心假设是 马尔可夫性:
它的意思是:
下一步会发生什么,只取决于当前状态和当前动作,而不取决于更早的历史。
也就是说,只要当前状态 已经包含了足够的信息,智能体就不需要再关心过去发生了什么。
2. Bellman 方程:MDP 的核心思想
在 MDP 中,一个非常重要的公式是 Bellman 最优方程:
这个公式表达的是:
当前状态的最优价值,等于在所有可选动作中,选择那个“当前奖励 + 折扣后的未来期望价值”最大的动作。
拆开来看,$V(s)$ 表示状态 的价值,也就是从状态 出发,之后都采取最优策略时,能够获得的长期期望收益。
表示当前这一步马上获得的奖励。
而这一项:
表示执行动作 后,未来可能进入多个不同状态。每个状态 有不同的发生概率 ,也有自己的价值 ,因此需要对这些未来状态价值做加权平均。
再乘上折扣因子:
表示折扣后的未来期望价值。
所以这一整项:
表示:
在状态 下选择动作 ,能够带来的总价值。
最后外面的 表示:
在所有可能动作中,选择总价值最大的那个动作。
因此,Bellman 方程本质上是在说:
一个动作好不好,不只取决于它眼前能带来多少奖励,还取决于它会把智能体带到什么样的未来状态。
这也是动态规划、Q-learning、DQN、PPO 等强化学习方法的重要理论基础。
3. POMDP:当智能体看不清完整状态
MDP 有一个较强的假设:智能体能够知道完整的当前状态。
但现实中,很多场景并不满足这个条件。
例如:
- 自动驾驶汽车无法知道所有车辆的真实意图;
- 机器人只能通过摄像头看到局部环境;
- 游戏 AI 可能看不到地图上的全部敌人;
- 推荐系统无法完全知道用户真实偏好。
这时就需要 POMDP。
POMDP 全称是 Partially Observable Markov Decision Process,中文叫 部分可观测马尔可夫决策过程。
相比 MDP,POMDP 多了一个核心概念:观察 Observation。
POMDP 通常可以表示为:
其中:
- :真实状态集合;
- :动作集合;
- :状态转移函数;
- :奖励函数;
- :观察集合;
- :观察概率函数;
- :折扣因子。
在 POMDP 中,智能体看不到真实状态 ,只能看到一个局部观察 。
因此,策略不再直接写成:
而更像是:
不过更准确地说,智能体通常需要根据历史观察和历史动作维护一个 belief,也就是对真实状态的概率估计:
其中 表示智能体过去经历过的观察和动作历史。
belief 可以理解为:
智能体对“当前真实状态是什么”的概率分布。
例如,一个机器人在迷宫中移动,但它的传感器不够精确。它可能会认为:
也就是说,它认为自己有 的概率在位置 ,$20%$ 的概率在位置 ,$10%$ 的概率在位置 。
这就是 POMDP 比 MDP 更难的地方:智能体不仅要做决策,还要推断自己到底处于什么状态。
4. Dec-POMDP:多个智能体,各自只能看到局部信息
Dec-POMDP 全称是 Decentralized Partially Observable Markov Decision Process,中文可以叫 去中心化部分可观测马尔可夫决策过程。
它可以理解成 POMDP 的多智能体版本。
如果用一句话对比:
- MDP:一个智能体,能看到完整状态;
- POMDP:一个智能体,只能看到局部观察;
- Dec-POMDP:多个智能体,每个智能体都只能看到自己的局部观察。
Dec-POMDP 描述的是:
多个智能体在无法看到完整环境、也无法完全知道彼此信息的情况下,如何协作完成一个共同目标。
一个 Dec-POMDP 通常可以表示为:
其中:
- :全局真实状态集合;
- :第 个智能体的动作集合;
- :状态转移函数;
- :团队共享奖励函数;
- :第 个智能体的观察集合;
- :观察概率函数;
- :折扣因子;
- :智能体数量。
在 Dec-POMDP 中,每个智能体 都有自己的动作 。
所有智能体的动作组合在一起,形成联合动作:
环境根据当前真实状态 和联合动作 转移到下一个状态 :
或者写成:
每个智能体会收到自己的局部观察:
整个团队获得一个共享奖励:
目标是最大化团队的长期累计奖励:
5. Decentralized 到底是什么意思?
Dec-POMDP 中的 Decentralized,重点不是说训练时一定不能使用集中信息,而是说:
执行时,每个智能体只能根据自己的局部信息独立做决策。
在 MDP 中,策略通常可以写成:
意思是:
给定完整状态 ,选择动作 。
但在 Dec-POMDP 中,第 个智能体看不到完整状态 ,它只能根据自己的局部历史 选择动作:
这里的 可以表示:
也就是说,第 个智能体只能基于自己过去看到过什么、做过什么,以及当前观察到了什么来决策。
多个智能体的局部策略组合起来,形成联合策略:
Dec-POMDP 要求我们寻找一个最优联合策略:
这就是 Dec-POMDP 的核心问题。
6. 一个直观例子:仓库机器人协作
假设有两个机器人在仓库中寻找并搬运一个包裹。
如果用 MDP 建模,问题可能是:
- 只有一个机器人;
- 它知道完整仓库地图;
- 它知道自己和包裹的准确位置;
- 它每一步选择上、下、左、右;
- 目标是用最短路径找到包裹。
这时,机器人的策略可以写成:
也就是根据完整状态 选择动作 。
但在 Dec-POMDP 中,情况会变成:
- 有多个机器人;
- 每个机器人只能看到自己附近的区域;
- 机器人之间不能实时共享所有信息;
- 每个机器人都不知道其他机器人具体观察到了什么;
- 它们需要协作完成寻找和搬运任务;
- 最终奖励由整个团队共享。
比如:
- 机器人 A 可能看到了包裹;
- 机器人 B 没看到包裹,但看到了通道堵塞;
- A 不一定知道 B 的观察;
- B 也不一定知道 A 的观察;
- 但它们仍然要通过各自的局部决策完成协作。
此时,两个机器人的联合动作可以写成:
环境转移可以写成:
共享奖励可以写成:
机器人 A 和机器人 B 的策略分别是:
其中 和 分别是两个机器人各自的局部历史。
这就是 Dec-POMDP 的核心难点:
每个智能体都只掌握不完整的信息,但最终要形成全局协作行为。
7. MDP 与 Dec-POMDP 的核心区别
| 维度 | MDP | Dec-POMDP |
|---|---|---|
| 智能体数量 | 单个智能体 | 多个智能体 |
| 状态可见性 | 完整可观测 | 部分可观测 |
| 决策方式 | 基于全局状态决策 | 每个智能体基于自己的局部观察或局部历史决策 |
| 动作形式 | 单个动作 | 联合动作 |
| 奖励形式 | 单个智能体奖励 | 团队共享奖励 |
| 策略形式 | ||
| 难点 | 如何选择长期收益最大的动作 | 局部观察、信息不对称、协作、联合动作空间膨胀 |
| 典型应用 | 游戏、路径规划、基础强化学习 | 多机器人协作、多智能体强化学习、分布式传感器、协同控制 |
8. 为什么 Dec-POMDP 比 MDP 难很多?
MDP 的核心问题是:
当前状态下,如何选择最优动作?
但 Dec-POMDP 的难点是多层叠加的。
8.1 每个智能体看不到完整状态
在 MDP 中,智能体知道当前状态 。
但在 Dec-POMDP 中,每个智能体只能看到自己的局部观察 :
这意味着智能体必须先推断环境,再做决策。
8.2 每个智能体不知道其他智能体看到了什么
在多智能体协作中,一个智能体不仅要考虑环境,还要考虑队友。
但问题是:
我不知道队友看到了什么,也不知道队友会如何判断,但我还要和它配合。
这会导致协作难度显著上升。
8.3 联合动作空间会快速膨胀
如果有 个智能体,每个智能体都有 个动作,那么联合动作空间大小是:
例如,5 个机器人,每个机器人有 10 个动作,那么联合动作空间就是:
这意味着动作组合数量会随着智能体数量指数级增长。
8.4 历史信息也会快速膨胀
在 MDP 中,智能体可以直接根据当前状态 做决策。
但在 Dec-POMDP 中,每个智能体通常要基于自己的历史信息 做决策:
随着时间步 增长,可能的历史轨迹数量也会快速增加。
因此,Dec-POMDP 通常比 MDP 难求解得多。
9. 从 MDP 到 Dec-POMDP 的演进关系
可以用下面这个路径来理解:
也就是说,Dec-POMDP 在 MDP 的基础上同时增加了两个复杂度:
如果再加上去中心化执行的限制,问题会进一步复杂化。
10. 集中训练,去中心化执行
在现代多智能体强化学习中,经常会使用一种范式:
Centralized Training, Decentralized Execution,简称 CTDE。
它的意思是:
训练时,可以使用更多全局信息,例如完整状态 、所有智能体的动作 、全局奖励 。
但执行时,每个智能体仍然只能根据自己的局部历史 做决策:
这种方式试图在训练效率和部署约束之间取得平衡。
也就是说,训练时可以“开上帝视角”,但真正执行时,每个智能体仍然必须只依赖自己的局部信息。
11. 总结
MDP 和 Dec-POMDP 都是在描述序列决策问题,但它们适用的场景不同。
MDP 更适合描述:
- 单个智能体;
- 能够观察完整状态;
- 根据当前状态做动作选择;
- 目标是最大化长期累计奖励。
它的策略形式通常是:
它的目标可以写成:
Dec-POMDP 更适合描述:
- 多个智能体;
- 每个智能体只能看到局部信息;
- 执行时没有中心控制器;
- 所有智能体需要协作完成共同目标。
它的局部策略形式通常是:
它的联合优化目标可以写成:
一句话总结:
MDP 是强化学习中最基础的单智能体决策模型;Dec-POMDP 则是面向多智能体、部分可观测、去中心化协作场景的更复杂模型。
如果说 MDP 关心的是:
我在当前状态下应该做什么?
那么 Dec-POMDP 关心的是:
我们每个人都只知道一部分信息,在无法完全共享视野的情况下,应该如何配合?
这也是 Dec-POMDP 在多机器人协作、自动驾驶车队、分布式控制、多智能体强化学习中非常重要的原因。