Skip to content

多智能体强化学习

本页速览 从单智能体到博弈:非平稳性、纳什均衡、独立学习的振荡;CTDE 范式、MADDPG、QMIX 与值分解;MARL 在游戏、交通、拍卖中的应用与难落地真相。

多智能体强化学习 ​

一句话定位:这一页讲清楚多智能体强化学习(Multi-Agent RL, MARL)——当环境里有多个智能体同时在学习和行动,"环境"本身会随对手的变化而漂移;读完后你能说出 MARL 的非平稳性难题与纳什均衡概念,理解 CTDE(集中训练分布执行)范式及其代表算法 MADDPG、QMIX、MAPPO,并客观评估它在游戏、交通、拍卖中的落地现实。

一、新困难:当"环境"里住着会学习的对手 ​

1. 单智能体的世界 vs 多智能体的世界 ​

在单智能体 RL 里,环境是"固定"的(转移概率不变),智能体是唯一的变量。多智能体世界完全变味:每个智能体的最优行为取决于其他智能体在干什么,而其他智能体也在学习、也在变。

text
单智能体:  智能体 ──▶ 固定环境 ──▶ 反馈
           环境不变,学自己的策略即可

多智能体:  智能体1 ─┐
           智能体2 ─┼──▶ 共同环境 ──▶ 各自的反馈
           智能体3 ─┘     │
                          │
           "环境"由所有智能体的行为共同构成,
           且每个智能体都在变 → 环境漂移

2. 非平稳性:MARL 的"第一难" ​

单智能体 RL 的收敛理论建立在"环境平稳"上。MARL 里,智能体 i 面对的转移与奖励实际取决于全体策略 $\pi_1, \dots, \pi_N$:

