通信学习 (Learning to Communicate):从“心电感应”到“语言涌现”

摘要

在多智能体强化学习(MARL)中,如果每个 Agent 只能看到局部视野(Partial Observability),这就好比一群蒙着眼睛的人在搬桌子------效率极低且容易撞车。为了打破信息孤岛,通信(Communication) 机制应运而生。与传统的预定义通信协议(如"收到请回复 1")不同,MARL 中的通信学习是指让智能体自己发明语言 。本文将详解 DIAL、CommNet 以及基于 Attention 的现代通信机制,带你领略 AI 之间如何通过梯度反向传播实现"心电感应"。


目录 (Table of Contents)

  1. 为什么智能体需要"说话"?
    • 打破部分可观测性 (Dec-POMDP)
    • 显式通信 vs 隐式通信
  2. 通信的数学模型
    • 消息 (Message) 也是一种动作
    • 通信通道 (Channel) 的定义
  3. 流派一:广播与平均 (CommNet)
    • 简单的"大锅饭"模型
    • 解决"鸡尾酒会问题"的局限性
  4. 流派二:可微通信与梯度传导 (DIAL)
    • Training 时的"心电感应"
    • Execution 时的"离散化"
    • RIAL vs DIAL
  5. 流派三:注意力机制与定向通信 (Attention & Gating)
    • BiCNet, ATOC, TarMAC
    • "我只跟有用的人说话"
  6. 有趣的现象:语言涌现 (Emergent Language)
    • AI 发明的语言我们能听懂吗?
  7. 总结

1. 为什么智能体需要"说话"?

1.1 打破部分可观测性

在 Dec-POMDP(去中心化部分可观测马尔可夫决策过程)中,每个智能体 i i i 只能看到 o i o_i oi。

  • 无通信:Agent A 看到前面有坑,但 Agent B 没看到。Agent A 只能干着急,眼睁睁看着 B 掉下去。
  • 有通信 :Agent A 发送消息 m A = "Danger" m_A = \text{"Danger"} mA="Danger",Agent B 接收后,其决策依据变成了 π ( u B ∣ o B , m A ) \pi(u_B | o_B, m_A) π(uB∣oB,mA)。此时 o B + m A o_B + m_A oB+mA 近似等于全局状态 S S S,盲区被消除了。

1.2 显式通信 vs 隐式通信

  • 隐式通信 (Implicit) :通过动作来传递信息。比如在自动驾驶中,前车突然刹车(动作),后车就知道前面有状况。这不需要专门的通信信道。
  • 显式通信 (Explicit) :通过专门的信道 (Channel) 发送连续向量或离散符号。这是本文讨论的重点。

2. 通信的数学模型

在 Comm-MARL 中,智能体的策略函数发生了变化:
u i , m i = π ( o i , m i n ) u_i, m_i = \pi(o_i, m_{in}) ui,mi=π(oi,min)

  1. 输入 :自己的观测 o i o_i oi + 队友发来的消息 m i n m_{in} min。
  2. 输出 :环境动作 u i u_i ui (移动/攻击) + 通信动作 m i m_i mi (说的话)。

这里的关键在于:m i m_i mi 是什么?

它可以是一个离散的词(Token),也可以是一个连续的向量(Embedding)。在深度强化学习中,通常通过神经网络直接输出一个连续向量作为消息。


3. 流派一:广播与平均 (CommNet)

CommNet (2016) 是最早尝试用深度学习解决多智能体通信的模型之一。

3.1 核心思想:大一统网络

CommNet 假设所有智能体由一个巨大的共享网络控制(但在物理上可以是分布式的模块)。

通信的方式非常简单粗暴:平均化 (Averaging)

对于智能体 i i i,它收到的消息是所有其他智能体发出消息的平均值:
h i t = f ( h i t − 1 , o i , 1 N − 1 ∑ j ≠ i m j ) h_i^t = f(h_i^{t-1}, o_i, \frac{1}{N-1} \sum_{j \neq i} m_j) hit=f(hit−1,oi,N−11j=i∑mj)

3.2 局限性:鸡尾酒会问题

  • 优点 :结构简单,处理任意数量的 Agent ( N N N 可变)。
  • 缺点信息丢失
    • 想象你在一个 100 人的房间里,所有人同时说话。CommNet 的做法是把这 100 个人的声音叠加取平均。结果就是一团白噪声,你根本听不清谁在说什么重要信息。
    • 这使得 CommNet 难以处理复杂的异构任务(比如 Agent A 需要听 Agent B 的,但必须忽略 Agent C 的)。

4. 流派二:可微通信与梯度传导 (DIAL)

DIAL (Differentiable Inter-Agent Learning) [Foerster et al., 2016] 提出了一个革命性的观点:通信不应该只是离散的符号,在训练时,它应该是流动的梯度。

4.1 核心机制:CTDE 的极致利用

  • RIAL (Reinforced IAL) :传统的做法。把发消息 m m m 当作一个动作,用 DQN 去学习。如果说对了,Reward 变高,Q 值更新。这叫"强化学习"。
  • DIAL (Differentiable IAL)
    • 训练时 (Training) :允许消息 m m m 为连续实数值。消息直接作为数值输入给接收者。
    • 梯度通路 :梯度 ∇ \nabla ∇ 可以从接收者 (Receiver) 的 Loss 函数,顺着通信信道 (Channel),直接反向传播给发送者 (Sender)。
    • 物理含义 :接收者通过梯度告诉发送者:"你刚才发的那个数值 0.8 0.8 0.8 不太好,导致我判断错了,下次请发 0.2 0.2 0.2。" 这就像心电感应 (Telepathy),直接调整对方的大脑参数。

4.2 执行时的离散化

虽然训练时是实数,但在执行(Test)时,由于带宽限制或抗噪需求,DIAL 会引入离散化单元 (Discretize Unit),把连续向量量化成二进制(0/1)发送。

DIAL 的伟大之处 :它把"学习说话"这件事,从困难的 RL 试错问题,转化为了高效的 Supervised Learning (梯度下降) 问题。


5. 流派三:注意力机制与定向通信

随着 Transformer 和 Attention 机制的兴起,Comm-MARL 迎来了第三代:我们要解决"跟谁说"和"听谁说"的问题。

5.1 为什么要 Attention?

CommNet 的"大锅饭"太吵了。在星际争霸中,医疗兵只需要听机枪兵的"我没血了",而不需要听 100 公里外侦察兵的废话。

5.2 代表算法

  • BiCNet (2017) :利用 双向 RNN (Bi-RNN) 连接所有智能体。通信链是串行的,隐状态在链条上传递。
  • ATOC (Attention-based) :引入注意力模块。智能体先决定是否 需要通信(Gating),然后决定跟谁通信。
  • TarMAC (Targeted Multi-Agent Communication)
    • Sender 发送的不只是消息 m m m,还有一个 Key(标签)。
    • Receiver 根据自己的 Query 和对方的 Key 计算权重(Signature)。
    • 只有匹配度高的消息才会被处理。

这就像频道 (Channel) 机制:A 在"频道 1"喊话,只有关注"频道 1"的 B 能听到,其他人自动过滤。


6. 有趣的现象:语言涌现 (Emergent Language)

当我们训练完这些算法后,把它们发送的消息 m m m 打印出来,会发现什么?

6.1 它们在说英语吗?

不,它们说的是 "Vector-ese"

比如在一次捕猎游戏中,当猎物出现在左边时,Agent A 可能会发送向量 [0.9, -0.1];当猎物在右边时,发送 [-0.5, 0.8]

对人类来说这是噪声,但对神经网络来说,这代表了精确的语义 (Semantics)

6.2 正向信令与反向信令

  • 正向:告诉队友"我在这"、"敌人在这"。
  • 反向:有时候,Agent 会学会"欺骗"或"沉默"。但在完全合作游戏中,它们通常会进化出极其高效的压缩语言。

7. 总结

通信学习是 MARL 中最接近"强人工智能"形态的方向之一。

算法 通信拓扑 核心机制 优缺点
CommNet 全连接 平均化消息 简单,但噪声大,信息丢失
DIAL 任意 梯度反向传播 (Telepathy) 训练极其高效,但仅限合作任务
BiCNet 序列化 双向 RNN 适合序列决策,难以并行
TarMAC 动态图 Attention (Key-Query) SOTA 性能,可解释性强,计算重

实战建议

如果你的环境是高度部分可观测 的(如迷雾中的 RTS 游戏),且智能体数量适中(<10),基于 Attention 的通信(如 TarMAC 或 GNN-based) 是首选。如果智能体数量巨大(>100),可以回退到类似 Mean-Field 的简单平均通信。


到这里,我们已经探讨了 MARL 的合作、竞争、通信。下一篇,我们将进入更复杂的领域:离线多智能体强化学习 (Offline MARL),看看如何在没有模拟器的情况下训练多智能体。 📡🤖

相关推荐
道法自然04022 小时前
[CARLA系列--05]如何在Carla中去调用传感器模型--Radar篇
人工智能·自动驾驶·ue4
roamingcode2 小时前
2025年技术变革浪潮:从 AI Agent 标准化到人类认知重构
人工智能·ai·重构·agent·skill·mcp
智驱力人工智能2 小时前
森林防火无人机火焰监测系统 构建“天空地”一体化智能防火体系 无人机火焰检测,支持红色火焰检测 城市高层建筑无人机火焰识别
人工智能·深度学习·opencv·算法·目标检测·无人机·边缘计算
我命由我123452 小时前
开发中的英语积累 P21:Parentable、Guideline、Manifest、Expire、Condition、Optimize
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
Coovally AI模型快速验证2 小时前
无人机低空视觉数据集全景解读:从单机感知到具身智能的跨
人工智能·深度学习·目标检测·机器学习·自动驾驶·无人机
小北方城市网2 小时前
第 5 课:Vue 3 HTTP 请求与 UI 库实战 —— 从本地数据到前后端交互应用
大数据·前端·人工智能·ai·自然语言处理
CES_Asia2 小时前
机器人“奥运会”登陆!CES Asia 2026角逐消费级机器人王座
大数据·人工智能·科技·机器人
wayuncn2 小时前
AI领域核心概念解析:模型、模型参数、模型大小、计算精度
人工智能·ai·ai智能体·ai定制开发
小陈phd2 小时前
大语言模型实战(三)——词编码技术演进:从 “机器识字符” 到 “AI 懂语义”
人工智能·语言模型·自然语言处理