图 1:系统设计概况
AI 服务器实现的是 AI 模型与环境的交互方式。分发模块是用于样本收集、压缩和传输的工作站。记忆池是数据存储模块,能为RL 学习器提供训练实例。这些模块是分离的,可灵活配置,从而让研究者可将重心放在算法设计和环境逻辑上。这样的系统设计也可用于其它的多智能体竞争问题。
2、算法设计
RL 学习器中实现了一个 actor-critic 神经网络,其目标是建模 MOBA 1v1 游戏中的动作依赖关系。如图2所示。
图 2:论文实现的actor-critic网络
为了实现有效且高效的训练,本文提出了一系列创新的算法策略:
1.目标注意力机制:用于帮助AI在 MOBA 战斗中选择目标。
2.LSTM:为了学习英雄的技能释放组合,以便AI在序列决策中,快速输出大量伤害。
3.动作依赖关系的解耦:用于构建多标签近端策略优化(PPO)目标。
4.动作掩码:这是一种基于游戏知识的剪枝方法,为了引导强化学习过程中的探索而开发。
5.dual-clip PPO:这是 PPO 算法的一种改进版本,使用它是为了确保使用大和有偏差的数据批进行训练时的收敛性。如图3所示。
图 3:论文提出的dual-clip PPO算法示意图,左为标准PPO,右为dual-clip PPO
有关这些算法的更多详情与数学描述请参阅原论文。
3、实验
系统设置
测试平台为热门 MOBA 游戏《王者荣耀》的 1v1 游戏模式。为了评估 AI 在现实世界中的表现,这个 AI 模型与《王者荣耀》职业选手和顶级业余人类玩家打了大量比赛。实验中 AI 模型的动作预测时间间隔为 133 ms,这大约是业余高手玩家的反应时间。另外,论文方法还与已有研究中的基准方法进行了比较,其中包括游戏内置的决策树方法以及其它研究中的 MTCS 及其变体方法。实验还使用Elo分数对不同版本的模型进行了比较。
实验结果
探索动作决策能力的上限
表 3 给出了AI和多名顶级职业选手的比赛结果。需要指出这些职业玩家玩的都是他们擅长的英雄。可以看到 AI 能在多种不同类型的英雄上击败职业选手。
表 3:AI 与职业选手使用不同类型英雄比赛的结果
评估动作决策能力的稳健性
实验进一步评估了 AI 学习的策略能否应对不同的顶级人类玩家。在2019年8月份,王者荣耀1v1 AI对公众亮相,与大量顶级业余玩家进行了2100场对战。AI胜率达到99.81%。