CN109663359A - 游戏智能体训练的优化方法、装置、终端设备与存储介质 - Google Patents

游戏智能体训练的优化方法、装置、终端设备与存储介质 Download PDF

Info

Publication number
CN109663359A
CN109663359A CN201811492348.1A CN201811492348A CN109663359A CN 109663359 A CN109663359 A CN 109663359A CN 201811492348 A CN201811492348 A CN 201811492348A CN 109663359 A CN109663359 A CN 109663359A
Authority
CN
China
Prior art keywords
observation sequence
return
current
network
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811492348.1A
Other languages
English (en)
Other versions
CN109663359B (zh
Inventor
徐波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GUANGDONG LIWEI NETWORK TECHNOLOGY CO LTD
Multi Benefit Network Co Ltd
Guangzhou Duoyi Network Co Ltd
Original Assignee
GUANGDONG LIWEI NETWORK TECHNOLOGY CO LTD
Multi Benefit Network Co Ltd
Guangzhou Duoyi Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GUANGDONG LIWEI NETWORK TECHNOLOGY CO LTD, Multi Benefit Network Co Ltd, Guangzhou Duoyi Network Co Ltd filed Critical GUANGDONG LIWEI NETWORK TECHNOLOGY CO LTD
Priority to CN201811492348.1A priority Critical patent/CN109663359B/zh
Publication of CN109663359A publication Critical patent/CN109663359A/zh
Application granted granted Critical
Publication of CN109663359B publication Critical patent/CN109663359B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6027Methods for processing data by generating or executing the game program using adaptive systems learning from user actions, e.g. for skill level adjustment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种游戏智能体训练的优化方法、装置、终端设备与存储介质,包括:根据游戏脚本获取第一观测序列,并设为当前观测序列;基于预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;基于预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和下一观测序列获取当前自我驱动回报;将当前环境回报和当前自我驱动回报加入到累积回报中,并判断累积回报是否小于目标值;如果累积回报小于目标值,则将下一观测序列作为当前观测序列继续训练,直至累积回报达到目标值停止训练。本发明能够使游戏智能体获得额外的自我驱动回报进行训练,从而提高训练效率,节省运行资源。

Description

游戏智能体训练的优化方法、装置、终端设备与存储介质
技术领域
本发明涉及人工智能领域,尤其涉及一种游戏智能体训练的优化方法、装置、终端设备与存储介质。
背景技术
游戏智能体(Game Agents)是一种能在游戏环境中通过算法实现具有类似人类智能行为的非玩家个体。在游戏环境中训练智能体,已经成为人工智能研发的常用手段。强化学习作为一种常用的训练游戏智能体的方法,能够使训练后的游戏智能体在游戏环境交互中完成很多复杂的任务;游戏智能体通过与游戏环境互动以学习类似人类智能的游戏玩法,其目标在于学习策略,即每个游戏步骤如何执行才能达到理想状态,通过强化学习,游戏智能体利用已设置的程序进行自我探索以及对人类行为进行模仿,自发地产生应对游戏环境变化的响应行为,从而达成目标并获得环境回报。
但是,在许多的游戏环境中,环境回报可能非常稀疏,即游戏智能体需要采取较长的一系列正确行动才能达到目标回报,并且当环境回报非常稀疏时,容易导致游戏智能体的自我探索陷入大量重复的无效尝试中,造成训练效率的低下以及游戏智能体运行资源的浪费。
发明内容
针对上述问题,本发明实施例的目的是提供一种游戏智能体训练的优化方法、装置、终端设备与存储介质,能够使游戏智能体获得额外的自我驱动回报进行训练,从而提高训练效率,节省运行资源。
为实现上述目的,本发明一方面提供了一种游戏智能体训练的优化方法,游戏智能体模型包括动作网络和评论家网络;所述动作网络和所述评论家网络均包括全连接层,所述方法包括:
S11、根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;其中,所述第一观测序列由所述游戏脚本在预设的游戏环境中执行生成。
S12、基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;其中,所述下一观测序列和所述当前环境回报由所述动作网络根据当前观测序列预测获得的动作序列在所述游戏环境中执行生成。
S13、基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报。
S14、根据所述评论家网络判断累积回报是否小于预设的目标值;其中,所述累积回报根据所述当前环境回报、所述当前自我驱动回报、历史获取的环境回报和历史获取的自我驱动回报获得。
S15、当所述累积回报小于所述目标值时,将所述下一观测序列设为当前观测序列,并返回步骤S12;当所述累积回报不小于所述目标值时,训练过程结束。
优选地,所述基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报,具体包括:
基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
基于所述动作网络,根据所述当前观测序列的投影向量获取动作序列;
根据所述动作序列在所述游戏环境中执行的结果获取所述下一观测序列和所述当前环境回报。
优选地,所述基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报,具体包括:
基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
基于所述预先训练的预测网络,根据所述当前观测序列的投影向量获取预测投影向量;
根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报。
优选地,所述根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报,具体包括:
根据所述预测投影向量和所述下一观测序列获得均方误差或余弦距离;
将所述均方误差或所述余弦距离作为所述当前自我驱动回报。
优选地,所述方法通过以下公式获得所述累积回报:
R=R1+r*R2+r2*R3+…+rn-1Rn;
其中,R表示累积回报,r表示衰减系数,Ri表示第i次获取的环境回报与第i次获取的自我驱动回报之和,i=1,2,···,n。
优选地,所述自编码网络包括编码器和解码器;所述方法通过以下步骤对所述自编码网络进行预先训练:
根据所述编码器对训练观测序列进行压缩编码获得训练投影向量;
根据所述解码器对所述训练投影向量进行解码获得训练输出序列;
根据所述训练输出序列与所述训练观测序列获得交叉熵,并将所述交叉熵作为代价函数;
根据所述代价函数和反向传播算法对所述自编码网络进行优化。
优选地,所述预测网络为循环神经网络;所述方法通过以下步骤对所述预测网络进行预先训练:
根据所述预测网络对当前训练投影向量进行预测得到当前预测训练投影向量;
根据所述当前预测训练投影向量与下一训练投影向量获得均方误差,并将所述均方误差作为代价函数;
根据所述代价函数和反向传播算法对所述预测网络进行优化;
其中,所述当前训练投影向量和所述下一训练投影向量为通过预设的训练游戏脚本获取的训练观测序列对应的训练投影向量。
为实现上述目的,本发明第二方面提供了一种游戏智能体训练的优化装置,所述游戏智能体模型包括动作网络和评论家网络;所述动作网络和所述评论家网络均包括全连接层;所述装置包括:
第一观测序列获取模块,用于根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;其中,所述第一观测序列由所述游戏脚本在预设的游戏环境中执行生成;
环境回报获取模块,用于基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;其中,所述下一观测序列和所述当前环境回报由所述动作网络根据当前观测序列获得的动作序列在所述游戏环境中执行生成;
自我驱动回报获取模块,用于基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报;
判断模块,用于根据所述评论家网络判断累积回报是否小于预设的目标值;其中,所述累积回报根据所述当前环境回报、所述当前自我驱动回报、历史获取的环境回报和历史获取的自我驱动回报获得;以及,
判断结果处理模块,用于当所述累积回报小于所述目标值时,将所述下一观测序列设为当前观测序列,并调用所述环境回报获取模块进行处理;当所述累积回报不小于所述目标值时,训练过程结束。
为实现上述目的,本发明第三方面提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的游戏智能体训练的优化方法。
为实现上述目的,本发明第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述第一方面所述的游戏智能体训练的优化方法。
相比于现有技术,本发明实施例具有如下有益效果:本发明实施例提供了一种游戏智能体训练的优化方法、装置、终端设备与存储介质,根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;根据当前观测序列在动作网络中获取对应动作序列,并在游戏环境中执行获取环境回报和下一观测序列;当前观测序列基于已预先训练的预测网络与下一观测序列获取自我驱动回报;根据环境回报、自我驱动回报、历史获取的环境回报以及历史获取的自我驱动获取累积回报,比较累积回报和预设的目标值,如果累积回报小于预设的目标值则根据下一观测序列继续训练,否则训练结束。相比现有的游戏智能体训练方法,当环境回报非常稀疏时,本发明实施例可以获得自我驱动回报作为额外的回报,避免游戏智能体陷入重复无效的探索,从而提高训练效率,节省运行资源。
附图说明
图1是本发明实施例1提供的一种游戏智能体训练的优化方法的流程图;
图2是本发明实施例2提供的一种游戏智能体训练的优化方法的数据流程示意图;
图3是本发明实施例3提供的自编码网络的结构示意图;
图4是本发明实施例4提供的预测网络的结构示意图;
图5是本发明实施例5提供的LSTM单元的结构示意图。
图6是本发明实施例6提供的一种游戏智能体训练的优化装置的结构框图;
图7是本发明实施例7提供的一种终端设备的结构框图。
具体实施方式
将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本实施例提供的一种游戏智能体训练的优化方法的流程示意图,游戏智能体模型包括动作网络和评论家网络;所述动作网络和所述评论家网络均包括全连接层;所述方法包括步骤S11至步骤S15:
S11、根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;其中,所述第一观测序列由所述游戏脚本在预设的游戏环境中执行生成。
第一观测序列由游戏脚本在预设的游戏环境中执行生成,游戏脚本为游戏环境提供随机或特定的动作序列,以控制游戏环境产生变化。其中,第一观测序列是指对游戏环境中产生的画面、声音等进行处理所得到的数据序列。例如,对于游戏环境中产生的画面,可以通过以下步骤进行处理获取相应的数据序列:
1)将每一帧的画面图像均调整为固定长宽,并转换为单一通道的灰度图;
2)观测序列为当前帧图像和当前帧图像的前两帧图像的组合,即序列中的每一帧数据包含三帧图像的灰度图的组合。
S12、基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;其中,所述下一观测序列和所述当前环境回报由所述动作网络根据当前观测序列预测获得的动作序列在所述游戏环境中执行生成。
作为优选方案,所述基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报,具体包括:
基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
基于所述动作网络,根据所述当前观测序列的投影向量获取动作序列;
根据所述动作序列在所述游戏环境中执行的结果获取所述下一观测序列和所述当前环境回报。
将当前观测序列输入预先训练的自编码网络,相应获得当前观测序列的投影向量,将当前观测序列的投影向量输入动作网络,相应获得动作序列,根据动作序列在游戏环境中执行的结果可以获取下一观测序列和当前环境回报。
需要说明的是,下一观测序列是指对游戏环境中产生的画面、声音等进行处理所得到的数据序列。
S13、基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报。
作为优选方案,所述基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报,具体包括:
基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
基于所述预先训练的预测网络,根据所述当前观测序列的投影向量获取预测投影向量;
根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报。
作为优选方案,所述根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报,具体包括:
根据所述预测投影向量和所述下一观测序列获得均方误差或余弦距离;
将所述均方误差或所述余弦距离作为所述当前自我驱动回报。
当自我驱动回报用均方误差表示时,其计算公式如下:
其中,p表示预测投影向量,z′表示下一观测序列对应的投影向量,n表示向量维数。
将当前观测序列输入预先训练的自编码网络,相应获得当前观测序列的投影向量,将当前观测序列的投影向量输入预先训练的预测网络,相应获得预测投影向量,计算预测投影向量和下一观测序列的均方误差或余弦距离,将计算获得的均方误差或余弦距离作为当前自我驱动回报。
S14、根据所述评论家网络判断累积回报是否小于预设的目标值;其中,所述累积回报根据所述当前环境回报、所述当前自我驱动回报、历史获取的环境回报和历史获取的自我驱动回报获得。
作为优选方案,所述方法通过以下公式获得所述累积回报:
R=R1+r*R2+r2*R3+…+rn-1Rn;
其中,R表示累积回报,r表示衰减系数,Ri表示第i次获取的环境回报与第i次获取的自我驱动回报之和,i=1,2,···,n。
在第i次训练的过程中,将第i次训练获得的环境回报和自我驱动回报之和Ri乘以相应的衰减系数ri-1(衰减系数r根据经验值可取0.98或0.99)后,再加入到第i-1次训练对应获得的累积回报中,可以获得第i次训练对应的累积回报,即完成对累积回报的更新,并且将更新后的累积回报与预先设置的目标值进行比较。
每运行一次的回报都考虑了环境回报和自我驱动回报,相比传统只考虑环境回报的训练能够更好地激励游戏智能体参加训练和探索;每一次的回报都乘以对应的衰减系数后再加入到累积回报中,训练时间越长对应的衰减系数越小,充分考虑了误差的累积效应,使累积回报的计算更合理。
S15、当所述累积回报小于所述目标值时,将所述下一观测序列设为当前观测序列,并返回步骤S12;当所述累积回报不小于所述目标值时,训练过程结束。
当累积回报小于目标值时,将下一观测序列设为当前观测序列,同理,将当前观测序列输入预先训练的自编码网络,相应获得当前观测序列的投影向量,根据当前观测序列的投影向量在动作网络中获取动作序列并在游戏环境中执行,从而获得新的观测序列、环境回报及自我驱动回报,更新累积回报后与目标值进行比较,如果累积回报小于目标值,则继续循环上述训练过程,如果累积回报不小于目标值则训练结束。其中,目标值为具体预设的某个数值或训练达到稳定的某个值。
需要说明的是,游戏智能体模型包括动作网络和评论家网络,其中,动作网络用于预测动作,包含两个全连接层:第一全连接层通道数为256,第二全连接层通道数为动作空间数;评论家网络用于预测积累回报,包含两个全连接层:第一全连接层通道数为256,第二全连接层通道数1。
结合图2所示,该训练方法的数据流程如下:游戏训练开始后,初始化游戏智能体模型的参数和游戏环境,游戏脚本在游戏环境中执行获取第一观测序列,把第一观测序列作为当前观测序列,当前观测序列经过自编码网络后获得当前观测序列投影向量;当前观测序列投影向量同时输出给预测网络和动作网络;其中,当前观测序列投影向量经过动作网络后获得动作序列,动作序列在游戏环境中执行获得环境回报和下一观测序列,下一观测序列经过自编码网络后获得下一观测序列投影向量;当前观测序列投影向量经过预测网络后获得当前预测投影向量;根据获得的下一观测序列投影向量和当前预测投影向量获得自我驱动回报,将自我驱动回报和环境回报之和乘以相应的衰减系数后加入到累积回报中;比较累积回报与目标值,累积回报如果比目标值小,则把下一观测序列作为当前观测序列,继续循环训练,否则训练停止。
结合图3所示,在一种可选的实施方式中,所述自编码网络包括编码器和解码器;所述方法通过以下步骤对所述自编码网络进行预先训练::
根据所述编码器对训练观测序列进行压缩编码获得训练投影向量;
根据所述解码器对所述训练投影向量进行解码获得训练输出序列;
根据所述训练输出序列与所述训练观测序列获得交叉熵,并将所述交叉熵作为代价函数;
根据所述代价函数和反向传播算法对所述自编码网络进行优化。
在对自编码网络进行预先训练时,通过编码器将训练观测序列压缩成训练投影向量,然后再通过解码器将训练投影向量解压成训练输出序列,计算训练输出序列及训练观测序列的交叉熵,并将计算获得的交叉熵作为代价函数,从而根据代价函数和反向传播算法对自编码网络进行优化训练直至收敛,若不收敛,则重复上述训练过程直至达到收敛要求。
对自编码网络的训练完成后,在对游戏智能体的强化学习训练中,游戏运行过程中产生的观测序列经过训练好的自编码网络后,即可获得相应的投影向量以进行后续处理。
自编码网络通过训练观测序列进行预先训练,使得自编码网络对观测序列进行压缩的投影向量更准确,更准确的投影向量在后续的动作网络和游戏环境中运行可以获得更高的环境回报,从而使游戏智能体训练效率更高。
本发明实施例中的自编码网络优选采用变分自编码网络,变分自编码网络结构包含编码器和解码器两部分,编码器包含三个全连接层,其中,第一全连接层通道数为512,第二全连接层通道数为256,第三全连接层通道数为投影向量的维度;解码器包含三个全连接层,其中,第一全连接层通道数为256,第二全连接层通道数为512,第三全连接层通道数为观测数据向量的维度。
在一种可选的实施方式中,所述预测网络为循环神经网络;所述方法通过以下步骤对所述预测网络进行预先训练:
根据所述预测网络对当前训练投影向量进行预测得到当前预测训练投影向量;
根据所述当前预测训练投影向量与下一训练投影向量获得均方误差,并将所述均方误差作为代价函数;
根据所述代价函数和反向传播算法对所述预测网络进行优化;
其中,所述当前训练投影向量和所述下一训练投影向量为通过预设的训练游戏脚本获取的训练观测序列对应的训练投影向量。
在对预测网络进行预先训练时,将当前训练投影向量输入预测网络,获得的输出为当前预测训练投影向量,计算当前预测训练投影向量与下一训练投影向量的均方误差,并将计算获得的均方误差作为代价函数,从而根据代价函数和反向传播算法对预测网络进行优化训练直至收敛,若不收敛,则重复上述训练过程直至达到收敛要求。
对预测网络的训练完成后,在对游戏智能体的强化学习训练中,预测网络接收到训练好的自编码网络输出的投影向量后,即可获得相应的预测投影向量以进行后续处理。
预测网络通过训练投影向量进行训练后,使投影向量经过预测网络获得的预测投影向量与投影向量对应动作序列在游戏环境中运行产生的观测序列更相近,从而提高自我驱动回报,使游戏智能体训练更高效。
图4是本实施例提供的一种预测网络的结构示意图,如图4所示,预测网络为循环神经网络,采用LSTM(Long Short Term Memory)单元,每个LSTM单元在每个时间步输入投影向量z,输出一个预测投影向量p以及状态state,其中状态state用于传递记忆信息。
图5是本实施例提供的一种LSTM单元的结构示意图,如图5所示,LSTM单元包含三个控制门:输入门(Input Gate),用于控制输入;输出门(Output Gate),用于控制输出;遗忘门(Forget Gate),用于控制跨越时间、步骤及自身内部状态三者之间的关联。其中,各个门包含的隐层节点均为256。
本发明实施例所提供的一种游戏智能体训练的优化方法,基于预先训练的自编码网络对观测序列进行处理获取投影向量;投影向量在智能体模型的动作网络中获取动作序列并在游戏环境中执行,以获取下一观测序列和环境回报;基于预先训练的预测网络对投影向量进行处理获取预测投影向量;通过预测投影向量和下一投影向量计算自我驱动回报;将环境回报和自我驱动回报加入累积回报,并通过智能体模型的评论家网络判断累积回报是否达到目标值,达到目标值则停止训练,否则,继续循环上述训练过程。相比现有的游戏智能体训练方法,当环境回报非常稀疏时,根据本发明实施例可以获得自我驱动回报作为额外的回报进行训练,使游戏智能体能够更积极地探索新情况,避免陷入重复无效的探索,从而提高了游戏智能体的训练效率,节省了运行资源。
本实施例还提供了一种游戏智能体训练的优化装置,所述游戏智能体模型包括动作网络和评论家网络;所述动作网络和所述评论家网络均包括全连接层;所述装置用于执行上述游戏智能体训练的优化方法,如图6所述,所述装置包括:
第一观测序列获取模块11,用于根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;其中,所述第一观测序列由所述游戏脚本在预设的游戏环境中执行生成;
环境回报获取模块12,用于基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;其中,所述下一观测序列和所述当前环境回报由所述动作网络根据当前观测序列获得的动作序列在所述游戏环境中执行生成;
自我驱动回报获取模块13,用于基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报;
判断模块14,用于根据所述评论家网络判断累积回报是否小于预设的目标值;其中,所述累积回报根据所述当前环境回报、所述当前自我驱动回报、历史获取的环境回报和历史获取的自我驱动回报获得;以及,
判断结果处理模块15,用于当所述累积回报小于所述目标值时,将所述下一观测序列设为当前观测序列,并调用所述环境回报获取模块12进行处理;当所述累积回报不小于所述目标值时,训练过程结束。
优选地,所述环境回报获取模块具体包括:
投影向量获取单元,用于基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
动作序列获取单元,用于基于所述动作网络,根据所述当前观测序列的投影向量获取动作序列;
环境回报获取单元,用于根据所述动作序列在所述游戏环境中执行的结果获取所述下一观测序列和所述当前环境回报。
优选地,所述自我驱动回报获取模块具体包括:
投影向量获取单元,用于基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
预测投影向量获取单元,用于基于所述预先训练的预测网络,根据所述当前观测序列的投影向量获取预测投影向量;
自我驱动回报获取单元,用于根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报。
优选地,所述自我驱动回报获取单元具体用于:
根据所述预测投影向量和所述下一观测序列获得均方误差或余弦距离;
将所述均方误差或所述余弦距离作为所述当前自我驱动回报。
优选地,所述装置还包括累积回报计算模块;所述累积回报计算模块具体用于通过以下公式获得所述累积回报:
R=R1+r*R2+r2*R3+…+rn-1Rn;
其中,R表示累积回报,r表示衰减系数,Ri表示第i次获取的环境回报与第i次获取的自我驱动回报之和,i=1,2,···,n。
优选地,所述自编码网络包括编码器和解码器;所述装置还包括自编码网络训练模块;所述自编码网络训练模块具体用于:
根据所述编码器对训练观测序列进行压缩编码获得训练投影向量;
根据所述解码器对所述训练投影向量进行解码获得训练输出序列;
根据所述训练输出序列与所述训练观测序列获得交叉熵,并将所述交叉熵作为代价函数;
根据所述代价函数和反向传播算法对所述自编码网络进行优化。
优选地,所述预测网络为循环神经网络;所述装置还包括预测网络训练模块;所述预测网络训练模块具体用于:
根据所述预测网络对当前训练投影向量进行预测得到当前预测训练投影向量;
根据所述当前预测训练投影向量与下一训练投影向量获得均方误差,并将所述均方误差作为代价函数;
根据所述代价函数和反向传播算法对所述预测网络进行优化;
其中,所述当前训练投影向量和所述下一训练投影向量为通过预设的训练游戏脚本获取的训练观测序列对应的训练投影向量。
需要说明的是,本发明实施例提供的一种游戏智能体训练的优化装置用于执行上述一种游戏智能体训练的优化方法的所有方法流程,两者的工作原理和有益效果一一对应,因而不再赘述。
相应地,本发明还提供了一种终端设备,如图7所述,包括处理器10、存储器20以及存储在所述存储器20中且被配置为由所述处理器10执行的计算机程序,所述处理器10执行所述计算机程序时实现上述任一实施例所述的游戏智能体训练的优化方法,例如图1所述的步骤S11~S15。或者所述处理器10执行所述计算机程序时实现所述游戏智能体训练的优化装置实施例中各模块/单元的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。
相应地,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任一实施例所述的游戏智能体训练的优化方法,例如图1所示的步骤S11~S15。
基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
相比于现有技术,本发明实施例具有如下有益效果:本发明实施例提供了一种游戏智能体训练的优化方法、装置、终端设备与存储介质,方法包括基于预先训练的自编码网络对观测序列进行处理获取投影向量;投影向量在智能体模型的动作网络中获取动作序列并在游戏环境中执行,以获取下一观测序列和环境回报;基于预先训练的预测网络对投影向量进行处理获取预测投影向量;通过预测投影向量和下一投影向量计算自我驱动回报;将环境回报和自我驱动回报加入累积回报,并通过智能体模型的评论家网络判断累积回报是否达到目标值,达到目标值则停止训练,否则,继续循环训练。相比现有的游戏智能体训练方法,当环境回报非常稀疏时,根据本发明实施例可以获得自我驱动回报作为额外的回报,使游戏智能体能够更积极地探索新情况,避免陷入重复无效的探索,从而提高了游戏智能体的训练效率,节省了运行资源。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (10)

