用于游戏的数据处理方法、设备和介质与流程

文档序号:18297758发布日期:2019-07-31 09:37阅读:215来源:国知局
用于游戏的数据处理方法、设备和介质与流程

本发明涉及人工智能领域,更具体地说,涉及用于游戏的数据处理方法和设备。



背景技术:

随着人工智能(artificialintelligence,ai)的兴起,与人类生活的各领域交互越加频繁,游戏ai逐渐成为业界的一个研究热点。例如,一种可能的应用场景为:通过游戏ai接管掉线玩家,以避免由于网络卡顿等问题影响其他玩家的游戏体验。

区别于传统棋类游戏,多人在线战术竞技游戏(multiplayeronlinebattlearena,moba)由于具备极高的复杂度和多样性,是探索通用人工智能的重要场景。

玩家对战玩家(pvp,playerversusplayer)是moba游戏的一种典型玩法。游戏由两支玩家数量相等的敌对队伍组成,每个玩家可以控制局内的一个游戏角色,通过与队友相互配合,与敌方队伍进行游戏资源争夺,以先推倒敌方基地为目标。

例如,在现有的一种可能的实施方式中,基于强化学习方法来训练游戏ai模型。游戏ai模型的输入包括英雄、野怪、兵线、炮塔等属性信息、障碍物等地图信息以及游戏时长等全局信息,且游戏ai模型的输出对应于人类玩家的微观操作。

然而,这种游戏ai模型的输出只涉及微观操作。换言之,这种游戏ai模型仅包括微观操作预测模型,只能依据输入的游戏特征来预测游戏角色将要执行的微观操作。



技术实现要素:

鉴于以上情形,期望提供一种新的用于游戏的数据处理方法和设备,其能够在输入的原始游戏特征的基础上,进一步生成一个或多个中间结果,用以辅助最终微观操作的预测。

根据本发明的一个方面,提供了一种用于游戏的数据处理方法,包括:提取当前帧游戏数据的游戏特征,并将其输入到联合模型,其中所述联合模型包括用于执行微观操作预测的微观操作预测子模型和用于执行宏观移动趋势预测的宏观移动趋势预测子模型;至少基于输入的游戏特征,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势;以及基于输入的游戏特征和预测出的宏观移动趋势,通过微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

另外,在根据本发明实施例的方法中,所述联合模型进一步包括用于执行坐标位置预测的坐标位置预测子模型,并且其中所述方法进一步包括:基于输入的游戏特征,通过坐标位置预测子模型来预测与所述特定游戏角色对立的敌方游戏角色在当前帧或后续帧游戏数据中的坐标位置信息;以及存储预测出的所述坐标位置信息。

另外,在根据本发明实施例的方法中,在提取当前帧游戏数据的游戏特征的步骤之前,进一步包括:当当前帧游戏数据中存在不可见的敌方游戏角色,且存在关于不可见的敌方游戏角色在先前帧游戏数据中的坐标位置信息的预测结果时,以所述预测结果作为不可见的敌方游戏角色在当前帧游戏数据中的坐标位置。

另外,在根据本发明实施例的方法中,所述联合模型进一步包括用于执行区域位置预测的区域位置预测子模型,其中所述方法进一步包括:基于输入的游戏特征,通过区域位置预测子模型来预测所述敌方游戏角色在当前帧或后续帧游戏数据中的区域位置信息,并且其中至少基于输入的游戏特征,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势的步骤进一步包括:基于输入的游戏特征和预测出的区域位置信息,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势。

另外,在根据本发明实施例的方法中,所述游戏特征包括时序特征,并且提取当前帧游戏数据的时序特征的步骤进一步包括:从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取与所述特定游戏角色对立的敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第一预定间隔;以及将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第一时序特征。

另外,在根据本发明实施例的方法中,提取当前帧游戏数据的时序特征的步骤进一步包括:从当前帧以及当前帧之前的第二数量的帧的游戏数据中,提取所述敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第二预定间隔;以及将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第二时序特征。

另外,在根据本发明实施例的方法中,所述特定信息为敌方游戏角色的坐标位置信息。

另外,在根据本发明实施例的方法中,分别提取当前帧以及当前帧之前的多个帧的游戏数据中敌方游戏角色的特定信息的步骤进一步包括:当敌方游戏角色处于可见状态时,提取其在该帧中的坐标值作为坐标位置信息;以及当敌方游戏角色处于不可见状态时,提取固定坐标值作为坐标位置信息。

另外,在根据本发明实施例的方法中,所述特定信息为基于敌方游戏角色的坐标位置信息构造的二维图像信息。

另外,在根据本发明实施例的方法中,所述特定信息为特定游戏角色的属性信息。

另外,在根据本发明实施例的方法中,所述游戏特征包括非时序特征,提取当前帧游戏数据的非时序特征的步骤进一步包括:基于当前帧游戏数据的原始像素图像,提取与当前帧游戏数据中出现的游戏角色和/或特定物体相关的简化图像特征,以及与所述特定游戏角色和/或当前帧的游戏状态相关的向量特征,作为所述非时序特征。

另外,在根据本发明实施例的方法中,所述联合模型通过以下训练步骤得到:提取所述特定游戏角色在一帧离线游戏数据中的游戏特征,并将其输入到所述联合模型,以预测所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作和宏观移动趋势;提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作作为标签,并提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签;分别计算预测得到的微观操作与作为标签的微观操作之间的损失函数以及预测得到的宏观移动趋势与作为标签的宏观移动趋势之间的损失函数;以及通过计算各损失函数之和来训练所述联合模型。

另外,在根据本发明实施例的方法中,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签的步骤进一步包括:将全局地图分割为第三预定数量的多个格子;判断所述特定游戏角色在该帧或后续帧离线游戏数据中是否进行了预定行为;如果所述特定游戏角色在该帧或后续帧离线游戏数据中进行了预定行为,则标记该帧或后续帧,并以所述特定游戏角色进行预定行为时所处的格子表示该帧或后续帧的宏观移动趋势;如果所述特定游戏角色在该帧或后续帧离线游戏数据中未进行预定行为,则不标记该帧或后续帧,并以该帧或后续帧之后的第一个标记帧的宏观移动趋势作为该帧或后续帧的宏观移动趋势。

根据本发明的另一方面,提供了一种用于游戏的数据处理设备,包括:游戏特征提取装置,用于提取当前帧游戏数据的游戏特征;预测装置,包括用于执行微观操作预测的微观操作预测装置和用于执行宏观移动趋势预测的宏观移动趋势预测装置,其中所述宏观移动趋势预测装置至少基于所述游戏特征提取装置提取的游戏特征,根据宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势,并且所述微观操作预测装置基于所述游戏特征提取装置提取的游戏特征和所述宏观移动趋势预测装置预测出的宏观移动趋势,根据微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

另外,在根据本发明实施例的设备中,所述预测装置进一步包括用于执行坐标位置预测的坐标位置预测装置,用于基于输入的游戏特征,根据位置坐标预测子模型来预测与所述特定游戏角色对立的敌方游戏角色在当前帧或后续帧游戏数据中的坐标位置信息;并且其中所述设备进一步包括:存储装置,用于存储所述坐标位置预测装置预测出的所述坐标位置信息。

另外,根据本发明实施例的设备进一步包括:预处理装置,用于当当前帧游戏数据中存在不可见的敌方游戏角色,且所述存储装置中存在关于不可见的敌方游戏角色在先前帧游戏数据中的坐标位置信息的预测结果时,以所述预测结果作为不可见的敌方游戏角色在当前帧游戏数据中的作为位置,并将更新位置后的游戏数据提供到所述游戏特征提取装置。

