信息处理方法及装置、存储介质和电子装置与流程

文档序号:18108665发布日期:2019-07-06 11:50阅读:167来源:国知局
信息处理方法及装置、存储介质和电子装置与流程

本发明涉及计算机领域,具体而言,涉及一种信息处理方法及装置、存储介质和电子装置。



背景技术:

游戏中非玩家角色(non-playercharacter,简称为npc)的行为策略是游戏体验的一个很重要的组成部分。目前深度强化学习在游戏中有着广泛的应用场景,通过深度强化学习训练出来的决策网络在游戏中拥有比传统人工编写的策略更高的智能,可以应对更复杂的游戏环境。

目前,已经有不少游戏开始使用深度强化学习的技术来编写游戏中的人工智能(artificialintelligence,简称为ai)。使用的技术包括强化学习、监督学习、模仿学习等。深度强化学习结合了强化学习和深度神经网络各自的优势,能够通过在游戏环境中不断的模拟获取经验样本,从而学会合理的决策网络。这种方式生成ai的质量好,灵活性强,并且比人工编写的方式效率更高。

但是,决策网络虽然拥有了非常高的智能,但由于决策网络自身是一个网状结构的特性,导致其每次在进行决策时都会需要整个网络中所有的节点参与,并且这种运算一般都是矩阵乘法,其复杂度本身就比较高,这两方面的因素导致了网络的运算会消耗很多资源且花费很多时间。而网络游戏是在服务器端使用决策网络做决策;这时,大量的网络决策运算会使得服务器不堪重负或者是把运算分摊在客户端,由客户端来做决策,这对于手机客户端来说负担会比较重。

针对相关技术中的上述问题,目前尚未存在有效的解决方案。



技术实现要素:

本发明实施例提供了一种信息处理方法及装置、存储介质和电子装置,以至少解决相关技术中网络游戏在服务器端使用决策网络做决策或在客户端由决策网络做决策导致服务器和客户端负担比较重的问题。

根据本发明的一个实施例,提供了一种信息处理方法,包括:根据决策网络与预设环境得到多个决策样本,其中,所述决策样本用于指示所述预设环境所产生的状态与所述决策网络根据所述状态所产生的动作之间的映射关系;对多个所述决策样本进行决策树的训练得到对应的决策树模型。

根据本发明的另一个可选实施方式中,提供了一种信息处理装置,包括:处理模块,用于根据决策网络与预设环境得到多个决策样本,其中,所述决策样本用于指示所述预设环境所产生的状态与所述决策网络根据所述状态所产生的动作之间的映射关系;训练模块,用于对多个所述决策样本进行决策树的训练得到对应的决策树模型。

根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

通过本发明,根据决策网络与预设环境得到多个决策样本,对该决策样本进行决策树的训练得到对应的决策树模型,从而实现了由决策网络到决策树模型的转换。由于决策树每次决策时只会涉及到整个决策树结构中的部分节点,并且每次决策时只会进行比较大小的运算,其复杂度相较于决策网络的矩阵乘法要低很多,从而解决了相关技术中网络游戏在服务器端使用决策网络做决策或在客户端由决策网络做决策导致服务器和客户端负担比较重的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的信息处理方法的流程图;

图2是根据本发明实施例的决策树的示意图;

图3是根据本发明实施例的决策网络与决策树之间的转换示意图;

图4是根据本发明实施例的强化学习过程示意图;

图5是根据本发明实施例的信息处理装置的结构示意图;

图6是根据本发明实施例的信息处理装置的可选结构示意图一;

图7是根据本发明实施例的信息处理装置的可选结构示意图二。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

本申请的实施例提供了一种信息处理方法,图1是根据本发明实施例的信息处理方法的流程图,如图1所示,该流程包括如下步骤:

步骤s102,根据决策网络与预设环境得到多个决策样本,其中,决策样本用于指示预设环境所产生的状态与决策网络根据状态所产生的动作之间的映射关系;

其中,该决策网络中的映射关系在具体应用场景中可以是:该决策网络通过从环境中观察状态s,并根据该状态s做出一个动作a,因此该映射关系就是指状态s与动作a之间的对应关系。因此,该多个决策样本就是多个不同状态s与相应不同动作a的之间的映射关系。

步骤s104,对多个决策样本进行决策树的训练得到对应的决策树模型。

通过上述步骤s102至步骤s104,根据决策网络与预设环境得到多个决策样本,对该决策样本进行决策树的训练得到对应的决策树模型,从而实现了由决策网络到决策树模型的转换。由于决策树每次决策时只会涉及到整个决策树结构中的部分节点,并且每次决策时只会进行比较大小的运算,其复杂度相较于决策网络的矩阵乘法要低很多,从而解决了相关技术中网络游戏在服务器端使用决策网络做决策或在客户端由决策网络做决策导致服务器和客户端负担比较重的问题。

在本实施例的可选实施方式中,对于本实施例步骤s104中涉及到的对多个决策样本进行决策树的训练得到对应的决策树模型的方式,可以通过如下方式来实现:

步骤s104-1,分析多个决策样本,确定多个决策样本的决策复杂度;

步骤s104-2,对多个决策样本进行训练,得到与复杂程度相对应的决策树模型。

对于上述步骤s104-1和步骤s104-2在具体应用场景中可以是:得到多个不同状态s与不同动作a之间的映射关系后,将其组成(s,a)这样的成对数据,就可以采用有监督学习算法来进行决策树的训练,具体的训练方法优选为:id3,c4.5,gbdt,随机森林等,不同的方法可以得到不同的决策树结构,需要根据决策复杂度选择相应的训练方法。

需要说明的是,本实施例中涉及到的决策树模型至少包括:单决策树模型、随机森林模型、梯度提升决策树模型;其中,单决策树模型的决策复杂度小于随机森林模型,随机森林模型决策复杂度小于梯度提升决策树模型。基于此,如决策样本不是很复杂,则可以选择c4.5的训练方法,通过该方法得到的是单决策树模型;如果决策样本比较复杂则可以选随机森林的训练方法,通过该方法可以得到随机森林模型。

在本实施例的再一个可选实施方式中,本实施例的方法还可以包括:

步骤s106,在对多个决策样本进行决策树的训练得到对应的决策树模型之后,用得到的决策树模型替换部署在终端中的决策网络;

步骤s108,在决策树模型具有输入的状态情况下,输出与状态具有映射关系的动作。

通过上述步骤s106和步骤s108可知,可以用得到的决策树替换决策网络,基于该决策树也可以根据该映射关系得到与输入状态对应的动作。在游戏应用场景中,在终端上实现了通过由决策网络转化来的决策树模型对该npc进行控制的目的。

需要说明的,在本实施例的可选实施方式中可以通过以下方法步骤得到决策网络:

s1,对神经网络进行训练,进而确定在训练环境中产生状态后根据状态确定神经网络所执行的动作;

s2,获取训练环境根据动作向神经网络反馈的反馈奖励;

s3,在反馈奖励高于神经网络中已存储的奖励的情况下,使用反馈奖励更新神经网络中已存储的奖励以及神经网络参数;

重复上述s1~s3,直到不再对神经网络进行更新后,将神经网络确定为决策网络。

下面结合本实施例的具体实施方式对本实施例进行进一步的说明;

在本具体实施方式中,提供了一种自动把一个决策网络转化为决策树的方法。使用该决策树来替代决策网络做决策,在保证其效果非常接近决策网络的同时,大幅减少资源的开销和决策时间。

其中,在计算复杂度方面,由于决策树每次决策时只会涉及到整个决策树结构中的部分节点,并且每次决策时只会进行比较大小的运算,其复杂度相较于神经网络的矩阵乘法要低很多,因此,速度和效率都会有很大的优势,大大降低了当前智能手机等移动设备的运算负荷。

在模型解释性方面,由于决策树自身是一个树状的结构,树中的每一个节点表示一种判断操作,因此在决策树模型产生后,可以根据该模型画出对应的树状结构,其在形式上与传统人工智能ai中的行为树十分接近,因此也可以通过与行为树相近的方式理解决策树模型的决策过程,其解释性优于近乎黑盒决策的神经网络。因此,可以将该决策树视为游戏中的行为树来使用。图2是根据本发明实施例的决策树的示意图,如图2所示,该决策树的决策过程为:在游戏中是否发现敌人,如果没有发现继续巡逻;如果发现敌人,进一步判断敌人是否可以攻击,如果不可以攻击则继续巡逻;如果可以攻击,进一步判断自身血量是否大于10%,如果小于10%则逃跑,如果大于10%则可以攻击敌人。

图3是根据本发明实施例的决策网络与决策树之间的转换示意图,基于图3,本具体实施方式的方法步骤包括:

步骤s301,采用强化学习的方法,构建一个神经网络模型,并在环境中进行训练得到一个优秀的决策网络模型;

其中,图4是根据本发明实施例的强化学习过程示意图,如图4所示,智能体即为一个神经网络,该神经网络通过从环境中观察状态s,并根据该状态s做出一个动作a,环境会根据该智能体做出的动作a给智能体一个反馈奖励r,智能体根据反馈奖励r来更新神经网络中的参数,以让自己能够获得更高的奖励。

其中,为完成上述神经网络模型的构建和训练过程,已经有很多现有方法可以采用,包括dqn(deepqnetwork),a3c(asynchronousadvantageactorcritic)等。

对于该步骤,以图2所示的npc巡逻和攻击决策过程为例,npc的决策由一个神经网络给出,该神经网络对应图4中的智能体,环境会给npc的决策一个反馈,例如npc攻击一个目标并将该目标杀死了,环境就会给npc一个正向的反馈,强化npc的这种决策,如果npc攻击一个目标但是被对方杀死了,环境就会给npc一个负向的反馈,弱化npc的这种决策,这样npc下次遇到这种目标就会选择逃跑或者不攻击,通过这样不断地重复,最后npc对应的神经网络就学会了应该在什么情况下攻击目标以及采用何种方式攻击目标,从而完成了神经网络模型的构建和训练。

步骤s302,使用已经训练好的网络在实际环境中运行,与真实环境进行互动,得到大量的样本,该样本包含从状态s到动作a的映射。

其中,在得到一个训练好的神经网络模型后,将该神经网络部署到环境中,即重复图4中的过程,但是不再进行训练,就可以采集到这个神经网络在真实环境中的决策样本,对于该神经网络来说,其输入就是状态s,输出就是动作a,这样就采集到了大量不同状态s到动作a的映射,因为这个过程中使用的是已经训练好的神经网络模型,因此这些动作a都应该是对应的状态s下比较好的决策。

以图2中的npc巡逻和攻击决策过程为例,将已经训练好的神经网络模型挂载到一个npc上,即该npc的决策由这个挂载的神经网络模型给出,将该npc放到游戏环境中,其会遇到游戏中的各种情况,也就是我们所说的各种状态s,对这些状态s,对应的神经网络模型都会给出一个动作a,我们将这些状态s和动作a收集起来,就得到了在npc巡逻和攻击这个场景中的大量状态s到动作a的映射。

步骤s303,基于上述的样本,针对后续的具体需求,利用不同的学习算法得到不同的决策结构,例如单决策树模型,随机森林模型等。

其中,得到多个不同状态s到不同动作a之间的映射后,将其组成(s,a)这样的成对数据,就可以采用有监督学习算法来进行决策树的训练,具体的训练方法包括id3,c4.5,gbdt,随机森林等,不同的方法可以得到不同的决策树结构,需要根据具体的使用需求选择。

以图2中的npc巡逻和攻击决策过程为例,在得到大量的(s,a)这样的成对数据后,经过分析具体的问题和需求,该问题的复杂度不高,因此选择单棵的决策树作为最终的决策结构,使用c4.5作为决策树的训练算法,使用前述(s,a)成对数据作为训练数据,就可以训练得到一个基于决策树的决策模型,输入给该模型一个状态s,其同样可以给出一个动作a,并且该动作a在很大程度上会与神经网络模型在相同状态s下给出的动作a一致。

步骤s304,直接使用决策结构来替代原有的策略网络,部署在移动端。

其中,可以通过自行编码或者使用现有的机器学习移动端框架的方式将该决策树模型编码在移动端的游戏中,从而实现了最终的模型部署。

以图2中的npc巡逻和攻击决策过程为例,将得到的模型编码加载到移动端的游戏代码中,并将npc与该模型进行关联,使用该模型接收npc观察到的状态s,并指挥npc做出相应的动作a,实现了通过由神经网络转化来的决策树模型对该npc进行控制的目标。

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

本申请的实施例还提供了一种信息处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图5是根据本发明实施例的信息处理装置的结构示意图,如图5所示,该装置包括:处理模块52,用于根据决策网络与预设环境得到多个决策样本,其中,决策样本用于指示预设环境所产生的状态与决策网络根据状态所产生的动作之间的映射关系;训练模块54,用于对多个决策样本进行决策树的训练得到对应的决策树模型。

图6是根据本发明实施例的信息处理装置的可选结构示意图一,如图6所示,该训练模块54包括:处理单元62,用于分析多个决策样本,确定多个决策样本的决策复杂度;训练单元64,与处理单元62耦合连接,用于对多个决策样本进行训练,得到与复杂程度相对应的决策树模型。

其中,决策树模型包括:单决策树模型、随机森林模型、梯度提升决策树模型;其中,单决策树模型的决策复杂度小于随机森林模型,随机森林模型决策复杂度小于梯度提升决策树模型。

图7是根据本发明实施例的信息处理装置的可选结构示意图二,如图7所示,该装置还包括:替换模块72,与训练模块54,用于在对多个决策样本进行决策树的训练得到对应的决策树模型之后,用得到的决策树模型替换决策网络;输出模块74,与替换模块72耦合连接,用于在决策树模型具有输入的状态情况下,输出与状态具有映射关系的动作。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

本申请的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,根据决策网络与预设环境得到多个决策样本,其中,决策样本用于指示预设环境所产生的状态与决策网络根据状态所产生的动作之间的映射关系;

s2,对多个决策样本进行决策树的训练得到对应的决策树模型。

s3,用得到的决策树模型替换部署在终端中的决策网络;

s4,在决策树模型具有输入的状态情况下,输出与状态具有映射关系的动作。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

s1,根据决策网络与预设环境得到多个决策样本,其中,决策样本用于指示预设环境所产生的状态与决策网络根据状态所产生的动作之间的映射关系;

s2,对多个决策样本进行决策树的训练得到对应的决策树模型。

s3,用得到的决策树模型替换部署在终端中的决策网络;

s4,在决策树模型具有输入的状态情况下,输出与状态具有映射关系的动作。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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