1.一种游戏智能体训练的优化方法,其特征在于,游戏智能体模型包括动作网络和评论家网络;所述方法包括:
S11、根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;其中,所述第一观测序列由所述游戏脚本在预设的游戏环境中执行生成;
S12、基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;其中,所述下一观测序列和所述当前环境回报由所述动作网络根据当前观测序列获得的动作序列在所述游戏环境中执行生成;
S13、基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报;
S14、根据所述评论家网络判断累积回报是否小于预设的目标值;其中,所述累积回报根据所述当前环境回报、所述当前自我驱动回报、历史获取的环境回报和历史获取的自我驱动回报获得;
S15、当所述累积回报小于所述目标值时,将所述下一观测序列设为当前观测序列,并返回步骤S12;当所述累积回报不小于所述目标值时,训练过程结束。
2.如权利要求1所述的游戏智能体训练的优化方法,其特征在于,所述基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报,具体包括:
基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
基于所述动作网络,根据所述当前观测序列的投影向量获取动作序列;
根据所述动作序列在所述游戏环境中执行的结果获取所述下一观测序列和所述当前环境回报。
3.如权利要求1所述的游戏智能体训练的优化方法,其特征在于,所述基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报,具体包括:
基于所述预先训练的自编码网络,根据当前观测序列获取当前观测序列的投影向量;
基于所述预先训练的预测网络,根据所述当前观测序列的投影向量获取预测投影向量;
根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报。
4.如权利要求3所述的游戏智能体训练的优化方法,其特征在于,所述根据所述预测投影向量和所述下一观测序列获取所述当前自我驱动回报,具体包括:
根据所述预测投影向量和所述下一观测序列获得均方误差或余弦距离;
将所述均方误差或所述余弦距离作为所述当前自我驱动回报。
5.如权利要求1~4任一项所述的游戏智能体训练的优化方法,其特征在于,所述方法通过以下公式获得所述累积回报:
R=R1+r*R2+r2*R3+…+rn-1Rn;
其中,R表示累积回报,r表示衰减系数,Ri表示第i次获取的环境回报与第i次获取的自我驱动回报之和,i=1,2,…,n。
6.如权利要求1~4任一项所述的游戏智能体训练的优化方法,其特征在于,所述自编码网络包括编码器和解码器;所述方法通过以下步骤对所述自编码网络进行预先训练:
根据所述编码器对训练观测序列进行压缩编码获得训练投影向量;
根据所述解码器对所述训练投影向量进行解码获得训练输出序列;
根据所述训练输出序列与所述训练观测序列获得交叉熵,并将所述交叉熵作为代价函数;
根据所述代价函数和反向传播算法对所述自编码网络进行优化。
7.如权利要求1~4任一项所述的游戏智能体训练的优化方法,其特征在于,所述预测网络为循环神经网络;所述方法通过以下步骤对所述预测网络进行预先训练:
根据所述预测网络对当前训练投影向量进行预测得到当前预测训练投影向量;
根据所述当前预测训练投影向量与下一训练投影向量获得均方误差,并将所述均方误差作为代价函数;
根据所述代价函数和反向传播算法对所述预测网络进行优化;
其中,所述当前训练投影向量和所述下一训练投影向量为通过预设的训练游戏脚本获取的训练观测序列对应的训练投影向量。
8.一种游戏智能体训练的优化装置,其特征在于,游戏智能体模型包括动作网络和评论家网络;所述装置包括:
第一观测序列获取模块,用于根据预设的游戏脚本获取第一观测序列,并将所述第一观测序列设为当前观测序列;其中,所述第一观测序列由所述游戏脚本在预设的游戏环境中执行生成;
环境回报获取模块,用于基于所述动作网络和预先训练的自编码网络,根据当前观测序列获得下一观测序列和当前环境回报;其中,所述下一观测序列和所述当前环境回报由所述动作网络根据当前观测序列获得的动作序列在所述游戏环境中执行生成;
自我驱动回报获取模块,用于基于所述预先训练的自编码网络和预先训练的预测网络,根据当前观测序列和所述下一观测序列获取当前自我驱动回报;
判断模块,用于根据所述评论家网络判断累积回报是否小于预设的目标值;其中,所述累积回报根据所述当前环境回报、所述当前自我驱动回报、历史获取的环境回报和历史获取的自我驱动回报获得;以及,
判断结果处理模块,用于当所述累积回报小于所述目标值时,将所述下一观测序列设为当前观测序列,并调用所述环境回报获取模块进行处理;当所述累积回报不小于所述目标值时,训练过程结束。
9.一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的游戏智能体训练的优化方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至7中任意一项所述的游戏智能体训练的优化方法。
CN201811492348.1A 2018-12-06 2018-12-06 游戏智能体训练的优化方法、装置、终端设备与存储介质 Active CN109663359B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811492348.1A CN109663359B (zh) 2018-12-06 2018-12-06 游戏智能体训练的优化方法、装置、终端设备与存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811492348.1A CN109663359B (zh) 2018-12-06 2018-12-06 游戏智能体训练的优化方法、装置、终端设备与存储介质

