zl程序教程

您现在的位置是:首页 >  工具

当前栏目

王者荣耀:在绝悟上进行监督学习

学习 进行 荣耀 监督 王者 绝悟
2023-06-13 09:14:33 时间

作者:leo

从事:腾讯后台策略工程师

《Supervised learning achieves human-level performance in MOBA games: A case study of honor of kings》

这是一篇腾讯AI lab发表的文章,其主要利用MOBA游戏王者荣耀的数据进行强化学习,训练出一个能够打败人类顶尖选手的AI。

同时在文章中,提出了在游戏中的两个概念:Macro-strategy(宏观策略)、Micro management(微观控制)

01

论文简介

我们知道,在MOBA游戏中,会存在应用的多个动态位置和不同的团队策略中,同时每一个用户需要控制一个英雄,共10个玩家。

在论文中,在利用强化学习之前,提出先使用监督学习(SL)来进行模型的预训练。

论文主要有两个贡献:

1

根据有经验的人类玩家,会执行不同的动作和策略,提出了`macro-strategy`和`micromanagement`。其中`macro-strategy`表明玩家会倾向于去哪个区域,做什么动作。而`micromanagement`则表明玩家最小的执行单位:比如`移动`,`攻击`等。

2

从实验表明,利用监督学习和强化学习,训练得到的AI达到甚至超过人类水平

论文简单的把王者荣耀的游戏界面分为:A(全局信息)、B(游戏当前状态)、C(玩家操作);之后的特征设计也是根据这些来进行。

02

特征与模型

特征输入类型

1

输入有两个特征:vector特征、图像特征;论文中称为多模态输入特征

2

vector特征:主要用来表征当前英雄、队友、敌方的状态信息,包含英雄的基础属性和游戏状态信息等。比如英雄血量、等级、buff

3

图像特征(image-like, 类似图像,不是真的图片):分为局部图和全局图,局部图表征当前英雄所处的位置信息,技能信息等;全局图表征所有英雄的位置信息,小兵,塔信息等。

标签构造

论文中构造了两个任务进行监督训练,分布是macro-strategy:意图标签,micro-management:动作标签。具体来说,从游戏中玩家的注意力中抽象出来的意图标签,是带有全局和局部意图的多视图。

Macro-strategy

1

宏观策略可预测玩家要移动的区域。根据人类的知识,发生攻击的区域可以指示玩家的目的地,否则,玩家将不会在其他地点花费时间。

2

global intent:定义攻击的地方为ground-truth区域:只考虑持续性的攻击。玩家可能获得的收益。把王者中地图划分为24*24,共576个类别

3

local intent:是局部作战的短期计划,包括在丛林或安全点集合,撤退到附近的炮塔,或等待目标英雄,最后攻击目标。已自身为中心,划分12*12个区域。local intent从两次攻击事件中抽取玩家的中间位置。比如王者荣耀中,平均6.5s计算一次中间位置。

Micromanagement

1

它包含了两种不同的类型

2

level-1:移动,攻击,放技能等

3

level-2:根据level-1,执行对应的动作类型:方向类型、目标类型、位置类型

数据预处理

场景识别:作为预处理步骤,MOBA游戏中,由于英雄的动作轨迹有所不同,从而实现不同的目的,因此游戏被细分为不同的场景。基于轨迹分析,论文为MOBA定义了以下游戏场景:

  1. 推塔、团战、攻击小兵、攻击野怪、返回、移动
  2. 数字列表
  3. 在定义的场景中,大多数都与攻击目标和距离有关系
  4. 由于定义的场景类型会出现不平衡:比如推塔和团战出现的频率不一致。所以对一些过多的场景进行欠采样,把不同场景进行平衡。
  5. 在移动场景中,会存在大量的noise(因为大部分的移动都是无效移动),因此在团战中取5帧,其他场景取15帧
  6. 攻击场景:模型会学习攻击高血量的英雄(高血量样本往往也更多),因此需要欠采样高血量的样本,过采样低血量的样本

03

模型

整体模型如下:

  • 输入特征中:多模态
  • 在输出中,构建了两个多维度标签:`macro-strategy`和`micro-management`

04

实验

实验主要有三种:

与baseline方法进行比较:本文训练的AI胜率都较高

人工智能对抗人类团队的表现。在标准的MOBA 5v5模式下进行比赛,即五名人工智能AI与五名人类玩家比赛。考察了觉悟SL作为一个团队的战斗能力。

人工智能与人类队友合作的表现。

可以看到(a)AI-1用防护罩保护AI-2,以确保安全。(b)和(c)AI-1迫使敌人改变其技能的移动方向,从而为AI-2留出空间以其最终技能锁定目标。(d)AI-2的技能命中,敌人被杀死(从左到右分别是a,b,c和d)。