一种基于现实地理位置的组队匹配方法与流程

文档序号:16001008发布日期:2018-11-20 19:27阅读:来源:国知局

技术特征:

1.一种基于现实地理位置的组队匹配方法,其特征在于,包括以下步骤:

S1、根据组队请求,获取所需队伍数;

S2、采用k-means算法进行第一次聚类匹配,并剔除完成组队匹配的对象;

S3、采用层次聚类进行第二次匹配,使得所有对象都在一个聚类中,或者满足设定的终止条件,并剔除完成组队匹配的对象;

该步骤为动态匹配,在匹配过程中随时会新增加匹配对象,新增加的匹配对象经过步骤S2加入当前环境,这样不断的进行多次循环匹配,直到无人加入匹配,或时间到达阈值,或者完成匹配。

S4、判断是否完成步骤S1中所有的组队请求,若当前所有组队请求均被完成,则结束当前组队;

若当前组队请求未完成,则对新加入的匹配对象进行需求分析,如果新的对象所需要的队伍人数匹配在当前剩余中存在同样队伍人数需求的,可以进行条件判断,是否满足剩余聚类所需要的人数,若满足条件,则完成请求者的请求,并剔除完成匹配的队伍;若不满足,则将其重新作为新的对象加入匹配;

当剩余请求者累计时间值小于阈值t的,在设定的地理位置d内,根据累计时间从大到小优先匹配,对累计时间值大于阈值t的,退出当前匹配并反馈给请求者。

2.根据权利要求1所述的一种基于现实地理位置的组队匹配方法,其特征在于先计算出初式所需要的队伍数量值,所述步骤S1的具体方法为:

设在某时刻发起组队请求的所需队伍数为:2人队伍发起者为a1人,3人队伍发起者为a2人,4人队伍发起者为a3人,直到m人队伍发起者为am-1人,设n为所需队伍总数,则:

设定所有偶数队伍均由基础为2的聚类进行合成,所有奇数队伍均由偶数聚类加上一个奇数合成,申请的偶数队伍的人数为a个,奇数队伍的人数为b个,则n值为:

3.根据权利要求2所述的一种基于现实地理位置的组队匹配方法,其特征在于,所述步骤S2的具体方法为,根据现实的地理位置,进行最基础的聚类计算获得第一次聚类的结果:

S21、选择k个对象,设定初始代表对象K值等于n,每个对象初始地代表了一个聚类的平均值或中心;

S22、对剩余的每个对象,根据其与各聚类中心的距离,将它赋给最近的聚类;其中,各个对象之间的距离通过下式获得:

其中,R为地球半径,取平均值为6371km;表示两点的纬度;△λ表示两点经度的差值;

S23、根据聚类结果,重新计算k个聚类各自的中心,计算方法是取簇中所有元素各自维度的算术平均数;

S24、重复步骤S22~到S23直至新聚类中心与原中心的距离小于指定阈值或达到迭代上限,直到将所有对象聚类完毕。

4.根据权利要求3所述的一种基于现实地理位置的组队匹配方法,其特征在于,所述步骤S3的具体方法为:

S31、计算各个聚类之间的距离均值:

假设p1,p2p3...pn是具有n个单成员的聚类,|p-p'|是两个对象p与p'之间的距离,两个聚类之间最小值的距离为:

最大距离:

mi是Ci的均值,ni是聚类Ci的对象数目,得到两者之间均值距离:

distmean(Ci,Cj)=|mi-mj|

两者之间平均距离:

S32、合并两个最近的聚类,将合并后的聚类作为最底层;对新增的对象,根据聚类内部的奇偶数需求作为当前对象或者作为聚类加入当前层数;所述合并的条件为:

Ci,Cj中的ni与nj的需求相同,即假设n1需求是五人队伍匹配,那么其他需求的除开随机人数,则必须都为五人队伍匹配;

在聚类过程中对两个聚类Ci、Cj中对象数目ni与nj进行相加ni+nj,若是ni+nj>Y,则不能合并,Y是队伍人数;

S33、判断新生的聚类是否满足当前请求者的队伍需求,若满足,则将当前聚类剔除该层次,并不在参与后续合并;若不满足剔除条件,根据当前还未完成请求的队伍数量的缺失人数进行统计,根据统计结果进行当前步骤的重复,直到超出规定的时间则是反馈给请求者组队失败的信息。

5.根据权利要求4所述的一种基于现实地理位置的组队匹配方法,其特征在于,所述步骤S4的具体方法为:

S41、对剩余为完成匹配的请求者进行统计,然后将新加入的请求者进行对比分析,分析方法为:

假设一个五人队伍请求者缺两个人才能完成匹配,新的请求者若是有两人并请求的是五人队伍,将新加入的请求者进行第一步距离进行判断,是否满足一定范围距离条件,若是满足,并且在新增的请求者对象到形心x0的距离dx满足当前距离要求阶段dx<R1,则将对象加入目标,若是目标数量满足达到队伍人数需求,则完成匹配剔除,若是不满足则进入步骤S42;

S42、将原有的距离R1扩大范围,对后续的半径为R2,R3的圆型范围内部进行条件匹配,满足当前的距离并且满足请求者请求的需求,则进入下一步考虑请求者等待的时间指Ti,进行当前满足上诉条件的各个对象进行等待时间值大小对比,优先考虑Ti值大的进行;若是新的加入请求者对象均不满足S41,以及本步骤中的距离时间要求,则将其重新作为新的对象加入到新的匹配,若是剩余的请求者的等待时间Ti值过大,超过阈值t,则退出当前匹配并反馈请求者。

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