首页 / 游戏服务器的数据互通方法与装置

游戏服务器的数据互通方法与装置有效专利 发明

技术领域

[0001] 本发明涉及计算机技术领域,尤其涉及一种游戏服务器的数据互通方法与装置。

相关背景技术

[0002] 随着游戏生态环境的变化以及游戏用户的流失,游戏会逐渐进入游戏服务器数据互通的阶段。游戏服务器数据互通(以下均简称为合服)一则可以解决老服中的游戏用户出现的流失现象,这种现象主要是由于本服务器的生态环境进入低谷期而使得游戏用户在游戏中的各项社交需求及竞技需求均得不到满足。该流失现象在一些高付费的游戏用户中更为普遍,从而给游戏运营商带来较大的经济损失。此外,合服还可以解决服务器资源浪费,维护成本高等问题。随着合服的到来,随之出现的问题是对于进行合服的服务器选择方案。由于合服操作是将两个处于各自服务器生态环境的用户融合到一个新的生态环境中,所以合并服务器的选择方案会直接影响合服操作的效果。若合并服务器选择不当,甚至可能会加速两个服务器的生态环境恶化速度,加速游戏用户从游戏中流失。
[0003] 现有技术中基于指标相似度来制定合服方案的主要实现步骤为:
[0004] 1、选定评定指标:服务器开服时间,服务器限定时间内每日登陆角色数,服务器限定时间内每日PCU(Peak concurrent users,最高同时在线玩家人数),服务器限定时间内每日ACU(Average concurrent users,平均同时在线玩家人数),服务器限定时间内每日充值角色数,服务器限定时间内每日充值额度等。
[0005] 2、根据每个服务器的评定指标数据,计算两个服务器在某项指标上的相似度。一般相似度计算方法有:欧氏距离,余弦相似度等:
[0006] 欧氏距离:
[0007] 余弦相似度:
[0008] 3、将两个服务器在各项指标上计算得到的相似度进行加权平均。
[0009] 重复上述步骤2和3,最终得到各个服务器间的相似度矩阵。将相似度最接近的两个服务器作为合并服务器的方案选择
[0010] 现有技术的制定合服方案的缺点在于:对于角色级别的指标无法计算相似度。由于该技术方案中相似度的计算需要基于两个观察对象在该项指标上面的数据长度是相等的这一个前提,而对于游戏中角色级别的数据,由于各个服务器中的角色情况差别,无法达到“角色基本的数据长度相等”这一个标准,导致了在使用该技术方案时,必须舍弃一些对量化服务器中游戏用户生态环境情况必需的指标。

具体实施方式

