强化学习论文(7)COMA

less than 1 minute read

Published:

标签: COMA; actor-critic; on-policy; model-free; communication; continuous communication channel; discrete action space; continuous state space; cooperative task; credit assignment; centralized training with decentralized execution; multi-agent;

论文链接

创新点及贡献

1、基于反事实思维在 actor-critic 框架中加入了反事实基线,在只有全局收益的情况下解决了多智能体的信用分配问题。

  • 反事实思维:生活中有一种心理现象,就是思维活动针对的不是已发生的事实,而是与事实相反的另一种可能性。人们迟到的时候,会寻思“如果早点动身就不会迟到了”;人们考砸的时候,会寻思“要是再加把劲这次考试就能及格了”。所谓反事实思维,就是与事实相反的假想。一个人外出没带雨伞赶上下雨,被淋得像个落汤鸡,他想要是带雨伞就不会挨浇了。如果说下雨挨浇是既成事实,想象带雨伞不会挨浇就是与事实相反的思维,也就是心理学家所说反事实思维。

研究痛点

1、多智能体信用分配问题:在合作环境中,联合动作通常只会产生全局性的收益,这使得每个智能体很难推断出自己对团队成功的贡献。

算法流程

COMA 框架图如下

主要思路

COMA 主要有三个主要的 idea:

1、使用集中的评判器

  • 基于 actor-critic 实现了集中训练分散执行的框架,critic 可以将全局信息作为输入,而 actor 只能将局部信息作为输入。
  • 每个智能体的 actor 网络是参数共享的,且只有一个共享的集中 critic 网络。
  • actor 的框架是基于 GRU 实现的,critic 网络中的 target 值是使用 TD($\lambda$) 的方法计算的 。

2、使用了反事实基线

  • 主要思想受 difference rewards (Wolpert and Tumer 2002; Tumer and Agogino 2007) 启发,用了一个差异奖励,将每个个体奖励表示为全局收益与替换了动作之后的全局收益的差值,从而实现多智能体信用分配,然而 difference rewards 方法需要对模拟环境或者估计奖励函数进行计算,效率较低。
  • COMA 通过反事实基线计算一个智能体的优势函数从而实现 difference rewards,然后 COMA 证明了该方法能收敛至局部最优,且反事实基线的均值为 0 是无偏的。
  • 在本文中采用了离散动作空间,如果想使用连续动作空间可以使用蒙特卡洛采采样去估计下式的求和项。

3、COMA 使用了一种 critic representation,可以有效地计算反事实基线:

  • 原本的 critic 输出的是所有智能体的所有联合动作的 $Q$ 值,现在修改为将其他智能体 $-a$ 的动作 $\mathbf{u}^{-a}$ 作为 critic 网络输入的一部分,然后 critic 网络会为当前智能体 $a$ 的每个动作 $u$ 输出一个 $Q$ 值。
  • 虽然这样 critic 的输入空间会随着智能体的数量增长而线性增长,但其输出空间的维度大大减小了。

算法伪代码

实验

1、在 Decentralised StarCraft Micromanagement 环境中进行实验

  • 将环境修改为部分可观察环境

其他补充

1、从直觉上来说,反事实基线最大的好处在于可以在只有全局收益的情况下解决了多智能体的信用分配问题,但有一点问题是其没有从实验上证明实现了多智能体的信用分配。

2、该方法虽然说可以用蒙特卡洛采用实现连续动作空间,但感觉还是有挺大局限性的。

3、对于大规模智能体不适用,其集中式的 critic 的输入空间会线性增长。

参考资料及致谢

所有参考资料在《强化学习思考(1)前言》中已列出,再次向强化学习的大佬前辈们表达衷心的感谢!