另外,在根据本发明实施例的设备中,所述预测装置进一步包括用于执行区域位置预测的区域位置预测装置,用于基于输入的游戏特征,根据区域位置预测子模型来预测所述敌方游戏角色在当前帧或后续帧游戏数据中的区域位置信息,并且其中所述宏观移动区域预测装置被配置为基于所述游戏特征提取装置提取的游戏特征和所述区域位置预测装置预测出的区域位置信息,根据宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势。

另外,在根据本发明实施例的设备中,所述游戏特征包括时序特征,并且所述游戏特征提取装置进一步被配置为:从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取与所述特定游戏角色对立的敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第一预定间隔;以及将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第一时序特征。

另外,在根据本发明实施例的设备中,所述游戏特征提取装置进一步被配置为:从当前帧以及当前帧之前的第二数量的帧的游戏数据中,提取所述敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第二预定间隔;以及将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第二时序特征。

另外,在根据本发明实施例的设备中,所述特定信息为敌方游戏角色的坐标位置信息。

另外,在根据本发明实施例的设备中,所述游戏特征提取装置进一步被配置为:当敌方游戏角色处于可见状态时,提取其在该帧中的坐标值作为坐标位置信息;以及当敌方游戏角色处于不可见状态时,提取固定坐标值作为坐标位置信息。

另外,在根据本发明实施例的设备中,所述特定信息为基于敌方游戏角色的坐标位置信息构造的二维图像信息。

另外,在根据本发明实施例的设备中,所述特定信息为特定游戏角色的属性信息。

另外,在根据本发明实施例的设备中,所述游戏特征包括非时序特征,所述游戏特征提取装置进一步被配置为:基于当前帧游戏数据的原始像素图像,提取与当前帧游戏数据中出现的游戏角色和/或特定物体相关的简化图像特征,以及与所述特定游戏角色和/或当前帧的游戏状态相关的向量特征,作为所述非时序特征。

另外,在根据本发明实施例的设备中,所述游戏特征提取装置进一步被配置为:提取所述特定游戏角色在一帧离线游戏数据中的游戏特征,并将其输入到所述宏观移动区域预测子模型和微观操作预测子模型,以预测所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作和宏观移动趋势;标签提取装置,用于提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作作为标签,并提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签;训练装置,用于分别计算根据微观操作预测子模型预测得到的微观操作与作为标签的微观操作之间的损失函数以及宏观移动区域预测子模型预测得到的宏观移动趋势与作为标签的宏观移动趋势之间的损失函数,并通过计算各损失函数之和来训练所述联合模型。

另外,在根据本发明实施例的设备中,所述标签提取装置进一步被配置为:将全局地图分割为第三预定数量的多个格子;判断所述特定游戏角色在该帧或后续帧离线游戏数据中是否进行了预定行为;如果所述特定游戏角色在该帧或后续帧离线游戏数据中进行了预定行为,则标记该帧或后续帧,并以所述特定游戏角色进行预定行为时所处的格子表示该帧或后续帧的宏观移动趋势;如果所述特定游戏角色在该帧或后续帧离线游戏数据中未进行预定行为,则不标记该帧或后续帧,并以该帧或后续帧之后的第一个标记帧的宏观移动趋势作为该帧或后续帧的宏观移动趋势。

根据本发明的另一方面,提供了一种计算机可读记录介质,其上存储有计算机程序,用于当由处理器执行所述计算机程序时,执行以下处理:提取当前帧游戏数据的游戏特征,并将其输入到联合模型,其中所述联合模型包括用于执行微观操作预测的微观操作预测子模型和用于执行宏观移动趋势预测的宏观移动趋势预测子模型;至少基于输入的游戏特征,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势;以及基于输入的游戏特征和预测出的宏观移动趋势,通过微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

在根据本发明实施例的数据处理方法和设备中,通过联合建模方法,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测子模型,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。并且,通过进一步增加了坐标位置预测子模型,解决了由于敌方游戏角色处于不可见状态而导致的局部视野问题,并提升了游戏ai追击通过草丛或隐身逃跑的敌方游戏角色以及危险区域预判的能力。并且,通过进一步增加区域位置预测子模型,能够将对敌方游戏角色的位置分布预测融入到宏观移动趋势的决策中,进而提升宏观决策的合理性。此外,通过采用监督学习的联合模型训练方法,可以大幅降低对gpu计算资源的需求、训练复杂度和耗费成本,从而有利于在需求变化频繁的moba游戏环境中推广。

附图说明

图1是示出了根据本发明的一个实施例的用于游戏的数据处理方法的具体过程的流程图;

图2是示出了根据本发明的另一个实施例的用于游戏的数据处理方法的具体过程的流程图;

图3是示出了根据本发明的再一个实施例的用于游戏的数据处理方法的具体过程的流程图;

图4示出了提取当前帧游戏图像的时序特征的一种示例的数据流图;

图5示出了当前帧游戏数据的原始像素图像的一种示例;

图6a和图6b分别示出了基于图5中的原始像素图像而得到的全局地图简化图像特征和当前视野简化图像特征;

图7示出了基于图5中的当前帧游戏数据提取的向量特征;

图8是示出了根据本发明的一个实施例的联合模型的离线训练方法的过程的流程图;

图9是示出了提取作为标签的宏观移动趋势的过程的流程图;

图10a到图10c是用于图示宏观移动趋势标签的提取过程的示意图;

图11是示出了根据本发明的另一个实施例的联合模型的离线训练方法的过程的流程图;

图12是示出了根据本发明的再一个实施例的联合模型的离线训练方法的过程的流程图;

图13示出了在联合模型包括宏观移动趋势预测子模型、坐标位置预测子模型、区域位置预测子模型和微观操作预测子模型的情况下的神经网络结构示意图;

图14是本发明的实施例的应用环境的示意图;

图15是示出了根据本发明的一个实施例的用于游戏的数据处理设备的配置的功能性框图;

图16是示出了根据本发明的另一个实施例的用于游戏的数据处理设备的配置的功能性框图;

图17是示出了根据本发明的再一个实施例的用于游戏的数据处理设备的配置的功能性框图;

图18示出了根据本发明的实施例的用于游戏的数据处理设备作为硬件实体的一个示例;以及

图19示出了根据本发明的实施例的计算机可读记录介质的示意图。

具体实施方式

下面将参照附图对本发明的各个优选的实施方式进行描述。提供以下参照附图的描述,以帮助对由权利要求及其等价物所限定的本发明的示例实施方式的理解。其包括帮助理解的各种具体细节,但它们只能被看作是示例性的。因此,本领域技术人员将认识到,可对这里描述的实施方式进行各种改变和修改,而不脱离本发明的范围和精神。而且,为了使说明书更加清楚简洁,将省略对本领域熟知功能和构造的详细描述。

如上文中所述,现有的游戏ai模型仅包括微观操作预测模型,单一地依据输入的游戏特征来预测游戏角色将要执行的微观操作。并且,考虑到在不完全信息条件下,由于存在不可见视野,即特定游戏角色仅能观察到当前视野中的敌方游戏角色,而不能观察到当前视野之外(如,距离特定游戏角色很远的位置处)的敌方游戏角色;并且,在游戏过程中,敌方游戏角色还可能通过技能(如,隐身)或特定遮挡物(如,草丛)处于不可见状态,因此,如果缺乏相应模块根据这种不完全信息进行推断和决策,则会给游戏ai的能力带来极大制约。比如,在游戏过程中,敌方游戏角色突然进入草丛或使用隐身技能从而导致看不到他的具体位置时,若只考虑当前帧游戏数据,则会导致游戏角色的攻击操作终止。再如,在敌方游戏角色长时间未出现在特定游戏角色的当前视野内的情况下,如果缺乏对敌方游戏角色位置的预判,也容易出现被埋伏的局面。

