多智能体强化学习论文阅读(一)

论文标题:LDSA: Learning Dynamic Subtask Assignment in Cooperative Multi-Agent Reinforcement Learning

原文传送:LDSA

作者针对合作式多智能体强化学习进行研究,并且指出现有的MARL算法为提高训练效率和可扩展性,agent大多使用共享的策略或者价值网络。在复杂的多智能体任务中,人们希望不同的智能体可以拥有特定的能力处理不同的任务,如果不加以区分的共享参数或者网络,可能会导致agent的行为相类似,这会限制并且降低最终的性能。

作者团队为平衡多智能体复杂任务训练过程中所呈现的任务复杂性和智能体行为的多样性,提出一种新的框架来学习合作式MARL中的动态任务分配(LDSA)。

为了合理的将智能体分配到不同的任务,作者根据智能体的能力,对子任务进行选择,将具有相似能力的智能体动态的分配到同一个子任务。处理相同子任务的智能体分享他们特定的能力的学习,使得不同的子任务对应不同的能力。

最后作者引入两个正则器,以增加子任务之间的差异性,并且阻止智能体频繁改变子任务来稳定训练。

文章在前言讲述到多智能体的挑战:

多智能体的环境是极不稳定的,且随着智能体数量的增加,使得这个问题变的更难;另一方面,多智能体的联合行动-观测空间随着智能体的数量呈现指数级的增长。这两个问题使得MARL算法很难扩展到更多的智能体数量。

多智能体强化学习工作进展

众多研究者为了扩展智能体的数量,大多都基于价值进而策略梯度进行研究,使用共享参数的分布式策略,所有的智能体共享一个网络。参数共享使得MARL的可训练采纳数的总数减少,使得学习的复杂性变得可控;使用相同参数的智能体可以分享训练的经验,可以有效的加快收敛速度。但是在遇到复杂的任务,尤其是任务由许多子任务所构成,其中的奖励函数和过度状态的函数是不同的,解决子任务需要特定的能力,完全共享的参数可能会导致所有的智能体行为趋于相似,阻碍了智能体行为的多样性,并且会阻碍探索行为。

如果使得每个智能体学习一个策略,不进行参数共享,保证了智能体行为的多样性,但是会造成训练的高复杂性。为了平衡训练的复杂性和行为的多样性,更好的方法是每个子任务学习一个神经网络,按照子任务对智能体进行分组。这样就可以使得同一个子任务智能体学习类似的策略,他们之间可以发内心哪个训练的经验来加速训练。

但是这种方法的重点在于:如何将多智能体任务分解到子任务;以及如何将智能体分配到子任务。

已经有学者基于先验知识来预先定义任务分解,但是在实践当中,这显然是不可能的。

RODE在没有显眼领域知识的情况下进行任务分解,其基于动作的影响对动作进行聚类,将动作视为子任务,要求每个子任务完成一个动作。但是当一些基本动作对所有子任务都有效果的时候,可能子任务就无法解决。

LDSA (合作式MARL的动态子任务分配)

作者首先提出任务编码器,根据每个子任务的特性将其构建为向量,使用轨迹编码网络来获得每个智能体的动作观测历史,在每个时间步,每个智能体根据其动作观测历史和子任务的余弦相似度来获得子任务的分类分布,使用Gumbel-Softmax对子任务进行采样。最后,对每个子任务学习一个单独的策略,并且使参与同一子任务的智能体分享他们的学习。

引入子任务解码器使得任务策略和其表征可以联系起来,根据表征的子任务的策略的参数,可以避免不同任务之间的相似策略。

引入两个正则器来增加任务之间的表征的差异,避免智能体频繁的更换子任务而影响训练。

图1 LDSA学习框架

a,为消除对先验知识的依赖,根据每个子任务的身份来学校,并且用向量表示;使用tanh激活函数两层全连接层来学习子任务编码器,子任务编码器将其映射到m维的表示空间,tanh用于约束空间的取值范围,然后利用任务编码器将其构造为向量。

为了保持任务之间的差异性,提出了正则器Lφ,使得子任务的表征差异化最大:

在整个训练过程中,子任务的表征学习一直在进行,它可以自动适应环境的动态变化。

b 网络利用GRU和两个全连接网络组成共享轨迹编码器获得每个智能体的动作观察历史。轨迹编码器将智能体的动作-观测历史编码为向量,长度和子任务表示相同。

对每个智能体,首先计算观测历史和所有子任务的余弦相似度。所有的子任务表征通过tanh激活函数使其具有相同的值范围,使用余弦相似度进行简单表示。再采用余弦相似度的Softmax函数得到子任务选择的分类分布,相关的概率公式如下:

在每个时间步上,智能体会选择子任务进行配合,当智能体频繁的更换选择的子任务时会导致训练的不稳定,为了使得智能体平稳训练,作者引入正则器Lh来最小化相邻时间段子任务选择分布之间的KL分歧遵循如下:

C 根据智能体的能力将其分组到不同的子任务,学习每个子任务的策略,同一个子任务的智能体共享策略,首先使用带有参数共享的信共享的轨迹编码器生成智能体的动作-观测历史,表示为hta ,新的轨迹编码器值包含一个全连接网络和GRU,每一个子任务的策略都是一个全连接网络,每个agent选择子任务的斜掠都是将行动观测反馈到子任务的策略当中,并且产生单个的Q值,为了和子任务的表征相联系,利用解码器对任务的表征进行调节,从而得到子任务的策略参数。解码器是单层的全连接网络,将x映射到θ,凭借表征之间的差异性,使得解码器进一步增加子任务策略的多样性。

对于每个任务,将所有的动作-观测历史送入到子任务的策略当中,获得单个的Q值,个体的Q值是子任务身份加权之和。每个智能体知识训练其指定的子任务的策略参数,通过训练具有相似能力的智能体选择相同的任务,分享之间的经验从而达到提高训练性能的目的。此外,在需要将不同的子任务分配给具有相似轨迹的代理人的任务上,由于每个代理人的观测输入包含其一热身份,LDSA可以学习在代理人的身份输入上增加权重,使代理人的身份输入成为输出子任务选择分布的主要因素。

Experiments

在实验部分,作者提出的问题比以往所有的实验都重要,当然,这表明了作者的思路很清晰,对实验的构造和设计有清晰的规划,整个方法的提出的重点也在于此。

作者在SMAC和谷歌足球的环境当中进行了测验,实验证明了作者提出的LDSA在多智能体任务上的有效性。在消融实验中,作者证明了没有正则器,其实验效果比QMIX还要差,两个正则器都可以提高性能,且Lφ比Lh提高的更多,Lh用于稳定训练。

作者在SMAC地图上展示了动态的任务分配,通过可视化任务分配的过程证明所提出方法的有效性和合理性。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值