智能虚拟角色控制方法、装置、设备和存储介质与流程-j9九游会真人

文档序号:34891302发布日期:2023-07-25 18:36阅读:11来源:国知局


1.本公开涉及人工智能及电子游戏领域,更具体地,涉及一种智能虚拟角色控制方法、装置、设备和存储介质。


背景技术:

2.在电子游戏领域中,为了带给玩家真实的虚拟游戏环境、强烈的代入感和丰富的娱乐性,大量的研究工作都投入到游戏开发的相关技术上。从电子游戏诞生以来,游戏中的人工智能就一直是研究重点之一,并且越来越受到关注。对于第一人称射击(first-person shooting,fps)游戏,人工智能显得更为重要。虽然视觉上的渲染和射击相关物理的模拟计算提供了相当的真实感,但fps游戏十分注重玩家与游戏中的虚拟角色交互-相互配合或相互攻击,因为其主要目的就是为玩家提供真实的对抗,而对抗中必不可少的就是角色之间的攻防。为了提供更真实和有趣的游戏体验,游戏中的虚拟角色需要能根据玩家的行为和游戏中的虚拟环境做出更符合人类行为的响应。因此,如何建立行为高度真实拟人的虚拟角色,是fps游戏开发中的关键问题之一。
3.然而,由于目前没有较为完整且成体系的虚拟角色设计结构或方法论,虚拟角色设计的相关功能层次不清晰,而常见的虚拟角色设计方法大致将虚拟角色设计分为行为、分析和感知三个部分,这些部分缺乏明确定义,存在大量介于各部分之间的模糊内容,并且由于没有明确区分每个虚拟角色功能属于哪个部分,也没有统一思路和指标,因此功能的责任划分并不明确,不利于实际开发工作的分工与进行。此外,在这些虚拟角色设计方法中,在确定条件下会选择唯一确定的行为,使得虚拟角色行为表现呆板,缺少变化,进而导致玩家游戏体验单一,并且随着虚拟角色的行为数量增多、条件增多后,算法的复杂度将呈指数增加,导致难以调试和维护。
4.因此,需要一种高效的虚拟角色设计方法,使得能够设计出行为高度拟人且具有高游戏水平的虚拟角色。


技术实现要素:

