CN102722541B - 一种时空轨迹相似度计算方法及系统 - Google Patents
一种时空轨迹相似度计算方法及系统 Download PDFInfo
- Publication number
- CN102722541B CN102722541B CN201210162995.2A CN201210162995A CN102722541B CN 102722541 B CN102722541 B CN 102722541B CN 201210162995 A CN201210162995 A CN 201210162995A CN 102722541 B CN102722541 B CN 102722541B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- tra
- interest
- seg
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 239000013598 vector Substances 0.000 claims description 56
- 230000011218 segmentation Effects 0.000 claims description 28
- 238000005192 partition Methods 0.000 claims 12
- 238000004364 calculation method Methods 0.000 description 31
- 230000000694 effects Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000007418 data mining Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种时空轨迹相似度计算方法及系统,所述方法包括:步骤1,定义距离转角率,刻画用户兴趣点的特征;步骤2,根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;步骤3,计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度。
Description
技术领域
本发明涉及数据挖掘领域,特别涉及一种时空轨迹相似度计算方法及系统。
背景技术
近年来,诸如平板电脑、智能手机等支持GPS的移动设备发展迅速,越来越多的人开始使用基于位置的服务(LBS),例如定位、位置共享等等,大量时空信息被上传和共享。记录用户移动历史的同时,这些位置信息也能够在一定程度上反应用户的兴趣、偏好以及生活规律。为此,时空轨迹作为计算机应用的一大研究热点,在普适计算、数据挖掘和社会网络等领域受到了广泛关注。
人类活动具有不同程度的共性,这种共性差异映射到活动轨迹上,导致轨迹之间呈现不同程度的相似性。相应地,轨迹的相似程度反应了活动的共性,进而关系到相近似的人类习惯和偏好。正因如此,如何科学地刻画轨迹之间的相似度是当前轨迹模式挖掘等研究工作所面临的最重要问题之一。
当前,轨迹相似度计算方法考虑因素包括:子列重叠程度、相近的位置数目、地点的数目等。然而,轨迹不是单纯的序列,用序列包含关系去刻画轨迹之间的关系是远远不够的。此外,计算的粒度也是这类工作所面临的困难,轨迹的离散化程度越高,和原始轨迹的偏差就越大,而细粒度的计算又难免降低效率。
发明内容
为解决上述问题,本发明提供了有效利用欧式空间的度量属性和笛卡尔坐标系中的向量关系,刻画轨迹模式之间的相似度。该方法可应用于分析人的活动模式,可作为个性化推荐的依据,以及可以用于构建和分析基于位置的社会网络。
本发明的目的在于提供一种全新的路线相似度计算方法,该方法基于几何特征,充分考虑到路线在地理空间上的特点,同时具有高准确性和较高计算效率。
本发明公开一种时空轨迹相似度计算方法,包括:
步骤1,定义距离转角率,刻画用户兴趣点的特征;
步骤2,根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;
步骤3,计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度。
所述的时空轨迹相似度计算方法,所述步骤1还包括:
步骤21,定义pi-1、pi到pi+1的距离转角率LATatio(p(i-1),p(i),p(i+1)),其中pi-1、pi、pi+1分别为用户兴趣点。
所述的时空轨迹相似度计算方法,包括:距离转角率公式如下
其中,ε是满足下述条件的任意一个常量:
且
其中,是向量的模,是的第二小值。如果ε满足一下不等式:
且
其中,sec和th分别表示第二和第三,因此是的第三小值。
所述的时空轨迹相似度计算方法,所述步骤2还包括:
步骤41,如果ratio>ρ(这里ρ是一个经验阈值),则认为兴趣点p(i)和p(i+1)是同一个兴趣点,IS(j)表示轨迹中的j个兴趣点;为了计算轨迹的相异程度,用IP(j)表示IS(j),IP(j)=(long(j),Lat(j),T(j))是IS(j)中兴趣点的加权平均,其中j是兴趣点的编号,
步骤42,如果两个兴趣点IP(i)和IP(j)之间的距离小于dp,称这两个兴趣点为公共兴趣点CoIP,dp根据具体赋值而变化。
所述的时空轨迹相似度计算方法,所述步骤3还包括:
步骤51,位于C(i)和CoIP(i+1)中间的部分为tra(1)中的分段,记做segtra(i)。
下述公式计算分段的不相似程度:
difvector(segi(tra1),segi(tra2))=Vdifvector(segi(tra1),segi(tra2))+|n1in-n2in|
其中,
Vdifvector(segi(tra1),segi(tra2))=||vq1(segi(tra1))-vq1(segi(tra2))|+||vq2(segi(tra1))-vq2(segi(tra2))|nin是轨迹中两个兴趣点之间非公共兴趣点的数量。
所述的时空轨迹相似度计算方法,所述步骤3还包括:
步骤62,分段时间,是指用户从一个CoIP到另一个CoIP的间隔时间,如果CoIPi=(Longi,Lati,Ti),且CoIPi+1=(Longi+1,Lati+1,Ti+1),那么Ti-Ti+1,Ti-Ti+1即CoIPi和CoIPi+1在轨迹中的分段时间;
相似分段,是令segi(trat1)和segi(tra2)分别为trat1和a2中的分段,称segi(tra1)和segi(tra2)为相似分段,当两个分段之间IP的数量相等;两个分段之间的分段时间的绝对差值小于一个常数,即
|(Ti(tra1)Ti+1(tra1))-(Ti(tra2)Ti+1(tra2))|<tp
相似路线,由分段组成,如果有多个连续的相似分段,则为相似路线;假设ri和rj是相似路线,则认为两条路线没有区别,即Vdifvector(ri(tra1),rj(tra2))=0;下述公式计算轨迹之间的不相似度:
其中,max{n1ex,n2ex}是n1ex和n2ex的最大值,nex是两条轨迹中位于公共点之外的non-CoIP数量,在tra(1)中有两个位于公共点之外的non-CoIPs,因此n1ex=2,tra(2)中位于公共点之外的non-CoIPs的数量为1,n2ex=1,因此max{n1ex,n2ex}=2;
Leni(tra1)表示segi(tra1)的长度,Len(tra1)是tra1的长度,Leni(tra2)表示segi(tra2)的长度,Len(tra2)是tra2的长度,segi的距离与长度的含义不同,segi(tra1)的距离是CoIPi和CoIPi+1之间的直线距离,而长度是用户从CoIPi走到CoIPi+1的路程。
本发明还公开一种时空轨迹相似度计算系统,包括:
定义转角率模块,用于定义距离转角率,刻画用户兴趣点的特征;
兴趣点模块,用于根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;
相似度匹配模块,用于计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度。
所述的时空轨迹相似度计算系统,所述定义转角率模块还包括:
定义pi-1、pi到pi+1的距离转角率LATatio(p(i-1),p(i),p(i+1)),其中pi-1、pi、pi+1分别为用户兴趣点。
所述的时空轨迹相似度计算系统,包括:距离转角率公式如下
其中,ε是满足下述条件的任意一个常量:
且
其中,是向量的模,是的第二小值。如果ε满足一下不等式:
且
其中,sec和th分别表示第二和第三,因此是的第三小值。
所述的时空轨迹相似度计算系统,所述兴趣点模块还包括:
经验阈值模块,用于如果ratio>ρ(这里ρ是一个经验阈值),则认为兴趣点p(i)和p(i+1)是同一个兴趣点,IS(j)表示轨迹中的j个兴趣点;为了计算轨迹的相异程度,用IP(j)表示IS(j),IP(j)=(long(j),Lat(j),T(j))是IS(j)中兴趣点的加权平均,其中j是兴趣点的编号,
距离模块,用于如果两个兴趣点IP(i)和IP(j)之间的距离小于dp,称这两个兴趣点为公共兴趣点CoIP,dp根据具体赋值而变化。
所述的时空轨迹相似度计算系统,所述相似度匹配模块还包括:
分段模块,用于位于C(i)和CoIP(i+1)中间的部分为tra(1)中的分段,记做segtra(i);
下述公式计算分段的不相似程度:
difvector(segi(tra1),segi(tra2))=Vdifvector(segi(tra1),segi(tra2))+|n1in-n2in|
其中,
Vdifvector(segi(tra1),segi(tra2))=||vq1(segi(tra1))-vq1(segi(tra2))|+||vq2(segi(tra1))-vq2(segi(tra2))|
nin是轨迹中两个兴趣点之间非公共兴趣点的数量。
所述的时空轨迹相似度计算系统,所述相似度匹配模块还包括:
相似度运算模块,用于分段时间,是指用户从一个CoIP到另一个CoIP的间隔时间,如果CoIPi=(Longi,Lati,Ti),且CoIPi+1=(Longi+1,Lati+1,Ti+1),那么Ti-Ti+1,Ti-Ti+1即CoIPi和CoIPi+1在轨迹中的分段时间;
相似分段,是令segi(tra1)和segi(tra2)分别为tra1和a2中的分段,称segi(tra1)和segi(tra2)为相似分段,当两个分段之间IP的数量相等;两个分段之间的分段时间的绝对差值小于一个常数,即
|(Ti(tra1)Ti+1(tra1))-(Ti(tra2)Ti+1(tra2))|<tp
相似路线,由分段组成,如果有多个连续的相似分段,则为相似路线;假设ri和rj是相似路线,则认为两条路线没有区别,即Vdifvector(ri(tra1),rj(tra2))=0;下述公式计算轨迹之间的不相似度:
其中,max{n1ex,n2ex}是n1ex和n2ex的最大值,nex是两条轨迹中位于公共点之外的non-CoIP数量,在tra(1)中有两个位于公共点之外的non-CoIPs,因此n1ex=2,tra(2)中位于公共点之外的non-CoIPs的数量为1,n2ex=1,因此max{n1ex,n2ex}=2;
Leni(tra1)表示segi(tra1)的长度,Len(tra1)是tra1的长度,Leni(tra2)表示segi(tra2)的长度,Len(tra2)是tra2的长度,segi的距离与长度的含义不同,segi(tra1)的距离是CoIPi和CoIPi+1之间的直线距离,而长度是用户从CoIPi走到CoIPi+1的路程。
本发明的有益效果为:
1,基于几何向量的轨迹相似度计算方法;技术效果:新颖地利用几何向量方法,同时考虑距离与角度变化,刻画两条轨迹之间的关系,得到量化的相似程度;
2,距离转角率相似特征定义;技术效果:作为影响轨迹相似程度的重要变量,距离转角率是刻画长度关系、角度变化和轨迹局部相似性之间关系的数学模型;
3,基于向量的分段不相似度算法;技术效果:刻画两个分段的相似程度,用于判别不同分段是否相似;
4,基于向量的兴趣点定义;技术效果:确定相似度的计算粒度,去除不必要的兴趣点,以化简计算;
5,基于向量的公共兴趣点定义;技术效果:利用基于几何向量的方法,消除如GPS等设备所采集的时空轨迹数据偏差对计算造成的影响,使得属于同一兴趣点但地理左边略有偏差的数据得以被正确识别;
6,利用几何方法实现基于单条路线的兴趣点发现;技术效果:可以避免基于大量用户大量路线的聚类,提高计算效率,同时可以发现新建的兴趣点。
该发明可以对任意两条形式的不同路线进行比较,通过几何方法量化其相似程度,所得结果可以有效用于分析人的活动模式、行为相似程度,以及可以为个性化推荐和社会网络分析提供依据。与现有的技术相比,该发明充分考虑地理空间特性,合理刻画相似程度,实验证明,该方法计算结果更为合理有效,同时具有更高的运算效率。
附图说明
图1为本发明时空轨迹相似度计算方法流程图;
图2为本发明GPS轨迹和LA-Ratio的解释;
图3为本发明一条轨迹中的IS和IP;
图4为基于本方法的两条轨迹中的分段的不相似程度,其中4A为第一条轨迹tra(1),4B为第二条轨迹tra(2);
图5为两条轨迹中的相似路线
图6为本发明时空轨迹相似度计算系统流程图。
具体实施方式
下面给出本发明的具体实施方式,结合附图对本发明做出了详细描述。
本发明提供了一种基于几何向量方法的轨迹相似度计算方法,这部分提供算法的详细说明,说明过程以两个轨迹之间的相似度为例,本方法可以拓广到计算多个路线之间的两两相似度。
如图1所示,本发明公开一种时空轨迹相似度计算方法,包括:
步骤1,定义距离转角率,刻画用户兴趣点的特征;
步骤2,根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;
步骤3,计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度。
以GPS日志为例,本算法采用包括精度、纬度和时间的时空轨迹数据,用户携带专门的GPS定位设备或者支持GPS定位的其他移动设备(如智能手机、pad等),采集到的数据根据不同的用户呈现规律性并具备个性化的特性。具体地,一个时空轨迹是指兴趣点列Tra=(p(0),p(1),...,p(np)),其中np为轨迹中兴趣点的数量,相邻两兴趣点之间的时间间隔是相等的,t(pi)-t(pi-1)=t(pi+1)-t(pi),pi=(longi,lati,ti),其中longi、lati和ti分别为兴趣点pi的经度、维度和相应的时间点,i为兴趣点的序号。对于每两个相邻的兴趣点pi-1和pi,直接用向量连接,记做该向量的方向与轨迹的方向一致,pi-1为兴趣点的起点,pi为兴趣点的终点。因此一条轨迹中有np-1个这样的向量。
本发明旨在计算上述形式的两条轨迹的近似程度,采用基于几何向量的方法,逐层计算。首先,根据单条轨迹计算用户的兴趣点。认为兴趣点和角度有关,如果用户在感兴趣的景区停留则其轨迹在该区域的轨迹变化将更加频繁。同时,本方法基于假设在兴趣点的范围内用户会放慢速度,相应地,等时间间隔的两兴趣点之间距离会变短。基于以上两兴趣点考虑,本方法构建距离转角率模型,用以刻画用户对位置的兴趣程度。利用这一概念,我们可以根据经验阈值识别出用户兴趣点,并用单独的一个兴趣点表示。对于输入的两条用户轨迹,基于其各自的兴趣点我们可以计算两者之间的公共兴趣点,我们认为时空上相近的兴趣点即公共兴趣点,这是第一层相似。处于计算合理性和简便性的考虑,有了公共兴趣点之后我们没有立刻计算轨迹的相似性,而是进一步细化,对轨迹按公共兴趣点进行分段。我们认为两段轨迹如果有越多的相似点则越相似,基于这一假设刻画了分段之间的相似度,这是第二层相似。最后,根据每对分段的相似度计算出两条轨迹的相似度。具体实施步骤如下:
步骤1):刻画识别兴趣点的重要特征,定义距离转角率。如图2给出的GPS轨迹。
定义pi-1、pi到pi+1的距离转角率LATatio(p(i-1),p(i),p(i+1))如下式
其中,ε是满足下述条件的任意一个常量:
且
其中,是向量的模,是的第二小值。如果ε满足一下不等式:
且
其中,sec和th分别表示第二和第三,因此是的第三小值。为了简便,记
很明显,一个轨迹有np-2个ratio(比率),其中np中P表示总兴趣点的数量。(其中,“tatio也是ratio”)
步骤2):识别用户兴趣点。
如果ratio>ρ(这里ρ是一个经验阈值),则认为兴趣点p(i)和p(i+1)是同一个兴趣点。我们用IS(j)表示轨迹中的j个兴趣点。为了计算轨迹的相异程度(这里用相似性表示不同轨迹之间的差异程度,符合计算相似度的目标),用IP(j)表示IS(j),如图3所示,IP(j)=(long(j),Lat(j),T(j))是IS(j)中兴趣点的加权平均,其中j是兴趣点的编号。(Long(j)Lat(j)T(j)分别指该点的精度、纬度和时间)
假设在一个轨迹中没有重复的IS,这并不意味着某些用户没有往回走或者走重复的路线。我们假设用户不原意多次到同一个地点去。
步骤3):计算两个用户的(两条轨迹的)公共兴趣点。
如果两个兴趣点IP(i)和IP(j)之间的距离小于dp,称这两个兴趣点为公共兴趣点(CoIP)。dp因情境不同而不同,例如颐和园的dp就要小于北京的dp。到此,已经给出了目标问题的精确描述,下面开始计算相似度的计算。
步骤4):首先计算两个分段之间的相似度(这里都是用不相似程度表示的)。
首先明确分段定义:两个公共兴趣点之间的部分为分段。如图4所示,不同轨迹中的分段有所不同。对于tra(1),虚线的点是公共兴趣点,而实线的点则不是公共兴趣点。位于CoIP(i)和CoIP(i+1)中间的部分为tra(1)中的分段,记做segtra(i)。dif表示段的不相似程度,vector表示向量算法。
根据下式计算分段的不相似程度:
difvector(segi(tra1),segi(tra2))=Vdifvector(segi(tra1),segi(tra2))+|n1in-n2in|
其中,
Vdifvector(segi(tra1),segi(tra2))=||vq1(segi(tra1))-vq1(segi(tra2))||+|vq2(segi(tra1))-vq2(segi(tra2))|
nin是轨迹中两个正常兴趣点之间非公共兴趣点的数量(Vdif是通过公式定义的一个变量)。
步骤5):计算两条轨迹之间的相似度。
首先定义分段时间、相似分段和相似路线。
(1)分段时间:是指用户从一个CoIP到另一个CoIP的间隔时间。分段时间在不同的轨迹中也是不同的。如果CoIPi=(Longi,Lati,Ti),且CoIPi+1=(Longi+1,Lati+1,Ti+1),那么Ti-Ti+1即CoIPi和CoIPi+1在轨迹中的分段时间。
(2)相似分段:令segi(tra1)和segi(tra2)分别为tra1和tra2中的分段,称segi(tra1)和segi(tra2)为相似分段,当:
a)两个分段之间IP的数量相等;
b)两个分段之间的分段时间的绝对差值小于一个常数,即
|(Ti(tra1)Ti+1(tra1))-(Ti(tra2)Ti+1(tra2))|<tp
(3)相似路线:路线由分段组成,如果有多个连续的相似分段,则称其为相似路线。假设ri和rj是相似路线,则认为两条路线没有区别,即Vdifvector(ri(tra1),rj(tra2))=0。这个定义可以用于简化计算两条轨迹差异性的过程。最后按照下述公式计算轨迹之间的相似度
(4)轨迹不相似度:
其中,max{n1ex,n2ex}是n1ex和n2ex的最大值,nex是两条轨迹中位于公共点之外的non-CoIP数量,以图4为例,我们认为图中给出的是两条完整的轨迹。在a(1)中有两个位于公共点之外的non-CoIPs,因此n1ex=2,类似地,a(2)中位于公共点之外的non-CoIPs的数量为1,n2ex=1,因此max{n1ex,n2ex}=2。
Leni(tra1)表示segi(tra1)的长度,Len(tra1)是tra1的长度。Leni(tra2)与segi(tra2)的含义与之类似。图5给出两条轨迹中的相似路线的示例。注意这里segi的距离与长度的含义是不同的,segi(tra1)的距离是CoIPi和CoIPi+1之间的直线距离,而长度是用户从CoIPi走到CoIPi+1的路程。通常,距离小于长度。
最终的计算结果是两条轨迹之间相似度,并且以不相似程度表示,即两条轨迹越相似计算结果越小,反之越大。
如图6所示,本发明还公开一种时空轨迹相似度计算系统,包括:
定义转角率模块10,用于定义距离转角率,刻画用户兴趣点的特征;
兴趣点模块20,用于根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;
相似度匹配模块30,用于计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度。
所述的时空轨迹相似度计算系统,所述定义转角率模块还包括:
定义pi-1、pi到pi+1的距离转角率LATatio(p(i-1),p(i),p(i+1)),其中pi-1、pi、pi+1分别为用户兴趣点。
所述的时空轨迹相似度计算系统,包括:距离转角率公式如下
其中,ε是满足下述条件的任意一个常量:
且
其中,是向量的模,是的第二小值。如果ε满足一下不等式:
且
其中,sec和th分别表示第二和第三,因此是的第三小值。
所述的时空轨迹相似度计算系统,所述兴趣点模块还包括:
经验阈值模块,用于如果ratio>ρ(这里ρ是一个经验阈值),则认为兴趣点p(i)和p(i+1)是同一个兴趣点,IS(j)表示轨迹中的j个兴趣点;为了计算轨迹的相异程度,用IP(j)表示IS(j),IP(j)=(long(j),Lat(j),T(j))是IS(j)中兴趣点的加权平均,其中j是兴趣点的编号,
距离模块,用于如果两个兴趣点IP(i)和IP(j)之间的距离小于dp,称这两个兴趣点为公共兴趣点CoIP,dp根据具体赋值而变化。
所述的时空轨迹相似度计算系统,所述相似度匹配模块还包括:
分段模块,用于位于C(i)和CoIP(i+1)中间的部分为tra(1)中的分段,记做segtra(i);
下述公式计算分段的不相似程度:
difvector(segi(tra1),segi(tra2))=Vdifvector(segi(tra1),segi(tra2))+|n1in-n2in|
其中,
Vdifvector(segi(tra1),segi(tra2))=||vq1(segi(tra1))-vq1(segi(tra2))|+||vq2(segi(tra1))-vq2(segi(tra2))|
nin是轨迹中两个兴趣点之间非公共兴趣点的数量。
所述的时空轨迹相似度计算系统,所述相似度匹配模块还包括:
相似度运算模块,用于分段时间,是指用户从一个CoIP到另一个CoIP的间隔时间,如果CoIPi=(Longi,Lati,Ti),且CoIPi+1=(Longi+1,Lati+1,Ti+1),那么Ti-Ti+1,Ti-Ti+1即CoIPi和CoIPi+1在轨迹中的分段时间;
相似分段,是令segi(tra1)和segi(tra2)分别为tra1和a2中的分段,称segi(tra1)和segi(tra2)为相似分段,当两个分段之间IP的数量相等;两个分段之间的分段时间的绝对差值小于一个常数,即
|(Ti(tra1)Ti+1(tra1))-(Ti(tra2)Ti+1(tra2))|<tp
相似路线,由分段组成,如果有多个连续的相似分段,则为相似路线;假设ri和rj是相似路线,则认为两条路线没有区别,即Vdifvector(ri(tra1),rj(tra2))=0;下述公式计算轨迹之间的不相似度:
其中,max{n1ex,n2ex}是n1ex和n2ex的最大值,nex是两条轨迹中位于公共点之外的non-CoIP数量,在tra(1)中有两个位于公共点之外的non-CoIPs,因此n1ex=2,tra(2)中位于公共点之外的non-CoIPs的数量为1,n2ex=1,因此max{n1ex,n2ex}=2;
Leni(tra1)表示segi(tra1)的长度,Len(tra1)是tra1的长度,Leni(tra2)表示segi(tra2)的长度,Len(tra2)是tra2的长度,segi的距离与长度的含义不同,segi(tra1)的距离是CoIPi和CoIPi+1之间的直线距离,而长度是用户从CoIPi走到CoIPi+1的路程。
本领域的技术人员在不脱离权利要求书确定的本发明的精神和范围的条件下,还可以对以上内容进行各种各样的修改。因此本发明的范围并不仅限于以上的说明,而是由权利要求书的范围来确定的。
Claims (4)
1.一种时空轨迹相似度计算方法,其特征在于,包括:
步骤1,定义距离转角率,刻画用户兴趣点的特征;
步骤2,根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;
步骤3,计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度;
其中,所述步骤1还包括:
步骤21,定义pi-1、pi到pi+1的距离转角率LATatio(p(i-1),p(i),p(i+1)),其中pi-1、pi、pi+1分别为用户兴趣点,i为兴趣点序号;
距离转角率公式如下:
其中,θi为兴趣点列i的角度,ε是满足下述条件的任意一个常量:
且
其中,是向量的模,是的第二小值;如果ε满足以下不等式:
且
其中,sec和th分别表示第二和第三,因此是的第三小值,为向量;
所述步骤2还包括:
步骤41,如果ratio>ρ,这里ρ是一个经验阈值,则认为兴趣点p(i)和p(i+1)是同一个兴趣点,IS(j)表示轨迹中的j个兴趣点;为了计算轨迹的相异程度,用IP(j)表示IS(j),IP(j)=(Long(j),Lat(j),T(j))是IS(j)中兴趣点的加权平均,其中
j是兴趣点的编号,
其中ratioi为兴趣点i的距离转角率,ratio(i)为兴趣点(i)的距离转角率,nis为第j个兴趣点所涉及的距离转角率的个数,long(i)为兴趣点i的精度,lat(i)为兴趣点i的纬度,t(i)为兴趣点i的时间,Long(j)为兴趣点j的精度,Lat(j)为兴趣点j的纬度,T(j)为兴趣点j的时间;
步骤42,如果两个兴趣点IP(i)和IP(j)之间的距离小于dp,称这两个兴趣点为公共兴趣点CoIP,dp根据具体赋值而变化;
所述步骤3还包括:
步骤51,位于CoIP(i)和CoIP(i+1)中间的部分为tra(1)中的分段,记做segtra(i);
下述公式计算分段的不相似程度:
difvector(segi(tra1),segi(tra2))=Vdifvector(segi(tra1),segi(tra2))+|n1in-n2in|
其中,
Vdifvector(segi(tra1),segi(tra2))=||vq1(segi(tra1))-vq1(segi(tra2))||+||vq2(segi(tra1))-vq2(segi(tra2))||
Vdifvector为相似路线,tra1为兴趣点列1,tra2为兴趣点列2,segi(tra1)为兴趣点列1的分段,segi(tra2)为兴趣点列2的分段,n1in为兴趣点列1中两个正常兴趣点之间非公共兴趣点的数量,n2in为兴趣点列2中两个正常兴趣点之间非公共兴趣点的数量,其中公共兴趣点形成轨迹分段,将轨迹各分段分为2个分区,相邻两个分段构成4个分区,Vq1()和Vq2()分别为连接1、3分区和2、4分区的向量,Vq1()和Vq2()的走向与轨迹走向相同。
2.如权利要求1所述的时空轨迹相似度计算方法,其特征在于,所述步骤3还包括:
步骤62,分段时间,是指用户从一个CoIP到另一个CoIP的间隔时间,如果CoIPi=(Longi,Lati,Ti),且CoIPi+1=(Longi+1,Lati+1,Ti+1),那么Ti-Ti+1为CoIPi和CoIPi+1在轨迹中的分段时间,Longi+1为兴趣点的精度,Lati+1为兴趣点的纬度,Ti+1为兴趣点的时间;
相似分段,是令segi(tra1)和segi(tra2)分别为tra1和tra2中的分段,称segi(tra1)和segi(tra2)为相似分段,当两个分段之间IP的数量相等;两个分段之间的分段时间的绝对差值小于一个常数,即
|(Ti(tra1)Ti+1(tra1))-(Ti(tra2)Ti+1(tra2))|<tp
其中(Ti(tra1)Ti+1(tra1))为兴趣点列1的分段时间,(Ti(tra2)Ti+1(tra2))为兴趣点列2的分段时间,tp为常数;相似路线,由分段组成,如果有多个连续的相似分段,则为相似路线;假设ri和rj是相似路线,则认为两条路线没有区别,即Vdifvector(ri(tra1),rj(tra2))=0,其中ri(tra1)为兴趣点列1的路线,rj(tra2)为兴趣点列2的路线;
下述公式计算轨迹之间的不相似度:
其中,max{n1ex,n2ex}是n1ex和n2ex的最大值,n1ex是tra(1)位于公共点之外的non-COIPs数量,n2ex是tra(2)位于公共点之外的non-COIPs数量,np是用户兴趣点的数量,在tra(1)中有两个位于公共点之外的non-CoIPs,因此n1ex=2,tra(2)中位于公共点之外的non-CoIPs的数量为1,n2ex=1,因此max{n1ex,n2ex}=2;
Leni(tra1)表示segi(tra1)的长度,Len(tra1)是tra1的长度,Leni(tra2)表示segi(tra2)的长度,Len(tra2)是tra2的长度,segi的距离与长度的含义不同,segi(tra1)的距离是CoIPi和CoIPi+1之间的直线距离,而长度是用户从CoIPi走到CoIPi+1的路程。
3.一种时空轨迹相似度计算系统,其特征在于,包括:
定义转角率模块,用于定义距离转角率,刻画用户兴趣点的特征;
兴趣点模块,用于根据经验阈值,识别用户兴趣点;根据轨迹的用户兴趣点计算其公共兴趣点;
相似度匹配模块,用于计算分段之间的相似度以及不相似度,其中所述分段为两个公共兴趣点之间的分段;通过定义分段时间、相似分段、相似路线,计算轨迹之间的相似度以及不相似度,从而得到轨迹相似度;
其中,所述定义转角率模块还包括:
定义pi-1、pi到pi+1的距离转角率LATatio(p(i-1),p(i),p(i+1)),其中pi-1、pi、pi+1分别为用户兴趣点;
距离转角率公式如下:
其中,θi为兴趣点列i的角度,ε是满足下述条件的任意一个常量:
且
其中,是向量的模,是的第二小值;如果ε满足以下不等式:
且
其中,sec和th分别表示第二和第三,因此是的第三小值,为向量;
所述兴趣点模块还包括:
经验阈值模块,用于如果ratio>ρ,这里ρ是一个经验阈值,则认为兴趣点p(i)和p(i+1)是同一个兴趣点,IS(j)表示轨迹中的j个兴趣点;为了计算轨迹的相异程度,用IP(j)表示IS(j),IP(j)=(Long(j),Lat(j),T(j))是IS(j)中兴趣点的加权平均,其中j是兴趣点的编号,
其中ratioi为兴趣点i的距离转角率,ratio(i)为兴趣点(i)的距离转角率,nis为第j个兴趣点所涉及的距离转角率的个数,long(i)为兴趣点i的精度,lat(i)为兴趣点i的纬度,t(i)为兴趣点i的时间,Long(j)为兴趣点j的精度,Lat(j)为兴趣点j的纬度,T(j)为兴趣点j的时间;
距离模块,用于如果两个兴趣点IP(i)和IP(j)之间的距离小于dp,称这两个兴趣点为公共兴趣点CoIP,dp根据具体赋值而变化;
所述相似度匹配模块还包括:
分段模块,用于位于CoIP(i)和CoIP(i+1)中间的部分为tra(1)中的分段,记做segtra(i);
下述公式计算分段的不相似程度:
difvector(segi(tra1),segi(tra2))=Vdifvector(segi(tra1),segi(tra2))+|n1in-n2in|
其中,
Vdifvector(segi(tra1),segi(tra2))=||vq1(segi(tra1))-vq1(segi(tra2))||+||vq2(segi(tra1))-vq2(segi(tra2))||
,Vdifvector为相似路线,tra1为兴趣点列1,tra2为兴趣点列2,segi(tra1)为兴趣点列1的分段,segi(tra2)为兴趣点列2的分段,n1in为兴趣点列1中两个正常兴趣点之间非公共兴趣点的数量,n2in为兴趣点列2中两个正常兴趣点之间非公共兴趣点的数量,其中公共兴趣点形成轨迹分段,将轨迹各分段分为2个分区,相邻两个分段构成4个分区,Vq1()和Vq2()分别为连接1、3分区和2、4分区的向量,Vq1()和Vq2()的走向与轨迹走向相同。
4.如权利要求3所述的时空轨迹相似度计算系统,其特征在于,所述相似度匹配模块还包括:
相似度运算模块,用于分段时间,是指用户从一个CoIP到另一个CoIP的间隔时间,如果CoIPi=(Longi,Lati,Ti),且CoIPi+1=(Longi+1,Lati+1,Ti+1),那么Ti-Ti+1为CoIPi和CoIPi+1在轨迹中的分段时间,Longi+1为兴趣点的精度,Lati+1为兴趣点的纬度,Ti+1为兴趣点的时间;
相似分段,是令segi(tra1)和segi(tra2)分别为tra1和tra2中的分段,称segi(tra1)和segi(tra2)为相似分段,当两个分段之间IP的数量相等;两个分段之间的分段时间的绝对差值小于一个常数,即
|(Ti(tra1)Ti+1(tra1))-(Ti(tra2)Ti+1(tra2))|<tp
其中(Ti(tra1)Ti+1(tra1))为兴趣点列1的分段时间,(Ti(tra2)Ti+1(tra2))为兴趣点列2的分段时间,tp为常数;
相似路线,由分段组成,如果有多个连续的相似分段,则为相似路线;假设ri和rj是相似路线,则认为两条路线没有区别,即Vdifvector(ri(tra1),rj(tra2))=0,其中ri(tra1)为兴趣点列1的路线,rj(tra2)为兴趣点列2的路线;
下述公式计算轨迹之间的不相似度:
其中,max{n1ex,n2ex}是n1ex和n2ex的最大值,n1ex是tra(1)位于公共点之外的non-COIPs数量,n2ex是tra(2)位于公共点之外的non-COIPs数量,np是用户兴趣点的数量,在tra(1)中有两个位于公共点之外的non-CoIPs,因此n1ex=2,tra(2)中位于公共点之外的non-CoIPs的数量为1,n2ex=1,因此max{n1ex,n2ex}=2;
Leni(tra1)表示segi(tra1)的长度,Len(tra1)是tra1的长度,Leni(tra2)表示segi(tra2)的长度,Len(tra2)是tra2的长度,segi的距离与长度的含义不同,segi(tra1)的距离是CoIPi和CoIPi+1之间的直线距离,而长度是用户从CoIPi走到CoIPi+1的路程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210162995.2A CN102722541B (zh) | 2012-05-23 | 2012-05-23 | 一种时空轨迹相似度计算方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210162995.2A CN102722541B (zh) | 2012-05-23 | 2012-05-23 | 一种时空轨迹相似度计算方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102722541A CN102722541A (zh) | 2012-10-10 |
CN102722541B true CN102722541B (zh) | 2015-06-17 |
Family
ID=46948302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210162995.2A Active CN102722541B (zh) | 2012-05-23 | 2012-05-23 | 一种时空轨迹相似度计算方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102722541B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593430B (zh) * | 2013-11-11 | 2017-03-22 | 胡宝清 | 一种基于移动对象时空信息轨迹分段聚类的方法 |
CN103914563A (zh) * | 2014-04-18 | 2014-07-09 | 中国科学院上海微系统与信息技术研究所 | 一种时空轨迹的模式挖掘方法 |
CN104571122B (zh) * | 2014-11-25 | 2017-04-26 | 中国水产科学研究院东海水产研究所 | 一种基于轨迹聚类的船舶互助组救援有效性检验方法 |
CN106153031B (zh) * | 2015-04-13 | 2019-08-30 | 骑记(厦门)科技有限公司 | 运动轨迹表示方法和装置 |
CN107203533B (zh) * | 2016-03-16 | 2020-10-16 | 阿里巴巴(中国)有限公司 | 一种相似路径的判定方法及装置 |
CN106951455A (zh) * | 2017-02-24 | 2017-07-14 | 河海大学 | 一种相似轨迹分析系统及其分析方法 |
CN107169260B (zh) * | 2017-03-23 | 2021-05-11 | 四川省公安厅 | 基于时空轨迹异构多源数据共振系统及方法 |
CN107766407A (zh) * | 2017-08-29 | 2018-03-06 | 厦门理工学院 | 一种采用两阶段搜索的轨迹相似性连接查询方法 |
CN108596202B (zh) * | 2018-03-08 | 2020-04-03 | 清华大学 | 基于移动终端gps定位数据计算个人通勤时间的方法 |
CN110515981B (zh) * | 2018-05-21 | 2022-04-12 | 国家计算机网络与信息安全管理中心 | 一种基于时空轨迹的用户识别方法及装置 |
CN109242024B (zh) * | 2018-09-13 | 2021-09-14 | 中南大学 | 一种基于卡口数据的车辆行为相似度计算方法 |
CN110837540A (zh) * | 2019-10-29 | 2020-02-25 | 华中科技大学 | 一种空间位置数据的处理方法及系统 |
CN111125189B (zh) * | 2019-12-12 | 2021-01-29 | 四川大学 | 基于加权实数代价编辑距离的轨迹相似性度量方法 |
CN111782955A (zh) * | 2020-07-01 | 2020-10-16 | 支付宝(杭州)信息技术有限公司 | 兴趣点表示和推送方法、装置、电子设备及存储介质 |
CN112037245B (zh) * | 2020-07-22 | 2023-09-01 | 杭州海康威视数字技术股份有限公司 | 一种确定追踪目标相似度的方法和系统 |
CN112380311B (zh) * | 2020-11-27 | 2024-04-02 | 上海评驾科技有限公司 | 一种基于行程轨迹的poi识别方法 |
CN115098799A (zh) * | 2022-06-20 | 2022-09-23 | 武汉大学 | 轨迹相似度确定、风险评估、风险溯源方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719220A (zh) * | 2009-12-02 | 2010-06-02 | 北京航空航天大学 | 基于有向截尾均值距离的轨迹聚类方法 |
CN102033936A (zh) * | 2010-12-20 | 2011-04-27 | 天津大学 | 一种用于时间序列相似性比较的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7970538B2 (en) * | 2009-03-16 | 2011-06-28 | Masaaki Miyagi | Accurate global positioning system for deliveries |
-
2012
- 2012-05-23 CN CN201210162995.2A patent/CN102722541B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719220A (zh) * | 2009-12-02 | 2010-06-02 | 北京航空航天大学 | 基于有向截尾均值距离的轨迹聚类方法 |
CN102033936A (zh) * | 2010-12-20 | 2011-04-27 | 天津大学 | 一种用于时间序列相似性比较的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102722541A (zh) | 2012-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102722541B (zh) | 一种时空轨迹相似度计算方法及系统 | |
US10663305B2 (en) | Map matched aggregation for K-anonymity in trajectory data | |
US11562168B2 (en) | Clustering for K-anonymity in location trajectory data | |
US12106326B2 (en) | Determining locations of interest based on user visits | |
US10546043B1 (en) | Triangulation for K-anonymity in location trajectory data | |
US10834536B2 (en) | Trajectory analysis through fusion of multiple data sources | |
Chen et al. | Nlpmm: A next location predictor with markov modeling | |
Letchner et al. | Trip router with individualized preferences (trip): Incorporating personalization into route planning | |
Shen et al. | Discovering spatial and temporal patterns from taxi-based Floating Car Data: A case study from Nanjing | |
CN106931986A (zh) | 个性化路径导航方法和系统 | |
US11418915B2 (en) | Trajectory analysis with mode of transportation analysis | |
Chen et al. | Predicting next locations with object clustering and trajectory clustering | |
CN105910612A (zh) | 一种个性化导航的方法及系统 | |
US10945096B2 (en) | Mobility gene for visit data | |
Gao et al. | 1.26-Mobile GIS and Location-Based Services | |
WO2018151672A1 (en) | Trajectory analysis through fusion of multiple data sources | |
Yang et al. | Big-data driven framework to estimate vehicle volume based on mobile device location data | |
Du et al. | UniLoc: A unified mobile localization framework exploiting scheme diversity | |
Mourchid et al. | A Markov chain model for integrating context in recommender systems | |
Naumzik et al. | Mining points-of-interest for explaining urban phenomena: A scalable variational inference approach | |
Zeng et al. | Predict the next location from trajectory based on spatiotemporal sequence | |
CN115495678B (zh) | 一种基于稀疏蜂窝信令数据的共乘匹配方法、系统及设备 | |
WO2018151677A1 (en) | Real time trajectory identification from communications network | |
Khetarpaul et al. | Mining optimal meeting points for moving users in spatio-temporal space | |
Kim et al. | A hybrid algorithm for online location update using feature point detection for portable devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |