CN109529352B - 虚拟环境中调度策略的评估方法、装置及设备 - Google Patents
虚拟环境中调度策略的评估方法、装置及设备 Download PDFInfo
- Publication number
- CN109529352B CN109529352B CN201811429123.1A CN201811429123A CN109529352B CN 109529352 B CN109529352 B CN 109529352B CN 201811429123 A CN201811429123 A CN 201811429123A CN 109529352 B CN109529352 B CN 109529352B
- Authority
- CN
- China
- Prior art keywords
- virtual object
- frame data
- target
- sample
- state
- 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.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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/67—Generating 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
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6027—Methods 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)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种虚拟环境中调度策略的评估方法、装置及设备,属于计算机技术领域。所述方法包括:获取虚拟环境的应用程序在运行时产生的帧数据,提取帧数据中与目标虚拟对象对应的目标帧数据;对目标帧数据进行特征提取,得到目标虚拟对象在当前局面状态下的状态特征;调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象在当前局面状态中执行N种调度策略的预期回报收益。本申请通过获取目标虚拟对象对应的目标帧数据,提取得到目标帧数据的状态特征,调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象执行每个调度策略的预期回报收益,实现了虚拟环境中价值网络模型的构建,进而提高了AI控制虚拟对象执行调度策略的准确度。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种虚拟环境中调度策略的评估方法、装置及设备。
背景技术
人工智能(Artificial Intelligence,AI)是一种以人类思考方式做出反应,执行相应行为的计算机程序系统,其广泛应用于图像识别、语音识别、自然语言处理以及专家系统等领域。其中,专家系统是一种模拟人类专家解决领域问题的AI,例如,模拟围棋棋手下围棋的AI阿尔法围棋(Alphago)。
价值网络模型是Alphago中的一个核心运算模块,通过价值网络模型能够准确地对围棋的局面状态进行评估,从而准确地确定最优落子行为。由于围棋可以采用19×19的二维空间来进行表示,因此围棋的局面状态是一种离散有限状态,同时一局围棋平均约150个回合,不同局面状态之间的转化可以根据落子行为唯一确定,因此基于离散的状态空间和行为空间能够构建价值网络模型,利用价值网络模型来对落子策略进行评估。
在诸如智能手机、平板电脑之类的终端上,存在很多具有二维或三维虚拟环境的应用程序,如:多人在线战术竞技游戏(Multiplayer Online Battle Arena Games,MOBA)、模拟策略游戏(Simulation Game,SLG)等。在上述应用程序中,用户或服务器可通过控制虚拟对象(例如:虚拟人物)执行调度策略以期获得收益,当虚拟对象受服务器控制时,需要使用AI对虚拟对象的各种调度策略进行评估从而执行最优的调度策略。
虚拟环境中的局面状态空间远大于围棋,且虚拟对象的可执行行为具有连续性和多样性,比如MOBA游戏中地图大小约50000×50000像素,包括60多种不同类型的可操作单位,每个可操作单位具有连续性和多样性,因此难以构建价值网络模型来对虚拟环境中的虚拟对象进行策略预估。
发明内容
本申请实施例提供了一种虚拟环境中调度策略的评估方法、装置及设备用以解决相关技术中无法对虚拟环境中的AI构建价值网络模型从而导致难以对调度策略进行评估的问题。所述技术方案如下:
一方面,本申请实施例提供了一种虚拟环境中调度策略的评估方法,所述虚拟环境中包括至少两个虚拟对象以及供所述虚拟对象使用的虚拟资源,所述方法包括:
获取所述虚拟环境的应用程序在运行时产生的帧数据;
提取所述帧数据中与目标虚拟对象对应的目标帧数据,所述目标帧数据是用于生成所述目标虚拟对象对应的目标用户界面的数据;
对所述目标帧数据进行特征提取,得到所述目标虚拟对象在当前局面状态下的状态特征,所述状态特征包括关联虚拟对象的状态和所述虚拟资源的状态,所述关联虚拟对象包括所述目标虚拟对象以及与所述目标虚拟对象具有利益关系的虚拟对象;
调用价值网络预测模型对所述状态特征进行处理,得到所述目标虚拟对象在所述当前局面状态中执行N种调度策略的预期回报收益,所述预期回报收益用于表征所述调度策略对在所述虚拟环境中对战的胜利条件的贡献,N为正整数,N≥2。
一方面,本申请实施例提供了一种虚拟环境中调度策略的评估装置,所述虚拟环境中包括至少两个虚拟对象以及供所述虚拟对象使用的虚拟资源,所述装置包括:
数据获取模块,用于获取所述虚拟环境的应用程序在运行时产生的帧数据;
特征提取模块,用于提取所述帧数据中与目标虚拟对象对应的目标帧数据,所述目标帧数据是用于生成所述目标虚拟对象对应的目标用户界面的数据;对所述目标帧数据进行特征提取,得到所述目标虚拟对象在当前局面状态下的状态特征,所述状态特征包括关联虚拟对象的状态和所述虚拟资源的状态,所述关联虚拟对象包括所述目标虚拟对象以及与所述目标虚拟对象具有利益关系的虚拟对象;
预测模块,用于调用价值网络预测模型对所述状态特征进行处理,得到所述目标虚拟对象在所述当前局面状态中执行N种调度策略的预期回报收益,所述预期回报收益用于表征所述调度策略对在所述虚拟环境中对战的胜利条件的贡献,N为正整数,N≥2。
一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的虚拟环境中调度策略的评估方法。
一方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上所述的虚拟环境中调度策略的评估方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过获取得到虚拟环境当前局面下的状态特征,由于该状态特征被抽样为关联虚拟对象的状态和虚拟资源的状态,从而实现了将虚拟环境中的当前局面的抽样化,由于关联虚拟对象和虚拟资源是有限个数,从而实现了将虚拟环境中的当前局面的离散化,同时,通过设置每种状态特征的预期回报收益的预测方式,实现了虚拟环境中价值网络模型的构建,进而提高了AI控制虚拟对象执行调度策略的准确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的计算机系统的结构框图;
图2是本申请一个示例性实施例提供的虚拟环境中调度策略的评估方法的流程图;
图3是本申请一个示例性实施例提供的虚拟环境的用户界面示意图;
图4是本申请一个示例性实施例提供的价值网络预测模型的训练方法的流程图;
图5是本申请一个示例性实施例提供的虚拟环境中调度策略的评估方法的流程图;
图6是本申请一个示例性实施例提供的数据获取模块、训练模块和预测模块的整体架构图;
图7是本申请一个示例性实施例提供的训练模块的工作流程图;
图8是本申请一个示例性实施例提供的预测模块的工作流程图;
图9是本申请一个示例性实施例提供的虚拟环境中调度策略的评估装置的框图;
图10是本申请一个示例性实施例提供的计算机设备的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例中涉及的名词进行介绍:
虚拟环境:是应用程序在终端上运行时显示(或提供)的虚拟环境。该虚拟环境可以是对真实世界的仿真环境,也可以是半仿真半虚构的三维环境,还可以是纯虚构的三维环境。虚拟环境可以是二维虚拟环境、2.5维虚拟环境和三维虚拟环境中的任意一种。可选地,该虚拟环境还用于至少两个虚拟角色之间的虚拟环境对战,在该虚拟环境中具有可供至少两个虚拟角色使用的虚拟资源。可选的,该虚拟环境的地图为正方形或矩形,该正方形或矩形包括对称的左下对角区域以及右上对角区域;在虚拟环境中对战的胜利条件包括占据或摧毁敌对阵营的目标据点,该目标据点可以是敌对阵营的所有据点,也可以是敌对阵营的部分据点(例如主基地和防守塔)。
虚拟对象:是指在虚拟环境中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物中的至少一种。可选地,当虚拟环境为三维虚拟环境时,虚拟对象是三维立体模型,每个虚拟对象在三维虚拟环境中具有自身的形状和体积,占据三维虚拟环境中的一部分空间。可选的,虚拟对象可选的,虚拟对象可以是MOBA游戏中的英雄人物、士兵或中立生物,本申请实施例中以目标虚拟对象为英雄人物来举例说明。
MOBA游戏:是一种在虚拟环境中提供若干个据点,用户控制属于不同阵营的虚拟对象在虚拟环境中对战,占领据点或摧毁敌对阵营据点的游戏。例如,MOBA游戏可将虚拟对象分成两个敌对阵营,分散在虚拟环境中互相竞争,以摧毁或占领敌方的全部据点作为胜利条件。MOBA游戏以局为单位,一局MOBA游戏的持续时间从游戏开始的时刻至达成胜利条件的时刻。
调度策略:确定虚拟对象移动至目标区域,并在目标区域执行相应任务的行为。例如,将在A区域防守的虚拟对象进行大范围的转移调动至B区域与敌方阵营的虚拟对象进行局部作战,以期获得更好的收益。通常,调度策略对用户的大局观要求较高。
帧数据:是虚拟环境的应用程序在运行时产生的数据,由于虚拟环境的用户界面是以帧为单位进行显示,因此应用程序在运行时产生的数据也是以帧为单位,故被称为帧数据。其中,帧数据中包含虚拟环境中每个虚拟对象对应的帧数据,虚拟对象对应的帧数据是用于生成虚拟对象对应的用户界面的数据。以应用程序为MOBA游戏为例,操控虚拟对象A的A终端在运行MOBA游戏时,每隔一定时间间隔显示一帧虚拟对象A对应的游戏画面(即用户界面),每帧游戏画面对应的数据即为虚拟对象A对应的帧数据。
收益(Reward):是虚拟对象的调度策略和/或行为对胜利条件的整体贡献。虚拟对象的行为对胜利条件的贡献为即时收益,虚拟对象的调度策略对胜利条件的贡献为回报收益。例如,虚拟对象在A区域防守,虚拟对象的行为为对虚拟动物进行攻击,攻击虚拟动物所造成的经验值增加对胜利条件的贡献为虚拟对象A的即时收益;用户控制虚拟对象由A区域进行大范围的转移调动至B区域与敌方阵营的虚拟对象进行局部作战,虚拟对象击杀地方阵营虚拟对象对胜利条件的贡献即为回报收益。
价值网络模型(Value network):是一种根据虚拟环境的应用程序的每一个局面状态下的状态特征和对战结果,计算得到每个状态特征对胜利条件的贡献从而得到该状态特征的回报收益,得到大量的状态特征-回报收益样本对数据集,利用状态特征-回报收益样本数据集,通过有监督的深度学习模型,得到一个对状态特征进行预测回报收益的机器学习模型。
机器学习模型:是一种运算模型,由大量的节点(或称神经元)之间相互联接构成,每个节点对应一个策略函数,每两个节点间的连接代表一个对于通过该连接信号的加权值,称之为权重。样本输入机器学习模型的节点后,通过每个节点输出一个输出结果,该输出结果作为下一个节点的输入样本,机器学习模型通过样本最终输出结果对每个节点的策略函数和权重进行调整,该过程被称为训练。
图1,示出了本申请一个示例性实施例提供的计算机系统的结构框图。该计算机系统100包括:第一终端110、第二终端130以及服务器120。
第一终端110安装和运行有支持虚拟环境的应用程序,当第一终端运行应用程序时,第一终端的屏幕上显示应用程序的用户界面111。该应用程序可以是MOBA游戏、SLG游戏中的任意一种。第一终端110是第一用户101使用的终端,第一用户101使用第一终端110控制位于虚拟环境中的第一虚拟对象进行活动,该活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟对象是第一虚拟人物,比如仿真人物角色或动漫人物角色。
第二终端130安装和运行有支持虚拟环境的应用程序。该应用程序可以是MOBA游戏、SLG游戏中的任意一种,当第二终端运行应用程序时,第一终端的屏幕上显示应用程序的用户界面131。第二终端130是第二用户102使用的终端,第二用户102使用第二终端130控制位于虚拟环境中的第二虚拟对象进行活动。示意性的,第二虚拟对象是第二虚拟人物,比如仿真人物角色或动漫人物角色。
可选地,第一虚拟人物和第二虚拟人物处于同一虚拟环境中。可选地,第一虚拟人物和第二虚拟人物可以属于同一个阵营、同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选的,第一虚拟人物和第二虚拟人物可以属于不同的阵营、不同的队伍、不同的组织或具有敌对关系。
可选地,第一终端110和第二终端130上安装的应用程序是相同的,或两个终端上安装的应用程序是不同控制系统平台的同一类型应用程序。第一终端110可以泛指多个终端中的一个,第二终端130可以泛指多个终端中的一个,本实施例仅以第一终端110和第二终端130来举例说明。第一终端110和第二终端130的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器、膝上型便携计算机和台式计算机中的至少一种。
其它终端140可以是开发者对应的终端,在终端140上安装有虚拟环境的应用程序的开发和编辑平台,开发者可在终端140上对应用程序进行编辑,并将编辑后的应用程序文件通过有线或无线网络传输至服务器120,第一终端110和第二终端130可从服务器120下载应用程序对应的更新包实现对应用程序的更新。
第一终端110、第二终端130以及其它终端140通过无线网络或有线网络与服务器120相连。
服务器120包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器120用于为支持三维虚拟环境的应用程序提供后台服务。可选地,服务器120承担主要计算工作,终端承担次要计算工作;或者,服务器120承担次要计算工作,终端承担主要计算工作;或者,服务器120和终端之间采用分布式计算架构进行协同计算。
服务器120包括至少一个服务器模组121,服务器模组121包括处理器122、用户数据库123、应用程序数据库124、面向用户的输入/输出接口(Input/Output Interface,I/O接口)125以及面向开发者的输出/输出接口126。其中,处理器122用于加载服务器模组121中存储的指令,处理用户数据库123和应用程序数据库124中的数据;用户数据库123用于存储第一终端110和/或第二终端130通过无线网络或有线网络上传的用户数据;应用程序数据库124用于存储虚拟环境的应用程序中的数据;面向用户的I/O接口125用于通过无线网络或有线网络和第一终端110和/或第二终端130建立通信交换数据;面向开发者的I/O接口126用于通过无线网络或有线网络和其它终端140建立通信交换数据。
在AI辅助用户控制目标虚拟对象进行调度的场景中,第一用户101使用第一终端110控制位于虚拟环境中的第一虚拟对象进行活动。当用户不便控制第一虚拟对象时,可在应用程序中开启AI辅助控制功能,服务器120在接收到AI辅助功能开启的信号后,对第一虚拟对象进行调度。
在AI控制目标虚拟对象与用户进行对战的场景中,服务器120控制位于虚拟环境中的第一虚拟对象进行活动,第二用户102使用第二终端130控制位于同一虚拟环境中的第二虚拟对象进行活动。
在AI控制至少一个虚拟对象在虚拟环境中对战的场景中,服务器120控制位于虚拟环境中的多个虚拟对象进行对战。在该应用场景中,第一终端110和第二终端130为可选的设备。
上述应用场景中,服务器120通过以下方式对调度策略进行评估:获取虚拟环境的应用程序在运行时产生的帧数据;提取帧数据中与目标虚拟对象对应的目标帧数据;对目标帧数据进行特征提取,得到目标虚拟对象在当前局面状态下的状态特征;调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象在当前局面状态中执行N种调度策略的预期回报收益,N为正整数,N≥2。其中,目标虚拟对象可以是第一虚拟对象,也可以是第二虚拟对象,或,其它终端控制的其它虚拟对象。
本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本申请实施例对终端的数量和设备类型不加以限定。
图2,示出了本申请一个示例性实施例提供的虚拟环境中的虚拟对象的调度方法的流程图。该方法可应用于如图1所示的计算机系统100中,该方法包括:
步骤201,获取虚拟环境的应用程序在运行时产生的帧数据。
帧数据是虚拟环境的应用程序在运行时产生的数据,服务器获取得到至少一个终端在运行应用程序时产生的数据,得到帧数据。其中,帧数据包括虚拟环境中每个虚拟对象的数据以及每个虚拟资源的数据,由于虚拟环境的用户界面是以帧为单位进行显示,因此应用程序在运行时产生的数据也是以帧为单位,故被称为帧数据。服务器每隔预定时间获取帧数据,或,每当新的帧数据生成时,服务器获取得到新生成的帧数据。
示例性的,虚拟对象的数据包括虚拟对象的位置(坐标)、状态(经验值、经济值、体力值、击杀数量、死亡数量、资源值以及能力值等)、行为(移动类型的行为、拾取类型的行为以及攻击类型的行为等)等;虚拟资源包括建筑、中立生物、军队、交通工具、武器以及弹药等,虚拟资源的数据包括虚拟资源的位置(坐标)、状态(耐久值、体力值、能力值、归属等)以及行为(移动类型的行为、攻击类型的行为等)等。
步骤202,提取帧数据中与目标虚拟对象对应的目标帧数据。
帧数据中包括每个虚拟对象对应的帧数据,每个虚拟对象对应的帧数据是帧数据中用于生成每个虚拟对象对应的用户界面的数据。
示例性的,虚拟环境中包括多个虚拟对象,该多个虚拟对象是服务器或终端控制的英雄人物,包括英雄人物A、英雄人物B以及其它英雄人物,英雄人物A和英雄人物B属于第一阵营,其它英雄人物属于第二阵营,第一阵营和第二阵营是相互敌对关系。英雄人物A对应的用户界面A中显示有以英雄人物A对应的某一视角(例如英雄人物A的主视角,位于英雄人物A斜上方的第三方视角)观察虚拟环境的画面,在用户界面A中还可以包括全局缩略地图,全局缩略地图中显示有虚拟环境中的虚拟资源为位置、英雄人物A和英雄人物B的位置,以及位于英雄人物A和英雄人物B视野中的敌对阵营的英雄人物的位置,生成用户界面A的数据即为英雄人物A对应的帧数据。
示例性的,如图3所示,终端300中运行有虚拟环境的应用程序,终端300的显示屏310上显示有用户界面320,用户界面320中显示有以目标英雄人物321斜上方的第三方视角观察虚拟环境的环境画面,该环境画面中包括目标英雄人物321、与目标英雄人物321对战的中立生物324以及目标英雄人物321视野范围中的虚拟环境,该用户界面320中还显示有虚拟环境的全局缩略地图322以及状态参数栏323。其中,全局缩略地图322中显示有关联英雄人物的位置和虚拟资源的位置,状态参数栏323中显示有虚拟环境中关联英雄人物的状态(经验值、经济值、体力值、击杀数量、死亡数量以及资源值中的至少一种)。
关联虚拟对象是目标虚拟对象以及与目标虚拟对象具有利益关系的虚拟对象。例如,与目标虚拟对象属于同一阵营的虚拟对象,以及出现在目标虚拟对象或目标虚拟对象同一阵营的虚拟对象的视野范围中的敌方虚拟对象。
步骤203,对目标帧数据进行特征提取,得到目标虚拟对象在当前局面状态下的状态特征。
服务器读取目标帧数据中当前局面下的关联虚拟对象的数据和虚拟资源的数据,得到当前局面下的状态特征,该状态特征包括关联虚拟对象的状态和虚拟资源的状态。
可选的,状态特征包括全局地图分布特征、虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种。其中,全局特征用于表征关联虚拟对象的所在位置,或关联虚拟对象和虚拟资源的所在位置;虚拟对象的行为特征用于表征虚拟对象的行为;关联虚拟对象的参数特征用于表征关联虚拟对象的状态。
由于状态特征被抽样为关联虚拟对象的状态和虚拟资源的状态,从而实现了将虚拟环境中的当前局面的抽样化,由于关联虚拟对象和虚拟资源是有限个数,从而实现了对虚拟环境中的当前局面的离散化。
示例性的,MOBA游戏中包括两个阵营,每个阵营包括5个虚拟对象,MOBA游戏地图中包括144个可争夺、占据或摧毁的虚拟资源位置,因此提取得到的状态特征中包括5-10个虚拟对象的状态,以及144个虚拟资源的状态,从而实现了将虚拟环境中当前局面的抽样化和离散化。
步骤204,调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象在当前局面状态中执行N种调度策略的预期回报收益,N为正整数,N≥2。
其中,预期回报收益用于表征每种调度策略对在虚拟环境中对战的胜利条件的贡献;调度策略包括移动至虚拟环境中的多个移动区域,在每个移动区域执行多种调度行为,该调度行为包括拾取类型的行为和攻击类型的行为(射击、物理攻击、法术攻击、投掷弹药等)。
示例性的,以调度策略为移动至n个移动区域为例,目标虚拟对象可移动的区域为移动区域1、移动区域2以及移动区域3,通过读取状态特征得到移动区域1的具有中立建筑物,移动区域2的为同阵营的虚拟对象与敌方阵营的虚拟对象对战,移动区域3具有中立状态的中立生物,价值网络预测模型预测目标虚拟对象移动至移动区域1占据中立建筑物的预期回报收益为1,预测目标虚拟对象移动至移动区域2对战局具有有益的效果,其预期回报收益为3,预测目标虚拟对象移动至移动区域3会杀死中立生物获得经验值,其预期回报收益为2。
综上所述,本申请实施例中,通过获取得到虚拟环境当前局面下的状态特征,由于该状态特征被抽样为关联虚拟对象的状态和虚拟资源的状态,从而实现了将虚拟环境中的当前局面的抽样化,由于关联虚拟对象和虚拟资源是有限个数,从而实现了将虚拟环境中的当前局面的离散化,同时,通过设置每种状态特征的预期回报收益的预测方式,实现了虚拟环境中价值网络模型的构建,进而提高了AI控制虚拟对象执行调度策略的准确度。
同时,本申请实施例中,AI对虚拟对象调度策略的评估是价值网络模型基于当前局面的状态特征以及虚拟对象可执行的N种调度策略处理得到的,因此不依赖于虚拟环境的应用程序的逻辑,提高了AI控制虚拟对象进行调度的适应性。
服务器在调用价值网络预测模型对目标帧数据进行处理之前,需要对价值网络预测模型进行训练,价值网络预测模型的训练数据基于用户运行虚拟环境的应用程序的历史数据。以下实施例将对价值网络预测模型的训练过程进行说明。
图4,示出了本申请一个示例性实施例提供的价值网络预测模型的训练方法的流程图。该方法可应用于如图1所示的计算机系统100中,该方法可以是图2实施例中步骤204之前的方法,该方法包括:
步骤401,获取得到p个样本帧数据,p为正整数,p≥2。
可选的,服务器获取得到p个样本帧数据的方法包括但不限于以下步骤:
步骤401a,获取l个历史帧数据,l为正整数,l≥p。
服务器获取得到虚拟环境的应用程序在运行过程中产生的历史帧数据,得到l个历史目标帧数据。
示例性的,运行一局达到胜利条件的MOBA游戏会产生20000帧左右的历史帧数据,服务器以局为单位,获取得到运行至少一局MOBA游戏产生的历史帧数据,从而得到历史帧数据。
步骤401b,按照预设时间步长抽取l个历史帧数据得到q个候选帧数据,q为正整数,p≤q≤l。
服务器按照预设时间步长为单位,对m个历史帧数据进行抽取,从而得到q个候选帧数据。示例性的,历史帧数据之间的时间间隔为0.05秒,服务器按照预设时间步长1秒为单位,对历史帧数据进行抽取从而得到候选帧数据,从而将需要处理的帧数据的数量降低了95%。
步骤401c,对q个候选帧数据进行读取,将候选帧数据中包含攻击类型的行为的确定为样本帧数据,得到p个样本帧数据,n≤q。
服务器对候选帧数据进行读取,将候选帧数据中包括攻击类型的行为的确定为样本帧数据,从而得到p个样本帧数据。由于攻击类型的行为是影响状态特征的重要因素,因此基于包含攻击类型的行为的样本帧数据对价值网络模型进行训练,提高了价值网络模型的训练效率,进而提高了服务器的处理效率。
步骤402,提取样本帧数据中与目标虚拟对象对应的目标帧数据,得到p个样本目标帧数据。
历史帧数据中包括每个虚拟对象对应的帧数据,每个虚拟对象对应的帧数据是帧数据中用于生成每个虚拟对象对应的用户界面的数据。服务器从历史帧数据中提取目标虚拟对象对应的帧数据,从而得到p个样本目标帧数据。
步骤403,对每个样本目标帧数据进行特征提取,得到p个样本目标帧数据的样本状态特征。
其中,状态特征包括全局地图分布特征、虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种。
可选的,全局特征用于表征关联虚拟对象的所在位置,或关联虚拟对象和虚拟资源的所在位置;虚拟对象的行为特征用于表征虚拟对象的行为;关联虚拟对象的参数特征用于表征关联虚拟对象的状态。
示例性的,如图3所示,终端300中运行有虚拟环境的应用程序,终端300的显示屏310上显示有用户界面320,用户界面320中显示有以目标英雄人物321斜上方的第三方视角观察虚拟环境的环境画面,该环境画面中包括目标英雄人物321、与目标英雄人物321对战的中立生物324以及目标英雄人物321视野范围中的虚拟环境,该用户界面320中还显示有虚拟环境的全局缩略地图322以及状态参数栏323。其中,全局缩略地图322中显示有关联英雄人物的位置和虚拟资源位置,状态参数栏323中显示有虚拟环境中关联英雄人物的状态(经验值、经济值、体力值、击杀数量、死亡数量以及资源值中的至少一种)。
其中,全局特征可以是读取全局缩略地图322对应的数据提取的特征,全局缩略地图322对应的数据包括虚拟环境的地图的坐标、虚拟资源的坐标以及与关联虚拟对象的坐标。示例性的,如图3所示,全局缩略地图322对应的数据331包括(xh1,yh1)、(xh2,yh2)、(xh3,yh3)、(xh4,yh4),……,(xt1,yt1)、(xt2,yt2)……,其中,xh*表示编号为*的虚拟对象的横坐标,yh*表示编号为*的虚拟对象的纵坐标,xt*表示编号为*的虚拟资源的横坐标,yt*表示编号为*的虚拟资源的纵坐标。
虚拟对象的行为特征可以是读取显示有虚拟对象321的显示区域对应的数据提取的特征,虚拟对象321的显示区域对应的数据包括目标虚拟对象321的行为,或目标虚拟对象321的行为和目标虚拟对象竞争或对战的其它虚拟对象的行为。示例性的,如图3所示,目标虚拟对象321的显示区域325对应的数据332包括Sh1(Action Attack)、SA1(ActionMagic)……。其中,Sh1表示目标虚拟对象321,SA1表示中立生物324,Action Attack表示物理攻击,Action Magic表示魔法攻击。
关联虚拟对象的参数特征可以是读取状态参数栏323对应的数据提取的特征,状态参数栏323对应的数据包括关联虚拟对象的状态(经验值、经济值、体力值、击杀数量、死亡数量以及资源值中的至少一种)。示例性的,如图3所示,状态参数栏323对应的数据333包括Sh1(hp.70,exp.75%,att.70,def.30,……),Sh2(hp.85,exp.10%),……。其中,hp.表示体力值,exp.表示经验值,att.表示攻击力,def.表示防御力。
步骤404,计算得到p个样本状态特征中每个样本状态特征的即时收益。
示例性的,服务器读取样本状态特征中虚拟对象的行为和状态,计算得到虚拟对象执行该行为导致状态的变化,从而计算得到基于状态变化对胜利条件的贡献,得到即时收益。例如,样本状态特征1中虚拟对象的经验值为2,虚拟对象的行为为正在攻击中立生物,虚拟对象击杀中立生物后可获取得到3的经验值,即,虚拟对象击杀中立生物后的经验值为5,服务器计算虚拟对象经验值由2增加至5对胜利条件的贡献得到样本状态特征1的即时收益。
步骤405,对于p个样本状态特征中的第i个样本状态特征,根据第i个样本状态特征的即时收益和第i+1个样本状态特征的即时收益,计算得到第i个样本状态特征的实际回报收益,i为正整数,i≤p。
每个状态特征的实际回报收益为累计结果,例如,p个样本状态特征中第x个样本状态特征至第y个样本状态特征为同一局对战中的最初的状态特征至最末的状态特征,第i个样本状态特征为第x个样本状态特征至第y个样本状态特征中的任一样本状态特征,第i个样本状态特征的实际回报收益为第i+1个样本状态特征的即时收益至第y个样本状态特征的即时收益的累加值。
示例性的,可通过以下公式计算得到第i个样本状态特征的实际回报收益:
其中,Gi表示第i个样本状态特征的实际回报收益,R*表示第*个样本状态特征的即时收益,λ*-i-1表示第*个样本状态特征的即时收益对第i个样本状态特征的影响因子,第*个样本状态特征距离第i个样本状态特征时间越长,影响因子越小。
第i个样本状态特征在执行调度策略θ的实际回报收益可通过以下公式计算:
Vθ(s)=E[Gi|Si=s]
=E[Ri+1+λRi+2+λ2Ri+3+...|Si=s]
=E[Ri+1+λv(Si+1)|Si=s]
其中,Vθ(s)表示样本状态特征s执行调度策略θ的实际回报收益,E[s]表示状态特征s下的预期回报收益,v表示通过迭代计算后得到的参数。
服务器可重复执行步骤401至步骤405,以一局为单位,不断获取得到样本帧数据,从而提取得到多组样本状态特征-收益(即时收益、实际回报收益)的样本数据组。
步骤406,调用原始价值网络预测模型对每个样本状态特征进行处理,得到每个样本状态特征的训练结果。
服务器将每个样本状态特征输入原始价值网络预测模型,得到每个样本状态特征的训练结果。其中,原始价值网络预测模型是未经训练过的机器学习模型,每个样本状态特征的训练结果是原始价值网络模型预测在样本状态特征下执行每个调度策略的预期回报收益。
步骤407,对于每组样本数据组,将训练结果与实际收益进行比较,得到计算损失,该计算损失用于指示训练结果与样本状态特征的实际收益之间的误差。
示例性的,以样本状态特征S1为例,执行θ1的调度策略的实际回报收益为2,执行θ2的调度策略的实际回报收益为-1,执行θ3的调度策略的实际回报收益为3,样本状态特征S1的训练结果为,执行θ1的调度策略的预期回报收益为1.5,执行θ2的调度策略的预期回报收益为-1,执行θ3的调度策略的预期回报收益为2,则计算损失为(0.5,0,1)。
步骤408,根据至少一组样本数据组各自对应的计算损失,采用误差反向传播算法训练得到价值网络预测模型。
服务器根据至少一组样本数据组各自对应的计算损失,采用误差反向传播算法训练得到价值网络预测模型。其中,该价值网络预测模型用于根据状态特征预测在该状态特征下执行每种调度策略的预期回报收益。
综上所述,本申请实施例中,通过读取样本帧数据中的数据,提取得到全局地图分布特征、虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种,确定样本帧数据的样本状态特征,由于服务器不需要将虚拟环境中的所有参数作为状态特征表征样本帧数据的状态,因此简化了对状态特征的确定,从而降低了服务器的计算量,提高了服务器的处理速度。
可选的,本申请实施例中,通过将候选帧数据中包含攻击类型的行为的确定为样本帧数据,由于攻击类型的行为是影响状态特征的重要因素,因此基于包含攻击类型的行为的样本帧数据对价值网络模型进行训练,提高了价值网络模型的训练效率,进而提高了服务器的处理效率。
可选的,本申请实施例中,通过计算得到每一帧样本帧数据的即时收益,根据每一帧样本帧数据的即时收益和该样本帧数据下一帧样本帧数据的即时收益,计算得到该样本帧数据的实际回报收益,由于不需要累积计算该样本帧数据之后每一帧样本帧数据对实际回报收益的影响,从而降低了服务器的计算量,因此提高了服务器的处理速度。
以调度策略为移动至多个移动区域为例,图5示出了本申请一个示例性实施例提供的价值网络预测模型的训练方法的流程图。该方法可应用于如图1所示的计算机系统100中,该方法包括:
步骤501,获取虚拟环境的应用程序在运行时产生的帧数据。
帧数据是虚拟环境的应用程序在运行时产生的数据,帧数据包括虚拟环境中每个虚拟对象的数据以及每个虚拟资源的数据。服务器获取得到帧数据的方法可参考图2实施例中的步骤201,在此不做赘述。
步骤502,提取帧数据中与目标虚拟对象对应的目标帧数据。
帧数据中包括每个虚拟对象对应的帧数据,每个虚拟对象对应的帧数据是帧数据中用于生成每个虚拟对象对应的用户界面的数据,服务器读取帧数据,提取得到帧数据中与目标虚拟对象对应的目标帧数据。
步骤503,对目标帧数据进行特征提取,得到目标虚拟对象在当前局面状态下的状态特征,状态特征包括全局地图分布特征、目标虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种。
示例性的,如图3所示,终端300中运行有虚拟环境的应用程序,终端300的显示屏310上显示有用户界面320,用户界面320中显示有以目标虚拟对象321斜上方的第三方视角观察虚拟环境的环境画面,该环境画面中包括目标虚拟对象321、与目标虚拟对象321对战的中立生物324以及目标虚拟对象321视野范围中的虚拟环境,该用户界面320中还显示有虚拟环境的全局缩略地图322以及状态参数栏323。其中,全局缩略地图322中显示有关联虚拟对象的位置和虚拟资源位置,状态参数栏323中显示有虚拟环境中关联虚拟对象状态(经验值、经济值、体力值、击杀数量、死亡数量以及资源值中的至少一种)。
其中,全局特征可以是读取全局缩略地图322对应的数据提取的特征,全局缩略地图322对应的数据包括虚拟环境的地图的坐标、虚拟资源的坐标以及与关联虚拟对象的坐标。示例性的,如图3所示,全局缩略地图322对应的数据331包括(xh1,yh1)、(xh2,yh2)、(xh3,yh3)、(xh4,yh4),……,(xt1,yt1)、(xt2,yt2)……,其中,xh*表示编号为*的虚拟对象的横坐标,yh*表示编号为*的虚拟对象的纵坐标,xt*表示编号为*的虚拟资源的横坐标,yt*表示编号为*的虚拟资源的纵坐标。
虚拟对象的行为特征可以是读取显示有虚拟对象321的显示区域对应的数据提取的特征,虚拟对象321的显示区域对应的数据包括目标虚拟对象321的行为,或目标虚拟对象321的行为和目标虚拟对象竞争或对战的其它虚拟对象的行为。示例性的,如图3所示,目标虚拟对象321的显示区域325对应的数据332包括Sh1(Action Attack)、SA1(ActionMagic)……。其中,Sh1表示目标虚拟对象321,SA1表示中立生物324,Action Attack表示物理攻击,Action Magic表示魔法攻击。
关联虚拟对象的参数特征可以是读取状态参数栏323对应的数据提取的特征,状态参数栏323对应的数据包括关联虚拟对象的状态(经验值、经济值、体力值、击杀数量、死亡数量以及资源值中的至少一种)。示例性的,如图3所示,状态参数栏323对应的数据333包括Sh1(hp.70,exp.75%,att.70,def.30,……),Sh2(hp.85,exp.10%),……。其中,hp.表示体力值,exp.表示经验值,att.表示攻击力,def.表示防御力。
步骤504,调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象在当前局面状态中移动至n个移动区域执行至少一种调度行为的预期回报收益,n为正整数,n≥2。
服务器将目标帧数据的状态特征输入价值网络预测模型,得到目标虚拟对象移动至n个移动区域执行至少一种调度行为(拾取类型的行为、攻击类型的行为等)的预期回报收益。其中,价值网络预测模型是图4实施例中训练好的机器学习模型,移动区域是将虚拟环境预先划分的区域。
示例性的,以运行虚拟环境的应用程序为MOBA游戏为例,若MOBA游戏的地图大小为50000×50000像素,若以每个像素点为移动区域,每个虚拟对象在当前局面状态下可执行的移动行为为(2.5×109-1)种,由于计算量巨大,服务器无法预测(2.5×109-1)种移动行为的预期回报收益。
本申请实施例中,对虚拟环境的地图进行区域划分,可将虚拟环境的地图平均划分为多个移动区域的阵列,或,根据虚拟环境的地图中虚拟资源的分布将地图划分为多个移动区域,移动区域的数量远小于地图的像素值。由于在虚拟环境中对战过程中对虚拟资源的争夺是影响胜利条件的重要因素,因此根据虚拟资源所在位置对地图进行划分能够更加准确地确定目标虚拟对象的移动区域,从而提高了调度策略评估的准确度。
例如,虚拟环境的地图中具有12×12个虚拟资源,其中,虚拟资源包括据点(不同阵营的建筑物)和/或中立生物,则可以按照每个虚拟资源所在位置为中心将地图划分为144个移动区域,服务器根据状态特征参数预测虚拟对象移动至144个移动区域中每个移动区域的预期回报收益。
综上所述,本申请实施例中,通过获取得到虚拟环境当前局面下的状态特征,由于该状态特征被抽样为关联虚拟对象的状态和虚拟资源的状态,从而实现了将虚拟环境中的当前局面的抽样化,由于关联虚拟对象和虚拟资源是有限个数,从而实现了将虚拟环境中的当前局面的离散化,同时,通过设置每种状态特征的预期回报收益的预测方式,实现了虚拟环境中价值网络模型的构建,进而提高了AI控制虚拟对象执行调度策略的准确度。
可选的,本申请实施例中,通过读取目标帧数据,提取得到全局地图分布特征、目标虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种,确定目标帧数据的状态特征,由于服务器不需要将虚拟环境中的所有参数作为状态特征,因此简化了虚拟环境中的状态特征识别,提高了服务器的处理速度。
可选的,本申请实施例中,通过将虚拟环境的地图划分为多个移动区域,移动区域的数量远小于虚拟环境的地图的像素值,因此价值网络预测模型不需要预测目标虚拟对象移动至虚拟环境的地图上每个坐标的预期回报收益,从而降低了服务器的计算量,提高了服务器的处理速度。
可选的,本申请实施例中,通过根据虚拟环境的地图中虚拟资源的分布将地图划分为多个移动区域,由于在虚拟环境中对战过程中对虚拟资源的争夺是影响胜利条件的重要因素,因此根据虚拟资源所在位置对地图进行划分能够更加准确地确定目标虚拟对象的移动区域,从而提高了调度策略评估的准确度。
在一个示例性的实施例中,如图6所示,本申请实施例中的服务器包括数据获取模块610、训练模块620和评估模块630。其中,训练模块620包括状态抽样模块621、特征提取模块622、收益提取模块623以及预测模块624;评估模块630包括特征提取模块622以及预测模块631。以下对每个模块进行说明:
一、训练模块:
状态抽样模块621:通常一局MOBA游戏的持续时长约数十分钟以上,转换为游戏的帧数据则有几万帧以上。但在实际游戏过程中,宏观局面变化相对较慢,帧数据与帧数据之间的局面状态具有较大的相关性。由于虚拟对象的攻击类型的行为是局面状态变化的主要因素,在状态抽样模块621中,以虚拟对象的攻击类型的行为为核心,辅以预设时间步长,对MOBA游戏的历史帧数据进行抽样,得到样本数据,从而得到以攻击类型的行为为基础的样本数据,在减少了样本数据的同时,保留了局面状态相关性较小的帧数据。
如图7所示,数据获取模块610获取得到一局MOBA游戏产生的历史帧数据701,将历史帧数据701发送至状态抽样模块621;状态抽样模块621以预设时间步长抽取历史目标帧数据701得到候选帧数据702,读取候选帧数据702中包含攻击类型的行为的帧数据,从而得到样本帧数据703。
特征提取模块622:提取样本整数据703中目标虚拟对象对应的目标帧数据,从而得到样本目标帧数据704,提取样本目标帧数据704中的全局地图分布特征7041、目标虚拟对象的行为特征7042以及关联虚拟对象的参数特征7043中的至少一种,得到样本状态特征705。
在MOBA游戏中,局面状态不是简单的盘面信息,其具有大地图、多目标单位、多状态参数的特性,从而使得局面状态呈现异常复杂。用户在游戏过程中的调度策略的主要出发点在于期望获取更多的资源,参考用户的该思考方式,本申请实施例中以资源为核心把游戏地图划分为多个移动区域,减少了局面状态空间大小;同时,使用了三个方面的特征对局面状态进行描述,得到局面状态的状态特征。该三个方面的特征分别为与全局缩略地图相关的全局地图分布特征(全局img-like特征),与当前局面相关的目标虚拟对象的行为特征(局部img-like特征),以及表征游戏中关联单位的状态信息的关联虚拟对象的参数特征(vector特征)。
收益提取模块623:价值网络模型预测的预期回报收益表示某个时刻t的局面状态在执行某调度策略将获取得到的回报收益,即对接下来所有时刻的即时收益的累加。实际中除非一局游戏结束,否则无法显式地获取所有的即时收益来计算出每个局面状态的回报收益。因此可以引入贝尔曼(Bellman)方程,使得计算当前局面状态的回报收益仅和下一局面状态的回报收益,以及当前局面状态的即时收益相关。即时收益的参考因素包括但不限于虚拟对象的经验值、经济值、虚拟对象的体力值(血量)、击杀、死亡以及建筑物的耐久值。本申请实施例中,如图7所示,收益提取模块623计算得到每个样本状态特征的即时收益,根据多个样本状态特征705中每个样本状态特征的即时收益和下一帧样本状态特征的即时收益,计算得到每个样本状态特征的实际回报收益706。
模型训练模块624:利用用户在MOBA游戏中的历史对战帧数据得到的局面状态特征和实际回报收益组成的样本数据组,通过机器学习模型,例如多层卷积神经网络进行大量的迭代训练,训练得到价值网络预测模型。本申请实施例中,服务器将每个样本状态特征705输入至原始价值网络预测模型中,得到训练结果707,根据训练结果707和实际回报收益706的差值得到计算损失对原始价值网络预测模型进行训练,得到价值网络预测模型。
二、评估模块:
特征提取模块622:对MOBA游戏中产生的帧数据进行状态提取,得到每一个帧数据的状态特征。
示例性的,如图8所示,数据获取模块610获取得到当前状态下的帧数据801,将帧数据801发送至特征提取模块622;特征提取模块622从帧数据801中提取得到目标虚拟对象对应的帧数据作为目标帧数据802,提取目标帧数据802中的全局地图分布特征8021、目标虚拟对象的行为特征8022以及关联虚拟对象的参数特征8023,从而得到状态特征803,将状态特征803发送至预测模块631。
预测模块631:利用训练好的价值网络模型对状态特征803进行预测,输出当前局面状态下执行每种调度策略的预期回报收益804。
请参考图9,其示出了本申请一个示例性实施例提供的虚拟环境中的虚拟对象的调度装置的结构框图。该装置可以通过软件、硬件或者两者的结合实现成为图1实施例中的服务器120。该装置包括数据获取模块910、特征提取模块920、预测模块930、收益提取模块940以及训练模块950。其中,收益提取模块940以及训练模块950为可选的模块。
数据获取模块910,用于获取虚拟环境的应用程序在运行时产生的帧数据。
特征提取模块920,用于提取帧数据中与目标虚拟对象对应的目标帧数据;对目标帧数据进行特征提取,得到目标虚拟对象在当前局面状态下的状态特征,该状态特征包括关联虚拟对象的状态和虚拟资源的状态。
预测模块930,用于调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象在当前局面状态中执行N种调度策略的预期回报收益,N为正整数,N≥2。
在一个可选的实施例中,状态特征包括全局地图分布特征、目标虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种。
在一个可选的实施例中,目标用户界面中还显示有虚拟环境的全局缩略地图;
特征提取模块920,还用于读取目标帧数据中全局缩略地图的数据,提取得到全局地图分布特征。
在一个可选的实施例中,特征提取模块920,还用于读取目标帧数据中目标虚拟对象的行为数据,提取得到目标虚拟对象的行为特征。
在一个可选的实施例中,目标用户界面中还显示有状态参数栏,状态参数栏中显示有关联虚拟对象的状态参数;
特征提取模块920,还用于读取目标帧数据中状态参数栏的数据,提取得到关联虚拟对象的参数特征。
在一个可选的实施例中,虚拟环境的地图被划分为n个移动区域,n小于地图的像素值,n≥2;
预测模块930,还用于调用价值网络预测模型对状态特征进行处理,得到目标虚拟对象在当前局面状态中移动至n个移动区域执行至少一种调度行为的预期回报收益。
在一个可选的实施例中,虚拟环境的地图被均匀划分为n个移动区域的阵列;或,虚拟环境的地图按照虚拟资源的所在位置被划分为n个移动区域。
在一个可选的实施例中,价值网络预测模型是用于表示基于样本数据组训练得到的预期回报收益规律,样本数据组包括:样本帧数据和样本帧数据对应的实际回报收益;
数据获取模块910,还用于获取得到p个样本帧数据,p为正整数,p≥2。
收益提取模块940,用于计算得到p个样本帧数据中每个样本帧数据的实际回报收益。
训练模块950,用于将p个样本帧数据输入原始价值网络预测模型,得到每个样本帧数据的训练结果;对于每组样本数据组,将训练结果与样本帧数据的实际回报收益进行比较,得到计算损失,该计算损失用于指示训练结果与样本帧数据的实际回报收益之间的误差;根据至少一组样本数据组各自对应的计算损失,采用误差反向传播算法训练得到价值网络预测模型。
在一个可选的实施例中,数据获取模块910,还用于获取l个历史帧数据,l为正整数,l≥p;按照预设时间步长抽取l个历史帧数据得到q个候选帧数据,q为正整数,p≤q≤l;对q个候选帧数据进行读取,将q个候选帧数据中包含攻击类型的行为的确定为样本帧数据,得到p个样本帧数据。
在一个可选的实施例中,收益提取模块940,还用于根据样本帧数据中的目标虚拟对象的行为和状态,计算得到每个样本帧数据的即时收益;对于p个样本帧数据中的第i个样本帧数据,根据第i个样本帧数据的即时收益和第i+1个样本帧数据的即时收益,计算得到第i个样本帧数据的实际回报收益,i为正整数,i≤p。
在一个可选的实施例中,训练结果包括虚拟对象执行N个调度策略的预期回报收益;
特征提取模块920,还用于提取样本帧数据中与目标虚拟对象对应的样本目标帧数据,得到p个样本目标帧数据;对p个样本目标帧数据的进行特征提取得到每个样本目标帧数据的样本状态特征,样本状态特征包括全局地图分布特征、虚拟对象的行为特征和关联虚拟对象的参数特征中的至少一种。
训练模块950,还用于将所述每个样本状态特征输入原始价值网络预测模型中,得到虚拟对象执行N个调度策略的预期回报收益。
图10,其示出了本申请一个示例性实施例提供的计算机设备的结构示意图。该计算机设备可以是图1实施例中的服务器120。具体来讲:所述计算机设备1000包括中央处理单元(CPU)1001、包括随机存取存储器(RAM)1002和只读存储器(ROM)1003的系统存储器1004,以及连接系统存储器1004和中央处理单元1001的系统总线1005。所述计算机设备1000还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1006,和用于存储操作系统1013、应用程序1014和其他程序模块1015的大容量存储设备1007。
所述基本输入/输出系统1006包括有用于显示信息的显示器1008和用于用户输入信息的诸如鼠标、键盘之类的输入设备1009。其中所述显示器1008和输入设备1009都通过连接到系统总线1005的输入输出控制器1010连接到中央处理单元1001。所述基本输入/输出系统1006还可以包括输入输出控制器1010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1010还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1007通过连接到系统总线1005的大容量存储控制器(未示出)连接到中央处理单元1001。所述大容量存储设备1007及其相关联的计算机可读存储介质为计算机设备1000提供非易失性存储。也就是说,所述大容量存储设备1007可以包括诸如硬盘或者CD-ROI驱动器之类的计算机可读存储介质(未示出)。
不失一般性,所述计算机可读存储介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1004和大容量存储设备1007可以统称为存储器。
存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元1001执行,一个或多个程序包含用于实现上述虚拟环境中的虚拟对象的调度方法的指令,中央处理单元1001执行该一个或多个程序实现上述各个方法实施例提供的虚拟环境中的虚拟对象的调度方法。
根据本申请的各种实施例,所述计算机设备1000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1000可以通过连接在所述系统总线1005上的网络接口单元1011连接到网络1012,或者说,也可以使用网络接口单元1011来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本发明实施例提供的虚拟环境中的虚拟对象的调度方法中由计算机设备所执行的步骤。
本申请实施例还提供一种计算机可读存储介质,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器1010加载并执行以实现如上述任一实施例所述的虚拟环境中调度策略的评估方法。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述各个方法实施例提供的虚拟环境中调度策略的评估方法。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种虚拟环境中调度策略的评估方法,其特征在于,所述虚拟环境中包括至少两个虚拟对象以及供所述虚拟对象使用的虚拟资源,所述方法包括:
获取所述虚拟环境的应用程序在运行时产生的帧数据;
提取所述帧数据中与目标虚拟对象对应的目标帧数据,所述目标帧数据是用于生成所述目标虚拟对象对应的目标用户界面的数据;
对所述目标帧数据进行特征提取,得到所述目标虚拟对象在当前局面状态下的状态特征,所述状态特征包括关联虚拟对象和所述虚拟资源的状态,所述关联虚拟对象包括所述目标虚拟对象以及与所述目标虚拟对象具有利益关系的虚拟对象;
获取所述虚拟环境的应用程序在运行时产生的l个历史帧数据,l为正整数;按照预设时间步长抽取所述l个历史帧数据得到q个候选帧数据,q为正整数;对所述q个候选帧数据进行读取,将所述q个候选帧数据中包含攻击类型行为的候选帧数据确定为样本帧数据,得到p个样本帧数据,p为正整数,p≥2,p≤q≤l;
根据所述样本帧数据中的所述目标虚拟对象的行为和状态,计算得到每个所述样本帧数据的即时收益,所述即时收益是所述行为导致所述状态的变化对胜利条件的贡献;对于所述p个样本帧数据中的第i个样本帧数据,根据所述第i个样本帧数据的即时收益和第i+1个样本帧数据的实际回报收益,计算得到所述第i个样本帧数据的实际回报收益,i为正整数,i≤p;
提取所述样本帧数据中与所述目标虚拟对象对应的样本目标帧数据,得到p个样本目标帧数据;对所述p个样本目标帧数据进行特征提取得到每个所述样本目标帧数据的样本状态特征,所述样本状态特征包括全局地图分布特征、所述目标虚拟对象的行为特征和所述关联虚拟对象的参数特征中的至少一种;其中,所述全局地图分布特征用于表征所述关联虚拟对象的所在位置,或所述关联虚拟对象和所述虚拟资源的所在位置;所述目标虚拟对象的行为特征用于表征所述目标虚拟对象的行为;所述关联虚拟对象的参数特征用于表征所述关联虚拟对象的状态;
将每个所述样本状态特征输入原始价值网络预测模型中,得到所述目标虚拟对象执行N种调度策略的样本预期回报收益;对于每组样本数据组,将训练结果与所述样本帧数据的实际回报收益进行比较,得到计算损失,所述计算损失用于指示所述训练结果与所述样本帧数据的实际回报收益之间的误差;根据至少一组所述样本数据组各自对应的计算损失,采用误差反向传播算法训练得到价值网络预测模型;所述价值网络预测模型是用于表示基于所述样本数据组训练得到的预期回报收益规律,所述样本数据组包括:所述样本帧数据和所述样本帧数据对应的实际回报收益;所述训练结果包括所述目标虚拟对象执行所述N种调度策略的样本预期回报收益;
调用所述价值网络预测模型对所述状态特征进行处理,得到所述目标虚拟对象在所述当前局面状态中执行所述N种调度策略的预期回报收益,所述预期回报收益用于表征所述调度策略对在所述虚拟环境中对战的胜利条件的贡献,N为正整数,N≥2,所述调度策略指控制所述目标虚拟对象移动至所述虚拟环境中的移动区域,在所述移动区域执行调度行为的策略。
2.根据权利要求1所述的方法,其特征在于,所述状态特征包括全局地图分布特征、所述目标虚拟对象的行为特征和所述关联虚拟对象的参数特征中的至少一种;
所述全局地图分布特征用于表征所述关联虚拟对象的所在位置,或所述关联虚拟对象和所述虚拟资源的所在位置;
所述目标虚拟对象的行为特征用于表征所述目标虚拟对象的行为;
所述关联虚拟对象的参数特征用于表征所述关联虚拟对象的状态。
3.根据权利要求2所述的方法,其特征在于,所述目标用户界面中还显示有所述虚拟环境的全局缩略地图;
所述对所述目标帧数据进行特征提取,得到所述目标虚拟对象在当前局面状态下的状态特征,包括:
读取所述目标帧数据中所述全局缩略地图的数据,提取得到所述全局地图分布特征。
4.根据权利要求2所述的方法,其特征在于,所述对所述目标帧数据进行特征提取得到所述目标虚拟对象在当前局面状态下的状态特征,包括:
读取所述目标帧数据中所述目标虚拟对象的行为数据,提取得到所述目标虚拟对象的行为特征。
5.根据权利要求2所述的方法,其特征在于,所述目标用户界面中还显示有状态参数栏,所述状态参数栏中显示有所述关联虚拟对象的状态参数;
所述对所述目标帧数据进行特征提取得到所述目标虚拟对象在当前局面状态下的状态特征,包括:
读取所述目标帧数据中所述状态参数栏的数据,提取得到所述关联虚拟对象的参数特征。
6.根据权利要求1至5任一所述的方法,其特征在于,所述虚拟环境的地图被划分为n个移动区域,所述n小于所述地图的像素值,n≥2;
所述调用价值网络预测模型对所述状态特征进行处理,得到所述目标虚拟对象在所述当前局面状态中执行N种调度策略的预期回报收益,包括:
调用所述价值网络预测模型对所述状态特征进行处理,得到所述目标虚拟对象在所述当前局面状态中移动至所述n个移动区域执行至少一种行为的预期回报收益。
7.根据权利要求6所述的方法,其特征在于,所述地图被均匀划分为所述n个移动区域的阵列;或,所述地图按照所述虚拟资源的所在位置被划分为所述n个移动区域。
8.一种虚拟环境中调度策略的评估装置,其特征在于,所述虚拟环境中包括至少两个虚拟对象以及供所述虚拟对象使用的虚拟资源,所述装置包括:
数据获取模块,用于获取所述虚拟环境的应用程序在运行时产生的帧数据;
特征提取模块,用于提取所述帧数据中与目标虚拟对象对应的目标帧数据,所述目标帧数据是用于生成所述目标虚拟对象对应的目标用户界面的数据;对所述目标帧数据进行特征提取,得到所述目标虚拟对象在当前局面状态下的状态特征,所述状态特征包括关联虚拟对象的状态和所述虚拟资源的状态,所述关联虚拟对象包括所述目标虚拟对象以及与所述目标虚拟对象具有利益关系的虚拟对象;
所述数据获取模块,还用于获取所述虚拟环境的应用程序在运行时产生的l个历史帧数据,l为正整数;按照预设时间步长抽取所述l个历史帧数据得到q个候选帧数据,q为正整数;对所述q个候选帧数据进行读取,将所述q个候选帧数据中包含攻击类型行为的候选帧数据确定为样本帧数据,得到p个样本帧数据,p为正整数,p≥2,p≤q≤l;
收益提取模块,用于根据所述样本帧数据中的所述目标虚拟对象的行为和状态,计算得到每个所述样本帧数据的即时收益,所述即时收益是所述行为导致所述状态的变化对胜利条件的贡献;对于所述p个样本帧数据中的第i个样本帧数据,根据所述第i个样本帧数据的即时收益和第i+1个样本帧数据的实际回报收益,计算得到所述第i个样本帧数据的实际回报收益,i为正整数,i≤p;
所述特征提取模块,还用于提取所述样本帧数据中与所述目标虚拟对象对应的样本目标帧数据,得到p个样本目标帧数据;对所述p个样本目标帧数据进行特征提取得到每个所述样本目标帧数据的样本状态特征,所述样本状态特征包括全局地图分布特征、所述目标虚拟对象的行为特征和所述关联虚拟对象的参数特征中的至少一种;其中,所述全局地图分布特征用于表征所述关联虚拟对象的所在位置,或所述关联虚拟对象和所述虚拟资源的所在位置;所述目标虚拟对象的行为特征用于表征所述目标虚拟对象的行为;所述关联虚拟对象的参数特征用于表征所述关联虚拟对象的状态;
训练模块,用于将每个所述样本状态特征输入原始价值网络预测模型中,得到所述目标虚拟对象执行N种调度策略的样本预期回报收益;对于每组样本数据组,将训练结果与所述样本帧数据的实际回报收益进行比较,得到计算损失,所述计算损失用于指示所述训练结果与所述样本帧数据的实际回报收益之间的误差;根据至少一组所述样本数据组各自对应的计算损失,采用误差反向传播算法训练得到价值网络预测模型;所述价值网络预测模型是用于表示基于所述样本数据组训练得到的预期回报收益规律,所述样本数据组包括:所述样本帧数据和所述样本帧数据对应的实际回报收益;所述训练结果包括所述目标虚拟对象执行所述N种调度策略的样本预期回报收益;
预测模块,用于调用所述价值网络预测模型对所述状态特征进行处理,得到所述目标虚拟对象在所述当前局面状态中执行所述N种调度策略的预期回报收益,所述预期回报收益用于表征所述调度策略对在所述虚拟环境中对战的胜利条件的贡献,N为正整数,N≥2,所述调度策略指控制所述目标虚拟对象移动至所述虚拟环境中的移动区域,在所述移动区域执行调度行为的策略。
9.根据权利要求8所述的装置,其特征在于,所述状态特征包括全局地图分布特征、所述目标虚拟对象的行为特征和所述关联虚拟对象的参数特征中的至少一种;
所述全局地图分布特征用于表征所述关联虚拟对象的所在位置,或所述关联虚拟对象和所述虚拟资源的所在位置;
所述目标虚拟对象的行为特征用于表征所述目标虚拟对象的行为;
所述关联虚拟对象的参数特征用于表征所述关联虚拟对象的状态。
10.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至7任一所述的虚拟环境中调度策略的评估方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811429123.1A CN109529352B (zh) | 2018-11-27 | 2018-11-27 | 虚拟环境中调度策略的评估方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811429123.1A CN109529352B (zh) | 2018-11-27 | 2018-11-27 | 虚拟环境中调度策略的评估方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109529352A CN109529352A (zh) | 2019-03-29 |
CN109529352B true CN109529352B (zh) | 2023-03-28 |
Family
ID=65851686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811429123.1A Active CN109529352B (zh) | 2018-11-27 | 2018-11-27 | 虚拟环境中调度策略的评估方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109529352B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112712161B (zh) * | 2019-10-25 | 2023-02-24 | 上海哔哩哔哩科技有限公司 | 数据生成方法及系统 |
CN111223170B (zh) * | 2020-01-07 | 2022-06-10 | 腾讯科技(深圳)有限公司 | 动画生成方法、装置、电子设备和存储介质 |
CN111318017B (zh) * | 2020-02-29 | 2023-06-13 | 深圳市腾讯信息技术有限公司 | 虚拟对象控制方法、装置、计算机可读存储介质和设备 |
CN111111220B (zh) * | 2020-03-26 | 2020-07-07 | 腾讯科技(深圳)有限公司 | 多人对战游戏的自对弈模型训练方法、装置和计算机设备 |
CN111494959B (zh) * | 2020-04-22 | 2021-11-09 | 腾讯科技(深圳)有限公司 | 游戏操控方法、装置、电子设备及计算机可读存储介质 |
CN111773736B (zh) * | 2020-07-03 | 2024-02-23 | 珠海金山数字网络科技有限公司 | 一种虚拟角色的行为生成方法及装置 |
CN112044076B (zh) * | 2020-08-28 | 2022-07-29 | 腾讯科技(深圳)有限公司 | 一种对象控制方法、装置及计算机可读存储介质 |
CN114432674B (zh) * | 2022-02-09 | 2023-02-03 | 南京科源软件技术有限公司 | 一种自行车的仿真骑行训练方法及系统 |
CN116747521B (zh) * | 2023-08-17 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 控制智能体进行对局的方法、装置、设备及存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9192863B2 (en) * | 2013-10-29 | 2015-11-24 | Disney Enterprises, Inc. | Selective caching of interactive objects |
CN105119733B (zh) * | 2015-07-06 | 2019-01-15 | 百度在线网络技术(北京)有限公司 | 人工智能系统及其状态跳转方法、服务器、通信系统 |
CN106422332B (zh) * | 2016-09-08 | 2019-02-26 | 腾讯科技(深圳)有限公司 | 应用于游戏的人工智能操作方法和装置 |
CN107019901B (zh) * | 2017-03-31 | 2020-10-20 | 北京大学深圳研究生院 | 基于图像识别及自动化控制的棋牌类游戏自动博弈机器人的建立方法 |
CN107617213B (zh) * | 2017-07-27 | 2019-02-19 | 网易(杭州)网络有限公司 | 信息处理方法及装置、存储介质、电子设备 |
CN107648847B (zh) * | 2017-08-22 | 2020-09-22 | 网易(杭州)网络有限公司 | 信息处理方法及装置、存储介质、电子设备 |
CN107694089B (zh) * | 2017-09-01 | 2019-02-12 | 网易(杭州)网络有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN107694086B (zh) * | 2017-10-13 | 2018-11-23 | 网易(杭州)网络有限公司 | 游戏系统的信息处理方法及装置、存储介质、电子设备 |
CN107899246B (zh) * | 2017-11-10 | 2020-11-20 | 网易(杭州)网络有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN107832836B (zh) * | 2017-11-27 | 2020-04-21 | 清华大学 | 无模型深度增强学习探索方法及装置 |
CN108211362B (zh) * | 2017-12-26 | 2020-10-09 | 浙江大学 | 一种基于深度q学习网络的非玩家角色战斗策略学习方法 |
CN108283809B (zh) * | 2018-02-11 | 2021-10-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN108724182B (zh) * | 2018-05-23 | 2020-03-17 | 苏州大学 | 基于多类别模仿学习的端到端游戏机器人生成方法及系统 |
CN108833936B (zh) * | 2018-05-25 | 2021-05-25 | 广州虎牙信息科技有限公司 | 直播间信息推送方法、装置、服务器和介质 |
-
2018
- 2018-11-27 CN CN201811429123.1A patent/CN109529352B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109529352A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109471712B (zh) | 虚拟环境中的虚拟对象的调度方法、装置及设备 | |
CN109529352B (zh) | 虚拟环境中调度策略的评估方法、装置及设备 | |
CN108888958B (zh) | 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质 | |
CN111111204B (zh) | 交互模型训练方法、装置、计算机设备和存储介质 | |
JP2024026285A (ja) | クラウドゲーミングネットワークを使用した人工知能(ai)モデルの訓練 | |
Cadena et al. | Fuzzy case-based reasoning for managing strategic and tactical reasoning in starcraft | |
CN111589166A (zh) | 交互式任务控制、智能决策模型训练方法、设备和介质 | |
CN113262488B (zh) | 虚拟场景中虚拟对象的控制方法、装置、设备及存储介质 | |
CN113509726B (zh) | 交互模型训练方法、装置、计算机设备和存储介质 | |
CN114404975A (zh) | 决策模型的训练方法、装置、设备、存储介质及程序产品 | |
Merrick | Modeling motivation for adaptive nonplayer characters in dynamic computer game worlds | |
Daylamani-Zad et al. | Chain of command in autonomous cooperative agents for battles in real-time strategy games | |
CN110314379B (zh) | 动作输出深度训练模型的学习方法及相关设备 | |
CN111265871A (zh) | 虚拟对象的控制方法及装置、设备、存储介质 | |
Parra et al. | Bayesian networks for micromanagement decision imitation in the RTS game starcraft | |
CN114344889B (zh) | 游戏策略模型生成方法和游戏中智能体的控制方法 | |
CN113018862B (zh) | 虚拟对象的控制方法、装置、电子设备及存储介质 | |
CN111437605B (zh) | 确定虚拟对象行为及托管虚拟对象行为的方法 | |
CN114404976A (zh) | 决策模型的训练方法、装置、计算机设备及存储介质 | |
CN114254722B (zh) | 一种面向博弈对抗的多智能模型融合方法 | |
Ozkohen et al. | Learning to play donkey kong using neural networks and reinforcement learning | |
Khalid et al. | An assortment of evolutionary computation techniques (AECT) in gaming | |
CN112933600B (zh) | 虚拟对象控制方法、装置、计算机设备和存储介质 | |
CN114307166A (zh) | 一种游戏对战模型训练方法、游戏对战方法及相关装置 | |
O’Halloran | A multi-tiered level of detail system for game AI |
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 |