基于公共分片子序列的轨迹离群点检测方法与流程

文档序号:14250010阅读:205来源:国知局
基于公共分片子序列的轨迹离群点检测方法与流程

本发明涉及数据挖掘领域,具体地,涉及一种基于公共分片子序列的轨迹离群点检测方法。



背景技术:

随着卫星、移动终端、各种定位技术(gps、gsm、rfid等)和存储技术的应用与发展,大量移动对象的轨迹数据被搜集和存储,例如车辆运行轨迹、移动用户活动轨迹、飓风轨迹、动物迁徙轨迹数据等。轨迹数据中包含丰富的时空语义信息,共享和发布这些数据可以使分析人员获取有用信息,并应用于智能交通、用户行为分析、城市和道路规划、旅游推荐、天气预测、动物习性研究等多个领域,对这些轨迹数据进行挖掘分析已经成为一个有意义的课题。其中,轨迹离群点检测是最典型的轨迹数据分析手段之一。

轨迹离群点检测属于时空数据离群点检测的范畴,广泛应用于恶劣天气预测和智能交通领域。轨迹离群点(也称为离群轨迹)是指基于相似的评价机制,在一定的时间间隔内,空间位置偏离绝大多数轨迹的轨迹,是非常少见的模式,可能表明一个反常的事件,离群轨迹的检测结果可以起到预测和警示作用。同时,离群位置点或离群轨迹的检测和移除对于提高基于相似性聚类的轨迹隐私保护算法的效率很有意义。因此,轨迹离群点检测是本发明关注的研究问题。

目前,轨迹离群点检测已取得一些研究成果。从处理的基本单元看,可以分为轨迹分段后检测和轨迹整体检测两大类方法。从侧重的研究属性看,可以分为以空间位置属性为主要特征的轨迹离群点检测和以时间属性为主要特征的轨迹离群点检测。其中,轨迹分段后检测较轨迹整体检测的准确率更高。然而,现有离群轨迹检测方法存在很多不足,例如:以整条轨迹作为研究对象的方法,对于子轨迹异常的情形往往无法检测,离群子轨迹的特征可能在整条轨迹中被均化。目前以子轨迹为研究对象的轨迹分段后检测方法则主要强调空间位置特征的重要性,忽视了轨迹时间属性的重要性;另一方面,孤立地考虑轨迹的分段,忽视了轨迹分段之间的连续性特征。现有方法,一般是按照相同采样点的个数对轨迹进行划分,无法反映轨迹的真实特征信息。所以,现有检测算法的性能无法得到保证。

本发明基于公共分片子序列的模型构建,提出一种更为准确有效的轨迹离群点检测方法。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于公共分片子序列的轨迹离群点检测方法,既考虑到了轨迹的分片效果又突出了轨迹连续分片特征的重要性。具体来说,提出的该方法包含了两个功能,第一个是针对时空轨迹数据集进行建模,获取轨迹的分段和分片特征序列。另外,引入了一种新的基于公开分片子序列css的轨迹距离计算方法,用于检测离群的轨迹分片和离群轨迹。

为了实现上述目的,本发明采用的技术方案为:一种轨迹离群点检测方法,根据轨迹的方向特征,构建轨迹方向码序列,获取轨迹的分段序列和分片序列;

计算轨迹间的css距离,根据预设离群轨迹分片和轨迹离群点的度量方法,检测出离群轨迹分片和轨迹离群点。

具体包括如下步骤,

步骤1:轨迹的形式化表示

对轨迹数据集进行形式化预处理,生成如下轨迹数据集:

t={tid,(t1,x1,y1),(t2,x2,y2),…,(tn,xn,yn)}

其中,tid表示轨迹的序号,(ti,xi,yi)(1≤i<n)表示第i个位置点的时间和空间位置属性三元组,n是轨迹中位置点的个数;

步骤2:对轨迹进行分段,获取轨迹的分段序列

轨迹段是指轨迹中相邻位置点形成的线段,轨迹ti中的轨迹段集合tsegsi可表示为:

因此可得,包含n-1个轨迹段;

步骤3:计算轨迹特征序列

轨迹段的特征序列为表示ti中第q个轨迹段的某种特征,对轨迹段特征的分析,评价位置点序列走势,判定位置点的性质;

步骤4、获取轨迹分片序列

以轨迹走势的方向特征作为压缩轨迹基本处理单元的标准,通过设置合适的同向判定阈值,以压缩准确性和简洁性为目标,获取每条轨迹的分片序列;