因此,在本发明的用于游戏的数据处理方法中,提出了基于联合模型来从多个角度预测用以最终影响微观操作决策的多个中间预测输出,从而克服了上文中所述的游戏ai设计过程中的局限。

首先,将参照图1描述根据本发明的一个实施例的用于游戏的数据处理方法。如图1所示,所述方法包括以下步骤。

首先,在步骤s101,提取当前帧游戏数据的游戏特征,并将其输入到联合模型,其中所述联合模型包括用于执行微观操作预测的微观操作预测子模型和用于执行宏观移动趋势预测的宏观移动趋势预测子模型。这里的联合模型是用于预测特定游戏角色的微观操作的游戏ai模型。一个游戏角色对应于一个联合模型。在该实施例中,所谓联合,是指根据本发明的模型除了微观操作预测子模型之外,还进一步包括宏观移动趋势预测子模型,以输出用于影响最终的微观操作预测结果的中间预测结果,这将在下文中详细描述。

然后,在步骤s102,至少基于输入的游戏特征,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势,并将预测出的宏观移动趋势进一步作为输入提供到微观操作预测子模型。例如,宏观移动趋势预测子模型可以基于当前帧游戏数据预测当前帧的宏观移动趋势。或者,宏观移动趋势预测子模型也可以基于当前帧游戏数据预测下一帧的宏观移动趋势或下几帧的宏观移动趋势。

如上文中所述,联合模型与游戏角色是一一对应的。因此,假定在本说明书中涉及的联合模型是对应于特定游戏角色的游戏ai模型。在游戏过程中,真实的人类玩家会根据当前帧的游戏状态,从宏观角度来决策当前时刻最应该做的事情,譬如去敌方区域进行攻击、集合我方游戏角色来守卫水晶等。由于以上宏观移动趋势与位置区域具有强相关性,因此为了模拟人类玩家的行为,在本发明中,将特定游戏角色在一帧游戏数据中的宏观移动趋势表示为所述特定游戏角色在该帧游戏数据的时刻最应该“去哪里”的问题。如下文中所述,可以将全局地图分割为预定数量的多个格子。宏观移动趋势具体可以为该多个格子中的一个所表示的区域。例如,如果至少基于输入的游戏特征,通过宏观移动趋势预测子模型预测出的特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势为全局地图中最左下角的一个格子所表示的区域,那么这意味着所述特定游戏角色在当前帧或后续帧的时刻最应该移动至全局地图中最左下角的一个格子所表示的区域。进而,通过将预测出的该宏观移动趋势输入至微观操作预测子模型,可以有助于微观操作预测子模型得到准确的微观操作预测结果。

最后,在步骤s103,基于输入的游戏特征和预测出的宏观移动趋势,通过微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

这里,联合模型可以基于当前帧的游戏特征输入而预测当前帧的微观操作。此外,考虑到在实际操作中,输出微观操作的时刻与在游戏中实际执行该微观操作的时刻之间通常存在一定的延迟,因此作为一种可能的实施方式,联合模型也可以基于当前帧的游戏特征输入而预测后续帧的微观操作。

人类玩家在游戏操作时,首先决定使用哪个按键,然后再决定相应按键的具体操作参数。与此类似,在根据本发明的方法中,预测的微观操作采用了分层设计,即:先预测当前时刻应该执行哪个按键,然后再预测该按键的释放参数。例如,在一种可能的游戏方案中,按键的释放参数可以分为方向型、位置型和目标型。在这种情况下,可以将方向型的释放参数离散化为预定数量(例如,60)个方向,将位置型的释放参数离散化成预定数量(例如,30*30)个位置,将目标型的释放参数表示为候选的攻击目标。微观操作子模型对不同类型的释放参数分别预测,即:对方向型的释放参数预测方向,对位置型的释放参数预测位置,并对目标型的释放参数预测目标。这样的微观操作设计能够更贴近人类玩家在游戏过程中的真实操作意图,更有利于游戏ai的学习。

可见,在根据本发明的该实施例的方法中,通过联合建模方法,将宏观移动趋势预测与微观操作预测这两个子模型进行合并,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的微观动作去那里。因此,基于宏观移动趋势而预测的微观操作主要为方向型和位置型的释放参数。当然,除此之外,微观操作预测子模型预测的微观参数还包括基于输入的当前帧的游戏特征而预测的其他参数。通过将预测出的宏观移动趋势作为输入提供到微观操作预测子模型,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。

接下来,将参照图2描述根据本发明的另一个实施例的用于游戏的数据处理方法。如图2所示,所述方法包括以下步骤。

首先,在步骤s201,提取当前帧游戏数据的游戏特征,并将其输入到联合模型,其中与上文中所述的实施例不同的是,在该另一个实施例中,所述联合模型除了包括微观操作预测子模型和宏观移动趋势预测子模型之外,还进一步包括用于执行坐标位置预测的坐标位置预测子模型。

然后,在步骤s202,至少基于输入的游戏特征,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势。此外,还可以通过坐标位置预测子模型来预测与所述特定游戏角色对立的敌方游戏角色在当前帧或后续帧游戏数据中的坐标位置信息,存储预测出的坐标位置信息。

这里,如上文中所述,特定游戏角色是指联合模型所对应的游戏角色,并且玩家对战玩家游戏由两支玩家数量相等的敌对队伍组成。因此,存在与所述特定游戏角色所属的队伍不同的游戏角色,即与所述特定游戏角色对立的另一游戏角色,在本说明书中,将其称为敌方游戏角色。与所述特定游戏角色对立的敌方游戏角色可以有多个(如,5个)。

坐标位置预测子模型能够预测敌方游戏角色的准确位置,因此在敌方游戏角色距离特定游戏角色很近(如,敌方游戏角色位于特定游戏角色的主视野内)且处于不可见状态时尤其重要。

最后,在步骤s203,基于输入的游戏特征和预测出的宏观移动趋势,通过微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

在该另一个实施例中,将通过坐标位置预测子模型预测的敌方游戏角色在当前帧或后续帧游戏数据中的坐标位置信息进行存储,以便于在下一个预测时刻使用。其目的在于,在当前帧中敌方游戏角色例如通过躲进草丛或使用隐身技能来处于不可见状态的情况下,即在不完全信息条件下,可以使用关于该敌方游戏角色在先前帧游戏数据中的坐标位置信息预测结果来作为当前帧中不可见的敌方游戏角色的位置。在执行这样的位置更新之后,即使敌方游戏角色突然处于不可见状态,所述联合模型也能够输出关于该不可见的敌方游戏角色执行的合理的微观操作。

具体来说,在该另一个实施例中,在步骤s201提取游戏特征之前,还进一步包括以下步骤。

在步骤s200',判断当前帧游戏数据中是否存在不可见的敌方游戏角色。例如,在游戏数据中存在指示该敌方游戏角色是否可见的字段,通过读取该字段的值可以确定当前帧游戏数据中是否存在不可见的敌方游戏角色。

如果在步骤s200'判断出存在不可见的敌方游戏角色,则处理进行到步骤s200”。在步骤s200”,判断是否存在关于不可见的敌方游戏角色在先前帧游戏数据中的坐标位置信息的预测结果。

如果在步骤s200”判断出存在这样的预测结果,则处理进行到步骤s200”'。在步骤s200”',以所述预测结果作为不可见的敌方游戏角色在当前帧游戏数据中的坐标位置。然后,在位置更新之后,处理进行到步骤s201以执行特征提取。另一方面,如果在步骤s200”判断出不存在这样的预测结果,例如,当首次执行位置预测时,则处理进行到步骤s201以执行特征提取。

另一方面,如果在步骤s200'判断出不存在不可见的敌方游戏角色,则处理进行到步骤s201以执行特征提取。

可见,在根据本发明该另一个实施例的方法中,通过联合建模方法,将宏观移动趋势预测、微观操作预测和坐标位置预测这三个子模型进行合并,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测子模型,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。并且,通过进一步增加了坐标位置预测子模型,解决了由于敌方游戏角色处于不可见状态而导致的局部视野问题,并提升了游戏ai追击通过草丛或隐身逃跑的敌方游戏角色以及危险区域预判的能力。

接下来,将参照图3描述根据本发明的再一个实施例的用于游戏的数据处理方法。如图3所示,所述方法包括以下步骤。

首先,在步骤s301,提取当前帧游戏数据的游戏特征,并将其输入到联合模型,其中与上文中所述的实施例不同的是,在该再一个实施例中,所述联合模型除了包括微观操作预测子模型和宏观移动趋势预测子模型之外,还进一步包括用于执行区域位置预测的区域位置预测子模型。

然后,在步骤s302,基于输入的游戏特征,通过区域位置预测子模型来预测与所述特定游戏角色对立的敌方游戏角色在当前帧或后续帧游戏数据中的区域位置信息,并将预测出的区域位置信息提供至宏观趋势预测子模型。

与上文中的另一个实施例中的坐标位置预测子模型不同,区域位置预测子模型输出的是敌方游戏角色的区域位置信息。与准确的坐标位置信息相比,区域位置信息只能表示敌方游戏角色的大概位置,因此在敌方游戏角色距离特定游戏角色很远(例如,敌方游戏角色出现在特定游戏角色主视野外)的情况下尤其重要。敌方游戏角色的区域位置信息与特定游戏角色的宏观移动趋势更相关,影响的是特定游戏角色区域转移的宏观决策。

例如,可以将全局地图分割为预定数量的格子。基于输入的游戏特征,区域位置预测子模型输出的是敌方游戏角色在所有格子内的概率分布(其概率和为1),并将概率最大的一个格子作为最终的区域位置预测结果。例如,可以以格子标识符(id)作为表示区域位置的信息。

接下来,在步骤s303,基于输入的游戏特征和预测出的区域位置信息,通过宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势,并将预测出的宏观移动趋势进一步作为输入提供到微观操作预测子模型。这里,在该再一个实施例中,除了输入的游戏特征之外,进一步将区域位置信息的预测结果作为输入提供至宏观移动趋势预测子模型。

最后,在步骤s304,基于输入的游戏特征和预测出的宏观移动趋势,通过微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

可见,在根据本发明的该再一个实施例的方法中,通过联合建模方法,将宏观移动趋势预测、微观操作预测和区域位置预测这三个子模型进行合并,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测子模型,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。并且,通过进一步增加区域位置预测子模型,能够将对敌方游戏角色的位置分布预测融入到宏观移动趋势的决策中,进而提升宏观决策的合理性。

另外,作为另一种可能的实施方式,也可以将上文中所述的另一个实施例和再一个实施例相结合。具体来说,联合模型可以包括微观操作预测子模型、宏观移动趋势预测子模型、坐标位置预测子模型和区域位置预测子模型。其中,如上文中所述,坐标位置预测子模型输出的坐标位置用于在敌方游戏角色不可见时更新其位置,区域位置预测子模型输出的区域位置用于辅助宏观移动趋势预测子模型的决策,且微观操作预测子模型基于输入的游戏特征和宏观移动趋势来预测特定游戏角色在当前帧或后续帧要执行的微观操作。

在上文中描述了作为游戏ai的联合模型的几种可能的配置,以及在联合模型的不同配置下执行的数据处理方法的具体过程。接下来,将关于输入至联合模型的游戏特征的提取方法给出描述。

总的来说,基于输入的当前帧游戏数据提取的游戏特征包括时序特征和非时序特征。

时序特征是指除了基于当前帧游戏数据之外,还进一步基于历史帧(即,当前帧之前的帧)游戏数据提取的特征。

具体来说,提取当前帧游戏数据的时序特征的步骤可以进一步包括以下步骤。

首先,从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取与所述特定游戏角色对立的敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第一预定间隔。

然后,将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第一时序特征。

例如,作为一种可能的实施方式,所述特定信息可以为特定游戏角色的属性信息(如,血量、能量)。在这种情况下,从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取特定游戏角色的属性信息,并且将提取出的多个属性信息形成序列,作为第一时序特征。例如,可以将基于属性信息形成的时序特征作为输入提供到上文中所述的微观操作预测子模型。

另外,除了提取当前帧游戏数据的第一时序特征之外,还可以进一步提取当前帧游戏数据的第二时序特征。具体来说,提取当前帧游戏数据的时序特征的步骤进一步包括以下步骤。

首先,从当前帧以及当前帧之前的第二数量的帧的游戏数据中,提取所述敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第二预定间隔。

然后,将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第二时序特征。

通过将第二时序特征的提取过程与第一时序特征的提取过程相比较,可以看出,尽管二者都是基于提取的多个特定信息形成的序列,但提取特定信息的相邻两帧之间的间隔不同,且提取特定信息的帧的数量不同。例如,在形成第一时序特征时提取特定信息的相邻两帧之间的间隔可以小于在形成第二时序特征时提取特定信息的相邻两帧之间的间隔,且在形成第一时序特征时提取特定信息的帧的数量可以小于在形成第二时序特征时提取特定信息的帧的数量。在这种情况下,第一时序特征表示的是短时时序特征,而第二时序特征表示的是长时时序特征。

当游戏ai需要对不可见的敌方游戏角色的位置分布做出预测时,可以结合此前一段时间内观察到的敌方游戏角色的位置变化分布以做出综合判断。因此,作为另一种可能的实施方式,所述特定信息也可以为敌方游戏角色的坐标位置信息。在这种情况下,从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取敌方游戏角色的坐标位置信息,并且将提取出的多个坐标位置信息形成序列,作为第一时序特征。并且,从当前帧以及当前帧之前的第二数量的帧的游戏数据中,提取敌方游戏角色的坐标位置信息,并且将提取出的多个坐标位置信息形成序列,作为第二时序特征。

例如,可以将第一时序特征作为提供到坐标位置预测子模块的输入,并且可以将第二时序特征作为提供到区域位置预测子模块的输入。

如上文中所述,区分坐标位置预测和区域位置预测,是为了应对不同场景下的位置预估。当敌方游戏角色距离“我(即,特定游戏角色)”很近并且不可见(如躲在距离我很近的草丛里,或者在我附近使用了隐身技能)

时,需要知道敌方游戏角色的精确位置,才能更好的攻击他,因此短期高频采样的历史数据对于预测精确位置是有帮助的;当敌方游戏角色距离“我”很远时,只需要知道他大概的位置分布就可以了(这里用格子id表示他所在的区域),因此长期低频采样的历史数据对于预测粗略位置是有帮助的。坐标位置预测子模型和区域位置预测子模型的不同用途决定了输入的时序特征的参数不同。具体地,坐标位置预测子模型期望以在较短时段中以较高频率提取的坐标位置形成的序列作为输入,相比之下,区域位置预测子模型期望以在较长时段中以较低频率提取的坐标位置形成的序列作为输入。

图4示出了提取当前帧游戏图像的时序特征的一种示例的数据流图。在图4的示例中,假设当前帧为第1000帧。以3帧为间隔来提取当前帧和当前之前的50个帧的坐标位置信息。具体地,分别提取第1000帧、第997帧、第994帧、……第850帧的坐标位置信息。然后,将提取出的多个位置坐标信息拼接为第一时序特征。从第1000帧到第850帧的时序长度为10秒,也就是说,形成第一时序特征需要考虑从当前时刻起10秒时间段内的历史数据。例如,在存在5个敌方游戏角色的情况下,第一时序特征为10*50维的矩阵。

另外,以15帧为间隔来提取当前帧和当前之前的60个帧的坐标位置信息。具体地,分别提取第1000帧、第985帧、第970帧、……第100帧的坐标位置信息。然后,将提取出的多个位置坐标信息拼接为第二时序特征。从第1000帧到第100帧的时序长度为1分钟,也就是说,形成第二时序特征需要考虑从当前时刻起1分钟时间段内的历史数据。例如,在存在5个敌方游戏角色的情况下,第二时序特征为10*60维的矩阵。

在特定信息是坐标位置信息的情况下,分别提取当前帧以及当前帧之前的多个帧的游戏数据中敌方游戏角色的特定信息的步骤进一步包括:当敌方游戏角色处于可见状态时,提取其在该帧中的坐标值作为坐标位置信息;以及当敌方游戏角色处于不可见状态时,提取固定坐标值(如,(0,0))作为坐标位置信息。

在上文中描述了所述特定信息为敌方游戏角色的一维的坐标位置信息,并且基于一维的坐标位置信息的历史数据来构造时序特征。可替代地,作为另一种可能的实施方式,所述特定信息可以为基于敌方游戏角色的坐标位置信息构造的二维图像信息。具体来说,可以把全局地图分割成预定数量的格子,基于敌方游戏角色的坐标位置在全局地图中标记对应的格子,例如,将坐标位置所处的格子设置为黑色,而将其他格子设置为白色,以将一维的(x,y)坐标信息转换为二维的图像。在这种实施方式中,第一时序特征为第一数量的二维图像形成的序列,而第二时序特征为第二数量的二维图像形成的序列,其中每个二维图像均对应于特定游戏角色在一个历史帧中的一维坐标位置。

如上文中所述,除了时序特征之外,基于输入的当前帧游戏数据提取的游戏特征还包括非时序特征。

与时序特征不同的是,非时序特征可以是仅基于当前帧游戏数据而提取的特征。在根据本发明的数据处理方法中,采用了一种多模态、多尺度的非时序特征表达。具体地,提取当前帧游戏数据的非时序特征的步骤进一步包括:基于当前帧游戏数据的原始像素图像,提取与当前帧游戏数据中出现的游戏角色和/或特定物体相关的简化图像特征,以及与所述特定游戏角色和/或当前帧的游戏状态相关的向量特征,作为所述非时序特征。

这里,简化图像特征是一种从原始像素图像中构造的二维特征,降低了直接从原始的复杂图像中学习的难度。简化图像特征可以包括全局地图简化图像特征和当前视野简化图像特征。例如,全局地图简化图像特征包括当前帧游戏数据中出现的游戏角色(如,英雄、兵线、野怪)等位置,用于表达宏观尺度的信息。这里,当前帧游戏数据中出现的游戏角色不仅包括与特定游戏角色属于不同阵营的敌方游戏角色,还包括与特定游戏角色属于同一阵营的我方游戏角色。并且,全局地图中的游戏角色可能并未出现在当前视野中。此外,例如,当前视野简化图像特征包括当前视野中出现的游戏角色、特定物体(如,防御塔、草丛、障碍物、子弹等)等的位置,用于表达局部的微观尺度信息。类似地,当前视野中出现的游戏角色不限于特定游戏角色和敌方游戏角色,也可以是与特定游戏角色属于同一阵营的我方游戏角色。

图5示出了当前帧游戏数据的原始像素图像的一种示例,其中501所标示的区域为全局地图,502所标示的区域为当前视野。图6a和图6b分别示出了基于图5中的原始像素图像而得到的全局地图简化图像特征和当前视野简化图像特征。

例如,与所述特定游戏角色相关的向量特征可以包括特定游戏角色的属性特征,如血量、攻击力等。此外,与当前帧的游戏状态相关的向量特征还可以包括诸如时间、比分之类的全局信息。图7示出了基于图5中的当前帧游戏数据提取的向量特征。

关于当前帧游戏数据提取的图7中所示的向量特征通过与图6a和图6b所示的简化图像特征建立一一映射关系,即:将关于当前帧游戏数据提取的向量特征和简化图像特征作为当前帧的一组非时序特征,既可用于宏观移动趋势的决策,也可以用于微观操作的决策。这种模拟人类视角的多模态、多尺度特征不仅可以更好地对空间相对位置关系进行建模,而且非常适合moba游戏中高维状态特征的表达。

在上文中,示意性地描述了将第一时序特征输入到坐标位置预测子模型,将第二时序特征输入到区域位置预测子模型,以及将能量、血量之类的时序特征和非时序特征输入到微观操作子模型的情况,但是本发明并不仅限于此。例如,也可以将非时序特征输入到坐标位置预测子模型和区域位置预测子模型。并且,提供到各子模型的特征可以相同,也可以不同。本领域的技术人员可以理解,根据具体的实际应用,可以灵活地进行变更和组合。

在上文中,详细描述了基于联合模型来预测特定游戏角色将要执行的微观操作的数据处理方法的具体过程。换言之,上文中描述的数据处理方法是将所述联合模型应用于在线游戏进程中以指导作为非真实人类玩家的游戏ai进行何种微观操作的过程。这里,需要指出的是,所述联合模型在应用于在线游戏进行之前需要进行离线训练处理。在本发明中,采用基于监督学习的方法来实现所述联合模型的离线训练处理。

联合模型的离线训练处理与上文中所述的在线应用处理的不同在于,首先,上文中所述的在线应用处理所依据的是实时的、未知的在线游戏数据,即:基于当前帧游戏数据,游戏角色将要执行何种微观操作是未知的;相比之下,离线训练处理所依据的非实时的、已知的离线游戏数据,即:该离线游戏数据是真实人类玩家已经完成的游戏,因此游戏角色所执行的微观操作都是确定的且已经发生的操作。其次,除了在线应用处理中涉及的游戏特征提取和联合模型预测处理之外,离线训练处理还进一步包括标签提取处理。所谓标签,是指在监督学习中用于作为判断联合模型的输出是否准确的标准。与现有技术中采用强化学习的训练方案相比,大幅地降低了对gpu计算资源的需求、训练复杂度以及耗费成本,从而易于在需求变化频繁的moba游戏环境中推广。

具体来说,在根据本发明的数据处理方法中,所述联合模型通过以下训练步骤得到。

图8是示出了根据本发明的一个实施例的联合模型的离线训练方法的过程的流程图。

首先,在步骤s801,提取所述特定游戏角色在一帧离线游戏数据中的游戏特征,并将其输入到所述联合模型,以预测所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作和宏观移动趋势。这里,离线游戏数据中的游戏特征提取的具体过程与上文中所述的在线游戏应用中的游戏特征提取的具体过程完全相同,区别仅在于用以提取游戏特征的数据不同,离线训练处理时用以提取游戏特征的数据是离线游戏数据,而在线游戏应用时用以提取游戏特征的数据是在线游戏数据。

