当前位置: 首页 > 专利查询>罗向阳专利>正文

基于查询结果中用户失序分析的微信用户定位算法制造技术

技术编号:21438977 阅读:39 留言:0更新日期:2019-06-22 14:07
本发明专利技术提供了基于查询结果中用户失序分析的微信用户定位算法,针对基于微信通告距离确定目标用户的实际距离范围的不足,通过分析微信“附近的人”列表中的用户失序现象,定义了混杂区间;并通过对查询结果中相邻用户与探针的实际距离的变化范围进行统计分析,基于其中失序现象确定混杂区间的大小;然后,等距调整参考探针与探针之间的距离,使得查询附近用户列表中参考探针和目标用户相邻并发生前后次序变化,以此时参考探针与探针的实际距离为参考,基于得到的混杂区间,确定目标用户与探针的实际距离范围;最后,利用三边测量定位法实现对微信目标用户的高精度定位,且与现有的HNBG算法以及ATBG算法相比,定位精度更高。

【技术实现步骤摘要】
基于查询结果中用户失序分析的微信用户定位算法
本专利技术涉及社交网络用户定位领域,尤其涉及基于查询结果中用户失序分析的微信用户定位算法。
技术介绍
现有的微信用户定位算法采用基于通告距离的微信用户定位算法,相比典型的基于空间划分的定位算法以及基于启发式数论的定位算法,基于通告距离的微信用户定位算法能够实现对微信用户更高精度的定位;但通告距离与实际距离之间关系的不确定性使得通告距离难以将目标用户确定在较小的距离段内,造成对目标用户的定位依然存在较大的误差。基于上述缺陷,HOANG等提出了基于改进三边测量定位算法;如图1所示:通过对一款国外的约会软件Grindr的实际测试,HOANG等发现该软件的通告信息中的用户次序与该用户相距查询者的实际距离有关,查询结果中目标用户的前后两个相邻用户与查询者的实际距离,可作为该用户与查询者的实际距离的上下限;基于此特性,通过构造两个位置可控的虚拟用户A和B,并调整虚拟用户A、B与查询者之间的距离,使得探针的查询结果中目标用户位于两个虚拟用户之间且虚拟用户A、B与探针之间的实际距离之差尽可能小;定义目标用户与探针的实际距离为d,虚拟用户A与探针的实际距离为d1,虚拟用户A与探针的实际距离为d2,则d1<d<d2,从而确定目标用户所处的环形区域,然后利用三边测量定位算法即可确定目标用户的位置。基于改进三边测量定位算法确定的目标用户与探针的实际距离范围,远小于基于通告距离确定的目标用户与探针的实际距离范围;但基于改进三边测量定位算法依赖于社交软件的通告信息中的用户次序属性,当社交软件的通告信息中的用户排序满足与查询者的实际距离之间的对应关系,该算法能够实现对目标用户的可靠定位。实际测试发现,微信“附近的人”中,当查询者与被查询者之间的实际距离增大时,被查询者在查询者得到的附近用户列表中的位置存在向下移动的趋势;但随着隐私保护技术的应用与升级,大部分LBSN在通告附近用户时,会对位置信息进行混淆处理,使得查询结果中的用户次序与用户相距查询者的实际距离之间不满足严格对应关系,即微信“附近的人”中的用户前后关系并非严格满足与查询者实际距离的大小对应关系,往往会存在失序现象。假设用户A与查询者的实际距离为d1,用户B与查询者的实际距离为d2,失序现象是指当d1<d2,但微信“附近的人”查询结果中用户B更靠前的现象;或d1>d2,但微信“附近的人”查询结果中用户A更靠前的现象。即易出现以下现象:探针的查询结果中目标用户位于虚拟用户A、B之间,但此时d<d1<d2或d1<d2<d,即该算法确定的环状区域没有包含目标用户的位置;定位目标用户时,三个圆环的交叉区域内并不包含目标用户的位置,或不存在交叉区域。因此该算法无法直接用于微信用户的定位。
技术实现思路
本专利技术的目的在于提供基于查询结果中用户失序分析的微信用户定位算法,能够。为了实现上述目的,本专利技术采用以下技术方案:基于查询结果中用户失序分析的微信用户定位算法,其特征在于:包括以下步骤:步骤1:确定混杂区间,具体包括以下步骤:步骤1.1:构建虚拟用户:利用智能移动设备位置模拟技术模拟智能移动设备的地理位置,构造虚拟用户A、虚拟用户B和虚拟用户C;设置虚拟用户A的位置并定义虚拟用户A作为虚拟查询者,设置虚拟用户B的位置和虚拟用户C的位置并将其作为被查询者;步骤1.2:定义混杂区间:将利用虚拟用户A在微信“附近的人”附近用户列表中两个失序虚拟用户B和虚拟用户C与虚拟用户A之间的实际距离之差的变化范围称为混杂区间;混杂区间为:|d1-d2|<M;其中,虚拟用户B与虚拟用户A的实际距离为d1,虚拟用户C与虚拟用户A的实际距离为d2,M为|d1-d2|的最大值;步骤1.3:计算混杂区间,具体包括以下步骤:步骤1.3.1:定义虚拟用户A和虚拟用户B的实际距离为d1,保持d1不变;步骤1.3.2:将虚拟用户C与设置在相同位置,定义虚拟用户A和虚拟用户C的实际距离为d2,利用虚拟用户A在微信“附近的人”中查询虚拟用户B和虚拟用户C的前后次序并记录;步骤1.3.3:保持虚拟用户B的位置不变,改变虚拟用户C的位置,使得|d1-d2|逐渐增大,直至利用虚拟用户A在微信“附近的人”中查询虚拟用户B和虚拟用户C的前后次序不再发生变化,定义此时|d1-d2|的值为记录值M;步骤1.3.4:依据步骤3.3得出的记录值M确定混杂区间为:|d1-d2|<M;步骤2:扫描目标用户可能所处的潜在区域,具体包括以下步骤:步骤2.1:在目标用户可能所处的潜在区域内等距设定查询点;步骤2.2:将探针的位置依次设置为查询点的位置,并利用探针在微信“附近的人”中查询附近用户列表;步骤2.3:重复步骤2.2,直至目标用户出现在附近用户列表中,记录此时探针的位置,并将此时的查询点定义为第一查询点;步骤3:设置参考探针,具体包括以下步骤:步骤3.1:定义参考探针:参考探针是指在定位目标用户的过程中,为了获得目标用户与探针之间的实际距离范围而构建的虚拟用户;步骤3.2:利用智能移动设备位置模拟技术构建位置可变的参考探针;步骤3.3:改变参考探针的位置,使得参考探针与探针的实际距离dpr以xm为单位动态变化,每次参考探针的位置改变后,利用探针在微信“附近的人”中查询附近用户列表,直至探针查询的附近用户列表中参考探针与目标用户相邻;步骤3.4:步骤3.3中,若探针查询的附近用户列表中,目标用户比参考探针的次序靠前,则以y为单位逐渐减小dpr,使得参考探针在查询结果中的次序上升,其中y<M,直至探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化;若探针查询的附近用户列表中,目标用户比参考探针的次序靠后,则以y为单位逐渐增大dpr,使得参考探针在查询结果中的次序下降,其中y<M,直至探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化;步骤4:确定环状区域,具体包括以下步骤:将步骤3.4中,探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化时,探针与参考探针之间的实际距离记为DR,可得目标用户的位置在以探针位置为中心,内圆半径为|DR-M|,外圆半径为|DR+M|,环宽为2M的环形区域O1内;步骤5:利用三边测量定位法确定目标用户的位置。所述步骤5包括以下步骤:步骤5.1:选择第二查询点位置,第二查询点与第一查询点位置的距离大于|DR+M|且小于2|DR+M|;第二查询点位置选择可使用步骤2所述的方法;步骤5.2:重复步骤3和步骤4,得到目标用户的位置在以第二查询点为中心,内圆半径为|DR-M|,外圆半径为|DR+M|,环宽为2M的环形区域O2内;步骤5.3:在以第一查询点位置和第二查询点位置为端点的线段的中垂线上取第三查询点,第三查询点位置与第一查询点位置的距离大于|DR+M|且小于2|DR+M|;第三查询点位置选择也可使用步骤3所述的方法;步骤5.4:重复步骤3和步骤4,得到目标用户的位置在以第三查询点为中心,内圆半径为|DR-M|,外圆半径为|DR+M|,环宽为2M的环形区域O3内;步骤5.5:环形区域O1、环形区域O2和环形区域O3的交叉区域的中心位置即为目标用户的定位位置。所述步骤1.3.3还包括以下步骤:步骤1.3.3.1:保持虚拟用户B的位置不变,改变本文档来自技高网
...

