分级强化学习

说起来人们研究使用机器学习来玩游戏已经有一段时间了:
2015年机器学习被人们开发来玩简单的Atari小游戏;

2017年,谷歌的AlphaGo以3:0的战绩轻松击败世界排名第一的中国棋手柯洁;

2018年,OpenAI开发的Dota2机器学习程序OpenAI Five已经能够和高端人类选手一较高下;

从简单的视频小游戏到相对复杂的棋类游戏,再到环境更为复杂的星际争霸、Dota2等,我们非常幸运地见证了AI一步步成长。
今天,我们介绍的是vivo机器学习实验室的研究成果:使用分层强化学习算法教神经网络玩王者荣耀。OpenAI训练的OpenAI Five在微操上确实能够和顶尖人类玩家相媲美,但是他们有一个致命的不足,就是没有大局观和配合,所以就很容易出现这种情况,人类玩家顶住压力度过对线期之后,就开始游走、打配合,依靠完美的运营一步步走向胜利。吸取了OpenAI Five的教训,采用分层强化学习算法,将宏观操作(Macro Action)和微观操作(Micro Action)分层决策:
 使用规则库配合神经网络做宏观决策,宏观决策包括攻击、移动、购买装备、加技能点四部分;
 使用神经网络去做微观决策,微观决策即使用什么技能以及向哪个方向移动。

分层强化学习一个很明显的好处就是将大局观固化进神经网络框架中,虽然稍微有点生硬,但是取得了一定的效果;同时,这种分层的架构有效地将游戏中庞大的状态集、动作集分解为了宏观操作以及微观操作,攻击以及移动等这些相对较小的部分,一定程度上能够提升网络的训练速度。
下面是vivo采用的神经网络架构:

vivo的AI实验室因为没有王者荣耀的API,只能使用多部手机模拟产生数据,并且关于防御塔数量、英雄血量这些游戏信息也不能直接获取,而是使用多目标识别的方式从屏幕上抠下来,这会对整个网络的决策造成一定的影响。也正因为此,论文中训练的这一套神经网络在效果上还是有很大的提升空间的,这里是神经网络框架的胜率:

从这里看,训练出来的神经网络框架还是停留在打人机的阶段,相较于腾讯的神经网络框架还是有相对较大的差异,但是腾讯毕竟是拥有官方的API和足量的训练数据。如果能够在游戏信息获取以及reward的设置中做出一定的改进,相信神经网络框架能够在实验效果上有更大的提升。
论文地址:https://arxiv.org/pdf/1901.08004.pdf

你可能感兴趣的:(强化学习)