Publications (2)

Publication Number Publication Date
CN109663359A true CN109663359A (zh) 2019-04-23
CN109663359B CN109663359B (zh) 2022-03-25

Family

ID=66144707

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811492348.1A Active CN109663359B (zh) 2018-12-06 2018-12-06 游戏智能体训练的优化方法、装置、终端设备与存储介质

Country Status (1)

Country Link
CN (1) CN109663359B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110721470A (zh) * 2019-10-25 2020-01-24 网易(杭州)网络有限公司 虚拟对象移动行为的控制方法、装置及电子设备
CN111514585A (zh) * 2020-03-17 2020-08-11 清华大学 智能体的控制方法及系统、计算机装置以及存储介质
CN111950690A (zh) * 2019-05-15 2020-11-17 天津科技大学 一种具有自适应能力的高效强化学习策略模型
CN115496191A (zh) * 2022-11-08 2022-12-20 腾讯科技(深圳)有限公司 一种模型训练方法及相关装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2008252036A1 (en) * 2007-12-20 2009-07-09 Aristocrat Technologies Australia Pty Limited A method of gaming, a game controller and a gaming system
CN102402712A (zh) * 2011-08-31 2012-04-04 山东大学 基于神经网络的机器人强化学习初始化方法
CN102819264A (zh) * 2012-07-30 2012-12-12 山东大学 移动机器人路径规划q学习初始化方法
US20130244794A1 (en) * 2011-06-14 2013-09-19 Konami Digital Entertainment Co., Ltd. Game device, method for controlling game device, and information storage medium
CN103324085A (zh) * 2013-06-09 2013-09-25 中国科学院自动化研究所 基于监督式强化学习的最优控制方法
CN107808004A (zh) * 2017-11-15 2018-03-16 北京百度网讯科技有限公司 模型训练方法和系统、服务器、存储介质
CN108182476A (zh) * 2017-12-22 2018-06-19 天津科技大学 一种强化学习中受意愿控制的策略学习方法
CN108211362A (zh) * 2017-12-26 2018-06-29 浙江大学 一种基于深度q学习网络的非玩家角色战斗策略学习方法
CN108701251A (zh) * 2016-02-09 2018-10-23 谷歌有限责任公司 使用优势估计强化学习

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2008252036A1 (en) * 2007-12-20 2009-07-09 Aristocrat Technologies Australia Pty Limited A method of gaming, a game controller and a gaming system
US20130244794A1 (en) * 2011-06-14 2013-09-19 Konami Digital Entertainment Co., Ltd. Game device, method for controlling game device, and information storage medium
CN102402712A (zh) * 2011-08-31 2012-04-04 山东大学 基于神经网络的机器人强化学习初始化方法
CN102819264A (zh) * 2012-07-30 2012-12-12 山东大学 移动机器人路径规划q学习初始化方法
CN103324085A (zh) * 2013-06-09 2013-09-25 中国科学院自动化研究所 基于监督式强化学习的最优控制方法
CN108701251A (zh) * 2016-02-09 2018-10-23 谷歌有限责任公司 使用优势估计强化学习
CN107808004A (zh) * 2017-11-15 2018-03-16 北京百度网讯科技有限公司 模型训练方法和系统、服务器、存储介质
CN108182476A (zh) * 2017-12-22 2018-06-19 天津科技大学 一种强化学习中受意愿控制的策略学习方法
CN108211362A (zh) * 2017-12-26 2018-06-29 浙江大学 一种基于深度q学习网络的非玩家角色战斗策略学习方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111950690A (zh) * 2019-05-15 2020-11-17 天津科技大学 一种具有自适应能力的高效强化学习策略模型
CN110721470A (zh) * 2019-10-25 2020-01-24 网易(杭州)网络有限公司 虚拟对象移动行为的控制方法、装置及电子设备
CN110721470B (zh) * 2019-10-25 2022-11-11 网易(杭州)网络有限公司 虚拟对象移动行为的控制方法、装置及电子设备
CN111514585A (zh) * 2020-03-17 2020-08-11 清华大学 智能体的控制方法及系统、计算机装置以及存储介质
CN115496191A (zh) * 2022-11-08 2022-12-20 腾讯科技(深圳)有限公司 一种模型训练方法及相关装置