然后,在步骤s802,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作作为标签,并提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签。

作为标签的微观操作与微观操作预测子模型输出的微观操作是彼此对应的。例如,如果微观操作预测子模型输出的是关于当前帧游戏数据的微观操作预测结果,那么作为标签提取的微观操作是在当前帧游戏数据中实际执行的微观操作。如果微观操作预测子模型输出的是关于后续帧游戏数据的微观操作预测结果,那么作为标签提取的微观操作是在后续帧游戏数据中实际执行的微观操作。与上文中所述的微观操作设计类似地,作为标签的微观操作也包括关于执行哪个按键的参数以及该按键的释放参数。

另外,图9是示出了提取作为标签的宏观移动趋势的过程的流程图。如图9所示,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签的处理进一步包括以下步骤。

首先,在步骤s901,将全局地图分割为第三预定数量的多个格子。这里需要指出的是,在上文中描述区域坐标预测子模型输出的区域位置时也提到了将全局地图分割为预定数量的多个格子。这两种情况下全局地图分割的格子数量可以相同,也可以不同。此外,在上文中描述二维时序特征时提到的全局地图分割的格子数量相比于前述两种情况下分割的格子数量更多,以便于能够基于一维坐标位置信息更精确地转换为二维图像形式。

然后,在步骤s902,判断所述特定游戏角色在该帧或后续帧离线游戏数据中是否进行了预定行为。例如,所述预定行为可以是攻击行为。或者,所述预定行为也可以是在固定位置处停留时间超过预定阈值的行为(停留行为)。可以基于多帧游戏数据来判断某一帧离线游戏数据中是否发生了停留行为。

如果在步骤s902判断出所述特定游戏角色在该帧或后续帧离线游戏数据中进行了预定行为,则处理进行到步骤s903。在步骤s903,标记该帧或后续帧,并以所述特定游戏角色进行预定行为时所处的格子表示该帧或后续帧的宏观移动趋势。

另一方面,如果在步骤s902判断出所述特定游戏角色在该帧或后续帧离线游戏数据中未进行预定行为,则处理进行到步骤s904。在步骤s904,不标记该帧或后续帧,并以该帧或后续帧之后的第一个标记帧的宏观移动趋势作为该帧或后续帧的宏观移动趋势。

为了便于理解宏观移动趋势标签的提取过程,图10a到图10c分别示出了三个时刻(分别为第t0时刻、ts时刻和ts+1时刻)的游戏画面,其主视角均为上文中所述的特定游戏角色,且第t0时刻、ts时刻和ts+1时刻按照时间先后顺序排列。以攻击行为为例进行说明。在图10a所示的第t0时刻,特定游戏角色开始直奔a0区域。在图10b所示的第ts时刻到达a0区域,并首次发生攻击行为。那么,将时间段[t0,ts]之间的每一帧的宏观移动趋势标签都以a0区域表示。如图中的箭头所示,可以这样理解,如果特定游戏角色在a0区域发生了攻击行为,那么将以a0区域表示的宏观移动趋势逐帧回传到此前未标注宏观移动趋势的帧。接下来,在图10c所示的第ts+1时刻,所述特定游戏角色转移到与a0区域不同的as+1区域,并再次发生攻击行为。那么,将时间段(ts,ts+1]之间的每一帧的宏观移动趋势标签都以as+1区域表示。

接下来,返回参照图8,在提取了微观操作标签和宏观移动趋势标签之后,处理进行到步骤s803。在步骤s803,分别计算预测得到的微观操作与作为标签的微观操作之间的损失函数以及预测得到的宏观移动趋势与作为标签的宏观移动趋势之间的损失函数。

最后,在步骤s804,通过计算各损失函数之和来训练所述联合模型。

在最初开始训练时,所述联合模型的各输出可能与作为标准的标签之间的差异较大,换言之,各损失函数之和较大。此时,需要进一步调整各子模型的参数以进行下一次训练。当各损失函数之和小于预定阈值时,所述联合模型训练完毕,并可以将训练完成的联合模型应用于在线游戏,以输出用于模拟真实人类玩家的游戏ai应执行的微观操作。

图11是示出了根据本发明的另一个实施例的联合模型的离线训练方法的过程的流程图。

首先,在步骤s1101,与步骤s801类似,提取所述特定游戏角色在一帧离线游戏数据中的游戏特征,并将其输入到所述联合模型,以预测所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作和宏观移动趋势。

然后,在步骤s1102,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作作为标签,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签,其中提取宏观移动趋势标签的具体过程与上文中参照图9描述的过程相同,并且与步骤s802不同的是,还进一步提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的坐标位置信息作为标签。

在步骤s1103,分别计算预测得到的微观操作与作为标签的微观操作之间的损失函数、预测得到的宏观移动趋势与作为标签的宏观移动趋势之间的损失函数以及预测得到的坐标位置信息与作为标签的坐标位置信息之间的损失函数。

最后,在步骤s1104,通过计算各损失函数之和来训练所述联合模型。

例如,作为一种可能的实施方式,对于坐标位置信息,可以采用huberloss作为损失函数进行回归拟合。其中,huberloss的主要作用在于减小奇异点对模型的影响,定义如下:当预测误差a(即,预测出的坐标位置信息与真实的坐标位置信息之差)小于等于δ时,损失函数lδ(a)以平方误差表示;当预测误差大于δ时,损失函数lδ(a)以线性误差表示,其中δ为一预设阈值。具体公式为:

图12是示出了根据本发明的再一个实施例的联合模型的离线训练方法的过程的流程图。

首先,在步骤s1201,与步骤s801类似,提取所述特定游戏角色在一帧离线游戏数据中的游戏特征,并将其输入到所述联合模型,以预测所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作和宏观移动趋势。

然后,在步骤s1202,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作作为标签,提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签,其中提取宏观移动趋势标签的具体过程与上文中参照图9描述的过程相同,并且与步骤s802不同的是,还进一步提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的区域位置信息作为标签。

在步骤s1203,分别计算预测得到的微观操作与作为标签的微观操作之间的损失函数、预测得到的宏观移动趋势与作为标签的宏观移动趋势之间的损失函数以及预测得到的区域位置信息与作为标签的区域位置信息之间的损失函数。

最后,在步骤s1204,通过计算各损失函数之和来训练所述联合模型。

例如,作为一种可能的实施方式,对于区域位置信息,可以采用交叉熵损失函数为目标函数进行分类拟合。

此外,在将上文中所述的另一个实施例和再一个实施例相结合的情况下,即:联合模型可以包括微观操作预测子模型、宏观移动趋势预测子模型、坐标位置预测子模型和区域位置预测子模型的情况下,也可以应用上文中描述的另一个实施例和再一个实施例的训练方法。

在上文中,参照附图详细描述了用于游戏的数据处理方法,其中包括作为游戏ai的联合模型的在线应用方法以及离线训练方法。例如,作为一种可能的实施方式,所述联合模型可以通过神经网络来实现。图13示出了在联合模型包括宏观移动趋势预测子模型、坐标位置预测子模型、区域位置预测子模型和微观操作预测子模型的情况下的神经网络结构示意图。

如图13所示,微观操作预测子模型和宏观移动趋势预测子模型的共同输入是当前帧的非时序特征,包括向量特征、全局地图简化图像特征和当前视野简化图像特征。其中,向量特征经过全连接网络(fc)进行编码,简化图像特征分别经过两个卷积网络(conv)进行编码并展开(flat)成一维向量,然后拼接(concat)成公共编码层。

将公共编码层与区域位置预测子模型的输出进行拼接后,作为宏观移动趋势预测子模型的输入,用以预测特定游戏角色的宏观移动趋势。

