Hierarchical Reinforcement Learning for Multi-agent MOBA Game 论文笔记

题目:Hierarchical Reinforcement Learning for Multi-agent MOBA Game

翻译&重点提炼

Abstact(概述)

实时策略(RTS)游戏需要宏观策略和微观策略才能获得令人满意的效果,因为它具有较大的状态空间,动作空间和隐藏的信息。本文提出了一种新颖的分层强化学习模型,用于掌握多人在线战斗竞技场(MOBA)游戏。所做的贡献是:(1)提出一个层次结构的框架,其中智能体通过模仿学习执行宏观策略,并通过强化学习进行微观操作;(2)开发一种简单的自学习方法来获得更好的训练样本效率; (3)在没有游戏引擎或应用程序编程接口(API)的情况下,为多主体合作设计密集 (dense)奖励函数。最后,已经进行了各种实验以验证所提出的方法相对于其他最新的强化学习算法的优越性能。智能体成功学习了以100%的获胜率战斗和击败铜级内置AI的方法,实验表明,我们的方法可以为5v5模式的移动MOBA游戏《王者荣耀》创建具有竞争力的多智能体。

关键词
  • 分层强化学习模型
  • 模仿学习
  • 自学习方法
  • 为多主体合作设计密集 (dense)奖励函数
1.Introduction(介绍)

自从成功玩Atari,AlphaGo,Dota 2等游戏以来,深度强化学习(DRL)已成为游戏AI的有前途的工具。 研究人员通过在游戏中进行实验来快速验证算法,并将此功能转移到现实世界的应用程序中,例如机器人控制,推荐服务。 不幸的是,实践中仍然存在许多挑战。 最近,越来越多的研究人员开始征服更复杂的实时策略(RTS)游戏,例如《星际争霸》和《Data》。Dota是一种多人在线战斗竞技场(MOBA)游戏,其中包括5v5和1v1模式。 为了在MOBA游戏中取得胜利,玩家需要控制自己的唯一一名智能体来摧毁敌人的水晶。
MOBA游戏占据了全世界在线游戏的30%以上,包括英雄联盟,Dota,荣耀之王(KOG)等。 图1a显示了KOG的5v5地图,其中玩家通过控制左下转向按钮来控制英雄的动作,同时通过控制右下按钮组来使用技能。 左上角显示小地图,蓝色标记代表自己的塔,红色标记代表敌人的塔。 每个玩家都可以通过杀死敌人,玩杂耍和摧毁塔来获得金钱和经验。 该游戏的最终目标是消灭敌人的水晶。 如图1b所示,在1v1地图中有两个玩家。
在这里插入图片描述
与Atari相比,MOBA游戏的主要挑战是:(1)游戏引擎或应用程序接口(API)对我们不可用。 我们需要通过多目标检测来提取特征。在手机上运行游戏,在计算能力方面受到限制。 但是,计算复杂度可能高达1020,000,而AlphaGo约为10250(2)奖励严重延迟且稀疏。 游戏的最终目的是摧毁敌人的水晶,这意味着奖励被严重延迟了。 同时,如果我们根据最终结果的损失/获胜来设置−1/1的奖励,则奖励实际上是稀疏的。 (3)多主体的沟通与合作具有挑战性。 交流与合作对于RTS游戏至关重要,尤其是在5v5模式下。
据我们所知,本文是首次提出在MOBA游戏中进行强化学习的尝试,该学习不是从API获取信息,而是直接从游戏视频中获取信息。 我们通过对宏观策略的模仿学习来应对计算复杂性的诅咒,而且由于这部分的奖励被严重延迟和稀疏,因此难以训练智能体。 同时,我们开发了一个分布式采样平台,以加快训练过程,并结合A-Star路径规划算法进行导航。 为了测试我们方法的性能,我们将流行的移动MOBA游戏KOG游戏作为我们的实验环境,并进行了系统的实验。
这项工作的主要贡献包括:(1)为一种结合模仿学习和强化学习的移动MOBA游戏KOG提出了一种新颖的分层强化学习框架。 根据人类的经验,模仿学习负责宏观策略,例如去哪里,何时进攻和防御;强化学习负责微观操作,例如释放哪些技能以及如何在战斗中移动; (2)开发一种简单的自我学习方法,该方法可以学习与智能体过去的良好决策竞争,并提出优化策略以加快培训过程; (3)开发一种多目标检测方法,以提取构成强化学习状态的全局特征; (4)设计密集的奖励功能,并使用实时数据相互通信。 实验表明,与其他强化学习方法相比,我们的智能体学习的策略更好。