【技术保护点】
1.基于查询结果中用户失序分析的微信用户定位算法,其特征在于:包括以下步骤:步骤1:确定混杂区间,具体包括以下步骤:步骤1.1:构建虚拟用户:利用智能移动设备位置模拟技术模拟智能移动设备的地理位置,构造虚拟用户A、虚拟用户B和虚拟用户C;设置虚拟用户A的位置并定义虚拟用户A作为虚拟查询者,设置虚拟用户B的位置和虚拟用户C的位置并将其作为被查询者;步骤1.2:定义混杂区间:将利用虚拟用户A在微信“附近的人”附近用户列表中两个失序虚拟用户B和虚拟用户C与虚拟用户A之间的实际距离之差的变化范围称为混杂区间;混杂区间为:|d1‑d2|<M;其中,虚拟用户B与虚拟用户A的实际距离为d1,虚拟用户C与虚拟用户A的实际距离为d2,M为|d1‑d2|的最大值;步骤1.3:计算混杂区间,具体包括以下步骤:步骤1.3.1:定义虚拟用户A和虚拟用户B的实际距离为d1,保持d1不变;步骤1.3.2:将虚拟用户C与设置在相同位置,定义虚拟用户A和虚拟用户C的实际距离为d2,利用虚拟用户A在微信“附近的人”中查询虚拟用户B和虚拟用户C的前后次序并记录;步骤1.3.3:保持虚拟用户B的位置不变,改变虚拟用户C的位置,使得|d1‑d2|逐渐增大,直至利用虚拟用户A在微信“附近的人”中查询虚拟用户B和虚拟用户C的前后次序不再发生变化,定义此时|d1‑d2|的值为记录值M;步骤1.3.4:依据步骤3.3得出的记录值M确定混杂区间为:|d1‑d2|<M;步骤2:扫描目标用户可能所处的潜在区域,具体包括以下步骤:步骤2.1:在目标用户可能所处的潜在区域内等距设定查询点;步骤2.2:将探针的位置依次设置为查询点的位置,并利用探针在微信“附近的人”中查询附近用户列表;步骤2.3:重复步骤2.2,直至目标用户出现在附近用户列表中,记录此时探针的位置,并将此时的查询点定义为第一查询点;步骤3:设置参考探针,具体包括以下步骤:步骤3.1:定义参考探针:参考探针是指在定位目标用户的过程中,为了获得目标用户与探针之间的实际距离范围而构建的虚拟用户;步骤3.2:利用智能移动设备位置模拟技术构建位置可变的参考探针;步骤3.3:改变参考探针的位置,使得参考探针与探针的实际距离dpr以xm为单位动态变化,每次参考探针的位置改变后,利用探针在微信“附近的人”中查询附近用户列表,直至探针查询的附近用户列表中参考探针与目标用户相邻;步骤3.4:步骤3.3中,若探针查询的附近用户列表中,目标用户比参考探针的次序靠前,则以y为单位逐渐减小dpr,使得参考探针在查询结果中的次序上升,其中y<M,直至探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化;若探针查询的附近用户列表中,目标用户比参考探针的次序靠后,则以y为单位逐渐增大dpr,使得参考探针在查询结果中的次序下降,其中y<M,直至探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化;步骤4:确定环状区域,具体包括以下步骤:将步骤3.4中,探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化时,探针与参考探针之间的实际距离记为DR,可得目标用户的位置在以探针位置为中心,内圆半径为|DR‑M|,外圆半径为|DR+M|,环宽为2M的环形区域O1内;步骤5:利用三边测量定位法确定目标用户的位置。...