此外,将公共编码层与宏观移动趋势预测子模型的输出进行拼接后,作为微观操作预测子模型的输入,分别预测按键和释放参数。

如上文中所述,坐标位置预测子模型的输入为过去若干帧主视角观察到的敌方游戏角色的位置序列特征(如,上文中所述的第一时序特征)。如图13所示,位置序列特征的每一帧先分别经过全连接网络进行编码,输入到lstm(长短期记忆网络)层。lstm是应用比较广泛的时序模型,主要作用是把过去已有的信息传递到当前时刻,并考虑当前时刻的特征输入,再作出决策。lstm层的输出结果最后经过全连接网络进行编码,进而预测每个敌方游戏角色的真实坐标位置。

区域坐标预测子模型的输入同样为过去若干帧主视角观察到的敌方游戏角色位置序列特征(如,上文中所述的第二时序特征)。它与坐标位置预测子模型的区域主要在于:输入序列的间隔更大、序列长度更长、输出为敌方游戏角色所处的格子id。

在上文中参照附图详细描述了根据本发明实施例的用于游戏的数据处理方法。接下来,将描述根据本发明实施例的用于游戏的数据处理设备。

首先,将简要描述本发明的实施例的应用环境。如图14所示,服务器10通过网络30连接到多个终端设备20。所述多个终端设备20是运行游戏的设备。所述终端可以是智能终端,例如智能电话、pda(个人数字助理)、台式计算机、笔记本计算机、平板计算机等,也可以是其他类型的终端。所述服务器10为用于基于离线游戏数据训练联合模型的设备。并且,所述服务器也是将完成训练的联合模型应用于游戏的设备。具体来说,所述服务器10与终端设备20连接,从终端设备20接收游戏的游戏数据(例如,下文中所述的当前帧的游戏特征),基于服务器10上的训练好的联合模型产生将要执行何种动作的指令,并将该指令传送到终端设备20以在游戏中执行确定的动作。所述服务器10可以是下文中描述的数据处理设备。所述网络30可以是任何类型的有线或无线网络,例如因特网。应当认识到,图14所示的终端设备20的数量是示意性的,而不是限制性的。

下面,将参照图15描述根据本发明的一个实施例的用于游戏的数据处理设备。如图15所示,数据处理设备1500包括:游戏特征提取装置1501和预测装置1502。

游戏特征提取装置1501用于提取当前帧游戏数据的游戏特征。

预测装置1502包括用于执行微观操作预测的微观操作预测装置15021和用于执行宏观移动趋势预测的宏观移动趋势预测装置15022,其中所述宏观移动趋势预测装置15022基于所述游戏特征提取装置1501提取的游戏特征,根据宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势,并且所述微观操作预测装置15021基于所述游戏特征提取装置1501提取的游戏特征和所述宏观移动趋势预测装置15022预测出的宏观移动趋势,根据微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

可见,在根据本发明该实施例的设备中,通过将宏观移动趋势预测与微观操作预测这两个装置进行结合,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测装置,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。

图16是示出了根据本发明的另一个实施例的用于游戏的数据处理设备的配置的功能性框图。如图16所示,数据处理设备1600包括:游戏特征提取装置1601、预测装置1602、存储装置1603和预处理装置1604。

游戏特征提取装置1601用于提取当前帧游戏数据的游戏特征。

预测装置1602包括用于执行微观操作预测的微观操作预测装置

16021、用于执行宏观移动趋势预测的宏观移动趋势预测装置16022和用于执行坐标位置预测的坐标位置预测装置16023,其中所述宏观移动趋势预测装置16022基于所述游戏特征提取装置1601提取的游戏特征,根据宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势;所述微观操作预测装置16021基于所述游戏特征提取装置1601提取的游戏特征和所述宏观移动趋势预测装置16022预测出的宏观移动趋势,根据微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作;并且坐标位置预测装置16023用于基于输入的游戏特征,根据位置坐标预测子模型来预测与所述特定游戏角色对立的敌方游戏角色在当前帧或后续帧游戏数据中的坐标位置信息。

存储装置1603用于存储所述坐标位置预测装置预测出的所述坐标位置信息。

预处理装置1604用于判断当前帧游戏数据中是否存在不可见的敌方游戏角色,如果当前帧游戏数据中存在不可见的敌方游戏角色,则判断所述存储装置中是否存在关于不可见的敌方游戏角色在先前帧游戏数据中的坐标位置信息的预测结果;如果所述存储装置1603中存在关于不可见的敌方游戏角色在先前帧游戏数据中的坐标位置信息的预测结果,则以所述预测结果作为不可见的敌方游戏角色在先前帧游戏数据中的坐标位置,并将更新位置后的游戏数据提供到所述游戏特征提取装置1601。

可见,在根据本发明的另一个实施例的设备中,通过将宏观移动趋势预测、微观操作预测和坐标位置预测这三个装置进行结合,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测装置,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。并且,通过进一步增加了坐标值预测装置,解决了由于敌方游戏角色处于不可见状态而导致的局部视野问题,并提升了游戏ai追击通过草丛或隐身逃跑的敌方游戏角色以及危险区域预判的能力。

图17是示出了根据本发明的再一个实施例的用于游戏的数据处理设备的配置的功能性框图。如图17所示,数据处理设备1700包括:游戏特征提取装置1701和预测装置1702。

游戏特征提取装置1701用于提取当前帧游戏数据的游戏特征。

预测装置1702包括用于执行微观操作预测的微观操作预测装置

17021、用于执行宏观移动趋势预测的宏观移动趋势预测装置17022和用于执行区域位置预测的区域位置预测装置17023,其中所述区域位置预测装置17023基于输入的游戏特征,根据区域位置预测子模型来预测所述敌方游戏角色在当前帧或后续帧游戏数据中的区域位置信息;所述宏观移动趋势预测装置17022基于所述游戏特征提取装置1701提取的游戏特征和所述区域位置预测装置17023预测出的区域位置信息,根据宏观移动趋势预测子模型来预测特定游戏角色在当前帧或后续帧游戏数据中的宏观移动趋势;所述微观操作预测装置17021基于所述游戏特征提取装置1701提取的游戏特征和所述宏观移动趋势预测装置17022预测出的宏观移动趋势,根据微观操作预测子模型来预测所述特定游戏角色在当前帧或后续帧游戏数据中将要执行的微观操作。

可见,在根据本发明再一个实施例的设备中,通过将宏观移动趋势预测、微观操作预测和区域位置预测这三个装置进行结合,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测子模型,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。并且,通过进一步增加区域位置预测装置,能够将对敌方游戏角色的位置分布预测融入到宏观移动趋势的决策中,进而提升宏观决策的合理性。

接下来,将关于游戏特征提取装置的具体细节给出描述。

总的来说,基于输入的当前帧游戏数据提取的游戏特征包括时序特征和非时序特征。

当提取时序特征时,所述游戏特征提取装置进一步被配置为:从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取与所述特定游戏角色对立的敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第一预定间隔;以及将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第一时序特征。

例如,作为一种可能的实施方式,所述特定信息可以为特定游戏角色的属性信息(如,血量、能量)。在这种情况下,从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取特定游戏角色的属性信息,并且将提取出的多个属性信息形成序列,作为第一时序特征。例如,可以将基于属性信息形成的时序特征作为输入提供到上文中所述的微观操作预测子模型。

