前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >南栖提出高效多智能体离线强化学习方法,揭示多任务学习对多智能体离线强化学习的促进作用

南栖提出高效多智能体离线强化学习方法,揭示多任务学习对多智能体离线强化学习的促进作用

作者头像
深度强化学习实验室
发布2023-08-18 12:30:14
4450
发布2023-08-18 12:30:14
举报

以往多智能体多任务强化学习方法通常依赖多任务同时采样学习或迁移学习方法实现多智能体强化学习策略的多任务泛化能力,但该过程导致了大量的样本开销,且无法应对多智能体系统中随智能体数目和目标变化所导致的海量任务泛化问题。

基于此,南京大学&南栖仙策团队合作提出了一种全过程离线学习的方法ODIS(an Offline MARL algorithm to Discover coordInation Skills)来挖掘多任务数据中的通用协作技能,帮助智能体取得多任务泛化能力,并发表在ICLR'23会议上。该方法消除了过往方法对环境交互样本的过度依赖,大幅提升了多智能体策略的多任务可泛化范围。

多智能体多任务强化学习的现实应用瓶颈

合作型多智能体强化学习(Cooperative Multi-Agent Reinforcement Learning, Cooperative MARL)在应对和解决游戏AI和自动驾驶等现实应用中取得了巨大的成功。然而,现今的合作型多智能体强化学习问题通常仅考虑从单一任务下的模拟环境学习可用策略,在应用到现实任务时会遇到较大的挑战。

在多智能体系统中,我们通常希望一个强化学习策略能够在智能体数量和目标不同的场景中控制不同智能体灵活合作。

以一个智能仓储的现实应用为例,我们可以使用可编程的无人搬运车(AGV)执行多智能体强化学习策略,从而完成各种拣货搬运任务。然而,在单一任务模拟器上训练得到的多智能体策略,往往无法在智能体数量或任务目标变动时做到有效泛化。当环境中出现部分AGV小车故障或货架位置变动时,现有的强化学习策略就会完全失效,转而运用多任务MARL方法学得多任务可泛化的策略。

以往的多任务MARL工作主要考虑从一个预定义的任务集中通过在线采样的方式,利用不同任务中得到的样本训练一个策略,或者将一个任务上的预训练模型通过微调(fine-tune)的方式迁移到另一个任务上。尽管这些方法在一些任务中表现出了良好的性能,但在线采样的昂贵成本阻碍了更广泛场景下的应用。

而从静态数据集中学习策略的离线强化学习(Offline RL),则被认为是通往强化学习现实应用的一大重要途径。

然而,离线强化学习方法通常需要严格的策略约束将习得策略限制在采集数据的行为策略附近。尽管这种保守的学习方法能够使策略在原任务上表现优秀,但也使得习得策略难以在新任务中有效泛化。因此,离线学习跨任务可泛化的MARL策略是我们在工作中期望解决的重要问题。

离线多智能体多任务强化学习方法

通过对现实多任务需求的观察,我们发现解决该问题的重要途径在于提取不同任务中的共同结构。事实上,人类善于从多个任务中总结技能,并在其他类似的任务中重复使用这些技能。

从多个星际争霸2多智能体任务中提取通用的协作技能,并将这些技能运用到相同类型的未见任务中。

我们希望从几个星际争霸2的多智能体源任务中提取出通用的协作技能,并将这些技能运用到相同类型的未见任务上。图中的源任务5m,8m要求我们控制5个或者8个陆战队员(星际争霸2中的远程攻击单位)击败相同数量的敌方单位,我们发现运用MARL算法在这些任务上学得策略隐含着集火、后撤低血量单位等不仅限于单一任务的通用技能,而这些技能即使在面对我们所未遇到的任务配置(如10v10的陆战队员任务10m中)也能够起到作用。

受此启发,我们希望能够从已有的多任务数据上发现这些协作技能,并运用离线强化学习方法,学习能够选择适当协作技能的多任务通用策略,从而做到能够在未见任务中重用这些通用协作技巧进行决策。