【技术特征摘要】
1.基于查询结果中用户失序分析的微信用户定位算法,其特征在于:包括以下步骤:步骤1:确定混杂区间,具体包括以下步骤:步骤1.1:构建虚拟用户:利用智能移动设备位置模拟技术模拟智能移动设备的地理位置,构造虚拟用户A、虚拟用户B和虚拟用户C;设置虚拟用户A的位置并定义虚拟用户A作为虚拟查询者,设置虚拟用户B的位置和虚拟用户C的位置并将其作为被查询者;步骤1.2:定义混杂区间:将利用虚拟用户A在微信“附近的人”附近用户列表中两个失序虚拟用户B和虚拟用户C与虚拟用户A之间的实际距离之差的变化范围称为混杂区间;混杂区间为:|d1-d2|<M;其中,虚拟用户B与虚拟用户A的实际距离为d1,虚拟用户C与虚拟用户A的实际距离为d2,M为|d1-d2|的最大值;步骤1.3:计算混杂区间,具体包括以下步骤:步骤1.3.1:定义虚拟用户A和虚拟用户B的实际距离为d1,保持d1不变;步骤1.3.2:将虚拟用户C与设置在相同位置,定义虚拟用户A和虚拟用户C的实际距离为d2,利用虚拟用户A在微信“附近的人”中查询虚拟用户B和虚拟用户C的前后次序并记录;步骤1.3.3:保持虚拟用户B的位置不变,改变虚拟用户C的位置,使得|d1-d2|逐渐增大,直至利用虚拟用户A在微信“附近的人”中查询虚拟用户B和虚拟用户C的前后次序不再发生变化,定义此时|d1-d2|的值为记录值M;步骤1.3.4:依据步骤3.3得出的记录值M确定混杂区间为:|d1-d2|<M;步骤2:扫描目标用户可能所处的潜在区域,具体包括以下步骤:步骤2.1:在目标用户可能所处的潜在区域内等距设定查询点;步骤2.2:将探针的位置依次设置为查询点的位置,并利用探针在微信“附近的人”中查询附近用户列表;步骤2.3:重复步骤2.2,直至目标用户出现在附近用户列表中,记录此时探针的位置,并将此时的查询点定义为第一查询点;步骤3:设置参考探针,具体包括以下步骤:步骤3.1:定义参考探针:参考探针是指在定位目标用户的过程中,为了获得目标用户与探针之间的实际距离范围而构建的虚拟用户;步骤3.2:利用智能移动设备位置模拟技术构建位置可变的参考探针;步骤3.3:改变参考探针的位置,使得参考探针与探针的实际距离dpr以xm为单位动态变化,每次参考探针的位置改变后,利用探针在微信“附近的人”中查询附近用户列表,直至探针查询的附近用户列表中参考探针与目标用户相邻;步骤3.4:步骤3.3中,若探针查询的附近用户列表中,目标用户比参考探针的次序靠前,则以y为单位逐渐减小dpr,使得参考探针在查询结果中的次序上升,其中y<M,直至探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化;若探针查询的附近用户列表中,目标用户比参考探针的次序靠后,则以y为单位逐渐增大dpr,使得参考探针在查询结果中的次序下降,其中y<M,直至探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化;步骤4:确定环状区域,具体包括以下步骤:将步骤3.4中,探针查询的附近用户列表中参考探针和目标用户的前后次序发生变化时,探针与参考探针之间的实际距离记为DR,可得目标用户的位置在以探针位置为中心,内圆半径为|DR-M|,外圆半径为|DR+M|,环宽为2M的环形区域O1内;步骤5:利用三边测量定位法确定目标用户的位置。2.根据权利要求1所述的基于查询结果中用户失序分析的微信用户定位算法,其特征在于:所述步骤5包括以下步骤:步骤5.1:选择第二查询点位置,第二查询点与第一查询点位置的距离大于|DR+M|且小于2|DR+M|;第二查询点位置选择可使用步骤2所述的方法;步骤5.2:重复步骤3和步骤4,得到目标用户的位置在以第二查询点为中心,内圆半径为|DR-M|,外圆半径为|DR+M|,环宽为2M的环形区域O2内;...

【专利技术属性】
技术研发人员:罗向阳时文旗赵帆郭家栋刘粉林杨春芳
申请(专利权)人:罗向阳
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1