另外,除了提取当前帧游戏数据的第一时序特征之外,还可以进一步提取当前帧游戏数据的第二时序特征。具体来说,所述游戏特征提取装置进一步被配置为:从当前帧以及当前帧之前的第二数量的帧的游戏数据中,提取所述敌方游戏角色的特定信息,其中所提取的相邻两帧之间的间隔为第二预定间隔;以及将关于各帧提取的特定信息形成序列,以作为当前帧游戏数据的第二时序特征。

通过将第二时序特征的提取过程与第一时序特征的提取过程相比较,可以看出,尽管二者都是基于提取的多个特定信息形成的序列,但提取特定信息的相邻两帧之间的间隔不同,且提取特定信息的帧的数量不同。

当游戏ai需要对不可见的敌方游戏角色的位置分布做出预测时,可以结合此前一段时间内观察到的敌方游戏角色的位置变化分布以做出综合判断。因此,作为另一种可能的实施方式,所述特定信息也可以为敌方游戏角色的坐标位置信息。在这种情况下,从当前帧以及当前帧之前的第一数量的帧的游戏数据中,提取敌方游戏角色的坐标位置信息,并且将提取出的多个坐标位置信息形成序列,作为第一时序特征。并且,从当前帧以及当前帧之前的第二数量的帧的游戏数据中,提取敌方游戏角色的坐标位置信息,并且将提取出的多个坐标位置信息形成序列,作为第二时序特征。

在特定信息是坐标位置信息的情况下,所述游戏特征提取装置进一步被配置为:当敌方游戏角色处于可见状态时,提取其在该帧中的坐标值作为坐标位置信息;以及当敌方游戏角色处于不可见状态时,提取固定坐标值作为坐标位置信息。

在上文中描述了所述特定信息为敌方游戏角色的一维的坐标位置信息,并且基于一维的坐标位置信息的历史数据来构造时序特征。可替代地,作为另一种可能的实施方式,所述特定信息可以为基于敌方游戏角色的坐标位置信息构造的二维图像信息。具体来说,可以把全局地图分割成预定数量的格子,基于敌方游戏角色的坐标位置在全局地图中标记对应的格子,例如,将坐标位置所处的格子设置为黑色,而将其他格子设置为白色,以将一维的(x,y)坐标信息转换为二维的图像。在这种实施方式中,第一时序特征为第一数量的二维图像形成的序列,而第二时序特征为第二数量的二维图像形成的序列。

如上文中所述,除了时序特征之外,基于输入的当前帧游戏数据提取的游戏特征还包括非时序特征。

当提取非时序特征时,所述游戏特征提取装置进一步被配置为:基于当前帧游戏数据的原始像素图像,提取与当前帧游戏数据中出现的游戏角色和/或特定物体相关的简化图像特征,以及与所述特定游戏角色和/或当前帧的游戏状态相关的向量特征,作为所述非时序特征。

在上文中,详细描述了基于联合模型来预测特定游戏角色将要执行的微观操作的数据处理设备的具体操作。换言之,上文中描述的数据处理设备是将所述联合模型应用于在线游戏进程中以指导作为非真实人类玩家的游戏ai进行何种微观操作的过程。这里,需要指出的是,所述联合模型在应用于在线游戏进行之前需要进行离线训练处理。在本发明中,采用基于监督学习的方法来实现所述联合模型的离线训练处理。

在离线训练时,上文中所述的游戏特征提取装置进一步被配置为:提取所述特定游戏角色在一帧离线游戏数据中的游戏特征,并将其输入到相应的预测子模型。

此外,根据本发明的数据处理设备进一步包括:标签提取装置(图中未示出),用于提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的微观操作作为标签,并提取所述特定游戏角色在该帧或该帧之后的后续帧离线游戏数据中的宏观移动趋势作为标签;以及训练装置,用于分别计算根据微观操作预测子模型预测得到的微观操作与作为标签的微观操作之间的损失函数以及宏观移动区域预测子模型预测得到的宏观移动趋势与作为标签的宏观移动趋势之间的损失函数,并通过计算各损失函数之和来训练所述联合模型。

其中,所述标签提取装置进一步被配置为通过以下处理来提取宏观移动趋势标签:将全局地图分割为第三预定数量的多个格子;判断所述特定游戏角色在该帧或后续帧离线游戏数据中是否进行了预定行为;如果所述特定游戏角色在该帧或后续帧离线游戏数据中进行了预定行为,则标记该帧或后续帧,并以所述特定游戏角色进行预定行为时所处的格子表示该帧或后续帧的宏观移动趋势;如果所述特定游戏角色在该帧或后续帧离线游戏数据中未进行预定行为,则不标记该帧或后续帧,并以该帧或后续帧之后的第一个标记帧的宏观移动趋势作为该帧或后续帧的宏观移动趋势。

此外,如果联合模型还进一步包括坐标位置预测子模型和/或区域位置预测子模型,则标签提取装置还进一步提取真实的坐标位置和区域位置作为标签。并且,训练装置进一步计算各个损失函数之和来训练所述联合模型。

由于根据本发明实施例的数据处理设备中各装置的具体操作与根据本发明实施例的数据处理方法中的各步骤完全对应,因此为了避免冗余起见,这里未对其细节展开赘述。本领域的技术人员可以理解,根据本发明实施例的数据处理方法中的各步骤可以类似地应用于根据本发明实施例的数据处理设备中的各装置。

根据本发明的实施例的用于游戏的数据处理设备作为硬件实体的一个示例如图18所示。所述终端设备包括处理器1801、存储器1802以及至少一个外部通信接口1803。所述处理器1801、存储器1802以及外部通信接口1803均通过总线1804连接。

对于用于数据处理的处理器1801而言,在执行处理时,可以采用微处理器、中央处理器(cpu,centralprocessingunit)、数字信号处理器(dsp,digitalsingnalprocessor)或可编程逻辑阵列(fpga,field-programmablegatearray)实现;对于存储器1802来说,包含操作指令,该操作指令可以为计算机可执行代码,通过所述操作指令来实现上述本发明实施例的用于游戏的数据处理方法中的各个步骤。

图19示出了根据本发明的实施例的计算机可读记录介质的示意图。如图19所示,根据本发明实施例的计算机可读记录介质1900其上存储有计算机程序指令1901。当所述计算机程序指令1901由处理器运行时,执行参照以上附图描述的根据本发明实施例的用于游戏的数据处理方法。

迄今为止,已经参照附图描述了根据本发明实施例的用于游戏的数据处理方法和设备。在根据本发明实施例的数据处理方法和设备中,通过联合建模方法,更符合人类的决策过程,即:首先决定应该去哪里,然后再执行相应的动作去那里。通过将预测出的宏观移动趋势作为输入提供到微观操作预测子模型,实现了以宏观移动趋势来辅助微观操作的预测,确保了宏观资源调控与微观操作的一致性,并提高了微观操作的合理性和准确性。并且,通过进一步增加了坐标位置预测子模型,解决了由于敌方游戏角色处于不可见状态而导致的局部视野问题,并提升了游戏ai追击通过草丛或隐身逃跑的敌方游戏角色以及危险区域预判的能力。并且,通过进一步增加区域位置预测子模型,能够将对敌方游戏角色的位置分布预测融入到宏观移动趋势的决策中,进而提升宏观决策的合理性。此外,通过采用监督学习的联合模型训练方法,可以大幅降低对gpu计算资源的需求、训练复杂度和耗费成本,从而有利于在需求变化频繁的moba游戏环境中推广。

需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

最后,还需要说明的是,上述一系列处理不仅包括以这里所述的顺序按时间序列执行的处理,而且包括并行或分别地、而不是按时间顺序执行的处理。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过软件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁盘、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1