$$ P(s' \mid s, a_1, \dots, a_N), \qquad r_i = r_i(s, a_1, \dots, a_N) $$

当对手的策略更新,智能体 i 的"环境"就变了——就像和一个人下棋,对方换了打法,你的最优应对也变了。后果:

  • 独立学习(independent learning)振荡:每个智能体各自跑单智能体算法(如各自 DQN),对手一变自己也要变,互相追逐,策略永远在震荡;
  • 共同学习(cooperative)时假象收敛:共享奖励时可能一起收敛到次优(协同崩溃);
  • 收敛概念模糊:单智能体的"最优策略"在多智能体里没有单一答案(见下节均衡)。

最常见的入门误区

"把 N 个智能体各自套一个 PPO 不就完了?"——独立学习(Independent PPO, IPPO)确实有时能工作(这正是 MAPPO 论文的惊人发现之一),但没有收敛保证、易振荡,且对手策略一变之前的经验全作废。理解为什么它不稳定,比直接套用更重要。

二、博弈论速览:均衡与博弈类型 ​

1. 纳什均衡:多智能体的"稳定解"概念 ​

单智能体追求"最优策略",多智能体只能追求"均衡"。纳什均衡(Nash equilibrium):一组策略 $(\pi_1^, \dots, \pi_N^)$,使得任何单个智能体单独改变策略都无法让自己更好:

$$ \forall i, ; V_i(\pi_i^, \pi_{-i}^) \ge V_i(\pi_i, \pi_{-i}^*), \quad \forall \pi_i $$

直觉:均衡状态下,所有人都"骑虎难下"——别人都不变时,自己改也没用。注意两个反直觉点:

  • 均衡不等于全局最优:囚徒困境里互相背叛是均衡,但合作对所有人更好;
  • 均衡可能不止一个,且不同均衡之间还可能互相不兼容(选择问题)。

2. 博弈类型:决定用哪种算法 ​

类型定义例子算法取向
完全合作共享同一奖励 $r_1=r_2=\dots$多机器人搬运、共同游戏值分解(QMIX)、CTDE
完全竞争(零和)$r_1 = -r_2$棋类对弈、捉迷藏对抗训练、自我博弈
一般和(混合动机)各算各的奖励拍卖、交通、谈判复杂:无单一答案

面试高频

"零和 vs 一般和的差别为什么重要?"零和问题有明确的价值(minimax 定理),纳什均衡可解、自博弈(self-play)有效;一般和问题均衡可能不存在纯策略解、多个均衡互相打架,理论和算法都难得多。

三、两种学习架构:独立学习 vs 联合学习 ​

1. 独立学习(Independent Learning) ​

每个智能体把其他智能体当"环境的一部分",各自跑单智能体算法。

优点缺点
实现简单(N 个算法实例)非平稳性无人管 → 振荡
可扩展到大量智能体信用分配混乱(见下)
已有单智能体代码直接复用无均衡保证

2. 联合学习(Joint Learning) ​

把"所有智能体的联合动作"当单个动作学。状态空间 × 动作空间指数爆炸(每个智能体 K 个动作、N 个智能体 → $K^N$ 联合动作),只在极小问题可行。

3. 信用分配:跨智能体版本 ​

单智能体的信用分配是"哪一步决策该为最终回报负责"(时间维度)。多智能体还要分配**"哪个智能体该为共同结果负责"**(个体维度)——联合奖励下,一个智能体的贡献被其他智能体稀释/混淆。这是 MARL 独有的核心难题,直接催生了值分解方法(见第五节)。

四、CTDE 范式:集中训练,分布执行 ​

1. 核心思想:训练时可以"作弊",执行时必须独立 ​

**CTDE(Centralized Training with Decentralized Execution)**是目前 MARL 的事实标准范式:

text
训练阶段(集中):             执行阶段(分布):
┌──────────────────────┐     ┌──────────────────────┐
│ 中心 Critic 能看到     │     │ 每个智能体只用自己    │
│ 所有智能体的状态与动作 │     │ 的局部观测 o_i 决策   │
│                      │     │                      │
│  Critic: V(s, a_1..a_N)│     │  π_i(a_i | o_i)     │
│  Actor_i: π_i(a_i|o_i)│     │  本地推理,无通信     │
│                      │     │                      │
│ 学完把 Actor 分发出去   │     │  上线即独立运行       │
└──────────────────────┘     └──────────────────────┘

为什么"集中训练"合法?因为训练时中心 Critic 能看到所有智能体状态,就能显式建模其他智能体(把对手当作可观测量),消除了部分非平稳性;而执行时只把 Actor 部署出去,满足"智能体必须本地决策"的现实约束(通信带宽、隐私、延迟)。

2. 为什么 CTDE 能缓解非平稳 ​

中心 Critic $Q(s, a_1, \dots, a_N)$ 把"其他智能体的动作"作为输入条件,于是智能体 i 的学习信号不再把对手当噪声,而是条件化在对手行为上——对手变了,价值函数会相应调整。这不能完全解决非平稳(对手训练期间分布本身在漂移),但显著稳定了训练。

五、代表算法:MADDPG、QMIX、MAPPO ​

1. MADDPG:CTDE 的提出者 ​

MADDPG(Multi-Agent DDPG, Lowe et al., 2017)把 DDPG 扩展成 CTDE:

  • 每个智能体一个 Actor(只用自己的局部观测输出动作);
  • 每个智能体一个 Critic,但 Critic 输入全体状态与全体动作(中心化);
  • 训练时轮流用中心 Critic 更新各 Actor(actor-critic 的调度)。

适用:连续动作、合作/竞争/混合都能用(论文里的水母追逐、交流协作任务)。局限:智能体数量多时中心 Critic 输入爆炸、训练成本随 N 线性以上增长。

2. QMIX:值分解(credit assignment 的正解之一) ​

QMIX(Rashid et al., 2018)解决"完全合作、共享奖励"下的信用分配。核心:把联合 Q 分解为个体 Q 的单调函数:

$$ Q_{tot}(s, \mathbf{a}) = \text{mix}\left( Q_1(o_1, a_1), \dots, Q_N(o_N, a_N) \right) $$

关键约束:单调性——$\frac{\partial Q_{tot}}{\partial Q_i} \ge 0$。含义:个体 Q 越大,联合 Q 越大。这样训练联合 Q 时,可以安全地用"每个个体选 argmax"来得到全局贪心(因为联合单调,个体最优必联合最优)。

text
QMIX 结构
  Q_1(o_1,a_1) ─┐
  Q_2(o_2,a_2) ─┼──▶ 混合网络(单调,超网络生成权重)──▶ Q_tot
  ...           ─┤         ▲
  Q_N(o_N,a_N) ─┘         │
                    用全局状态 s 条件化

直觉:QMIX 在"联合 Q 的准确学习"与"执行时按个体 argmax 分解"之间建立了可证明的桥梁,广泛用于星际争霸等合作任务。变体有 QPLEX(去掉单调性限制)。

3. MAPPO:多智能体 PPO(on-policy 意外之喜) ​

MAPPO(Yu et al., 2022)的惊人结论:把 PPO 做成"共享 Critic 的独立 Actor 版本"(即 CTDE 版 PPO),在很多合作任务上能击败 MADDPG 和 QMIX——即使各 Actor 没有显式协调。原因:

  • PPO 的 clip 本身稳定(on-policy 数据新鲜);
  • 共享中心 Critic 提供全局 advantage;
  • 实现简单(复用单智能体 PPO 代码)。

教训:复杂的协调机制不是万能药;on-policy 的稳定性 + CTDE 的全局信号,在很多问题里已经够好。IPPO(完全独立)甚至也常表现不错。

4. 对比表 ​

维度MADDPGQMIXMAPPO
适用博弈合作/竞争/混合完全合作合作/竞争
动作空间连续(也可离散)离散离散/连续
训练范式CTDE(中心 Critic)值分解(中心 Q_tot)CTDE(共享/中心 Critic)
样本效率高(off-policy)高(off-policy)低(on-policy)
稳定性中中高
实现难度中中高(混合网络)低(改 PPO)
扩展性N 大时难N 大时相对可中等

六、自博弈与联盟训练:用对手当训练数据 ​

1. 自博弈(Self-play):零和博弈的天然训练器 ​

在零和博弈(棋类、捉迷藏、Dota 2)里,"最合适的对手"就是自己最新的版本。自博弈训练:

text
自博弈循环
1. 策略与"自己(或自己过去的版本)"对打
2. 从对局中学习
3. 更新策略
4. 重复(对手永远在进步,课程永远在变难)

关键优点:复杂度自动升级——对手越来越强,训练难度呈梯度上升,天然形成课程学习(见奖励工程的课程一节),无需人工设计任务序列。AlphaGo Zero / AlphaZero 的围棋、OpenAI Five 的 Dota 2 都是自博弈的产物。

但自博弈有著名的遗忘/循环问题:策略会"针对上一版自己"优化,导致针对特定打法的过拟合,甚至两个版本互相追着打(rock-paper-scissors 循环)。这是纯自博弈不稳定的根源。

2. 联盟训练(League Training):对抗遗忘的正解 ​

AlphaStar 引入联盟训练:维护一个策略种群(联赛),训练时:

  • 主代理(main agents):打随机对手 + 打最强者,追求整体胜率;
  • 剥削者(exploiters):专门针对种群中某个对手优化,寻找其弱点;
  • 联赛赛程(league scheduling):定期挑选对手组合,像体育联赛一样排赛。

效果:主代理不会被单一打法"锁死",种群持续多样化,弱点被剥削者暴露并修复。这是目前零和博弈大模型训练的标准工程架构。

3. 种群/进化式补充 ​

  • PBT(Population-Based Training):同时训练整个种群,定期让表现差的个体"继承"表现好的个体的超参与参数(并变异),自动适应训练动态——常用于大规模 MARL 与 RLHF;
  • 自适应课程(co-evolution):让"任务难度"本身也参与进化(OpenAI 捉迷藏里机器人学会利用环境道具,就是 co-evolution 涌现的)。

面试记忆点

零和博弈的问题排序:自博弈(最简单)→ 联盟训练(对抗遗忘)→ PBT(自动调超参)。三者都依赖一个前提:奖励就是"赢/输",不需要人设计——所以博弈是 RL 最"干净"的实验室,详见Atari 与电子游戏。

4. MARL 的评估:对手就是"测试集" ​

MARL 评估的特殊困难(衔接评估与基准第七节):结果依赖对手。严谨评估要报"对多个基线的完整胜率矩阵",而不是只打随机策略。评估维度:

维度问题报告什么
对手选择对谁评估?固定基线 + 最佳响应 + 自博弈 三类胜率
稳定性与不同合作者能配合吗?换合作者后的任务成功率
涌现学到了可解释行为吗?人类评审 + 行为日志分析

七、应用:游戏、交通、拍卖 ​

1. 游戏:零和博弈的巅峰 ​

  • OpenAI Five(Dota 2,2019):5v5 大规模合作+竞争,用 PPO 系(共享奖励的团队 + 对手建模),20000 天累计训练时间击败世界冠军;
  • AlphaStar(星际争霸 2,2019):用"联盟训练"(league training)——多个策略互相对抗、定期挑出新对手,加上可调节的自我博弈;
  • 捉迷藏(Hide and Seek)(OpenAI,2019):自博弈涌现出"使用道具堵门"等高级策略——零和对抗是最强的课程(co-evolution 自动生成越来越难的任务)。

启示:零和游戏里"对手"就是最好的训练数据。自博弈/联盟训练无需外部课程,复杂度自动升级。案例展开见Atari 与电子游戏。

2. 交通:多智能体信号的现实需求 ​

城市交通信号灯、路口车辆调度天然是多智能体:每个路口一个智能体、共享全局交通目标。真实问题:

  • 动作离散(信号相位切换)、部分可观测(路口看不到全城);
  • 规模大(一个城市上千路口)→ 值分解/独立学习都行;
  • 落地慢:真实交通系统验证成本极高,多数停留在仿真(见调度与运筹优化中的 RL)。

3. 拍卖与广告:一般和博弈的真实形态 ​

广告竞价(RTB)里,多个广告主出价争夺一次曝光——每个出价者都是独立奖励(自己的转化),是一般和博弈。实际工程处理:

  • 不做完整博弈求解,而是把"出价"建模成(contextual bandit / 单智能体 + 对手出价特征作为状态特征),见推荐与广告中的 RL;
  • 简单化原因:竞价环境过于复杂、均衡求解不现实、对手策略不可观测。

八、MARL 的落地现实:难落地的真相 ​

1. 为什么 MARL 论文多、落地少 ​

障碍说明
非平稳 → 不稳定独立训练振荡、联合训练爆炸
信用分配难共享奖励下个体贡献不清
规模爆炸N 大时中心 Critic/联合动作都不可行
对手建模不完整对手策略不可观测、会变
评估难"打败谁"算好?无固定基准(见评估与基准)
工程复杂通信、同步、多进程协调(见框架与工具怎么选)

2. 现实中的"够用"路线 ​

工业界落地 MARL 时几乎总是刻意简化为单智能体/近似多智能体:

  1. 先试着用单智能体 RL 解决:把其他智能体当"环境的一部分"(特征化它们的最近行为),很多问题单智能体就够;
  2. 需要协调时再升级:从"共享奖励 + 中心 Critic"起步(CTDE),多数收益已经拿到;
  3. 避免精确博弈求解:真实系统里均衡计算既不可行也不必要,用"近似最优反应"即可。

给决策者的诚实建议

MARL 在游戏竞技(零和、奖励清晰、算力无限)和交通/调度仿真研究上真实有效;在需要真钱/真用户/长期声誉的场景里,先做单智能体 + 业务护栏,把 MARL 当作"以后可能的升级方向",而不是立项理由。

九、与单智能体的衔接 ​

  • MARL 的算法地基全部来自单智能体:Actor-Critic(MADDPG/MAPPO 是 AC 的 CTDE 化)、值分解(把联合 Q 拆解,本质还是价值学习的思路);
  • 学习顺序建议:先把单智能体马尔可夫决策过程(MDP)与Actor-Critic 家族吃透,MARL 只是"多套参数 + 集中信息";
  • 多智能体与 RLHF 的联系:LLM 多智能体对话、博弈式对齐都可用 MARL 视角分析(见RLHF 与人类反馈对齐的局限一节)。

延伸阅读 ​

参考资料 ​

  • Busoniu, L., Babuska, R., & De Schutter, B. (2008). A Comprehensive Survey of Multiagent Reinforcement Learning. IEEE Trans. Systems, Man, and Cybernetics. (MARL 综述经典)
  • Lowe, R., Wu, Y., Tamar, A., et al. (2017). Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments. NeurIPS. arXiv:1706.02275(MADDPG)
  • Rashid, T., Samvelyan, M., de Witt, C. S., et al. (2018). QMIX: Monotonic Value Function Factorisation for Deep Multi-Agent Reinforcement Learning. ICML. arXiv:1803.11485
  • Yu, C., Velu, A., Vinitsky, E., et al. (2022). The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games. NeurIPS. arXiv:2103.01955(MAPPO)
  • OpenAI (2019). OpenAI Five. https://openai.com/five/(Dota 2 击败世界冠军)
  • Vinyals, O., Babuschkin, I., Czarnecki, W. M., et al. (2019). Grandmaster level in StarCraft II using multi-agent reinforcement learning. Nature, 575, 350-354.(AlphaStar)