基于分层强化学习的游戏AI 设计研究

2021-09-10 07:22包东辉
江苏广播电视报·新教育 2021年16期

摘要:游戏AI是计算机游戏结合人工智能的产物,是强化学习领域的重要实验载体。目前在游戏AI领域,遇到的困难与挑战和强化学习目前遇到的问题基本一致,主要集中在三个方面:稀疏且延迟的反馈,高维状态动作空间,不稳定的环境。本文基于深度强化学习,结合分层思想以及注意力机制,提出了基于注意力的分层深度强化学习框架,解决复杂环境下群集智能的问题。

关键词:游戏AI;分层强化学习;深度强化学习

游戏AI的定义广泛且灵活,凡是能够产生适当水平的智能从而让游戏更加有趣,逼真,有挑战性即可被视为游戏AI。游戏AI一般分为两种:一种是基于有限状态机或行为树的定性AI,其行为表现可预测;另一种是采用神经网络、遗传算法等得到的非定性AI,其行为难以预测。

随着机器学习技术的发展[1],我们可以利用强化学习理论设计游戏AI,可以将游戏智能角色在整个游戏中的表现过程简化成为一个马尔科夫模型,智能角色利用它的感知系统获取环境以及自身的状态,结合自身的经验准则选择执行行为,该行为又作用于游戏系统推动游戏进程的发展,同时环境会对智能角色的执行行为进行反馈评价。对于智能角色来说,如何获取最优的行为以便获得环境最佳反馈即为主要目标。智能角色在游戏中执行这样的操作流程即构成一条马尔科夫链,循环往复直至整个游戏的结束。传统的机器学习方法主要适用于低维输入,在这种情况下收敛速度和效果都比较满意。但是随着计算机软硬件设备性能的增强,同时随着神经网络技术的突破,游戏智能所面临的技术困难也越来越多,目前主要集中在以下三个方面:1、高维的状态空间与动作空间技术瓶颈,现在的行为智能技术只能完成简单的行走,无法完成预测、决策等复杂行为;2、游戏中的反馈稀疏且具有延迟性,整个游戏流程可能只有在通关或者特定情况下有少量的反馈;3、游戏智能从单智能体的需求上升到了集群智能,其他智能体同样会对环境产生影响,使智能对象的训练变得更加困难。针对上述问题,神经网络成为了解决高维状态动作空间的手段,分层强化学习[2]为反馈稀疏且延迟提供了潜在的解决途径,多智能体造成的环境不稳可以通过建立智能体之间的通信或者共享相关参数来解决。

一、实验基础

通过对实验载体的筛选,初步拟定技术路线并在实验平台上构建了实验原型,使用了传统的算法进行了预训练。调研了多个与游戏智能相关的基于强化学习的训练平台,以第一人称射击类经典游戏毁灭战士为载体的ViZDoom,知名游戏引擎unity开发的ML-Agents,以炸弹人为原型设计的对战平台Pommerman,微软根据沙盒建造游戏Minecraft开发的强化学习平台marLo。在文中,我们采用Unity ML-Agents作为实验载体,起源自游戏引擎unity赋予了该平台插件能够快速构建实验环境以及版本迭代,底层采用Python进行控制,基于TensorFlow的实现方式能够使研究人员能够快速上手。

二、基于分层强化学习的游戏AI设计方案

本文主要采用深度强化学习理论,多智能体系统理论,强化学习的分层思想以及注意力机制。强化学习即为在完全观测的前提下,单个智能体的决策定义为一个马尔科夫过程,该过程由一个一个元组S,A,P,R,构成,在时刻t时,智能体处于状态sS,通过策略a|s执行动作aA,获得环境反馈奖励rt R(s),并根据转移方程P(s|s,a)进入下一个状态sS。对于未来长度为H马尔科夫链,定义有带损失系数0,1的奖励反馈Rt,以及动作值(或者Q值)定义为Q(s,a)E[Rt|sts,ata]。通过最大化Q值,可以获得最优策略*,所以采取最优策略的Q值函数是Q*(s,a)maxQ(s,a)。在强化学习中,不会有固定马尔科夫过程,智能体需要通过与环境不停地进行交互来学习最优策略*。目前,Q-Learning方法广泛用来结合深度学习使用,该方法通过备份迭代估计Q值函数,Q(s,a)Q(s,a)[rmaxaQ(s,a)Q(s,a)],参数0,1,代表学习的速率,在中括号中的部分是TD误差。

近年在函数逼近器方面的进展非常迅速,得益于深度神经网络的研究突破,结合深度神经网络能够直接将一些高维的数据直接输入。在这些构建函数逼近方程的方法里面,Deep Q-Learning(DQN)是广泛被人接受并且效果最好的一种方法,目前已经应用到不同的领域中,包括雅达利游戏,围棋AI Alpha Go。其具体的实现方法是:在第j次迭代过程中,从内存M中提取经验元组s,a,r,s来更新DQN的参数,更新的时候采用最小化孙氏函数方程来实现。经验内存M采用先进先出的队列模式,其中存储了智能体执行了-greedy探索策略后获得的最新经验元组。目标网络参数 的更新频率会相对低一些,这样结合了经验回放学习机制,构成了稳定Deep Q-Learning的关键。

为了解决在反馈奖励稀疏或者存在延迟的环境下不能获得很好效果的问题,采用Sutton提出的Option框架构建分层强化学习,该框架定义在每一个时间步内,智能体会选择一个原始动作或者一个包含多个步骤的策略(选择)。每一个策略都包含了若干个原始动作或者其他策略,并且能够根据随机函数终止。由此,我们将传统的马尔科夫决策过程拓展成了半马尔科夫决策过程,解决稀疏反馈和延迟反馈的问题。

针对于多智能体的训练,以独立Q网络为基线训练,单独给予每个智能对象一个Q网络,将多个智能对象放在一起训练。在此基础上加入智能对象的通信协议,让智能对象能够共享部分观测的信息,以做出更好的决策。在卷积神经网络进行特征提取后各智能对象通过沟通中心进行情报共享,再进行注意力机制的处理。如图1,本文拟采用深度强化学习方法结合分层思想来进行动作类游戏下的游戏智能对象研究。上层结构输入为智能对象的视野即相机画面帧,传入卷积网络提取特征,提取的特征通过沟通中心向所有智能对象共享,再将数据传入注意力机制中进行加权与追踪处理,传入Q网络训练产生多个时间步的规划目标g。下层结构输入为智能对象的视野以及上层结构产生的规划目标g,通过Q网络进行训练后输入执行动作,交给游戏智能对象执行,与環境进行交互,完成任务。该过程不停进行迭代训练,最终期望能收敛到最优的协作对抗策略参数以及智能体内部上下层的最优策略。

总结:本文结合复杂环境的行为决策问题,利用Unity3D引擎与其ML-Agent插件,开发了AI对抗智能系统,相较于之前的框架,本文提出的框架能够获得较好的效果。

参考文献:

[1]周志华.机器学习[M].北京:清华大学出版社,2016

[2]周文吉,俞扬.分层强化学习综述[J].智能系统学报,2017(05):12-16.

基金资助:2021年度广西高校中青年教师科研基础能力提升项目“Web3D教育平台中基于动作识别的人机交互研究”,课题编号:2021KY1439。

作者简介:包东辉,1971年6月,男,民族:汉族,籍贯:广西北海市,学历:本科,职称:讲师,研究方向:计算机应用技术,工作单位:北海职业学院。