对战行为确定的方法、装置、计算机设备及存储介质与流程

文档序号:16439554发布日期:2018-12-28 20:50阅读:196来源:国知局
对战行为确定的方法、装置、计算机设备及存储介质与流程

本发明涉及人工智能领域,特别涉及一种对战行为确定的方法、装置、计算机设备及存储介质。

背景技术

用户在终端上进行对战游戏时,可以选择pvp(playervsplayer,玩家对战玩家)模式与其他对战参与用户进行对战,也可以选择pve(playervsenvironment,玩家对战环境)模式进行人机对战。

以棋牌类游戏为例,在pve的模式下,终端作为环境一侧,可以通过游戏ai(artificialintelligence,人工智能)模拟真实玩家进行出牌。游戏ai确定出牌动作的方法可以是,基于预先设置的出牌规则,在出牌空间中搜索合适的出牌解,即可基于出牌解执行相应的出牌动作,例如,打出红桃a,或不出。

出牌规则一般由技术人员设计得到,受限于技术人员能够考虑到的可能性,可能导致出牌模式较为固定,例如,能够出牌时就会出牌。但是牌局千变万化,用户出牌的可能性较多,例如,用户手上即使存在能够打出的牌面,也可能会选择不出,以便配合余下的牌面。因此,基于技术人员设计的确定对战行为的方法拟人化程度较差,使得pve的模式下不能很好地模拟现实场景。



技术实现要素:

本发明实施例提供了一种对战行为确定的方法及装置,可以提高确定对战行为的方法拟人化程度。所述技术方案如下:

一方面,提供了一种对战行为确定方法,该方法包括:

基于至少一组用户对战数据进行第一训练过程,得到第一行为确定模型,所述第一行为确定模型用于基于输入的对战数据输出对战行为;

基于所述第一行为确定模型进行对战,对所述第一行为确定模型进行第二训练过程,得到第二行为确定模型,所述第二行为确定模型用于基于输入的对战数据输出使得模型胜率大于目标胜率的对战行为;

在当前对战过程中,将所述当前对战过程的历史对战数据和当前对战数据,输入所述第二行为确定模型,输出得到目标对战行为。

一方面,提供了一种对战行为确定装置,该装置包括:

训练模块,用于基于至少一组用户对战数据进行第一训练过程,得到第一行为确定模型,所述第一行为确定模型用于基于输入的对战数据输出对战行为;基于所述第一行为确定模型进行对战,对所述第一行为确定模型进行第二训练过程,得到第二行为确定模型,所述第二行为确定模型用于基于输入的对战数据输出使得模型胜率大于目标胜率的对战行为;

确定模块,用于在当前对战过程中,将所述当前对战过程的历史对战数据和当前对战数据,输入所述第二行为确定模型,输出得到目标对战行为。

一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述对战行为确定方法。

一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述对战行为确定方法。

本发明实施例提供的技术方案带来的有益效果是:

本发明实施例中,由于第一训练过程基于用户对战数据进行训练,可以使得行为确定模型输出的对战行为契合用户的对战行为,第二训练过程可以通过模型之间的对战进行训练,在用户对战数据比较少的情况下,可以进一步提升行为确定模型的能力。因此本发明实施例提供的方法可以使得训练得到的行为确定模型具有较好的拟人化效果,同时具有较强的对战能力,可以较好地模拟现实场景。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种实施环境图;

图2是本发明实施例提供的一种对战行为确定方法的流程图;

图3是本发明实施例提供的一种第二训练过程示意图;

图4是本发明实施例提供的一种交替训练示意图;

图5是本发明实施例提供的一种行为确定模型训练示意图;

图6是本发明实施例提供的一种人机对战用户界面示意图;

图7是本发明实施例提供的一种模型对战用户界面示意图;

图8是本发明实施例提供的一种对战行为确定装置示意图;

图9是本发明实施例提供的一种计算机设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

本发明实施例提供了一种对战行为确定方法,该方法可以由计算机设备实现。图1是本发明实施例提供的一种实施环境图。该实施环境包括多个终端101、用于为该多个终端提供服务的计算机设备102。终端101中可以安装有对战游戏的应用程序,计算机设备102可以是该对战游戏的后台服务器,该多个终端101可以通过该对战游戏的应用程序访问计算机设备102。计算机设备102可以作为计算的主体,根据终端的确定对战行为的请求,通过行为确定模型计算目标对战行为,并向终端发送该目标对战行为。对于计算机设备102来说,该计算机设备102还可以具有至少一种数据库,用以存储模型池、用户对战数据、模型对战数据等等。

当然,计算机设备也可以安装有对战游戏的应用程序,当具有确定对战行为的需求时,可以通过存储的行为确定模型计算目标对战行为。

结合图2所示的对战行为确定方法的流程图,该方法的处理流程可以包括如下的步骤:

201、计算机设备获取初始模型。

计算机设备中可以存储有行为确定模型的初始模型。该初始模型可以是技术人员设计的用于确定对战行为的神经网络模型,以当前对战数据和历史对战数据作为输入,预测对应的对战行为,并输出该对战行为。但由于初始模型中的模型参数均为预设的初始值,预测的对战行为准确性较低,需要对初始模型进行训练。

202、获取至少一组用户对战数据,将至少一组用户对战数据作为训练样本,对初始模型进行第一训练过程,得到第一行为确定模型。

用户对战数据是指真实用户在对战过程中产生的数据,可以用作第一训练过程的训练数据,用户作为对战参与用户来进行对战游戏时,可以记录该用户在对战过程中产生的用户对战数据,该用户对战数据可以包括对战参与用户的每一个对战行为,以及该对战行为对应的当前对战数据和历史对战数据。以棋牌游戏斗地主为例,用户对战数据可以是,“地主”玩家每一步的出牌数据,以及每一步出牌时该“地主”玩家当前的持牌数据和当前牌局的历史出牌数据。

第一行为确定模型可以用于基于输入的对战数据输出对战行为。基于真实用户的对战数据对行为确定模型进行训练,可以使得行为确定模型输出的对战行为尽量契合用户的对战行为,提高行为确定模型的拟人化程度。

计算机设备可以获取多组用户对战数据作为训练样本,并且可以基于对战结果对训练数据进行划分。例如,可以将胜局的用户对战数据作为正样本,将败局的用户对战数据作为负样本。

用户的对战能力可以划分为不同的能力等级,可以为不同能力等级训练符合该能力等级的行为确定模型。在一种可能的实施方式中,计算机设备可以是获取某一能力等级的多组用户对战数据,以便训练得到符合该能力等级的行为确定模型,模拟该能力等级的用户的对战行为。例如,计算机设备可以基于高级场的用户对战数据训练高级场的行为确定模型,基于新手场的用户对战数据训练新手场的行为确定模型。

在训练的过程中,对于用户对战数据中的每个对战行为,计算机设备可以将该对战行为对应的当前对战数据和历史对战数据输入初始模型,计算每个对战行为的输出概率。计算机设备可以将用户对战数据中对应的对战行为作为真值,根据真值和计算得到的每个对战行为的输出概率,计算本次训练的损失函数。然后,再根据损失函数计算初始模型的调整参数,对初始模型的模型参数进行调整,得到第一行为确定模型。以棋牌游戏斗地主为例,如果用户在当前持牌信息和当前牌局中的历史出牌信息下,打出红桃a,则在训练过程中,将上述当前持牌信息和当前牌局中的历史出牌信息输入行为确定模型,预测打出的牌面的输出概率,根据预测的牌面与红桃a的差距,调整模型参数,以便提高在上述输入的情况下打出红桃a的概率。

上述第一训练过程可以是监督学习的过程,当然也可以是其他可以使得行为确定模型契合用户的对战行为的训练方式,本发明实施例中对第一训练过程的具体训练方式不做限定。也即上述步骤201-202的处理可以是计算机设备基于至少一组用户对战数据进行第一训练过程,得到第一行为确定模型。

计算机设备中还可以设置有模型池,模型池中可以存储训练得到的各个行为确定模型。经过上述过程训练得到的第一行为确定模型可以存储在模型池中。

203、计算机设备从模型池中任选多个参与对战的行为确定模型,将每个参与对战的行为确定模型作为一个对战参与用户进行对战,获取模型对战数据。

计算机设备可以对模型池中的任意行为确定模型进行第二训练过程,当然,可以对指定的行为确定模型进行第二训练过程。以上述第一行为确定模型为例,计算机设备可以令第一行为确定模型参与对战,从模型池中任选至少一个行为确定模型,与第一行为确定模型进行对战。在模型对战的过程中,计算机设备可以将模型的输入数据和输出数据记录下来,也即记录每个对战参与用户的每个对战行为以及对应的当前对战数据和历史对战数据。

204、基于模型对战数据,计算机设备调整参与对战的每个行为确定模型的模型参数,得到调整后的行为确定模型。

计算机设备可以根据模型对战数据确定每个行为确定模型的对战结果,并根据对战结果,对每个行为确定模型进行调整。调整的目的在于,使得行为确定模型提高获得胜利的对战行为的输出概率,降低获得失败的对战行为的输出概率。

以上述第一行为确定模型为例,计算机设备可以基于模型对战数据,调整第一行为确定模型的模型参数,得到第二行为确定模型。

调整模型参数的具体处理可以如下:基于模型对战数据,确定第一行为确定模型的多个对战过程的对战数据;基于每个对战过程的对战数据,确定每个对战过程的奖励值;基于多个对战过程的奖励值,确定第一行为确定模型的调整参数;基于第一行为确定模型的调整参数,调整第一行为确定模型的模型参数,得到第二行为确定模型。

其中,奖励值包括胜利奖励值、平局奖励值或失败奖励值,可以由技术人员预先进行设置。例如,胜利奖励值可以是1,平局奖励值可以是0,失败奖励值可以是-1。

在对第一行为确定模型进行第二训练过程时,计算机设备获取到模型对战数据后,可以获取其中的第一行为确定模型的对战数据。第一行为确定模型的对战数据中包括多个对战过程的对战数据,计算机设备可以根据每个对战过程的对战数据,确定第一行为确定模型在该对战过程中的对战结果,以棋牌游戏斗地主为例,如果第一行为确定模型作为“地主”玩家,对战结束时,其对战数据指示还存在手牌,则可以确定对战结果为失败。

计算机设备可以基于每个对战过程的对战结果,标记对应的对战数据为胜利对战数据或失败对战数据。然后,计算机设备可以根据对战过程的对战结果标记,确定该对战过程的奖励值,该对战过程中每个对战行为的奖励值都可以是相同的奖励值,例如,如果第一行为确定模型的对战结果为胜利,则该对战过程中的每个对战行为的奖励值都可以为1。胜利奖励值可以引导行为确定模型选择获得胜利的对战行为,而失败奖励值可以引导行为确定模型避免选择获得失败的对战行为。

进而,计算机设备可以根据每个对战过程中的对战行为以及对应的奖励值,计算每个对战过程的回报。计算机设备可以根据策略梯度算法,计算第一行为确定模型的调整参数,调整第一行为确定模型的模型参数,使得对战过程的回报最大化,即可得到第二行为确定模型,并且可以将训练得到的第二行为确定模型存储到模型池中。对战过程的回报最大化可以使得第二行为确定模型选中提高胜率的对战行为的概率提高,也即可以使得第二行为确定模型做出最优的选择。

上述第二训练过程可以是强化学习的过程,不需要真实用户的用户对战数据,在用户对战数据比较少的情况下,通过第二训练过程可以进一步提升行为确定模型的能力。

如图3所示的第二训练过程示意图,计算机设备可以通过多个对战指示来触发并行的多个对战进程。对于任一对战进程,参与对战的多个行为确定模型可以基于随机的开局条件进行对战,以棋牌游戏斗地主为例,可以随机将行为确定模型a作为“地主”玩家,行为确定模型b作为“农民”玩家,并且对每个玩家随机生成手牌进行对战。一个对战进程结束后,可以得到一组模型对战数据,因此可以将多个对战进程的模型对战数据通过队列的方式传递给训练进程,基于训练进程可以对参与对战的行为确定模型进行训练,调整行为确定模型的模型参数。本发明实施例对实现训练进程的工具不作限定,例如,可以是基于tensorflow(张量流)平台进行训练。

可选的,计算机设备还可以将失败对战数据中,满足条件的对战行为的奖励值确定为胜利奖励值。满足条件是指该对战行为在当前对战中是唯一可选的对战行为。

对于失败的对战过程,如果将其中的每个对战行为的奖励值都确定为失败奖励值,相当于默认每个对战行为都不是最优的选择;对于胜利的对战过程,如果将其中的每个对战行为的奖励值都确定为胜利奖励值,相当于默认每个对战行为都是最优的选择。但是如果在失败的对战过程,唯一可选的仅有某个对战行为,则表明该对战行为已经是当前对战最优选的对战行为,则可以将该对战行为的奖励值设置为胜利奖励值,也即引导行为确定模型在这种情况下选择该唯一的对战行为,而不是避免选择该对战行为,否则将做出错误的选择。

如图4所示的交替训练示意图,当任一次训练过程结束后,可以对该次训练的模型产物进行再一次训练,连续两次训练过程可以是采用相同训练方式也可以采用不同训练方法。也即,在此之后,计算机设备还可以基于至少一组用户对战数据,对任一经过第二训练过程的第二行为确定模型进行第一训练过程,也即重新利用用户对战数据对第二行为确定模型进行监督学习,相当于对训练得到的行为确定模型不断校正,防止跑偏,保证行为确定模型的拟人化程度。

当然,计算机设备还可以继续基于任一经过第一训练过程的第二行为确定模型进行对战,对任一经过第一训练过程的第二行为确定模型进行第二训练过程。通过监督学习和强化学习的交替训练,可以在保证行为确定模型的拟人化程度的同时,不断提升行为确定模型的能力。

上述训练过程中使用的对战数据可以包括胜利对战数据和失败对战数据,在模型对战过程中,胜利对战数据和失败对战数据的数目大致相同。但是,失败对战数据用于引导行为确定模型避免选择失败的对战行为,却没有指示应该确定何种对战行为,容易导致选择对战行为的概率出现大的变动,对行为确定模型的影响较大。因此,计算机设备在获取训练过程使用的模型对战数据时,可以对失败对战数据进行采样,选取目标比例的失败对战数据作为训练数据,也即在对第一行为确定模型的第二训练过程中,失败对战数据的数目在第一行为确定模型的所有失败对战数据中占目标比例。该目标比例可以是预设的比例。例如,该目标比例可以在0.1-0.3之间,以便减少失败对战数据的数目,降低失败对战数据对行为确定模型的影响。

基于相同的目的,预先设置的失败奖励值的绝对值可以小于胜利奖励值,例如,失败奖励值可以是-0.1,胜利奖励值可以是1。在此基础上,可以增加胜利对战数据对行为确定模型的正影响,降低失败对战数据对行为确定模型的负影响。

205、经过第一数目次对战后,计算机设备记录参与对战的每个行为确定模型的胜率,将每个行为确定模型的胜率对应的存储在模型池中。

第一数目可以是预设的数目,用于指示模型对战的次数。以棋牌游戏斗地主为例,参与对战的行为确定模型可以为模型a和模型b,模型a和模型b可以在不同的牌局中随机作为“地主”玩家或“农民”玩家进行对战,每个牌局结束时可以得到模型a和模型b的对战结果。经过第一数目个牌局(如2000局)后,统计模型a和模型b的胜率,并在模型池中记录模型a的胜率和模型b的胜率。如果行为确定模型的胜率大于目标胜率,则可以应用该行为确定模型确定对战行为。例如,目标胜率可以是50%,如果基于相同的行为确定模型进行对战,参与对战的两个行为确定模型能力一致,则胜率比可能是50%:50%。

第二行为确定模型可以用于基于输入的对战数据输出使得模型胜率大于目标胜率的对战行为。通过实验可以验证,经过第二训练过程训练得到的第二行为确定模型的胜率要高于第一行为确定模型,也即第二行为确定模型的能力强于第一行为确定模型。例如,第二行为确定模型与第一行为确定模型的胜率比为54%:46%,胜率差达到8%,能力提升明显。

如图5所示的行为确定模型训练示意图,其中未示出基于用户对战数据训练得到第一行为确定模型的过程,图中示出模型对战后可以产生模型对战数据和每个行为确定模型的胜率,模型对战数据可以用于训练过程,经过多次迭代过程不断对行为确定模型进行调整,训练完成后可以将行为确定模型存储在模型池中。其中,一次迭代过程可以包括预设数目次的第一训练过程和第二训练过程,在一次迭代过程中,当任一次训练过程结束后,可以对该次训练的模型产物进行再一次训练,连续两次训练过程可以是采用相同训练方式也可以采用不同训练方法。例如,一次迭代过程中可以包括1000次监督学习以及400次强化学习,迭代次数可以为200次,训练总时长可以达到24小时。行为确定模型可以通过图4所示的过程,不断进行训练,以便不断提升模型的能力。

206、当接收到模型获取指令时,计算机设备获取模型池中胜率大于目标胜率的第二行为确定模型。

在对战游戏的过程中,计算机设备可以作为pve模式下的环境一侧,或者在用户选择挂机时,模拟对战参与用户与其他用户进行对战。当计算机设备需要模拟对战参与用户进行对战时,可以接收到模型获取指令,进而从模型池中获取用于确定对战行为的第二行为确定模型。

任一胜率大于目标胜率的第二行为确定模型都可以在实际情况中应用。如果胜率大于目标胜率的第二行为确定模型不止一个,计算机设备还可以获取其中胜率最大的第二行为确定模型。本发明实施例对实际应用中使用的第二行为确定模型不作限定。

207、在当前对战过程中,计算机设备将当前对战过程的历史对战数据和当前对战数据,输入第二行为确定模型,输出得到目标对战行为。

计算机设备获取到第二行为确定模型后,在做出每一步的对战行为时,可以获取当前对战过程的历史对战数据和当前对战数据。然后,计算机设备可以将当前对战过程的历史对战数据和当前对战数据输入第二行为确定模型,计算每个可选的对战行为的输出概率。计算机设备可以将输出概率最高的对战行为作为目标对战行为,输出该目标对战行为,也即模拟对战参与用户做出该目标对战行为。

可选的,为了适应千变万化的对战环境,步骤205的处理可以如下:将当前对战过程的历史对战数据和当前对战数据,输入第二行为确定模型,确定输出概率最高的第二数目个对战行为,根据目标规则,在输出概率最高的第二数目个对战行为中确定目标对战行为并输出。

第二数目可以是预设的数目,用于指示输出对战行为的解空间。目标规则可以是指将输出概率作为选择概率的规则,例如轮盘赌选择的规则。目标对战行为不一定是输出概率最高的对战行为,输出概率低于最高输出概率的对战行为也有输出的可能。输出概率较高的对战行为被选择的概率也较高,输出概率较低的对战行为被选择的概率也较低。例如,第二行为确定模型计算得到前五个对战行为的输出概率分别为0.6、0.2、0.1、0.05、0.05,则这五个对战行为被选择为目标对战行为的概率也为0.6、0.2、0.1、0.05、0.05。当然,各个对战行为的选择概率也可以设置成相等,使得在输出目标对战行为时,可以在输出概率最高的第二数目的对战行为中,确定任一个对战行为作为目标对战行为输出。

在此基础上,对应的训练过程中行为确定模型确定目标对战行为的方法同理,除此之外与上面介绍的训练过程同理,此处不再赘述。

当然,如果计算机设备是为终端提供服务,则还可以将得到的目标对战行为发送给终端,以便终端执行该目标对战行为,模拟对战参与用户和真实用户进行对战。或者,计算机设备还可以将步骤204中获取的第二行为确定模型发送给终端,终端可以通过该第二行为确定模型确定目标对战行为。本发明实施例对确定目标对战行为的执行主体不作限定。

可选的,本发明实施例还提供了一种用户界面,用于观察行为确定模型的表现,计算机设备可以基于用户界面显示任一对战过程的对战数据,该对战数据包括每个对战参与用户的历史对战数据和/或当前对战数据。

如图6所示的人机对战用户界面示意图,在该用户界面下,用户可以作为一个对战参与用户与行为确定模型模拟的对战参与用户进行对战,用户界面中可以显示用户的牌面(也即当前对战数据),以及每个对战参与用户的历史出牌信息(也即历史对战数据)。

如图7所示的模型对战用户界面示意图,该用户界面中可以显示每个对战参与用户的牌面(也即当前对战数据)以及每个对战参与用户的历史出牌信息(也即历史对战数据)。并且,用户可以选择一个对战参与用户的视角,用户界面的右侧中还可以显示该对战参与用户下一步可能的对战行为以及对应的输出概率。

用户界面中还可以包括保存对战选项和加载对战选项,保存对战选项可以用于保存用户界面当前显示的对战过程的对战数据,加载对战选项可以用于加载任一对战过程的对战数据。

产品开发人员可以在用户界面中体验或观察行为确定模型的表现,如果觉得当前对战中某个行为对战模型的表现有欠缺,则可以通过点击用户界面中的保存对战选项,保存当前的对战过程,以便针对性地向技术开发人员反馈行为对战模型存在的问题。此外,产品开发人员或技术开发人员还可以点击用户界面中的加载对战选项,选择任一对战过程进行观察或体验。通过可视化的用户界面,可以提高检测行为确定模型的便捷性。

示例性的,对战游戏的应用程序可以通过restapi(representationalstatetransferapplicationprogramminginterface,表述性状态转移应用程序界面)的形式实现,上述用户界面同理。restapi使用简单,接入、部署方便,更改模型后可以快速上限,方便扩容、缩容等,主要采用json(javascriptobjectnotation,java脚本对象简谱)格式的前后台数据传输方式。对于棋牌游戏斗地主,restapi的使用样例可以如下:

其中app_id表示产品id,session_id表示当前的对局标识,player_info表示对战参与用户信息,action_history表示本局的历史对战数据,predict_info表示需要确定对战行为的对战参与用户的当前对战数据。

目前,在基于搜索算法确定对战行为时,耗时较长,并且不同的对战环境下确定对战行为的时长不固定。本发明实施例中的行为确定模型是神经网络模型,每次确定对战行为的时间较为固定,可以提高确定对战行为的效率。

并且,由于第一训练过程基于用户对战数据进行训练,可以使得行为确定模型输出的对战行为契合用户的对战行为,第二训练过程可以通过模型之间的对战进行训练,在用户对战数据比较少的情况下,可以进一步提升行为确定模型的能力。因此本发明实施例提供的方法可以使得训练得到的行为确定模型具有较好的拟人化效果,同时具有较强的对战能力,可以较好地模拟现实场景。

基于相同的技术构思,本发明实施例还提供了一种对战行为确定装置,该装置可以是上述计算机设备。如图8所示,该装置包括:

训练模块810,用于基于至少一组用户对战数据进行第一训练过程,得到第一行为确定模型,所述第一行为确定模型用于基于输入的对战数据输出对战行为;基于所述第一行为确定模型进行对战,对所述第一行为确定模型进行第二训练过程,得到第二行为确定模型,所述第二行为确定模型用于基于输入的对战数据输出使得模型胜率大于目标胜率的对战行为;

确定模块820,用于在当前对战过程中,将所述当前对战过程的历史对战数据和当前对战数据,输入所述第二行为确定模型,输出得到目标对战行为。

可选的,所述训练模块810,用于:

获取初始模型;

获取至少一组用户对战数据,将所述至少一组用户对战数据作为训练样本,对所述初始模型进行第一训练过程,得到第一行为确定模型。

可选的,所述训练模块810,用于:

从模型池中任选至少一个行为确定模型,与所述第一行为确定模型进行对战,所述模型池用于存储至少一个行为确定模型;

将每个参与对战的行为确定模型作为一个对战参与用户进行对战,获取模型对战数据;

基于所述模型对战数据,调整所述第一行为确定模型的模型参数,得到第二行为确定模型;

基于所述模型对战数据,调整所述至少一个行为确定模型的模型参数,得到调整后的行为确定模型。

可选的,所述训练模块810,用于:

基于所述模型对战数据,确定所述第一行为确定模型的多个对战过程的对战数据;

基于每个对战过程的对战数据,确定所述每个对战过程的奖励值,其中,所述奖励值包括胜利奖励值、平局奖励值或失败奖励值;

基于所述多个对战过程的奖励值,确定所述第一行为确定模型的调整参数;

基于所述第一行为确定模型的调整参数,调整所述第一行为确定模型的模型参数,得到第二行为确定模型。

可选的,所述对战数据包括胜利对战数据和失败对战数据,所述失败对战数据的数目在所述第一行为确定模型的所有失败对战数据中占目标比例。

可选的,所述训练模块810,还用于:

基于至少一组用户对战数据,对任一经过第二训练过程的第二行为确定模型进行第一训练过程。

可选的,所述训练模块810,还用于:

基于任一经过第一训练过程的第二行为确定模型进行对战,对所述任一经过第一训练过程的第二行为确定模型进行第二训练过程。

可选的,所述装置还包括:

记录模块830,用于经过第一数目次对战后,记录参与对战的每个行为确定模型的胜率,将每个行为确定模型和胜率对应的存储在模型池中;

获取模块840,用于当接收到模型获取指令时,获取所述模型池中胜率大于目标胜率的第二行为确定模型。

可选的,所述确定模块820,用于:

将所述当前对战过程的历史对战数据和当前对战数据,输入所述第二行为确定模型,确定输出概率最高的第二数目个对战行为,根据目标规则,在所述输出概率最高的第二数目个对战行为中确定目标对战行为并输出。

可选的,所述装置还包括:

显示模块850,用于基于用户界面显示任一对战过程的对战数据,所述对战数据包括每个对战参与用户的历史对战数据和/或当前对战数据。

可选的,所述用户界面包括保存对战选项和加载对战选项,所述保存对战选项用于保存所述用户界面当前显示的对战过程的对战数据,所述加载对战选项用于加载任一对战过程的对战数据。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本发明实施例中,由于第一训练过程基于用户对战数据进行训练,可以使得行为确定模型输出的对战行为契合用户的对战行为,第二训练过程可以通过模型之间的对战进行训练,在用户对战数据比较少的情况下,可以进一步提升行为确定模型的能力。因此本发明实施例提供的方法可以使得训练得到的行为确定模型具有较好的拟人化效果,同时具有较强的对战能力,可以较好地模拟现实场景。

需要说明的是:上述实施例提供的对战行为确定装置在确定对战行为时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的对战行为确定装置与对战行为确定方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图9是本发明实施例提供的一种计算机设备的结构示意图,该计算机设备900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)901和一个或一个以上的存储器902,其中,所述存储器902中存储有至少一条指令,所述至少一条指令由所述处理器901加载并执行以实现下述问题的对战行为确定方法的方法步骤:

基于至少一组用户对战数据进行第一训练过程,得到第一行为确定模型,所述第一行为确定模型用于基于输入的对战数据输出对战行为;

基于所述第一行为确定模型进行对战,对所述第一行为确定模型进行第二训练过程,得到第二行为确定模型,所述第二行为确定模型用于基于输入的对战数据输出使得模型胜率大于目标胜率的对战行为;

在当前对战过程中,将所述当前对战过程的历史对战数据和当前对战数据,输入所述第二行为确定模型,输出得到目标对战行为。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

获取初始模型;

获取至少一组用户对战数据,将所述至少一组用户对战数据作为训练样本,对所述初始模型进行第一训练过程,得到第一行为确定模型。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

从模型池中任选至少一个行为确定模型,与所述第一行为确定模型进行对战,所述模型池用于存储至少一个行为确定模型;

将每个参与对战的行为确定模型作为一个对战参与用户进行对战,获取模型对战数据;

基于所述模型对战数据,调整所述第一行为确定模型的模型参数,得到第二行为确定模型;

基于所述模型对战数据,调整所述至少一个行为确定模型的模型参数,得到调整后的行为确定模型。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

基于所述模型对战数据,确定所述第一行为确定模型的多个对战过程的对战数据;

基于每个对战过程的对战数据,确定所述每个对战过程的奖励值,其中,所述奖励值包括胜利奖励值、平局奖励值或失败奖励值;

基于所述多个对战过程的奖励值,确定所述第一行为确定模型的调整参数;

基于所述第一行为确定模型的调整参数,调整所述第一行为确定模型的模型参数,得到第二行为确定模型。

可选的,所述对战数据包括胜利对战数据和失败对战数据,所述失败对战数据的数目在所述第一行为确定模型的所有失败对战数据中占目标比例。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

基于至少一组用户对战数据,对任一经过第二训练过程的第二行为确定模型进行第一训练过程。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

基于任一经过第一训练过程的第二行为确定模型进行对战,对所述任一经过第一训练过程的第二行为确定模型进行第二训练过程。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

经过第一数目次对战后,记录参与对战的每个行为确定模型的胜率,将每个行为确定模型和胜率对应的存储在模型池中;

当接收到模型获取指令时,获取所述模型池中胜率大于目标胜率的第二行为确定模型。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

将所述当前对战过程的历史对战数据和当前对战数据,输入所述第二行为确定模型,确定输出概率最高的第二数目个对战行为,根据目标规则,在所述输出概率最高的第二数目个对战行为中确定目标对战行为并输出。

可选的,所述至少一条指令由所述处理器901加载并执行以实现下述方法步骤:

基于用户界面显示任一对战过程的对战数据,所述对战数据包括每个对战参与用户的历史对战数据和/或当前对战数据。

可选的,所述用户界面包括保存对战选项和加载对战选项,所述保存对战选项用于保存所述用户界面当前显示的对战过程的对战数据,所述加载对战选项用于加载任一对战过程的对战数据。

本发明实施例中,由于第一训练过程基于用户对战数据进行训练,可以使得行为确定模型输出的对战行为契合用户的对战行为,第二训练过程可以通过模型之间的对战进行训练,在用户对战数据比较少的情况下,可以进一步提升行为确定模型的能力。因此本发明实施例提供的方法可以使得训练得到的行为确定模型具有较好的拟人化效果,同时具有较强的对战能力,可以较好地模拟现实场景。

在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由计算机设备中的处理器执行以完成上述应用程序的病毒检测的方法。例如,所述计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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