CN110339563B - 虚拟对象的生成方法和装置、存储介质及电子装置 - Google Patents

虚拟对象的生成方法和装置、存储介质及电子装置 Download PDF

Info

Publication number
CN110339563B
CN110339563B CN201910616831.4A CN201910616831A CN110339563B CN 110339563 B CN110339563 B CN 110339563B CN 201910616831 A CN201910616831 A CN 201910616831A CN 110339563 B CN110339563 B CN 110339563B
Authority
CN
China
Prior art keywords
target
candidate
individuals
random number
individual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910616831.4A
Other languages
English (en)
Other versions
CN110339563A (zh
Inventor
李茂林
龚亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910616831.4A priority Critical patent/CN110339563B/zh
Publication of CN110339563A publication Critical patent/CN110339563A/zh
Application granted granted Critical
Publication of CN110339563B publication Critical patent/CN110339563B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6009Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/65Methods for processing data by generating or executing the game program for computing the condition of a game character

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种虚拟对象的生成方法和装置、存储介质及电子装置。其中,该方法包括:获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体;在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。本发明解决了游戏关卡配置单一的技术问题。

Description

虚拟对象的生成方法和装置、存储介质及电子装置
技术领域
本发明涉及通信技术领域,具体而言,涉及一种虚拟对象的生成方法和装置、存储介质及电子装置。
背景技术
在现有的游戏中,在玩家进行闯关时,每一个游戏关卡中的怪物都是配置好的。在不同的游戏玩家进入相同的游戏关卡或者同一玩家多次进入同样的游戏关卡时,该游戏关卡中的怪物都是一致的。单一的怪物配置导致游戏玩家对再次进入已经玩过的游戏关卡兴趣不高。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种虚拟对象的生成方法和装置、存储介质及电子装置,以至少解决游戏关卡配置单一的技术问题。
根据本发明实施例的一个方面,提供了一种虚拟对象的生成方法,包括:获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。
根据本发明实施例的另一方面,还提供了一种虚拟对象的生成装置,包括:第一获取模块,用于获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;第二获取模块,用于获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;第一生成模块,用于在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。
根据本发明实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述虚拟对象的生成方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的虚拟对象的生成方法。
在本发明实施例中,采用获取目标数量的第一候选个体,在目标数量的第一候选个体中确定出第一适应度最大的第一目标候选个体,在第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与该目标游戏关卡所对应的目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象生成目标游戏关卡中的目标虚拟对象的方式,通过在目标数量的第一候选个体中确定出第一候选虚拟资源与目标虚拟资源相匹配的第一目标候选个体,从而实现了相同的目标游戏关卡可以生成不同的目标虚拟对象的技术效果,进而解决了游戏关卡配置单一的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1a是根据本发明实施例的一种可选的虚拟对象的生成方法的应用环境的示意图;
图1b是根据本发明实施例的一种可选的游戏界面的示意图;
图2是根据本发明实施例的一种可选的虚拟对象的生成方法的流程示意图;
图3是根据本发明实施例的一种可选的虚拟对象的交叉处理示意图;
图4是根据本发明实施例的一种可选的虚拟对象的变异处理示意图;
图5是根据本发明实施例的另一种可选的虚拟对象的生成方法的流程示意图;
图6是根据本发明实施例的又一种可选的虚拟对象的生成方法的流程示意图;
图7是根据本发明实施例的又一种可选的虚拟对象的生成方法的流程示意图;
图8是根据本发明实施例的一种可选的虚拟对象的生成装置的结构示意图;
图9是根据本发明实施例的另一种可选的虚拟对象的生成装置的结构示意图;
图10是根据本发明实施例的一种可选的电子装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种虚拟对象的生成方法,可选地,作为一种可选的实施方式,上述虚拟对象的生成方法可以但不限于应用于如图1a所示的环境中。
用户设备102可以通过显示屏108显示游戏界面,用户可以通过用户设备102在游戏界面上的对目标游戏关卡进行选择操作。用户设备102通过处理器106执行步骤S126,在接收到请求进入目标游戏关卡的操作指令的情况下,获取为目标游戏关卡配置的随机数种子,以及目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源,其中,随机数种子可以根据服务器的实时状态参数生成,例如可以根据服务器的系统时间、系统信息、电源状态、内存状态、当前运行中的线程ID号中的至少一个生成该随机数种子,该随机数种子可以是根据上述实时状态参数通过目标函数计算获得的数字序列,这里的目标函数可以是哈希运算,从而提高获得的数字序列的散列特性,可以理解的是,所得到的随机数种子是一串包括多个数字的数字序列,例如,该随机数种子为484545245245216245697545……645;虚拟对象可以是目标游戏关卡中所需配置的怪物,可以理解的是,在目标游戏关卡中可以具有一个或多个虚拟对象;这里,为了在目标游戏关卡中实现虚拟对象与玩家的所使用的虚拟对象进行对抗,需要为目标游戏关卡中的虚拟对象配置相应的虚拟资源,该虚拟资源可以使虚拟对象具备相应的生命值、攻击力、防御等;这里,为了实现游戏的公平性,不同玩家进入相同的游戏关卡所面对的怪物不能具有较大的差别,换言之,相同的游戏关卡中的虚拟对象可以不同,但是不同游戏关卡中的虚拟对象所占用的虚拟资源之和应当相差不大,故而对于目标游戏关卡可以设置对应的目标虚拟资源,从而基于该目标虚拟资源配置该目标游戏关卡中的虚拟对象,使得配置好的虚拟对象所占用的虚拟资源之和与目标虚拟资源相匹配;S128,根据随机数种子,生成目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;这里,在目标游戏关卡中可以配置一个或多个虚拟对象,第一候选个体用于表示候选的为目标游戏关卡所配置的包括一个或多个第一候选虚拟对象的关卡配置,换言之,不同的第一候选个体分别表示了为该目标游戏关卡所配置的怪物组合,这里的第一候选虚拟对象为该第一候选个体中候选的虚拟对象;这里,可以根据随机数种子生成随机数,也就是在表示随机数种子的随机数序列中确定一个子序列,该子序列为生成的随机数,该随机数可以用于表示虚拟对象,例如,可以预先配置多个虚拟对象,每一个虚拟对象具有对应的编号,则根据随机数种子生成的随机数可以表示相应的编号所对应的虚拟对象;S130,获取目标数量的第一候选个体分别对应的第一适应度,并确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;这里,每一个候选个体包括至少一个第一候选虚拟对象,对于每一个候选虚拟对象,可以预先配置相对应的虚拟资源,从而使得通过对不同的第一候选虚拟对象进行组合,获得与目标虚拟资源相匹配的怪物组合。例如,等级为1级的怪物a所对应的虚拟资源可以是100,等级为3级的怪物a所对应的虚拟资源可以是300,等级为2级的怪物b所对应的虚拟资源可以是500,此时目标虚拟资源为1000,此时可以通过不同的怪物组合获得与目标虚拟资源相匹配的怪物组合。这里不同等级的怪物a可以视为不同的虚拟对象,从而无需考虑等级的因素,可以更快的确定出目标虚拟对象。这里通过第一适应度表示第一候选个体所对应的虚拟资源与目标虚拟资源的匹配程度,第一适应度越大表示匹配程度越高,相应的第一候选个体所对应的虚拟资源与目标虚拟资源的差值的绝对值越小。这里,由于每一个目标游戏关卡仅需要确定出一组虚拟对象的组合,故而,可以在多个第一候选个体中确定出第一适应度最大的第一候选个体,将该第一适应度最大的第一候选个体确定为第一目标候选个体,从而后续仅需要判断该第一目标候选个体是否与目标虚拟资源相匹配。相应的,可以设置一个区间,当第一适应度位于该区间内,则表示相匹配,位于该区间外则表示不匹配。该区间可以根据目标虚拟资源和所允许的最大误差确定。S132,在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象。可以理解的是,在用户设备102接收到请求进入目标游戏关卡的操作指令的情况下,还可以执行步骤S118-S120,通过网络110向服务器112发送状态信息,这里的状态信息用户提示服务器终端接收到请求进入目标游戏关卡的操作指令。这里,用户设备102可以通过存储器104存储随机数种子等。服务器112通过处理引擎116可以根据服务器的实时状态参数,例如时间信息生成随机数种子,并执行步骤S112-S124,向用户设备102发送随机数种子。这里,服务器可以将随机数种子存储在数据库114,以便于服务器112根据该随机数种子生成目标游戏关卡中的目标虚拟对象,并对终端进入的目标游戏关卡内的虚拟对象与目标虚拟对象的一致性进行验证。
下面结合图1b通过举例对本发明实施例的虚拟对象的生成方法作进一步的说明。
在确定进入目标游戏关卡的情况下,可以确定出该目标游戏关卡所对应的目标虚拟资源和随机数种子,例如该目标游戏关卡的目标虚拟资源为10000。此时具有多个候选的虚拟对象,也就是多个怪物,每一个虚拟对象具有对应的虚拟资源,例如怪物1所对应的虚拟资源为1000,怪物2所对应的虚拟资源为2000,怪物3所对应的虚拟资源为1500,怪物4所对应的虚拟资源为2500,怪物5所对应的虚拟资源为1800。此时可以根据随机数种子生成目标数量的第一候选个体,这里的第一候选个体可以通过随机数表示,每一个第一候选个体表示一个待选的虚拟对象的组合,例如可以生成3个随机数:312541、124523、415411,这3个随机数分别表示一个第一候选个体,每一个随机数中的数字表示一个第一候选虚拟对象,以随机数312531为例,第一个数字3表示怪物3,第二个数字1表示怪物1,第三个数字2表示怪物2……则该随机数312541表示的第一候选个体包括2个怪物1,1个怪物2,1个怪物3,1个怪物4,一个怪物5;通过获取每一个第一候选个体所对应的适应度,也就是每一个第一候选个体所对应的虚拟资源与目标虚拟资源的匹配程度,以415411所表示的第一候选个体为例,该第一候选个体所对应的虚拟资源为9800,相比于另外2个第一候选个体,415411所表示的第一候选个体的与目标虚拟资源的差值的绝对值最小,第一适应度最大,则将该第一候选个体确定为第一目标候选个体。这里可以通过适应度=10000/abs(A-B)计算获得第一适应度,其中A表示个体对应的虚拟资源,B表示目标虚拟资源。若该目标游戏关卡允许具有300以内的虚拟资源的误差,则该第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配,可以将该第一目标候选个体中的第一候选虚拟对象确定为目标虚拟对象,也就是可以在目标游戏关卡中配置3个怪物1,2个怪物4,1个怪物5。可以理解的是,也可以是随机数中的奇数位表示一个第一候选虚拟对象,偶数位表示前一个奇数位的第一候选虚拟对象的数量。还以随机数312531为例,其第一个数字3表示怪物3,第二个数字1表示怪物3的数量为1个,第三个数字2表示怪物2,第四数字5表示怪物2的数量为5个,……,则此时该随机数312531表示第一候选个体包括1个怪物3,5个怪物2,1个怪物3。如图1b所示的,在确定出目标虚拟对象的情况下,可以在游戏界面上显示系统生成的怪物组合11和用户所携带的怪物组合12。可选的,还可以在游戏界面上显示用于表示怪物数量的标识13,从而在游戏界面上标识出每一个怪物的数量。
可选地,在本实施例中,上述虚拟对象的生成方法可以但不限于应用于用户设备102中,用于用户设备102生成目标游戏关卡中的目标虚拟对象。其中,图示中的登录目标账号的客户端可以但不限于运行在用户设备102中,该用户设备102可以但不限于为手机、平板电脑、笔记本电脑、PC机等支持运行应用客户端的终端设备。上述服务器104和用户设备102可以但不限于通过网络实现数据交互,上述网络可以包括但不限于无线网络或有线网络。其中,该无线网络包括:蓝牙、WIFI及其他实现无线通信的网络。上述有线网络可以包括但不限于:广域网、城域网、局域网。上述仅是一种示例,本实施例中对此不作任何限定。
下面对请求进入游戏时终端与服务器的交互进行举例说明。在终端上可以安装有游戏的客户端,也可以是通过终端上的浏览页面访问网页游戏。终端接收到对游戏界面上的选取操作时,根据选取操作的对象发出不同的指令。例如,接收到请求进入目标游戏关卡时,可以发出请求进入目标游戏关卡的操作指令。此时,终端可以向服务器发送状态信息,提示服务器终端接收到了请求进入目标游戏关卡的操作指令,以便服务器为终端提供目标游戏关卡所需的数据。可以理解的是,终端可以实时向服务器发送状态信息,便于服务器根据状态信息进行逻辑处理,并反馈逻辑处理后的数据,以便终端上的目标游戏正常运行。例如,服务器可以向终端发送随机数种子,以便终端根据随机数种子生成目标游戏关卡中的目标虚拟对象。当然,服务器也可以根据该随机数种子生成目标虚拟对象,从而对终端上生成的目标虚拟对象进行验证,保证游戏未被篡改。
可选地,作为一种可选的实施方式,如图2所示,上述虚拟对象的生成方法包括:
步骤S202,获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;
这里,获取目标数量的第一候选个体可以是从预先配置多个候选个体中随机挑选出目标数量的候选个体,将挑选出的候选个体确定为第一候选个体。
对于获取目标数量的第一候选个体,还可以是在接收到请求进入目标游戏关卡的操作指令的情况下,获取为目标游戏关卡配置的随机数种子,以及目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源;根据随机数种子,生成目标数量的第一候选个体。这里,对于操作指令可以是用户在终端上对目标关卡进行选取后,终端根据选取操作发出的操作指令。当然可以理解的是,对于连续的闯关游戏,用户在点击进入闯关游戏中的第N个关卡时,终端会发出请求进入第N个游戏关卡操作指令。在用户通过闯关游戏中的第N个关卡后,若需要用户点击进入N+1个游戏关卡,则终端可以根据用户的点击操作发出请求进入N+1个游戏关卡的操作指令。若不需要用户主动点击,在第N个游戏关卡通过后,会自动进入第N+1个游戏关卡,则终端可以在第N个游戏关卡通过后发出请求进入N+1个游戏关卡的操作指令。可以理解的是,本发明并不对操作指令的发出和获取作出限定。可以理解的是,随机数种子可以是服务器为目标游戏关卡配置的,终端接收服务器配置的随机数种子,例如随机数种子可以是根据服务器的实时状态参数生成的,由于服务器的实时状态参数是实时变化的,故而随机数种子也是不断变化的,从而使得不同时间进入目标游戏关卡终端所接收到的随机数种子是不同的,进入使得后续根据随机数种子生成的目标游戏关卡中的目标虚拟对象不同。这里服务器的实时状态参数可以包括服务器的时间参数。可以理解的是,这里的随机数种子可以是根据实时状态参数经目标函数运算后所获得的数字序列。从而可以根据该随机数种子获得随机数。例如,该随机数种子是484545245245216245697545……645,终端和服务器基于相同的随机数种子可以得到相同的随机数,例如终端或服务器通过基于该随机数种子的随机数生成器,相同生成次数下所生成的随机数均是相同的是,例如第一次生成时生成的可以均是452162。需要注意的是,上述数字序列仅是举例说明,本发明并不限于上述举例。当然,对于随机数种子也可以是终端为目标游戏关卡配置的,例如可以是终端根据终端当前的终端状态参数生成的随机数种子,例如根据时间信息,网络信息等经过哈希运算获得的。
这里,第一候选个体中包括多个第一候选虚拟对象。可以理解的是,这里的多个第一候选虚拟对象中一个第一候选虚拟对象中可以是只包括一种类型的虚拟对象,该虚拟对象的数量可以是一个或至少两个。也可以是具有至少两种类型的虚拟对象,每一个类型的虚拟对象的数量有至少一个,这里每一个类型的虚拟对象的数量可以是相同或不同的。
步骤S204,获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体;其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;
可以理解的是,为了获得与目标虚拟资源匹配程度最高的虚拟对象的组合方式,故而在多个第一候选个体中确定出第一适应度最高的第一目标候选个体。可以理解的是,这并不意味着多个第一候选个体中除第一目标候选个体以外的个体所对应的候选虚拟资源必然与目标虚拟资源不匹配。当然也可以对每一个第一候选个体的所对应的候选虚拟资源与目标虚拟资源是否匹配进行检测,从而选择出相匹配的第一候选个体,再从相匹配的第一候选个体中选择出匹配程度最高的一个或者随机选择出一个。
步骤S206,在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。
可以理解的是,每一游戏关卡所对应的目标虚拟资源可以是互不相同的,也就是不同的游戏关卡中所需配置的虚拟资源是不同的,从而给予玩家不同的游戏体验。可选的,目标虚拟资源可以与目标游戏关卡的关卡编号呈正相关。也就是,对于越高的目标游戏关卡所需配置的目标虚拟资源也越高,例如,第9关所需配置的目标虚拟资源大于第8关所需配置的目标虚拟资源。
在本发明实施例中,采用获取目标数量的第一候选个体,在目标数量的第一候选个体中确定出第一适应度最大的第一目标候选个体,在第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与该目标游戏关卡所对应的目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象生成目标游戏关卡中的目标虚拟对象的方式,通过在目标数量的第一候选个体中确定出第一候选虚拟资源与目标虚拟资源相匹配的第一目标候选个体,对于不同的终端由于获取目标数量的第一候选个体存在差异,从而使得确定出的第一目标候选个体也不同,从而实现了相同的目标游戏关卡可以生成不同的目标虚拟对象,进而解决了游戏关卡配置单一的技术问题。在不同玩家进行同一关卡游戏的时候,由于目标虚拟资源相同,既保证了关卡难度一致,但是又能有不同的关卡体验。也实现了同一玩家在重复体验关卡的时候会有不同的目标虚拟对象出现,可以保持玩家的新鲜感。
可以理解的是,本发明实施例的虚拟对象的生成方法可以应用于终端,使得终端可以在进入目标游戏关卡时实时的生成目标游戏关卡中的虚拟对象。也可以用于预先的虚拟对象的配置过程中,例如,对于游戏关卡较多的游戏而言,若手动配置每一个游戏关卡中的虚拟对象则所需花费的时间很长,可以通过本发明实施例的方法基于每一个游戏关卡中的目标虚拟资源生成每一个游戏关卡中的虚拟对象,从而节约为游戏关卡配置虚拟对象所需的时间。例如可以执行下述步骤,为目标游戏关卡配置目标虚拟对象。
S1,获取目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源;
S2,根据随机函数,生成目标数量的用于表示第一候选个体的随机数序列,其中,第一候选个体包括多个第一候选虚拟对象,这里的随机函数可以是基于随机数种子生成随机数序列的;
S3,获取目标数量的第一候选个体分别对应的第一适应度,并确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;
S4,在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象。
可以理解的是,在代替人工为游戏关卡配置虚拟对象的过程中,后续处理步骤可以借鉴本发明实施例的虚拟对象的生成方法。
可选的,获取目标数量的第一候选个体包括:在接收到请求进入目标游戏关卡的操作指令的情况下,获取为目标游戏关卡配置的随机数种子,以及目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源;根据随机数种子,生成目标数量的第一候选个体。这里通过获取随机数种子的方式生成第一候选个体,这里的随机数种子可以是服务器为终端配置的,例如服务器可以根据实时参数生成随机数种子,从而使得为不同的终端所配置的随机数种子是不同的,使得终端根据不同的随机数种子生成不同的目标数量的第一候选个体,这样最终生成的目标虚拟对象不同,解决了游戏关卡配置单一的技术问题。
可选的,根据随机数种子,生成目标数量的第一候选个体包括:根据随机数种子,生成目标数量的第一随机数序列,其中,第一随机数序列的奇数位用于指示第一候选虚拟对象,第一随机数序列的奇数位互不相同,第一随机数序列中不同的奇数位所指示的第一候选虚拟对象之间互不相同,第一随机数序列的偶数位用于指示前一奇数位的第一候选虚拟对象的数量;对第一随机数序列的奇数位进行第一取余处理,并对第一随机数序列的偶数位进行第二取余处理,获得第二随机数序列,其中,第一取余处理用于使第二随机数序列的奇数位位于第一区间内,第二取余处理用于使第二随机数序列的偶数位位于第二区间内,第一区间根据所允许配置的第一候选虚拟对象的选取范围确定,第二区间根据单个第一候选虚拟对象所允许配置的数量区间确定;将第二随机数序列确定为用于表示第一候选个体的基因编码。
这里,根据随机数种子生成目标数量的第一随机数序列,由于虚拟对象的种类是有限的,故而具有一定的选取范围,例如预先配置的虚拟对象的种类有100种,以数字1-100进行编号,则相应的选取范围为1-100,在每一个游戏关卡中每一种类的虚拟对象的数量也是有限的,例如可以将每一种虚拟对象的上限值设置为20个,下限值设置为0个。故而在本发明实施例中,通过对第一随机数序列的奇数位和偶数位分别进行取余处理,从而使得处理后获得的第二随机数序列的奇数位位于第一区间内,偶数位位于第二区间内。例如图3所示的基因编码115181,这里的奇数位分别为1、5、8,这些奇数位分别表示一种虚拟对象,这里的偶数位分别为1、1、1,分别表示前一个奇数位的虚拟对象的数量。这里,假设一共有30种可选的虚拟对象,通过数字1至30分别代表一个虚拟对象,则第一区间可以是1至30,假设在目标游戏关卡中每一种类的虚拟对象最多20个,则第二区间可以是1至20。可以理解的是,这些数字仅是为了解释本发明实施例所进行的举例,本发明并不限于上述举例。
可选的,将第二随机数序列确定为用于表示第一候选个体的基因编码包括:在目标游戏关卡存在固定虚拟对象的情况下,确定固定虚拟对象所对应的第一编码,以及固定虚拟对象的数量所对应的第二编码;将第二随机数序列中的用于写入固定虚拟对象的第一位替换为第一编码,并将第二随机数序列中的用于写入固定虚拟对象的数量的第二位替换为第二编码,获得替换后的第二随机数序列,将替换后的第二随机数序列确定为第一候选个体的基因编码,并生成第一标识,第一标识用于指示基因编码中的第一位和第二位处于锁定状态。可以理解的是,由于特定的目标游戏关卡中可能必须存在某个虚拟对象,例如游戏关卡中的boss。假设该目标游戏关卡中必须存在第一编码位2的虚拟对象,且对应的数量的为1,则将第二随机数序列中的第一位替换为2,第二位替换为1,并生成标识,用于指示该第一位和第二位处于锁定状态,从而实现得到的所有个体均包括该虚拟对象,且由于标识指示第一位和第二位处于锁定状态,从而使得后续变异处理中并不会对第一位和第二位执行变异处理。
可选的,在获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体之后,方法还包括:在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第一候选个体进行交叉处理和变异处理,获得目标数量的第二候选个体,其中,目标数量为大于2的正整数;将第二候选个体确定为更新后的第一候选个体;根据更新后的第一候选个体获取更新后的第一目标候选个体;在更新后的第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与目标虚拟资源不匹配的情况下,重复执行对目标数量的第一候选个体进行交叉处理和变异处理,获得目标数量的第二候选个体的步骤,直至得到更新后的第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与目标虚拟资源相匹配;将更新后的第一目标候选个体中的第一候选虚拟对象,确定为目标游戏关卡的目标虚拟对象。
这里,在第一目标候选个体的第一适应度指示第一候选虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第一候选个体进行交叉处理和变异处理,从而获得目标数量的第二候选个体,并重复执行该步骤,直至获得的第一目标候选个体的第一候选虚拟资源与目标虚拟资源相匹配。这里通过迭代的交叉处理和变异处理,可以更快的获取到第一候选虚拟资源与目标虚拟资源相匹配的第一目标候选个体。
可选的,对目标数量的第一候选个体进行交叉处理和变异处理,获得目标数量的第二候选个体包括:将第一候选个体的第一适应度占整体适应度的比例,确定为第一候选个体的被选概率,其中,整体适应度用于指示目标数量的第一候选个体的第一候选虚拟资源之和与目标虚拟资源的匹配程度;重复执行如下步骤,直至获得目标数量的第二候选个体:从目标数量的第一候选个体中选择出2个第一候选个体,并对选择出的2个第一候选个体进行交叉处理和变异处理,获得2个第二候选个体,其中,选择出的2个第一候选个体根据为目标游戏关卡配置的随机数种子和每一个第一候选个体的被选概率确定。
可以理解的是,在进行交叉处理和变异处理时,可以是对第一候选个体的基因编码进行交叉处理和变异处理。第一候选个体的基因编码可以是根据随机数种子生成的随机数序列。
这里,根据第一候选个体的第一适应度占整体适应度的比例确定第一候选个体的被选概率,这里的被选概率用于指示第一候选个体在随机选择的情况下被选中的概率,从而基于每一个候选个体不同的被选概率选择出作为父母的第一候选个体。可以理解的是,由于第一适应度高的第一候选个体与目标虚拟资源匹配程度也相对其他第一候选个体高,其被选概率也相对较高,从而其被选为父母进行交叉处理和变异处理的概率高于其他第一候选个体,从而可以让更优秀的基因遗传到下一代,从而减少迭代的次数。相应的,通过基于第一候选个体的被选概率选择出2个第一候选个体进行交叉处理和变异处理,可以更快的获得与目标虚拟资源相匹配的第一目标候选个体。
这里,选择出的2个第一候选个体是从目标数量的第一候选个体中选出的,在目标数量的第一候选个体中的每一个第一候选个体均具有对应的被选概率,例如,第一候选个体的被选概率分别为0.6、0.8、0.4等,这里的被选概率用于指示该第一候选个体在随机选取时被选中的概率。根据每一个第一候选个体的被选概率和随机数种子所指示的随机结果,确定出目标数量中的第一候选个体中的2个第一候选个体。可以理解的是,根据为目标游戏关卡配置的随机数种子和每一个第一候选个体的被选概率确定可以是基于轮盘赌算法,根据随机数种子所指示的轮盘赌算法的结果,确定出2个第一候选个体。
下面通过举例,对根据随机数种子和每一个第一候选个体的被选概率,从目标数量的第一候选个体中选择出2个第一候选个体进行举例说明。例如,可以获取整体适应度a,根据随机数种子,生成一个随机数x,将随机数x归化至区间0至1中,得到目标随机数y,按照第一候选个体的生成顺序,根据每一个第一候选个体的被选概率乘以100得到第一候选个体在0-100中所占的数值区间,将整体适应度a与目标随机数y的乘积所处的数值区间所对应的第一候选个体确定为被选中的第一候选个体。
可选的,对选择出的2个第一候选个体进行交叉处理包括:在根据随机数种子,以及为执行交叉处理的配置的第一概率确定执行交叉处理的情况下,对选择出的2个第一候选个体的基因编码进行交叉处理,获得2个交叉处理后的中间个体,其中基因编码包括至少两个分别用于指示第一候选虚拟对象和第一候选虚拟对象的数量的基因位;在根据随机数种子,以及第一概率确定不执行交叉处理的情况下,将选择出的2个第一候选个体确定为交叉处理后的中间个体。
下面结合图3对交叉处理的过程进行举例说明。假设选择出第一个第一候选个体301,其基因编码为115181,和第二个第一候选个体302,其基因编码为316191。在确定执行交叉处理的情况下,对基因编码115181和基因编码316191进行交叉处理,获得新的基因编码115191和316181。这里的基因编码115191表示交叉处理后的中间个体303,这里的基因编码316181表示交叉处理后的中间个体304。
与上述被选个体的确定类似的,这里,根据随机数种子和第一概率确定是否执行交叉处理的步骤包括:根据随机数种子生成一个随机数,并将其归化至区间0-1中,按执行交叉处理和不执行交叉处理的顺序,确定执行交叉处理和不执行交叉处理在0-1中所占的数值区间,根据归化后的随机数所处的数值区间确定是否执行交叉处理。例如执行交叉处理的概率为30%,则执行交叉处理的区间为[0-0.3],不执行交叉处理的区间为(0.3-1],若根据随机数种子生成随机数归化至区间0-1中为0.2,则执行交叉处理,若为0.5,则不执行交叉处理。可以理解的是,这里的数值仅是为了说明本发明实施例所作的举例,本发明并不限于上述举例。
可选的,对选择出的2个第一候选个体进行变异处理包括:在根据随机数种子,以及为执行变异处理的配置的第二概率确定执行变异处理的情况下,根据随机数种子,确定交叉处理后的中间个体所对应的基因编码中所需变异的基因位;根据随机数种子,生成用于替换所需变异的基因位的替换基因位;将所需变异的基因位替换为替换基因位,获得变异处理后的基因编码,将变异后的基因编码所对应的个体确定为第二候选个体;在根据随机数种子,以及第二概率确定不执行变异处理的情况下,将交叉处理后的中间个体确定为第二候选个体。
下面结合图4对交叉处理的过程进行举例说明。在确定执行变异处理的情况下,根据随机数种子确定出所处变异的基因位,例如图4所示的对第三个基因位进行变异处理。此时交叉处理后的中间个体的第三个基因位为5,根据随机数种子生成变异后的基因编码,例如为6,则将第三个基因位的5替换为6,得到变异后的个体402的基因编码为116181。则变异处理后获得的第二候选个体的基因编码为116181。
这里,根据随机数种子确定所需变异的基因位可以是通过随机数种子生成一个随机数,对该随机数进行取余处理,使取余处理后的数值位于第三区间内,第三区间的下限值为1,第三区间的上限值为基因编码的基因位的位数。例如图4所示的6位的基因编码,则对随机数种子生成的随机数进行取余处理,得到1至6之间的一个数字,该数字表示需要进行变异的基因位。可以理解的是,在实际操作中,对6取余后获得的值位于区间0-5中,为了得到1至6之间的一个数字,上述取余处理后的还对取余结果加1,从而使得得到1至6之间的一个数字。类似的,替换基因位的数字也是对随机数种子生成随机数进行取余处理,使得取余处理后的数值位于第四区间内,第四区间的下限值可以是1,第四区间的上限值为该基因位所对应的上限值。例如奇数位表示虚拟对象的种类,奇数位的上限值等于虚拟对象的种类的上限值,偶数位表示前一奇数位的虚拟对象的数量,则根据该目标游戏关卡所允许的单个虚拟对象的上限值确定,例如在目标游戏关卡中每一种虚拟对象最多30个,则第四数值的上限值为30。可以理解的是,这些数值仅是为了说明所作的举例,本发明并不限于上述举例。
这里根据随机数种子,以及为执行变异处理的配置的第二概率确定是否执行变异处理与上述确定是否执行交叉处理是类似的,可以相互参考。
可选的,在根据随机数种子,生成用于替换所需变异的基因位的替换基因位之前,方法还包括:在所需变异的基因位处于锁定状态的情况下,将交叉处理后的中间个体所对应的基因编码确定为变异处理后的基因编码;在所需变异的基因位未处于锁定状态的情况下,执行根据随机数种子,生成用于替换所需变异的基因位的替换基因位的步骤。
这里,可以为一个或多个游戏关卡中配置必须存在的虚拟对象,为了避免在变异处理中导致该必须存在的虚拟对象被改变,可以对必须存在的虚拟对象在基因编码中对应的基因位进行锁定,从而在变异处理中根据随机数种子确定需要进行变异的基因位为锁定状态的情况下,不再执行变异处理,将交叉处理后的中间个体对应的基因编码确定为变异处理后的基因编码。
可以理解的是,在终端在根据随机数种子生成目标数据的第一候选个体的过程中,可以根据游戏关卡与需要存在的虚拟对象的映射关系,确定在目标游戏关卡是否需要配置需要存在的虚拟对象,若需要配置需要存在的虚拟对象,则根据游戏关卡与需要存在的虚拟对象的映射关系确定该需要存在的虚拟对象所对应的基因位,并将生成的目标数据的第一候选个体中目标基因位替换为需要存在的虚拟对象所对应的基因位。这里的目标基因位可以是终端与服务器约定的基因位,例如统一对用于表示虚拟对象的种类的基因编码中的第一位进行替换。当然可以理解的是,还可以对需要存在的虚拟对象的数量进行锁定,此时则进一步根据游戏关卡与需要存在的虚拟对象的映射关系确定该需要存在的虚拟对象的数量,并对基因编码中目标基因位的后一个基因位替换为需要存在的虚拟对象的数量,并进行锁定。
可选的,在接收到请求进入目标游戏关卡的操作指令的情况下,获取为目标游戏关卡配置的随机数种子,以及目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源包括:在接收到操作指令的情况下,向服务器发送状态信息,状态信息用于指示当前接收到请求进入目标游戏关卡的操作指令;接收服务器响应状态信息所发送的随机数种子,以及根据目标游戏关卡与目标虚拟资源映射关系,确定目标虚拟资源。
这里,在接收到操作指令的情况下,可以向服务器发送状态信息,从而便于服务器根据状态信息向终端发送随机数种子。这里的随机数种子可以是服务器根据接收到状态信息时的服务器实时状态参数确定的,例如根据服务器接收到状态信息时的时间信息确定出随机数种子,并发送给终端。可以理解的是,在本发明实施例中,虽然包括交叉处理和变异处理等,但是均是通过随机数种子进行的,从而使得服务器根据相同的随机数种子,能够得到与终端相同的目标虚拟对象,便于服务器对终端进入目标游戏关卡后的虚拟对象进行验证,从而避免游戏被篡改。可以理解的是,为了不同的玩家进入相同的游戏关卡时的公平性,每一个游戏关卡所对应的目标虚拟资源是固定,故而目标游戏关卡与目标虚拟资源映射关系可以存储在终端内,终端在接收到操作指令的情况下,通过目标游戏关卡与目标虚拟资源映射关系获得当前目标游戏关卡所对应的目标虚拟资源。当然可以理解的是,目标游戏关卡所对应的目标虚拟资源也可以是服务器根据存储在服务器内的目标游戏关卡与目标虚拟资源映射关系确定并发送给终端的。
可选的,获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体包括:获取第一候选个体所对应的第一候选虚拟资源和目标虚拟资源的差值的绝对值;将第一数值除以绝对值获得的第二数值确定为第一适应度,其中,第一数值是为第一适应度的计算所配置的数值;将目标数量的第二数值中的最大值所对应的第一候选个体确定为第一目标候选个体。
这里,第一数值可以是为该目标游戏关卡配置的,也可以是为该目标游戏关卡所属的游戏配置的。下面通过举例进行说明。例如,第一候选个体的第一候选虚拟资源为5000,目标虚拟资源为20000,第一数值为10000,则第一适应度为2/3。可以理解的,第一数值并不会影响第一适应度所指示的第一候选虚拟资源与目标虚拟资源是否匹配。可以理解的是,这里的数值仅是为了说明所作的举例,本发明并不限于上述举例。
可选的,在获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体之后,方法还包括:获取为目标游戏关卡配置的目标虚拟资源的误差范围;根据误差范围指示的最大误差值以及目标虚拟资源,确定目标适应度,其中,目标适应度为符合误差范围的适应度中的最小值;在第一目标候选个体的第一适应度大于或等于目标适应度的情况下,确定第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配;在第一目标候选个体的第一适应度小于目标适应度的情况下,确定第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源不匹配。
这里,通过设置一定的误差范围,可以有效减少确定出所需的第一目标候选个体的时间,减少迭代的次数。可以理解的是,误差范围可以控制在一定的范围内,从而降低对不同玩家进入游戏时的影响,保证生成的目标虚拟对象的虚拟资源差别较小,保证游戏的公平性。下面通过举例进行说明。假设目标虚拟资源未20000,所允许的误差范围为0-2000,第一数值为10000,则在误差最大时,所对应的适应度为5。则在适应度大于该所运去的误差范围上限值对应的目标适应度的情况下,则表示所对应的虚拟资源与目标虚拟资源相匹配。可以理解的是,这里的数值仅是为了说明所作的举例,本发明并不限于上述举例。
可以理解的是,这里的每一个候选虚拟对象对应一定的虚拟资源,该虚拟资源可以是该后续那虚拟对象的血量、防御力等生成的。该虚拟资源可以包括虚拟对象的战斗力。在本发明实施例中,第一候选个体所对应的虚拟资源是第一候选个体所包括的多个第一候选虚拟对象所对应的虚拟资源之和。
下面结合图5和图6通过举例对本发明实施例作进一步的说明。下面对会涉及到的术语进行说明。
遗传算法:是计算科学中模拟自然进化,用于解决最优化问题的搜索算法。
适应度函数:遗传算法中辨别个体优劣的函数。
种群:个体的集合,算法中每一轮迭代最后得到的个体总和。
交叉率:每一轮迭代中发生交叉的几率。
变异率:每一轮迭代中发生变异的几率。
基因:基本的遗传单位。
个体:遗传算法中优化问题的解,个体包含基因串。
游戏关卡:游戏中虚拟世界的划分,玩家对虚拟世界进行挑战的一个单位。
虚拟对象:游戏关卡中与玩家进行对抗的关卡怪物。
步骤S502,请求进入目标游戏关卡,这里终端接收到请求进入目标游戏关卡的操作指令,并向服务器发送状态信息,告知服务器终端接收到请求进入目标游戏关卡的操作指令;
步骤S504,终端接收服务器发送的随机数种子,这里,服务器根据接收到状态信息时的实时参数信息生成随机数种子,并将随机数种子发送给终端;
步骤S506,终端根据遗传算法生成目标虚拟对象,这里,终端根据遗传算法生成目标游戏关卡中的目标虚拟对象;
步骤S508,终端进入目标游戏关卡,该游戏关卡中的虚拟对象为根据遗传算法生成的目标虚拟对象;
步骤S510,终端将生成结果上报服务器,可选的,终端可以在通过该目标游戏关卡后将生成结果以及通过目标游戏关卡的结果上报给服务器,从而便于服务器进行校验;
步骤S512,服务器根据随机数种子,通过遗传算法生成虚拟对象,对生成结果进行验证;可选的,服务器在接收到终端发送的生成结果的情况下,根据随机数种子,生成虚拟对象,对自身生成的虚拟对象和终端生成的虚拟对象进行校验,在两者一致的情况下,对终端通过该目标游戏关卡进行标记。可以理解的是,在校验未通过的情况下,不产生通过目标游戏关卡的标记,且可以向终端发出提示信息等,提示玩家不要篡改游戏数据。
对于步骤S506,终端根据遗传算法生成目标虚拟对象,可以具体包括:
步骤S602,确定适应度函数。可以理解的是,在遗传算法中需要通过适应度函数计算获得个体的适应度。在本发明实施例中,适应度函数可以是:适应度=10000/abs(个体对应的虚拟资源-目标虚拟资源);
步骤S604,随机初始化种群。这里,根据服务器发送的随机数种子,生成目标数量的随机数序列,将每一个随机数序列确定为种群中的一个个体。
步骤S606,将种群中的个体按适应度进行排序。这里通过排序获得适应度最大的个体,用户候选判断该个体是否达到结束条件,是否可以作为输出的目标虚拟对象。
步骤S608,判断是否达到结束条件。将种群中适应度最大的个体的适应度与目标适应度进行对比,判断是否达到结束条件。可以理解的是,目标适应度是根据所允许的虚拟资源的误差上限值所对应的目标适应度,也就是,当适应度大于目标适应度时,可认为达到结束条件。
步骤S610,从种群中挑选出2个个体作为父母,生成2个新的个体,重复执行该步骤,直至形成新的个体,也就是得到目标数据的新的个体。
步骤S612,对2个新的个体进行交叉处理。这里,可以交叉率可以选为第一概率,可选的,第一概率可以选为40%-60%。
步骤S614,对交叉处理后的2个个体进行变异处理。这里,变异率可以选为第二概率,可选的,第二概率可以选为20%-40%。例如将第一概率选为50%,第二概率选为30%,目标数量设置为100个。经过试验上述参数可以有效减少迭代的次数,缩短获得目标虚拟对象的时间。在试验中算法平均迭代12次、平均耗时4.57毫秒就能找到结果。在1帧内就能计算完毕,几乎没有延时,保证了游戏在线运行的高效性。可以理解的是,上述参数仅是本发明实施例的可选参数,本发明并不限于上述举例。
步骤S616,通过交叉处理和变异处理后,获得新的种群。可以理解的是,新的种群包括目标数量的个体。重复执行步骤S606-616。直至达到结束条件。
步骤S618,达到结束条件时,将适应度大于目标适应度的个体中所包括的虚拟对象确定为目标虚拟对象。从而通过遗传算法生成了目标虚拟对象。
可选地,本发明还提供了一种可选的实施方式,如图7所示,该虚拟对象的生成方法应用于服务器,包括:
步骤S702,在接收到终端发送的用于指示终端当前接收到请求进入目标游戏关卡的操作指令的状态信息的情况下,根据服务器的实时状态参数生成随机数种子,并将随机数种子发送至终端;
可以理解的是,随机数种子是根据服务器的实时状态参数生成的,由于服务器的实时状态参数是实时变化的,故而随机数种子也是不断变化的,从而使得不同时间进入目标游戏关卡终端所接收到的随机数种子是不同的,进入使得后续根据随机数种子生成的目标游戏关卡中的目标虚拟对象不同。这里服务器的实时状态参数可以包括服务器的时间参数。这里,可以通过TCP协议发给终端。
步骤S704,在接收到终端发送的上报信息、且上报信息指示终端通过目标游戏关卡的情况下,获取目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源,其中,上报信息包括账号信息和终端在目标游戏关卡中生成的第一目标虚拟对象;
这里,终端在通过目标游戏关卡的情况下,会向服务器发送上报信息,从而用于提示终端上的目标账号通过了目标游戏关卡,以便于服务器同步通关信息,对目标账号生成一标识信息,标识该目标账号通过了目标游戏关卡。可以理解的是,为了避免终端上的游戏数据被篡改。服务器可以根据发送给终端的随机数种子,生成目标虚拟对象,从而进行校验。这里的目标游戏关卡中所需配置的目标虚拟资源可以根据目标游戏关卡与目标虚拟资源映射关系表获得。
步骤S706,响应上报信息,根据随机数种子,生成目标数量的第三候选个体,其中,第三候选个体包括多个第二候选虚拟对象;
步骤S708,获取目标数量的第三候选个体分别对应的第二适应度,并确定出第二目标候选个体,其中,第二目标候选个体的第二适应度为目标数量的第二适应度中的最大值,第二适应度用于指示第二候选个体对应的第二虚拟资源与目标虚拟资源的匹配程度;
步骤S710,在第二目标候选个体的第二适应度指示第二目标候选个体对应的第二虚拟资源与目标虚拟资源相匹配的情况下,根据第二目标候选个体中的第二候选虚拟对象,生成目标游戏关卡中的第二目标虚拟对象;
步骤S712,在第一目标虚拟对象与第二目标虚拟对象一致的情况下,生成用于标记目标账号通过目标游戏关卡的标记信息。
可以理解的是,本发明实施例应用于服务器的虚拟对象的生成方法中,生成第二目标虚拟对象的过程与上述终端生成第一目标虚拟对象的过程是类似的,均是基于随机数种子。从而在随机数种子一致的情况下,终端和服务器所生成的目标虚拟对象也是一致,从而便于服务器根据服务器生成的第二目标虚拟对象对终端上报信息中携带的第一目标虚拟对象进行校验。在第二目标虚拟对象与第一目标虚拟对象一致的情况下,可以生成标记目标账号通过目标游戏关卡的标记信息。可以理解的是,由于游戏进度是存在于服务器的,终端再次进入游戏时,终端与服务器进行数据同步,从而得知当前终端所通过的游戏关卡。
可以理解的是,上述方法还可以包括:在第二目标虚拟对象与第一目标虚拟对象不一致的情况下,向终端发出提示信息。用于提示重新进入游戏或重新下载游戏客户端等。也可以用于提示用户不得篡改游戏数据等。
可以理解的是,在本发明实施例中,在第二目标虚拟对象与第一目标虚拟对象不一致的情况下,还可以向终端发出中止指令,从而控制终端中止游戏。
可以理解的是,本发明实施例中生成目标虚拟对象与上述方法实施例中终端生成目标虚拟对象的方法是一致的,两者之间可以相互借鉴。
可选的,在获取目标数量的第三候选个体分别对应的第二适应度,并确定出第二目标候选个体之后,方法还包括:在第二目标候选个体的第二适应度指示第二目标候选个体对应的第二虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第三候选个体进行交叉处理和变异处理,获得目标数量的第四候选个体,其中,目标数量为大于2的正整数;将第四候选个体确定为更新后的第三候选个体;根据更新后的第三候选个体获取更新后的第二目标候选个体;在更新后的第二目标候选个体的第二适应度指示第二目标候选个体的第二虚拟资源与目标虚拟资源不匹配的情况下,重复执行对目标数量的第三候选个体进行交叉处理和变异处理,获得目标数量的第四候选个体的步骤,直至得到更新后的第二目标候选个体的第二适应度指示第二目标候选个体的第二虚拟资源与目标虚拟资源相匹配;根据更新后的第二目标候选个体中的第二候选虚拟对象,生成目标游戏关卡的目标虚拟对象。
这里,在第二目标候选个体的第二适应度指示第二虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第二候选个体进行交叉处理和变异处理,从而获得目标数量的第四候选个体,并重复执行该步骤,直至获得的第二目标候选个体的第二虚拟资源与目标虚拟资源相匹配。这里通过迭代的交叉处理和变异处理,可以更快的获取到第二虚拟资源与目标虚拟资源相匹配的第二目标候选个体。
可选的,对目标数量的第三候选个体进行交叉处理和变异处理,获得目标数量的第四候选个体包括:将第三候选个体的第二适应度占整体适应度的比例,确定为第三候选个体的被选概率,其中,整体适应度用于指示目标数量的第三候选个体的第二虚拟资源之和与目标虚拟资源的匹配程度,被选概率用于指示第三候选个体在随机选择的情况下被选中的概率;重复执行根据随机数种子和每一个第三候选个体的被选概率,从目标数量的第三候选个体中选择出2个第三候选个体,并对选择出的2个第三候选个体进行交叉处理和变异处理,获得2个第四候选个体的步骤,直至获得目标数量的第四候选个体。
可以理解的是,在进行交叉处理和变异处理时,可以是对第三候选个体的基因编码进行交叉处理和变异处理。第三候选个体的基因编码可以是根据随机数种子生成的随机数序列。
这里,根据第三候选个体的第二适应度占整体适应度的比例确定第三候选个体的被选概率,从而基于每一个候选个体不同的被选概率选择出作为父母的第一候选个体。可以理解的是,由于第二适应度高的第三候选个体与目标虚拟资源匹配程度也相对其他第三候选个体高,其被选概率也相对较高,从而其被选为父母进行交叉处理和变异处理的概率高于其他第三候选个体,从而可以让更优秀的基因遗传到下一代,从而减少迭代的次数。相应的,通过基于第三候选个体的被选概率选择出2个第三候选个体进行交叉处理和变异处理,可以更快的获得与目标虚拟资源相匹配的第二目标候选个体。
可选的,对选择出的2个第三候选个体进行交叉处理包括:在根据随机数种子,以及为执行交叉处理的配置的第一概率确定执行交叉处理的情况下,对选择出的2个第三候选个体的基因编码进行交叉处理,获得2个交叉处理后的中间个体,其中基因编码包括至少两个分别用于指示第二候选虚拟对象和第二候选虚拟对象的数量的基因位;在根据随机数种子,以及第一概率确定不执行交叉处理的情况下,将选择出的2个第三候选个体确定为交叉处理后的中间个体。
可选的,对选择出的2个第三候选个体进行变异处理包括:在根据随机数种子,以及为执行变异处理的配置的第二概率确定执行变异处理的情况下,根据随机数种子,确定交叉处理后的中间个体所对应的基因编码中所需变异的基因位;根据随机数种子,生成用于替换所需变异的基因位的替换基因位;将所需变异的基因位替换为替换基因位,获得变异处理后的基因编码,将变异后的基因编码所对应的个体确定为第四候选个体;在根据随机数种子,以及第二概率确定不执行变异处理的情况下,将交叉处理后的中间个体确定为第四候选个体。
这里,通过交叉处理和变异处理可以减少迭代的次数,更快的确定出第二虚拟资源与目标虚拟资源相匹配的第二目标候选个体。
可选的,在根据随机数种子,生成用于替换所需变异的基因位的替换基因位之前,方法还包括:在所需变异的基因位处于锁定状态的情况下,将交叉处理后的中间个体所对应的基因编码确定为变异处理后的基因编码;在所需变异的基因位未处于锁定状态的情况下,执行根据随机数种子,生成用于替换所需变异的基因位的替换基因位的步骤。
这里,可以为一个或多个游戏关卡中配置必须存在的虚拟对象,为了避免在变异处理中导致该必须存在的虚拟对象被改变,可以对必须存在的虚拟对象在基因编码中对应的基因位进行锁定,从而在变异处理中根据随机数种子确定需要进行变异的基因位为锁定状态的情况下,不再执行变异处理,将交叉处理后的中间个体对应的基因编码确定为变异处理后的基因编码。
可选的,根据随机数种子,生成目标数量的第三候选个体包括:根据随机数种子,生成目标数量的第三随机数序列,其中,第三随机数序列的奇数位用于指示第二候选虚拟对象,第三随机数序列的奇数位互不相同,第三随机数序列的偶数位用于指示前一奇数位的第三候选虚拟对象的数量;对第三随机数序列的奇数位进行第一取余处理,并对第三随机数序列的偶数位进行第二取余处理,获得第四随机数序列,其中,第一取余处理用于使第三随机数序列的奇数位位于第一区间内,第二取余处理用于使第三随机数序列的偶数位位于第二区间内,第一区间根据所允许配置的第二候选虚拟对象的种类确定,第二区间根据单个第二候选虚拟对象所允许配置的数量上限值确定;将第四随机数序列确定为用于表示第二候选个体的基因编码。
可选的,将第四随机数序列确定为用于表示第二候选个体的基因编码包括:在目标游戏关卡存在固定虚拟对象的情况下,确定固定虚拟对象所对应的第一编码,以及固定虚拟对象的数量所对应的第二编码;将第四随机数序列中的用于写入固定虚拟对象的第一位替换为第一编码,并将第四随机数序列中的用于写入固定虚拟对象的数量的第二位替换为第二编码,获得替换后的第四随机数序列,将替换后的第四随机数序列确定为第二候选个体的基因编码,并生成第二标识,第二标识用于指示基因编码中的第一位和第二位处于锁定状态。可以理解的是,由于特定的目标游戏关卡中可能必须存在某个虚拟对象,例如游戏关卡中的boss。假设该目标游戏关卡中必须存在第一编码位2的虚拟对象,且对应的数量的为1,则将第二随机数序列中的第一位替换为2,第二位替换为1,并生成标识,用于指示该第一位和第二位处于锁定状态,从而实现得到的所有个体均包括该虚拟对象,且由于标识指示第一位和第二位处于锁定状态,从而使得后续变异处理中并不会对第一位和第二位执行变异处理。
这里,在本发明实施例与上述终端所执行的方法类似的,对随机数种子生成的随机数序列中的奇数位和偶数位分别进行取余处理,使得处理后的第四随机数序列符合候选虚拟对象的种类限制和候选虚拟对象的最大数量的限制。
可选的,获取目标数量的第三候选个体分别对应的第二适应度,并确定出第二目标候选个体包括:获取第三候选个体所对应的第二虚拟资源和目标虚拟资源的差值的绝对值;将第一数值除以绝对值获得的第三数值确定为第二适应度,其中,第一数值是为第二适应度的计算所配置的数值;将目标数量的第三数值中的最大值所对应的第三候选个体确定为第二目标候选个体。
可以理解的是,在本发明实施例中,为了实现服务器与终端生成目标虚拟对象一致,所使用的取余处理的方式,以及用于确定适应度中所使用的第一数值均是约定好的,两者所使用的是相同的,从而保证生成目标虚拟对象一致。
可选的,在获取目标数量的第二候选个体分别对应的第二适应度,并确定出第二目标候选个体之后,方法还包括:获取为目标游戏关卡配置的虚拟资源的误差范围;根据误差范围指示的最大误差值以及目标虚拟资源,确定目标适应度,其中,目标适应度为符合误差范围的适应度中的最小值;在第二目标候选个体的第二适应度大于或等于目标适应度的情况下,确定第二目标候选个体对应的第二虚拟资源与目标虚拟资源相匹配;在第二目标候选个体的第二适应度小于目标适应度的情况下,确定第二目标候选个体对应的第二虚拟资源与目标虚拟资源不匹配。这里,通过设置一定的误差范围,可以有效减少确定出所需的第二目标候选个体的时间,减少迭代的次数。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述虚拟对象的生成方法的虚拟对象的生成装置。如图8所示,该装置包括:
第一获取模块802,用于获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;
第二获取模块804,用于获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与目标虚拟资源的匹配程度;
可以理解的是,为了获得与目标虚拟资源匹配程度最高的虚拟对象的组合方式,故而在多个第一候选个体中确定出第一适应度最高的第一目标候选个体。可以理解的是,这并不意味着多个第一候选个体中除第一目标候选个体以外的个体所对应的候选虚拟资源必然与目标虚拟资源不匹配。当然也可以对每一个第一候选个体的所对应的候选虚拟资源与目标虚拟资源是否匹配进行检测,从而选择出相匹配的第一候选个体,再从相匹配的第一候选个体中选择出匹配程度最高的一个或者随机选择出一个。
第一生成模块806,用于在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。
可以理解的是,不同的游戏关卡中,所需配置的虚拟资源是不同的是,从而给予玩家不同的游戏体验,可选的,目标虚拟资源可以与目标游戏关卡的关卡编号呈正相关。也就是,对于越高的目标游戏关卡所需配置的目标虚拟资源也越高。
在本发明实施例中,采用获取目标数量的第一候选个体,在目标数量的第一候选个体中确定出第一适应度最大的第一目标候选个体,在第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与该目标游戏关卡所对应的目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象生成目标游戏关卡中的目标虚拟对象的方式,通过在目标数量的第一候选个体中确定出第一候选虚拟资源与目标虚拟资源相匹配的第一目标候选个体,对于不同的终端由于获取目标数量的第一候选个体存在差异,从而使得确定出的第一目标候选个体也不同,从而实现了相同的目标游戏关卡可以生成不同的目标虚拟对象,进而解决了游戏关卡配置单一的技术问题。在不同玩家进行同一关卡游戏的时候,由于目标虚拟资源相同,既保证了关卡难度一致,但是又能有不同的关卡体验。也实现了同一玩家在重复体验关卡的时候会有不同的目标虚拟对象出现,可以保持玩家的新鲜感。
可选的,第一获取模块包括:第一获取单元,用于在接收到请求进入目标游戏关卡的操作指令的情况下,获取为目标游戏关卡配置的随机数种子,以及目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源;第一生成单元,用于根据随机数种子,生成目标数量的第一候选个体。这里通过获取随机数种子的方式生成第一候选个体,这里的随机数种子可以是服务器为终端配置的,例如服务器可以根据实时参数生成随机数种子,从而使得为不同的终端所配置的随机数种子是不同的,使得终端根据不同的随机数种子生成不同的目标数量的第一候选个体,这样最终生成的目标虚拟对象不同,解决了游戏关卡配置单一的技术问题。
可选的,第一生成单元具体用于:根据随机数种子,生成目标数量的第一随机数序列,其中,第一随机数序列的奇数位用于指示第一候选虚拟对象,第一随机数序列的奇数位互不相同,第一随机数序列中不同的奇数位所指示的第一候选虚拟对象之间互不相同,第一随机数序列的偶数位用于指示前一奇数位的第一候选虚拟对象的数量;对第一随机数序列的奇数位进行第一取余处理,并对第一随机数序列的偶数位进行第二取余处理,获得第二随机数序列,其中,第一取余处理用于使第二随机数序列的奇数位位于第一区间内,第二取余处理用于使第二随机数序列的偶数位位于第二区间内,第一区间根据所允许配置的第一候选虚拟对象的选取范围确定,第二区间根据单个第一候选虚拟对象所允许配置的数量区间确定;将第二随机数序列确定为用于表示第一候选个体的基因编码。
这里,根据随机数种子生成目标数量的第一随机数序列,由于虚拟对象的种类是有限的,故而具有一定的选取范围,例如预先配置的虚拟对象的种类有100种,以数字1-100进行编号,则相应的选取范围为1-100,在每一个游戏关卡中每一种类的虚拟对象的数量也是有限的,例如可以将每一种虚拟对象的上限值设置为20个,下限值设置为0个。故而在本发明实施例中,通过对第一随机数序列的奇数位和偶数位分别进行取余处理,从而使得处理后获得的第二随机数序列的奇数位位于第一区间内,偶数位位于第二区间内。
可选的,上述装置还包括:处理模块,用于在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第一候选个体进行交叉处理和变异处理,获得目标数量的第二候选个体,其中,目标数量为大于2的正整数;更新模块,用于将第二候选个体确定为更新后的第一候选个体;第三获取模块,用于根据更新后的第一候选个体获取更新后的第一目标候选个体;第四获取模块,用于在更新后的第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与目标虚拟资源不匹配的情况下,重复执行对目标数量的第一候选个体进行交叉处理和变异处理,获得目标数量的第二候选个体的步骤,直至得到更新后的第一目标候选个体的第一适应度指示第一目标候选个体的第一候选虚拟资源与目标虚拟资源相匹配;第二生成模块,用于将更新后的第一目标候选个体中的第一候选虚拟对象,确定为目标游戏关卡的目标虚拟对象。
这里,在第一目标候选个体的第一适应度指示第一候选虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第一候选个体进行交叉处理和变异处理,从而获得目标数量的第二候选个体,并重复执行该步骤,直至获得的第一目标候选个体的第一候选虚拟资源与目标虚拟资源相匹配。这里通过迭代的交叉处理和变异处理,可以更快的获取到第一候选虚拟资源与目标虚拟资源相匹配的第一目标候选个体。
可选的,处理模块包括:确定单元,用于将第一候选个体的第一适应度占整体适应度的比例,确定为第一候选个体的被选概率,其中,整体适应度用于指示目标数量的第一候选个体的第一候选虚拟资源之和与目标虚拟资源的匹配程度,被选概率用于指示第一候选个体在随机选择的情况下被选中的概率;执行单元,用于重复执行如下步骤,直至获得目标数量的第二候选个体:从目标数量的第一候选个体中选择出2个第一候选个体,并对选择出的2个第一候选个体进行交叉处理和变异处理,获得2个第二候选个体,其中,选择出的2个第一候选个体根据为目标游戏关卡配置的随机数种子和每一个第一候选个体的被选概率确定。
可以理解的是,在进行交叉处理和变异处理时,可以是对第一候选个体的基因编码进行交叉处理和变异处理。第一候选个体的基因编码可以是根据随机数种子生成的随机数序列。
这里,根据第一候选个体的第一适应度占整体适应度的比例确定第一候选个体的被选概率,从而基于每一个候选个体不同的被选概率选择出作为父母的第一候选个体。可以理解的是,由于第一适应度高的第一候选个体与目标虚拟资源匹配程度也相对其他第一候选个体高,其被选概率也相对较高,从而其被选为父母进行交叉处理和变异处理的概率高于其他第一候选个体,从而可以让更优秀的基因遗传到下一代,从而减少迭代的次数。相应的,通过基于第一候选个体的被选概率选择出2个第一候选个体进行交叉处理和变异处理,可以更快的获得与目标虚拟资源相匹配的第一目标候选个体。
可选的,执行单元具有用于:在根据随机数种子,以及为执行交叉处理的配置的第一概率确定执行交叉处理的情况下,对选择出的2个第一候选个体的基因编码进行交叉处理,获得2个交叉处理后的中间个体,其中基因编码包括至少两个分别用于指示第一候选虚拟对象和第一候选虚拟对象的数量的基因位;在根据随机数种子,以及第一概率确定不执行交叉处理的情况下,将选择出的2个第一候选个体确定为交叉处理后的中间个体。
可选的,执行单元还具有用于:在根据随机数种子,以及为执行变异处理的配置的第二概率确定执行变异处理的情况下,根据随机数种子,确定交叉处理后的中间个体所对应的基因编码中所需变异的基因位;根据随机数种子,生成用于替换所需变异的基因位的替换基因位;将所需变异的基因位替换为替换基因位,获得变异处理后的基因编码,将变异后的基因编码所对应的个体确定为第二候选个体;在根据随机数种子,以及第二概率确定不执行变异处理的情况下,将交叉处理后的中间个体确定为第二候选个体。
这里通过交叉处理和变异处理减少迭代的次数。
可选的,上述装置还包括:第一确定模块,用于在所需变异的基因位处于锁定状态的情况下,将交叉处理后的中间个体所对应的基因编码确定为变异处理后的基因编码;处理模块,用于在所需变异的基因位未处于锁定状态的情况下,执行根据随机数种子,生成用于替换所需变异的基因位的替换基因位的步骤。
这里,可以为一个或多个游戏关卡中配置必须存在的虚拟对象,为了避免在变异处理中导致该必须存在的虚拟对象被改变,可以对必须存在的虚拟对象在基因编码中对应的基因位进行锁定,从而在变异处理中根据随机数种子确定需要进行变异的基因位为锁定状态的情况下,不再执行变异处理,将交叉处理后的中间个体对应的基因编码确定为变异处理后的基因编码。
可选的,第一获取单元具体用于:在接收到操作指令的情况下,向服务器发送状态信息,状态信息用于指示当前接收到请求进入目标游戏关卡的操作指令;接收服务器响应状态信息所发送的随机数种子,以及根据目标游戏关卡与目标虚拟资源映射关系,确定目标虚拟资源。
这里,在接收到操作指令的情况下,可以向服务器发送状态信息,从而便于服务器根据状态信息向终端发送随机数种子。这里的随机数种子可以是服务器根据接收到状态信息时的服务器实时状态参数确定的。
可选的,第二获取模块804具体用于:获取第一候选个体所对应的第一候选虚拟资源和目标虚拟资源的差值的绝对值;将第一数值除以绝对值获得的第二数值确定为第一适应度,其中,第一数值是为第一适应度的计算所配置的数值;将目标数量的第二数值中的最大值所对应的第一候选个体确定为第一目标候选个体。这里,第一数值可以是为该目标游戏关卡配置的,也可以是为该目标游戏关卡所属的游戏配置的。
可选的,上述装置还包括:第五获取模块,用于获取服务器为目标游戏关卡配置的目标虚拟资源的误差范围;第二确定模块,用于根据误差范围指示的最大误差值以及目标虚拟资源,确定目标适应度,其中,目标适应度为符合误差范围的适应度中的最小值;第三确定模块,用于在第一目标候选个体的第一适应度大于或等于目标适应度的情况下,确定第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配;第四确定模块,用于在第一目标候选个体的第一适应度小于目标适应度的情况下,确定第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源不匹配。
这里,通过设置一定的误差范围,可以有效减少确定出所需的第一目标候选个体的时间,减少迭代的次数。可以理解的是,误差范围可以控制在一定的范围内,从而降低对不同玩家进入游戏时的影响,保证生成的目标虚拟对象的虚拟资源差别较小,保证游戏的公平性。
根据本发明实施例的另一个方面,还提供了一种用于实施上述虚拟对象的生成方法的虚拟对象的生成装置。如图9所示,该装置包括:
第一发送模块902,用于在接收到终端发送的用于指示终端当前接收到请求进入目标游戏关卡的操作指令的状态信息的情况下,根据服务器的实时状态参数生成随机数种子,并将随机数种子发送至终端;
可以理解的是,随机数种子是根据服务器的实时状态参数生成的,由于服务器的实时状态参数是实时变化的,故而随机数种子也是不断变化的,从而使得不同时间进入目标游戏关卡终端所接收到的随机数种子是不同的,进入使得后续根据随机数种子生成的目标游戏关卡中的目标虚拟对象不同。这里服务器的实时状态参数可以包括服务器的时间参数。
第一获取模块904,用于在接收到终端发送的上报信息、且上报信息指示终端通过目标游戏关卡的情况下,获取目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源,其中,上报信息包括账号信息和终端在目标游戏关卡中生成的第一目标虚拟对象;
这里,终端在通过目标游戏关卡的情况下,会向服务器发送上报信息,从而用于提示终端上的目标账号通过了目标游戏关卡,以便于服务器同步通关信息,对目标账号生成一标识信息,标识该目标账号通过了目标游戏关卡。可以理解的是,为了避免终端上的游戏数据被篡改。服务器可以根据发送给终端的随机数种子,生成目标虚拟对象,从而进行校验。这里的目标游戏关卡中所需配置的目标虚拟资源可以根据目标游戏关卡与目标虚拟资源映射关系表获得。
第一生成模块906,用于响应上报信息,根据随机数种子,生成目标数量的第三候选个体,其中,第三候选个体包括多个第二候选虚拟对象;
第二获取模块908,用于获取目标数量的第三候选个体分别对应的第二适应度,并确定出第二目标候选个体,其中,第二目标候选个体的第二适应度为目标数量的第二适应度中的最大值,第二适应度用于指示第二候选个体对应的第二虚拟资源与目标虚拟资源的匹配程度;
第二生成模块910,用于在第二目标候选个体的第二适应度指示第二目标候选个体对应的第二虚拟资源与目标虚拟资源相匹配的情况下,根据第二目标候选个体中的第二候选虚拟对象,生成目标游戏关卡中的第二目标虚拟对象;
校对模块912,用于在第一目标虚拟对象与第二目标虚拟对象一致的情况下,生成用于标记目标账号通过目标游戏关卡的标记信息。
可以理解的是,本发明实施例生成第二目标虚拟对象的过程与上述终端生成第一目标虚拟对象的过程是类似的,均是基于随机数种子。从而在随机数种子一致的情况下,终端和服务器所生成的目标虚拟对象也是一致,从而便于服务器根据服务器生成的第二目标虚拟对象对终端上报信息中携带的第一目标虚拟对象进行校验。在第二目标虚拟对象与第一目标虚拟对象一致的情况下,可以生成标记目标账号通过目标游戏关卡的标记信息。可以理解的是,由于游戏进度是存在于服务器的,终端再次进入游戏时,终端与服务器进行数据同步,从而得知当前终端所通过的游戏关卡。
可选的,上述校对模块912,还可以用于在第二目标虚拟对象与第一目标虚拟对象不一致的情况下,向终端发出提示信息。用于提示重新进入游戏或重新下载游戏客户端等。也可以用于提示用户不得篡改游戏数据等。
可选的,上述校对模块912,还可以用于在第二目标虚拟对象与第一目标虚拟对象不一致的情况下,还可以向终端发出中止指令,从而控制终端中止游戏。
可选的,上述装置还包括:处理模块,用于在第二目标候选个体的第二适应度指示第二目标候选个体对应的第二虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第三候选个体进行交叉处理和变异处理,获得目标数量的第四候选个体,其中,目标数量为大于2的正整数;更新模块,用于将第四候选个体确定为更新后的第三候选个体;第三获取模块,用于根据更新后的第三候选个体获取更新后的第二目标候选个体;第四获取模块,用于在更新后的第二目标候选个体的第二适应度指示第二目标候选个体的第二虚拟资源与目标虚拟资源不匹配的情况下,重复执行对目标数量的第三候选个体进行交叉处理和变异处理,获得目标数量的第四候选个体的步骤,直至得到更新后的第二目标候选个体的第二适应度指示第二目标候选个体的第二虚拟资源与目标虚拟资源相匹配;第三生成模块,用于根据更新后的第二目标候选个体中的第二候选虚拟对象,生成目标游戏关卡的目标虚拟对象。
这里,在第二目标候选个体的第二适应度指示第二虚拟资源与目标虚拟资源不匹配的情况下,对目标数量的第二候选个体进行交叉处理和变异处理,从而获得目标数量的第四候选个体,并重复执行该步骤,直至获得的第二目标候选个体的第二虚拟资源与目标虚拟资源相匹配。这里通过迭代的交叉处理和变异处理,可以更快的获取到第二虚拟资源与目标虚拟资源相匹配的第二目标候选个体。
可选的,处理模块具体用于:将第三候选个体的第二适应度占整体适应度的比例,确定为第三候选个体的被选概率,其中,整体适应度用于指示目标数量的第三候选个体的第二虚拟资源之和与目标虚拟资源的匹配程度,被选概率用于指示第三候选个体在随机选择的情况下被选中的概率;重复执行根据随机数种子和每一个第三候选个体的被选概率,从目标数量的第三候选个体中选择出2个第三候选个体,并对选择出的2个第三候选个体进行交叉处理和变异处理,获得2个第四候选个体的步骤,直至获得目标数量的第四候选个体。
可以理解的是,在进行交叉处理和变异处理时,可以是对第三候选个体的基因编码进行交叉处理和变异处理。第三候选个体的基因编码可以是根据随机数种子生成的随机数序列。
这里,根据第三候选个体的第二适应度占整体适应度的比例确定第三候选个体的被选概率,从而基于每一个候选个体不同的被选概率选择出作为父母的第一候选个体。可以理解的是,由于第二适应度高的第三候选个体与目标虚拟资源匹配程度也相对其他第三候选个体高,其被选概率也相对较高,从而其被选为父母进行交叉处理和变异处理的概率高于其他第三候选个体,从而可以让更优秀的基因遗传到下一代,从而减少迭代的次数。相应的,通过基于第三候选个体的被选概率选择出2个第三候选个体进行交叉处理和变异处理,可以更快的获得与目标虚拟资源相匹配的第二目标候选个体。
可选的,处理模块具体用于:在根据随机数种子,以及为执行交叉处理的配置的第一概率确定执行交叉处理的情况下,对选择出的2个第三候选个体的基因编码进行交叉处理,获得2个交叉处理后的中间个体,其中基因编码包括至少两个分别用于指示第二候选虚拟对象和第二候选虚拟对象的数量的基因位;在根据随机数种子,以及第一概率确定不执行交叉处理的情况下,将选择出的2个第三候选个体确定为交叉处理后的中间个体。
可选的,处理模块具体用于:在根据随机数种子,以及为执行变异处理的配置的第二概率确定执行变异处理的情况下,根据随机数种子,确定交叉处理后的中间个体所对应的基因编码中所需变异的基因位;根据随机数种子,生成用于替换所需变异的基因位的替换基因位;将所需变异的基因位替换为替换基因位,获得变异处理后的基因编码,将变异后的基因编码所对应的个体确定为第四候选个体;在根据随机数种子,以及第二概率确定不执行变异处理的情况下,将交叉处理后的中间个体确定为第四候选个体。
这里,通过交叉处理和变异处理可以减少迭代的次数,更快的确定出第二虚拟资源与目标虚拟资源相匹配的第二目标候选个体。
可选的,上述装置还包括:第一确定模块,用于在所需变异的基因位处于锁定状态的情况下,将交叉处理后的中间个体所对应的基因编码确定为变异处理后的基因编码;上述处理模块用于在所需变异的基因位未处于锁定状态的情况下,执行根据随机数种子,生成用于替换所需变异的基因位的替换基因位的步骤。
这里,可以为一个或多个游戏关卡中配置必须存在的虚拟对象,为了避免在变异处理中导致该必须存在的虚拟对象被改变,可以对必须存在的虚拟对象在基因编码中对应的基因位进行锁定,从而在变异处理中根据随机数种子确定需要进行变异的基因位为锁定状态的情况下,不再执行变异处理,将交叉处理后的中间个体对应的基因编码确定为变异处理后的基因编码。
可选的,第一生成模块906包括:生成单元,用于根据随机数种子,生成目标数量的第三随机数序列,其中,第三随机数序列的奇数位用于指示第二候选虚拟对象,第三随机数序列的奇数位互不相同,第三随机数序列的偶数位用于指示前一奇数位的第三候选虚拟对象的数量;第一处理单元,用于对第三随机数序列的奇数位进行第一取余处理,并对第三随机数序列的偶数位进行第二取余处理,获得第四随机数序列,其中,第一取余处理用于使第三随机数序列的奇数位位于第一区间内,第二取余处理用于使第三随机数序列的偶数位位于第二区间内,第一区间根据所允许配置的第二候选虚拟对象的种类确定,第二区间根据单个第二候选虚拟对象所允许配置的数量上限值确定;第一确定单元,用于将第四随机数序列确定为用于表示第二候选个体的基因编码。
这里,对随机数种子生成的随机数序列中的奇数位和偶数位分别进行取余处理,使得处理后的第四随机数序列符合候选虚拟对象的种类限制和候选虚拟对象的最大数量的限制。
可选的,第二获取模块908包括:第一获取单元,用于获取第三候选个体所对应的第二虚拟资源和目标虚拟资源的差值的绝对值;第二获取单元,用于将第一数值除以绝对值获得的第三数值确定为第二适应度,其中,第一数值是为第二适应度的计算所配置的数值;第二确定单元,用于将目标数量的第三数值中的最大值所对应的第三候选个体确定为第二目标候选个体。
可以理解的是,在本发明实施例中,为了实现服务器与终端生成目标虚拟对象一致,所使用的取余处理的方式,以及用于确定适应度中所使用的第一数值均是约定好的,两者所使用的是相同的,从而保证生成目标虚拟对象一致。
可选的,上述装置还包括:第五获取模块,用于获取为目标游戏关卡配置的虚拟资源的误差范围;第二确定模块,用于根据误差范围指示的最大误差值以及目标虚拟资源,确定目标适应度,其中,目标适应度为符合误差范围的适应度中的最小值;第三确定模块,用于在第二目标候选个体的第二适应度大于或等于目标适应度的情况下,确定第二目标候选个体对应的第二虚拟资源与目标虚拟资源相匹配;第四确定模块,用于在第二目标候选个体的第二适应度小于目标适应度的情况下,确定第二目标候选个体对应的第二虚拟资源与目标虚拟资源不匹配。这里,通过设置一定的误差范围,可以有效减少确定出所需的第二目标候选个体的时间,减少迭代的次数。
根据本发明实施例的又一个方面,还提供了一种用于实施上述虚拟对象的生成方法的电子装置,如图10所示,该电子装置包括存储器1002和处理器1004,该存储器1002中存储有计算机程序,该处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;
S2,获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;
S3,在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。
可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图10中所示更多或者更少的组件(如网络接口等),或者具有与图10所示不同的配置。
其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的虚拟对象的生成方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的虚拟对象的生成方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1002具体可以但不限于用于存储目标虚拟对象等信息。作为一种示例,如图10所示,上述存储器1002中可以但不限于包括上述虚拟对象的生成装置中的第一获取模块802、第二获取模块804及第一生成模块806。此外,还可以包括但不限于上述虚拟对象的生成装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1006包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1006为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子装置还包括:显示器1008,用于显示目标游戏关卡;和连接总线1010,用于连接上述电子装置中的各个模块部件。
根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取目标数量的第一候选个体,其中,第一候选个体包括多个第一候选虚拟对象;
S2,获取目标数量的第一候选个体分别对应的第一适应度,并在目标数量的第一候选个体中确定出第一目标候选个体,其中,第一目标候选个体的第一适应度为目标数量的第一适应度中的最大值,第一适应度用于指示第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;
S3,在第一目标候选个体的第一适应度指示第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据第一目标候选个体中的第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,目标虚拟资源与目标游戏关卡相关联。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (13)

1.一种虚拟对象的生成方法,其特征在于,包括:
获取目标数量的第一候选个体,其中,所述第一候选个体包括多个第一候选虚拟对象;
获取所述目标数量的所述第一候选个体分别对应的第一适应度,并在所述目标数量的所述第一候选个体中确定出第一目标候选个体,其中,所述第一目标候选个体的第一适应度为所述目标数量的所述第一适应度中的最大值,所述第一适应度用于指示所述第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;
在所述第一目标候选个体的第一适应度指示所述第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据所述第一目标候选个体中的所述第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,所述目标虚拟资源与目标游戏关卡相关联;
在所述第一目标候选个体的第一适应度指示所述第一目标候选个体对应的所述第一候选虚拟资源与所述目标虚拟资源不匹配的情况下,对所述目标数量的所述第一候选个体进行交叉处理和变异处理,获得所述目标数量的第二候选个体,其中,所述目标数量为大于2的正整数;将所述第二候选个体确定为更新后的第一候选个体;根据所述更新后的第一候选个体获取更新后的所述第一目标候选个体;在更新后的所述第一目标候选个体的所述第一适应度指示所述第一目标候选个体的所述第一候选虚拟资源与所述目标虚拟资源不匹配的情况下,重复执行对所述目标数量的所述第一候选个体进行交叉处理和变异处理,获得所述目标数量的第二候选个体的步骤,直至得到更新后的所述第一目标候选个体的所述第一适应度指示所述第一目标候选个体的所述第一候选虚拟资源与所述目标虚拟资源相匹配;将更新后的所述第一目标候选个体中的所述第一候选虚拟对象,确定为所述目标虚拟对象。
2.根据权利要求1所述的方法,其特征在于,所述获取目标数量的第一候选个体包括:
在接收到请求进入所述目标游戏关卡的操作指令的情况下,获取为所述目标游戏关卡配置的随机数种子,以及所述目标游戏关卡中所需配置的虚拟对象所对应的所述目标虚拟资源;
根据所述随机数种子,生成所述目标数量的所述第一候选个体。
3.根据权利要求2所述的方法,其特征在于,根据所述随机数种子,生成目标数量的第一候选个体包括:
根据所述随机数种子,生成所述目标数量的第一随机数序列,其中,所述第一随机数序列的奇数位用于指示所述第一候选虚拟对象,所述第一随机数序列的奇数位互不相同,所述第一随机数序列中不同的奇数位所指示的所述第一候选虚拟对象之间互不相同,所述第一随机数序列的偶数位用于指示前一奇数位的所述第一候选虚拟对象的数量;
对所述第一随机数序列的奇数位进行第一取余处理,并对所述第一随机数序列的偶数位进行第二取余处理,获得第二随机数序列,其中,所述第一取余处理用于使所述第二随机数序列的奇数位位于第一区间内,所述第二取余处理用于使所述第二随机数序列的偶数位位于第二区间内,所述第一区间根据所允许配置的第一候选虚拟对象的选取范围确定,所述第二区间根据单个所述第一候选虚拟对象所允许配置的数量区间确定;
将所述第二随机数序列确定为用于表示所述第一候选个体的基因编码。
4.根据权利要求1所述的方法,其特征在于,对所述目标数量的第一候选个体进行交叉处理和变异处理,获得所述目标数量的第二候选个体包括:
将每个所述第一候选个体的所述第一适应度占整体适应度的比例,确定为每个所述第一候选个体的被选概率,其中,所述整体适应度用于指示所述目标数量的所述第一候选个体的所述第一候选虚拟资源之和与所述目标虚拟资源的匹配程度;
重复执行如下步骤,直至获得所述目标数量的所述第二候选个体:
从所述目标数量的所述第一候选个体中选择出2个所述第一候选个体,并对选择出的2个所述第一候选个体进行所述交叉处理和所述变异处理,获得2个所述第二候选个体,其中,选择出的2个所述第一候选个体根据为所述目标游戏关卡配置的随机数种子和每一个所述第一候选个体的所述被选概率确定。
5.根据权利要求4所述的方法,其特征在于,对选择出的2个所述第一候选个体进行所述交叉处理包括:
在根据所述随机数种子,以及为执行所述交叉处理的配置的第一概率确定执行所述交叉处理的情况下,对选择出的2个所述第一候选个体的基因编码进行所述交叉处理,获得2个所述交叉处理后的中间个体,其中所述基因编码包括至少两个分别用于指示所述第一候选虚拟对象和所述第一候选虚拟对象的数量的基因位;
在根据所述随机数种子,以及所述第一概率确定不执行所述交叉处理的情况下,将选择出的2个所述第一候选个体确定为所述交叉处理后的中间个体。
6.根据权利要求4所述的方法,其特征在于,对选择出的2个所述第一候选个体进行所述变异处理包括:
在根据所述随机数种子,以及为执行所述变异处理的配置的第二概率确定执行所述变异处理的情况下,根据所述随机数种子,确定所述交叉处理后的中间个体所对应的基因编码中所需变异的基因位;
根据所述随机数种子,生成用于替换所述所需变异的基因位的替换基因位;
将所述所需变异的基因位替换为所述替换基因位,获得所述变异处理后的基因编码,将所述变异后的基因编码所对应的个体确定为所述第二候选个体;
在根据所述随机数种子,以及所述第二概率确定不执行所述变异处理的情况下,将所述交叉处理后的所述中间个体确定为所述第二候选个体。
7.根据权利要求6所述的方法,其特征在于,在根据所述随机数种子,生成用于替换所述所需变异的基因位的替换基因位之前,所述方法还包括:
在所述所需变异的基因位处于锁定状态的情况下,将所述交叉处理后的所述中间个体所对应的基因编码确定为所述变异处理后的基因编码;
在所述所需变异的基因位未处于锁定状态的情况下,执行根据所述随机数种子,生成用于替换所述所需变异的基因位的替换基因位的步骤。
8.根据权利要求2所述的方法,其特征在于,在接收到请求进入目标游戏关卡的操作指令的情况下,获取为所述目标游戏关卡配置的随机数种子,以及所述目标游戏关卡中所需配置的虚拟对象所对应的目标虚拟资源包括:
在接收到所述操作指令的情况下,向服务器发送状态信息,所述状态信息用于指示当前接收到请求进入所述目标游戏关卡的操作指令;
接收所述服务器响应所述状态信息所发送的所述随机数种子,以及根据目标游戏关卡与目标虚拟资源映射关系,确定所述目标虚拟资源。
9.根据权利要求1至8任一项所述的方法,其特征在于,获取所述目标数量的所述第一候选个体分别对应的第一适应度,并在所述目标数量的所述第一候选个体中确定出第一目标候选个体包括:
获取所述第一候选个体所对应的所述第一候选虚拟资源和所述目标虚拟资源的差值的绝对值;
将第一数值除以所述绝对值获得的第二数值确定为所述第一适应度,其中,所述第一数值是为所述第一适应度的计算所配置的数值;
将所述目标数量的第二数值中的最大值所对应的第一候选个体确定为所述第一目标候选个体。
10.根据权利要求1至8任一项所述的方法,其特征在于,在获取所述目标数量的所述第一候选个体分别对应的第一适应度,并在所述目标数量的所述第一候选个体中确定出第一目标候选个体之后,所述方法还包括:
获取为所述目标游戏关卡配置的所述目标虚拟资源的误差范围;
根据所述误差范围指示的最大误差值以及所述目标虚拟资源,确定目标适应度,其中,所述目标适应度为符合所述误差范围的适应度中的最小值;
在所述第一目标候选个体的第一适应度大于或等于所述目标适应度的情况下,确定所述第一目标候选个体对应的所述第一候选虚拟资源与所述目标虚拟资源相匹配;
在所述第一目标候选个体的第一适应度小于所述目标适应度的情况下,确定所述第一目标候选个体对应的所述第一候选虚拟资源与所述目标虚拟资源不匹配。
11.一种虚拟对象的生成装置,其特征在于,包括:
第一获取模块,用于获取目标数量的第一候选个体,其中,所述第一候选个体包括多个第一候选虚拟对象;
第二获取模块,用于获取所述目标数量的所述第一候选个体分别对应的第一适应度,并在所述目标数量的所述第一候选个体中确定出第一目标候选个体,其中,所述第一目标候选个体的第一适应度为所述目标数量的所述第一适应度中的最大值,所述第一适应度用于指示所述第一候选个体对应的第一候选虚拟资源与所配置的目标虚拟资源的匹配程度;
第一生成模块,用于在所述第一目标候选个体的第一适应度指示所述第一目标候选个体对应的第一候选虚拟资源与目标虚拟资源相匹配的情况下,根据所述第一目标候选个体中的所述第一候选虚拟对象,生成目标游戏关卡中的目标虚拟对象,其中,所述目标虚拟资源与所述目标游戏关卡相关联;
所述装置还包括:处理模块,用于在所述第一目标候选个体的第一适应度指示所述第一目标候选个体对应的所述第一候选虚拟资源与所述目标虚拟资源不匹配的情况下,对所述目标数量的所述第一候选个体进行交叉处理和变异处理,获得所述目标数量的第二候选个体,其中,所述目标数量为大于2的正整数;更新模块,用于将所述第二候选个体确定为更新后的第一候选个体;第三获取模块,用于根据所述更新后的第一候选个体获取更新后的所述第一目标候选个体;第四获取模块,用于在更新后的所述第一目标候选个体的所述第一适应度指示所述第一目标候选个体的所述第一候选虚拟资源与所述目标虚拟资源不匹配的情况下,重复执行对所述目标数量的所述第一候选个体进行交叉处理和变异处理,获得所述目标数量的第二候选个体的步骤,直至得到更新后的所述第一目标候选个体的所述第一适应度指示所述第一目标候选个体的所述第一候选虚拟资源与所述目标虚拟资源相匹配;第二生成模块,用于将更新后的所述第一目标候选个体中的所述第一候选虚拟对象,确定为所述目标虚拟对象。
12.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至10任一项中所述的方法。
13.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至10任一项中所述的方法。
CN201910616831.4A 2019-07-09 2019-07-09 虚拟对象的生成方法和装置、存储介质及电子装置 Active CN110339563B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910616831.4A CN110339563B (zh) 2019-07-09 2019-07-09 虚拟对象的生成方法和装置、存储介质及电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910616831.4A CN110339563B (zh) 2019-07-09 2019-07-09 虚拟对象的生成方法和装置、存储介质及电子装置

Publications (2)

Publication Number Publication Date
CN110339563A CN110339563A (zh) 2019-10-18
CN110339563B true CN110339563B (zh) 2023-09-26

Family

ID=68178612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910616831.4A Active CN110339563B (zh) 2019-07-09 2019-07-09 虚拟对象的生成方法和装置、存储介质及电子装置

Country Status (1)

Country Link
CN (1) CN110339563B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111185014B (zh) * 2019-11-07 2021-02-12 腾讯科技(深圳)有限公司 对象匹配方法、装置和计算机可读存储介质
CN112973113A (zh) * 2021-03-31 2021-06-18 深圳市天天来玩科技有限公司 移动单元的显示方法、系统、设备和计算机存储介质
CN113457129B (zh) * 2021-06-23 2024-07-12 深圳市瑞立视多媒体科技有限公司 游戏关卡选择及角色配置方法、系统和计算机设备
CN113797546B (zh) * 2021-09-18 2024-02-23 珠海金山数字网络科技有限公司 资源处理方法、装置、计算设备及计算机可读存储介质
CN117797477A (zh) * 2022-09-23 2024-04-02 腾讯科技(深圳)有限公司 虚拟对象的生成方法、装置、设备、介质和程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013200386A1 (en) * 2005-12-30 2013-02-21 Innovation Institute Llc An adjustable pet door
CN107970608A (zh) * 2017-11-09 2018-05-01 腾讯科技(成都)有限公司 关卡游戏的设置方法和装置、存储介质、电子装置
CN108654089A (zh) * 2018-05-09 2018-10-16 腾讯科技(深圳)有限公司 游戏任务的测试方法及装置、电子设备、存储介质
CN109276884A (zh) * 2018-08-30 2019-01-29 北京深极智能科技有限公司 游戏路径生成方法和装置
CN109615074A (zh) * 2018-12-14 2019-04-12 北京深极智能科技有限公司 游戏的怪物配置生成方法及装置
CN109675313A (zh) * 2018-12-24 2019-04-26 网易(杭州)网络有限公司 随机游戏地图的生成方法及装置、电子设备、存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013200386A1 (en) * 2005-12-30 2013-02-21 Innovation Institute Llc An adjustable pet door
CN107970608A (zh) * 2017-11-09 2018-05-01 腾讯科技(成都)有限公司 关卡游戏的设置方法和装置、存储介质、电子装置
CN108654089A (zh) * 2018-05-09 2018-10-16 腾讯科技(深圳)有限公司 游戏任务的测试方法及装置、电子设备、存储介质
CN109276884A (zh) * 2018-08-30 2019-01-29 北京深极智能科技有限公司 游戏路径生成方法和装置
CN109615074A (zh) * 2018-12-14 2019-04-12 北京深极智能科技有限公司 游戏的怪物配置生成方法及装置
CN109675313A (zh) * 2018-12-24 2019-04-26 网易(杭州)网络有限公司 随机游戏地图的生成方法及装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN110339563A (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
CN110339563B (zh) 虚拟对象的生成方法和装置、存储介质及电子装置
CN112235384B (zh) 分布式系统中的数据传输方法、装置、设备及存储介质
CN109117953B (zh) 网络参数训练方法和系统、服务器、客户端及存储介质
CN108648000B (zh) 对用户留存生命周期进行评估的方法及装置、电子设备
US11260302B2 (en) Apparatus and method of creating agent in game environment
CN110032682B (zh) 一种信息推荐列表生成方法、装置及设备
CN111242230A (zh) 基于人工智能的图像处理方法及图像分类模型训练方法
WO2006110242A2 (en) Model optimization method and system using zeta statistic
CN112689848A (zh) 一种区块链数据的共识方法及相关设备
CN109656878B (zh) 健康档案数据生成方法及装置
CN112291119B (zh) 区块链网络测试方法、装置、介质及电子设备
CN113343089B (zh) 用户召回方法及装置、设备
CN111260220A (zh) 群控设备识别方法、装置、电子设备和存储介质
CN110659023B (zh) 一种程序化内容生成的方法以及相关装置
CN112948083A (zh) 数据处理方法、装置及电子设备
CN110941769B (zh) 目标帐号的确定方法和装置、电子装置
CN112090074A (zh) 应用中的虚拟物品控制方法、装置、设备及介质
CN112699049B (zh) 区块链网络测试方法、装置、介质及电子设备
CN108241716A (zh) 一种资源导入方法及装置
CN116596391A (zh) 变更控制绩效确定方法、装置、电子设备及存储介质
CN115455457B (zh) 基于智慧大数据的链数据管理方法、系统和存储介质
US11681516B2 (en) Computer-implemented method and device for the update management of different versions of distributed software with the aid of machine learning methods
CN113015179B (zh) 基于深度q网络的网络资源选择方法、装置以及存储介质
CN113838527A (zh) 一种靶基因预测模型的生成方法及装置、存储介质
CN113205185A (zh) 网络模型优化方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant