游戏匹配方法、装置、存储介质及电子设备与流程

文档序号:31132638发布日期:2022-08-13 07:02阅读:90来源:国知局
游戏匹配方法、装置、存储介质及电子设备与流程

1.本公开涉及计算机技术领域,具体地,涉及一种游戏匹配方法、装置、存储介质及电子设备。


背景技术:

2.在moba(multiplayer online battle arena,多人在线战术竞技游戏)的对战匹配场景中,通常是单个或多个用户先组成一个游戏队伍,然后以游戏队伍为单位进行对战匹配。当同一时间的在线游戏队伍量很大的情况下,需要并发地对线上游戏队伍进行对战匹配,以缩短游戏匹配所需要的时长,提高游戏匹配效率。
3.目前,采用并发对战匹配的方式是将在线游戏队伍随机地分配到不同匹配池中,以并行地在每个匹配池中对该匹配池中的游戏队伍进行对战匹配。而在对战匹配中,倾向将同一类型的用户进行匹配,但是,由于是随机地将游戏队伍分配到不同匹配池中,因此,此种方式可能造成同一匹配池中匹配到相同类型的游戏队伍难度增大,增加游戏匹配所需要的时长,进而导致游戏匹配效率降低。


技术实现要素:

4.提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
5.第一方面,本公开提供一种游戏匹配方法,包括:
6.获取待匹配游戏队伍的队伍特征;
7.根据所述队伍特征,通过预训练的好的聚类模型,得到所述待匹配游戏队伍所属的目标类簇,所述聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的;
8.根据所述待匹配游戏队伍的目标类簇和游戏房间类型,将所述待匹配游戏队伍分配到多个匹配池中的目标匹配池中,所述匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且所述匹配池中的游戏队伍的等级差异最小;
9.在所述目标匹配池中,确定与所述待匹配游戏队伍匹配的游戏队伍。
10.第二方面,本公开提供一种游戏匹配装置,包括:
11.获取模块,用于获取待匹配游戏队伍的队伍特征;
12.第一确定模块,用于根据所述队伍特征,通过预训练的好的聚类模型,得到所述待匹配游戏队伍所属的目标类簇,所述聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的;
13.分配模块,用于根据所述待匹配游戏队伍的目标类簇和游戏房间类型,将所述待
匹配游戏队伍分配到多个匹配池中的目标匹配池中,所述匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且所述匹配池中的游戏队伍的等级差异最小;
14.匹配模块,用于在所述目标匹配池中,确定与所述待匹配游戏队伍匹配的游戏队伍。
15.第三方面,本公开提供一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现第一方面中所述方法的步骤。
16.第四方面,本公开提供一种电子设备,包括:
17.存储装置,其上存储有计算机程序;
18.处理装置,用于执行所述存储装置中的所述计算机程序,以实现第一方面中所述方法的步骤。
19.通过上述方案,由于聚类模型以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的,因此,根据聚类模型预测得到待匹配游戏队伍所属的目标类簇和游戏房间类型,可以确保各个匹配池内的各游戏房间类型下的待匹配游戏队伍的数量差异最小,且同一匹配池中分配到的待匹配游戏队伍之间的游戏等级差异最小,进而缩短了在同一匹配池中进行游戏队伍对战匹配的匹配时长,提高了游戏匹配的效率。
20.本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
21.结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。在附图中:
22.图1是根据本公开一示例性实施例示出的一种游戏匹配方法的流程图。
23.图2是根据本公开一示例性实施例示出的一种聚类模型的训练过程的示意图。
24.图3是根据本公开一示例性实施例示出的一种类簇绑定匹配池的示意图。
25.图4是根据本公开一示例性实施例示出的一种游戏匹配方法的另一流程图。
26.图5是根据本公开一示例性实施例示出的一种游戏匹配装置的框图。
27.图6是根据本公开一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
28.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
29.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
30.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
31.需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
32.需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
33.本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
34.可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。
35.例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
36.作为一种可选的但非限定性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。
37.可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其它满足相关法律法规的方式也可应用于本公开的实现方式中。
38.同时,可以理解的是,本技术方案所涉及的数据(包括但不限于数据本身、数据的获取或使用)应当遵循相应法律法规及相关规定的要求。
39.正如背景技术所言,在moba的对战匹配中,倾向将同一类型的游戏队伍进行对战匹配。由于moba通常是单个或多个用户先组成一个游戏队伍,以一个游戏队伍为单位进行匹配。这里的类型意指游戏队伍中各用户的游戏水平,即在对战匹配中,期望把游戏水平差异较小的游戏队伍匹配在一起,以确保用户游戏体验感。因此,在不同匹配池中并行地对游戏队伍进行匹配时,如何确保各匹配池中能较快的匹配到同一类型的游戏队伍是至关重要的。
40.有鉴于此,本公开实施例提供一种游戏匹配方法、装置、存储介质及电子设备,以下结合附图对本公开实施例进行详细解释说明。
41.图1是根据本公开一示例性实施例示出的一种游戏匹配方法的流程图,该游戏匹配方法可以应用于电子设备中,参照图1,该游戏匹配方法可以包括以下步骤:
42.步骤s101,获取待匹配游戏队伍的队伍特征。
43.在一些实施例中,电子设备可以响应用户针对搭载在游戏终端的游戏应用程序发起的游戏请求操作,执行获取待匹配游戏队伍的队伍特征的步骤。
44.在一些实施例中,获取待匹配游戏队伍的队伍特征可以通过以下方式获取:获取待匹配游戏队伍中的至少一个用户对应的用户特征和/或设备特征;根据待匹配游戏队伍中的用户特征和/或设备特征,确定待匹配游戏队伍的所述队伍特征。
45.其中,用户特征是组成待匹配游戏队伍的用户的特征,设备特征是用户发起游戏请求操作的游戏终端的特征。
46.在一些实施例中,用户特征可以是由段位特征和elo(埃洛等级)分构建的特征,其中,段位特征和elo分可以体现用户的游戏等级。段位特征可以包括不同粒度(大段位和小段位)的特征,例如以数字表征段位特征为例, 1-7可以用于表示不同的大段位,1-31可以用于表示不同的小段位,数字不同表征用户的游戏等级不同。
47.设备特征可以是ping值,ping值是指从游戏终端对游戏服务器发送数据到接收到游戏服务器反馈数据的时间,用于表征游戏终端的网络延迟。
48.在队伍特征由用户特征和设备特征确定的情况下,可以通过以下方式确定队伍特征:将待匹配游戏队伍中的用户特征和设备特征分别进行向量化表示,得到与用户特征对应的用户特征向量和与设备特征对应的设备特征向量;对用户特征向量和设备特征向量进行拼接,得到队伍特征向量,队伍特征向量用于表征所述队伍特征。
49.以上述示例的段位特征、elo分和ping值为例,对得到待匹配游戏队伍的队伍特征进行示例性说明。其中,待匹配游戏队伍的队伍特征通过向量特征表示,向量特征可以包括elo分维度的向量、第一队伍大段位维度的向量、第一队伍小段位维度的向量、第二队伍大段位维度的向量、第二队伍小段位维度的向量、第三队伍大段位维度的向量、第三队伍小段位维度的向量和 ping值维度的向量拼接构成。
50.elo分维度的向量中的参数可以包括待匹配游戏队伍中所有用户的elo 分中的最高elo分、最低elo分、平均elo分和对所有用户的elo分进行均值方差标准化得到的值。
51.第一队伍大段位维度的向量中的参数可以包括待匹配游戏队伍中所有用户的大段位中的最高大段位、最低大段位和平均大段位。
52.第一队伍小段位维度的向量中的参数可以包括待匹配游戏队伍中所有用户的大段位中的最高小段位、最低小段位和平均小段位。
53.第二队伍大段位维度的向量中的参数可以包括待匹配游戏队伍中所有用户的大段位。
54.第二队伍小段位维度的向量中的参数可以包括待匹配游戏队伍中所有用户的小段位。
55.第三队伍大段位维度的向量中的参数可以包括待匹配游戏队伍中各大段位用户的数量。其中,可以将该向量标准为模长为1的向量。
56.第三队伍小段位维度的向量中的参数可以包括待匹配游戏队伍中各小段位用户的数量。其中,可以将该向量标准为模长为1的向量。将向量标准为模长为1的向量可以参照相关技术,本实施例在此不做赘述。
57.ping值维度的向量中的参数可以包括待匹配游戏队伍中所有用户到不同游戏服务器的ping值的均值。示例地,ping值维度的向量=[ping-1,ping-2,ping-3,ping-4,ping-5,ping-6],其中,ping-1可以用于表征待匹配游戏队伍中所有用户到游戏服务器1的ping值的均值;ping-2可以用于表征待匹配游戏队伍中所有用户到游戏服务器2的ping值的均值,以此类推, ping-6可以用于表征待匹配游戏队伍中所有用户到游戏服务器6的ping值的均值。
[0058]
在一些实施例中,ping值可以执行归一化,以将ping值映射到(0,1)之间。举例来
讲,可以采用以下公式对各参数进行归一化处理:
[0059][0060]
在上式(1)中,根据ping值的取值情况分别对应不同映射值的确定方式。其中,value为ping值对于的映射值;k为预设值,其表示ping值的变化对映射值影响的斜率,k的绝对值越大,单位变化的ping值对映射值影响越大;p
comf
表示用户对战舒适的临界值,当ping值小于或等于p
comf
时,认为用户的战斗体验是舒适的。
[0061]
考虑到用户对延迟体验的差异因不同国家/地区的整体网络情况而存在不同,如在整体网络延迟都比较高的国家/地区,用户的容忍度相对较大, p
comf
应越大;相反在整体网络延迟低的国家/地区,用户的容忍度较低,p
comf
应该越低。在一些实施中,可以通过统计每个国家/地区的用户对网络延迟的忍耐临界值的取值情况,根据统计的情况,可以将所有用户对网络延迟的忍耐临界值的均值作为该国家/地区的p
comf

[0062]
需要说明的是,上述示例的向量特征对本实施例并不造成各维度向量的拼接顺序的限定。且上述各维度向量可以任意组合得到表征队伍特征的向量特征。
[0063]
在一些实施例中,可以将段位(大段位或小段位)的取值映射到(0,1)之间。承接上述1-7可以用于表示不同的大段位,1-31可以用于表示不同的小段位的示例,例如待匹配游戏队伍中的用户a的大段位为1,则对应的映射值可以为1/7;用户a的小段位为10,则对应的映射值可以为10/31。
[0064]
需要说明的是,将将上述提及的参数映射到同一个值域(例如(0,1))是为了便于数据之间的比较,例如,便于待匹配游戏队伍之间的游戏等级的比较。
[0065]
步骤s102,根据队伍特征,通过预训练的好的聚类模型,得到待匹配游戏队伍所属的目标类簇,聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的。
[0066]
需要说明的是,获取到的待匹配游戏队伍与预先用于训练聚类模型的样本游戏队伍的分布是一致的,以此作为实现本公开目的的基础条件。
[0067]
应当需要的是,聚类模型包括不同游戏房间类型对应的聚类子模型,每一聚类子模型用于对与该聚类子模型匹配的游戏房间类型的待匹配游戏队伍进行目标类簇的预测。
[0068]
示例地,以游戏房间类型包括1人、2人、3人、4人和5人为例,1人、 2人、3人、4人和5人分别对应一聚类子模型。
[0069]
在一些实施例中,聚类模型可以通过以下方式获得:针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对与该种游戏房间类型对应的初始聚类子模型的参数进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型;根据所有游戏房间类型分别对应的聚类子模型,确定聚类模型。其中,目标约束为:不同类簇之间样本游戏队伍的数量差异最小化,以及同一类簇中的样本游戏队伍之间的游戏等级差异最小化。
[0070]
可以理解的是,将不同游戏房间类型分别对应的聚类子模型进行合并,即可以得
到聚类模型。
[0071]
参照图2,以游戏房间类型包括1人、2人、3人、4人和5人为例,根据1人、2人、3人、4人和5人对应的样本游戏队伍的样本队伍特征,分别对1人、2人、3人、4人和5人对应的初始聚类子模型的参数进行迭代优化,以得到1人、2人、3人、4人和5人分别对应的目标参数(目标参数决定聚类子模型),其中,图2中一人房聚类模型表征1人对应的聚类子模型,图2中2人房聚类模型表征2人对应的聚类子模型,图2中3人房聚类模型表征 3人对应的聚类子模型,图2中4人房聚类模型表征4人对应的聚类子模型,图2中5人房聚类模型表征5人对应的聚类子模型,将图2中各游戏房间类型对应的聚类子模型进行合并,则可以得到聚类模型,并投入到线上进行使用。
[0072]
其中,在本实施例中,获取样本队伍特征可以参照图1中获取待匹配游戏队伍的队伍特征的实施过程,本实施例在此不做赘述。
[0073]
其中,不同游戏房间类型对应的参数类似,以下以5人的游戏房间类型为例,对5人的游戏房间类型的参数的具体构建过程进行解释说明。其中,参数是在k-means聚类算法对应的函数的基础上增加正则项,用该正则项来约束不同簇的数量差异,因此,在本实施例中,参数包括两项子函数,第一项是k-means聚类算法对应的函数,第二项是正则项。
[0074]
其中,第一项对应的函数为:
[0075][0076][0077]
其中,s.t.表示约束于的符号,在数学的线性规划问题中,在数学中约束是一个最佳化问题的解需要符合的条件。在上式(2)中,x∈rd×n,是维度为d
×
n的数据矩阵,即表征5人的游戏房间类型对应的样本游戏队伍的样本队伍特征集,n表示5人的游戏房间类型对应的样本游戏队伍(等同下述的样本)的数量(以下简称样本数量),d表示样本队伍特征的维度,f∈ rd×k是维度为d
×
k的初始指示矩阵,k表示5人的游戏房间类型对应的类簇的总数,f的每一列可理解为每一类簇的聚类中心向量,h∈rn×k是维度为n
×
k的初始分配矩阵,h的每一行中只有一个数字为1,其他为0,h
i,k
=1 表示第i条样本所属的类簇为k类簇。
[0078]
在给定一个f的情况下,可以引用一个正则项用于约束每个类簇的数量均衡,则参数的第二项为:
[0079]
||f||e=tr(f
t
11
t
f)
ꢀꢀꢀ
(3)
[0080]
其中,在上式(3)中,tr表示矩阵的迹,1表示数字全1的矩阵,f
t
表示f的转置,1
t
表示1的转置。从上式看出||f||e等于每个类簇的样本数量的平方和,即可以得到:
[0081][0082]
其中,在上式(4)中,ni表示第i类簇的样本数量,为了使得||f||e最小,需要使得其中,n为所有类簇的总样本数量,该结论可以利用柯西不等式进行证明,具体证明过程参见如下过程:
[0083]
根据柯西不等式可以得到:
[0084]
[0085]
令bi=1,i=1,2,