从多任务数据发现通用协作技能的多智能体多任务强化学习方法(ODIS)的整体框架。

为了通过数据驱动的方式学习和重用协作技能,我们提出了一种新的离线MARL算法(ODIS,an Offline MARL algorithm to Discover coordInation Skills)来发现协作技能,其中智能体只通过访问一个多任务数据集来提取协作技能和学习可泛化策略。

我们首先从无标签(不含奖赏信息)的数据中提取协作技能,我们使用了一个基于变分自编码器(VAE)的结构学习有效的隐变量。这些共享的协作技能将帮助智能体进行更高层面的决策,而无需考虑任务相关的具体动作空间。然后,我们学习一个协作策略来选择适当的协作技能,该离线强化学习过程运用了合作型MARL中常见的中心化训练分布式执行结构学得全局值函数。

通过这种方法,我们能够在部署阶段做出分布式的决策,使智能体分布式地选择协作技能,再将其解码为与具体任务相关的动作。

技术验证

我们在星际争霸多智能体挑战(SMAC)的多任务数据集上验证ODIS的泛化能力。

1

ODIS能够取得有效的多任务泛化能力

我们设计了3类星际争霸多智能体挑战的任务集,每个任务集中包含3个源任务和10个左右的未见任务。所验证的多智能体多任务强化学习算法仅能使用3个源任务上采集到的离线数据进行训练,随后我们验证其泛化到所有任务中的性能。

在多个任务集上的实验结果表明,我们的方法能够通过选择适当的协作技能,做到仅用有限任务来源的数据在至多十余个未见任务上取得合理的性能。在其中一个任务marine-hard中不同方法的性能对比的表现如下表所示,我们的方法ODIS在超过90%的任务上取得了相较于基线算法更好的性能。

2

ODIS能有效发现可泛化的协作技能

通过观察不同任务的执行过程,我们发现智能体所选取的协作技能在不同任务中表达出了相似的语义信息,我们在陆战部队对抗(marine)和追猎者-狂热者对抗(stalker-zealot)两类不同的单位微操任务中进行了ODIS的多任务策略学习,并将所学得的策略用于已见和未见任务中进行再部署,观察ODIS所选取的跨任务协作技能具备何种性质。

如下图所示,在实际部署过程中,我们绘制了可控制的所有智能体所选取的不同协作技能比例在单个情节(episode)内随时间步的变化情况,发现无论是在同一类型的已见任务还是在未见任务,智能体使用不同协作技能的比例随时间变化的趋势都是高度一致的,这也内在反映了这些同一类型的任务(如5个陆战队员对决的5m和12个陆战队员对决的12m)可以通过泛化相似的技巧而无需重复地采样学习。

我们进一步对验证过程中的结果进行了可视化,发现了这些在不同时间步中被智能体使用到的协作技能能够被观察出一定的语义,如激活,前进,分散,吸收伤害等等,对这些协作技能的语义理解与人类知识认定的完成这些任务所需要的技巧是高度一致的,反映了ODIS能够切实从多任务数据中提取出可泛化的知识和技巧。

我们提出的ODIS方法,能够从多智能体多任务离线数据中发现可泛化的通用协作技能,并将其运用到未见任务中,对解决多智能体多任务强化学习中的样本低效问题给出了一种切实可行的解决途径。

随着多智能体强化学习在机器人、游戏AI、交通控制等方面的不断发展,ODIS对多智能体工业场景中广泛存在的数量可变智能体灵活配置、多任务自适应泛化等问题提供了一种基于通用协作技能的解决途径,如在多AGV货物搬运问题中仅依赖少数场景上的离线交互数据即可实现动态数量AGV的有效调配,为实现强化学习方法在现实多智能体系统中的应用提供了新的可借鉴思路。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-06-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 深度强化学习实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档