将轨迹分片作为轨迹新的基本处理单元,每个分片的特征用其所含轨迹段的平均特征加以衡量,构成轨迹ti的分片序列可表示为:

其中,1=p1<p2<…<pz<pz+1=n,

r=1,…,z,表示第i条轨迹ti的第r个轨迹分片,因此可得,

步骤5、获取轨迹间的公共分片子序列css,进而计算轨迹间的css距离,得到css距离数据集

采用计算公式计算同方向码轨迹分片间的距离,计算公式为:

slicedt=wloc*slicedtloc+wplen*slicedtplen

slicedt表示两个同方向码轨迹分片之间的距离;slicedtloc和slicedtplen分别表示它们之间的位置距离和路径距离,slicedtloc是两个分片中心点之间的欧氏距离;分别表示分片的长度;wloc和wplen分别表示对应距离的权重;分别表示的持续时间间隔;

然后根据公式计算每一对css之间的距离,cssdt表示css之间距离;bi和ei分别表示css中第一个同向分片的序号和最后一个同向分片的序号;slicedtk表示其中第k对同向分片之间的距离;对每条轨迹ti,查找与其他轨迹tj的所有公共分片子序列css,计算所有的css距离,得到css距离数据集;

步骤6:计算轨迹的css邻居

计算所有轨迹的css邻居以及相应邻居的数目,其中一条轨迹t的css邻居指的是ts中与t有公共分片子序列的轨迹;

步骤7:基于css距离数据集以及轨迹分片离群点和离群轨迹的判定条件,识别出轨迹分片离群点和离群轨迹。

判定轨迹分片离群点和离群轨迹的方法为:

若一个轨迹分片的邻居数目少于指定阈值α,就被识别为离群轨迹分片,其中,轨迹分片的邻居指的是和它距离小于指定阈值δ的所有轨迹分片;

若满足以下条件之一,则轨迹ti被定义为离群轨迹或轨迹离群点:

i)ti与ts中的任何其它轨迹tj(j=1…n,j≠i)都没有公共分片子序列;

ii)css邻居的数目小于指定阈值β;

iii)超过css距离阈值γ的css邻居数目与|ts|的比值大于比例阈值η。

采用以方向作为特征的方法为以原点为中心,将平面直角坐标系平均划分成n个区域,每个区域夹角为2π/n,并对应一个唯一方向码,称为n码,根据轨迹段斜率,为每个轨迹段赋予一个n码,将轨迹转换成n码序列。

将轨迹分片作为轨迹新的基本处理单元,每个轨迹分片的方向码设置为该分片内所有轨迹段方向码的平均值。

本发明的优点在于:本发明设计了轨迹的方向码序列、轨迹的分片特征序列以及轨迹间公共分片子序列的距离,实现了轨迹分片离群点检测和离群轨迹的检测。算法适用于具有时间属性和空间位置属性的时空轨迹数据集,理论分析与实验结果均表明,本发明是能够准确而有效的检测出轨迹离群点。

附图说明

下面对本发明说明书各幅附图表达的内容及图中的标记作简要说明:

图1是本发明所述方法的执行模块流程图;

图2是本发明所述方法中,轨迹段和轨迹分片示意图;

图3是本发明所述方法中,16种方向码所代表的区域;

图4是本发明所述方法中,轨迹ti和tj之间的一对公共分片子序列;

图5是本发明所述方法中,具有相同方向代码的两个轨迹分片间的距离;

图6为本发明所述方法基于第一组数据集(dataset1)的前10条轨迹的分片效果;

图7为本发明所述方法基于第二组数据集(dataset2)的前10条轨迹的分片效果;

图8为本发明所述方法基于第一组数据集(dataset1)的离群轨迹分片的检测结果;

图9为本发明所述方法基于第二组数据集(dataset2)的离群轨迹分片的检测结果;

图10为本发明所述方法基于第一组数据集(dataset1)的轨迹离群点的检测结果;

图11为本发明所述方法基于第二组数据集(dataset2)的轨迹离群点的检测结果。

具体实施方式

下面对照附图,通过对最优实施例的描述,对本发明的具体实施方式作进一步详细的说明。

根据轨迹的方向特征,构建轨迹方向码序列,进而获取轨迹的分段序列和分片序列。再计算轨迹间的css距离,设计离群轨迹分片和轨迹离群点的度量方法,实现离群轨迹分片和轨迹离群点的识别。

该技术具体是指:

首先,对轨迹数据集进行形式化预处理,实验结果产生如式(1)所示的轨迹数据集。