[0108] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0109] 参见图1,是本发明提供的游戏服务器的数据互通方法的第一实施例的流程示意图,该方法包括以下步骤:
[0110] S1,获取待合并服务器的第一游戏指标数据;所述第一游戏指标数据记载在N个数据序列中,所述N个数据序列一一对应于N种游戏数据类型;
[0111] S2,获取待选择服务器的第二游戏指标数据;所述第二游戏指标数据记载 在另外N个数据序列中,所述另外N个数据序列一一对应于所述N种游戏数据类型;
[0112] S3,根据动态时间归整算法,逐一计算所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列之间的最小累积距离,以得到N个最小累积距离;
[0113] S4,根据每个最小累积距离,逐一计算所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列的相似度值,以得到N个相似度值;
[0114] S5,根据所述N个相似度值,计算所述第一游戏指标数据和所述第二游戏指标数据的综合相似度;
[0115] S6,当所述综合相似度达到合并标准时,将所述待合并服务器和所述待选择服务器合并,以使所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通。
[0116] 其中,所述待合并服务器的游戏数据是指所述待合并服务器存储的所有游戏数据,而所述第一游戏指标数据是将所述待合并服务器的游戏数据统计、加工后形成的数据,用于评价所述待合并服务器。所述N种游戏数据类型实际上是指N个游戏指标,包括角色战力、帮派战力、充值额度、消耗金钱等具体的游戏指标。对于所述待选择服务器也是一样。通过计算第一游戏指标数据和所述第二游戏指标数据的综合相似度来判断所述待合并服务器和所述待选择服务器是否适合合并。需要说明的是,在合并过程中,所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通,而所述第一游戏指标数据以及所述第二游戏指标数据是“加工”得到的,在合并过程中并不一定需要将所述第一游戏指标数据和所述第二游戏指标数据互通。
[0117] 由于不同游戏服务器中的这些指标有所差别,难以达到数据长度相等的条件无法采用欧式距离来计算相似度,而本发明采用了动态时间规整算法。
[0118] 动态时间规整算法(DTW,Dynamic Time Warping)是一种衡量两个长度不同的时间序列的相似度的方法。应用也比较广,主要是在模板匹配中,比如说 用在孤立词语音识别(识别两段语音是否表示同一个单词),手势识别,数据挖掘和信息检索等中。
[0119] 假设现在有两个时间序列R和T,它们的长度分别是n和m:(实际语音识别运用中,一个序列为参考模板,一个序列为测试模板,序列中的每个点的值为语音序列中每一帧的特征值。时间序列R是一个M维的向量,即R={R(1),R(2),……,R(m),……,R(M)},每个分量可以是一个数或者是一个更小的向量。时间序列T是一个N维向量,即T={T(1),T(2),……,T(n),……,T(N)},同样每个分量可以是一个数或者是一个更小的向量。M不一定等于N,但是每个分量的维数应该相同。
[0120] 由于M不一定等于N,现在要计算R和T的相似度,就不能用以前的欧式距离等类似的度量方法了,而是采用上述的动态时间规整算法。
[0121] 动态时间规整算法的核心思想是通过寻找两个数据序列之间的一条路径,使得两个数据序列之间的总距离最小,并用该路径的长度(即最小累积距离)来表征所述两个数据序列的相似度。
[0122] 本发明首创性地将动态时间规整算法应用到游戏服务器的数据处理的领域中,用以计算两个游戏服务器对于相同的游戏数据类型的两个数据序列的相似度,克服了现有技术中通过欧式距离只能计算两个具有相同长度的数据序列的相似度的缺点,可以计算数据长度不一样的两个数据序列的相似度,例如角色级别数据的相似度,使得整个基于相似度选择游戏服务器的数据互通的技术方案更加科学可信。
[0123] 需要说明的是,现有技术的动态时间规整算法应用在语音识别时都是计算测试模板序列和参考模板序列的最小累积距离,用来表征相似度,所述最小累积距离越小,相似度越高,因此测试模板序列可以分别计算与多个参考模板序列的最小累积距离,找出其中的最小值对应的参考模板,即可完成语音识别。而在本发明实施例中,是先通过动态时间规整算法计算出最小累积距离,再将最小累积距离转换为相似度值,最后根据N个相似度值计算出所述第一游戏指标数据和所述第二游戏指标数据的综合相似度。可见本发明是根据自身需求将 最小累积距离转换为方便计算综合相似度的相似度值,而并不是直接利用动态时间规整算法计算得到的最小累积距离作为最终用来评价两个服务器是否适合合并的依据。
[0124] 具体地,在步骤S4中,所述根据每个最小累积距离,逐一计算所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列的相似度值,具体采用以下公式进行计算:
[0125] similark=(1+exp(-distk))/2
[0126] 其中,distk代表第k个最小累积距离,similark代表所述第一游戏指标数据和所述第二游戏指标数据中对应于第k种游戏数据类型的两个数据序列的相似度值。
[0127] 由于distk大于0,则similark必然是0到1的任意一个值,且distk越小,similark越大。不同游戏数据类型的最小累积距离大小可能差很多,不方便计算出综合相似度,而将最小累积距离根据上式转换为相似度值则可以方便计算出综合相似度。
[0128] 在步骤S5中,所述根据所述N个相似度值,计算所述第一游戏指标数据和所述第二游戏指标数据的综合相似度,具体是:
[0129] 计算所述N个相似度值的平均数,将所述平均数作为所述第一游戏指标数据和所述第二游戏指标数据的综合相似度;
[0130] 或者,计算所述N个相似度值的加权平均数,将所述加权平均数作为所述第一游戏指标数据和所述第二游戏指标数据的综合相似度。
[0131] 以下将在本发明提供的游戏服务器的数据互通方法的第二实施例和第三实施例中具体描述动态时间规整算法在本发明中的应用。
[0132] 本发明提供的游戏服务器的数据互通方法的第二实施例包括上述游戏服务器的数据互通方法的第一实施例的步骤S1~S6,还进一步限定了步骤S3。
[0133] 如图2所示,其是本发明提供的游戏服务器的数据互通方法的第二实施例的步骤S3的流程示意图。
[0134] 在步骤S3中,所述根据动态时间归整算法,逐一计算所述第一游戏指标数 据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列之间的最小累积距离,具体包括:
[0135] S301,基于同一坐标空间,逐一计算第一数据序列中的元素点到第二数据序列中的元素点的距离,得到距离矩阵D1;所述第一数据序列与所述第二数据序列分别为,所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列;其中,计算第一数据序列中的元素点到第二数据序列中的元素点的距离可以采用欧式距离公式来计算;
[0136] S302,根据所述距离矩阵D1计算累积距离矩阵D2;计算公式如下:
[0137] d2(i,j)=d1(i,j)+min[d2(i-1,j-1),d2(i-1,j),d2(i,j-1)]
[0138] 其中,d1(i,j)代表所述距离矩阵D1中的第i行,第j列的元素;d2(i,j)代表所述累积距离矩阵D2中的第i行,第j列的元素;
[0139] S303,在a值未达到所述累积距离矩阵D2的最大行数或b值未达到所述累积距离矩阵D2的最大列数时,从d2(a,b+1)、d2(a+1,b)以及d2(a+1,b+1)三个元素中选择数值最小的元素,将距离记录器记录的数值更新为所述数值最小的元素的值,并将所述a值和所述b值对应地更新为所述数值最小的元素所在的行数和列数;其中,所述a值和所述b值的初始值都是1;
[0140] S304,在所述a值达到所述累积距离矩阵D2的最大行数或所述b值达到所述累积距离矩阵D2的最大列数时,将所述距离记录器当前记录的数值作为所述第一数据序列与所述第二数据序列的最小累积距离。
[0141] 动态时间规整算法的原理如下:
[0142] 把第一数据序列的各个帧号n=1~N在一个二维直角坐标系中的横轴上标出,把第二数据序列的各帧号m=1~M在纵轴上标出,通过这些表示帧号的整数坐标画出一些纵横线即可形成一个网格,网格中的每一个交叉点表示第一数据序列中某一帧与第二数据序列中某一帧的交汇。
[0143] 动态时间规整算法分两步进行,一是计算第一数据序列和第二数据序列各帧之间的距离,即求出距离矩阵D1,二是在距离矩阵D1中找出一条最佳路径。搜索这条路径的过程可以描述如下:搜索从(1,1)点出发,对于局部路径约束,点 (i,j)可达到的前一个格点只可能是(i-1,j)、(i,j-l)和(i-1,j-1)。那么(i,j)一定选择这三个距离中的最小者所对应的点作为其前续格点,这时此路径的累积距离为:
[0144] d2(i,j)=d1(i,j)+min[d2(i-1,j-1),d2(i-1,j),d2(i,j-1)]
[0145] 即步骤S202中的累积距离矩阵D2;
[0146] 这样从(l,1)点出发(令d2(1,1)=0)搜索,反复递推,直到达到所述累积距离矩阵D2的最大行数或最大列数就可以得到最优路径,而且此时d2(i,j)就是最佳匹配路径所对应的匹配距离,即最小累积距离。
[0147] 由于在本实施例中所述的动态时间规整算法是现有技术,因此不再赘述更具体的算法原理。
[0148] 本发明提供的游戏服务器的数据互通方法的第三实施例包括上述游戏服务器的数据互通方法的第一实施例的步骤S1~S6,还进一步限定了步骤S3。
[0149] 如图3所示,其是本发明提供的游戏服务器的数据互通方法的第三实施例的步骤S3的流程示意图。
[0150] 在步骤S3中,所述根据动态时间归整算法,逐一计算所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列之间的最小累积距离,包括:
[0151] S311,根据所述第一数据序列中任意两个相邻的元素点连成的线段在坐标空间中的变化趋势,将在所述第一数据序列中任意两个相邻的元素点替换为数值A,以得到简化后的第一数据序列;其中所述数值A根据不同的变化趋势被配置成不同的具体数值;
[0152] S312,根据所述第二数据序列中任意两个相邻的元素点连成的线段在所述坐标空间中的变化趋势,将在所述第二数据序列中任意两个相邻的元素点替换为数值B,以得到简化后的第二数据序列;其中所述数值B根据不同的变化趋势被配置成不同的具体数值;所述数值A和数值B具有相同的数量级;所述第一数据序列与所述第二数据序列分别为,所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列;其中所述数值B根据不同的变化趋势被配置成不同的具体数值;
[0153] S313,基于所述坐标空间,逐一计算简化后的第一数据序列中的元素点到简化后的第二数据序列中的元素点的距离,得到距离矩阵D1;
[0154] S314,根据所述距离矩阵D1计算累积距离矩阵D2;计算公式如下:
[0155] d2(i,j)=d1(i,j)+min[d2(i-1,j-1),d2(i-1,j),d2(i,j-1)]
[0156] 其中,d1(i,j)代表所述距离矩阵D1中的第i行,第j列的元素;d2(i,j)代表所述累积距离矩阵D2中的第i行,第j列的元素;
[0157] S315,在a值未达到所述累积距离矩阵D2的最大行数或b值未达到所述累积距离矩阵D2的最大列数时,从d2(a,b+1)、d2(a+1,b)以及d2(a+1,b+1)三个元素中选择数值最小的元素,将距离记录器记录的数值更新为所述数值最小的元素的值,并将a值和b值对应地更新为所述数值最小的元素所在的行数和列数;其中,a值和b值的初始值都是1;
[0158] S316,在a值达到所述累积距离矩阵D2的最大行数或b值达到所述累积距离矩阵D2的最大列数时,将所述距离记录器当前记录的数值作为所述第一数据序列与所述第二数据序列的最小累积距离。
[0159] 其中,所述数值A根据不同的变化趋势被配置成不同的具体数值,具体是:
[0160] 当所述第一数据序列中的两个相邻的元素点连成的线段具有上升趋势时,所述数值A被配置为数值A1;
[0161] 当所述第一数据序列中的两个相邻的元素点连成的线段具有平稳趋势时,所述数值A被配置为数值A2;
[0162] 当所述第一数据序列中的两个相邻的元素点连成的线段具有下降趋势时,所述数值A被配置为数值A3;
[0163] 其中,所述数字A1、A2、A3具有相同的数量级。
[0164] 其中,所述数值B根据不同的变化趋势被配置成不同的具体数值,具体是:
[0165] 当所述第二数据序列中的两个相邻的元素点连成的线段具有上升趋势时,所述数值B被配置为数值B1;
[0166] 当所述第二数据序列中的两个相邻的元素点连成的线段具有平稳趋势时,所述数值B被配置为数值B2;
[0167] 当所述第二数据序列中的两个相邻的元素点连成的线段具有下降趋势时,所述数值B被配置为数值B3;
[0168] 其中,所述数字B1、B2、B3具有相同的数量级。
[0169] 在上述游戏服务器的数据互通方法的第二实施例的方案中,只考虑了两个数据序列的数据长度不同时的计算方法,但当两个数据序列中的元素点的数量级相差很大时,则计算量很大。与之相比,本实施例还进一步通过步骤S311和步骤S312分别对第一数据序列和第二数据序列进行简化,使得两个数据序列中的每个元素点的数值的量级能统一化,大大减少了DTW算法中的计算量。
[0170] 以下给出一个具体的例子说明本实施例的工作原理,为了简要说明,只以第一数据序列为例。
[0171] 假设第一数据序列为{(4,5),(5,6),(7,8),...,(10,12)},并且设定有三个变化趋势:上升、平稳以及下降。
[0172] 为了判断两个相邻点的连线的变化趋势,为每个变化趋势分别设定一个趋势模板:
[0173] 上升趋势模板up:(0,0),(1,0)
[0174] 平稳趋势模板stand:(0,0),(1,0)
[0175] 下降趋势模板down:(0,0),(1,-1)
[0176] 则对于该序列中点(4,5)和点(5,6)形成的线,可以计算其与三个模板的相似度:
[0177]
[0178]
[0179]
[0180]
[0181]
[0182]
[0183] 根据计算结果,用数值A来代该段曲线。例如,该段曲线与上升趋势模板up的相似度最高时,数值A配置为1;该段曲线与平稳趋势模板stand的相似度最高时,数值A配置为2;该段曲线与下降趋势模板down的相似度最高时,数值A配置为3。
[0184] 对所述第一数据序列中的每两个相邻点的连线执行上述的步骤,则所述第一数据序列进而转化为(1,2,2,…,3)。同理地,对所述第二数据序列中的每两个相邻点的连线执行上述的步骤,则所述第二数据序列也得到简化。因此最终将简化的第一数据序列和简化的第二数据序列采用DTW算法来计算相似度就可以大大减少计算量。
[0185] 需要说明的是,趋势模板只是其中一种用来确定两个相邻点的连线的变化趋势的方式,还可以采用斜率等方式来确定。所述的数值A和数值B保证两者的数量级一样即可,数值B可以同样配置为B1=1,B2=2,B3=3,也可以配置为B1=4,B2=5,B3=6,并不唯一。
[0186] 简化后的第一数据序列和第二数据序列采用上述第二实施例所述的DTW算法来计算两个数据序列的最小累积距离,其内容基本一致,因此关于DTW算法的具体应用不再赘述。
[0187] 本发明还提供了游戏服务器的数据互通方法的第四实施例,包括上述游戏服务器的数据互通方法的第一实施例的步骤S1~S6,还进一步限定了步骤S6:
[0188] 所述步骤S6具体是:
[0189] 当所述综合相似度超过设定的阈值时,则判定所述综合相似度达到合并标 准,将所述待合并服务器和所述待选择服务器合并,以使所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通。
[0190] 本发明还提供了游戏服务器的数据互通方法的第五实施例,包括上述游戏服务器的数据互通方法的第一实施例的步骤S1~S6,还进一步限定了:
[0191] 在所述根据所述N个相似度值,计算所述第一游戏指标数据和所述第二游戏指标数据的综合相似度之后还包括:将所述综合相似度存储在相似度存储区;其中,所述相似度存储区存储了所述待合并服务器与每个待选择服务器的综合相似度,并且所述待合并服务器与每个待选择服务器的综合相似度按照大小排序;
[0192] 步骤S6具体是:当所述综合相似度排在所述相似度存储区中存储的所有综合相似度的前x位时,则判定所述综合相似度达到合并标准,将所述待合并服务器和所述待选择服务器合并,以使所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通;x为预设的正整数值。
[0193] 从第五实施例和第六实施例来看,虽然在本发明第一实施例的方案中提供的是待合并服务器和待选择服务器的游戏数据互通方法,但在实际应用中,待选择服务器可以是不止一个的,即可以实现多个服务器进行合并。例如,待合并服务器是服务器A,服务器A分别与服务器B、服务器C的综合相似度都超过设定的阈值,那么此时合并的方案为服务器A、服务器B和服务器C三者进行合并;或者,待合并服务器是服务器D,服务器E和服务器F分别与服务器D的综合相似度排在前二位(或者是并列第一),那么此时合并的方案为服务器D、服务器E和服务器F三者进行合并。即,第一实施例的方案虽然提供的是两个服务器进行数据互通的方法,但多个服务器进行数据互通也属于本发明的保护范围中,[0194] 相应地,本发明还提供了一种游戏服务器的数据互通装置。
[0195] 如图4所示,其是本发明提供的游戏服务器的数据互通装置的第一实施例的结构框图,包括:
[0196] 第一获取模块1,用于获取待合并服务器的第一游戏指标数据;所述第一游 戏指标数据记载在N个数据序列中,所述N个数据序列一一对应于N种游戏数据类型;
[0197] 第二获取模块2,用于获取待选择服务器的第二游戏指标数据;所述第二游戏指标数据记载在另外N个数据序列中,所述另外N个数据序列一一对应于所述N种游戏数据类型;
[0198] 第一计算模块3,用于根据动态时间归整算法,逐一计算所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列之间的最小累积距离,以得到N个最小累积距离;
[0199] 第二计算模块4,用于根据每个最小累积距离,逐一计算所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列的相似度值,以得到N个相似度值;
[0200] 第三计算模块5,用于根据所述N个相似度值,计算所述第一游戏指标数据和所述第二游戏指标数据的综合相似度;
[0201] 数据互通模块6,用于当所述综合相似度达到合并标准时,将所述待合并服务器和所述待选择服务器合并,以使所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通。
[0202] 具体地,所述第二计算模块4具体采用以下公式进行计算:
[0203] similark=(1+exp(-distk))/2
[0204] 其中,distk代表第k个最小累积距离,similark代表所述第一游戏指标数据和所述第二游戏指标数据中对应于第k种游戏数据类型的两个数据序列的相似度值。
[0205] 具体地,所述第三计算模块5具体用于:
[0206] 计算所述N个相似度值的平均数,将所述平均数作为所述第一游戏指标数据和所述第二游戏指标数据的综合相似度;
[0207] 或者,计算所述N个相似度值的加权平均数,将所述加权平均数作为所述第一游戏指标数据和所述第二游戏指标数据的综合相似度。
[0208] 由于本实施例的游戏服务器的数据互通装置用于执行上述游戏服务器的数 据互通方法的第一实施例的方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
[0209] 本发明还提供了游戏服务器的数据互通装置的第二实施例,包括上述游戏服务器的数据互通装置的第一实施例的第一获取模块1、第二获取模块2、第一计算模块3、第二计算模块4、第三计算模块5以及数据互通模块6,还进一步限定了所述第一计算模块3。
[0210] 如图5所示,其是本发明提供的游戏服务器的数据互通装置的第一计算模块3的结构框图,包括:
[0211] 第一矩阵计算单元301,用于基于同一坐标空间,逐一计算第一数据序列中的元素点到第二数据序列中的元素点的距离,得到距离矩阵D1;所述第一数据序列与所述第二数据序列分别为,所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列;
[0212] 第二矩阵计算单元302,用于根据所述距离矩阵D1计算累积距离矩阵D2;计算公式为:d2(i,j)=d1(i,j)+min[d2(i-1,j-1),d2(i-1,j),d2(i,j-1)]
[0213] 其中,d1(i,j)代表所述距离矩阵D1中的第i行,第j列的元素;d2(i,j)代表所述累积距离矩阵D2中的第i行,第j列的元素;
[0214] 更新单元303,用于在a值未达到所述累积距离矩阵D2的最大行数或b值未达到所述累积距离矩阵D2的最大列数时,从d2(a,b+1)、d2(a+1,b)以及d2(a+1,b+1)三个元素中选择数值最小的元素,将距离记录器记录的数值更新为所述数值最小的元素的值,并将所述a值和所述b值对应地更新为所述数值最小的元素所在的行数和列数;其中,所述a值和所述b值的初始值都是1;
[0215] 距离获取单元304,用于在所述a值达到所述累积距离矩阵D2的最大行数或所述b值达到所述累积距离矩阵D2的最大列数时,将所述距离记录器当前记录的数值作为所述第一数据序列与所述第二数据序列的最小累积距离。
[0216] 由于本实施例的游戏服务器的数据互通装置用于执行上述游戏服务器的数据互通方法的第二实施例的方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
[0217] 本发明还提供了游戏服务器的数据互通装置的第三实施例,包括上述游戏服务器的数据互通装置的第一实施例的第一获取模块1、第二获取模块2、第一计算模块3、第二计算模块4、第三计算模块5以及数据互通模块6,还进一步限定了所述第一计算模块3。
[0218] 如图6所示,其是本发明提供的游戏服务器的数据互通装置的第一计算模块3的结构框图,包括:
[0219] 第一序列简化单元311,用于根据所述第一数据序列中任意两个相邻的元素点连成的线段在坐标空间中的变化趋势,将在所述第一数据序列中任意两个相邻的元素点替换为数值A,以得到简化后的第一数据序列;其中所述数值A根据不同的变化趋势被配置成不同的具体数值;
[0220] 第二序列简化单元312,用于根据所述第二数据序列中任意两个相邻的元素点连成的线段在所述坐标空间中的变化趋势,将在所述第二数据序列中任意两个相邻的元素点替换为数值B,以得到简化后的第二数据序列;其中所述数值B根据不同的变化趋势被配置成不同的具体数值;所述数值A和数值B具有相同的数量级;所述第一数据序列与所述第二数据序列分别为,所述第一游戏指标数据和所述第二游戏指标数据中对应于相同游戏数据类型的两个数据序列;其中所述数值B根据不同的变化趋势被配置成不同的具体数值;
[0221] 第一矩阵计算单元313,用于基于所述坐标空间,逐一计算简化后的第一数据序列中的元素点到简化后的第二数据序列中的元素点的距离,得到距离矩阵D1;
[0222] 第二矩阵计算单元314,用于根据所述距离矩阵D1计算累积距离矩阵D2;计算公式为d2(i,j)=d1(i,j)+min[d2(i-1,j-1),d2(i-1,j),d2(i,j-1)]
[0223] 其中,d1(i,j)代表所述距离矩阵D1中的第i行,第j列的元素;d2(i,j)代表所述累积距离矩阵D2中的第i行,第j列的元素;
[0224] 更新单元315,用于在a值未达到所述累积距离矩阵D2的最大行数或b值未达到所述累积距离矩阵D2的最大列数时,从d2(a,b+1)、d2(a+1,b)以及d2(a+1,b+1)三个元素中选择数值最小的元素,将距离记录器记录的数值更新为 所述数值最小的元素的值,并将a值和b值对应地更新为所述数值最小的元素所在的行数和列数;其中,a值和b值的初始值都是1;
[0225] 距离获取单元316,用于在a值达到所述累积距离矩阵D2的最大行数或b值达到所述累积距离矩阵D2的最大列数时,将所述距离记录器当前记录的数值作为所述第一数据序列与所述第二数据序列的最小累积距离。
[0226] 进一步地,所述数据互通装置还包括第一数值配置模块;
[0227] 所述第一数值配置模块用于:
[0228] 当所述第一数据序列中的两个相邻的元素点连成的线段具有上升趋势时,将所述数值A配置为数值A1;或,
[0229] 当所述第一数据序列中的两个相邻的元素点连成的线段具有平稳趋势时,将所述数值A配置为数值A2;或,
[0230] 当所述第一数据序列中的两个相邻的元素点连成的线段具有下降趋势时,将所述数值A配置为数值A3;
[0231] 其中,所述数字A1、A2、A3具有相同的数量级。
[0232] 进一步地,所述数据互通装置还包括第二数值配置模块;
[0233] 所述第二数值配置模块用于:
[0234] 当所述第二数据序列中的两个相邻的元素点连成的线段具有上升趋势时,将所述数值B配置为数值B1;或,
[0235] 当所述第二数据序列中的两个相邻的元素点连成的线段具有平稳趋势时,将所述数值B配置为数值B2;或,
[0236] 当所述第二数据序列中的两个相邻的元素点连成的线段具有下降趋势时,将所述数值B配置为数值B3;
[0237] 其中,所述数字B1、B2、B3具有相同的数量级。
[0238] 由于本实施例的游戏服务器的数据互通装置用于执行上述游戏服务器的数据互通方法的第三实施例的方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
[0239] 本发明还提供了游戏服务器的数据互通装置的第四实施例,包括上述游戏 服务器的数据互通装置的第一实施例的第一获取模块1、第二获取模块2、第一计算模块3、第二计算模块4、第三计算模块5以及数据互通模块6,还进一步限定了所述数据互通模块6。
[0240] 所述数据互通模块6用于当所述综合相似度超过设定的阈值时,则判定所述综合相似度达到合并标准,将所述待合并服务器和所述待选择服务器合并,以使所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通。
[0241] 由于本实施例的游戏服务器的数据互通装置用于执行上述游戏服务器的数据互通方法的第四实施例的方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
[0242] 本发明还提供了游戏服务器的数据互通装置的第四实施例,包括上述游戏服务器的数据互通装置的第一实施例的第一获取模块1、第二获取模块2、第一计算模块3、第二计算模块4、第三计算模块5以及数据互通模块6,还包括相似度存储模块;
[0243] 所述相似度存储模块用于将所述第三计算模块5计算得到的综合相似度存储在相似度存储区;其中,所述相似度存储区存储了所述待合并服务器与每个待选择服务器的综合相似度,并且所述待合并服务器与每个待选择服务器的综合相似度按照大小排序;
[0244] 则所述数据互通模块6,具体用于:
[0245] 当所述综合相似度排在所述相似度存储区中存储的所有综合相似度的前x位时,则判定所述综合相似度达到合并标准,将所述待合并服务器和所述待选择服务器合并,以使所述待合并服务器的游戏数据和所述待选择服务器的游戏数据互通;x为预设的正整数值。
[0246] 由于本实施例的游戏服务器的数据互通装置用于执行上述游戏服务器的数据互通方法的第五实施例的方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
[0247] 相比于现有技术,本发明实施例的有益效果在于:本发明提出了一种游戏服务器的数据互通方法,首创性地将动态时间规整算法应用到游戏服务器的数 据处理的领域中,用以计算两个游戏服务器对于相同的游戏数据类型的两个数据序列的相似度,克服了现有技术中通过欧式距离只能计算两个具有相同长度的数据序列的相似度的缺点,可以计算数据长度不一样的两个数据序列的相似度,例如角色级别数据的相似度,使得整个基于相似度选择游戏服务器的数据互通的技术方案更加科学可信。同时对动态时间规整算法进行改进,先对两个数据序列进行简化处理使得它们的数量级同一,大大减少了在应用动态时间规整算法进行计算时的计算量,提高计算效率。同时,本发明实施例还提出一种游戏服务器的数据互通装置,用于执行所述游戏服务器的数据互通方法的方法步骤,得到对应的技术效果。
[0248] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0249] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页 第1页 第2页 第3页