关键词
  • 奖励严重延迟且稀疏。 游戏的最终目的是摧毁敌人的水晶,这意味着奖励被严重延迟了。 同时,如果我们根据最终结果的损失/获胜来设置−1/1的奖励,则奖励实际上是稀疏的。
  • 多主体的沟通与合作具有挑战性。 交流与合作对于RTS游戏至关重要,尤其是在5v5模式下。
  • 本文是首次提出在MOBA游戏中进行强化学习的尝试,该学习不是从API获取信息,而是直接从游戏视频中获取信息。(用不上)
  • 开发一种简单的自我学习方法,该方法可以学习与智能体过去的良好决策竞争,并提出优化策略以加快培训过程;
  • 开发一种多目标检测方法,以提取构成强化学习状态的全局特征;(用不上)
  • 设计密集的奖励功能,并使用实时数据相互通信。
2.Related Work(相关工作)
2.1.RTS Games(RTS游戏)

关于RTS游戏(如《星际争霸》和《 Dota》)的研究已有历史。 机器人SAIDA使用基于规则的方法的一种实用方法最近在SSCAIT上获得了冠军。 基于游戏的经验,基于规则的机器人只能在游戏开始时选择预定义的操作和策略,这不足以处理整个游戏中的大型实时状态空间,并且难以继续学习和学习。 不断发展。 由OpenAI创建的Dota2 AI被称为OpenAI Five,它通过使用近端策略优化(PPO)算法以及精心设计的奖励而取得了巨大的成功。 但是,由于缺乏宏观策略,OpenAI Five使用了大量的计算资源。
腾讯AI实验室在游戏KOG的宏观战略中也进行了相关工作,他们的5-AI团队与rank前1%人类玩家团队的对战胜率达到48%。 但是,5-AI团队使用监督学习,并且可以从服务器上运行的游戏引擎和API处理的游戏重播中获取训练数据。 我们无法使用此方法,因为我们无法访问游戏引擎或API,并且需要在手机上运行。

关键词
  • rule-based method
  • Proximal Policy Optimization (PPO)
  • 监督学习(应该用不上)
2.2 Hierarchical Reinforcement Learning(分层强化学习)

由于环境中的大型状态空间,传统的强化学习方法(例如Qlearning或Deep Q Network(DQN))难以管理,分层强化学习通过将高维目标分解为更易于处理的几个子目标来解决此类问题
分层强化学习一直在不同的场景探索应用。 对于游戏,存在一些与我们的分层体系结构相关的东西,该层次结构利用了游戏的先验知识来设计宏观策略,既没有模仿学习,也没有专家的指导。 最近提出了许多新颖的层次强化学习算法。有一种元学习与层次学习相结合的方法是元学习共享层次(MLSH),它主要用于多任务学习和转移学习。 分层指导的模仿学习/强化学习已被证明可以有效地加快学习速度,但是它需要微观策略方面的高级专家指导,这对于RTS来说很难设计。

关键词
  • MLSH
2.3 Multi-agent Reinforcement Learning in Games(游戏中的多主体强化学习)

与单人学习相比,多人强化学习(MARL)具有某些优势。 不同的智能体可以通过知识共享更快,更好地完成任务,并且也存在一些挑战。 例如,与单主体学习相比,由于较大的状态空间和动作空间,计算复杂度增加。 由于上述挑战,MARL主要致力于稳定性和适应性
强化学习在MARL上的简单应用受到限制,例如智能体之间没有沟通与合作,缺乏全局奖励以及在学习政策时未能考虑敌人的策略。最近研究了一些与此挑战有关的研究。一篇论文介绍了使用共享奖励对合作环境的集中批评。该方法将重播内存中的经验解释为脱离环境的数据,并边缘化单个智能体的行为,同时保持其他代理不变。这些方法可将经验重播与多主体成功结合。相似地,提出了一种基于行为批评算法的MARL注意力交流模型,该模型学习决策时的信息交流和共享。因此,这种方法可以作为拟议研究的补充。参数共享多主体梯度下降Sarsa(PS-MASGDS)算法使用神经网络来估计值函数,并提出了奖励函数来平衡《星际争霸》游戏中单位的移动和攻击,这可以从中学到。但是,这些方法需要大量的计算资源。

关键词
  • 多人强化学习(MARL)
  • 一篇论文介绍了使用共享奖励对合作环境的集中批评。该方法将重播内存中的经验解释为脱离环境的数据,并边缘化单个智能体的行为,同时保持其他代理不变。这些方法可将经验重播与多主体成功结合。
  • 相似地,提出了一种基于行为批评算法的MARL注意力交流模型,该模型学习决策时的信息交流和共享。
  • 多主体梯度下降Sarsa(PS-MASGDS)算法
3 Methods(算法)

本节介绍层次结构,状态表示和动作定义。 然后给出了网络架构和训练算法。 最后讨论了奖励函数的设计和自学习方法。

3.1 Hierarchical Architecture(层次结构)

层次结构如图2所示。宏动作有四种类型,包括攻击,移动,购买和添加技能点,它们是通过模仿学习选择的。 然后,强化学习算法根据策略π选择特定的动作a,使状态s成为微观策略。 执行编码的动作,代理可以从KOG环境中获得奖励r和下一个观察值s’。
在这里插入图片描述
定义为收益,其中γ∈[0,1]是损失因子。 智能体的目的是学习一种使期望的收益最大化的策略,定义为:
在这里插入图片描述
通过从游戏视频信息中观察而设计的调度程序模块负责在强化学习和模仿学习之间进行切换。 对于模仿学习模型中的数据是由高级专家指导生成的事实,也可以用高级专家系统代替模仿学习部分。

3.2 State Representation and Action Definition(状态表示和动作定义)

State Representation(状态表示)
如何最佳地表示RTS游戏的状态是一个悬而未决的问题。 本文通过多目标检测,游戏的迷你地图信息以及代理的当前视图(具有不同的维度和数据类型)提取的特征构造了状态表示,作为神经网络的输入,如表1所示。 是代理程序视图中的RGB图像,小地图信息来自屏幕快照左上角的RGB图像。
在这里插入图片描述
提取的特征包括当前视图中所有英雄,塔和士兵的位置,血量,玩家拥有的黄金和英雄释放的技能,如图3所示。所有提取的特征均嵌入到116维张量中。 当前步骤的输入由当前状态信息,最后一步信息和最后动作组成,这些信息对增强学习中的学习过程非常有用。 具有实际值的状态被归一化为[0,1]。
Action Definition(动作定义)
在此游戏中,我们将动作分为动作M和动作A两部分。动作M包括上,下,左,右,右下,左下,右上,左上和停留 仍然。 当所选动作是攻击动作A时,它可以保持静止,技能1,技能2,技能3,攻击和召唤技能,包括闪光和恢复。 同时,当每个智能体都可使用动作攻击时,攻击最弱的敌人是我们的首选。

3.3 Network Architecture and Training Algorithm(网络架构与训练算法)

Network Architecture(网络架构)
表强化学习(例如Qlearning)在大型状态空间情况下具有局限性。 为了解决这个问题,微观算法的设计类似于近端策略优化(PPO)算法。卷积网络的输入是当前视图和小地图信息,形状分别为84×42×3和64×64×3。 同时,提取的特征由116维张量组成。 我们在隐藏层中使用整流线性单位(ReLU)激活函数。 输出层的激活函数是softmax函数,该函数输出每个动作的概率。 我们在游戏KOG中的模型,包括网络的输入和体系结构以及动作的输出,如图3所示。
在这里插入图片描述
Training Algorithm(训练算法)
见原文

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值