其次,对轨迹进行分段,基于对轨迹段特征的分析,评价位置点序列走势,判定位置点的性质(如停留点或途经点)。采用以方向作为主要特征的方法,即:以原点为中心,将平面直角坐标系平均划分成n个区域,每个区域夹角为2π/n,并对应一个唯一方向码(称为n码),根据轨迹段斜率,为每个轨迹段赋予一个n码,将轨迹转换成n码序列。

通过设计合适的同向判定阈值,以压缩准确性和简洁性为目标,获取每条轨迹的分片序列。

将轨迹分片作为轨迹新的基本处理单元,每个轨迹分片的方向码设置为该分片内所有轨迹段方向码的平均值。

用公式(4)和(5)计算同方向码轨迹分片之间的距离,用公式(6)计算每一对css之间的距离。对每条轨迹ti,查找与其他轨迹tj(j≠i)的所有公共分片子序列(css),计算所有的css距离,得到css距离数据集。

计算所有轨迹的css邻居以及相应邻居数目。基于css距离数据集以及轨迹分片离群点和离群轨迹的判定条件,识别出轨迹分片离群点和离群轨迹。

具体包括:

步骤s1:轨迹的形式化表示

对轨迹数据集进行形式化预处理,实验结果产生如式(1)所示的轨迹数据集。

t={tid,(t1,x1,y1),(t2,x2,y2),…,(tn,xn,yn)}(1)

其中,tid表示轨迹的序号,(ti,xi,yi)(1≤i<n)表示第i个位置点的时间和空间位置属性三元组,n是轨迹中位置点的个数。

步骤s2:对轨迹进行分段,获取轨迹方向码序列。

轨迹段是指轨迹中相邻位置点形成的线段。轨迹ti中的轨迹段集合tsegsi可表示为:

表示第i条轨迹ti的第q个轨迹段,每个轨迹段的方向是轨迹分片的基础,因此可得,q为轨迹段序号,包含n-1个轨迹段。如图2(a)所示,图中指出了轨迹段4为即可以标识为

本发明采用轨迹段特征序列表示方法(其中,表示ti中第q个轨迹段的方向特征)对轨迹进行深入分析。基于对轨迹段特征的分析,评价位置点序列走势,判定位置点的性质(如停留点或途经点)。即根据图3所示的2d平面划分及每个区域的代码分配,计算每个轨迹段的方向代码,进而获取每条轨迹的方向代码序列;采用以方向作为主要特征的方法,即:以原点为中心,将平面直角坐标系平均划分成n个区域,每个区域夹角为2π/n,并对应一个唯一方向码(称为n码),根据轨迹段斜率,为每个轨迹段赋予一个n码,将轨迹转换成n码序列。设n=16,n方向码所代表的区域如图3所示。

步骤s3:获取轨迹分片和分片特征序列。

对于采样位置点非常多的长轨迹来说,以轨迹段作为研究对象势必导致时间复杂度过高,因此,适当压缩基本处理单元的数量会大大提高算法的执行效率,同时,为了保证研究结果的正确性,必须设计合理的压缩规则。本发明采用轨迹走势的一个重要特征即方向来作为压缩轨迹基本处理单元的重要标准。通过设计合适的同向判定阈值,以压缩准确性和简洁性为目标,获取每条轨迹的分片序列。具体来说,根据轨迹的方向代码序列,获取方向突变的拐点,基于拐点集合,获取轨迹的分片序列。

将轨迹分片作为轨迹新的基本处理单元,每个分片的特征用其所含轨迹段的平均特征加以衡量。从形式上看,构成轨迹ti的分片序列可表示为:

其中,1=p1<p2<…<pz<pz+1=n。设表示第i条轨迹ti的第r个轨迹分片,z表示轨迹片数。因此可得,为第r个轨迹分片的起始点,为第r个轨迹分片的终止点,如图2(b)所示,轨迹ti含有5个轨迹分片,每个分片含有的位置点数目不一定相同。如图2(b)所示,为轨迹ti的拐点集合,基于此,将轨迹ti划分为5个轨迹分片,例如,轨迹分片3可表示为:

每个轨迹分片的方向码设置为该分片内所有轨迹段方向码的平均值。

步骤s4:计算轨迹公共分片子序列(css)进而计算轨迹间的css距离,得到css距离数据集

如图4所示,ti和tj是轨迹集ts中的两条轨迹,是ti和tj之间的一对公共分片子序列(css),它们的对应分片具有相同的方向码。计算每一条轨迹与其他所有轨迹的css。

用公式(4)和(5)计算同方向码轨迹分片之间的距离。

slicedt=wloc*slicedtloc+wplen*slicedtplen(4)

其中,slicedt表示两个同方向码()轨迹分片之间的距离;slicedtloc和slicedtplen分别表示它们之间的位置距离和路径距离,slicedtloc是两个分片中心点之间的欧氏距离;分别表示分片的长度;wloc和wplen分别表示对应距离的权重;分别表示的持续时间间隔。以上公式中出现的各个组件如图5所示。

然后,用公式(6)计算每一对css之间的距离(简称css距离,记为cssdt)。

对每条轨迹ti,查找与其他轨迹tj(j≠i)的所有公共分片子序列(css),计算所有的css距离,得到css距离数据集。bi和ei分别表示css中第一个同向分片的序号和最后一个同向分片的序号;slicedtk表示其中第k对同向分片之间的距离。

步骤s5:计算轨迹间的css距离,获取css距离数据集。

对每条轨迹ti,查找与其他轨迹tj(j≠i)的所有公共分片子序列(css),用公式(4)、公式(5)和公式(6)计算所有的css距离,得到css距离数据集。

步骤s6:计算轨迹的css邻居。

根据定义:一条轨迹t的css邻居指的是ts中与t有公共分片子序列的轨迹,计算所有轨迹的css邻居以及相应邻居数目。ts为所有轨迹的集合。

步骤s7:设计分片离群点和离群轨迹的度量方法。

采用如下方法判定轨迹分片离群点和离群轨迹:

若一个轨迹分片的邻居数目少于指定阈值α,就被识别为离群轨迹分片(或轨迹分片离群点),其中,轨迹分片的邻居指的是和它距离小于指定阈值δ的所有轨迹分片。

若满足以下条件之一,则轨迹ti被定义为离群轨迹(轨迹离群点):i)ti与ts中的任何其它轨迹tj(j=1…n,j≠i)都没有公共分片子序列。ii)css邻居的数目小于指定阈值β。iii)超过css距离阈值γ的css邻居数目与|ts|的比值大于比例阈值η。|ts|表示轨迹集中的轨迹条数,阈值是通过实验计算出来的。具体如下:β为0.05*|ts|,γ为css距离集合的90百分位数,η为异常比例集合中的98百分位数。

步骤s8:检测出轨迹分片离群点及离群轨迹。

基于css距离数据集以及上述判定条件,设置合适的参数值,识别出轨迹分片离群点和离群轨迹。

为了说明效果,可以采用图6-11来进一步说明采用本方法可以达到的效果,本发明的具体实施例,列举了在2个真实数据集上评价提出方法的有效性。数据来源是1851-2013年的大西洋飓风轨迹数据集,具体包括每6小时间隔(0000,0600,1200,1800utc)的飓风位置(经度longitude和纬度latitude)、最大持续风速和中心气压。本发明的实验中抽取轨迹位置点的时间、纬度、经度三个属性,具体分为dataset1数据集和dataset2数据集。其中,dataset1含有1851-2013年所有的轨迹数据,包含855条轨迹和20146个位置点;dataset2含有1990-2013年所有的轨迹数据,包含152条估计和6557个位置点;dataset2是dataset1的真子集。

图6和图7分别给出了本发明所描述方法基于数据集dataset1和dataset2的分片效果,图6和图7中,粗细相间的线条,表明相邻分片,根据相邻分片的方向特征,可以看出本发明所述方法取得了良好的分片效果,,在轨迹分片的划分拐点处,轨迹的方向都出现了明显的变化,在每一个分片内部,方向码都高度相似。图8和图9分别给出了本发明所描述方法基于数据集dataset1和dataset2的离群轨迹分片检测效果,图8和图9中,粗线段标识的为离群轨迹分片,细的虚线标识的为所有轨迹;

图10和图11分别给出了本发明所描述方法基于数据集dataset1和dataset2的离群轨迹(也称为轨迹离群点)的检测结果,图10中“*”号标识的是由单个位置点构成的轨迹,图中实线标识的是由不止一个位置点构成的轨迹,图中虚线标识的是1996年9月袭击北卡罗莱纳恐怖角的飓风,这三种符号标识的都是本发明所述方法识别出的轨迹离群点。图11中,粗线段标识的为本发明所述方法识别出的轨迹离群点,灰色虚线标识的为所有轨迹。

图10中标记为黑色虚线的离群轨迹就是1996年9月袭击北卡罗莱纳恐怖角的飓风,是一次大型毁灭性的飓风。可视化的结果表明,本发明的方法对轨迹离群点的检测取得了良好的效果。

显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种非实质性的改进,均在本发明的保护范围之内。

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