为什么策略梯度法在协作性MARL中如此高效?

译文 精选
开发 架构
为什么PG方法可以如此有效?在本文中,我们将展开具体的分析以表明在某些场景中,例如在具有高度多模式奖励景观的环境中,虚拟现实可能存在的问题并导致不期望的结果。

​译者 | 朱先忠

审校 | 孙淑娟

在协作性多智能体强化学习(multi-agentreinforcement learning:MARL)中,由于其基于策略的性质,通常认为策略梯度(policy gradient:PG)方法的样本效率低于非策略的值分解(value decomposition:VD)方法。然而,最近的一些实证研究表明,与非策略值分解方法相比,通过适当的输入表示和超参数调整,多智能体策略梯度(PG)方法可以实现惊人的性能。

为什么PG方法可以如此有效?在本文中,我们将展开具体的分析以表明在某些场景中,例如在具有高度多模式奖励景观的环境中,虚拟现实可能存在的问题并导致不期望的结果。相反,在这些情况下,使用单个策略的PG方法可以收敛到最优策略。此外,具有自回归(auto-regressive:AR)策略的PG方法可以进行多模式策略学习。

图1:4人置换博弈的不同策略表示

协作性MARL中的集中训练和分散执行:VD与PG方法

集中训练和分散执行(Centralizedtraining and decentralized execution:CTDE)是合作MARL中一种流行的框架。它利用全局信息进行更有效的训练,同时保留用于测试的单个策略的表示。CTDE可以通过值分解(VD)或策略梯度(PG)方法来实现,从而产生两种不同类型的算法。

其中,VD方法能够学习局部Q网络并将局部Q网络混合到全局Q函数中的混合函数。通常,强制执行混合函数以满足单个全局最大值(Individual-Global-Max:IGM)原则;该原则确保可以通过贪婪地为每个智能体局部选择最优动作来计算最优联合动作。

相反,PG方法直接应用策略梯度来学习单个策略和每个智能体的集中值函数。其中,值函数将全局状态(如MAPPO)或所有局部观测值的串联(如MADDPG)作为其输入,以获得准确的全局值估计。

置换博弈:VD失败的一个简单反例

我们首先考虑一个无状态合作博弈(即置换博弈)的情形。在N个人的置换博弈中,每个智能体可以输出N个动作1,…,N。如果智能体的行为相互不同,即联合行为是1,…,N上的排列,那么智能体将收到+1奖励;否则,他们将获得0奖励。注意,在该博弈中存在N!种对称的最优策略。

图2:4人排列游戏

现在,不妨让我们集中讨论一下两人之间的置换博弈。在此设置中,如果我们将前面的值分解(VD)方法应用于游戏。这样一来,全局Q值将分解为:

其中,Q1和Q2是局部Q函数,Qtot是全局Q函数,fmix是混合函数,根据VD方法的要求,满足IGM原理。

图3:2人排列游戏中VD失败原因的高级直观展示

目前,我们已经正式证明了值分解VD方法不能矛盾地描述二人置换博弈的结局。因为,如果值分解方法能够描述博弈结局,我们将有:

然而,如果这两种智能体中的任何一种具有不同的局部Q值,例如Q1(1)>Q1(2),那么根据单个全局最大值(IGM)原理,我们必须具有:

否则,如果Q1(1)=Q1(2)和Q2(1)=Q2(2),则有:

因此,值分解方案不能表示二人置换博弈的结局矩阵。

那么,PG方法如何呢?单个策略确实可以表示置换博弈的最优策略。此外,随机梯度下降可以保证PG在温和的假设下收敛到这些最优值之一。这表明,尽管与值分解方法相比,策略梯度方法在MARL中不太流行,但在现实应用中常见的某些情况下,例如具有多种策略模式的游戏中,它们可能更适合使用。

我们还指出,在置换博弈中,为了表示最优联合策略,每个智能体必须选择不同的动作。因此,PG的成功实施必须确保策略是特定于智能体的。这可以通过使用具有非共享参数的单个策略(在本文中称为PG-Ind)或智能体ID条件策略(PG-ID)来实现。

在流行的MARL测试平台上PG优于最佳VD方法

除了排列游戏的简单示例之外,我们还将我们的研究扩展到了目前流行的和更现实的MARL基准测试环境中。除了星际争霸多智能体挑战(StarCraft Multi-Agent Challenge:SMAC)已经验证了PG和智能体条件策略输入的有效性外,我们还展示了谷歌足球研究(Google Research Football:GRF)和多玩家Hanabi挑战方面的新成果。

图4:(左)GRF上PG方法的获胜率;(右)Hanabi-Full的最佳和平均评估分数

在GRF中,PG方法在5种场景中优于最先进的VD基础数据(CDS)。有趣的是,我们还注意到,在所有5种场景中,与特定于智能体的策略(PG-ID)相比,没有参数共享的单个策略(PG-Ind)实现了可比的有时甚至出现更高的获胜率。我们评估了具有不同玩家数量(2-5名玩家)的全规模Hanabi游戏中的PG-ID,并将其与SAD——Hanabi游戏中一种强大的非策略Q学习变体和值分解网络(VDN),进行了比较。如上表所示,在不同数量的玩家使用相同数量的环境步骤时,PG-ID能够产生与SAD和VDN获得的最佳和平均奖励相当或更好的结果。

超越高回报:通过自回归策略建模学习多模式行为

除了学习更高的回报外,我们还研究了如何学习合作MARL中的多模式策略。让我们再次切换回排列游戏主题。其中,虽然我们已经证明了PG可以有效地学习最优策略,但它最终达到的策略模式在很大程度上取决于策略初始化。因此,出现了一个自然的问题:

我们可以学习一个可以覆盖所有最优模式的策略吗?

在分散式的PG公式中,联合策略的因子表示只能表示一种特定模式。因此,我们提出了一种增强的方法来参数化策略以获得更强的表达能力——自回归(auto-regressive:AR)策略。

图5:4人置换博弈中个体策略(PG)和自回归策略(AR)之间的比较

从形式上,我们可以将n个智能体的联合策略分解为如下形式:

其中,智能体i产生的动作取决于其自身的观察oi和来自先前智能体1,…,i−1的所有动作。自回归因子分解可以表示集中式MDP中的任何联合策略。对每个智能体策略的唯一修改是输入维度,通过包含以前的操作,输入维度略有扩大;每个智能体策略的输出维度保持不变。

在这样最小的参数化开销下,AR策略大大提高了PG方法的表示能力。我们注意到,带AR策略的PG-AR可以同时表示置换博弈中的所有最优策略模式。

图6:PG Ind(左)和PG-AR(中)学习的策略行为热图和结局热图(右)。虽然PG-Ind在4人置换博弈中仅收敛到特定模式,但PG-AR成功地发现了所有最优模式

在包括SMAC和GRF等更复杂的环境中,PG-AR可以学习有趣的紧急行为,这些行为需要强大的智能体内协调,而PG-Ind可能永远无法学习这样的行为。

图7:(左)在SMAC和GRF中由PG-AR诱导的紧急行为。在SMAC的2m_vs_1z地图上,海军陆战队保持站立并交替攻击,同时确保每个时间步只有一名攻击海军陆战队;(右)在GRF的academy_3_vs_1_with_keeper场景中,智能体学习“TikiTaka”风格的行为:每个球员都不停地将球传给队友。

讨论和收获

在本文中,我们具体分析了合作性MARL中的VD和PG方法。首先,我们揭示了流行的VD方法表达能力的局限性,展示了即使在简单的置换博弈中,它们也不能表示最优策略。相比之下,我们证明了PG方法更具表现力。我们通过实验验证了PG在流行的MARL试验环境(包括SMAC、GRF和Hanabi Challenge等游戏环境)中的表达优势。最后,我们真诚希望从这项工作中获得的见解能够帮助社区在未来实现更通用和更强大的协作MARL算法。

译者介绍

朱先忠,51CTO社区编辑,51CTO专家博客、讲师,潍坊一所高校计算机教师,自由编程界老兵一枚。早期专注各种微软技术(编著成ASP.NET AJX、Cocos 2d-X相关三本技术图书),近十多年投身于开源世界(熟悉流行全栈Web开发技术),了解基于OneNet/AliOS+Arduino/ESP32/树莓派等物联网开发技术与Scala+Hadoop+Spark+Flink等大数据开发技术。

原文标题:Why doPolicy Gradient Methods work so well in Cooperative MARL? Evidence from PolicyRepresentation​,作者:Wei Fu, Chao Yu, Jiaqi Yang,Yi Wu

责任编辑:武晓燕 来源: 51CTO
相关推荐

2021-04-16 17:37:28

数据智能照明物联网

2020-05-06 22:20:48

Kubernetes边缘计算

2019-12-13 17:36:00

机器学习设计数学

2024-05-07 06:36:59

2021-08-30 17:14:22

物联网IOT

2012-04-09 13:35:10

Instagram

2020-06-04 21:49:20

物联网用户体验IOT

2016-05-19 10:31:35

数据处理CassandraSpark

2017-07-26 10:21:46

DockerLinux容器

2020-11-05 10:50:09

物联网数据技术

2022-06-01 23:27:38

区块链加密货币数字资产

2020-06-02 19:14:59

Kubernetes容器开发

2022-11-28 09:00:03

编程bug开发

2024-09-05 11:46:08

2023-04-10 15:41:35

2021-03-29 16:32:03

软件代码程序员

2020-04-21 11:03:34

微服务数据工具

2021-09-29 16:53:53

区块链数据技术

2013-04-19 13:59:00

Apache Hado

2021-10-26 10:12:04

技术债务软件开发应用程序
点赞
收藏

51CTO技术栈公众号