CN117018635A - 数据处理方法、装置、电子设备以及存储介质 - Google Patents

数据处理方法、装置、电子设备以及存储介质 Download PDF

Info

Publication number
CN117018635A
CN117018635A CN202211329426.2A CN202211329426A CN117018635A CN 117018635 A CN117018635 A CN 117018635A CN 202211329426 A CN202211329426 A CN 202211329426A CN 117018635 A CN117018635 A CN 117018635A
Authority
CN
China
Prior art keywords
target
behavior
virtual object
rewards
sequence
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.)
Pending
Application number
CN202211329426.2A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202211329426.2A priority Critical patent/CN117018635A/zh
Publication of CN117018635A publication Critical patent/CN117018635A/zh
Pending legal-status Critical Current

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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开实施例提供了一种数据处理方法、装置、电子设备以及存储介质,涉及游戏和人工智能领域。该方法包括:确定待评估目标虚拟对象的待评估指标对应的目标虚拟场景,基于该目标虚拟场景的对初始策略网络重复执行训练操作得到目标策略网络;基于目标策略网络确定目标虚拟对象的评估结果;上述训练操作包括:获取当前次训练操作对应的目标虚拟场景的初始环境特征,基于该环境特征通过策略网络预测目标虚拟对象的行为序列,控制该对象在虚拟场景中执行序列中的各行为,得到新环境特征和游戏数据,根据游戏数据确定该序列对应的行为奖励,根据行为奖励确定训练损失以调整策略网络的网络参数。基于该方法,可以更加准确、客观的实现对虚拟对象的评估。

Description

数据处理方法、装置、电子设备以及存储介质
技术领域
本公开涉及计算机技术领域,可以涉及人工智能、强化学习、云技术及游戏技术领域,具体而言,本公开涉及一种数据处理方法、装置、电子设备以及存储介质。
背景技术
近年来,随着互联网和信息技术的飞速发展,人们借助互联网进行交互的场景越来越多,具有交互功能的应用程序也日益增多,多样化的游戏应用也层出不穷,游戏玩家可以通过发出操作指令对游戏场景中相应的虚拟对象进行控制从而参与到游戏中。
为了更好的满足游戏玩家的需求,提升游戏趣味,对于游戏场景中的玩家角色,游戏工作人员(如游戏策划人员、游戏研发人员)需要对角色的能力(强度)进行评估。比如,在MOBA(Multiplayer Online Battle Arena,多人在线战术竞技)游戏中,在设计研发出新的英雄时,需要评估新英雄的设计是否合理。
目前,对于游戏角色的评估,大多数情况下都是采用人工的方式,如通过业余顶级玩家针对需要评估的英雄进行真实游戏操作,以此来评估英雄强度,但是该方式的实现效率过低、且由于包括人为原因等在内各种因素的英雄,评估结果不够客观,不能够很好的满足实际应用需求。
发明内容
本公开实施例的目的旨在提供一种能够客观的实现对虚拟对象的能力进行评估的数据处理方法、装置、电子设备以及存储介质,为了实现该目的,本公开实施例提供的技术方案如下:
第一方面,本公开实施例提供了一种数据处理方法,该方法包括:
确定待评估目标虚拟对象的待评估指标对应目标虚拟场景;
基于所述目标虚拟场景,通过对初始策略网络重复执行训练操作,得到满足训练结束条件的目标策略网络;
基于所述目标策略网络,确定目标虚拟对象的待评估指标的评估结果;
其中,所述训练操作包括:
获取当前次训练所对应的目标虚拟场景的初始环境特征;基于所述初始环境特征,通过初始策略网络预测目标虚拟对象的行为序列,控制目标虚拟对象在目标虚拟场景中执行该序列中的各目标行为,得到目标虚拟对象对应于所述待评估指标的游戏数据、以及执行每个目标行为之后的目标虚拟场景的新环境特征;根据所述游戏数据确定该序列对应的行为奖励,根据所述行为奖励确定训练损失,根据训练损失调整初始策略网络的网络参数;
其中,所述行为序列包括满足第一预设条件时所获取到的各目标行为,每个目标行为是根据该行为的目标输入预测得到的,第一个目标行为的目标输入为当前次训练操作的初始环境特征,第一个目标行为之外的目标行为的目标输入是执行上一个目标行为后的新环境特征。
可选的,一个行为序列包括以下任一项:
获取到的目标行为的数量达到设定数量时的各个目标行为;
控制所述目标虚拟对象进行设定局数的游戏所执行的各个目标行为;
在预设游戏时长内所述目标虚拟对象所执行的各个目标行为;
控制所述目标虚拟对象至少一次从所述目标虚拟场景中的第一位置抵达第二位置所执行的各个目标行为。
第二方面,本公开实施例提供了一种数据处理装置,该装置包括:
目标场景确定模块,用于确定待评估目标虚拟对象的待评估指标对应的目标虚拟场景;
训练模块,用于基于所述目标虚拟场景,通过对初始策略网络重复执行训练操作,得到满足训练结束条件的目标策略网络;
评估结果确定模块,用于基于所述目标策略网络,得到目标虚拟对象的待评估指标的评估结果;
其中,所述训练操作包括:
获取当前次训练所对应的目标虚拟场景的初始环境特征;基于所述初始环境特征,通过初始策略网络预测目标虚拟对象的行为序列,控制目标虚拟对象在目标虚拟场景中执行所述行为序列中的各目标行为,得到目标虚拟对象对应于所述待评估指标的游戏数据、以及执行每个目标行为之后的目标虚拟场景的新环境特征;根据所述游戏数据确定所述行为序列对应的行为奖励,根据行为奖励确定训练损失,根据训练损失调整初始策略网络的网络参数;
其中,所述行为序列中的每个目标行为是根据该行为的目标输入预测得到的,第一个目标行为的目标输入为当前次训练操作的初始环境特征,第一个目标行为之外的目标行为的目标输入是执行上一个目标行为后的新环境特征。
第三方面,本公开实施例还提供了一种数据处理方法,该方法包括:
获取第一虚拟对象所处的第一虚拟场景的环境特征;
基于所述第一虚拟场景的环境特征,通过所述第一虚拟场景对应的目标策略网络,预测所述第一虚拟对象的目标行为;其中,该目标策略网络是该目标策略网络是将所述第一虚拟对象作为待评估目标虚拟对象,将所述第一虚拟场景作为目标虚拟场景,采用本公开第一方面提供的方法训练得到的目标策略网络;
控制所述第一虚拟对象执行预测出的目标行为,或者基于所述目标行为向所述第一虚拟对象的操作者推荐游戏策略。
第四方面,本公开实施例还提供了一种数据处理装置,该装置包括:
环境特征获取模块,用于获取第一虚拟对象所处的第一虚拟场景的环境特征;
目标行为预测模块,用于基于所述第一虚拟场景的环境特征,通过所述第一虚拟场景对应的目标策略网络,预测所述第一虚拟对象的目标行为;其中,该目标策略网络是该目标策略网络是将所述第一虚拟对象作为待评估目标虚拟对象,将所述第一虚拟场景作为目标虚拟场景,采用本公开第一方面提供的方法训练得到的目标策略网络;
处理模块,用于控制所述第一虚拟对象执行预测出的目标行为,或者基于所述目标行为向所述第一虚拟对象的操作者推荐游戏策略。
另一方面,本公开实施例还提供了一种电子设备,该电子设备包括存储器和处理器,存储器中存储有计算机程序,处理器执行该计算机程序以实现本公开任一可选实施例中提供的方法。
另一方面,本公开实施例还提供了一种计算机可读存储介质,该存储介质中存储有计算机程序,该计算机程序被处理器执行时实现本公开任一可选实施例中提供的方法。
另一方面,本公开实施例还提供了一种计算机程序产品,该计算机产品包括计算机程序,该计算机程序被处理器执行时实现本公开任一可选实施例中提供的方法。
本公开实施例提供的技术方案带来的有益效果如下:
本公开实施例提供的数据处理方法,提供了一种基于强化学习的目标虚对象的评估方案,该方案可以在训练策略网络(用于预测目标虚拟对象的目标行为)的过程中,通过获取目标虚拟对象的待评估指标相关联的游戏数据,对预测出的目标虚拟对象的目标行为进行行为奖励,由于该游戏数据是与目标虚拟对象所执行的目标行为相关的游戏数据,因此,将基于该行为奖励确定出的训练损失来约束策略网络的训练,可以使得策略网络不断优化学习出与待评估指标更加适配的行为,提高训练得到的目标策略网络的预测性能,从而可以基于该目标策略网络实现对目标虚拟对象更加客观、准确的评估,且该方法可以无需人工的介入,自动化实现,因此,可以大大减少所需耗费的人力成本,提高了评估的效率,更好的满足了实际应用需求。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对本公开实施例描述中所需要使用的附图作简单地介绍。
图1为本公开一个实施例提供的一种数据处理方法的流程示意图;
图2为本公开另一个实施例提供的一种数据处理方法的流程示意图;
图3为本公开实施例所适用的一种数据处理系统的结构示意图;
图4和图5为本公开的一种实施场景中的数据处理方法的流程示意图;
图6为本公开实施例中提供的一种策略网络的训练方式的原理示意图;
图7为本公开实施例中提供的一种游戏场景中虚拟对象的对象特征的获取原理示意图;
图8为本公开实施例中提供的一种游戏场景中的虚拟对象的位置分布特征的生成原理示意图;
图9为本公开的一个示例中提供的一种虚拟对象的各候选行为的示意图;
图10为本公开实施例提供的一种基于行为掩码机制的目标行为的预测原理示意图;
图11为采用本公开实施例提供的方案获取到的英雄的评估结果的测试结果示意图;
图12为本公开实施例提供的一种数据处理装置的结构示意图;
图13为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本公开中的附图描述本公开的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本公开实施例的技术方案的示例性描述,对本公开实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本公开实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。在描述多个(两个或两个以上)项目时,如果没有明确限定多个项目之间的关系,这多个项目之间可以是指多个项目中的一个、多个或者全部,例如,对于“参数A包括A1、A2、A3”的描述,可以实现为参数A包括A1或A2或A3,还可以实现为参数A包括参数A1、A2、A3这三项中的至少两项。
本公开实施例是针对目前虚拟对象能力评估方案中存在的效率低、评估结果不够客观、准确的问题,提供了一种数据处理方法,基于该方法能够更高效、客观的实现对虚拟对象的能力评估。
可选的,本申请实施例提供的数据处理方法,可以基于人工智能(ArtificialIntelligence,AI)技术实现。可选的,该方法可以采用机器学习中的增强学习(Reinforcement Learning)训练得到目标策略网络,从而可以基于该目标策略网络实现对虚拟对象能力的评估,或者,可以基于目标策略网络为玩家提供游戏策略,或者基于目标策略网络的预测结果控制虚拟对象。
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。随着人工智能技术的研究和进步,人工智能技术已经在常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等多个领域展开研究和应用,相信随着技术的发展,该技术将在更多的领域得到应用,并发挥越来越重要的价值。
机器学习是达到人工智能的一个途径,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。增强学习又称再励学习、评价学习或强化学习,是机器学习的范式和方法论之一,增强学习用于描述和解决智能体在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
可选的,本申请实施例所涉及的数据处理可以基于云技术(Cloud technology)实现,比如,策略网络的训练过程中所涉及的数据计算可以采用云计算实现。云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
为了更好的理解本公开实施例提供的方法,下面首先对本公开实施例中的所涉及的一些相关技术或技术用语进行介绍和解释。
MOBA,又被称为Action Real-Time Strategy(ARTS,动作即时战略)游戏,这类游戏玩家通常被分为两队(也可称为阵营),两队在分散的游戏地图中互相竞争,玩家可以控制所选的角色进行游戏。
PPO:近端策略优化(Proximal Policy Optimization),一种基于策略的增强学习算法,其中,在增强学习中,如果优化策略(要学习的智能体)和采样策略(与环境互动的智能体)相同,称之为同策略(on policy),如果优化策略和采样策略不同,称之为异策略(offpolicy)。
下面通过对几个示例性实施方式的描述,对本公开实施例的技术方案以及本公开的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
图1示出了本公开实施例提供的一种数据处理方法的流程示意图,其中,该方法可以由任意计算机设备执行,该设备可以是终端(如游戏工作人员的用户设备),也可以是服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端(也可以称为用户终端或用户设备)可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备(例如智能音箱)、可穿戴电子设备(例如智能手表)、车载终端、智能家电(例如智能电视)、AR/VR设备等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。
如图1所示,本公开实施例提供的数据处理方法可以包括如下步骤S110至步骤S130。
步骤S110:确定待评估目标虚拟对象的待评估指标对应的目标虚拟场景。
步骤S120:基于目标虚拟场景,通过对初始策略网络重复执行训练操作,得到满足训练结束条件的目标策略网络;
步骤S130:基于目标策略网络,确定目标虚拟对象的待评估指标的评估结果。
其中,待评估目标虚拟对象是指需要进行能力评估的虚拟对象,虚拟对象的能力可以反映虚拟对象在游戏中的影响力。待评估指标则是与目标虚拟对象的能力有关的指标(也可称为能力参数或能力属性),待评估指标的评估结果则代表了目标虚拟对象对应于该指标的能力,评估结果的表达形式本公开实施例不做限定,比如,评估结果可以是具体的数值(指标值),评估结果也可以是采用等级进行表示,不同的数值或等级代表不同的能力。在实际实施时,待评估指标可以根据实际的评估需求配置。
可选的,待评估指标可以是能够反映虚拟对象一个维度或多个维度的能力的参数,可选的,待评估指标可以是与目标虚拟对象所具有的虚拟技能有关的评估指标,比如,待评估指标可以是能够表征虚拟对象的虚拟技能所能够产生的理想化的最大技能效果的指标。以MOBA游戏为例,目标虚拟对象可以是游戏中的英雄,英雄通常都会配置有一个或多个不同维度的虚拟技能,不同的虚拟技能可以对应于不同的评估指标,比如,待评估英雄具有攻击、支援和承伤等多个不同维度的虚拟技能,对于攻击能力,待评估指标可以是英雄的攻击能力产生的伤害能力,该指标的评估结果可以是伤害数值,对于支援能力,待评估指标可以是能够反映支援速度的指标,如英雄从游戏地图中的一个指定位置到达另一个指定位置的时间。
其中,目标虚拟场景可以指目标游戏应用中的游戏场景,目标虚拟对象是该应用中的虚拟对象(如游戏中玩家可以操控的英雄),其中,为了获取到更好的评估结果,目标虚拟场景可以是基于待评估指标选择的与该指标强相关的游戏场景。可选的,目标游戏场景可以是通过以下方式确定的:
获取目标虚拟对象的待评估指标;
根据待评估指标和映射关系,确定目标游戏场景,其中,该映射关系包括多个指标与场景标识的对应关系。
在实际应用中,游戏应用中通常会具有多种不同的游戏场景,在不同的游戏场景,目标虚拟对象的不同能力(即技能)所产生的作用的重要程度通常是不同的,为了能够获取到更加准确、客观的评估结果,不同的评估指标可以采用不同的目标虚拟场景,如评估英雄的伤害能力时,可以采用与伤害技能关联性更高的游戏场景。比如,有些游戏中配有训练模式下的一种或多种游戏场景,游戏玩家可以控制玩家角色(玩家所控制的虚拟对象)在该模式的游戏场景中通过不断进行游戏实现训练目的,提升自己的游戏能力,训练模式下的每种游戏场景通常都是与一种或多种虚拟技能强相关的,比如,如打木偶类型的持续伤害场景,该游戏场景中会包含有一个或多个虚拟木偶,木偶可以承受较大的伤害,玩家可以控制其玩家角色对木偶进行攻击以测试其玩家角色所造成的伤害,因此,在待评估指标是目标虚拟对象的伤害能力,对应的目标游戏场景可以是打木偶游戏场景。
在实际实施时,可以预先配置每个待评估指标与其相对应的游戏场景标识的对应关系,在需要对目标虚拟对象进行评估时,通过输入想要评估的指标即可根据该对应关系确定出目标虚拟场景。当然,目标虚拟场景也可以由游戏工作人员选定。
作为一可选方式,目标虚拟对象和待评估指标可以采用以下确定:
响应于针对虚拟对象的测试评估触发操作,显示对象列表,其中,该列表中显示有至少一个候选对象的对象标识;
响应于针对上述对象列表中任一对象标识的选择操作,将所选择的对象标识对应的虚拟对象确定为目标虚拟对象,显示该目标虚拟对象的评估指标列表,该指标列表中包括至少一个评估指标;
响应于针对评估指标的选择操作,将该选择操作对应的评估指标确定为待评估指标。
可选的,在确定出目标虚拟对象和待评估指标之后,可以根据上述映射关系,确定出该待评估指标所对应的目标游戏场景。
在实际实施时,本公开实施例提供的方案可以实现为独立的应用程序或已有应用程序的功能插件,在需要对游戏中的虚拟对象进行评估时,游戏工作人员(如测试人员)可以通过该程序选择需要评估的目标虚拟对象以及想要评估的指标,其中,上述测试评估触发操作用于触发待评估对象的选择,该操作可以是但不限于打开该应用程序的操作或是针对该应用程序的用户界面上显示的“英雄评估”控件的触发操作,测试终端在接收到该操作之后,可以将游戏中的部分或全部游戏角色显示给工作人员以供选择,在选择出目标虚拟对象之后,可以将该目标虚拟对象的所有可评估指标显示以供选择,其中,上述评估指标列表中显示的即为目标虚拟对象的所有可评估指标(如所有虚拟能力)。测试终端在获取到待评估指标之后,可以根据指标与游戏场景的上述映射关系,确定出目标虚拟场景,进一步可以将目标虚拟对象和目标虚拟场景告知测试服务器,由服务器通过执行本公开实施例的方案实现目标对象对应于该待评估指标的评估结果。可以理解的是,基于待评估指标确定目标虚拟场景的操作也可以由服务器执行。
本公开实施例中,在确定出目标虚拟场景之后,可以基于该场景的环境特征,通过目标虚拟对象与环境的交互,采用强化学习的方式训练得到能够预测目标虚拟对象在场景中所要执行的行为的目标策略网络,以基于该网络实现对目标虚拟对象的待评估指标的评估。
如图1所示,步骤S120中的训练操作包括如下步骤:
步骤S121:获取当前次训练操作所对应的目标虚拟场景的初始环境特征;基于初始环境特征,通过初始策略网络预测目标虚拟对象的行为序列,控制目标虚拟对象在目标虚拟场景中执行行为序列中的各目标行为,得到目标虚拟对象对应于待评估指标的游戏数据、以及执行每个目标行为之后的目标虚拟场景的新环境特征;
步骤S122:根据游戏数据确定行为序列对应的行为奖励,根据行为奖励确定训练损失,根据训练损失调整初始策略网络的网络参数,。
其中,一个行为序列包括满足第一预设条件时所获取到的各目标行为,行为序列中的每个目标行为是根据该行为的目标输入预测得到的,该行为序列中的第一个目标行为的目标输入为当前次训练操作的初始环境特征,第一个目标行为之外的目标行为的目标输入是控制目标虚拟对象执行上一个目标行为后得到的新环境特征。
目标虚拟场景的初始环境特征可以是目标虚拟场景的任一情况下的环境特征(如任一时刻的该场景的环境特征)。比如,初始环境特征可以是目标虚拟场景的初始状态下(如控制目标虚拟对象刚进入该场景时)的环境特征,也可以是已经控制目标虚拟对象在该场景进行了一些行为后的环境特征。目标虚拟场景的环境特征(如初始环境特征、新环境特征)表征了目标虚拟场景的场景/环境状态。
可选的,本公开实施例中,由于目的是对目标虚拟对象的待评估指标进行评估,因此,目标虚拟场景的环境特征可以是根据与待评估指标相关联的环境参量确定的,不同的待评估指标所关联的环境参量可以相同,也可以不同。比如,待评估指标为目标虚拟对象的伤害能力,目标虚拟场景是打木偶场景,目标虚拟对象对该场景中的虚拟陪练木偶所能够造成的伤害值与目标虚拟对象和陪练木偶的位置关系具有很大关系,因此,与该评估指标相关联的环境参量至少可以包括目标虚拟对象在游戏场景中的位置信息以及木偶的位置信息等。
本公开实施例中,目标虚拟场景中的环境特征,是强化学习中与智能体进行交互的环境。其中,智能体可以理解为需要训练的初始策略网络(神经网络模型),策略网络可以根据环境特征预测该环境特征下目标虚拟对象所要执行的目标行为,通过控制目标虚拟对象执行预测出的目标行为,可以得到更新后的环境特征(即新环境特征)。目标虚拟场景的初始环境特征是用于初始策略网络训练的源数据,基于该源数据,通过智能体与环境的不断交互、学习过程,使得智能体能够学习出对应目标虚拟对象而言更合适的行为,得到满足条件的目标策略网络。
对于每次训练操作而言,该次训练操作对应的行为序列包括目标虚拟对象在目标虚拟场景中所要执行的各个目标行为,行为序列中的各个目标行为是依次预测出的,第一个目标行为是根据该次操作所基于的初始环境特征通过策略网络预测得到,除第一个目标行为之外的任一目标行为是基于执行上一个目标行为得到的新的环境特征预测出的。以第一次训练操作为例,第一个目标行为是根据此次所采用的目标虚拟场景的初始环境特征预测出的,控制目标虚拟对象在该场景中执行第一个目标行为之后,场景中的场景会产生相应的变化,从而可以得到更新后的新环境特征,基于该新的环境特征可以预测出第二个目标行为,以此类推。
也就是说,策略网络的输入是环境特征,在训练过程中,目标虚拟对象所要执行的第一个目标行为是基于目标虚拟场景的初始环境特征预测得到的,通过控制目标虚拟对象执行第一个目标行为之后,可以得到新环境特征,此次的新环境特征再作为策略网络的输入,用于预测下一个目标行为,以此类推。
作为一可选方式,可以预配置目标虚拟环境的多个初始环境特征,在每次训练时,可以从多个初始环境特征随机选择、依次选择或者其他策略确定每次所采用的初始环境特征,在训练过程中,可以依据初始环境特征或新环境特征不断预测出目标虚拟对象的目标行为,当满足第一预设条件时,可以基于此时训练操作已获取到的各目标行为得到对应的行为序列,第一预设条件可以根据实际需求配置,比如,该条件可以是目标行为的数量达到设定数量或者是游戏时长达到设定游戏时长等。
作为一可选方案,对于目标虚拟场景的初始环境特征或新环境特征中的任一环境特征,该环境特征可以是通过以下方式确定的:
获取目标虚拟场景中的各关联虚拟对象当前的对象属性信息和对象位置信息,其中,各关联虚拟对象包括目标虚拟对象;
根据各关联虚拟对象当前的对象属性信息和对象位置信息,确定目标虚拟场景的当前环境特征。
其中,目标虚拟场景中的各关联虚拟对象,是指该虚拟场景中所涉及的各个虚拟对象,关联虚拟对象可以是虚拟场景中的部分或全部虚拟对象,也可以是某些指定对象,可选的,各关联虚拟对象可以包括能够在目标虚拟场景中移动的虚拟对象。比如,目标虚拟对象所属的阵营(可称为我方阵营或友方阵营等)中的各个虚拟对象(如英雄、小兵等),除我方阵营之外的其他阵营(可称为敌方阵营或对手阵营等)中的各个虚拟对象。
对于任一关联虚拟对象,该对象的对象属性信息可以反映该虚拟对象自身的特征,而在游戏中,虚拟对象在虚拟场景中的位置信息也是尤为重要,因此,可以根据目标虚拟场景中各关联虚拟对象的对象属性信息和对象位置信息,生成目标虚拟场景的当前环境特征,该环境特征也就是目标虚拟场景中的各虚拟对象的对象特征和位置特征的特征表达(特征向量)。比如,对于每个关联虚拟对象,可以根据该对象的对象属性信息提取得到该对象的对象特征向量,根据该对象的位置信息提取得到该对象的位置特征向量,进一步,可以根据各关联虚拟对象的对象特征向量和位置特征向量,得到当前的环境特征。
对于该方案,作为一可选方案,可以预配置多种初始环境特征所对应的环境参量(各关联虚拟对象的属性信息和位置信息),在训练策略网络时,可以根据预配置的每种环境参量,采用该方案确定出一次训练所使用的初始环境特征,在基于初始环境特征预测出该特征对应的目标行为之后,通过控制目标虚拟对象在目标虚拟场景中执行该目标行为,此时场景中关联对象的属性信息和/或位置信息则可能发生变化,可以采用该方案可以确定出新环境特征,并基于该环境预测下一个目标行为。
作为一可选方案,各关联虚拟对象包括属于至少两个虚拟阵营的虚拟对象;上述根据各关联虚拟对象当前的对象属性信息和对象位置信息,确定目标虚拟场景的当前环境特征,包括:
对于每个关联虚拟对象,根据该关联虚拟对象当前的对象属性信息,得到该关联虚拟对象的当前对象特征;
对于每个虚拟阵营,根据各关联虚拟对象中该阵营的各虚拟对象当前的对象位置信息,确定该阵营中的各虚拟对象之间的相对位置分布,根据相对位置分布,得到该阵营对应的位置分布特征;
根据各关联虚拟对象的当前对象特征、以及各阵营对应的位置分布特征,得到目标虚拟场景的当前环境特征。
在游戏中,由于场景中的虚拟对象之间的相对位置在游戏过程中的重要因素,虚拟对象在虚拟场景中执行某些行为(如释放某种虚拟技能)时,不同位置很可能会产生不同的效果,虚拟对象自身在游戏场景中的位置反映的是对象的局部位置,而属于同一阵营的各虚拟对象之间的相对位置分布是该阵营中的各虚拟对象之间的全局分布情况,因此,游戏场景中各阵营中的虚拟对象之间的相对位置分布能够反映出各阵营在游戏场景中的整体排布状态,相比于各虚拟对象的各自的局部位置特征,基于相对位置分布得到的环境特征,策略网络可以更好的指导目标虚拟对象在整体行为上的决策,可以预测出更加合适的目标行为。
在训练过程中,通过控制目标虚拟对象执行策略网络预测出的目标行为,使得目标虚拟对象与游戏环境产生交互,从而可以得到更新的新环境特征,并基于新的环境特征可以预测新的目标行为。
本公开实施例中,行为序列对应的行为奖励表征了执行该序列中的目标行为的优劣,也就是策略网络预测出的目标行为的好坏,根据行为奖励计算训练损失来约束策略网络的学习,可以使得策略网络预测出更加适合的目标行为,其中,目标行为对应的行为奖励越高表征在当前环境特征执行的该目标行为越合适。在训练过程中,控制目标虚拟对象执行策略网络所预测出的目标行为时,可以记录与待评估指标有关的游戏数据,行为奖励是根据目标虚拟对象执行目标行为所对应的游戏数据确定的。其中,一个行为序列对应的行为奖励可以包括该序列对应的整体奖励(全局奖励)或该序列中的每个目标行为各自对应的行为奖励(局部奖励/即时奖励)中的至少一项。
其中,每个目标行为都可以对应有各自对应的游戏数据,可选的,游戏数据可以包括至少一个游戏参数(与该评估指标关联的游戏参数)的参数值,待评估指标所对应的游戏参数可以根据评估需求配置,不同的指标可以对应采用不同的游戏参数,比如,对于伤害能力的评估,游戏参数可以与伤害值有关的参数,对于支援能力的评估,游戏参数可以是与支援速度有关的参数(如目标虚拟对象从一个指定位置到另一个指定位置的所用的时间或游戏的帧数,或者是执行一个目标行为之后目标虚拟对象与指定终点位置之间的距离变化等),再比如,想要评估英雄的击杀速度,游戏参数可以是控制英雄打完一局游戏所需要的时间或者是该局游戏完成所进行的帧数。
本公开的可选实施例中,一个行为序列对应的行为奖励可以包括全局奖励或局部奖励中的至少一项,其中,局部奖励是指行为序列中每个目标行为各自对应的行为奖励,全局奖励代表了整个行为序列的整体奖励。
可选的,一个行为序列中任一目标行为的局部奖励是通过以下方式确定的:
根据该目标行为对应的游戏数据、以及该目标行为的上一个目标行为对应的游戏数据之间的变化,确定该目标行为对应的局部奖励。
可选的,全局奖励是通过以下方式确定的:
根据行为序列中最后一个目标行为对应的游戏数据,确定全局奖励。
其中,一个目标行为对应的局部奖励反映了该目标行为自身产生的游戏效果,全局奖励反映了整个行为序列所产生的有效效果。以待评估指标为伤害能力为例,全局奖励可以根据一局游戏中目标虚拟对象所造成的总伤害值确定,可选的,每个目标行为对应的游戏数据可以是该目标行为以及该目标行为之前的各目标行为所造成的总伤害值,此时,全局奖励可以根据最后一个目标行为对应的总伤害值确定。可选的,每个目标行为对应的游戏数据也可以是该目标行为自身所产生的增量伤害,如第一总伤害值与第二总伤害值的差值,其中,第一总伤害值是该目标行为以及该目标行为之前的各目标行为所造成的总伤害值,第二总伤害值是该目标行为之前的各目标行为所造成的总伤害值,此时,全局奖励可以根据各个目标行为对应的增量伤害之和确定,在该示例中,一个目标行为对应的局部奖励可以根据该目标行为对应的增量伤害确定。
对于一个行为序列而言,该行为序列中的一个目标行为是基于目标虚拟对象执行上一个目标行为之后所获取的新环境特征预测出的,因此,该序列中的最后一个行为的游戏数据是与该序列中的其他各个目标行为的执行都有关联的,可以基于该序列中最后一个目标行为的游戏数据来确定该序列的全局奖励。具体的,可以根据最后一个目标行为所对应的上述至少一个游戏参数中的部分或全部游戏参数的参数值确定,比如,待评估指标是对象的伤害能力,游戏参数可以是伤害参数,参数值可以是伤害值,一个目标行为对应的游戏数据可以是目标虚拟对象执行该目标行为之后当前所造成的总伤害值(该目标行为与该目标行为之前的各行为的累计伤害值),那么最后一个目标行为对应的伤害值则代表了整个序列产生的总伤害,可以该总伤害确定全局奖励,总伤害越大全局奖励可以越高,可选的,可以预配置伤害值与全局奖励的映射关系,在获取到最后一个目标行为对应的伤害值之后,就可以根据该映射关系确定出对应的全局奖励。
作为另一个可选方案,可以根据序列中的目标行为的局部奖励来确定该序列对应的全局奖励,比如,将各目标行为的局部奖励融合(如求和)得到全局奖励,或者是根据各目标行为的融合结果,按照预配置的策略对融合结果进行进一步转化得到全局奖励。
由于全局奖励代表的行为序列中各目标行为的整体奖励,因此,在行为序列对应的行为奖励是全局奖励时,可以根据全局奖励确定每个目标行为的最终奖励,如将全局奖励平均分配给每个目标行为,或者是将全局奖励作为最后一个目标行为的最终奖励,其他各行为的最终奖励为设定值,如0。
可选的,若一个行为序列对应的行为奖励包括全局奖励和局部奖励,该方法还可以包括:
将行为序列的全局奖励进行分配,得到该行为序列中的各目标行为的调节奖励;
对于该行为序列中的每个目标行为,根据该目标行为的局部奖励和调节奖励,确定该目标行为的最终奖励;
根据该行为序列中各目标行为的最终奖励,确定训练损失。
对于该可选方案,每个目标行为的最终奖励同时融合了该行为自身的好坏,也就是在该行为对应的目标输入(即环境特征)下,对于目标虚拟对象而言,当前执行该行为的合适程度,同时还融合了该目标行为所在的行为序列的整体好坏,该融合后最终奖励更加全面的反映出了目标行为的整体合适程度。其中,对于全局奖励的具体分配方式,可以根据实际需求配置,比如,可以将该全局奖励全部分配给最后一个目标行为作为其调节奖励,其他目标行为的调节奖励置为0,或者是将全局奖励平均分配给各个目标行为作为调节奖励。
作为一可选方案,本公开的该方法还可以包括:
根据待评估指标,确定目标虚拟场景对应的行为奖励的奖励类型,奖励类型是局部奖励,或者,奖励类型是局部奖励和全局奖励;
若奖励类型是局部奖励和全局奖励,根据行为奖励确定训练损失,包括:
将行为序列的全局奖励进行分配,得到该行为序列中的各目标行为的调节奖励;
对于该行为序列中的每个目标行为,根据该目标行为的局部奖励和调节奖励,确定该目标行为的最终奖励;
根据该行为序列中各目标行为的最终奖励,确定训练损失。
在实际应用中,不同的待评估指标所适用的行为奖励机制可能是不同的,比如,有的待评估指标与控制目标虚拟对象完成一局游戏所用的时间有关,时间越短,全局奖励可以越高,而有的待评估指标是与目标虚拟对象在设定时间内产生的伤害值或在虚拟场景中移动的距离有关,因为时间是固定的,此时如果也采用根据时间计算全局奖励的方式会导致奖励无法体现出差异,该奖励机制是不适用于此场景的。为了避免该问题的出现,本公开的该可选方案,可以根据待评估指标所适用的奖励机制即上述奖励类型。可选的,可以预配置各种待评估指标与其所对应的奖励机制的映射关系,根据该映射关系来确定与待评估指标相适配的奖励机制。其中,对于虚拟场景的场景类型的划分方式本公开实施例不做限定。
作为另一可选方案,也可以根据目标虚拟场景的场景类型来确定相匹配的奖励奖励,因为不同的虚拟场景可以用于不同待评估指标的评估,因此,也可以预配置各种虚拟场景与其所对应的奖励机制的对应关系,根据该关系可以确定当前的目标虚拟场景所使用的奖励机制。当然,对应每种目标虚拟场景,也可以预先配置好该场景的奖励类型。
本公开的可选实施例中,训练操作还可以包括:在控制目标虚拟对象执行一个目标行为之后,若不满足第二预设条件,则将执行该目标行为之后的新环境特征作为下一个目标行为的目标输入,若满足第二预设条件,则重新获取目标虚拟场景的环境特征,将重新获取的环境特征作为下一个目标行为的目标输入;
其中,一个行为序列包括至少一个子序列,一个子序列包括:获取初始输入之后至满足第二预设条件时所获取的各目标行为,或者,获取第二环境特征之后至满足第二预设条件时所获取的各目标行为;
一个行为序列对应的行为奖励包括该行为序列中每个子序列对应的行为奖励,一个子序列对应的行为奖励是根据该序列中的各目标行为对应的游戏数据确定的,一个子序列对应的行为奖励包括该子序列对应的全局奖励或局部奖励中的至少一项;
若一个行为奖励对应的行为奖励包括局部奖励和全局奖励,一个行为序列中的各目标行为的最终奖励是通过以下方式确定的:
对于该行为序列中的每个子序列,将该子序列对应的全局奖励进行分配,得到该子序列中的各目标行为的调节奖励,根据该子序列中的各目标行为的局部奖励和调节奖励,确定该子序列中各目标行为的最终奖励。
其中,第二预设条件可以根据需求预先配置。可选的,第二预设条件可以是与待评估指标相关联的。比如,第二预设条件可以是一局游戏结束,或者是游戏时长达到设定时长,或者目标虚拟对象从一个指定位置到达了另一个指定位置等。
本公开实施例中,一个行为序列是满足第一预设条件时获取到的各个目标行为,比如,第一预设条件可以是目标行为的数量达到设定数量(也就是用于计算一次训练损失所采用的样本数据的数量),如果通过控制目标虚拟对象在游戏场景中执行目标行为完成一局游戏时所预测出的目标行为的数量未达到设定数量,则需要重新启动目标虚拟场景所对应的新一局的游戏,此时可以重新获取新的环境特征,以保证一个子序列中的各目标行为是具有关联性的(一个子序列中的一个目标行为是基于上一个目标行为执行之后的新环境特征预测出的)。
作为一个示例,假设第二预设条件是目标虚拟对象从指定起点位置到达了指定终点位置,对于每次训练操作,在基于初始环境特征,通过不断执行预测目标行为、执行目标行为等操作,使得目标虚拟对象从起点位置到达终点位置之后,此时可以重新获取环境特征,再基于该环境特征继续执行目标行为的预测、控制对象执行目标行为、得到游戏数据和新环境特征等操作,以控制目标虚拟对象再次从起点位置到达终点位置。该示例中,目标虚拟对象第一次达到终点位置时所得到的各目标行为即为一个子序列,重新获取的环境特征之后,目标虚拟对象再次达到终点位置时所获取的各目标行为是一个子序列。
对于重新获取环境特征的具体方式本公开实施例不做限定,可选的,重新获取的环境特征也可以是从预配置的初始环境特征中选择出的,或者从预配置的多种环境参量中选择一种环境参量,根据该环境参量计算得到环境特征作为重新获取的环境特征。
在一个行为序列包括一个或多个子序列时,计算该行为序列对应的行为奖励时,可以计算该序列中的每个子序列对应的行为奖励,具体的计算方式可以采用与前文描述的计算行为序列对应的行为奖励的方式,如对于每个子序列中的一个目标行为,可以根据该目标行为对应的游戏数据和该行为的上一个目标行为对应的游戏数据的变化,确定该行为的局部奖励,可以根据该子序列中各目标行为的局部奖励或者是该子序列中最后一个行为的游戏数据,确定该子序列的全局奖励。采用该方案,可以得到一个行为序列所包含的各个目标行为对应的局部奖励或最终奖励。
在根据一个行为序列对应的游戏数据确定出当前训练操作对应的行为奖励之后,可以根据该行为奖励确定出训练损失,对于训练损失的具体计算方式(如可以将各目标行为的局部奖励或最终奖励融合),本公开实施例不做限定,可选的,可以采用增强学习方式中任意常用的损失函数,根据行为奖励计算得到策略网络对应的训练损失,之后,则可以根据训练损失对策略网络的网络参数(即神经网络模型的模型参数)进行调整,并对调整后的网络继续进行训练,直至得到满足预设的训练结束条件,其中,训练结束条件可以根据应用需求设置,如训练结束条件可以是损失函数收敛。
本公开实施例提供的该数据处理方法,提供了一种基于强化学习的目标虚对象的评估方案,基于该方案,在需要对目标虚拟对象的待评估指标进行评估时,可以在训练策略网络的过程中,通过获取与待评估指标相关联的游戏数据对预测出的目标虚拟对象的目标行为进行行为奖励,由于该游戏数据是与目标虚拟对象所执行的目标行为相关的游戏数据,因此,将基于该行为奖励得到的训练损失来约束策略网络的训练,可以使得策略网络不断优化学习出与待评估指标更加适配的目标行为,提高训练得到的目标策略网络的预测性能,从而可以基于该目标策略网络得到目标虚拟对象更加客观、准确的评估结果,且该方法可以自动化实现,可以大大提高评估结果的获取效率,更好的满足实际应用需求。
本公开实施例中,通过策略网络所预测出的目标虚拟对象的目标行为是预配置的候选行为集合中的行为。其中,行为序列中的任一目标行为可以是通过以下方式预测得到的:
基于用于预测该目标行为的目标输入,基于该目标输入,通过策略网络预测得到候选行为集合中各个候选行为的被选取概率,基于各个候选行为的被选择概率,确定出该目标输入对应的目标行为。
其中,用于预测一个行为序列中第一个目标行为的目标输入是训练操作的初始输入即初始环境特征(用于预测第一次训练操作所对应的第一个目标行为的目标输入为目标虚拟场景的初始环境特征,其他次训练操作对应的第一个目标行为的目标输入是执行上一次训练操作对应的最后一个目标行为后的新环境特征),用于预测除第一个目标行为之外的其他行为的目标输入是控制目标虚拟对象执行上一个目标行为之后得到的新环境特征。
在实际实施时,可以根据实际应用需求,配置每次训练操作对应的行为序列的预测结束条件(第一预设条件),也就是说,每次训练操作所对应的行为序列是通过初始策略网络不断进行目标行为的预测直至满足第一预设条件,此时获取的各目标行为作为一个行为序列。比如,第一预设条件可以是预设时长,行为序列则是该预设时长内目标虚拟对象要执行的各个行为。再比如,第一预设条件可以是目标行为的数量要达到设定数量,可以基于当前训练操作对应的初始输入,将通过策略网络预测出的预设数量的目标行为作为此次训练操作对应的行为序列。
作为一可选方案,任一训练操作所对应的行为序列可以包括以下任一项:
已预测出的目标行为的数量达到设定数量时的各个目标行为;
控制目标虚拟对象进行设定局数的游戏所执行的各个目标行为;
在预设游戏时长内目标虚拟对象所执行的各个目标行为;
控制目标虚拟对象至少一次(可以预设)从目标虚拟场景中的第一位置抵达第二位置所执行的各个目标行为。
可选的,可以预先设置一个行为序列中所要包含的目标行为的数量,那么,当已预测出的目标行为的数量达到设定数量时,可以将此时获取到的预设数量的各个目标行为作为当前训练操作对应的行为序列。
可选的,一个行为序列也可以是控制目标虚拟对象进行设定局数的游戏所执行的各个目标行为,该设定局数可以是一局,也可以是多局。在实际应用中,可以根据应用需求设置一次训练操作对应的行为序列包括满足何种条件(上述第一预设条件)的各目标行为,也就是何种情况下进行一次训练损失计算,对策略网络的网络参数进行优化调整。比如,第一预设条件是预设游戏时长,那么控制目标虚拟对象进行游戏的时长每达到该预设游戏时长,该时长内预测出的各目标行为则为一个行为序列。例如,该时长为10秒,那么第一次损失计算所对应的行为序列包括第一个10秒游戏时长内的各目标行为,第二次损失计算对应的行为序列则是第2个10秒游戏时长内的各目标行为。
可选的,对于任一目标输入,在确定出各个候选行为的被选取概率之后,可以基于各候选行为的被选取概率对各候选行为进行随机采样,从各候选行为中确定出该目标输入对应的目标行为。也就是说,可以将每个候选行为的被选取概率作为该行为的采样概率,通过对各个候选行为进行随机采样选择出其中的一个候选行为作为目标行为。比如,候选行为有3个,3个候选行为的被选取概率分别为0.2、0.3和0.5,那么这3个候选行为分别有20%、30%和50%的概率被选中为目标行为。采用随机采用的方式,可以使得候选行为集合中各个候选行为都有可能被选中作为目标行为,使策略网络通过不断学习能够预测出更加适合的目标行为,可以避免直接将最大被选取概率对应的候选行为作为目标行为所导致的、有些更加合适但是被选取概率并非最大的候选行为无法被选中,从而导致最终学习出的策略网络的预测性能受到影响的问题。
作为一可选方案,对于每次训练操作,基于初始环境特征预测目标虚拟对象的行为序列,控制目标虚拟对象执行行为序列中的各目标行为,得到游戏数据和新环境特征,可以包括:
将当前次训练操作的初始环境特征作为第一次第一操作的第一输入,通过不断执行第一操作直至满足第一预设条件,得到目标虚拟对象的行为序列中的各个目标行为;其中,上述第一操作包括以下各个步骤:
根据候选行为集合中各个候选行为的属性信息,确定候选行为集合对应的行为掩码信息,该行为掩码信息用于指示候选行为集合中当前可被选择的各候选行为;
基于第一输入和行为掩码信息,通过初始策略网络从当前可被选择的各候选行为中预测出目标虚拟对象的目标行为,控制目标虚拟对象在目标虚拟场景中执行该目标行为,得到对应的新环境特征和游戏数据,将该新环境特征作为下一次第一操作的第一输入。
本公开实施例中,候选行为集合是目标虚拟对象在游戏过程中可以执行的各种行为的行为集合,该集合中的候选行为通常会具备相应的属性配置(属性信息),其中,有的候选行为的执行可能会具有限制条件,或者有些候选行为之间可能约束关系,也就是说,在有些情况下有的候选行为是不可以执行的。考虑到该情况,本公开的该可选方案中,在基于当前的环境特征,通过策略网络预测目标虚拟对象当前的目标行为时,为了使得采用策略网络所预测出的目标行为更加符合实际情况,会根据各个候选行为的属性信息,生成策略网络用于预测目标行为时的预测指导信息,即上述行为掩码信息(action mask),基于该掩码信息,策略网络可以知晓候选行为集合中哪些行为可以被选择,哪些不能被选择,从而可以保证确定出的目标行为是可以被选择的候选行为。
其中,对于行为掩码信息的具体形式本公开实施例不做限定,作为一可选方案,该行为掩码信息可以是一个编码向量,该向量的长度的等于候选行为集合中候选行为的总数量,该向量中每个位置的值对应一个候选行为,如果一个候选行为当前可以被选择,该候选行为对应的值可以为1,如果该候选行为当前不能被选择,对应的值可以为0,因此,该向量则为只包含0和1两种数值的向量,策略网络根据该编码向量可知值为1的各候选行为可以被选择。
可选的,上述基于第一输入和行为掩码信息,通过初始策略网络从当前可被选择的候选行为中预测出目标虚拟对象的目标行为,可以包括:
基于第一输入和行为掩码信息,通过初始策略网络预测得到当前可被选择的各候选行为的被选择概率;
基于当前可被选择的各候选行为的被选择概率,通过随机采样从当前可被选择的各候选行为中确定出目标行为。
为了提高模型(即策略网络)的训练效率,本公开的可选方案中,初始策略网络包括第一策略网络和第二策略网络,目标策略网络为满足训练结束条件时的第一策略网络;
上述基于初始输入,通过初始策略网络预测目标虚拟对象的行为序列,包括:基于初始输入,通过第二策略网络预测目标虚拟对象的行为序列;
根据训练损失调整初始策略网络的网络参数,包括:根据训练损失对第一策略网络的网络参数进行调整。
可选的,本公开实施例中的训练操作包括样本获取操作和网络参数更新操作,其中,一次样本数据获取操作包括:
重复执行第二操作直至满足第一预设条件,基于满足第一预设条件时得到的各目标行为得到目标虚拟对象的一个行为序列,并将该行为序列中各目标行为对应的游戏数据确定该行为序列对应的行为奖励,该第二操作包括:
基于目标输入,通过第二策略网络预测目标虚拟对象的目标行为,控制目标虚拟对象执行该目标行为,得到目标虚拟对象执行该目标行为之后的游戏数据以及目标虚拟场景的新环境特征;
一次网络参数更新操作包括:根据目标虚拟对象的一个行为序列对应的行为奖励,确定训练损失,根据该训练损失对第一策略网络的网络参数进行调整。
也就是说,策略网络可以有两个,其中,第二策略网络用于数据采样,即基于第二策略网络与环境进行交互,获取到用于计算训练损失的数据(基于环境特征预测目标行为,控制目标虚拟对象执行目标行为,得到游戏数据和新环境特征,基于新环境特征重复预测目标行为、获取游戏数据和新环境特征),第一策略网络是最终要训练得到的目标策略网络,可以通俗理解为第一策略网络看着第二策略网络与环境的交互进行学习。采用该方案,数据采样的操作可以一直执行,而无需等待策略网络的参数更新之后才能继续执行,因为如果要训练的策略网络和进行数据采样的策略网络是同一个,每次进行策略网络的网络参数更新时,数据采样都要等待参数更新完成后才能继续,而上述采样两个策略网络的方案,训练损失的计算以及基于训练损失更新的是第一策略网络的网络参数的执行,不影响基于第二策略网络进行的数据采样操作,从而可以避免由于数据采样耗时较长导致的训练效率低的问题,提高了训练效率。
可选的,为了进一步提高训练效果,该方法还包括:在满足设定条件时,采用第一策略网络的网络参数对第二策略网络的网络参数进行更新。
作为一种实施方式,第一策略网络和第二策略网络的网络参数的参数量是相同的,可选的,这两个策略网络的初始化网络参数可以完全相同。每次训练操作计算得到训练损失之后,都可以即时对第一策略网络的网络参数进行调整更新,对于第二策略网络而言,该网络不是最终要训练得到的目标策略网络,第二策略网络的网络参数的更新时机与第一策略网络可以不同步,可以在满足设定条件时再更新,且该更新可以直接将第一策略网络的当前参数作为第二策略网络更新后的网络参数。其中,设定条件可以根据实际应用需求配置,比如,可以是按照预设的时间周期进行更新,也可以是第一策略网络的网络参数每次更新完成后,都将第一策略网络的最新网络参数作为第二策略网络新的网络参数,也可以是每当第一策略网络的网络参数进行了至少两次更新时,对第二策略网络进行一次参数更新。采用该方案,可以使得第二策略网络也能够采样不断优化后的网络参数进行数据采样,提高网络预测的效果。
可选的,在采用第二策略网络预测目标虚拟对象的目标行为的方案中,目标虚拟对象的行为序列中的任一目标行为可以是通过以下方式确定出的:
根据该目标行为的目标输入,通过第二策略网络预测候选行为集合中各候选行为的第二被选择概率,基于各候选行为的第二被选择概率对各候选行为进行随机采样,从各候选行为中确定出该目标输入对应的目标行为。
可选的,一次网络参数更新操作还可以包括:
对于一个行为序列所对应的每一目标输入,基于该目标输入,通过第一策略网络预测该目标输入对应的各个候选行为的第一被选择概率;
上述根据目标虚拟对象的一个行为序列对应的行为奖励,确定训练损失,包括:根据一个行为序列中各目标行为对应的第一被选择概率、第二被选择概率以及行为奖励,确定训练损失。
可选的,根据行为序列中各目标行为对应的第一被选择概率、第二被选择概率以及行为奖励,确定训练损失,可以包括:
对于行为序列中的每个目标行为,根据该目标行为对应第一被选择概率与第二被选择概率,确定第一策略网络和所述第二策略网络对于该目标行为的预测偏差;
根据各目标行为对应的行为奖励和预测偏差,确定训练损失确定训练损失。
可选的,对于一个目标行为,可以将该行为对应的第一被选择概率与第二被选择概率的比值作为该目标行为对应的预测偏差。
采用上述可选方案,可以约束在采用不同策略网络进行数据采样和模型训练时,两个策略网络所预测出的候选行为的概率分布(即各个候选行为的被选择概率)相差不会过大,从而更好的保障了通过第二策略网络所采样出的数据是能够用于第一策略网络的训练学习中的,在提高了训练效率的同时,保证了训练效果。
可选的,根据行为序列中各目标行为对应的行为奖励和预测偏差,确定训练损失可以包括:
对于每个目标行为,行为序列中该目标行为之后的各目标行为对应的行为奖励,确定该目标行为的行为优势,并根据该目标行为对应的预测偏差,对该目标行为的行为优势进行修正;
基于该行为序列中至少部分目标行为对应的修正后的行为优势,确定训练损失。
可选的,对于任一目标行为,可以根据该目标行为对应的预测偏差对该目标行为对应的行为优势进行修正,得到第一行为优势;若该目标行为对应的预测偏差大于第一设定值,根据该第一设定值对该目标行为对应的行为优势进行修正,得到第二行为优势;将第一行为优势和第二行为优势中的较小优势确定为该目标行为对应的修正后的行为优势;若该目标行为对应的预测偏差小于第二设定值,根据该第二设定值对该目标行为对应的行为优势进行修正,得到第三行为优势;将第一行为优势和第三行为优势中的较小优势确定为该目标行为对应的修正后的行为优势;
若该目标行为对应的预测偏差不小于第二设定值且不大于第一设定值,则将第一行为优势确定为该目标行为对应的修正后的行为优势。
其中,一个目标行为对应的行为奖励,反映了该目标行为的当前产生的动作效果,即短时效果,而一个目标行为的行为优势表征了该目标行为的长期效果,更能够代表目标行为的优劣。由于该目标行为被目标虚拟对象执行之后,会对目标虚拟场景的环境状态产生影响,也就会对该目标行为之后的目标行为的预测均有影响,因此,可以根据一个目标行为之后的各个目标行为的行为奖励来确定该目标行为的行为优势。可选的,可以将一个目标行为之后的各目标行为的行为奖励之和作为该目标行为的行为优势。在实际应用中,对于行为序列中的任一目标行为a,该行为被目标虚拟对象执行之后,会产生新的环境特征,而该环境特征会直接影响下一目标行为b的选择,而行为b的下一目标行为c的选择是由行为b直接影响,而行为a对行为c产生的是间接影响,可以看出,一个目标行为与其之后的另一目标行为的执行顺序相差越大,该目标行为对该后续行为的影响力越小,考虑到该因素,为了更加准确地确定出每个目标行为的行为优势。
作为另一可选方案,对于行为序列中的任一目标行为,可以根据该目标行为之后的各目标行为与该目标行为之间的执行顺序之差,确定该目标行为之后的各目标行为的权重,根据该各目标行为对应的权重对该各目标行为的行为奖励进行融合,得到该目标行为的行为优势。其中,该目标行为之后的任一目标行为对应的权重与该任一目标行为对应的执行顺序之差成负相关,即执行顺序相差越大,权重越小。
其中,上述第一设定值和第二设定值均为预设值,可以是经验值或实验值,可选的,目标行为的预测偏差可以是目标行为对应的第一被选择概率和第二被选择概率的比值,第一设定值为大于1的正数,第二设定值为小于1的正数,采用上述可选方案,在第一被选择概率与第二被选择概率的偏差太大时,可以对目标行为的行为优势进行调小,以限制网络参数的更新幅度,约束策略网络从偏差过大的数据所能够学习的经验。
在通过不断的数据采样、网络参数的调整优化,得到满足训练结束条件的目标策略网络之后,则可以基于该目标策略网络来获得目标虚拟对象对应于待评估指标的评估结果。
可选的,基于目标策略网络,确定目标虚拟对象的待评估指标的评估结果,可以包括:基于得到目标策略网络时已获取的目标虚拟对象对应于待评估指标的游戏数据,确定目标虚拟对象对应于该评估指标的评估结果。
由于目标策略网络是经过多次训练得到的能够很好的预测出目标虚拟对象更加适合该对象当前所要执行的目标行为的网络,而训练过程中获取的游戏数据是能够反映目标虚拟对象所执行的目标行为的优劣的,因此,通过对训练过程中所获取的游戏数据进行统计分析,是能够得到目标虚拟对象对应于待评估指标的评估结果的。比如,待评估指标是伤害能力,游戏数据可以包括目标虚拟对象执行网络预测的目标行为之后的伤害值,那么根据对训练过程中获取的大量游戏数据是能够知晓该对象的可产生的最大伤害值的,可以将该最大伤害值作为评估结果。再比如,待评估指标是支援能力,游戏数据可以包括目标虚拟对象从一个指定位置到达另一个指定位置的时长,可以将训练过程中最短的时长作为评估结果。
作为另一可选方案,基于目标策略网络,得到目标虚拟对象的待评估指标的评估结果,可以包括:
获取评估数据集,评估数据集中包括目标虚拟场景的样本环境特征;
将样本环境特征作为第一次第三操作的第一环境特征,通过目标策略网络重复执行第三操作直至满足第三预设条件;其中,该第三操作包括:基于第一环境特征,通过目标预测网络预测目标虚拟对象的待执行行为;控制目标虚拟对象执待执行行为,得到目标虚拟对象对应于待评估指标的游戏数据,以及执行待执行行为之后的目标虚拟场景的第二环境特征,将该第二环境特征作为下一次操作时所基于的第一环境特征;
根据满足第三预设条件时获取到的游戏数据,确定目标虚拟对象的待评估指标的评估结果。
该方案中,在得到目标策略网络之后,可以基于评估数据集来获取目标虚拟对象对应于待评估指标的游戏数据,其中,评估数据集中的样本环境特征可以是一个也可以是多个,如果是多个,可以基于每个样本环境特征分别执行上述第三操作直至满足第三预设条件,并可以基于各个样本环境特征对应的获取到的游戏数据,得到评估结果。可以理解的是,该方法中的待执行行为也就是通过目标策略网络预测出的目标行为,比如,将环境特征输入到该策略网络中,可以得到各个候选行为的被选择概率,可以将被选概率中最大概率对应的候选行为作为待执行行为,通过控制目标虚拟对象在虚拟场景中执行该行为可以得到对应的新环境特征和游戏数据,基于新的环境特征可以再次执行上述操作。
其中,第三预设条件可以根据需求配置,比如,满足第三预设条件可以是第三操作的执行次数达到设定次数,或者是游戏对局次数达到设定次数,或者是游戏时长达到设定时长等等。之后,可以根据评估数据集对应的游戏数据统计得到目标虚拟对象对应于待评估指标的评估结果。
本公开实施例提供的方法,能够大大缩短虚拟对象的评估时长,且评估结果更加客观。为了验证该方法的有效性,对于某一游戏应用中的全量应用在单个游戏场景下的能力评估进行了测试,采样传统人工的评估方式需要多天才能够完成评估,且评估结果不可以避免地存在由于人为原因的误差,而采样本公开的该方法,可以在几个小时内即可完成评估,且由于无需人工参与,评估质量具有更好的保障。
本公开实施例还提供了一种数据处理方法,如图2所示,该方法可以包括以下步骤:
步骤S210:获取第一虚拟对象所处的第一虚拟场景的环境特征;
步骤S220:基于第一虚拟场景的环境特征,通过第一虚拟场景对应的目标策略网络,预测第一虚拟对象的目标行为;其中,该目标策略网络是目标策略网络是将第一虚拟对象作为待评估目标虚拟对象,将第一虚拟场景作为目标虚拟场景,采用本公开图1中所示的方法的任一可选实施例中的方法训练得到的目标策略网络;
步骤S230:控制第一虚拟对象执行预测出的目标行为,或者基于目标行为向第一虚拟对象的操作者推荐游戏策略。
本公开提供的该方法,可以基于前文中任一可选实施例中的方法训练得到第一虚拟对象对应于上述第一虚拟场景的目标策略网络,也就是将第一虚拟对象作为待评估的目标虚拟对象,将第一虚拟场景作为目标虚拟场景,可以通过获取该场景中的初始环境特征对初始策略网络进行不断的训练,得到满足训练条件的目标策略网络,之后,可以基于该目标策略网络不断预测该第一虚拟对象在第一虚拟场景中时的可以执行的目标行为,并可以基于预测出的行为控制该虚拟对象进行游戏(比如在游戏托管场景中,可以由游戏服务器进行目标行为预测,并基于预测出的行为操控虚拟对象),或者,也可以基于预测出的目标行为向玩家提供相应的游戏策略,如通过游戏操作提示信息向玩家提供操作指导,对于操作提示信息的具体形式本公开实施例不做限定,可以是文字、图片、语音等提示信息。
基于本公开提供的该方法,还可以为游戏的新手玩家生成游戏中虚拟对象的玩法指导视频,如对于上述第一虚拟对象,可以基于目标策略网络预测出该虚拟对象在上述第一虚拟场景中的一局游戏中的目标行为序列,并基于目标行为序列生成该局游戏的玩法视频,可以将该玩法视频作为指导视频提供给游戏玩家作为玩法参考。
本公开实施例提供的数据处理方法,可以应用于任何需要对虚拟对象的虚拟能力进行评估的应用场景中,可以包括但不限于对游戏应用中的英雄的能力强度进行评估的场景。为了更好的理解和说明本公开实施例提供的方法,下面以将本公开实施例提供的方法应用于评估MOBA游戏中英雄强度的评估为例,对本申请的可选实施例进行说明。该方法可以服务于游戏策划人员,游戏测试人员等,可以帮助相关人员对于MOBA英雄强度的伤害、支援、承伤等多种场景的特性指标(待评估指标)进行及时和准确的评估。
本场景实施例中,待评估的目标虚拟对象可以是游戏的任一英雄。图3中示出了本申请实施例提供的数据处理方法的一种应用场景的示意图。如图3所示,该应用场景中包括终端设备11、终端设备12、测试服务器21和游戏服务器22。其中,终端设备11上可以运行有目标游戏应用的运营管理客户端的终端设备(可称为测试终端),运营管理客户端可以面向目标游戏应用的管理人员(如研发人员、策划人员或者其他具有操作权限的后台操作人员),管理人员通过该运营管理客户端可以触发针对待评估英雄的评估指令并发送给测试服务器21,测试服务器21可以为目标游戏应用的管理服务器,在收到终端设备11发送的评估指令后,可以对待评估英雄进行评估,并可以将评估结果通过终端设备11提供给管理人员。终端设备12可以是游戏应用的任一玩家终端,游戏服务器22是与玩家终端通信、为玩家游戏服务的服务器。测试服务器21和游戏服务器22可以是同一服务器,可以是不同的服务器。
本场景实施例中,策略网络的训练过程可以由测试服务器21执行,在得到训练好的目标策略网络之后,可以将目标策略网络部署到游戏服务器22中,游戏服务器21可以基于该目标策略网络为游戏玩家推荐游戏策略,如基于玩家所控制的虚拟对象(即玩家的游戏角色)当前所处的游戏环境特征,通过该游戏角色对应的目标策略网络预测该角色当前的目标行为,并将该行为推荐给游戏玩家。下面以目标虚拟对象是MOBA游戏中新研发出的英雄A为例进行说明。
图4和图5示出了本场景实施例中提供的一种数据处理方法的流程示意图,其中,图4中的用户侧为图3中的终端设备11,如游戏测试人员的测试终端,模型服务侧可以是图3中的测试服务器。图5示出了另一可选的实施流程,下面结合图3至图5对该数据处理方法的可选实施方式进行说明。如图4和图5所示,该流程可以包括以下步骤:
步骤S11:在测试终端触发训练任务的生成,测试终端生成训练任务并发送给测试服务器。
如图4中所示的用户侧的步骤,用户(如测试人员)可以在前端页面(如图3中运营管理客户端的用户界面)选择游戏版本、待测试的英雄(目标虚拟对象,如英雄A)以及测试场景(目标虚拟场景),发起测试请求(英雄强度评估触发操作),测试终端接收到该请求之后,生成对应的训练任务推送至测试服务器21,测试服务器21将接收到的测试任务添加到任务队列中,该任务队列用于存储接收到的各个训练任务,也就是虚拟对象的评估任务。
在实际应用中,目标游戏应用通常可能会具有多个不同的应用版本,在需要对游戏中的英雄的强度进行评估时,可以将需要评估的游戏版本告知测试服务器,可选的,如果未告知服务器评估的是哪个游戏版本,可以根据预配置的策略确定要评估的版本,如默认是最新版本。每个训练任务所针对的待测试的英雄可以是一个,也可以多个,测试场景则用于告知目标虚拟场景具体是哪个游戏场景。
步骤S21:测试服务器确定训练任务对应的待评估英雄、测试场景和游戏版本信息。
步骤S22:获取测试场景的环境特征,基于测试场景的环境特征训练得到英雄A对应于该测试场景T的目标策略网络。
如图4中所示的模型服务侧的流程,测试服务器21可以按照预设时间间隔或者实时查看其任务队列中是否存在训练任务,如果存在,则执行训练任务,具体的,通过解析任务可以获知待评估的英雄、测试场景以及游戏版本,根据解析结果,服务器可以基于该测试场景训练得到该游戏版本中每个待评估英雄各自对应于该测试场景的目标策略网络(图4中所示的完成训练)。
图6示出了本场景实施例中的一种策略网络的训练原理示意图,如图6所示,智能体(agent)代表待评估英雄,行为决策生成表示基于初始策略网络预测英雄要执行的目标行为,游戏ENV代表测试场景,环境状态s为测试场景的环境特征,奖励r则是初始策略网络预测出的目标行为的行为奖励。策略网络的训练原理如下:
获取测试场景的当前环境状态s(环境特征),基于该当前环境状态s,通过行为决策生成下一个需要执行的行为a(目标行为),将该行为a传递给游戏ENV(即基于该行为a与环境进行交互,也就是控制英雄执行该行为a),agent会对行为a的执行结果进行评估得到正向或负向的奖励r,行为a被执行后,也将生成得到新的环境状态s’,上述流程即为其中一个完整的时间步骤(time step),新的环境状态s’将作为下一个时间步骤的当前环境状态,重复上述流程。在训练过程中会采集每一个时间步骤的(s,a,r,s’),用于进行模型训练。最后得到可以进行最优决策的英雄特性AI模型策略(目标策略网络),可以用于预测得到每个英雄最优的评估结果。
由上述流程可以看出,训练过程中涉及到环境状态(即环境特征)的获取、目标行为的预测、行为奖励的生成、以及用于更新模型参数(网络参数)的训练损失的计算这几个部分,下面分别对这几个部分进行说明。
对于环境特征的生成,在真实对局游戏中,环境状态包含游戏对局中所有英雄、小兵、野怪的数值信息和位置信息等。但在实际评估的特性场景(与待评估指标关联的测试场景)中,关注的特征也会有不同侧重。以清线场景为例,该场景希望评估英雄对于一波兵线的击杀速度,那我们关注的特征就主要包含当前线上相关的测试英雄(即待评估英雄),我方小兵(例如有三个),敌方小兵(例如有三个)的数值信息(对象属性信息)和位置信息,也就是说,该示例场景中的各关联虚拟对象包括待评估英雄、与该英雄属于同一阵营的三个小兵、以及与该英雄属于不同阵营的三个小兵,不同类型的虚拟对象的数值信息可以相同,也可以不同。
其中,数值信息用于提取得到对象的向量(vector)特征(也就是特征向量),可选的,数值信息可以包括包含英雄蓝量、英雄的技能CD(Cool Down,技能冷却时间)、小兵血量、小兵护甲的点数、小兵魔抗(魔法抗性)的点数等各个维度的数值信息。
作为一个示例,图7示出来本公开实施例提供的一种可选的确定虚拟对象的对象特征的示意图,如图7所示,待评估英雄的对象特征(英雄vector特征)可以基于该英雄的蓝量、各个技能的CD数值以及其他维度的数值信息(图中的省略号)生成,对于小兵而言,小兵的对象特征可以基于小兵的血量的数值、护甲的点数、魔抗的点数以及其他属性的数值信息生成。
上述各虚拟对象(英雄和小兵)在场景中的位置信息可以提取为类图像(image-like)特征,该特征即为各关联虚拟对象的位置分布特征。作为一可选方案,可以以测试英雄为中心,生成预设尺寸的网格图像,例如,以英雄所在的位置为中心网格,指定单个网格长度最小分辨率(如设定为500),指定每一边网格数目(如设定为35),就可以得到一个35*35的网格图像,对于敌方阵营(即敌方小兵所属的阵营),存在敌方小兵的网格标1,不存在敌方小兵的网格标0,就可以得到一个35*35大小的类图像特征(也可以称为特征图),该类图像特征即为敌方阵营的虚拟对象的位置分布特征,基于同样的策略可以得到我方小兵和英雄的类图像特征。
作为一个示例,如图8所示,图中左侧的大矩形表示测试场景中的一帧游戏画面,其中,B1、B2和B3为敌方三个小兵在该帧图像中的位置,图中右侧的矩形则为敌方小兵的类图像特征的示意图,其中,三个箭头所指的该类图像特征中的位置为1,表示这三个位置有小兵存在。
由于位置分布特征(如上述类图像特征)是根据每个游戏阵营中虚拟对象之间的相对位置分布确定的,因此,可以更好的反映游戏中各阵营中所有对象的全局分布情况以及对象之间的相对位置关系,因此,相比于直接计算每个对象各自的位置特征,通过类图像特征可以更好的指导测试英雄在整体行为的决策,而向量(vector)特征(对象特征)是基于对象的具体属性信息得到的,各个对象的向量特征可以作为策略网络预测行为所采用的具体参数值,可以指导策略网络做出具体决策的预测,因此,位置分布特征和对象的向量特征可以同时从当前游戏环境的全局以及环境中所关联的各对象的具体参数值,预测出于当前环境状态更加符合的目标行为。
在实际实施时,测试场景的初始环境特征具体是该场景中何种情况下的环境状态,本公开实施例不做限定,可选的,可以是测试场景的一局游戏开启时的环境状态。确定测试环境的初始环境状态和控制测试英雄执行了目标动作后的新环境状态的方式相同。
在得到测试场景的初始环境状态之后,则可以基于该初始环境状态对策略网络进行训练学习,即预测目标行为、控制英雄执行目标行为,计算行为奖励和新环境状态、以及计算训练损失、更新网络参数等步骤。
本场景实施例中,初始策略网络包括第一策略网络(称为策略θ)和第二策略网络(称为策略θk),训练的目的是和更新得到最优的策略θ。本公开实施例提供的方案实施时,不直接使策略θ与环境交互,而是基于策略θk进行数据采样,然后多次更新需要进行训练的策略θ,有效的解决了更新策略前需要等待数据采样时间过长的问题。策略θ和策略θk都可以基于输入到网络中的环境特征,预测出测试英雄所对应的候选行为集合中各个候选行为的被选择概率,策略θ预测的概率称为第一被选择概率,策略θk预测的概率称为第一被选择概率第二被选择概率。
可选的,本公开实施例中的目标函数(即训练损失函数)可以采用如下函数
其中,pθ(at|st)表示在t时刻环境状态为st时通过策略网络θ预测出的执行行为at的概率(第一被选择概率),表示在t时刻环境状态为st时通过策略网络θk预测出的执行行为at的概率(第二被选择概率),执行行为at为环境状态为st时所选择出的目标行为。
为裁剪函数,其中,ε为超参数,取值为预设值,1-ε和1+ε分别为裁剪函数的取值下限(第二设定值)和取值上限(第一设定值),其中,如果的值小于1-ε,裁剪函数的值为1-ε,如果/>的值大于1+ε,裁剪函数的值为1+ε,如果/>值在上限和下限之间,裁剪函数的值为/>通过裁剪函数可以将值修正到1-ε和1+ε之间,避免pθ(at|st)和/>的偏差太大,进而约束策略网络θ的更新幅度。
其中,代表优势函数,为t时刻环境状态为st时执行行为at的行为优势,当/>时,代表是正向的奖励(reward),就会增加对应行为出现的可能性pθ(at|st),反之则会减少。可选的,优势函数/>可以采用下述公式:
其中,t′表示行为序列中的第t′个目标行为,即目标行为的执行顺序,也可以理解为t′时刻,rt′表示在t′时刻获得的真实奖励(即第t′个目标行为对应的行为奖励),γ表示衰减系数(是超参数),Vφ(st)可以理解为基准奖励,Vφ(st)可以是一个预设经验值,也可以是通过一个其他的神经网络(可称为评价网络)预测得到,其中,对于每个目标行为而言,该目标行为对应的基准奖励,可以根据该目标行为对应的目标输入(即用于预测该目标行为是所依据的环境特征)通过该评价网络预测得到,其中,评价网络也是需要进行训练的,其训练损失可以基于各目标行为对应的行为优势确定,可选的,评价网络的损失函数可以表示如下:
其中,T可以为预设值,在获取到的目标行为的数量达到T时,可以计算一次训练损失,并基于该损失对评价网络的网络参数进行调整。
由上述优势函数的公式可以看出,在确定出行为序列中各目标行为对应的行为奖励之后,可以根据一个目标行为之后的各目标行为对应的行为奖励确定该目标行为的行为优势,对于第t个目标行为,γt′-t可以理解为第t′个目标行为对应的权重。
可选的,在采用上述优势函数计算每个目标行为对应的行为优势时,如果行为序列对应的行为奖励采用即时奖励,第一策略网络对应的训练损失可以将行为序列中除最后一个目标行为之外的各目标行为对应的第一被选择概率、第二被选择概率以及行为优势代入策略网络对应的损失函数公式计算得到,或者若行为序列对应的行为奖励是采用全局奖励,可以是采用第一个目标行为对应的第一被选择概率、第二被选择概率以及行为优势代入策略网络对应的损失函数公式计算得到。
下面先对通过策略θk做出行为决策(预测目标行为)的过程进行说明。
行为决策可以覆盖各个测试场景中涉及的游戏行为,可以包含但不限于移动、技能释放、空行为等等,对于候选行为的划分粒度本公开实施例不做限定,也可以先将候选行为进行粗粒度的划分,再对可以进一步细化的候选行为进行进一步的细粒度划分。比如,上述的移动、技能释放、空行为等行为可以作为策略网络的第一预测标签(粗粒度标签),对于其中的技能释放这一行为,又可以根据技能的具体释放参数(如技能的释放角度、位置等)进一步细分为多个行为,这些进一步细分的行为可以作为策略网络的第二预测标签(细粒度标签)。
以对单敌方英雄攻击的伤害场景(该场景可以用于评估英雄的伤害能力)为例,图9中示出了一种候选行为集合的示意图,如图9所示,第一预测标签有7个,即粗粒度划分的候选行为有7个,即空行为、移动行为、平A行为(普通攻击)、以及四种技能的技能释放行为,其中,对于每个技能而言,技能释放行为又可以根据技能的具体释放参数分为多个行为,具体的划分策略本公开实施例不做限定,例如,对于与释放方向有关的技能,可以根据释放角度的不同分为多个行为。如图9所示的示例中,假设4个技能的释放行为都可以细分为3个行为,如1技能可以具体包括行为11、行为12和行为12,那么第二预测标签则有12个,候选行为集合中的候选行为的实际数量则为15个,即4个技能对应的12个细分行为以及除4个技能之外的空行为、移动以及平A行为。
在实际实施时,因为开放式的技能释放可能由于技能CD等原因出现释放无法成功的情况,会干扰模型训练。在此基础上,本公开实施例引入action mask机制,在预测英雄当前的目标行为时,对当前无法进行的行为作出屏蔽,即每次预测目标行为时,生成行为掩码信息并作为预测指导信息。
作为一个示例,假定可用技能(候选行为)为5个,action mask机制,其中一个技能是之前预测出的目标行为且距离该行为的执行时间与当前时间的时间差小于该技能的冷却时间,那么当前该技能无法再次释放,那么则可以生成如图10中所示的各技能的技能可用状态,生成行为掩码信息(图10中的编码),其中,第一个技能不能使用,可以编码为0或其他指示值(图10中的-INF,即负无穷),其他可以使用的技能对应的指示值为1,那么策略网络在基于当前的环境状态预测各候选行为的被选择概率(图10中的概率分布)时,第一个技能对应的概率为0,该技能不会被采样为目标行为。其中,图10中的softmax为策略网络的输出层即softmax函数,用于将策略网络的隐藏层的输入转换为归一化后的概率值。
需要说明的是,图10中所示的可使用的4个虚拟技能的被选择概率都是0.25只是一个示例,在实际实施时,softmax的具体输入结果是由策略网络基于当前的环境状态和当前的行为掩码信息预测得到的。
在训练过程中,通过策略θk预测出各候选行为的概率分布之后,可以基于各候选行为的被选择概率进行随机采样,从候选行为中确定出目标行为,并控制测试英雄在测试场景中执行该目标行为,基于执行该目标行为对应的游戏数据可以计算得到该行为对应的行为奖励,还可以得到执行该行为之后测试环境的新的环境特征。
下面对本场景实施例中提供的几种可选的奖励机制进行说明。
对于不同的待评估指标,可以采用不同的测试场景,即测试场景可以是与待评估指标关联的,对于不同的测试场景,可以采用不同的奖励机制,相应的,在训练过程中要记录的游戏数据也会有所不同。本公开实施例中,提供了全局奖励和即时奖励(局部奖励)两种奖励机制。
作为一种可选的全局奖励机制,可以设定奖励系数(如100),以ticks代表当前游戏所进行的帧数(例如每15帧为1秒),可以在单局游戏最后一帧进行最终奖励(全局奖励),奖励与ticks负相关,该奖励可以引导测试英雄尽快完成当局游戏,可选的,可以通过下述公式(1)计算全局奖励:
对于该种奖励机制,需要记录的游戏数据是一局游戏结束所进行的总帧数,一局游戏对应的各目标行为是一个子序列,一个行为序列可以包括一个或多个子序列中,一个子序列中最后一个目标行为的行为奖励为全局奖励,其他目标行为的行为奖励可以直接置0。
但是在某些特性场景中游戏时间可能固定,导致最终奖励无法体现差异,则需要采用每一帧即时奖励对于训练策略进行引导。比如,以持续伤害场景为例,希望评估英雄在固定10秒时间(此时,每10秒内预测得到的各目标行为为一个子序列)对于陪练木偶的伤害能力,则需要应用即时奖励机制。可选的,可以通过下述公式(2)计算即时奖励:
reward=k1*(d′-d) (2)
其中,d表示上一帧英雄造成的伤害总值(即执行上一个目标行为所产生的总伤害值),d′表示当前帧英雄造成的伤害总值(即执行当前预测出的目标行为所产生的总伤害值),k1为奖励系数,如可以设定为0.0001,该奖励机制中,会基于每两帧之间造成的伤害差值作为即时奖励,需要记录的游戏数据是执行每个目标行为之后对应的伤害总值(即一个目标行为与该目标行为之前的各目标行为的累计伤害值)。
有些游戏场景中,也可能会综合应用最终奖励和即时奖励作为复合奖励。比如在支援场景,需要评估英雄从地图上一个指定位置抵达另一个指定位置的速度(即待评估指标为英雄的支援能力,此时一个子序列为英雄从一个指定位置抵达另一个指定位置期间的各目标行为)。一方面,可以基于上述公式(1)作为最终奖励引导英雄尽快抵达,另一方面,可以设定奖励系数k2,如奖励系数为0.0001,定义上一帧距离终点的距离为s,当前帧距离终点的距离为s’,可以基于两帧之间距离终点的距离差值作为即时奖励,如公式(3)所示,基于这两种奖励,可以引导测试英雄在游戏过程中向正确方向前行,加速训练过程。
reward=k2*(s′-s) (3)
对于公式(3)所示的即时奖励而言,需要记录的游戏数据则包括每次执行目标行为之后,英雄距离指定终点的距离。
在实际应用的过程中,可以针对各个游戏场景的不同灵活调整最终奖励和即时奖励的奖励系数。
下面结合本公开实施例中提供的上述环境特征生成方式、以及策略决策机制对策略θ的训练流程进行进一步说明,假设要评估英雄的伤害能力,测试场景为打木偶场景,采用公式(2)所示的即时奖励机制,训练流程如下:
①将测试场景的初始环境状态作为当前环境状态s分别输入到策略θ和策略θk中,策略θ输出各个候选行为的第一被选择概率,策略θk输出各个候选行为的第二被选择概率。
②将策略θk输出的各个候选行为的第二被选择概率作为采样概率,对各个候选行为进行随机采样,选择出当前环境状态s对应的目标行为at,目标行为at的第一被选择概率和第二被选择概率分别为pθ(at|st)和
③控制英雄执行目标行为at,获取执行该行为之后的新环境状态s’,记录当前对陪练木偶的伤害总值,通过公式(2)计算得到目标行为at对应的行为奖励,第一次预测出的目标行为的行为奖励计算时,公式(2)中的d为0。
④将新环境状态s’作为步骤①中新的当前环境状态s,重复执行步骤1至④。
⑤判断是否满足第一预设条件,假设第一预设条件是行为序列中目标行为的数量达到设定数量,则可以通过将这些目标行为(一个行为序列)所对应的pθ(at|st)和以及各个目标行为的行为奖励,代入优势函数的计算公式和策略网络对应的目标函数的计算公式,得到该行为序列对应的训练损失,并基于该训练损失对策略θ的网络参数进行调整。
需要说明的是,在实际实施时,上述步骤①至④的流程中基于策略θk预测目标行为、计算行为奖励以及更新环境特征的步骤可以是一直在进行的,每当满足第一预设条件(如预测出的目标行为的数量达到设定数量),可以基于步骤①至④获取到的相关数据计算训练损失,对策略θ进行一次网络参数的更新。可选的,在对策略θ的参数每个进行更新后,可以将更新后的网络参数更新为策略θk的网络参数,步骤①至④的流程可以基于更新后的策略继续执行。
通过不断的执行上述训练流程,可以将损失函数收敛时的策略θ作为训练好的目标策略网络,完成模型训练。
在得到训练好的目标策略网络之后,如图5所示的步骤S23和步骤S24,测试服务器21可以基于此时得到的目标策略网络确定待评估英雄A的评估结果,并将评估结果提供给测试人员。
上述训练流程是以即时奖励机制为例进行的说明,下面再以前文中所提到的目标游戏场景是支援场景,行为奖励包括即时奖励和全局奖励为例进行说明。该示例中,支援场景可以用于评估英雄从目标虚拟场景中的指定位置A到指定位置B的速度,假设一个行为序列包括N次从位置A到位置B所执行的各个目标行为,每次从位置A到位置B的各目标行为则为一个该行为序列中的一个子序列,可选的,对于每个子序列,全局奖励可以根据目标虚拟对象从位置A到位置B的时长或者游戏总帧数(时长和帧数有对应关系),通过上述公式(1)计算得到,即时奖励可以根据上述公式(3)计算得到,对于任一目标行为,公式(3)中s′-s可以是执行该目标行为之后英雄与位置B的距离,与执行该目标之前英雄与位置B的距离(执行该目标行为的上一目标行为之后英雄与位置B的距离)的差值,对于第一个目标行为的即时奖励,s′-s可以是总距离(即A到B的距离)与控制英雄执行该行为之后英雄与位置B的距离的差值。
对于支援场景,在训练过程中,可以通过策略网络θk根据场景的初始环境状态S1预测目标行为a1,控制英雄执行该行为a1,获取到下一环境状态S2以及此时英雄与终点(位置B)的距离s1′,此时的距离s是A到B的总距离,根据公式(3)可以计算得到a1的即时奖励r1。再将环境状态S2作为策略网络θk的输入,重复上述过程,可以得到环境状态S2对应的目标行为a2,英雄与终点的距离s2′和更新后的环境状态S3,根据s2′和s1′可以计算得到a2的即时奖励r2。通过不断重复上述过程,当控制英雄到达终点B之后,可以采用公式(1)计算出全局奖励r。当到达终点B之后,可以重新获取初环境状态,将该特征作为新的S1,再次重复上述过程得到下一个子序列及其对应的游戏数据,计算各目标行为的即时奖励以及子序列的全局奖励等过程。
假设每计算一次训练损失以对策略网络θ进行网络参数的更新所设定的样本数量(即batchsize,也就是一个行为序列中的目标行为的数量)为M,任一样本可以表示为(St,at,rt,St+1),其中,St表示输入到网络θk的环境特征,at为基于St预测出的目标行为,rt表示at的行为奖励(可以是at的即时奖励和调节奖励之和),St+1表示英雄执行at之后的新环境特征。
在通过策略网络θk采集得到的样本的数据量达到M时(通过策略网络θk获取样本的过程可以继续执行),可以根据这些样本对策略网络θk的网络参数进行更新,具体的,可以通过策略网络θ预测M个样本中每个St对应的at的概率(即基于St,通过网络θ预测出的at的被选择概率),对于每个目标行为,可以根据该行为所属的子序列中各个目标行为的行为奖励,通过行为优势函数计算该行为的行为优势,其中,一个子序列中最后一个目标行为的行为优势可以置为0,在得到M个目标行为的行为优势之后,则可以根据M个目标行为各自对应行为优势和对应于两个策略网络的被选择概率,计算得到目标函数的值,进而可以基于该值对策略网络θ的网络参数进行调整,可选的,得到调整后的策略网络θ之后,还可以再次使用上述M个样本再次对策略网络θ进行参数优化,即可以通过调整后的策略网络θ重新预测M个目标行为对应于此时的网络θ的被选择概率,基于此时预测出的被选择概率再次计算目标函数的值并调整网络参数。
可选的,测试服务器可以基于训练过程中的所获取的游戏数据,得到待评估英雄的评估结果(预测数据/预测结果),比如,测试服务器可以以数据报告的形式将预测结果通过测试终端提供给测试人员,或者是对预测结果进行核查,根据核查结果生成相应的数据报告提供给测试人员查看。其中,具体的核查机制可以根据需求配置,比如,对于每个测试场景,可以预配置有每个待评估英雄的待评估指标的参考结果,在获取到待评估英雄的评估结果之后,可以对参考结果和评估结果进行比对,通过比对得到评估结果和参考结果的差异是否在一定范围内,如果是,可以认为待评估英雄的英雄配置/设计符合预期,可以基于比对结果、评估结果和参考结果生成数据报告。
比如,以持续伤害场景为例,需要评估游戏中所有英雄在10秒内对于木偶的伤害能力,即可以根据本公开实施例提供的上述方案训练得到所有英雄的最优伤害数值(对木偶可造成的最高伤害值),可以通过测试终端的客户端页面展示给用户。
作为一个示例,图11示出了采用本公开实施例提供的方案进行测试,对一种游戏应用中的多个英雄分别进行伤害能力评估所得到的评估结果的示意图,其中,图中横坐标代表各个英雄,每个柱状图代表一个英雄能够打出的最高伤害值,可以将该伤害值作为英雄的伤害能力的评估结果。
本公开实施例提出的自动化评估方案可以快速的实现数据更新,在对应场景下所有英雄都可以无差别达到顶级游戏玩家水平。可以从根本上解决人工评估效率低下的问题,并且极大程度的保证了评估质量。
采用上述评估方案,可以实现对游戏应用中各种游戏场景下各个英雄的能力强度的客观评估。可选的,如图5所示,在得到各个待评估英雄对应于各个目标虚拟场景的目标策略网络之后,可以将各英雄对应于各个游戏场景的目标策略网络部署到游戏服务器中,之后,游戏服务器22在接收到玩家的终端设备的游戏开始指令(步骤S31)后,可以根据开始指令所对应的游戏场景以及玩家所控制的英雄,从已部署的各个目标策略网络中找到该游戏场景和玩家对应的目标策略网络,并可以在玩家游戏的过程中,基于该游戏场景的游戏环境状态,采用确定出的目标策略网络不断预测英雄的目标行为(步骤S32),并可以根据预测出的行为为玩家提供游戏策略(步骤S33)。
玩家在游戏过程中,游戏场景的环境状态也是不断更新的,其中,游戏服务器22可以基于场景的当前环境状态,采用行为掩码机制预测出当前环境状态对应的目标行为,玩家在控制英雄执行该目标行为或其他行为导致环境状态发生更新时,目标策略网络可以基于新的环境状态重新预测。可选的,在实际应用中,可以为游戏玩家在其游戏客户端提供相应的功能控件,玩家可以通过该控件开启游戏策略推荐或关闭游戏推荐策略,在玩家开启了该功能时,可以基于本公开实施例提供的上述方案在玩家游戏的过程中为玩家推荐游戏策略,或者是如果玩家开启了游戏托管功能,游戏服务器可以基于目标策略网络的预测结果控制玩家的英雄进行游戏。
本公开实施例还提供了一种数据处理装置,如图12所示,该数据处理装置100包括目标场景确定模块110、训练模块120和评估结果确定模块130。
目标场景确定模块110,用于确定待评估目标虚拟对象的待评估指标对应的目标虚拟场景;
训练模块120,用于基于目标虚拟场景,通过对初始策略网络重复执行训练操作,得到满足训练结束条件的目标策略网络;
评估结果确定模块130,用于基于目标策略网络,得到目标虚拟对象的待评估指标的评估结果;
其中,上述训练操作包括:
获取当前次训练所对应的目标虚拟场景的初始环境特征;基于初始环境特征,,通过初始策略网络预测目标虚拟对象的行为序列,控制目标虚拟对象在目标虚拟场景中执行该行为序列中的各目标行为,得到目标虚拟对象对应于待评估指标的游戏数据、以及执行每个目标行为之后的目标虚拟场景的新环境特征;根据游戏数据确定所述行为序列对应的行为奖励,根据行为奖励确定训练损失,根据训练损失调整初始策略网络的网络参数;
其中,行为序列包括满足第一预设条件时所获取到的各目标行为,每个目标行为是根据该行为的目标输入预测得到的,第一个目标行为的目标输入为当前次训练操作对应的初始环境特征,第一个目标行为之外的目标行为的目标输入是执行上一个目标行为后的新环境特征。
可选的,训练模块在基于初始环境特征预测目标虚拟对象的行为序列,控制目标虚拟对象执行各目标行为,得到游戏数据和新环境特征时,可以用于:
将当前次训练操作的初始环境特征作为第一次第一操作的第一输入,通过不断执行第一操作直至满足第一预设条件,得到目标虚拟对象的行为序列中的各个目标行为;
其中,第一操作包括以下各个步骤:
根据候选行为集合中各个候选行为的属性信息,确定候选行为集合对应的行为掩码信息,行为掩码信息用于指示候选行为集合中当前可被选择的各候选行为;
基于第一输入和行为掩码信息,通过初始策略网络从当前可被选择的各候选行为中预测出目标虚拟对象的目标行为,控制目标虚拟对象在目标虚拟场景中执行该目标行为,得到对应的新环境特征和游戏数据,将该新环境特征作为下一次第一操作的第一输入。
可选的,对于目标虚拟场景的初始环境特征或新环境特征中的任一环境特征,该环境特征是通过以下方式确定的:
获取目标虚拟场景中的各关联虚拟对象当前的对象属性信息和对象位置信息,各关联虚拟对象包括目标虚拟对象;
根据各关联虚拟对象当前的对象属性信息和对象位置信息,确定目标虚拟场景的当前环境特征。
可选的,目标虚拟场景中的各关联虚拟对象包括属于至少两个虚拟阵营的虚拟对象;确定目标虚拟场景的当前环境特征是通过以下方式得到的:
对于每个关联虚拟对象,根据该关联虚拟对象当前的对象属性信息,得到该关联虚拟对象的当前对象特征;
对于各关联虚拟对象中每个阵营的各虚拟对象,根据该阵营的各虚拟对象当前的位置信息,确定该阵营中的各虚拟对象之间的相对位置分布,根据相对位置分布,得到该阵营对应的位置分布特征;
根据各关联虚拟对象的当前对象特征、以及各阵营对应的位置分布特征,得到目标虚拟场景的当前环境特征。
可选的,初始策略网络包括第一策略网络和第二策略网络,目标策略网络为满足训练结束条件时的第一策略网络;训练模块可以用于:
基于初始输入,通过第二策略网络预测目标虚拟对象的行为序列;
根据训练损失对第一策略网络的网络参数进行调整。
可选的,训练操作包括样本获取操作和网络参数更新操作,一次样本数据获取操作包括:
重复执行第二操作直至满足所述第一预设条件,基于满足所述第一预设条件时得到的各目标行为得到目标虚拟对象的一个行为序列,并将该行为序列中各目标行为对应的游戏数据确定该行为序列对应的行为奖励,所述第二操作包括:
基于目标输入,通过所述第二策略网络预测目标虚拟对象的目标行为,控制目标虚拟对象执行该目标行为,得到目标虚拟对象执行该目标行为之后的游戏数据以及目标虚拟场景的新环境特征;
其中,一次网络参数更新操作可以包括:根据目标虚拟对象的一个行为序列对应的行为奖励,确定训练损失,根据该训练损失对第一策略网络的网络参数进行调整。
可选的,一个行为序列对应的行为奖励包括该序列中每个目标行为对应的行为奖励;其中,一个目标行为是通过以下方式确定出的:
根据该目标行为的目标输入,通过第二策略网络预测候选行为集合中各候选行为的第二被选择概率,基于各候选行为的第二被选择概率对各候选行为进行随机采样,从各候选行为中确定出该目标输入对应的目标行为;
一次网络参数更新操作还包括:对于一个行为序列所对应的每一目标输入,基于该目标输入,通过第一策略网络预测该目标输入对应的各个候选行为的第一被选择概率;
训练模块在根据行为奖励确定训练损失时可以用于:
对于一个行为序列中的每个目标行为,根据该目标行为对应的第一被选择概率和第二被选择概率,确定第一策略网络和第二策略网络对于目标行为的预测偏差;根据行为序列中各目标行为对应的行为奖励和预测偏差,确定训练损失。
可选的,训练模块还用于:在满足设定条件时,采用第一策略网络的网络参数对第二策略网络的网络参数进行更新。
可选的,一个行为序列包括以下任一项:
已预测出的目标行为的数量达到设定数量时的各个目标行为;
控制目标虚拟对象进行设定局数的游戏所执行的各个目标行为;
在预设游戏时长内目标虚拟对象所执行的各个目标行为;
控制目标虚拟对象至少一次从目标虚拟场景中的第一位置抵达第二位置所执行的各个目标行为。
可选的,一个行为序列对应的行为奖励包括全局奖励或行为序列中的每个目标行为的局部奖励中的至少一项;
一个行为序列中任一目标行为的局部奖励是通过以下方式确定的:
根据该目标行为对应的游戏数据、以及该目标行为的上一个目标行为对应的游戏数据之间的变化,确定该目标行为对应的局部奖励;
一个行为序列对应的全局奖励是通过以下方式确定的:
根据行为序列中最后一个目标行为对应的游戏数据,确定该行为序列对应的全局奖励,或者,根据行为序列中各目标行为的局部奖励,确定该行为序列对应的全局奖励。
可选的,训练模块可以用于:根据待评估指标,确定目标虚拟场景对应的行为奖励的奖励类型,奖励类型是局部奖励,或者,奖励类型是局部奖励和全局奖励;
若奖励类型是局部奖励和全局奖励,训练模块在根据行为奖励确定训练损失时可以用于:
将行为序列的全局奖励进行分配,得到该行为序列中的各目标行为的调节奖励;对于该行为序列中的每个目标行为,根据该目标行为的局部奖励和调节奖励,确定该目标行为的最终奖励;根据该行为序列中各目标行为的最终奖励,确定训练损失。
可选的,上述训练操作还包括:在控制目标虚拟对象执行一个目标行为之后,若不满足第二预设条件,则将执行该目标行为之后的新环境特征作为下一个目标行为的目标输入,若满足所述第二预设条件,则重新获取目标虚拟场景的环境特征,将重新获取的环境特征作为下一个目标行为的目标输入;
一个行为序列包括至少一个子序列,一个子序列包括:获取初始输入之后至满足第二预设条件时所获取的各目标行为,或者,获取第二环境特征之后至满足第二预设条件时所获取的各目标行为;
一个行为序列对应的行为奖励包括该行为序列中每个子序列对应的行为奖励,一个子序列对应的行为奖励是根据该序列中的各目标行为对应的游戏数据确定的,一个子序列对应的行为奖励包括该子序列对应的全局奖励或局部奖励中的至少一项;
若一个行为奖励对应的行为奖励包括局部奖励和全局奖励,一个行为序列中的各目标行为的最终奖励是通过以下方式确定的:
对于该行为序列中的每个子序列,将该子序列对应的全局奖励进行分配,得到该子序列中的各目标行为的调节奖励,根据该子序列中的各目标行为的局部奖励和调节奖励,确定该子序列中各目标行为的最终奖励。
可选的,评估结果确定模块可以用于:
获取评估数据集,评估数据集中包括目标虚拟场景的样本环境特征;
将样本环境特征作为第一次第三操作的第一环境特征,通过目标策略网络重复执行第三操作直至满足第三预设条件,第三操作包括:基于第一环境特征,预测目标虚拟对象的待执行行为;控制目标虚拟对象执行待执行行为,得到目标虚拟对象对应于待评估指标的游戏数据,以及执行待执行行为之后的目标虚拟场景的第二环境特征,将该第二环境特征作为下一次操作时所基于的第一环境特征;
根据满足第三预设条件时获取到的游戏数据,确定目标虚拟对象的待评估指标的评估结果。
可以理解的是,本公开实施例的装置可执行本公开实施例所提供的方法,其实现原理相类似,本公开各实施例的装置中的各模块所执行的动作是与本公开各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本公开实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行存储器中存储的计算机程序时可实现本公开任一可选实施例中的方法。
图13示出了本发明实施例所适用的一种电子设备的结构示意图,如图13所示,该电子设备可以为服务器或者用户终端(如测试终端),该电子设备可以用于实施本发明任一实施例中提供的方法。
如图13中所示,该电子设备2000可以包括至少一个处理器2001(图13中示出了一个)、存储器2002、通信模块2003和输入/输出接口2004等组件,可选的,各组件之间可以通过总线2005实现连接通信。需要说明的是,图13中示出的该电子设备2000的结构只是示意性的,并不构成对本公开实施例提供的方法所适用的电子设备的限定。
其中,存储器2002可以用于存储操作系统和应用程序等,应用程序可以包括在被处理器2001调用时实现本发明实施例所示方法的计算机程序,还可以包括用于实现其他功能或服务的程序。存储器2002可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和计算机程序的其他类型的动态存储设备,也可以是EEPROM(ElectricallyErasable Programmable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(CompactDisc Read Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
处理器2001通过总线2005与存储器2002连接,通过调用存储器2002中所存储的应用程序实现相应的功能。其中,处理器2001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application Specific Integrated Circuit,专用集成电路),FPGA(FieldProgrammable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合,其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器2001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
电子设备2000可以通过通信模块2003(可以包括但不限于网络接口等组件)连接到网络,以通过网络与其它设备(如用户终端或服务器等)的通信,实现数据的交互,如向其他设备发送数据或从其他设备接收数据。其中,通信模块2003可以包括有线网络接口和/或无线网络接口等,即通信模块可以包括有线通信模块或无线通信模块中的至少一项。
电子设备2000可以通过输入/输出接口2004可以连接所需要的输入/输出设备,如键盘、显示设备等,电子设备200自身可以具有显示设备,还可以通过接口2004外接其他显示设备。可选的,通过该接口2004还可以连接存储装置,如硬盘等,以可以将电子设备2000中的数据存储到存储装置中,或者读取存储装置中的数据,还可以将存储装置中的数据存储到存储器2002中。可以理解的,输入/输出接口2004可以是有线接口,也可以是无线接口。根据实际应用场景的不同,与输入/输出接口2004连接的设备,可以是电子设备2000的组成部分,也可以是在需要时与电子设备2000连接的外接设备。
用于连接各组件的总线2005可以包括一通路,在上述组件之间传送信息。总线2005可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(Extended Industry Standard Architecture,扩展工业标准结构)总线等。根据功能的不同,总线2005可以分为地址总线、数据总线、控制总线等。
可选的,对于本发明实施例所提供的方案而言,存储器2002可以用于存储执行本发明方案的计算机程序,并由处理器2001来运行,处理器2001运行该计算机程序时实现本发明实施例提供的方法或装置的动作。
基于与本公开实施例提供的方法相同的原理,本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的相应内容。
本公开实施例还提供了一种计算机程序产品,该产品包括计算机程序,该计算机程序被处理器执行时可实现前述方法实施例的相应内容。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本公开实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本公开实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本公开实施例对此不限制。
以上所述仅是本公开部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本公开的方案技术构思的前提下,采用基于本公开技术思想的其他类似实施手段,同样属于本公开实施例的保护范畴。

Claims (15)

1.一种数据处理方法,其特征在于,所述方法包括:
确定待评估目标虚拟对象的待评估指标对应目标虚拟场景;
基于所述目标虚拟场景,通过对初始策略网络重复执行训练操作,得到满足训练结束条件的目标策略网络;
基于所述目标策略网络,确定目标虚拟对象的待评估指标的评估结果;
其中,所述训练操作包括:
获取当前次训练所对应的目标虚拟场景的初始环境特征;基于所述初始环境特征,通过初始策略网络预测目标虚拟对象的行为序列,控制目标虚拟对象在目标虚拟场景中执行该序列中的各目标行为,得到目标虚拟对象对应于所述待评估指标的游戏数据、以及执行每个目标行为之后的目标虚拟场景的新环境特征;根据所述游戏数据确定该序列对应的行为奖励,根据所述行为奖励确定训练损失,根据训练损失调整初始策略网络的网络参数;
其中,所述行为序列包括满足第一预设条件时所获取到的各目标行为,每个目标行为是根据该行为的目标输入预测得到的,第一个目标行为的目标输入为当前次训练操作的初始环境特征,第一个目标行为之外的目标行为的目标输入是执行上一个目标行为后的新环境特征。
2.根据权利要求1所述的方法,其特征在于,基于初始环境特征预测目标虚拟对象的行为序列,控制目标虚拟对象执行该序列中的各目标行为,得到游戏数据和新环境特征,包括:
将当前次训练操作的初始环境特征作为第一次第一操作的第一输入,通过不断执行第一操作直至满足所述第一预设条件,得到所述目标虚拟对象的行为序列中的各个目标行为;其中,所述第一操作包括以下各个步骤:
根据候选行为集合中各个候选行为的属性信息,确定所述候选行为集合对应的行为掩码信息,所述行为掩码信息用于指示所述候选行为集合中当前可被选择的各候选行为;
基于第一输入和所述行为掩码信息,通过初始策略网络从当前可被选择的各候选行为中预测出所述目标虚拟对象的目标行为,控制目标虚拟对象在所述目标虚拟场景中执行该目标行为,得到对应的新环境特征和游戏数据,并将该新环境特征作为下一次第一操作的第一输入。
3.根据权利要求1所述的方法,其特征在于,对于所述目标虚拟场景的初始环境特征或新环境特征中的任一环境特征,该环境特征是通过以下方式确定的:
获取所述目标虚拟场景中的各关联虚拟对象当前的对象属性信息和对象位置信息,所述各关联虚拟对象包括所述目标虚拟对象;
根据各所述关联虚拟对象当前的对象属性信息和对象位置信息,确定所述目标虚拟场景的当前环境特征。
4.根据权利要求3所述的方法,其特征在于,所述各关联虚拟对象包括属于至少两个虚拟阵营的虚拟对象;
所述根据各所述关联虚拟对象当前的对象属性信息和对象位置信息,确定所述目标虚拟场景的当前环境特征,包括:
对于每个所述关联虚拟对象,根据该关联虚拟对象当前的对象属性信息,得到该关联虚拟对象的当前对象特征;
对于所述虚拟阵营中的每个阵营,根据所述各关联虚拟对象中该阵营的各虚拟对象当前的对象位置信息,确定该阵营中的各虚拟对象之间的相对位置分布,根据所述相对位置分布,得到该阵营对应的位置分布特征;
根据各所述关联虚拟对象的当前对象特征、以及各所述阵营对应的位置分布特征,得到所述目标虚拟场景的当前环境特征。
5.根据权利要求1所述的方法,其特征在于,所述初始策略网络包括第一策略网络和第二策略网络,所述目标策略网络为满足训练结束条件时的第一策略网络;
其中,所述训练操作包括样本获取操作和网络参数更新操作,一次样本数据获取操作包括:
重复执行第二操作直至满足所述第一预设条件,基于满足所述第一预设条件时得到的各目标行为得到目标虚拟对象的一个行为序列,并将该行为序列中各目标行为对应的游戏数据确定该行为序列对应的行为奖励,所述第二操作包括:
基于目标输入,通过所述第二策略网络预测目标虚拟对象的目标行为,控制目标虚拟对象执行该目标行为,得到目标虚拟对象执行该目标行为之后的游戏数据以及目标虚拟场景的新环境特征;
其中,一次网络参数更新操作包括:
根据所述目标虚拟对象的一个行为序列对应的行为奖励,确定训练损失,根据该训练损失对第一策略网络的网络参数进行调整。
6.根据权利要求5所述的方法,其特征在于,一个行为序列对应的行为奖励包括该序列中每个目标行为对应的行为奖励;
一个目标行为是通过以下方式确定出的:
根据该目标行为的目标输入,通过所述第二策略网络预测候选行为集合中各候选行为的第二被选择概率,基于各所述候选行为的第二被选择概率对各所述候选行为进行随机采样,从各所述候选行为中确定出该目标输入对应的目标行为;
一次网络参数更新操作还包括:
对于一个行为序列所对应的每一目标输入,基于该目标输入,通过所述第一策略网络预测该目标输入对应的各所述候选行为的第一被选择概率;
所述根据目标虚拟对象的一个行为序列对应的行为奖励,确定训练损失,包括:
对于一个行为序列中的每个目标行为,根据所述目标行为对应的第一被选择概率和第二被选择概率,确定所述第一策略网络和所述第二策略网络对于所述目标行为的预测偏差;
根据各所述目标行为对应的行为奖励和预测偏差,确定训练损失。
7.根据权利要求5或6所述的方法,其特征在于,所述方法还包括:
在满足设定条件时,采用所述第一策略网络的网络参数对所述第二策略网络的网络参数进行更新。
8.根据权利要求1至6任一项所述的方法,其特征在于,一个行为序列对应的行为奖励包括全局奖励或所述行为序列中的每个目标行为的局部奖励中的至少一项;
其中,一个行为序列中任一目标行为的局部奖励是通过以下方式确定的:
根据该目标行为对应的游戏数据、以及该目标行为的上一个目标行为对应的游戏数据之间的变化,确定该目标行为的局部奖励;
一个行为序列对应的全局奖励是通过以下方式确定的:
根据行为序列中最后一个目标行为对应的游戏数据,确定该行为序列对应的全局奖励,或者,根据行为序列中各目标行为的局部奖励,确定该行为序列对应的全局奖励。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
根据所述待评估指标,确定所述目标虚拟场景对应的行为奖励的奖励类型,所述奖励类型是局部奖励,或者,所述奖励类型是局部奖励和全局奖励;
若所述奖励类型是局部奖励和全局奖励,所述根据所述行为奖励确定训练损失,包括:
将行为序列的全局奖励进行分配,得到该行为序列中的各目标行为的调节奖励;
对于该行为序列中的每个目标行为,根据该目标行为的局部奖励和调节奖励,确定该目标行为的最终奖励;
根据该行为序列中各目标行为的最终奖励,确定训练损失。
10.根据权利要求8所述的方法,其特征在于,所述训练操作还包括:
在控制目标虚拟对象执行一个目标行为之后,若不满足第二预设条件,则将执行该目标行为之后的新环境特征作为下一个目标行为的目标输入,若满足所述第二预设条件,则重新获取目标虚拟场景的环境特征,将重新获取的环境特征作为下一个目标行为的目标输入;
其中,一个行为序列包括至少一个子序列,一个子序列包括:获取初始输入之后至满足第二预设条件时所获取的各目标行为,或者,获取第二环境特征之后至满足第二预设条件时所获取的各目标行为;
一个行为序列对应的行为奖励包括该行为序列中每个子序列对应的行为奖励,一个子序列对应的行为奖励是根据该序列中的各目标行为对应的游戏数据确定的,一个子序列对应的行为奖励包括该子序列对应的全局奖励或局部奖励中的至少一项;
若一个行为奖励对应的行为奖励包括局部奖励和全局奖励,一个行为序列中的各目标行为的最终奖励是通过以下方式确定的:
对于该行为序列中的每个子序列,将该子序列对应的全局奖励进行分配,得到该子序列中的各目标行为的调节奖励,根据该子序列中的各目标行为的局部奖励和调节奖励,确定该子序列中各目标行为的最终奖励。
11.根据权利要求1至6任一项所述的方法,其特征在于,所述基于所述目标策略网络,得到目标虚拟对象的待评估指标的评估结果,包括:
获取评估数据集,所述评估数据集中包括所述目标虚拟场景的样本环境特征;
将所述样本环境特征作为第一次第三操作的第一环境特征,通过所述目标策略网络重复执行第三操作直至满足第三预设条件,其中,所述第二操作包括:基于第一环境特征,通过所述目标策略网络预测所述目标虚拟对象的待执行行为;控制所述目标虚拟对象执行所述待执行行为,得到所述目标虚拟对象对应于所述待评估指标的游戏数据,以及执行所述待执行行为之后的所述目标虚拟场景的第二环境特征,并将该第二环境特征作为下一次操作时所基于的第一环境特征;
根据满足所述第三预设条件时获取到的游戏数据,确定所述目标虚拟对象对应于所述待评估指标的评估结果。
12.一种数据处理方法,其特征在于,所述方法包括:
获取第一虚拟对象所处的第一虚拟场景的环境特征;
基于所述第一虚拟场景的环境特征,通过所述第一虚拟场景对应的目标策略网络,预测所述第一虚拟对象的目标行为;其中,所述目标策略网络是将所述第一虚拟对象作为待评估目标虚拟对象,将所述第一虚拟场景作为目标虚拟场景,采用权利要求1至10任一项所述的方法训练得到的目标策略网络;
控制所述第一虚拟对象执行预测出的目标行为,或者基于所述目标行为向所述第一虚拟对象的操作者推荐游戏策略。
13.一种数据处理装置,其特征在于,所述装置包括:
目标场景确定模块,用于确定待评估目标虚拟对象的待评估指标对应的目标虚拟场景;
训练模块,用于基于所述目标虚拟场景,通过对初始策略网络重复执行训练操作,得到满足训练结束条件的目标策略网络;
评估结果确定模块,用于基于所述目标策略网络,得到目标虚拟对象的待评估指标的评估结果;
其中,所述训练操作包括:
获取当前次训练所对应的目标虚拟场景的初始环境特征;基于所述初始环境特征,通过初始策略网络预测目标虚拟对象的行为序列,控制目标虚拟对象在目标虚拟场景中执行所述行为序列中的各目标行为,得到目标虚拟对象对应于所述待评估指标的游戏数据、以及执行每个目标行为之后的目标虚拟场景的新环境特征;根据所述游戏数据确定所述行为序列对应的行为奖励,根据行为奖励确定训练损失,根据训练损失调整初始策略网络的网络参数;
其中,所述行为序列中的每个目标行为是根据该行为的目标输入预测得到的,第一个目标行为的目标输入为当前次训练操作的初始环境特征,第一个目标行为之外的目标行为的目标输入是执行上一个目标行为后的新环境特征。
14.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序以实现权利要求1至12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至12任一项所述的方法。
CN202211329426.2A 2022-10-27 2022-10-27 数据处理方法、装置、电子设备以及存储介质 Pending CN117018635A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211329426.2A CN117018635A (zh) 2022-10-27 2022-10-27 数据处理方法、装置、电子设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211329426.2A CN117018635A (zh) 2022-10-27 2022-10-27 数据处理方法、装置、电子设备以及存储介质

Publications (1)

Publication Number Publication Date
CN117018635A true CN117018635A (zh) 2023-11-10

Family

ID=88630488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211329426.2A Pending CN117018635A (zh) 2022-10-27 2022-10-27 数据处理方法、装置、电子设备以及存储介质

Country Status (1)

Country Link
CN (1) CN117018635A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117899478A (zh) * 2024-03-18 2024-04-19 腾讯科技(深圳)有限公司 一种虚拟角色的控制方法和相关装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117899478A (zh) * 2024-03-18 2024-04-19 腾讯科技(深圳)有限公司 一种虚拟角色的控制方法和相关装置
CN117899478B (zh) * 2024-03-18 2024-06-04 腾讯科技(深圳)有限公司 一种虚拟角色的控制方法和相关装置

Similar Documents

Publication Publication Date Title
US11291917B2 (en) Artificial intelligence (AI) model training using cloud gaming network
Hessel et al. Multi-task deep reinforcement learning with popart
JP7159458B2 (ja) 仮想環境における仮想対象のスケジューリング方法、装置、デバイス及びコンピュータプログラム
Drachen et al. Game analytics–the basics
US10737179B2 (en) Predictive recommendations for skills development
CN111282267A (zh) 信息处理方法、装置、介质及电子设备
Guss et al. The MineRL 2019 competition on sample efficient reinforcement learning using human priors
CN110365994A (zh) 直播推荐方法、装置、服务器及可读存储介质
CN113069769B (zh) 云游戏界面显示方法、装置、电子设备以及存储介质
US20240100444A1 (en) Artificial intelligence (ai) based skill tracking and non-fungible token (nft) based skill representation
CN114048834A (zh) 基于事后回顾和渐进式扩展的持续强化学习非完全信息博弈方法及装置
Nakahara et al. Action valuation of on-and off-ball soccer players based on multi-agent deep reinforcement learning
CN117018635A (zh) 数据处理方法、装置、电子设备以及存储介质
Taylor et al. Game theory for computer games design
CN115944921B (zh) 游戏数据处理方法、装置、设备及介质
CN114697688A (zh) 直播策略推荐方法、互动方法、装置、设备和存储介质
CN116943220A (zh) 一种游戏人工智能控制方法、装置、设备及存储介质
KR102104007B1 (ko) 경기 결과 예측 모델을 이용한 경기 결과 예측 장치 및 방법
Wang et al. [Retracted] The Design of Sports Games under the Internet of Things Fitness by Deep Reinforcement Learning
Bougie et al. Exploration via progress-driven intrinsic rewards
CN116531764B (zh) 游戏数据处理方法、装置、设备及计算机可读存储介质
US20240346404A1 (en) Techniques for utilizing video games to identify and recruit candidates for job positions
CN118226882A (zh) 一种空中动作控制强化学习模型的训练方法和系统
CN117618918B (zh) 虚拟场景处理方法、装置、电子设备及存储介质
US20230233944A1 (en) Method of creating interaction-based cooperative agent, method of providing cooperative agent, and agent management server for performing methods

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