,k,则上式(5)可以化简为:
[0086][0087]
根据柯西不等式可知,当且仅当n1=n2=

=nk时不等式的等号成立,此时
[0088]
此外,为了衡量迭代优化过程中更加注重各类簇的数量差异最小化,引入权重超参数,且权重超参数越大,表征迭代优化过程中更加注重各类簇的数量差异最小化。
[0089]
综上,参数可以为:
[0090][0091]
其中,γ为权重超参数。在对参数进行迭代优化时,以目标约束为目标,直至满足迭代停止条件,以得到与该种游戏房间类型对应的目标参数,即该种游戏房间类型对应的聚类子模型。
[0092]
由上述可知,不同游戏房间类型对应的初始聚类子模型的参数包括初始分配矩阵和初始指示矩阵。因此,对初始聚类子模型的参数的迭代更新可以采用交替迭代优化初始分配矩阵和初始指示矩阵的思想来实现参数的迭代优化。举例来讲,参数的迭代优化可以包括以下过程:针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对初始分配矩阵和初始指示矩阵进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型。
[0093]
在一些实施例中,迭代停止条件包括迭代优化过程中的矩阵不再发生变化或迭代优化次数大于预设次数。需要说明的是,这里的迭代优化过程中的矩阵包括了初始分配矩阵和初始指示矩阵;且预设次数可以根据实际情况进行设定,本实施例在此不做限定。
[0094]
以下以目标约束对初始分配矩阵和初始指示矩阵进行迭代优化进行进一步解释说明,包括以下过程:
[0095]
针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征和所述初始分配矩阵,确定使参数的值最小的目标指示矩阵;根据目标指示矩阵和该种游戏房间类型对应的样本游戏队伍的样本队伍特征,确定使参数的值最小的目标分配矩阵,并在不满足预设迭代停止条件的情况下,将目标分配矩阵确定为新的初始分配矩阵,并返回执行根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征和初始分配矩阵,确定使参数的值最小的目标指示矩阵的步骤,直至满足预设迭代停止条件;根据在满足预设迭代停止条件时对应的目标指示矩阵和目标分配矩阵,得到聚类子模型。
[0096]
首先,需要说明的是,初始分配矩阵需要预先进行设置,作为已知参数。在上述过程中,控制初始分配矩阵不变,即将初始分配矩阵作为已知参数,计算使初始函数的值最小的目标指示矩阵。本过程的一种实施方式可以是:令初始函数的导数等于0,即可以得到:
[0097]
f=xh(h
t
h)-1
ꢀꢀꢀ
(8)
[0098]
根据初始分配矩阵(即h)和历史待匹配游戏队伍的队伍特征(即x),计算使得上式成立的目标指示矩阵(即f)。
[0099]
在得到目标指示矩阵的情况下,将目标指示矩阵作为已知参数,再更新初始分配
矩阵,即根据目标指示矩阵和该种游戏房间类型对应的样本游戏队伍的样本队伍特征,确定使参数的值最小的目标分配矩阵。本过程的一种实施方式可以是:从上到下依次更新初始分配矩阵的每一行,对于第i行,选择使参数最小的簇对应的值设置为1,其余簇对应的值设置为0,直至第n 行更新完毕,以此得到目标分配矩阵。其中,在更新第i+1行时,计算使参数最小的第i+1前的所有行以更新后的值为准。
[0100]
将目标分配矩阵作为新的初始分配矩阵,并根据该新的初始分配矩阵和样本游戏队伍的队伍特征,计算使得上式(8)成立的目标指示矩阵,直至满足预设迭代停止条件。
[0101]
在满足预设迭代停止条件的情况下,根据在满足预设迭代停止条件时对应的目标指示矩阵和目标分配矩阵,得到聚类子模型。其中,目标指示矩阵用于指示每个类簇的聚类中心向量,目标分配矩阵用于指示每个样本对应的类簇。根据目标分配矩阵,可以来确定待匹配游戏队伍所属的类簇。目标指示矩阵用于指示的每个类簇的聚类中心向量可以用于步骤s103中多个匹配池的预先生成,具体生成方式将在步骤s103中进行解释说明,本实施例在此不作限定。
[0102]
通过上述方式,按照目标分配矩阵中各样本所属的类簇进行划分,可以满足各类簇数量差异最小化;根据目标指示矩阵,可以将不同游戏房间类型下相同类簇(相同游戏等级)指向同一匹配池。
[0103]
步骤s103,根据待匹配游戏队伍的目标类簇和游戏房间类型,将待匹配游戏队伍分配到多个匹配池中的目标匹配池中,匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且匹配池中的游戏队伍的等级差异最小。
[0104]
需要说明的是,一种类簇对应一种游戏等级,分配到同一匹配池中的游戏队伍的游戏等级差异化最小。
[0105]
由上述针对步骤s102的实施例可知,目标指示矩阵用于指示每个类簇的聚类中心向量,因此,可以根据不聚类子模型对应的目标指示矩阵,将属于游戏等级差异最小的类簇预先绑定到同一匹配池,进而在实际应用时可以在同一匹配池中进行同等级游戏队伍的匹配。
[0106]
在一些实施例中,上述绑定的过程可以是:根据所有聚类子模型对应的目标指示矩阵,采用动态路径规划算法确定不同聚类子模型对应的目标指示矩阵中各类簇与匹配池的映射关系。其中,动态路径规划算法的约束目标为以同一匹配池中各类簇的聚类中心向量的距离最小,以此满足同一匹配池中的游戏队伍所属类簇对应的游戏等级差异最小化。动态路径规划算法例如可以是旅行商问题涉及的动态路径规划算法,具体可以参照相关技术,本实施例在此不做赘述。
[0107]
参照图3,仍以游戏房间类型包括1人队伍、2人队伍、3人队伍、4人队伍和5人队伍为例,每种游戏房间类型下划分为k簇,且同种游戏房间类型之间各簇数量差异最小化,即1人队伍下的各簇之间的数量差异很小;每条路径(图3中所示的每种线条构成的路径)对应一个匹配池,各匹配池(匹配池1、匹配池2,

,匹配池k)中包括每种游戏房间类型下的一簇,且同一匹配池下各簇的游戏等级差异最小,即1人队伍下的簇1与2人队伍下的簇2的游戏等级差异在1人队伍下的簇1与所有2人队伍下的各簇的游戏差异中是最小的。
[0108]
参照图4,在得到聚类模型后,根据聚类子模型对应的目标指示矩阵且利用上述动态路径规划算法可以确定多个匹配池,进而可以生成不同聚类子模型对应的目标指示矩阵
中各类簇和匹配池的映射关系。举例来讲,映射关系表中包括多个类簇id和与每一类簇id对应的匹配池id,以便于确定待匹配游戏队伍的目标匹配池。其中,这里的类簇id包括不同游戏房间类型下类簇id。
[0109]
以图3所示为例,1人队伍下的簇1的类簇id对应匹配池1的id。在实际应用时,根据待匹配游戏队伍的目标类簇和游戏房间类型,在映射关系表中查找与游戏房间类型和目标类簇对应的类簇id,并将该类簇id对应的匹配池id确定为目标匹配池,进而将待匹配游戏队伍分配到目标匹配池中。
[0110]
步骤s104,在目标匹配池中,确定与待匹配游戏队伍匹配的游戏队伍。
[0111]
需要说明的是,确定的与待匹配游戏队伍匹配的游戏队伍可以是待匹配游戏队伍的队友游戏队伍,也可以是待匹配游戏队伍的对手游戏队伍。且与待匹配游戏队伍匹配的游戏队伍是游戏等级与待匹配游戏队伍相互匹配的队伍。
[0112]
在一些实施例中,步骤s104具体可以通过以下方式实施:在目标匹配池中,确定游戏等级互相匹配的第一游戏队伍以及第二游戏队伍;其中,第一游戏队伍以及第二游戏队伍均为至少由目标匹配池中的一个待匹配游戏队伍组成得到的队伍,第一游戏队伍以及第二游戏队伍中均包括预设人数。
[0113]
示例地,以目标匹配池中包括1人、2人、3人、4人和5人的待匹配游戏队伍,且预设人数为5人为例,第一游戏队伍或第二游戏队伍可以仅有1 个5人的待匹配游戏队伍构成,也可以由1个1人的待匹配游戏队伍和2个 2人的待匹配游戏队伍构成。此外,本示例并不造成第一游戏队伍或第二游戏队伍的组合方式的限定,通过各种人数的待匹配游戏队组成预设人数的队伍,即可以作为第一游戏队伍或第二游戏队伍。
[0114]
通过上述方式,由于聚类模型以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的,因此,根据聚类模型预测得到待匹配游戏队伍所属的目标类簇和游戏房间类型,可以确保各个匹配池内的各游戏房间类型下的待匹配游戏队伍的数量差异最小,且同一匹配池中分配到的待匹配游戏队伍之间的游戏等级差异最小,进而缩短了在同一匹配池中进行游戏队伍对战匹配的匹配时长,提高了游戏匹配的效率。
[0115]
图5是根据本公开一示例性实施例示出的一种游戏匹配装置的框图。该游戏队伍匹配装置500包括:
[0116]
获取模块501,用于获取待匹配游戏队伍的队伍特征;
[0117]
第一确定模块502,用于根据所述队伍特征,通过预训练的好的聚类模型,得到所述待匹配游戏队伍所属的目标类簇,所述聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的;
[0118]
分配模块503,用于根据所述待匹配游戏队伍的目标类簇和游戏房间类型,将所述待匹配游戏队伍分配到多个匹配池中的目标匹配池中,所述匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且所述匹配池中的游戏队伍的等级差异最小;
[0119]
匹配模块504,用于在所述目标匹配池中,确定与所述待匹配游戏队伍匹配的游戏队伍。
[0120]
可选地,所述获取模块501包括:
[0121]
第一获取子模块,用于获取待匹配游戏队伍中的至少一个用户对应的用户特征和/或设备特征;
[0122]
第一确定子模块,用于根据所述待匹配游戏队伍中的所述用户特征和/ 或所述设备特征,确定所述待匹配游戏队伍的所述队伍特征。
[0123]
可选地,在所述队伍特征由所述用户特征和所述设备特征确定的情况下,所述第一确定子模块具体用于将所述待匹配游戏队伍中的所述用户特征和所述设备特征分别进行向量化表示,得到与所述用户特征对应的用户特征向量和与所述设备特征对应的设备特征向量;对所述用户特征向量和所述设备特征向量进行拼接,得到所述队伍特征向量,所述队伍特征向量用于表征所述队伍特征。
[0124]
可选地,所述聚类模型包括不同游戏房间类型对应的聚类子模型,所述装置500还包括:
[0125]
迭代模块,用于针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对与该种游戏房间类型对应的初始聚类子模型的参数进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型;
[0126]
第二确定模块,用于根据所有游戏房间类型分别对应的聚类子模型,确定所述聚类模型;
[0127]
所述目标约束为:不同类簇之间样本游戏队伍的数量差异最小化,以及同一类簇中的样本游戏队伍之间的游戏等级差异最小化。
[0128]
可选地,所述初始聚类子模型的参数包括初始分配矩阵和初始指示矩阵,所述迭代模块包括:
[0129]
迭代子模块,用于针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对所述初始分配矩阵和所述初始指示矩阵进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型;
[0130]
其中,所述迭代停止条件包括迭代优化过程中的矩阵不再发生变化或迭代优化次数大于预设次数。
[0131]
可选地,所述迭代子模块具体用于针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征和所述初始分配矩阵,确定使所述参数的值最小的目标指示矩阵;
[0132]
根据所述目标指示矩阵和该种游戏房间类型对应的样本游戏队伍的样本队伍特征,确定使所述参数的值最小的目标分配矩阵,并在不满足所述预设迭代停止条件的情况下,将所述目标分配矩阵确定为新的初始分配矩阵,并返回执行根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征和所述初始分配矩阵,确定使所述参数的值最小的目标指示矩阵的步骤,直至满足所述预设迭代停止条件;
[0133]
根据在满足所述预设迭代停止条件时对应的目标指示矩阵和目标分配矩阵,得到所述聚类子模型。
[0134]
可选地,所述装置500还包括:
[0135]
第三确定模块,用于根据所有所述聚类子模型对应的目标指示矩阵,采用动态路
径规划算法确定不同所述聚类子模型对应的目标指示矩阵中各类簇与所述匹配池的映射关系。
[0136]
下面参考图6,其示出了适于用来实现本公开实施例的电子设备600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、 pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0137]
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储装置608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
[0138]
通常,以下装置可以连接至i/o接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0139]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从rom 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
[0140]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0141]
在一些实施方式中,电子设备可以利用诸如http(hypertext transferprotocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
[0142]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0143]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取待匹配游戏队伍的队伍特征;根据所述队伍特征,通过预训练的好的聚类模型,得到所述待匹配游戏队伍所属的目标类簇,所述聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的;根据所述待匹配游戏队伍的目标类簇和游戏房间类型,将所述待匹配游戏队伍分配到多个匹配池中的目标匹配池中,所述匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且所述匹配池中的游戏队伍的等级差异最小;在所述目标匹配池中,确定与所述待匹配游戏队伍匹配的游戏队伍。
[0144]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0145]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0146]
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定。
[0147]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
[0148]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0149]
根据本公开的一个或多个实施例,示例1提供了一种游戏匹配方法,包括:
[0150]
获取待匹配游戏队伍的队伍特征;
[0151]
根据所述队伍特征,通过预训练的好的聚类模型,得到所述待匹配游戏队伍所属的目标类簇,所述聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的;
[0152]
根据所述待匹配游戏队伍的目标类簇和游戏房间类型,将所述待匹配游戏队伍分配到多个匹配池中的目标匹配池中,所述匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且所述匹配池中的游戏队伍的等级差异最小;
[0153]
在所述目标匹配池中,确定与所述待匹配游戏队伍匹配的游戏队伍。
[0154]
根据本公开的一个或多个实施例,示例2提供了示例1的方法,所述获取待匹配游戏队伍的队伍特征,包括:
[0155]
获取待匹配游戏队伍中的至少一个用户对应的用户特征和/或设备特征;
[0156]
根据所述待匹配游戏队伍中的所述用户特征和/或所述设备特征,确定所述待匹配游戏队伍的所述队伍特征。
[0157]
根据本公开的一个或多个实施例,示例3提供了示例2的方法,在所述队伍特征由所述用户特征和所述设备特征确定的情况下,所述根据所述待匹配游戏队伍中的所述用户特征和/或所述设备特征,确定所述待匹配游戏队伍的所述队伍特征,包括:
[0158]
将所述待匹配游戏队伍中的所述用户特征和所述设备特征分别进行向量化表示,得到与所述用户特征对应的用户特征向量和与所述设备特征对应的设备特征向量;
[0159]
对所述用户特征向量和所述设备特征向量进行拼接,得到所述队伍特征向量,所述队伍特征向量用于表征所述队伍特征。
[0160]
根据本公开的一个或多个实施例,示例4提供了示例1的方法,所述聚类模型包括不同游戏房间类型对应的聚类子模型,所述聚类模型通过以下方式获得:
[0161]
针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对与该种游戏房间类型对应的初始聚类子模型的参数进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型;
[0162]
根据所有游戏房间类型分别对应的聚类子模型,确定所述聚类模型;
[0163]
所述目标约束为:不同类簇之间样本游戏队伍的数量差异最小化,以及同一类簇中的样本游戏队伍之间的游戏等级差异最小化。
[0164]
根据本公开的一个或多个实施例,示例5提供了示例4的方法,所述初始聚类子模
型的参数包括初始分配矩阵和初始指示矩阵,所述针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对与该种游戏房间类型对应的初始聚类子模型的参数进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型,包括:
[0165]
针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对所述初始分配矩阵和所述初始指示矩阵进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型;
[0166]
其中,所述迭代停止条件包括迭代优化过程中的矩阵不再发生变化或迭代优化次数大于预设次数。
[0167]
根据本公开的一个或多个实施例,示例6提供了示例5的方法,所述针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征,以目标约束对所述初始分配矩阵和所述初始指示矩阵进行迭代优化,直至满足迭代停止条件,以得到与该种类型游戏房间对应的聚类子模型,包括:
[0168]
针对每种游戏房间类型对应的样本游戏队伍,根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征和所述初始分配矩阵,确定使所述参数的值最小的目标指示矩阵;
[0169]
根据所述目标指示矩阵和该种游戏房间类型对应的样本游戏队伍的样本队伍特征,确定使所述参数的值最小的目标分配矩阵,并在不满足所述预设迭代停止条件的情况下,将所述目标分配矩阵确定为新的初始分配矩阵,并返回执行根据该种游戏房间类型对应的样本游戏队伍的样本队伍特征和所述初始分配矩阵,确定使所述参数的值最小的目标指示矩阵的步骤,直至满足所述预设迭代停止条件;
[0170]
根据在满足所述预设迭代停止条件时对应的目标指示矩阵和目标分配矩阵,得到所述聚类子模型。
[0171]
根据本公开的一个或多个实施例,示例7提供了示例6的方法,所述方法还包括:
[0172]
根据所有所述聚类子模型对应的目标指示矩阵,采用动态路径规划算法确定不同所述聚类子模型对应的目标指示矩阵中各类簇与所述匹配池的映射关系。
[0173]
根据本公开的一个或多个实施例,示例8提供了一种游戏匹配装置,包括:
[0174]
获取模块,用于获取待匹配游戏队伍的队伍特征;
[0175]
第一确定模块,用于根据所述队伍特征,通过预训练的好的聚类模型,得到所述待匹配游戏队伍所属的目标类簇,所述聚类模型是以不同游戏房间类型下不同类簇中的样本游戏队伍的游戏等级不同,且不同游戏房间类型下任意两个类簇中的样本游戏队伍的数量差异最小化为约束目标进行训练得到的;
[0176]
分配模块,用于根据所述待匹配游戏队伍的目标类簇和游戏房间类型,将所述待匹配游戏队伍分配到多个匹配池中的目标匹配池中,所述匹配池用于容纳不同游戏房间类型下一种类簇对应的游戏队伍,且所述匹配池中的游戏队伍的等级差异最小;
[0177]
匹配模块,用于在所述目标匹配池中,确定与所述待匹配游戏队伍匹配的游戏队伍。
[0178]
根据本公开的一个或多个实施例,示例9提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现示例1-7中任一项所述游戏匹配方法的步骤。
[0179]
根据本公开的一个或多个实施例,示例10提供了一种电子设备,包括:
[0180]
存储装置,其上存储有计算机程序;
[0181]
处理装置,用于执行所述存储装置中的所述计算机程序,以实现示例1-7 中任一项所述游戏匹配方法的步骤。
[0182]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
[0183]
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0184]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1