一种应用于消除类游戏的智能测试方法及系统与流程

文档序号:21778939发布日期:2020-08-07 19:52阅读:526来源:国知局
一种应用于消除类游戏的智能测试方法及系统与流程

本发明涉及人工智能技术领域,尤其涉及一种应用于消除类游戏的智能测试方法及系统。



背景技术:

消除类游戏是益智游戏的一种,广泛见于pc、手机和平板电脑等各种平台上。常见的消除类游戏有开心消消乐、泡泡龙等,用户可通过网页进行在线游戏,或在客户端程序中单机、联网游戏。

现有的自动化消除类测试系统只是根据游戏规则寻找最优的解法进而完成游戏,并不能体现真实玩家的操作规律。现有的技术也缺少通用的测试方法来解决三消类游戏的特殊操作的执行操作,例如某款游戏特有的道具产生的违背普通消除规则操作。因此现有的自动化消除测试方法测试效率低,无法实现全面测试。

因此现有技术还有待于进一步发展。



技术实现要素:

针对上述技术问题,本发明实施例提供了一种应用于消除类游戏的智能测试方法及系统,能够解决现有技术中自动化消除测试方法测试效率低,无法实现全面测试的技术问题。

本发明实施例的第一方面提供一种应用于消除类游戏的智能测试方法,包括:

采集大量的游戏操作数据,将所述大量的游戏操作数据统一处理为多维的二进制初始训练样本;

根据初始训练样本对人工智能模型进行训练,生成基本测试模型,该模型由一个卷积神经网络和一个分类器子模型串联而成,可以根据当前游戏状态预测普通消除操作和道具使用操作,该模型的卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到预测结果,以此学习对目标元件的优先操作策略,进而能够测试以消除某种目标元件为通关标准的消除类游戏;

接收测试指令,根据基本测试模型对游戏进行测试,直至游戏失败或通关,完成消除类游戏的测试;

采集不同关卡的模型通关数据以及真实玩家的通关数据,进而训练一个回归模型,使其能通过基本测试模型的通关数据来预测真实玩家的通关数据,该回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数;

所述采集大量的游戏操作数据,将所述大量的游戏操作数据统一处理为多维的二进制初始训练样本,包括:

采集大量的不同的游戏盘面状态及游戏盘面状态对应的玩家操作:游戏盘面状态处理为三维的二进制数据,第一维数由元件种类个数确定,第二维为盘面宽度,第三维为盘面高度,若某种元件出现在盘面的第i行第j列,则对应矩阵的第i行第j列元素为1,否则为0。游戏盘面状态对应的玩家操作处理为一维的二进制向量(玩家操作包括常规操作和道具使用操作),其元素个数为所有操作数量总和,玩家选择的操作位为1,其余为0;盘面状态与对应的玩家操作合并作为人工智能模型的初始训练样本。

可选地,所述根据初始训练样本对人工智能模型进行训练,生成基本测试模型,该模型由一个卷积神经网络和一个分类器子模型串联而成,可以根据当前游戏状态预测普通消除操作和道具使用操作,并且能够学习对目标元件的优先操作策略,进而能够测试以消除某种目标元件为通关标准的消除类游戏,包括:

使用初始训练样本对卷积神经网络进行训练,使其能通过输入的游戏盘面状态来预测每个有效常规操作的使用概率及某种特殊道具的使用概率,其中卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到所有操作的预测概率,预测概率最大的操作则作为该模型的输出操作;

对于输出操作为道具操作的情况,再合并初始训练样本及卷积神经网络的池化层输出作为中间训练样本,使用中间训练样本训练一个分类器子模型,用来预测道具使用的具体位置;

训练好的卷积神经网络以及分类器子模型则作为基本测试模型可以对消除类游戏进行智能化自动测试。

可选地,所述接收测试指令,根据基本测试模型对游戏进行测试,直至游戏失败或通关,完成消除类游戏的测试,包括:

接收测试指令,将初始游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

重复执行根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出的步骤,直至游戏失败或通关,完成消除类游戏的测试。

可选地,所述采集不同关卡的模型通关数据以及真实玩家的通关数据,进而训练一个回归模型,使其能通过基本测试模型的通关数据来预测真实玩家的通关数据,包括:

用基本测试模型对不同关卡进行批量测试,得到基本测试模型在不同关卡的通关数据,同时采集大量真实玩家在不同关卡的通关数据;

使用收集到的不同关卡的通关数据作为训练样本训练一个回归模型,从而可用基本测试模型在某一关卡的通关数据来预测真实玩家的对应通关数据,达到预测游戏关卡难度的目的通关数据,该回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数。

本发明实施例第二方面提供了一种应用于消除类游戏的智能测试系统,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现以下步骤:

采集大量的游戏操作数据,将所述大量的游戏操作数据统一处理为多维的二进制初始训练样本;

根据初始训练样本对人工智能模型进行训练,生成基本测试模型,该模型由一个卷积神经网络和一个分类器子模型串联而成,可以根据当前游戏状态预测普通消除操作和道具使用操作,该模型的卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到预测结果,以此学习对目标元件的优先操作策略,进而能够测试以消除某种目标元件为通关标准的消除类游戏;

接收测试指令,根据基本测试模型对游戏进行测试,直至游戏失败或通关,完成消除类游戏的测试;

采集不同关卡的模型通关数据以及真实玩家的通关数据,进而训练一个回归模型,使其能通过基本测试模型的通关数据来预测真实玩家的通关数据,该回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数;

采集大量的不同的游戏盘面状态及游戏盘面状态对应的玩家操作:游戏盘面状态处理为三维的二进制数据,第一维数由元件种类个数确定,第二维为盘面宽度,第三维为盘面高度,若某种元件出现在盘面的第i行第j列,则对应矩阵的第i行第j列元素为1,否则为0;游戏盘面状态对应的玩家操作处理为一维的二进制向量(玩家操作包括常规操作和道具使用操作),其元素个数为所有操作数量总和,玩家选择的操作位为1,其余为0;盘面状态与对应的玩家操作合并作为人工智能模型的初始训练样本。

可选地,所述计算机程序被所述处理器执行时还实现以下步骤:

使用初始训练样本对卷积神经网络进行训练,使其能通过输入的游戏盘面状态来预测每个有效常规操作的使用概率及某种特殊道具的使用概率,其中卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到所有操作的预测概率,预测概率最大的操作则作为该模型的输出操作;

对于输出操作为道具操作的情况,再合并初始训练样本及卷积神经网络的池化层输出作为中间训练样本,使用中间训练样本训练一个分类器子模型,用来预测道具使用的具体位置;

训练好的卷积神经网络以及分类器子模型则作为基本测试模型可以对消除类游戏进行智能化自动测试。

可选地,所述计算机程序被所述处理器执行时还实现以下步骤:

接收测试指令,将初始游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

重复执行根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出的步骤,直至游戏失败或通关,完成消除类游戏的测试。

可选地,所述计算机程序被所述处理器执行时还实现以下步骤:

用基本测试模型对不同关卡进行批量测试,得到基本测试模型在不同关卡的通关数据,同时采集大量真实玩家在不同关卡的通关数据;

使用收集到的不同关卡的通关数据作为训练样本训练一个回归模型,从而可用基本测试模型在某一关卡的通关数据来预测真实玩家的对应通关数据,达到预测游戏关卡难度的目的通关数据,该回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数。

本发明实施例提供的技术方案中,采集大量的游戏操作数据,将所述大量的游戏操作数据统一处理为多维的二进制初始训练样本;根据初始训练样本对人工智能模型进行训练,生成基本测试模型;接收测试指令,根据基本测试模型对游戏进行测试,直至游戏失败或通关,完成消除类游戏的测试;采集不同关卡的模型通关数据以及真实玩家的通关数据,进而训练一个回归模型,使其能通过基本测试模型的通关数据来预测真实玩家的通关数据。因此相对于现有技术,本发明实施例不仅可以用来对消除类游戏进行自动测试,而且可以学习与人类近似的操作策略,用来预测不同关卡对真实玩家的难度,并且能够提供一个统一框架来学习非常规的特殊操作,从而预测未来关卡对真实玩家的难度,为消除类游戏开发提供了参考。

附图说明

图1为本发明实施例中一种应用于消除类游戏的智能测试方法的一实施例的流程示意图;

图2为本发明实施例中一种应用于消除类游戏的智能测试方法的一实施例的人工智能模型的结构示意图;

图3为本发明实施例中一种应用于消除类游戏的智能测试系统的另一实施例的硬件结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

以下结合附图对本发明实施例进行详细的描述。

请参阅图1,图1为本发明实施例中一种应用于消除类游戏的智能测试方法的一个实施例的流程示意图。如图1所示,包括:

步骤s100:在三消游戏中收集棋盘状态以及该状态下对应用户的操作,建立棋盘状态到用户操作映射关系,并且记录每局游戏用户的通关情况,根据这些数据建立数据池;

步骤s200:对数据中的棋盘状态,用户操作进行二进制编码,计算每个棋盘的有效交换操作,添加一个特征图到棋盘状态;

步骤s300:使用训练样本,通过卷积神经网络训练出根据棋盘状态预测游戏操作的模型,并且当游戏操作为道具时,使用卷积神经网络中间特征图训练分类器子模型,并使用该模型来预测道具的使用位置,将卷积神经网络模型和分类器子模型作为基本测试模型;

步骤s400:通过数据池中的游戏结果,计算用户在每个关卡上的平均通关数据并使用基本测试模型模拟游戏过程,根据模拟得到的游戏结果,计算基本测试模型在每个关卡上的通关数据;

步骤s500:建立回归模型,拟合基本测试模型的通关数据和真实用户的通关数据;

步骤s600:通过预测通关数据落在真实通过率95%预测区间外的概率来评价模型的优劣。

具体地,消除类游戏是益智游戏的一种,玩家游戏过程中主要是将一定量相同的游戏元件,如水果、宝石、动物头像、积木麻将牌等,使它们彼此相邻配对消除来获胜。通常是将三个同样的元素配对消除,所以此类又称为三消类游戏。本发明实施例中的消除类游戏以三消类游戏为基础进行介绍。常见的三消类游戏例如天天爱消除、开心消消乐等。

本发明实施例是可以用来对三消类游戏进行自动测试,而且可以学习与人类近似的操作策略,用来预测不同关卡对真实玩家的难度,并且能够提供一个统一框架来学习非常规的特殊操作。非常规操作包括对道具的使用,因为道具是付费购买,所以不属于游戏的常规操作。对道具使用的预测也包含该系统中,同常规操作一样由卷积神经网络预测是否使用道具,再通过叠加一个随机森林预测道具使用的位置。

其中步骤s200中的棋盘状态中元件分为普通元件,目标元件以及特殊元件三个类型,每种类型的每个元件都需要采用二维特征图来标记棋盘上该元件是否存在,存在标记为1,不存在标记为0,该特征图将可以有效交换的元素标记为1,不能有效交换的元素标记为0。基本测试模型由一个卷积神经网络和一个分类器子模型串联而成,可以根据当前游戏状态预测普通消除操作和道具使用操作,该模型的卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到预测结果,以此学习对目标元件的优先操作策略,进而能够测试以消除某种目标元件为通关标准的消除类游戏

步骤s300中选择k个关卡作为训练集,使用其中每个关卡的状态-操作映射数据,先通过卷积神经网络训练一个根据特定关卡棋盘状态预测游戏操作的模型,然后对于道具操作,使用棋盘状态在卷积神经网络网络中的特征图数据,通过随机森林算法训练预测道具位置的模型,然后在每个关卡上通过卷积神经网络模型与分类器子模型组成的基础测试模型来模拟游戏,并且记录游戏结果。

步骤s400中通过计算基本测试模型在每个关卡上的通关数据,为后续训练回归模型做数据准备。

步骤s500中用基本测试模型先指定关卡的模拟游戏通过率,然后通过模型的通关数据预测游戏真正的通关数据,从而达到预测游戏的难度。回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数。

步骤s600当训练完成可以自动测试游戏的模型之后,再将该模型用在指定的部分关卡进行大量测试,最后用获得的模型在各个关卡的成功率与真实玩家在各个关卡的成功率训练一个回归模型,即可用来预测未来关卡对真实玩家的难度。

进一步地,获取大量的游戏操作数据,将所述大量的游戏操作数据为初始训练样本,包括:

获取大量的不同的游戏盘面状态及游戏盘面状态对应的玩家操作;将所述大量的游戏操作数据统一处理为多维的二进制初始训练样本。

具体地,在游戏开发完成后,通过游戏后台记录游戏盘面状态及游戏盘面状态对应的玩家操作。游戏盘面状态处理为三维的二进制数据,第一维数由元件种类确定,例如游戏中有88种不同的元件,游戏盘面为9×9格,则盘面数据为88×9×9维矩阵的二进制数据,若第5种元件出现在盘面的第3行第4列,则第5层矩阵的第3行第4列元素为1,否则为0。游戏盘面状态对应的玩家操作处理为一维的二进制向量(玩家操作包括常规操作和道具使用操作),其元素个数为所有操作数量总和,玩家选择的操作位为1,其余为0。盘面状态与对应的玩家操作合并作为人工智能模型的初始训练样本。其中,为了保证模型的准确性,样本的数量不少于100000份。

进一步地,根据初始训练样本对人工智能模型进行训练,生成基本测试模型,该模型由一个卷积神经网络和一个分类器子模型串联而成,可以根据当前游戏状态预测普通消除操作和道具使用操作,并且能够学习对目标元件的优先操作策略,进而能够测试以消除某种目标元件为通关标准的消除类游戏,包括:

使用初始训练样本对卷积神经网络进行训练,使其能通过输入的游戏盘面状态来预测每个有效常规操作的使用概率及某种特殊道具的使用概率,中卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到所有操作的预测概率,预测概率最大的操作则作为该模型的输出操作;

对于输出操作为道具操作的情况,再合并初始训练样本及卷积神经网络的池化层输出作为中间训练样本,使用中间训练样本训练一个分类器子模型,用来预测道具使用的具体位置;

训练好的卷积神经网络以及分类器子模型则作为基本测试模型可以对消除类游戏进行智能化自动测试。

具体地,使用卷积神经网络和分类器子模型的串联模型来学习真实玩家的操作策略。卷积神经网络的输入数据为游戏的盘面状态,输出为预测的常规操作概率以及使用某种特殊道具的概率。其中卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到所有操作的预测概率,预测概率最大的操作则作为该模型的输出操作。对于输出操作为道具操作的情况,再合并初始训练样本及卷积神经网络的池化层输出作为中间训练样本,使用中间训练样本训练一个分类器子模型,用来预测道具使用的具体位置。分类器子模型使用盘面状态以及卷积神经网络内部表征为输入,输出为使用某种道具的不同操作的概率。

如图2所示,人工智能模型主要由上下两部分组成,上面部分是一个卷积神经网络,其输入(输入1)是表示当前棋盘状态的三维矩阵,输出是147维的向量,表示选择144个棋盘操作位置和使用三种道具的概率,每一维是0到1之前的正数。全部147维相加等于1。输入2为可选输入,可以用来指示哪些棋盘位置当前是无效操作然后将对应的输出值置为0,输出值最大的棋盘位置或道具作为下一步操作。如果选择使用三种道具中的其中一种,进入下面分类器子模型--随机森林模型(随机森林是一种经典的分类器模型,由多个决策树组合而成),其输入(输入3)为输入1和卷积网络中的池化层输出级联成一维向量,输出为道具使用位置。

进一步地,接收测试指令,将初始游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

重复执行根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出的步骤,直至游戏失败或通关,完成消除类游戏的测试。

具体实施时,训练好的模型用以下基本步骤来自动测试游戏:选择一个关卡随机初始化一个游戏盘面,发送初始盘面状态至模型,由模型选择下一步操作,然后反馈给游戏,游戏更新盘面状态,再发送新的盘面给模型获取下一步操作,重复执行上述操作,直到游戏失败或者通关。

进一步地,采集不同关卡的模型通关数据以及真实玩家的通关数据,进而训练一个回归模型,使其能通过基本测试模型的通关数据来预测真实玩家的通关数据,包括:

用基本测试模型对不同关卡进行批量测试,得到基本测试模型在不同关卡的通关数据,同时采集大量真实玩家在不同关卡的通关数据;

使用收集到的不同关卡的通关数据作为训练样本训练一个回归模型,从而可用基本测试模型在某一关卡的通关数据来预测真实玩家的对应通关数据,达到预测游戏关卡难度的目的。

具体实施时,回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数。例如游戏已经发布的关卡有1-400关,用基本测试模型对1-400关进行测试,每一关测试100次,得到每一关的模型通关数据,再收集真实玩家在1-400关的通关数据,用这1-400关的模型通关数据作为输入,真实玩家通关数据作为目标值训练一个回归模型。对未发布的新关卡400-450关,同样用基本测试模型每一关测试100次,再将得到的模型通关数据输入训练好的回归模型,得到预测的真实玩家通关数据。

上面对本发明实施例中的应用于消除类游戏的智能测试方法进行了描述,下面对本发明实施例中的应用于消除类游戏的智能测试系统进行描述,请参阅图3,图3是本发明实施例中一种应用于消除类游戏的智能测试系统的另一实施例的硬件结构示意图,如图3所示,系统10包括:存储器101、处理器102及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器101执行时实现以下步骤:

采集大量的游戏操作数据,将所述大量的游戏操作数据统一处理为多维的二进制初始训练样本;

根据初始训练样本对人工智能模型进行训练,生成基本测试模型,该模型由一个卷积神经网络和一个分类器子模型串联而成,可以根据当前游戏状态预测普通消除操作和道具使用操作,该模型的卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到预测结果,以此学习对目标元件的优先操作策略,进而能够测试以消除某种目标元件为通关标准的消除类游戏;

接收测试指令,根据基本测试模型对游戏进行测试,直至游戏失败或通关,完成消除类游戏的测试;

采集不同关卡的模型通关数据以及真实玩家的通关数据,进而训练一个回归模型,使其能通过基本测试模型的通关数据来预测真实玩家的通关数据,该回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数;

采集大量的不同的游戏盘面状态及游戏盘面状态对应的玩家操作:游戏盘面状态处理为三维的二进制数据,第一维数由元件种类个数确定,第二维为盘面宽度,第三维为盘面高度,若某种元件出现在盘面的第i行第j列,则对应矩阵的第i行第j列元素为1,否则为0;游戏盘面状态对应的玩家操作处理为一维的二进制向量(玩家操作包括常规操作和道具使用操作),其元素个数为所有操作数量总和,玩家选择的操作位为1,其余为0;盘面状态与对应的玩家操作合并作为人工智能模型的初始训练样本。

具体的实施步骤与方法实施例相同,此处不再赘述。

可选地,计算机程序被处理器101执行时还实现以下步骤:

使用初始训练样本对卷积神经网络进行训练,使其能通过输入的游戏盘面状态来预测每个有效常规操作的使用概率及某种特殊道具的使用概率,其中卷积神经网络输出层会先乘以一个有效操作位置的权重向量再得到所有操作的预测概率,预测概率最大的操作则作为该模型的输出操作;

对于输出操作为道具操作的情况,再合并初始训练样本及卷积神经网络的池化层输出作为中间训练样本,使用中间训练样本训练一个分类器子模型,用来预测道具使用的具体位置;

训练好的卷积神经网络以及分类器子模型则作为基本测试模型可以对消除类游戏进行智能化自动测试。

具体的实施步骤与方法实施例相同,此处不再赘述。

可选地,计算机程序被处理器101执行时还实现以下步骤:

接收测试指令,将初始游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出;

重复执行根据基本测试模型的输出更新游戏盘面;将更新后的游戏盘面作为输入发送至基本测试模型,获取基本测试模型的输出的步骤,直至游戏失败或通关,完成消除类游戏的测试。

具体的实施步骤与方法实施例相同,此处不再赘述。

可选地,计算机程序被处理器101执行时还实现以下步骤:

用基本测试模型对不同关卡进行批量测试,得到基本测试模型在不同关卡的通关数据,同时采集大量真实玩家在不同关卡的通关数据;

使用收集到的不同关卡的通关数据作为训练样本训练一个回归模型,从而可用基本测试模型在某一关卡的通关数据来预测真实玩家的对应通关数据,达到预测游戏关卡难度的目的通关数据,该回归模型可为多元回归模型,即预测数据可包含多种目标,例如通关比率,通关时长以及通关步数。

具体的实施步骤与方法实施例相同,此处不再赘述。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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