5.为了解决上述问题,本公开通过对智能虚拟角色的逐层控制,根据智能虚拟角色的环境检测数据基于概率确定要控制该智能虚拟角色执行的行为,从而建立了层次分工明确的多层虚拟角色设计方法,并且所设计的智能虚拟角色行为高度拟人且灵活多变。
6.本公开的实施例提供了一种智能虚拟角色控制方法、装置、设备和计算机可读存储介质。
7.本公开的实施例提供了一种智能虚拟角色控制方法,包括:获取所述智能虚拟角色附近的第一数量的环境检测数据;基于所述第一数量的环境检测数据,生成第二数量的环境判断结果,所述第二数量不大于所述第一数量;基于所述第二数量的环境判断结果,从所述智能虚拟角色的多个行为策略中确定第一行为策略,所确定的第一行为策略指示所述智能虚拟角色选择执行与所述第一行为策略相对应的行为的概率相较于与所述智能虚拟
角色的多个行为策略中的其他行为策略相对应的行为的概率更高;以及基于所述第二数量的环境判断结果和所确定的第一行为策略、以及所述智能虚拟角色的所有行为中的至少一部分的执行条件,确定要控制所述智能虚拟角色执行的行为。
8.本公开的实施例提供了一种智能虚拟角色控制装置,包括:环境检测模块,被配置为获取所述智能虚拟角色附近的第一数量的环境检测数据;环境判断模块,被配置为基于所述第一数量的环境检测数据,生成第二数量的环境判断结果,所述第二数量不大于所述第一数量;策略决策模块,被配置为基于所述第二数量的环境判断结果,从所述智能虚拟角色的多个行为策略中确定第一行为策略,所确定的第一行为策略指示所述智能虚拟角色选择执行与所述第一行为策略相对应的行为的概率相较于与所述智能虚拟角色的多个行为策略中的其他行为策略相对应的行为的概率更高;以及行为决策模块,被配置为基于所述第二数量的环境判断结果和所确定的第一行为策略、以及所述智能虚拟角色的所有行为中的至少一部分的执行条件,确定要控制所述智能虚拟角色执行的行为。
9.本公开的实施例提供了一种智能虚拟角色控制设备,包括:一个或多个处理器;以及一个或多个存储器,其中,所述一个或多个存储器中存储有计算机可执行程序,当由所述处理器执行所述计算机可执行程序时,执行如上所述的智能虚拟角色控制方法。
10.本公开的实施例提供了一种计算机可读存储介质,其上存储有计算机可执行指令,所述指令在被处理器执行时用于实现如上所述的智能虚拟角色控制方法。
11.本公开的实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行根据本公开的实施例的智能虚拟角色控制方法。
12.本公开的实施例所提供的方法相比于现有的虚拟角色设计方法而言,建立了包括五个层次的智能虚拟角色设计架构,规范了每个层次的定义及设计要点,并基于此设计架构设计出高度拟人、具有高游戏水平的智能虚拟角色。
13.本公开的实施例所提供的方法基于智能虚拟角色所感知的实时环境数据进行各类主观判断,以根据这些判断结果进一步基于概率确定行为策略和要控制该智能虚拟角色执行的具体行为,最终确定的智能虚拟角色行为具有随机性,而不是基于判断结果的确定行为,使得智能虚拟角色的行为更符合人类行为,具有更高的灵活性和游戏水平,从而提升了玩家的游戏体验。通过本公开的实施例的方法,实现了对智能虚拟角色的结构化设计与控制,以此结构设计和实现的智能虚拟角色逻辑清晰、层次明确,有利于实际工作的分工与开展,并且可扩展性强,便于后期调试与维护。
附图说明
14.为了更清楚地说明本公开的实施例的技术方案,下面将对实施例的描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本公开的一些示例性实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
15.图1a是示出根据本公开的实施例的游戏ai与游戏环境交互的场景示意图;
16.图1b是示出常见游戏ai设计方法的示意图;
17.图1c是示出典型游戏ai的行为决策方法的示意图;
18.图2a是示出根据本公开的实施例的智能虚拟角色控制方法的流程图;
19.图2b是示出根据本公开的实施例的智能虚拟角色控制方法的层次结构的示意图;
20.图3a是示出根据本公开的实施例的智能虚拟角色控制方法中观察层处的处理的示意性流程图;
21.图3b是示出根据本公开的实施例的观察层中的示例处理的示意图;
22.图4a是示出根据本公开的实施例的智能虚拟角色控制方法中判断层处的处理的示意性流程图;
23.图4b是示出根据本公开的实施例的判断层中的示例处理的示意图;
24.图5a是示出根据本公开的实施例的智能虚拟角色控制方法中策略决策层处的处理的示意性流程图;
25.图5b是示出根据本公开的实施例的策略决策层中的示例策略与行为的示意图;
26.图5c是示出根据本公开的实施例的策略决策层中的示例策略决策的示意图;
27.图6a是示出根据本公开的实施例的智能虚拟角色控制方法中行为决策层处的处理的示意性流程图;
28.图6b是示出根据本公开的实施例的行为决策层中的示例执行条件的示意图;
29.图7a是示出根据本公开的实施例的智能虚拟角色控制方法中执行层处的处理的示意性流程图;
30.图7b是示出根据本公开的实施例的执行层中的示例执行动作流程的示意图;
31.图8是示出根据本公开的实施例的智能虚拟角色控制方法的层次结构及其相关处理的示意图;
32.图9a是示出根据本公开的实施例的智能虚拟角色控制方法的判断层、策略决策层和行为决策层的示例参数配置的图;
33.图9b是示出根据本公开的实施例的执行侧向进攻的示意流程图;
34.图9c是示出根据本公开的实施例的相同环境下对不同行为的选择概率的示意图;
35.图10a是示出根据本公开的实施例的智能虚拟角色控制方法的判断层、决策层(策略决策层与行为决策层)和执行层的示例分工的示意图;
36.图10b是示出根据本公开的实施例的智能虚拟角色控制方法实施前后添加新行为的示意性流程图;
37.图10c是示出根据本公开的实施例的智能虚拟角色控制方法的各层工作分工的示意图;
38.图11是示出根据本公开的实施例的智能虚拟角色控制装置的示意图;
39.图12示出了根据本公开的实施例的智能虚拟角色控制设备的示意图;
40.图13示出了根据本公开的实施例的示例性计算设备的架构的示意图;以及
41.图14示出了根据本公开的实施例的存储介质的示意图。
具体实施方式
42.为了使得本公开的目的、技术方案和优点更为明显,下面将参考附图详细描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公
开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
43.在本说明书和附图中,具有基本上相同或相似步骤和元素用相同或相似的附图标记来表示,且对这些步骤和元素的重复描述将被省略。同时,在本公开的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性或排序。
44.除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
45.为便于描述本公开,以下介绍与本公开有关的概念。
46.本公开的智能虚拟角色控制方法可以是基于人工智能(artificial intelligence,ai)的。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。例如,对于基于人工智能的智能虚拟角色控制方法而言,其能够控制数字计算机中所建立的智能虚拟角色以类似于人类感知环境并作出相应行为的方式获取游戏环境中的各种实时数据,并基于这些数据确定其要作出的行为,从而使非玩家角色的行为表现出智能。人工智能通过研究各种智能机器的设计原理与实现方法,使本公开的智能虚拟角色控制方法具有能够设计出行为高度拟人、具有高游戏水平的智能虚拟角色的功能。
47.例如,本公开的智能虚拟角色控制方法中的智能虚拟角色可以指游戏人工智能(游戏ai)。ai的本质是对输入的信息进行处理,再以合适的、与人类智能相似的方式输出,该过程涉及到接收输入的信息、对信息进行分析处理及以合适的方式进行输出三个部分,其本质上是对信息的处理和表现,游戏ai也不例外。游戏ai是用于在计算机和游戏中使非玩家角色的行为表现出智能的一系列技术,其也可以被理解为可以思考的非玩家角色。本领域技术人员清楚,学术领域与游戏领域的ai存在联系与区别。这两种ai的相同点在于两者都是尽可能模拟人类行为,用各种方法使ai行为更加接近人类行为,因此两者的共同点在于对人类行为的研究。但是,学术领域与游戏领域对ai的标准是不同的,其不同点主要在于,学术领域比较重视ai的内部算法和机制,而游戏领域更重视ai的表现。产生这种不同的主要原因是游戏领域和学术领域对ai需求的不同,玩家在游戏中能体验到的只有ai的外部表现,因此游戏ai更侧重于加强ai的外部表现,而对ai的内部算法关注较少。另外,还有一个原因在于经济因素,游戏领域通常需要用最少的成本和资源,以最简单的实现方法来表现ai,同时ai需要尽可能的模拟玩家行为,让玩家觉得游戏ai是真实存在的人类而不是冷冰冰的机器,从而将与ai的互动从人机互动上升为人人互动。同时也可以增强玩家的代入感,吸引玩家兴趣。学术领域的ai追求算法的最优解,力求完美,而游戏领域中ai追求多样化,力求游戏世界更加逼真,其不需要每个游戏ai都拥有最高智能,如同人类社会中的认知差距,游戏中ai也应如此。
48.综上所述,本公开的实施例提供的方案涉及人工智能、智能虚拟角色设计等技术,下面将结合附图对本公开的实施例进行进一步地描述。
49.图1a是示出根据本公开的实施例的游戏ai与游戏环境交互的场景示意图。图1b是示出常见游戏ai设计方法的示意图。图1c是示出典型游戏ai的行为决策方法的示意图。
50.大部分电子游戏通过给予玩家虚拟的世界和与虚拟的角色交互等来提高其代入感,而对于非玩家控制的虚拟角色,如果不具有一定程度的人类(或动物等)的智能,则玩家很难甚至无法与之交互,导致无法投入到虚拟的世界中。因此,从电子游戏诞生以来,游戏中的人工智能就一直是研究重点之一,并且越来越受到关注。如图1a所示,游戏ai通过与游戏环境的交互实现数据的获取与行为的响应,该游戏环境可以包括其他玩家、非玩家控制的虚拟角色和背景环境等。在诸如fps的游戏中,将游戏环境做得足够逼真(例如,任务氛围足够真实)能够增加玩家的代入感,这种逼真可以通过提高玩家间的互动和关联来实现,也可以通过提高玩家与游戏ai之间的互动来实现。整个虚拟的游戏世界的世界观需要玩家有认同感,而游戏世界观的展现也需要通过游戏ai来表现,不管是任务、对话、即时演算动画还是场景剧情演绎,都离不开游戏ai。
51.然而,由于目前没有较为完整且成体系的游戏ai设计结构或方法论,游戏ai设计的相关功能层次不清晰,而常见的游戏ai设计方法如图1b所示,大致将游戏ai设计分为行为、分析和感知三个部分,各部分缺乏明确定义,且存在大量介于其间的模糊内容,并且由于没有明确区分每个虚拟角色功能属于哪个部分,也没有统一思路和指标,因此功能的责任划分并不明确,不利于实际开发工作的分工与进行。
52.此外,由于越精细的ai计算需要耗费越多的计算机计算资源,而为了达到实时的要求,游戏通常倾向于简化ai的设计,例如使用针对固定的游戏场景的固定行为响应的方式来实现。例如,一位游戏ai要实现从玩家背后偷袭并击杀玩家的一系列动作,其需要固定地经过预先设定的几个掩体,经由固定的路线,从固定的方向绕到玩家背后,而这样的情况下,玩家在一定时间内会熟知游戏ai的特性,长时间下使得该ai的行为不再显得合理,导致游戏的代入感就下降。
53.目前典型游戏ai的行为决策采用的主要方式是行为树(behaviortree),如图1c所示,行为树中列举出行为a的触发条件a1、a2、a3、
……
、an,行为b的触发条件b1、b2、b3、
……
、bn,以此类推。行为决策过程完全按照行为树的顺序依次判断每个行为的条件是否满足,并执行第一个满足其相应的所有条件的行为。因此,在这样的行为决策中,游戏ai在游戏世界中的各种行为都是预先设计好的,游戏ai的行为都是按一定规则运行的,离真正的智能决策、评估、学习很远。也就是说,目前的游戏ai更多的是“人为设定”的而非“智能”的,这些ai在确定条件下会选择唯一确定的行为,使得ai行为表现呆板、缺少变化,进而导致玩家游戏体验单一,并且随着行为数量增多、条件增多,行为树的复杂度会呈指数提升,难以调试和维护。
54.如上所述,游戏ai的行为决策部分是其智能化的重要内容,和传统的人工智能关注理性的决策不同,游戏ai在搜索最优的j9九游会真人的解决方案的同时,还需要对决策真实性进行考虑,其行为应和智慧生物一样,具有一定的模糊性。在特定的环境中,当游戏ai面临多重选择时,其需要采取使用户觉得正确的决定,做相应的有效的行为,而不是理性地对问题的最优决策进行搜索。合理的行为决策方法将使玩家和游戏ai之间的交互更加真切,对了游戏的玩家体验具有重要意义。
55.本公开基于此,提供了一种智能虚拟角色控制方法,其通过对智能虚拟角色的逐层控制,根据智能虚拟角色的环境检测数据基于概率确定要控制该智能虚拟角色执行的行为,以建立层次分工明确的多层虚拟角色设计方法。
56.本公开的实施例所提供的方法相比于现有的虚拟角色设计方法而言,建立了包括五个层次的智能虚拟角色设计架构,规范了每个层次的定义及设计要点,并基于此设计架构设计出高度拟人、具有高游戏水平的智能虚拟角色。
57.本公开的实施例所提供的方法基于智能虚拟角色所感知的实时环境数据进行各类主观判断,以根据这些判断结果进一步基于概率确定行为策略和要控制该智能虚拟角色执行的具体行为,最终确定的智能虚拟角色行为具有随机性,而不是基于判断结果的确定行为,使得智能虚拟角色的行为更符合人类行为,具有更高的灵活性和游戏水平,从而提升了玩家的游戏体验。通过本公开的实施例的方法,实现了对智能虚拟角色的结构化设计与控制,以此结构设计和实现的智能虚拟角色逻辑清晰、层次明确,有利于实际工作的分工与开展,并且可扩展性强,便于后期调试与维护。
58.图2a是示出根据本公开的实施例的智能虚拟角色控制方法200的流程图。图2b是示出根据本公开的实施例的智能虚拟角色控制方法的层次结构的示意图。
59.本公开的智能虚拟角色控制方法可以分为五个层次逐层进行,即图2b中由下至上的观察层、判断层、策略决策层、行为决策层和执行层。
60.如图2a所示,在步骤201中,可以获取所述智能虚拟角色附近的第一数量的环境检测数据。
61.根据本公开的实施例,步骤201的操作可以在如图2b所示的观察层中进行。图3a是示出根据本公开的实施例的智能虚拟角色控制方法中观察层处的处理的示意性流程图。
62.可选地,在步骤201中,可以使用游戏基于游戏引擎构建的检测算法,输出对游戏ai附近的诸如游戏环境和战斗目标的检测结果,以实现游戏ai对游戏中客观环境的认知。观察层可以执行游戏ai对于游戏中客观环境的识别过程,例如,包括但不限于视觉感知、听觉感知、触觉感知(例如,被攻击命中、被障碍物阻挡等)、空间认知(例如,对路径、障碍物或掩体等的认知)等。
63.因此,基于通过上述识别过程的检测算法对客观的游戏环境数据进行实时处理,可以从中获得客观的观察数据(即环境检测数据)。应当理解,这些观察数据为对客观事物(游戏环境)的客观判断,而不包含主观评判。例如,该观察数据可以是对“距离”的判断而非对“远近”的评判,可以是对“数量”的判断而非对“多少”的评判,诸如此类。
64.图3b是示出根据本公开的实施例的观察层中的示例处理的示意图。
65.如图3b所示,观察层可以执行诸如目标检测、路径查找和掩体点搜寻等任务,从而实现对诸如“目标是否可见”、“到目标的路径距离是否超出可行范围”和“附近是否存在掩体点”等的判断。
66.可选地,游戏ai可以使用射线检测来判断目标是否可见。如图3b中的第一栏所示,可以通过图中的粗虚线所示的多条射线进行计算和判断。例如,可以从各个角度向目标发出射线以判断该射线是否被障碍物遮挡,从而判断目标是否可见。可选地,该射线的可探测范围应是有限的,因为游戏ai应当与人类通过视觉感知识别目标类似地来检测目标,而不能“作弊”地检测到超出视线范围内的目标。
67.实际上,观察层应当平衡性能消耗和观察精度。例如,对于目标是否可见,粗略的观察可以仅判断目标的头部/胸部是否可见,而细致的观察可以细分到头、胸、手、大腿、小腿等等。观察越细致,则观察结果越真实,游戏ai越灵敏,但这也导致服务器产生的性能消
耗越大。因此,观察层需要基于实际任务需求和可用资源合理确定检测算法中的参数。
68.可选地,游戏ai可以通过预先设置的导航寻路系统(例如,导航网格(navmesh))认知空间结构以进行路径搜寻。如图3b中的第二栏所示,由于游戏ai与目标之间可能存在障碍物阻挡,导致游戏ai无法直接接近目标,因此需要通过路径搜寻确定一条可用路径,如图3b的第二栏中的虚线所示。
69.可选地,游戏ai还可以通过其预先配置的游戏空间的预构建来计算其附近的掩体点。如图3b中的第三栏所示,该游戏ai的可行范围内的掩体附近且背对目标的部分可以存在多个掩体点(图中示为方块周围的椭圆白点)。
70.如上所述,可以通过对真实玩家观察世界的方法进行抽象归纳,从而指导如何设计观察层的相关检测算法。例如通过归纳真实玩家判断场景中的掩体的逻辑,来设计观察层中计算掩体点的算法。
71.接下来,在步骤202中,可以基于所述第一数量的环境检测数据,生成第二数量的环境判断结果,所述第二数量不大于所述第一数量。
72.根据本公开的实施例,步骤202的操作可以在如图2b所示的判断层中进行。
73.图4a是示出根据本公开的实施例的智能虚拟角色控制方法中判断层处的处理的示意性流程图。可选地,如图4a所示,可以使用观察层输出的客观观察数据,根据判断层的认知参数配置,来生成主观认知判断结果。
74.根据本公开的实施例,步骤202可以包括:根据预定的认知配置参数集,对所述第一数量的环境检测数据进行分类,以生成所述第二数量的环境判断结果;其中,所述认知配置参数集可以是针对所述智能虚拟角色而设置的,所述认知配置参数集中的一个参数可以与所述智能虚拟角色的一种行为相对应。
75.可选地,判断层可以执行对于观察层得到的客观数据的主观认知总结,例如,包括但不限于战局态势(例如,我方/敌方处于优势、附近有危险)、敌我目标状态(例如,装备强弱、健康状态)、战术点判断(例如,附近最好的掩体点、进攻目标最好的路径)等。
76.可选地,该预定的认知配置参数集可以包括针对所有环境数据的类型的主观评判标准,例如,对于观察层所获得的游戏ai与目标之间的“路径距离”,基于认知配置参数集中包括的远近评判标准(例如,分类临界值等)可以确定该游戏ai与目标的“远近”。
77.图4b是示出根据本公开的实施例的判断层中的示例处理的示意图。
78.如图4b所示,判断层可以基于观察层对自身和敌方的诸如血量、装备与距离等信息的检测,根据自身预先设置的对这些信息的评判标准,确定自身安全程度。例如,该自身安全程度可以基于自身的血量、装备以及与敌人的距离等观察数据。
79.可选地,判断层可以完成对客观观察数据的分类、总结和归纳,使得输出的“主观认知判断”的数量显著少于输入的“客观观察数据”的数量,从而降低后续层次的判断条件空间复杂度。
80.例如,在不考虑其他类型的环境检测数据和环境判断结果的情况下,基于在智能虚拟角色附近所获取第一数量的环境检测数据(“客观观察数据”),例如环境检测数据可以包括智能虚拟角色自身和敌方相应的血量数据、装备数据、以及智能虚拟角色与敌人之间的直线距离和路径距离,即第一数量为6,可以确定智能虚拟角色的自身安全程度以及敌人威胁程度等“主观认知判断”结果,即第二数量为2。其中,基于智能虚拟角色自身的血量数
据、装备数据以及智能虚拟角色与敌人之间的直线距离和路径距离可以确定智能虚拟角色的自身安全程度,并且基于敌方的血量数据、装备数据以及智能虚拟角色与敌人之间的直线距离和路径距离可以确定智能虚拟角色的敌人威胁程度。
81.可选地,认知配置参数集应具有足够的配置空间和参数类型,以针对不同的游戏ai,设置不同的认知配置参数集,从而设计具有不同性格和不同行为倾向的多种游戏ai。例如,通过调整认知配置参数集中的“安全血量”参数,可以控制不同游戏ai对于自身是否处于安全状态的判断。
82.可选地,对判断层的认知配置参数集的设计可以遵循“一类参数”控制“一类行为”的思路,避免一个参数影响多个行为。例如,“安全血量”参数可以仅对“自身是否处于安全状态”的判断产生影响,而不影响对“敌人是否处于劣势”的判断,后者可以由另一参数来控制(例如,该游戏ai的认知配置参数集中的“敌人安全血量”参数)。
83.如上所述,基于步骤202中确定的多个主观认知判断结果,可以执行后续的决策与执行处理。
84.在步骤203中,可以基于所述第二数量的环境判断结果,从所述智能虚拟角色的多个行为策略中确定第一行为策略,所确定的第一行为策略指示所述智能虚拟角色选择执行与所述第一行为策略相对应的行为的概率相较于与所述智能虚拟角色的多个行为策略中的其他行为策略相对应的行为的概率更高。
85.根据本公开的实施例,步骤203的操作可以在如图2b所示的策略决策层中进行。
86.图5a是示出根据本公开的实施例的智能虚拟角色控制方法中策略决策层处的处理的示意性流程图。可选地,如图5a所示,可以使用判断层输出的主观认知判断,根据策略决策层的策略决策参数配置,来生成策略决策结果。
87.可选地,策略决策层可以使用判断层输出的主观认知数据,根据游戏ai的策略决策层的参数配置,生成该游戏ai的行为策略(行为倾向),从而在较长时间内能够让如上所述的具有不同性格的游戏ai体现出不同的行为倾向。
88.根据本公开的实施例,所述智能虚拟角色的多个行为策略中的每一个可以对应于至少一种行为,所述智能虚拟角色的所有行为中的每一种行为可以对应于至少一个行为策略。
89.可选地,策略决策层可以确定可供游戏ai选择的多个明确且具代表性的行为策略,并为游戏ai可能进行的所有行为划分其所属的行为策略,这些行为策略可以包括相同的行为(即,同一个行为可以属于多个策略),因为游戏ai做出的单次行为通常并不能体现其在将来一段时间内的行为倾向,而单个行为策略的实现通常依赖于多个行为的顺序执行。
90.图5b是示出根据本公开的实施例的策略决策层中的示例策略与行为的示意图。
91.如图5b所示,可供游戏ai选择的行为策略可以包括进攻和防御等,相应地,进攻所对应的行为可以包括正面进攻、侧向进攻和更换掩体等,而防御所对应的行为可以包括退回掩体、从掩体中射击和远离敌人等。应当理解,图中所示的行为策略和行为在本公开中仅用作示例而非限制,本公开的行为策略还可以包括诸如偷袭、逃跑等的多种行为策略,并且本公开的行为策略还可以包括与这些多种行为策略相对应的各种行为。
92.根据本公开的实施例,步骤203可以包括:基于所述第二数量的环境判断结果和预
先设置的策略决策配置参数,确定所述智能虚拟角色执行所述多个行为策略中的每一个的概率,所述策略决策配置参数可以指示环境判断结果与行为策略的相关性;以及基于所确定的所述智能虚拟角色执行所述多个行为策略中的每一个的概率,随机选择所述多个行为策略中的一个作为所述第一行为策略。
93.可选地,策略决策层会根据判断层输出的环境判断结果和预先设置的配置参数,基于概率选择其将采用的行为策略。其中预先配置的策略决策配置参数可以包括游戏ai对环境的每一类判断结果对于每一类策略决策的影响系数,例如特定判断结果对某一类策略决策的实施可能性的贡献,即在该判断结果下,游戏ai是否更倾向于实施该策略决策。
94.如上所述,策略决策层中所确定的行为策略并不会直接决定游戏ai下一时刻一定会作出什么行为,但是会影响在一段时间内该游戏ai行为的分布和比例。例如当确定选择进攻的行为策略时,游戏ai并不一定执行诸如图5b所示的对应于进攻的各种行为,而是在一段时间内,游戏ai选择执行进攻策略下的行为的概率将显著提升。
95.作为示例,图5c是示出根据本公开的实施例的策略决策层中的示例策略决策的示意图。
96.在图5c中,已经由判断层对游戏ai当前的状态进行了判断(例如,图中左侧所示的“装备是否占优”、“掩体是否占优”和“血量是否占优”),而在此主观判断的情况下,游戏ai可以确定其选择“进攻”或“防御”(此处假设游戏ai仅在这两类行为策略中进行选择)的相应概率(图5c中分别示为72%和28%),从而使用随机数函数,随机地选择其中一个行为策略(其中,以72%的概率选择“进攻”,而以28%的概率选择“防御”)。这一过程也反映了游戏ai与真实人类思考的相似性,其会基于自身的主观判断进行行为策略的选择,但在决定了特定行为策略后,也可能不会选择执行该行为策略下的行为,而是在执行前的最后时刻才确定要执行的行为,只是该要执行的行为是该行为策略下的行为的概率相对于其他行为策略下的行为的概率更高。
97.可选地,策略决策层可以不直接输出所选择的策略决策结果(即,第一行为策略),而是通过基于其策略决策结果来影响行为决策层中所涉及的行为选择过程的参数、算法、权重等的方式,间接地影响行为决策的结果。
98.可选地,策略决策层可以是一个开放的层次,除了进行决策的游戏ai自身对其策略决策结果的影响,诸如团队队长(例如集群游戏ai的主脑)、游戏ai全局控制器、游戏ai强度控制器、游戏ai导演等都可以通过影响策略决策层的输出结果来影响游戏ai的表现。
99.根据本公开的实施例,当前控制中所确定的所述智能虚拟角色执行所述多个行为策略中的每一个的概率是基于对先前控制中所确定的所述智能虚拟角色执行相应的多个行为策略中的每一个的概率的更新而得到的,所述更新基于以下时间间隔中的一个或多个:预定时间间隔;或满足预定更新条件时的时间与先前控制中确定所述智能虚拟角色执行相应的多个行为策略中的每一个的概率的时间的时间间隔。其中,根据本公开的实施例,所述当前控制和所述先前控制分别对应于当前对所述智能虚拟角色的控制和上一次对所述智能虚拟角色的控制。
100.可选地,游戏ai在每一时刻对行为策略的选择可以是不同的,这是因为游戏环境可能随时在发生变化而需要游戏ai实时进行响应,并且游戏ai对于响应行为的选择也是基于概率随机选择的,而该概率也会基于如上所述的机制进行更新。
101.可选地,对行为策略的选择概率至少可以间隔预定时间进行更新,以确保游戏ai的最低反应速度。此外,还可以基于场景中的各种变化来更新该概率,以保证游戏ai对环境变化的响应的即时性。
102.例如,可以将预定时间间隔设置为固定的若干秒,游戏ai在经过该预定时间间隔后会自动更新自身执行各种行为策略的概率。
103.此外,还可以在游戏环境中发生较为显著的变化时实时更新该游戏ai的行为倾向,诸如在环境中突然出现敌人、游戏ai血量减少速度超过预设阈值或者在采用防守策略时敌人离开视野超过10秒等情况下进行更新。
104.应当理解,本公开中的“当前控制”和“先前控制”的描述分别对应于本轮游戏ai控制和上一轮游戏ai控制,每一轮可以输出一次要控制游戏ai执行的操作。
105.在步骤204中,可以基于所述第二数量的环境判断结果和所确定的第一行为策略、以及所述智能虚拟角色的所有行为中的至少一部分的执行条件,确定要控制所述智能虚拟角色执行的行为。
106.根据本公开的实施例,步骤204的操作可以在如图2b所示的行为决策层中进行。
107.图6a是示出根据本公开的实施例的智能虚拟角色控制方法中行为决策层处的处理的示意性流程图。可选地,如图6a所示,可以基于判断层输出的主观认知判断和策略决策层的策略决策结果,根据行为决策层的行为决策参数配置,来生成行为决策结果。
108.可选地,行为决策层可以使用策略决策层输出的策略决策结果和判断层输出的主观认知结果,根据行为决策层的参数配置,生成游戏ai的行为决策结果,以决定游戏ai具体执行什么行为。该行为决策参数配置可以包括游戏ai的所有行为相关的所有执行条件及其与各种行为策略和这些行为策略下的各种行为的关系。
109.根据本公开的实施例,所述智能虚拟角色的所有行为中的每一种行为的执行条件可以包括必选执行条件和可选执行条件。可选地,游戏ai的所有行为中的每一种行为都可以具有其相应的必选执行条件和可选执行条件。
110.可选地,行为决策层可以从游戏ai可能执行的所有行为中选择要控制游戏ai执行的行为,其应当覆盖这些所有行为的执行条件,并明确每个行为的“必选执行条件”和“可选执行条件”,从而确定游戏ai在当前游戏环境中可能执行的所有行为。
111.可选地,“必选执行条件”可以指当某个行为的该条件满足时,游戏ai必须选择执行这个行为。而“可选执行条件”是指当某个行为的该条件满足时,游戏ai可以选择这个行为,但并不一定会选择这个行为,而是在不存在任何“必选执行条件”的情况下从满足“可选执行条件”的所有行为中进行选择。对于某个行为,如果当前情况既不满足其“必选执行条件”,也不满足其“可选执行条件”,则该行为不能被执行。这一处理避免了游戏ai的不合理行为,在保证其行为的灵活性和随机性的情况下,也保证了其行为具有一定的合理性。
112.可选地,对任一行为的执行条件(包括“必选执行条件”和“可选执行条件”)的设置需要从“该行为什么条件下可以执行”出发,以保证能够挖掘出这个行为的所有可能的触发条件。
113.根据本公开的实施例,步骤204可以包括:基于所述第二数量的环境判断结果和所述智能虚拟角色的所有行为中的至少一部分的执行条件,确定所述智能虚拟角色满足的至少一个执行条件,以及所述至少一个执行条件所对应的至少一种行为;以及在所确定的所
述智能虚拟角色满足的至少一个执行条件中存在一个或多个必选执行条件的情况下,基于所述一个或多个必选执行条件的预先设置的优先级,选择所述一个或多个必选执行条件中具有最高优先级的必选执行条件,并将所述必选执行条件所对应的行为作为要控制所述智能虚拟角色执行的行为。
114.根据本公开的实施例,所述至少一个执行条件所对应的至少一种行为可以构成行为池,并且可以从该行为池中选择游戏ai要执行的行为。
115.如上所述,可以基于判断层的环境判断结果确定游戏ai当前满足的执行条件,其中,可以首先执行针对必选执行条件的判断。
116.可选地,可以确定所述智能虚拟角色所满足的至少一个执行条件中是否存在一个或多个必选执行条件,在不存在的情况下继续下面的操作,而在存在必选执行条件的情况下,可以按照对这些必选执行条件预先设置的优先级来选择优先级最高的必选执行条件所对应的行为供游戏ai执行。该优先级的设置可以根据不同游戏ai的性格而区别设置,例如对于性格小心谨慎的游戏ai,可以将最高优先级设置给与自身安全程度相关的条件。
117.可选地,对必选执行条件的设置可以根据最基础的反射行为来进行。图6b是示出根据本公开的实施例的行为决策层中的示例执行条件的示意图。
118.如图6b所示,对于特定行为,必选执行条件可以是“无”,即对于该行为,并不存在必须执行的场景。例如,对于“侧向进攻”或“远离目标”行为,不存在其必选条件。而对于“正面进攻”和“退回掩体”行为,可以将其必选执行条件分别设置为“敌人处于濒死状态”和“最近1秒受到攻击”,这是因为对于这两个条件,大部分人都倾向于选择这两种行为,敌人出于重伤状态下倾向于乘胜追击,而在刚受到攻击时倾向于先找到遮挡物再确定后续行为,因此,必选执行条件的设置是基于类似于人类的条件反射而设置的。
119.可选地,这些行为可以具有一个或多个可选执行条件,在满足其可选执行条件中的至少一个的情况下,可以将相应的行为加入行为池中,而无需为其设置优先级。例如,在图6b中,当满足“敌人出于非健康状态”这一条件时,游戏ai可能会执行正面进攻,因此“正面进攻”行为可以被加入行为池。
120.可选地,从行为池中选择最终执行行为的算法需要保证选择的随机性,即使在外部环境等条件没有发生变化的情况下,每次从行为池中选择得到的行为结果也应当是变化的,而不是保持相同。
121.根据本公开的实施例,步骤204还可以包括:在所确定的所述智能虚拟角色满足的至少一个执行条件中不存在一个或多个必选执行条件的情况下,基于所确定的第一行为策略和所述至少一个执行条件所对应的至少一种行为,确定所述智能虚拟角色执行所述至少一种行为中的每一种的概率;以及基于所确定的所述智能虚拟角色执行所述至少一种行为中的每一种的概率,随机选择要控制所述智能虚拟角色执行的行为。
122.如上所述,在将游戏ai所满足的所有可选执行条件添加到行为池后,可以从该行为池中选择要执行的行为,该选择可以是基于行为池中各行为被执行的概率来进行的。
123.根据本公开的实施例,基于所确定的第一行为策略和所述至少一个执行条件所对应的至少一种行为,确定所述智能虚拟角色执行所述至少一种行为中的每一种的概率包括:在所述至少一个执行条件所对应的至少一种行为中存在与所确定的第一行为策略相对应的一个或多个行为的情况下,增加所述智能虚拟角色执行所述一个或多个行为中的每一
种的概率。
124.可选地,根据策略决策层所选择的第一行为策略,可以认为游戏ai在当前情况下更倾向于执行该第一行为策略下的行为,因此,行为池中属于该第一行为策略的行为可以具有更高的被选择概率。例如,对于行为池中属于第一行为策略的行为,可以将其权重增加(例如,加倍),从而提高其被选择的概率。
125.根据本公开的实施例,基于所确定的第一行为策略和所述至少一个执行条件所对应的至少一种行为,确定所述智能虚拟角色执行所述至少一种行为中的每一种的概率还可以包括以下中的至少一项:在当前控制的行为池中存在不属于先前控制的行为池的一个或多个行为的情况下,增加所述智能虚拟角色执行所述一个或多个行为中的每一种的概率;或在所述当前控制的行为池中存在与先前控制控制所述智能虚拟角色执行的行为不同的一个或多个行为的情况下,增加所述智能虚拟角色执行所述一个或多个行为中的每一种的概率。
126.可选地,对于行为池中在当前控制中新出现(即,先前控制中不存在,而在当前控制中新加入行为池)的一个或多个行为,可以认为这些行为是对当前游戏环境中发生的实时变化的响应,其与该实时变化密切相关,因此选择这些行为可能是对当前环境的更合理更实时的反应,使得游戏ai的行动更具有即时性。因此,可以增加这些行为的权重,从而提高其被选择的概率。
127.可选地,对于行为池中不同于在先前控制中被选择的行为的一个或多个行为,可以提高其此次被选择的概率,因为由于概率选择机制,概率较高的行为可能连续被选择,这可能导致游戏ai的行为单一,因此提高这些行为的概率可以使得游戏ai的行动更具有灵活性。因此,可以增加这些行为的权重,从而提高其被选择的概率。
128.根据本公开的实施例,步骤204还可以包括:在不存在所述智能虚拟角色满足的至少一个执行条件的情况下,执行预先设置的默认行为。
129.可选地,在当前环境不满足任何执行条件时,游戏ai可以执行默认行为(例如原地等待等),并等待下一时刻的控制过程。
130.根据本公开的实施例,所述智能虚拟角色的所有行为中的每一种行为包括一系列动作的组合。可选地,智能虚拟角色控制方法200还可以包括步骤205,即可以控制所述智能虚拟角色执行所确定的行为所包括的一系列动作。
131.根据本公开的实施例,步骤205的操作可以在如图2b所示的执行层中进行。
132.图7a是示出根据本公开的实施例的智能虚拟角色控制方法中执行层处的处理的示意性流程图。可选地,如图7a所示,可以使用行为决策层输出的行为决策结果,根据执行层的执行参数配置,来执行所确定的行为所包括的一系列动作。
133.可选地,执行层可以涉及游戏ai能够对外展现、可被玩家感知到的任何具体行为,包括但不限于诸如移动、转向、改变姿势(例如,站、蹲、趴或侧身等)、瞄准、开火、说话等。
134.应当注意,游戏ai的每个行为应当是“可描述”且“无歧义”的行为。其中,“可描述”可以指这个行为可被描述为若干个动作的组合;而“无歧义”可以指任何人都应当能够通过描述了解到该行为的具体内容,且每个人对同一个行为的理解差异不大。
135.作为示例,图7b是示出根据本公开的实施例的执行层中的示例执行动作流程的示意图。
136.如图7b所示,行为“从掩体后射击”可以包括三个动作的顺序组合,即探头——瞄准——开火的动作组合。
137.根据本公开的实施例,在控制所述智能虚拟角色执行所述一系列动作期间,执行以下中的至少一项:在满足预定结束条件的情况下,立即结束执行所述一系列动作,所述预定结束条件基于所述一系列动作的成功或失败而被设置为不同的条件;在满足预定中断条件的情况下,立即结束执行所述一系列动作,并切换为执行另一行为所包括的一系列动作;或在所述一系列动作的执行时间超过预先设置的执行时间,并且不满足所述预定结束条件或所述预定中断条件的情况下,立即结束执行所述一系列动作。
138.可选地,每个行为都可以具有明确的结束机制、打断机制和超时机制。结束机制可以指当满足预定结束条件时立刻结束该行为,该预定结束条件根据该行为执行的成功与失败可以被区别设置。打断机制可以指当满足预定中断条件时立刻结束该行为,并改为执行另一行为。超时机制可以指在存在针对行为的计时器的情况下,如果行为的执行时间超过预先设置的执行时间还没有触发结束机制/打断机制,则视为该行为执行超时并立刻结束该行为。
139.可选地,行为可以是可切换的,即任何行为在执行过程中的任意时刻都可以立刻中断并切换为执行另一行为。例如,在“移动到可射击掩体”的执行过程中的任意时刻都可以立刻停止移动并改为执行“在掩体外射击”。
140.可选地,任何行为都可以是可拼装的,即,可以通过顺序组合或条件组合的方式将多个简单行为拼装成一个复杂的行为。例如,可以将“移动到可射击掩体”和“从掩体后射击”两个行为进行拼装组合,以形成“移动到掩体并射击”行为。
141.作为对上述处理的总结,图8是示出根据本公开的实施例的智能虚拟角色控制方法的层次结构及其相关处理的示意图。
142.如图8所示,可以基于实时从游戏环境获取的环境数据来确定游戏ai要执行的行为。
143.在观察层,可以使用构建的检测算法输出对游戏ai附近的客观观察数据,以实现游戏ai对游戏中客观环境的客观认知。
144.在判断层,可以使用观察层输出的客观观察数据,根据判断层的认知参数配置,来生成主观认知判断结果,以实现游戏ai对游戏中客观环境的主观认知。
145.在策略决策层,可以使用判断层输出的主观认知判断,根据策略决策层的策略决策参数配置,来生成策略决策结果,以体现游戏ai针对实时游戏环境的行为倾向。
146.在行为决策层,可以基于判断层输出的主观认知判断和策略决策层的策略决策结果,根据行为决策层的行为决策参数配置,来生成行为决策结果,以确定游戏ai要执行的行为。
147.在执行层处,可以使用行为决策层输出的行为决策结果,根据执行层的执行参数配置,来执行所确定的行为所包括的一系列动作。
148.下面,将针对本公开的具体实施例来进一步说明本公开的智能虚拟角色控制方法的示例处理流程。
149.图9a是示出根据本公开的实施例的智能虚拟角色控制方法的判断层、策略决策层和行为决策层的示例参数配置的图。图9b是示出根据本公开的实施例的执行侧向进攻的示
意流程图。
150.例如,观察层可以执行以下操作来获取多个客观观察数据:
151.1)通过游戏引擎读取游戏环境数据;
152.2)从游戏ai角色眼睛位置,对敌人的头、胸、双手、双脚关节处进行射线检测,发现所有部位检测结果均为“被阻挡”,得到观察结果“敌人不可见”;
153.3)计算游戏ai角色到敌人角色的直线距离为15米,得到观察结果“敌人距离为15米”;
154.4)计算游戏ai角色到敌人角色的寻路距离为21米,得到观察结果“敌人路径距离21米”;
155.5)计算游戏ai角色血量百分比为91%,得到观察结果“自身血量为0.91”;以及
156.6)计算敌人角色血量百分比为40%,得到观察结果“敌人血量0.4”。
157.基于上述客观观察数据,判断层可以执行以下操作来生成多个主观认知判断结果:
158.1)读取观察层的输出结果、如图9a中的(a)所示的判断层的参数配置和判断层计算缓存;
159.2)根据观察结果“敌人不可见”,结合判断层计算缓存计算得到“敌人离开视野时间为8秒”;
160.3)根据观察结果“敌人距离为15米”和“敌人路径距离21米”,计算得到前往敌人位置的路径距离与直线距离比值为1.4,小于配置参数中的“可进攻绕路系数”,得到判断结果“目标处于攻击范围内”;
161.4)根据观察结果“自身血量为0.91”,大于配置参数中的“自身健康血量”,得到判断结果“自身处于健康状态”;并且还根据该观察结果大于配置参数中的“自身濒死血量”,得到判断结果“自身处于非濒死状态”;以及
162.5)根据观察结果“敌人血量0.4”,小于配置参数中“敌人健康血量”,得到观察结果“敌人处于非健康状态”;并且还根据该观察结果大于配置参数中“敌人濒死血量”,得到判断结果“敌人处于非濒死状态”。
163.接下来,基于上述主观认知判断结果,策略决策层可以执行以下操作来生成策略决策结果:
164.1)读取判断层的输出结果和如图9a中的(b)所示的策略决策层的参数配置;
165.2)初始化进攻和防御的行为策略的权重分别为1和1;
166.3)根据判断结果“目标处于攻击范围内”,读取参数配置“目标处于进攻范围时策略权重影响”得到结果:进攻权重 1、防御权重 1;
167.4)根据判断结果“自身处于健康状态”,读取参数配置“自身健康时对策略权重影响”得到结果:进攻权重 1;
168.5)根据判断结果“敌人处于非健康状态”读取参数配置“敌人非健康时对策略权重影响”得到结果:进攻权重 1;
169.6)根据累计权重——进攻∶防御=4∶2,得到选择进攻的概率为66%,选择防御的概率为33%;以及
170.7)使用随机数函数,得到随机的策略决策结果为“进攻”。
171.因此,根据上述主观认知判断结果和策略决策结果,执行层可以执行以下操作来生成行为决策结果:
172.1)读取判断层的输出结果、策略决策层的输出结果和如图9a中的(c)所示的行为决策层的参数配置;
173.2)根据判断层输出的结果“敌人离开视野时间为8秒”、“目标处于攻击范围内”、“自身处于健康状态”、“自身处于非濒死状态”、“敌人处于非健康状态”和“敌人处于非濒死状态”,得到:不满足任何行为的必选执行条件,并且满足正面进攻、侧向进攻和退回掩体的可选执行条件,因此将这三个行为加入行为池中;
174.3)读取历史行为决策数据得到,上一次行为池中有“正面进攻、侧向进攻”,随机选择结果为正面进攻,因此本次行为决策中侧向进攻和退回掩体的权重 1,得到正面进攻:侧向进攻:退回掩体的权重比为1∶2∶2;
175.4)根据策略决策层的输出结果“进攻”,属于“进攻”分类的正面进攻、侧向进攻的权重可以加倍,因此得到正面进攻:侧向进攻:退回掩体的权重比为2∶4∶2;
176.5)根据正面进攻:侧向进攻:退回掩体的权重比2∶4∶2,得到选择正面进攻的概率为25%,选择侧向进攻的概率为50%,选择退回掩体的概率为25%;以及
177.6)使用随机数函数,得到行为决策层的随机结果为“侧向进攻”。
178.因此,根据行为决策层的行为决策结果,执行层可以如图9b所示执行该结果所对应的一系列动作:
179.1)读取行为决策层的输出结果“侧向进攻”;
180.2)读取“侧向进攻”行为的动作序列数据:
181.首先获取敌人侧面15米处位置;
182.然后向获取到的位置处移动,在此期间,如果敌人不可见,则持续保持移动;如果敌人可见,则停止移动并进行射击;
183.3)执行“侧向进攻”行为。
184.图9c是示出根据本公开的实施例的相同环境下对不同行为的选择概率的示意图。
185.如图9c所示,在相同游戏环境下,策略决策层和行为决策层分别基于概率实现对行为策略和行为的选择,经过策略选择层和行为决策层,以不同的概率在正面进攻、侧向进攻和退回掩体中选择行为。
186.上述处理既保证了不符合当前条件的行为不会被选择(例如,前述不被考虑的“远离目标”行为),也保证了即使外部环境不变化,ai的行为也会有合理的随机性,并表现出明显的倾向(如果当前处于进攻策略,进攻策略下的行为被选中的概率更高)。最终的决策结果真实灵活,并且即使对于相同场景、相同配置的两个ai,也可以产生很多种完全不同的交互过程。
187.如上所述,本公开的智能虚拟角色控制方法实现了对游戏ai的结构化设计与控制,以此结构设计和实现的游戏ai逻辑清晰、层次明确,其行为具有随机性,而不是基于判断结果的确定行为,使得游戏ai的行为更符合人类行为,具有更高的即时性、灵活性和游戏水平。
188.应当理解,上面描述的各层次中所包括的参数及其取值设置、以及各层次的具体处理在本公开中仅出于说明性目的用作示例而非限制,其他可以实现类似效果或在不脱离
本公开的范围的情况下所进行的修改同样可以适用于本公开的智能虚拟角色控制方法。
189.图10a是示出根据本公开的实施例的智能虚拟角色控制方法的判断层、决策层(策略决策层与行为决策层)和执行层的示例分工的示意图。图10b是示出根据本公开的实施例的智能虚拟角色控制方法实施前后添加新行为的示意性流程图。图10c是示出根据本公开的实施例的智能虚拟角色控制方法的各层工作分工的示意图。
190.如上所述,本公开的智能虚拟角色控制方法的判断层、决策层(策略决策层与行为决策层)和执行层都可用于进行游戏al的分类,但其作用并不相同。
191.可选地,对于判断层,其可以进行如上所述的主观判断,诸如判断“什么是远”。如图10a所示,判断层可以针对距离的大小判断“多远算远”,针对敌人装备的价值的判断“多贵算贵”和“多强算强”(其中,“贵”指装备价值有多高,而“强”指装备战斗力有多高),以及针对敌人的数量判断“几个算多”等等。
192.可选地,对于决策层,其可以进行如上所述的对行为策略和行为的选择,诸如选择“做”或“不做”。如图10a所示,决策层可以进行对诸如“是否扔雷”、“是否射击”、“是否包抄”或“是否撤退”等的选择。
193.可选地,对于执行层,其可以进行关于行为执行的具体选择,诸如选择“做得好不好”。如图10a所示,执行层可以选择诸如“扔雷距离”、“扔雷精准度”、“射击命中率”或“射击瞄准部位”等的选择。
194.如上所述,通过对各层次的功能划分,可以灵活拼装形成大量不同类型的游戏ai,大幅降低了设计不同ai的工作量。此外,还可以基于这样设置的游戏ai实现对游戏世界中的区域划分,诸如新手区域(游戏ai胆小多防御、射击命中率低等)和高手区域(游戏ai积极多进攻、射击命中率高等)。
195.此外,对于要为游戏ai添加新行为的情况,图10b示出了在实施本公开的智能虚拟角色控制方法前后,针对相同新行为“寻找掩体”的不同添加处理。
196.如图10b中的(a)所示,如上所述的传统方法由于根据环境中所存在的各种情况建立行为树,且行为树的同一分支下可能包括多个不同的行为,因此需要在行为树的各个分支基于条件判断来完成新行为的添加,且添加的新行为分散在行为树的各处。
197.作为对上述方法的替代,如图10b中的(b)所示,本公开的方法由于是从行为出发确定触发该行为的条件,因此对应的结构中与同一行为相关的所有条件都位于同一分支,在此结构下只需要针对该新行为另外建立一个新分支并挖掘该行为所对应的所有条件来充实该分支,即可完成对该新行为的添加。本公开的实施例的方法可扩展性强,便于后期调试与维护。
198.在图10c中,td(technical designer,技术策划)和ld(level designer,关卡策划)是游戏策划职位下的两个细分职位,其中,td负责游戏中具有一定开发难度的游戏功能(例如游戏ai)的设计工作,而ld负责设计游戏地图关卡的设计工作。
199.如图10c所示,各个层次的工作随着开发进度分别由特定职务人员负责,以本公开的智能虚拟角色控制方法所设计的层次结构实现了对游戏ai的结构化设计与控制,有利于实际工作的分工与开展。
200.图11是示出根据本公开的实施例的智能虚拟角色控制装置1100的示意图。
201.如图11所示,智能虚拟角色控制装置1100可以包括环境检测模块1101、环境判断
模块1102、策略决策模块1103和行为决策模块1104。
202.根据本公开的实施例,环境检测模块1101可以被配置为获取所述智能虚拟角色附近的第一数量的环境检测数据。
203.可选地,环境检测模块1101可以执行如参考图2b所描述的观察层的操作。
204.可选地,环境检测模块1101可以使用游戏基于游戏引擎构建的检测算法,输出对游戏ai附近的诸如游戏环境和战斗目标的检测结果,以实现游戏ai对游戏中客观环境的认知。观察层可以执行游戏ai对于游戏中客观环境的识别过程,例如,包括但不限于视觉感知、听觉感知、触觉感知(例如,被攻击命中、被障碍物阻挡等)、空间认知(例如,对路径、障碍物或掩体等的认知)等。
205.因此,基于通过上述识别过程的检测算法对客观的游戏环境数据进行实时处理,可以从中获得客观的观察数据(即环境检测数据)。应当理解,这些观察数据为对客观事物(游戏环境)的客观判断,而不包含主观评判。例如,该观察数据可以是对“距离”的判断而非对“远近”的评判,可以是对“数量”的判断而非对“多少”的评判,诸如此类。
206.环境判断模块1102可以被配置为基于所述第一数量的环境检测数据,生成第二数量的环境判断结果,所述第二数量不大于所述第一数量。
207.可选地,环境判断模块1102可以执行如参考图2b所描述的判断层的操作。
208.可选地,环境判断模块1102可以执行对于环境检测模块1101得到的客观数据的主观认知总结,例如,包括但不限于战局态势(例如,我方/敌方处于优势、附近有危险)、敌我目标状态(例如,装备强弱、健康状态)、战术点判断(例如,附近最好的掩体点、进攻目标最好的路径)等。
209.可选地,该预定的认知配置参数集可以包括针对所有环境数据的类型的主观评判标准,例如,对于环境检测模块1101所获得的游戏ai与目标之间的“路径距离”,基于认知配置参数集中包括的远近评判标准(例如,分类临界值等)可以确定该游戏ai与目标的“远近”。
210.策略决策模块1103可以被配置为基于所述第二数量的环境判断结果,从所述智能虚拟角色的多个行为策略中确定第一行为策略,所确定的第一行为策略指示所述智能虚拟角色选择执行与所述第一行为策略相对应的行为的概率相较于与所述智能虚拟角色的多个行为策略中的其他行为策略相对应的行为的概率更高。
211.可选地,策略决策模块1103可以执行如参考图2b所描述的策略决策层的操作。
212.可选地,策略决策模块1103可以使用环境判断模块1102输出的主观认知数据,根据游戏ai的策略决策层的参数配置,生成该游戏ai的行为策略(行为倾向),从而在较长时间内能够让如上所述的具有不同性格的游戏ai体现出不同的行为倾向。
213.可选地,策略决策模块1103所确定的行为策略并不会直接决定游戏ai下一时刻一定会作出什么行为,但是会影响在一段时间内该游戏ai行为的分布和比例。例如当确定选择进攻的行为策略时,游戏ai并不一定执行对应于进攻的各种行为,而是在一段时间内,游戏ai选择执行进攻策略下的行为的概率将显著提升。
214.行为决策模块1104可以被配置为基于所述第二数量的环境判断结果和所确定的第一行为策略、以及所述智能虚拟角色的所有行为中的至少一部分的执行条件,确定要控制所述智能虚拟角色执行的行为。
215.可选地,行为决策模块1104可以执行如参考图2b所描述的行为决策层的操作。
216.可选地,行为决策模块1104可以使用策略决策模块1103输出的策略决策结果和环境判断模块1102输出的主观认知结果,根据其参数配置,生成游戏ai的行为决策结果,以决定游戏ai具体执行什么行为。该行为决策参数配置可以包括游戏ai的所有行为相关的所有执行条件及其与各种行为策略和这些行为策略下的各种行为的关系。
217.可选地,选择最终执行行为的算法需要保证选择的随机性,即使在外部环境等条件没有发生变化的情况下,每次选择得到的行为结果也应当是变化的,而不是保持相同。
218.根据本公开的实施例,智能虚拟角色控制装置1100还可以包括行为执行模块1105,其可以被配置为控制所述智能虚拟角色执行所确定的行为所包括的一系列动作。
219.可选地,行为执行模块1105可以执行如参考图2b所描述的执行层的操作。
220.可选地,行为执行模块1105可以涉及游戏ai能够对外展现、可被玩家感知到的任何具体行为,包括但不限于诸如移动、转向、改变姿势(例如,站、蹲、趴或侧身等)、瞄准、开火、说话等。
221.根据本公开的又一方面,还提供了一种智能虚拟角色控制设备。图12示出了根据本公开的实施例的智能虚拟角色控制设备2000的示意图。
222.如图12所示,所述智能虚拟角色控制设备2000可以包括一个或多个处理器2010,和一个或多个存储器2020。其中,所述存储器2020中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器2010运行时,可以执行如上所述的智能虚拟角色控制方法。
223.本公开的实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。上述处理器可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以是x86架构或arm架构的。
224.一般而言,本公开的各种示例实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
225.例如,根据本公开的实施例的方法或装置也可以借助于图13所示的计算设备3000的架构来实现。如图13所示,计算设备3000可以包括总线3010、一个或多个cpu 3020、只读存储器(rom)3030、随机存取存储器(ram)3040、连接到网络的通信端口3050、输入/输出组件3060、硬盘3070等。计算设备3000中的存储设备,例如rom 3030或硬盘3070可以存储本公开提供的智能虚拟角色控制方法的处理和/或通信使用的各种数据或文件以及cpu所执行的程序指令。计算设备3000还可以包括用户界面3080。当然,图12所示的架构只是示例性的,在实现不同的设备时,根据实际需要,可以省略图13示出的计算设备中的一个或多个组件。
226.根据本公开的又一方面,还提供了一种计算机可读存储介质。图14示出了根据本
公开的存储介质的示意图4000。
227.如图14所示,所述计算机存储介质4020上存储有计算机可读指令4010。当所述计算机可读指令4010由处理器运行时,可以执行参照以上附图描述的根据本公开的实施例的智能虚拟角色控制方法。本公开的实施例中的计算机可读存储介质可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)或闪存。易失性存储器可以是随机存取存储器(ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(sdram)、双倍数据速率同步动态随机存取存储器(ddrsdram)、增强型同步动态随机存取存储器(esdram)、同步连接动态随机存取存储器(sldram)和直接内存总线随机存取存储器(dr ram)。应注意,本文描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。应注意,本文描述的方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
228.本公开的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行根据本公开的实施例的智能虚拟角色控制方法。
229.本公开的实施例提供了一种智能虚拟角色控制方法、装置、设备和计算机可读存储介质。
230.本公开的实施例所提供的方法相比于现有的虚拟角色设计方法而言,建立了包括五个层次的ai设计架构,规范了每个层次的定义及设计要点,并基于此ai设计架构设计出高度拟人、具有高游戏水平的ai。
231.本公开的实施例所提供的方法基于智能虚拟角色所感知的实时环境数据进行各类主观判断,以根据这些判断结果进一步基于概率确定行为策略和要控制该智能虚拟角色执行的具体行为,最终确定的智能虚拟角色行为具有随机性,而不是基于判断结果的确定行为,使得智能虚拟角色的行为更符合人类行为,具有更高的灵活性和游戏水平,从而提升了玩家的游戏体验。通过本公开的实施例的方法,实现了对智能虚拟角色的结构化设计与控制,以此结构设计和实现的智能虚拟角色逻辑清晰、层次明确,有利于实际工作的分工与开展,并且可扩展性强,便于后期调试与维护。
232.需要说明的是,附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含至少一个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
233.一般而言,本公开的各种示例实施例可以在硬件或专用电路、软件、固件、逻辑,或
其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面被图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
234.在上面详细描述的本公开的示例实施例仅仅是说明性的,而不是限制性的。本领域技术人员应该理解,在不脱离本公开的原理和精神的情况下,可对这些实施例或其特征进行各种修改和组合,这样的修改应落入本公开的范围内。
当前第1页  
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
网站地图