竞赛对手匹配方法、装置、电子设备及存储介质与流程

xiaoxiao17天前  17



1.本技术实施例涉及数据处理技术领域,尤其涉及一种竞赛对手匹配方法、装置、电子设备及存储介质。


背景技术:

2.随着网络游戏的发展,网络竞技赛类型的游戏越来越普遍。对于该种类型的比赛,其最基础的就是竞赛对手的匹配。
3.目前,竞赛对手的匹配机制主要采取了mmr值和elo算法,其核心思想为将该mmr值维持在0附近。通常,赢得比赛通常会加大该mmr值,输掉比赛则会减小改mmr值,基于其核心思想,在该种匹配机制下,用户连续赢多长比赛之后,为了将该mmr值维持在0附近,必然会匹配到水平更高的用户,使当前用户的连赢局面终止,而且为了使mmr值维持在0附近,还会连续匹配到水平更高的用户,导致当前用户出现连输局面。
4.该种匹配机制会导致用户的负面感受暴增,用户体验较差。


技术实现要素:

5.本技术实施例提供一种竞赛对手匹配方法、装置、电子设备及存储介质,以提高用户体验。
6.第一方面,本技术实施例提供了一种竞赛对手匹配方法,所述方法包括:
7.在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;
8.基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;
9.实时检测所述预备队列中是否存在待分配用户,每检测到所述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;
10.实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。
11.第二方面,本技术实施例还提供了一种竞赛对手匹配装置,该竞赛对手匹配装置包括:
12.段位队列分配模块,用于在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;
13.用户来源确定模块,用于基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;
14.检测分配模块,用于实时检测所述预备队列中是否存在待分配用户,每检测到所
述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;
15.匹配模块,用于实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。
16.第三方面,本技术实施例还提供了一种电子设备,所述电子设备包括:
17.一个或多个处理器;
18.存储装置,用于存储一个或多个程序,
19.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本技术任一实施例提供的竞赛对手匹配方法。
20.第四方面,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本技术任一实施例提供的竞赛对手匹配方法。
21.本技术实施例的技术方案,在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;实时检测所述预备队列中是否存在待分配用户,每检测到所述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。基于此,本方案在匹配时,摒弃了现有的mmr匹配机制,而是以队列为基础,匹配水平相当的用户作为竞赛对手,避免出现水平差距过大的用户之间进行竞赛,提高了用户体验。
附图说明
22.图1为本技术实施例一提供的竞赛对手匹配方法的流程示意图;
23.图2为本技术实施例二提供的一种竞赛对手匹配装置的结构示意图;
24.图3为本技术实施例三提供的一种电子设备的结构示意图。
具体实施方式
25.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。
26.实施例一
27.图1为本技术实施例一提供的竞赛对手匹配方法的流程示意图,本实施例可适用于竞赛对手匹配的场景。该方法可以由竞赛对手匹配装置来执行,该装置可采用硬件和/或软件的方式实现,并一般可以集成在具有数据运算能力的计算机等电子设备中,具体包括如下步骤:
28.步骤101、在待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积
分,并根据待分配用户的用户积分,确定待分配用户所属的目标段位队列。
29.为了便于说明,可以站在对于某一个待分配用户进行竞赛对手匹配的角度,来对本实施例的方案进行描述。通常,待分配用户确定进行竞赛匹配时,开始执行本实施例的匹配过程。
30.一般,待分配用户通过点击屏幕中的虚拟按钮,比如“开始比赛”等,来触发匹配机制,在接收到待分配用户点击该虚拟按钮触发的信号的情况下,确定该待分配用户确定了要进行竞赛匹配。
31.另外,进入该竞赛的待分配用户,都会有各自对应的用户积分,初次进入该竞赛时,待分配用户为新用户,用户积分默认为0,随着竞赛输赢的次数对该用户积分进行更新。更新的具体过程会在后续步骤中进行说明,此处不再赘述。
32.为了实现与水平相当的用户匹配为竞赛对手,本技术设置了多个段位队列,每个段位队列各自对应一个积分区间。在一个具体的例子中,可以设置5个队列,比如初段、一段、二段、三段、四段。其中,初段的积分区间为[0,200],一段的积分区间为[201,350],二段的积分区间为[351,450],三段的积分区间为[451,500],四段的积分区间为[501,550]。
[0033]
通常,各个段位队列会有一个默认的排序,该排序为根据积分区间的最小值(或最大值)由小到大排序,积分区间的最小值(或者最大值)越大,说明对应的段位队列中的用户竞赛水平越高。
[0034]
在确定待分配用户所需的目标段位队列时,可以先将用户积分与多个预设队列各自对应的积分区间进行比较,确定出用户积分所在的目标积分区间;然后将目标积分区间对应的段位队列确定为待分配用户所属的目标段位队列。
[0035]
需要说明的是,用户积分与任一积分区间的比较,可以是用户积分分别与积分区间的连个端值进行比较,大于等于较小的端值且小于等于较大的端值,则认为该用户积分属于该积分区间中。
[0036]
在一个具体的例子中,若待分配用户的用户积分为235,可以按照各段位队列的排序,依次与相应的积分区间进行比较。初段的积分区间为[0,200],235大于0且大于200,因此该待分配用户不属于初段的段位队列,再比较一段,一段的积分区间为[201,350],235大于201且小于350,因此,该待分配用户的目标段位队列即为一段这一段位队列。
[0037]
步骤102、基于目标段位队列中当前的用户数量确定预备队列的用户来源,并将用户来源包含的所有待分配用户依次分配至预备队列中,用户来源至少包括目标段位队列。
[0038]
需要说明的是,本实施例通过预备队列和准备开始队列来实现待分配用户的分配。具体的,待分配用户会被分配至预备队列中,然后步骤103检测到预备队列中存在用户后,将其再分配至准备开始队列,准备开始队列的用户数量为2时,便将准备开始队列中的用户匹配为竞赛对手(如步骤104),其中用户即为本待分配用户以及其他的待分配用户。
[0039]
具体的,本步骤确定用户来源时,可以先判断目标段位队列中的用户数量是否为0,若目标段位队列中当前的用户数量为0,将目标段位队列的相邻段位队列以及目标段位队列确定为预备队列的用户来源;若目标段位队列中当前的用户数量非0,将目标段位队列确定为预备队列的用户来源。
[0040]
需要说明的是,若目标段位队列中当前的用户数量为0,说明当前没有同等水平的用户与本待分配用户匹配为竞赛对手,此时便可以将相邻段位队列也作为预备队列的用户
来源即可。
[0041]
其中,相邻段位队列包括相邻高段位队列或相邻低段位队列,在将目标段位队列的相邻段位队列以及目标段位队列确定为预备队列的用户来源时,可以分别获取相邻高段位队列以及相邻低段位队列当前各自的用户数量。
[0042]
若相邻高段位队列当前的用户数量大于相邻低段位队列当前的用户数量,将相邻高段位队列以及目标段位队列确定为预备队列的用户来源;若相邻高段位队列当前的用户数量小于或等于相邻低段位队列当前的用户数量,将相邻低段位队列以及目标段位队列确定为预备队列的用户来源。
[0043]
另外,为了提高游戏的趣味性,还可以在目标段位队列中当前的用户数量非0的情况下,借助随机因子,增加匹配到高一段位或低一端为的用户作为竞赛对手。
[0044]
具体的,若目标段位队列中当前的用户数量非0,获取预设数值区间内的随机数,并将随机数与预设随机因子比较;若随机数小于或等于预设随机因子,将相邻高段位队列以及相邻低段位队列添加到用户来源中。
[0045]
在一个具体的例子中,该预设随机因子设置为10,预设数值区间为[0,100],此时生成预设数值区间内的随机数,若随机数为5,由于5小于10,此时将相邻高段位队列以及相邻低段位队列添加到用户来源中。
[0046]
需要说明的是,将相邻高段位队列以及相邻低段位队列添加到用户来源中之后,用户来源中就包含了目标段位队列、相邻高段位队列以及相邻低段位队列。
[0047]
另外,该预设随机因子的数值可以调节,比如向客户端显示该调节接口,用户可以通过该调节接口对该预设随机因子进行调节,以改变将相邻高段位队列以及相邻低段位队列添加到用户来源中的概率。
[0048]
需要说明的是,在确定好用户来源之后,默认自动将用户来源中当前所有的用户转移到该预备队列中。
[0049]
步骤103、实时检测预备队列中是否存在待分配用户,每检测到目标预设队列中存在待分配用户,将目标预设队列中存在的待分配用户分配至准备开始队列中。
[0050]
本步骤主要是对预备队列中的待分配用户转移至准备开始队列中,主要依靠监测线程,该监测线程用于实时检测预备队列中是否存在待分配用户。
[0051]
步骤104、实时检测准备开始队列中的用户数量,并在准备开始队列中的用户数量等于2的情况下,将准备开始队列中所有的待分配用户匹配为竞赛对手。
[0052]
由于竞赛对手通常为两人,因此,本步骤中则实时检测准备开始队列中的用户数量,等于2(达到2)则将其中的待分配用户匹配为竞赛对手即可。
[0053]
需要说明的是,上述过程可以通过websocket来实现,该websocket可以作为服务器与用户终端之间的中间通信介质。本技术的方案主要在服务器端完成,用户终端主要是检测用户的操作,并将操作对应的信息通过websocket反馈到服务器中。
[0054]
另外,在实施过程中发现,在竞赛系统初期,大量用户集中于头部(即初始的几个段位队列),此时的匹配速度较快,但是到了后期,有一定比例的用户因为本身能力水平较强,积分越来越高,逐渐到达尾部以至于与他们水平接近的用户慢慢减少。
[0055]
为了解决上述问题,可以引入一种用户积分更新算法,具体的,对于匹配为竞赛对手的两个用户,基于各自当前的用户积分,分别计算两个用户各自对应的胜率;在竞赛对手
的比赛结果得出的情况下,基于预设最大分数以及胜率更新参与比赛结果对应的比赛的用户各自的用户积分。
[0056]
需要说明的是,计算胜率的公式可以为:
[0057]
ra:a用户当前的用户积分;
[0058]
rb:b用户当前的用户积分;
[0059]
ea:预期a用户的胜率:ea=1/(1+10^[(rb-ra)/400]);
[0060]
eb:预期b用户的胜率:eb=1/(1+10^[(ra-rb)/400])。
[0061]
另外,更新用户积分的公式可以为:
[0062]
sa:实际胜负值,胜=1,平=0.5,负=0;
[0063]
k:每场比赛能得到的最大分数k=12;
[0064]
r'a:a用户一场比赛之后的积分:r'a=ra+k(sa-ea);
[0065]
r'b:b用户一场比赛之后的积分:r'b=rb+k(sa-eb)。
[0066]
在一个具体的例子中,a用户当前1500分,b用户当前1600分,则
[0067]
预估a用户的胜率ea=1/(1+10^[(1600-1500)/400])=0.36
[0068]
预估b用户的胜率eb=1/(1+10^[(1500-1600)/400])=0.64
[0069]
假设a用户赢了,a用户最终得分为r'a=1500+12*(1-0.36)=1500+8=1508,赢8分,b用户输8分。
[0070]
假设b用户赢了,b用户最终得分为r'b=1600+12*(1-0.64)=1600+4=1604,赢4分,a用户输4分。
[0071]
为了得到更为集中的用户分布,使得匹配到的水平接近的用户更加便捷,本实施例可以将前述k值设置为可变的,在一个例子中,可以如表1所示:
[0072][0073][0074]
表1
[0075]
因此,在更新参与比赛结果对应的比赛的用户各自的用户积分之前,方法还包括:对于参与比赛结果对应的比赛的用户中的任一用户,将用户当前所属目标段位队列对应的最大分数确定为用户的预设最大分数;其中,段位队列的排序位置越高,对应的最大分数越少;
[0076]
在计算最终的用户积分时,对于参与比赛结果对应的比赛的用户中的任一用户,基于用户的预设最大分数以及用户的胜率更新用户的用户积分。
[0077]
在一个具体的例子中,a用户当前1500分,位于八段,b用户当前1600分,位于九段,则
[0078]
预估a用户的胜负值ea=1/(1+10^[(1600-1500)/400])=0.36;
[0079]
预估b用户的胜负值eb=1/(1+10^[(1500-1600)/400])=0.64;
[0080]
假设a用户赢了,a用户最终得分为r'a=1500+18*(1-0.36)=1500+12=1512,赢12分,b用户最终得分为r'b=1600+12*(0-0.64)=1600-8=1592,输8分。
[0081]
假设b用户赢了,a用户最终得分为r'a=1500+18*(0-0.36)=1500-6=1494,输6
分,b用户最终得分为r'b=1600+12*(1-0.64)=1600+4=1604,赢4分。
[0082]
本实施例中,在待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据待分配用户的用户积分,确定待分配用户所属的目标段位队列;基于目标段位队列中当前的用户数量确定预备队列的用户来源,并将用户来源包含的所有待分配用户依次分配至预备队列中,用户来源至少包括目标段位队列;实时检测预备队列中是否存在待分配用户,每检测到目标预设队列中存在待分配用户,将目标预设队列中存在的待分配用户分配至准备开始队列中;实时检测准备开始队列中的用户数量,并在准备开始队列中的用户数量等于2的情况下,将准备开始队列中所有的待分配用户匹配为竞赛对手。基于此,本方案在匹配时,摒弃了现有的mmr匹配机制,而是以队列为基础,匹配水平相当的用户作为竞赛对手,避免出现水平差距过大的用户之间进行竞赛,提高了用户体验。
[0083]
实施例二
[0084]
图2为本技术实施例二提供的一种竞赛对手匹配装置的结构示意图。本技术实施例所提供的竞赛对手匹配装置可执行本技术任意实施例所提供的竞赛对手匹配方法,具备执行方法相应的功能模块和有益效果。该装置可采用软件和/或硬件的方式实现,如图2所示,竞赛对手匹配装置具体包括:段位队列分配模块201、用户来源确定模块202、检测分配模块203、匹配模块204。
[0085]
其中,段位队列分配模块,用于在待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据待分配用户的用户积分,确定待分配用户所属的目标段位队列;
[0086]
用户来源确定模块,用于基于目标段位队列中当前的用户数量确定预备队列的用户来源,并将用户来源包含的所有待分配用户依次分配至预备队列中,用户来源至少包括目标段位队列;
[0087]
检测分配模块,用于实时检测预备队列中是否存在待分配用户,每检测到目标预设队列中存在待分配用户,将目标预设队列中存在的待分配用户分配至准备开始队列中;
[0088]
匹配模块,用于实时检测准备开始队列中的用户数量,并在准备开始队列中的用户数量等于2的情况下,将准备开始队列中所有的待分配用户匹配为竞赛对手。
[0089]
本实施例中,在待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据待分配用户的用户积分,确定待分配用户所属的目标段位队列;基于目标段位队列中当前的用户数量确定预备队列的用户来源,并将用户来源包含的所有待分配用户依次分配至预备队列中,用户来源至少包括目标段位队列;实时检测预备队列中是否存在待分配用户,每检测到目标预设队列中存在待分配用户,将目标预设队列中存在的待分配用户分配至准备开始队列中;实时检测准备开始队列中的用户数量,并在准备开始队列中的用户数量等于2的情况下,将准备开始队列中所有的待分配用户匹配为竞赛对手。基于此,本方案在匹配时,摒弃了现有的mmr匹配机制,而是以队列为基础,匹配水平相当的用户作为竞赛对手,避免出现水平差距过大的用户之间进行竞赛,提高了用户体验。
[0090]
进一步的,段位队列分配模块包括:
[0091]
比较单元,用于将用户积分与多个预设队列各自对应的积分区间进行比较,确定出用户积分所在的目标积分区间;
[0092]
目标段位队列确定单元,用于将目标积分区间对应的段位队列确定为待分配用户
所属的目标段位队列。
[0093]
进一步地,用户来源确定模块包括:
[0094]
第一来源确定单元,用于若目标段位队列中当前的用户数量为0,将目标段位队列的相邻段位队列以及目标段位队列确定为预备队列的用户来源;
[0095]
第二来源确定单元,用于若目标段位队列中当前的用户数量非0,将目标段位队列确定为预备队列的用户来源。
[0096]
进一步地,相邻段位队列包括相邻高段位队列或相邻低段位队列;
[0097]
第一来源确定单元包括:
[0098]
用户数量获取子单元,用于分别获取相邻高段位队列以及相邻低段位队列当前各自的用户数量;
[0099]
第一来源确定子单元,用于若相邻高段位队列当前的用户数量大于相邻低段位队列当前的用户数量,将相邻高段位队列以及目标段位队列确定为预备队列的用户来源;
[0100]
第二来源确定子单元,用于若相邻高段位队列当前的用户数量小于或等于相邻低段位队列当前的用户数量,将相邻低段位队列以及目标段位队列确定为预备队列的用户来源。
[0101]
进一步地,装置还包括:
[0102]
随机因子比较模块,用于若目标段位队列中当前的用户数量非0,获取预设数值区间内的随机数,并将随机数与预设随机因子比较;
[0103]
来源添加模块,用于若随机数小于或等于预设随机因子,将相邻高段位队列以及相邻低段位队列添加到用户来源中。
[0104]
进一步地,装置还包括:
[0105]
胜率确定模块,用于对于匹配为竞赛对手的两个用户,基于各自当前的用户积分,分别计算两个用户各自对应的胜率;
[0106]
积分更新模块,用于在竞赛对手的比赛结果得出的情况下,基于预设最大分数以及胜率更新参与比赛结果对应的比赛的用户各自的用户积分。
[0107]
进一步地,装置还包括:
[0108]
最大分数确定模块,用于对于参与比赛结果对应的比赛的用户中的任一用户,将用户当前所属目标段位队列对应的最大分数确定为用户的预设最大分数;其中,段位队列的排序位置越高,对应的最大分数越少;
[0109]
积分更新模块包括:
[0110]
积分更新单元,用于对于参与比赛结果对应的比赛的用户中的任一用户,基于用户的预设最大分数以及用户的胜率更新用户的用户积分。
[0111]
实施例三
[0112]
图3为本技术实施例三提供的一种电子设备的结构示意图,如图3所示,该电子设备包括处理器310、存储器320、输入装置330和输出装置340;电子设备中处理器310的数量可以是一个或多个,图3中以一个处理器310为例;电子设备中的处理器310、存储器320、输入装置330和输出装置340可以通过总线或其他方式连接,图3中以通过总线连接为例。
[0113]
存储器320作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的竞赛对手匹配方法对应的程序指令/模块(例如,竞赛对
手匹配装置中的调用模块201、执行模块202、判断模块203)。处理器310通过运行存储在存储器320中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的竞赛对手匹配方法:
[0114]
在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;
[0115]
基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;
[0116]
实时检测所述预备队列中是否存在待分配用户,每检测到所述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;
[0117]
实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。
[0118]
存储器320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器320可进一步包括相对于处理器310远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0119]
实施例四
[0120]
本技术实施例四还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种竞赛对手匹配方法,该方法包括:
[0121]
在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;
[0122]
基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;
[0123]
实时检测所述预备队列中是否存在待分配用户,每检测到所述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;
[0124]
实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。
[0125]
当然,本技术实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本技术任意实施例所提供的竞赛对手匹配方法中的相关操作。
[0126]
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本技术可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设
备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
[0127]
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。
[0128]
注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由所附的权利要求范围决定。

技术特征:
1.一种竞赛对手匹配方法,其特征在于,所述方法包括:在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;实时检测所述预备队列中是否存在待分配用户,每检测到所述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。2.根据权利要求1所述的方法,其特征在于,所述根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列,包括:将所述用户积分与多个预设队列各自对应的积分区间进行比较,确定出所述用户积分所在的目标积分区间;将所述目标积分区间对应的段位队列确定为所述待分配用户所属的目标段位队列。3.根据权利要求1所述的方法,其特征在于,所述基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,包括:若所述目标段位队列中当前的用户数量为0,将所述目标段位队列的相邻段位队列以及所述目标段位队列确定为预备队列的用户来源;若所述目标段位队列中当前的用户数量非0,将所述目标段位队列确定为预备队列的用户来源。4.根据权利要求3所述的方法,其特征在于,所述相邻段位队列包括相邻高段位队列或相邻低段位队列;所述将所述目标段位队列的相邻段位队列以及所述目标段位队列确定为预备队列的用户来源,包括:分别获取所述相邻高段位队列以及所述相邻低段位队列当前各自的用户数量;若所述相邻高段位队列当前的用户数量大于所述相邻低段位队列当前的用户数量,将所述相邻高段位队列以及所述目标段位队列确定为预备队列的用户来源;若所述相邻高段位队列当前的用户数量小于或等于所述相邻低段位队列当前的用户数量,将所述相邻低段位队列以及所述目标段位队列确定为预备队列的用户来源。5.根据权利要求1所述的方法,其特征在于,所述基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,还包括:若所述目标段位队列中当前的用户数量非0,获取预设数值区间内的随机数,并将所述随机数与预设随机因子比较;若所述随机数小于或等于所述预设随机因子,将相邻高段位队列以及相邻低段位队列添加到所述用户来源中。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:对于匹配为竞赛对手的两个用户,基于各自当前的用户积分,分别计算两个用户各自对应的胜率;
在所述竞赛对手的比赛结果得出的情况下,基于预设最大分数以及所述胜率更新参与所述比赛结果对应的比赛的用户各自的用户积分。7.根据权利要求6所述的方法,其特征在于,在所述更新参与所述比赛结果对应的比赛的用户各自的用户积分之前,所述方法还包括:对于参与所述比赛结果对应的比赛的用户中的任一用户,将用户当前所属目标段位队列对应的最大分数确定为所述用户的预设最大分数;其中,段位队列的排序位置越高,对应的最大分数越少;所述基于预设最大分数以及所述胜率更新参与所述比赛结果对应的比赛的用户各自的用户积分,包括:对于参与所述比赛结果对应的比赛的用户中的任一用户,基于所述用户的预设最大分数以及所述用户的胜率更新所述用户的用户积分。8.一种竞赛对手匹配装置,其特征在于,所述装置包括:段位队列分配模块,用于在所述待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据所述待分配用户的用户积分,确定所述待分配用户所属的目标段位队列;用户来源确定模块,用于基于所述目标段位队列中当前的用户数量确定预备队列的用户来源,并将所述用户来源包含的所有待分配用户依次分配至所述预备队列中,所述用户来源至少包括所述目标段位队列;检测分配模块,用于实时检测所述预备队列中是否存在待分配用户,每检测到所述目标预设队列中存在待分配用户,将所述目标预设队列中存在的待分配用户分配至准备开始队列中;匹配模块,用于实时检测所述准备开始队列中的用户数量,并在所述准备开始队列中的用户数量等于2的情况下,将所述准备开始队列中所有的待分配用户匹配为竞赛对手。9.一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的竞赛对手匹配方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的竞赛对手匹配方法。

技术总结
本申请实施例公开了一种竞赛对手匹配方法、装置、电子设备及存储介质。该方法包括:在待分配用户确定进行竞赛匹配的情况下,获取待分配用户的用户积分,并根据待分配用户的用户积分,确定待分配用户所属的目标段位队列;基于目标段位队列中当前的用户数量确定预备队列的用户来源,并将用户来源包含的所有待分配用户依次分配至预备队列中,用户来源至少包括目标段位队列;每检测到目标预设队列中存在待分配用户,将目标预设队列中存在的待分配用户分配至准备开始队列中;在准备开始队列中的用户数量等于2的情况下,将准备开始队列中所有的待分配用户匹配为竞赛对手。匹配水平相当的用户作为竞赛对手,提高了用户体验。提高了用户体验。提高了用户体验。


技术研发人员:曹旭
受保护的技术使用者:中国农业银行股份有限公司
技术研发日:2022.10.25
技术公布日:2023/1/6

最新回复(0)