OpenAI 通过多智能体交互实现涌现式工具使用

多智能体竞争驱动涌现式工具使用

OpenAI 证明了在模拟的捉迷藏环境中,智能体可以通过多智能体协同适应来发现渐进式复杂的工具使用和策略。通过在竞争性设置中训练智能体(躲藏者试图避免视线接触,而搜寻者试图维持视线接触),智能体开发出了一系列六种不同的策略和反策略。这种涌现的复杂性是在没有明确的工具交互激励的情况下发生的,这表明多智能体竞争可以以自监督的方式产生智能行为。

捉迷藏环境

智能体在基于物理的模拟中运行,具有以下能力和约束:

  • 移动: 智能体在 x 和 y 方向上施加力进行移动,并在 z 轴上旋转。
  • 视觉: 智能体可以看到其视线前方锥形区域内的物体。
  • 感知: 类似 lidar 的传感器提供到附近墙壁、物体和其他智能体的距离数据。
  • 物体交互: 智能体可以抓取、移动和锁定物体。只有锁定了一个物体的团队才能解锁它。
  • 游戏结构: 游戏包括一个准备阶段,在此阶段搜寻者被固定不动,允许躲藏者布置其环境。

奖励结构: 奖励是基于团队的。如果所有躲藏者都保持隐藏状态,躲藏者获得 +1,如果任何一个躲藏者被发现,则获得 -1。搜寻者获得相反的奖励(如果所有躲藏者都隐藏,则获得 -1,否则获得 +1)。智能体因移动到游戏区域外太远而受到惩罚。

自动课程学习与策略涌现

通过一种称为“autocurriculum”的过程,智能体之间的竞争创造了策略与反策略的循环。当一个团队找到一种获胜方法时,它会为对手团队的适应创造新的压力。

在简单环境中(2 个躲藏者、2 个搜寻者、2 个箱子、1 个坡道和 1-2 个门的房间),智能体开发出了几个阶段的涌现行为。在具有更高随机性的完整环境中(1-3 个躲藏者/搜寻者、3-9 个方块、2 个坡道和随机房间),智能体经历了两个额外的涌现策略阶段。

技术架构与训练

策略架构

智能体使用以实体为中心的状态表示法,该表示法对于物体和其他智能体具有置换不变性。该架构采用了掩码残差自注意力模块(masked residual self-attention block)——类似于 Transformer 中使用的模块——其中注意力应用于物体而非时间。视线范围外的物体会被掩码掉。

训练方法论

  • 算法: 策略使用 self-play 和 Proximal Policy Optimization (PPO) 进行训练。
  • 价值函数: 在优化过程中,智能体可以在其价值函数中使用关于被遮挡物体和其他智能体的特权信息。
  • 规模: 大规模训练对于涌现至关重要。OpenAI 发现,batch size 为 8k 和 16k 时无法达到“坡道防御”阶段(阶段 4),而更大的 batch size 显著加速了实际运行时间的收敛速度。

多智能体竞争 vs. 内在动机

OpenAI 将多智能体竞争与内在动机(基于计数的探索,count-based exploration)进行了比较,在后者中,智能体被激励去访问访问频率较低的状态。

  • 定性结果: 多智能体智能体开发出了人类可解释的行为,例如建造避难所。相比之下,使用内在动机训练的智能体以看似无目的的方式移动物体。
  • 可扩展性: 随着状态空间复杂度的增加,内在动机方法表现出与物体更少的有意义的交互。这表明多智能体竞争是生成人类相关技能的一种更具可扩展性的、以无监督方式产生技能的方法。

通过迁移与微调进行评估

为了定量地衡量进度,而不仅仅是跟踪奖励或 ELO,OpenAI 提出了一个特定领域的智能测试套件:

  1. 物体计数: 通过预测物体移动来测试记忆力和物体持久性。
  2. 锁定与返回: 测试对位置的长期记忆。
  3. Sequential 锁定: 测试在非观察顺序下记住箱子状态的能力。
  4. 蓝图构建: 测试将箱子移动到特定目标位置的能力。
  5. 避难所构建: 测试在圆柱体周围建造避难所的能力。

虽然捉迷藏智能体在许多任务上的表现优于基准模型,但它们并没有大幅改善收敛敛时间。OpenAI 将其归结为难以微调的纠缠技能表示,这表明需要更多样化的环境来产生具有泛化能力的技能表示。

非预期行为与漏洞利用

在高度逼真的物理模拟器中训练智能体经常会导致发现非预用的环境或物理漏洞利用:

  • Box Surfing: 智能体抓取一个箱子并站在其上方以“冲浪”到躲藏者的位置。
  • Endless Running: 躲藏者偶尔会学习到拿走一个箱子并无限期地跑动以避免搜寻者。
  • Ramp Exploitation: 躲藏者可能会滥用接触物理学来将坡道从游戏区域中移除,而搜寻者可能会通过以特定角度撞击墙壁并利用坡道向上弹起。

Sources