想象一个热闹的厨房:几位厨师围着一口大锅,锅里正炖着汤。每位厨师都有自己的拿手动作——有人加盐、有人加糖、有人添水、有人扔辣椒。他们都在根据锅里汤的状态做决定,但锅里的汤被所有人同时搅动:你刚看到汤咸了准备加水,旁边厨师却先倒了一勺油;你上一次加糖效果好,这次加糖却因为别人加了醋而变得奇怪。这口汤,就是多智能体强化学习(MARL)研究的核心场景——多个智能体共享同一个环境,环境状态被所有人的动作共同改变,任何一方的学习都会让对方的世界“不稳定”。 一个智能体相当于一位厨师,它通过试错调整自己的“加料策略”;整个任务就是通过不断尝试,让每位厨师学会在别人的存在下做出最佳决定。这种学习不能只盯着自己眼前的勺子,还要考虑同伴的配合或对手的干扰。现实中的多机器人协作、自动驾驶车队、游戏AI对抗,都是这口汤的放大版。

岗位关联

掌握多智能体强化学习,意味着你能让 AI 学会在多主体共存的动态环境中协作博弈、互相适应,这是把强化学习从单机游戏推向真实世界的关键技能,也是机器人、自动驾驶、游戏 AI 等高端岗位的硬通货。

目录
  1. 可视化演示
  2. 核心概念:共享环境的“非平稳”
  3. 问题建模:从单人剧本到随机博弈
  4. 博弈类型:合作、竞争与混合
  5. 核心挑战:非平稳、信用分配与可扩展性
  6. 学习范式:集中式训练与去中心化执行
  7. 经典算法:MADDPG、QMIX 与 COMA
  8. 评价指标:纳什均衡、帕累托最优与社会福祉
  9. 应用场景:从厨房到真实世界
  10. AI 应用场景
  11. Python 演示
  12. 常见误区
  13. 面试题

可视化演示

本节配有交互动效(进入视口后自动加载,约 3KB)。

非平稳性挑战 单智能体RL假设环境稳定,MARL中环境因其他智能体学习而变化 每个智能体视角下的环境都在不断变化 博弈场景分类 团队奖励 R_team = Σ rᵢ Q_tot(s,a⃗) = f(Q₁,Q₂,...,Qₙ) 多智能体强化学习MARL可视化:展示...

核心概念:共享环境的“非平稳”

想象你独自炖汤,锅里的咸淡完全由你决定,昨天学到的“汤咸了就加水”今天依然有效。但如果你和其他几位厨师同时围着一口锅操作,情况就变了:你刚准备加水,旁边的厨师先倒了一勺生抽;你注意到汤的颜色变深了,但这个变化是别人造成的。你的经验在新环境里会失效,因为环境的规律不再由你一个人掌控。

这种“多位决策者共享同一环境”的场景,正是多智能体强化学习(MARL)研究的内容。在单智能体强化学习中,环境的状态转移只取决于当前状态和这个智能体的动作;而在多智能体环境中,状态转移还会依赖其他智能体的动作,这使得环境从“静态剧本”变成了“动态博弈”。

MARL 研究 n 个智能体在同一环境中学习。每个智能体观察部分或全部状态,选择动作,获得奖励。关键是环境的状态转移概率 P 现在写成 $P(s' \mid s, a_1, \ldots, a_n)$,也就是说,下一时刻的状态是所有人动作的联合结果。这就是“非平稳性”的数学来源:任何一个智能体的策略更新,都会改变其他智能体眼中的环境。

回到厨房,每位厨师都在不断试错:你发现只要别人也在加料,你就不能把“汤变咸了”归结为自己的错。多智能体学习的起点,就是接受这口汤是“大家共同搅动的汤”。

P(s′∣s,a1,a2,…,an)\displaystyle P(s' \mid s, a_1, a_2, \ldots, a_n)
这个式子表示:在状态 s 下,所有智能体分别做出动作后,环境转移到新状态 s' 的概率。它依赖每个人的选择,所以环境对任何单个智能体而言都是不稳定的。
  1. 状态 s当前的环境快照,好比汤当前的咸淡、颜色和温度。
    ss
  2. 动作 a_i第 i 位厨师的加料决定,代表智能体 i 在当前状态下的选择。
    ai,i=1,2,…,na_i, \quad i=1,2,\ldots,n
  3. 联合动作 (a1,……,an)所有人的动作一起发生,汤的变化是合力作用的结果。
    (a1,a2,…,an)(a_1, a_2, \ldots, a_n)
  4. 转移概率 P(s'|……)给定当前状态和联合动作,下一状态的概率分布。因为包含所有动作,环境规律随他人策略变化而漂移。
    P(s′∣s,a1,…,an)P(s' \mid s, a_1, \ldots, a_n)

问题建模:从单人剧本到随机博弈

厨师们需要一本“规则手册”来明确自己能做什么、锅能变成什么状态、做得好不好。单人炖汤时,手册是固定的菜谱;多人炖汤时,手册必须写清楚每个人的动作空间和奖励。否则大家各凭感觉,汤只能越炖越乱。

单智能体强化学习用马尔可夫决策过程(MDP)建模:状态、动作、转移、奖励。多智能体场景需要扩展,于是有了随机博弈(Stochastic Game,也叫马尔可夫博弈)。它把每个智能体都放进同一个状态转移框架里,但允许每个智能体有自己的动作和奖励。

随机博弈可以写成元组 $\langle S, O, A_1, \ldots, A_n, P, R_1, \ldots, R_n, \gamma \rangle$。S 是全局状态集,O 是观测集合,A_i 是智能体 i 的动作集,P 是联合状态转移函数,R_i 是智能体 i 的奖励函数,γ 是折扣因子。当 n=1 时,它退化为普通的 MDP;当状态只有一个时,它退化为矩阵博弈。这个框架涵盖了合作、竞争和混合场景。

有了这本“手册”,厨师们就知道自己该看什么、能做什么、会得到什么反馈。接下来重要的是搞清楚各位厨师是同心协力还是各怀心思。

⟨S,O,A1,…,An,P,R1,…,Rn,γ⟩\displaystyle \langle S, O, A_1, \ldots, A_n, P, R_1, \ldots, R_n, \gamma \rangle
这是 MARL 中建模的基本框架,相当于给每位厨师发了一份“角色说明 + 奖惩表”。
  1. 状态集 S 与观测集 OS 是锅和食材的完整真相,O 是厨师实际能看到的部分(如颜色、气味)。
    S,  OS, \; O
  2. 动作集 A_i第 i 位厨师允许的加料动作。
    Ai,i=1,…,nA_i, \quad i=1,\ldots,n
  3. 转移函数 P描述从当前状态和联合动作到下一状态的规律。
    P:S×A1×⋯×An→Δ(S)\displaystyle P: S \times A_1 \times \cdots \times A_n \rightarrow \Delta(S)
  4. 奖励函数 R_i每位厨师自己的评判标准,可能相同(合作)也可能相反(竞争)。
    Ri:S×A1×⋯×An→R\displaystyle R_i: S \times A_1 \times \cdots \times A_n \rightarrow \mathbb{R}
  5. 折扣因子 γ对未来的重视程度,越接近 1 越看重长远。
    γ∈[0,1)\gamma \in [0,1)

博弈类型:合作、竞争与混合

同是几位厨师,可能关系完全不同。有的是“汤好喝大家一起分钱”的合作伙伴;有的则是抢同一勺盐的对手;还有的是既合作研发新菜又竞争主厨位置的混合体。这些关系决定了每位厨师的学习目标。

MARL 按博弈类型可分为合作博弈、竞争博弈和混合博弈。合作博弈中所有智能体共享同一个目标,常使用团队奖励;竞争博弈中一方的收益是另一方的损失,如零和博弈;混合博弈则同时包含共同利益和利益冲突。

合作博弈中我们经常把多个智能体的奖励相加或平均,形成一个团队目标。智能体需要学会协调,避免“三个和尚没水喝”的局面。

合作时,厨师们要琢磨怎么配合才能让整锅汤最香;竞争时,他们要思考怎么抢到最关键的调料;混合时,则要在合作与对抗间找平衡。

Rteam(s,a1,…,an)=∑i=1nRi(s,a1,…,an)\displaystyle R_{\text{team}}(s, a_1, \ldots, a_n) = \sum_{i=1}^{n} R_i(s, a_1, \ldots, a_n)
团队奖励把每位厨师的个人满意度加总,鼓励大家往同一个方向使劲。
  1. 单智能体奖励 R_i每位厨师在自己标准下的即时回馈。
    Ri(s,a1,…,an)R_i(s, a_1, \ldots, a_n)
  2. 团队奖励 R_team把所有人的回馈加起来,代表整体汤的质量。
    Rteam=∑i=1nRi\displaystyle R_{\text{team}} = \sum_{i=1}^{n} R_i
  3. 最大化目标在合作任务中,所有智能体一起最大化团队奖励的期望累积和。
    max⁡π1,…,πnE[∑t=0∞γtRteamt]\displaystyle \max_{\pi_1,\ldots,\pi_n} \mathbb{E}\left[\sum_{t=0}^\infty \gamma^t R_{\text{team}}^t\right]

核心挑战:非平稳、信用分配与可扩展性

汤越煮越复杂,问题也来了:味道变差了,不知道该怪谁;经验老是不稳定,昨天好用的策略今天失灵;人数一多,每位厨师要面对的可能性爆炸式增长。

MARL 的核心挑战正是这几个:非平稳性、信用分配、探索困境和可扩展性。非平稳性指环境转移概率依赖所有智能体策略;信用分配指团队结果很难归因到每个成员;探索困境指联合动作空间随人数指数增大;可扩展性指算法难以适应大量智能体。

以联合期望回报为目标:

其中 $R_t$ 是所有智能体在 t 步的团队奖励(或每个智能体自己的奖励)。这个目标要求策略之间互相适应,而适应过程中环境对单个智能体不断变化,导致普通 Q-learning 难以收敛。

这些挑战就像一锅汤里的暗流:每个厨师都在按自己的理解调味,但汤的味道是所有人的合力。要真正炖好这锅汤,需要新的学习范式。

J(π1,…,πn)=Eτ∼(P,π1,…,πn)[∑t=0TγtRt]\displaystyle J(\pi_1, \ldots, \pi_n) = \mathbb{E}_{\tau \sim (P, \pi_1, \ldots, \pi_n)} \left[ \sum_{t=0}^{T} \gamma^t R_t \right]
Eτ∼(P,π1,…,πn)[∑t=0TγtRt]\displaystyle \mathbb{E}_{\tau \sim (P, \pi_1, \ldots, \pi_n)} \left[ \sum_{t=0}^{T} \gamma^t R_t \right]
联合回报受所有智能体策略的影响,任何一个人的改变都会让其他人的目标函数曲线变形。
  1. 策略 π_i第 i 位厨师的加料习惯,即从状态到动作的映射。
    πi:Oi→Δ(Ai)\displaystyle \pi_i: O_i \rightarrow \Delta(A_i)
  2. 轨迹 τ从开始到结束,整个过程中所有状态和动作的序列。
    τ=(s0,a10,…,an0,s1,…)\tau = (s_0, a_1^0, \ldots, a_n^0, s_1, \ldots)
  3. 期望 E对随机状态转移和策略采样取平均。
    Eτ∼(P,π1,…,πn)[⋅]\mathbb{E}_{\tau \sim (P, \pi_1, \ldots, \pi_n)}[\cdot]
  4. 联合策略优化所有策略同时调整,目标函数 J 随每个策略变化,形成耦合优化问题。

学习范式:集中式训练与去中心化执行

多厨师协作时,一个常见做法是:排练时导演站在锅边,能看到所有人的动作和锅的完整状态,统一指挥;正式演出时,每位厨师只能看自己眼前的那一块,凭排练时的默契独立操作。这就叫“集中式训练,去中心化执行”(CTDE)。

CTDE 是当前 MARL 算法的主流范式。训练时,中心化模块可以获得全局状态和所有智能体的动作,从而更好地估计价值;执行时,每个智能体只依赖自己的局部观测做出决策,满足现实部署的通信与隐私约束。

中心化 Q 函数的形式为:

这里的 $Q_i$ 是智能体 i 在全局状态下,给定所有智能体动作后的预期回报。由于训练时能看到全局信息,$Q_i$ 可以稳定估计,而执行时智能体只用自己的 actor 网络,输入局部观测。

排练时的全局视野让厨师们知道“我的动作在整体中是什么效果”,演出时每个人又不需要实时沟通,这种分工让多智能体协作变得可行。

Qi(s,a1,a2,…,an)=E[∑t=0∞γtRit  |  s,a1,…,an]\displaystyle Q_i(s, a_1, a_2, \ldots, a_n) = \mathbb{E}\left[ \sum_{t=0}^{\infty} \gamma^t R_i^t \;\middle|\; s, a_1, \ldots, a_n \right]
  1. 全局状态 s训练时需要看到的完整锅况。
    ss
  2. 联合动作 (a1,……,an)所有厨师的加料。
    (a1,…,an)(a_1, \ldots, a_n)
  3. 期望回报从这一刻开始,按当前策略继续执行所获得的折扣累积奖励。
    E[∑t=0∞γtRit∣s,a1,…,an]\displaystyle \mathbb{E}\left[\sum_{t=0}^{\infty} \gamma^t R_i^t \mid s, a_1,\ldots,a_n\right]
  4. 集中式训练用全局信息计算 Q,让价值估计避免非平稳干扰。

经典算法:MADDPG、QMIX 与 COMA

基于 CTDE 思想,研究者设计了几种“分工手册”。MADDPG 像一位总导演,给每位厨师配一个只看局部的小助手,但导演自己在排练时看全局来评判;QMIX 则像一份“团队计分表”,把整锅汤的得分分解给每位厨师;COMA 更像一本“功劳簿”,能算出如果这位厨师不放调料汤会怎么样,从而知道他到底贡献了多少。

这三个算法是 MARL 的代表。MADDPG 是演员-评论家(Actor-Critic)框架在多智能体上的扩展,评论家利用全局信息,演员只利用局部信息;QMIX 是值分解方法,用单调网络把联合 Q 值分解为各智能体的 Q 值;COMA 主要解决合作任务中的信用分配,使用反事实基线。

COMA 的反事实优势函数:

其中 $\mathbf{a}$ 表示所有智能体的动作,$a_{-i}$ 表示除 i 之外其他人的动作。这个公式衡量的是:保持其他厨师的动作不变,智能体 i 实际动作相比“按自己策略随机发挥”的额外贡献。

有了功劳簿,厨师们就能准确知道哪一步加对了料,哪一步是画蛇添足,团队协作的学习效率大大提升。

Ai(s,a)=Qi(s,a)−∑ai′πi(ai′∣oi) Qi(s,(a−i,ai′))\displaystyle A_i(s, \mathbf{a}) = Q_i(s, \mathbf{a}) - \sum_{a'_i} \pi_i(a'_i \mid o_i) \, Q_i(s, (a_{-i}, a'_i))
  1. 实际动作贡献 Q(s,a)在这个联合动作下,团队预期的回报。
    Qi(s,a)Q_i(s, \mathbf{a})
  2. 反事实期望 Q保持别人的动作不变,把自己换成按策略 π_i 随机采样得到的各种动作,计算平均 Q。
    ∑ai′πi(ai′∣oi)Qi(s,(a−i,ai′))\displaystyle \sum_{a'_i} \pi_i(a'_i \mid o_i) Q_i(s, (a_{-i}, a'_i))
  3. 优势 A_i两者相减,得到“我这次动作带来的边际价值”。
    Ai(s,a)=Qi(s,a)−Eai′∼πi[Qi(s,(a−i,ai′))]\displaystyle A_i(s, \mathbf{a}) = Q_i(s, \mathbf{a}) - \mathbb{E}_{a'_i \sim \pi_i}\left[Q_i(s, (a_{-i}, a'_i))\right]

评价指标:纳什均衡、帕累托最优与社会福祉

一锅汤端上桌,怎么评价好不好?有人看“稳定”:是否每个人都没有动力再改自己的配方;有人看“效率”:是否还能通过调整让一部分人更好而没人变差;还有人看“整体幸福”:所有人的满意度总和是否最大。

在 MARL 中,这三个视角分别对应纳什均衡、帕累托最优和社会福祉。纳什均衡是无人愿意单方面改变策略的稳定状态;帕累托最优是任何改进都不可能不损害他人;社会福祉则是所有智能体效用的总和或加权和。

纳什均衡的数学定义如下:对于所有智能体 i 和任意替代策略 π_i',

其中 $V_i$ 是智能体 i 在联合策略下的期望回报,$\pi_{-i}$ 表示其他智能体的策略组合。

如果一口汤最终处于纳什均衡,说明每位厨师都找到了自己的“最优回应”;但均衡不等于最好,可能集体都满意但整体还有改进空间,所以还要结合帕累托和社会福祉评价。

Vi(πi∗,π−i∗)≥Vi(πi′,π−i∗),∀i,πi′\displaystyle V_i(\pi_i^*, \pi_{-i}^*) \ge V_i(\pi_i', \pi_{-i}^*), \quad \forall i, \pi_i'
  1. 联合策略 (π_i*, π_-i*)每个人都在使用当前策略的组合。
    (πi∗,π−i∗)(\pi_i^*, \pi_{-i}^*)
  2. 收益 V_i智能体 i 在该联合策略下的长期期望回报。
    Vi(πi∗,π−i∗)V_i(\pi_i^*, \pi_{-i}^*)
  3. 比较任何替代策略 π_i' 都不能带来更高的收益,因此没有厨师想偷偷改变加料习惯。
    ∀πi′,Vi(πi∗,π−i∗)≥Vi(πi′,π−i∗)\displaystyle \forall \pi_i', \quad V_i(\pi_i^*, \pi_{-i}^*) \ge V_i(\pi_i', \pi_{-i}^*)

应用场景:从厨房到真实世界

把厨房里的汤放大到真实世界,就是多机器人协作搬运、自动驾驶车队在道路上互相让行、游戏 AI 的多人对战。每一个场景里,多个智能体都在同一个“大锅”中互相影响。

MARL 的应用场景非常多。多机器人协作时,几个机器人需要共同搬运一个物体,这类似合作博弈;自动驾驶车队调度时,车辆既要合作避免拥堵,也可能竞争路权,属于混合博弈;游戏 AI 中,玩家队伍内部合作,敌我之间对抗,是典型的合作+竞争。

以一个多机器人协作任务为例,团队目标可以写成平均奖励:

这个目标让每个机器人不只是追求自己的局部利益,而是共同完成搬运任务。部署时通常采用 CTDE:训练时用全局状态,运行时每个机器人只用自己的传感器观测。

无论是厨房里的厨师,还是仓库里的机器人,本质上都在学着与“别人”共处。多智能体强化学习,就是把“一起炖汤”的智慧交给 AI 的方法论。

Jteam=1nE[∑t=0Tγt∑i=1nRit]\displaystyle J_{\text{team}} = \frac{1}{n} \mathbb{E}\left[ \sum_{t=0}^{T} \gamma^t \sum_{i=1}^{n} R_i^t \right]
  1. 单步奖励 R_i^t第 i 个机器人第 t 步获得的即时奖励。
    RitR_i^t
  2. 团队平均对所有机器人的奖励取平均,避免某个个体“躺赢”。
    1n∑i=1nRit\displaystyle \frac{1}{n}\sum_{i=1}^{n} R_i^t
  3. 期望累积对整个回合的折扣累积求和再取期望。
    E[∑t=0Tγt1n∑i=1nRit]\displaystyle \mathbb{E}\left[\sum_{t=0}^{T} \gamma^t \frac{1}{n}\sum_{i=1}^{n} R_i^t\right]

AI 应用场景

多机器人仓库协作搬运

阶段:模型训练与部署

解决的问题:传统固定路径搬运无法应对动态障碍,AI 通过 CTDE 让多个机器人学习协同避让和任务分配。传统方法写死路径,遇到其他机器人或障碍就得停下等待,效率极低;MARL 让每个机器人学会与同伴互动,动态调整行进路线。

具体案例:某仓库用 10 台 AGV 同时搬运货架,每台 AGV 只能看到局部传感器数据。采用 MADDPG 集中式训练,训练时共享全局地图,部署时各自决策,搬运效率提升 30%,碰撞率下降一半。

自动驾驶车队协调通行

阶段:策略学习与评估

解决的问题:多车交汇时车辆各自为政会导致拥堵或事故,MARL 让车辆学习博弈式驾驶策略。传统规则方法难以覆盖所有交互场景,而 MARL 能从“互相试探”中学会谁先走、谁让行。

具体案例:在模拟高速公路匝道场景中,多辆自动驾驶车用 MARL 学习汇入博弈。结果显示车辆能自动形成交替通行的默契,系统整体通行时间下降 15%,追尾风险显著降低。

游戏 AI 团队对抗

阶段:环境建模与智能体训练

解决的问题:传统单智能体 AI 无法应对多人对抗中的队友配合和对手策略变化,MARL 训练合作与竞争并存的策略。游戏 AI 需要同时处理“队友协作”和“敌方对抗”,这正是混合博弈的典型。

具体案例:在《Dota 2》类多人对战环境中,OpenAI Five 使用 MARL 让五个英雄智能体通过团队配合学习推进、团战和防守,最终击败职业战队。

Python 演示

python47 行
import random  class Agent:    def __init__(self, eid, actions=[-1, 0, 1], alpha=0.5, gamma=0.9, epsilon=0.2):        self.eid = eid        self.actions = actions        self.alpha = alpha        self.gamma = gamma        self.epsilon = epsilon        self.q = {}     def get_q(self, state, action):        return self.q.get((state, action), 0.0)     def choose(self, state):        if random.random() < self.epsilon:            return random.choice(self.actions)        vals = [self.get_q(state, a) for a in self.actions]        best = max(vals)        return self.actions[vals.index(best)]     def update(self, state, action, reward, next_state):        td = reward + self.gamma * max(self.get_q(next_state, a) for a in self.actions) - self.get_q(state, action)        self.q[(state, action)] = self.get_q(state, action) + self.alpha * td  def main():    agents = [Agent(1), Agent(2)]    for _ in range(1000):        temp = 0        for _ in range(20):            actions = [a.choose(temp) for a in agents]            noise = random.uniform(-0.1, 0.1)            next_temp = temp + sum(actions) + noise            before = abs(temp)            after = abs(next_temp)            reward = 1.0 if after < before else -1.0            for a, act in zip(agents, actions):                a.update(temp, act, reward, next_temp)            temp = next_temp    for a in agents:        print("Agent", a.eid, "Q:", {k: round(v, 2) for k, v in list(a.q.items())[:10]})  if __name__ == "__main__":    main()
目的:用两个智能体在共享“温度环境”中独立 Q-learning,演示多智能体环境下因彼此干扰而导致的非平稳学习过程。
  1. class Agent:定义一个智能体,每位“厨师”有自己的 Q 表和策略。
  2. self.q = {}用字典存储 Q 值,相当于厨师的“经验笔记”,记录不同状态下各个动作的价值。
  3. def choose(self, state):用 ε-贪婪策略选择动作,偶尔随机探索,平时选当前 Q 最大的动作。
  4. td = reward + self.gamma * max(...) - self.get_q(state, action)计算时序差分误差,这是 Q-learning 的核心更新量。
  5. actions = [a.choose(temp) for a in agents]两个智能体同时出招,构成联合动作。
  6. next_temp = temp + sum(actions) + noise环境温度由两人的动作共同决定,任何一方的变化都会影响另一方。
  7. reward = 1.0 if after < before else -1.0团队奖励:只要让温度更接近目标,大家都得正分。
  8. for a, act in zip(agents, actions):每个智能体都用同一个团队奖励更新自己的 Q 表,但并不知道对方做了什么,导致 Q 值随对方策略漂移而波动。

常见误区

误区“我把同样的 RL 算法复制 n 份,每个智能体各学各的,不就是多智能体强化学习了吗?”

正解不行。单智能体 RL 假设环境模型固定,而多智能体环境会因其他智能体策略更新而改变。独立并行学习时,每个智能体面对的“环境”不停漂移,就像厨师们各按自己的菜谱炖汤,却忘了汤是共享的,结果往往发散。MARL 需要显式处理其他智能体的影响,比如用集中式评价器或建模对手策略。

为何常见:因为初学者最先接触单智能体 RL,很自然把“多个独立 RL 进程”当成“多智能体”,忽略了状态转移对联合动作的依赖。

误区“既然要让团队表现好,给所有智能体同一个奖励不就行了?”

正解团队奖励确实用于合作任务,但如果所有人只看同一个总分,单个智能体很难知道自己该为哪个动作负责,这就是信用分配问题。汤好喝了,不知道是谁的功劳,厨师们就学不好。需要额外机制(如 COMA 的反事实基线、QMIX 的值分解)把团队奖励分解到每个个体。

为何常见:合作场景中团队目标直观,容易忽略“共同目标”不等于“个体可学习信号”这一关键差异。

误区“算法收敛到纳什均衡,说明已经达到最好的结果了。”

正解纳什均衡只保证“没有人愿意单方面改变”,但可能所有人都困在一个普通策略组合上,存在另一个让大家都更好的帕累托改进。就像几位厨师都习惯用酱油调味,没人单独改,但其实换用高汤整体会更棒。评价一个多智能体系统,需要同时看稳定性、效率和福祉。

为何常见:博弈论教材强调均衡是“解”,容易让人把它和“最优”画等号。

误区“智能体之间多说话、多传信息,协作效果就会更好。”

正解通信可以促进协调,但也会带来延迟、带宽占用和过拟合。如果智能体过度依赖通信,一旦通信中断,系统就瘫痪。MARL 中常用“通信代价”约束,甚至学习该不该说话。就像厨师之间频繁喊“我加盐了”虽然清楚,但真正常用的默契是眼神交流。CTDE 范式就允许执行阶段完全不通信。

为何常见:直觉上“信息越多越好”,但忽略了信息不对称时的策略脆弱性和训练复杂度的增加。

面试题

Q1. 在多智能体强化学习(MARL)中,环境对某个智能体而言是“非平稳”的主要原因是什么?

单选题 · easy

  • A.环境规则随机发生突变
  • B.其他智能体的策略在不断变化← 正确答案
  • C.奖励函数每次都随机改变
  • D.状态空间会随着时间膨胀

答案:B。多智能体环境的状态转移依赖所有智能体的动作,其他智能体策略更新会让单个智能体观测到的状态转移规律漂移。A 不是 MARL 特有;C 描述错误,奖励函数通常固定;D 是状态空间问题,不是非平稳原因。就好比汤的味道变化,主要因为其他厨师也在不停加料。

Q2. 随机博弈(马尔可夫博弈)与单智能体 MDP 的关键区别是什么?

单选题 · mid

  • A.状态空间维度显著增大
  • B.状态转移被多个动作共同影响← 正确答案
  • C.奖励函数一定是连续数值
  • D.状态总是部分可观测的

答案:B。MDP 中状态转移只取决于一个动作,随机博弈的转移概率由联合动作决定。A 不是本质区别;C 与建模无关;D 是 POMDP 的特点,不是随机博弈的关键。就像一锅汤的变化由所有厨师的动作共同决定,而不只是你一个人的动作。

Q3. 以下哪些属于合作博弈中的典型设置?

多选题 · easy

  • A.所有智能体共享一份团队奖励← 正确答案
  • B.智能体之间拥有一致共同目标← 正确答案
  • C.一个智能体胜利意味另一个失败
  • D.需要学习相互协同的动作组合← 正确答案

答案:ABD。合作博弈强调共享目标和团队奖励,需要学协同动作。C 是竞争博弈的零和特征。合作博弈就像是几位厨师共同把汤炖好,大家都按同一份满意度打分。

Q4. 合作任务中的“信用分配”问题指的是什么?

单选题 · mid

  • A.如何给每个智能体分配内存容量
  • B.无法确定团队成功应归功于谁← 正确答案
  • C.如何分配计算资源给多个智能体
  • D.如何分配探索概率给各个智能体

答案:B。信用分配指团队结果(如汤好喝)难以归因到某个具体动作/智能体,导致个体无法得到精确的学习信号。A、C 是工程资源问题,D 是探索策略问题,都与信用分配无关。

Q5. 关于集中式训练与去中心化执行(CTDE),下列说法正确的是?

多选题 · hard

  • A.训练阶段可以获取全局状态信息← 正确答案
  • B.执行阶段只能使用局部观测← 正确答案
  • C.训练时各智能体互相完全独立
  • D.执行时各智能体必须共享动作

答案:AB。CTDE 的核心是训练时用全局信息、执行时只用局部观测。C 描述的是完全独立学习,不是 CTDE;D 错误,执行时智能体独立决策,不需要共享动作。就像排练时导演看全局,演出时每个厨师只看自己眼前的锅。

Q6. COMA 算法中,反事实基线的目的是什么?

单选题 · mid

  • A.降低方差并解决信用分配← 正确答案
  • B.加速神经网络的参数收敛
  • C.增加环境中的随机噪声强度
  • D.消除探索动作带来的波动

答案:A。COMA 通过“保持他人动作不变,把自己替换成按策略随机采样”的基线,估算个体动作的边际贡献,解决信用分配并降低策略梯度方差。B 不是其主要目的,C、D 与反事实基线无关。

Q7. 以下哪些是多智能体强化学习的典型应用?

多选题 · easy

  • A.多机器人协作搬运货物← 正确答案
  • B.自动驾驶车队协调通行← 正确答案
  • C.单张图片分类识别
  • D.游戏AI团队对抗作战← 正确答案

答案:ABD。多机器人、自动驾驶车队、游戏 AI 都存在多决策者交互,是 MARL 的适用场景。图片分类是单智能体监督学习,不涉及多智能体博弈。

Q8. 纳什均衡的定义是?

单选题 · mid

  • A.所有智能体总收益最大的组合
  • B.任何智能体单方面改变策略都无法提高自己收益的策略组合← 正确答案
  • C.所有智能体必须使用相同策略的组合
  • D.环境状态保持不变时的策略组合

答案:B。纳什均衡强调“无人愿意单方面偏离”。A 是全局最优;C 不是必要条件;D 与环境状态无关。它描述的是“稳定”,而不是“最好”。

Q9. MADDPG 的特点包括?

多选题 · hard

  • A.使用集中式的评论家网络← 正确答案
  • B.演员网络只接收局部观测← 正确答案
  • C.只适用于连续动作空间
  • D.适用合作与竞争混合场景← 正确答案

答案:ABD。MADDPG 是 Actor-Critic 的多智能体扩展:评论家输入全局状态和联合动作,演员只输入局部观测,可处理合作、竞争、混合场景。它也能处理离散动作,C 错误。

Q10. 为什么多智能体环境的探索比单智能体更困难?

单选题 · mid

  • A.联合动作空间随智能体数量指数增长← 正确答案
  • B.单智能体的动作空间相对更大
  • C.环境中完全没有任何奖励信息
  • D.探索过程不需要任何策略参与

答案:A。多智能体下联合动作空间随人数指数爆炸,要遍历“每个人的加料组合”几乎不可能。B 说法相反;C 不成立;D 明显错误。探索困境是 MARL 的核心挑战之一。