Also Published As

Publication number Publication date
CN109663359B (zh) 2022-03-25

Similar Documents

Publication Publication Date Title
CN109663359A (zh) 游戏智能体训练的优化方法、装置、终端设备与存储介质
Hernandez-Leal et al. Is multiagent deep reinforcement learning the answer or the question? A brief survey
CN106390456B (zh) 游戏中角色行为的生成方法和装置
US8793205B1 (en) Robotic learning and evolution apparatus
US8990688B2 (en) Proactive user interface including evolving agent
CN108076224A (zh) 应用程序控制方法、装置及存储介质和移动终端
CN111176758B (zh) 配置参数的推荐方法、装置、终端及存储介质
CN110222164A (zh) 一种问答模型训练方法、问题语句处理方法、装置及存储介质
CN109847366B (zh) 用于游戏的数据处理方法和装置
CN109657890A (zh) 一种转账欺诈的风险确定方法及装置
CN112016704B (zh) Ai模型训练方法、模型使用方法、计算机设备及存储介质
CN104102522A (zh) 交互式游戏中智能非玩家角色的人工情感驱动方法
CN113077052A (zh) 用于稀疏奖励环境的强化学习方法、装置、设备及介质
CN114392560B (zh) 虚拟场景的运行数据处理方法、装置、设备及存储介质
CN110969441A (zh) 基于深度学习的反欺诈模型处理方法及装置
Ritter et al. Episodic control as meta-reinforcement learning
CN111967645A (zh) 一种社交网络信息传播范围预测方法及系统
CN114404977A (zh) 行为模型的训练方法、结构扩容模型的训练方法
CN109529351A (zh) 游戏中虚拟对象的行为能力控制方法、装置及存储介质
CN111652673B (zh) 智能推荐方法、装置、服务器和存储介质
CN115496191B (zh) 一种模型训练方法及相关装置
CN113255231B (zh) 一种数据处理方法、装置、设备及存储介质
CN114404976B (zh) 决策模型的训练方法、装置、计算机设备及存储介质
CN116999812A (zh) 数据处理方法、设备、存储介质及计算机程序产品
CN113570044A (zh) 客户流失分析模型训练方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant