1 Intro

  • 物联网、传感器等技术不断发展,使得越来越多的轨迹被记录下来
  • 如GPS记录、公交刷卡数据、手机信令数据等。
  • 现实中同一次的移动可能同时被多种传感器记录下来
  • 用户的公交出行轨迹
  • 用户手机与不同基站连接产生手机信令轨迹
  • 公交车GPS轨迹
  • 。。。。
  • 这些由不同传感器记录的轨迹往往在定位精度、采样频率、持续时长等方面差别很大
  • 如果能够将从同一次移动产生的不同轨迹匹配出来,进行时空轨迹匹配,就能够更充分地还原轨迹信息,从而应用于丰富轨迹语义、构建用户画像、挖掘共同出行者等。
  • 时空轨迹匹配的核心是轨迹相似度的计算
  • 已有的轨迹相似度(LCSS、DTW等)往往忽略轨迹的时间属性
  • 但时空轨迹匹配要求轨迹在时间和空间上都尽量相近
  • 比如下图,如果只看空间轨迹的话,那么轨迹B和轨迹A是很相似的
  • 但是他们在时间维度上有一定的gap,所以不可能是同一次移动产生的
  • ——>论文提出了时间加权相似度(Time Weighted Similarity, TWS)与空间加权相似度(Space Weighted Similarity, SWS)来度量时空轨迹的相似度
  • 同时基于Spark平台构建了分布式轨迹匹配的框架

2 时空轨迹相似度

2.0 时空轨迹

  • 给定两条连续的轨迹 T1:p1=p1(t), t∈[α1,β1] 与 T2:p2=p2(t), t∈[α2,β2],它们重合的时间段为 t∈[α,β]
  • 直观上,如果两个轨迹的点如果持续长时间或者长的距离离的比较近,那么它们就应该是相似的

2.1 点相似度

这里认为,观测的点(x,y)和实际的点(x0,y0)之间满足一个2D正态分布

时空轨迹图python 时空轨迹交集啥意思_时空轨迹图python

 

时空轨迹图python 时空轨迹交集啥意思_数据_02

 论文希望在不知道两个点实际坐标的情况下,衡量两个实际点之间的相似关系

即已知观测点(x1,y1),(x2,y2),求这两个点的实际坐标之间的距离

 

时空轨迹图python 时空轨迹交集啥意思_算法_03

用2D高斯方程带入,有:

 

时空轨迹图python 时空轨迹交集啥意思_物联网_04

 p1,p2就是观测坐标

 再对点距离函数进行归一化和截断,有:

时空轨迹图python 时空轨迹交集啥意思_算法_05

 2.2 轨迹时间加权相似度

时空轨迹图python 时空轨迹交集啥意思_时空轨迹图python_06

在两条轨迹有交集的时间里,他们的平均点距离

 如果T1是目标轨迹,T2是一组候选轨迹,那么以T1为目标轨迹,针对T2的时间加权相似度可以写为:

时空轨迹图python 时空轨迹交集啥意思_物联网_07

 2.3 轨迹空间加权相似度

时空轨迹图python 时空轨迹交集啥意思_时空轨迹图python_08

 如果T1是目标轨迹,T2是一组候选轨迹,那么以T1为目标轨迹,针对T2的时间加权相似度可以写为:

 

时空轨迹图python 时空轨迹交集啥意思_物联网_09

 2.4 积分的梯形近似

  • 实际问题中,轨迹是一系列离散的点
  • ——>一条轨迹有、另一条轨迹没有的timestamp,进行线性插补
  • ——>然后使用梯形近似来计算积分
  • 第二个式子可以看成计算而来

 2.5 伪代码(空间加权相似度)

时空轨迹图python 时空轨迹交集啥意思_数据_10

 3  分布式时空轨迹匹配

  • 轨迹匹配需要巨大的计算量
  • 论文提出了一个时空buffer的方式来高效地计算子轨迹段之间的相似度
  • 对轨迹,只需要计算其和之间的相似度,而不用计算和之间的相似度(因为后者和的时空buffer没有交集)

3.1 时空网格切分

  • 先举个例子:
  • 切分时空网格之后,Sa被划分到红色的八格内,Sb被划分到蓝色的三格内
  • 需要进行相似度比较的只有深色的一格

3.2  时空网格的join

3.2.1 reference point

  • 如果Sa是已经在3.1中存在时空网格buffer中的子路段,Sb是候选路段
  • 他们的重叠时刻是[t1,t2]
  • 如果,那么Sb(t1)是reference point,否则是Sb(t2)

 3.3.2 时空网络join

假设我们是根据

  • 给定子轨迹Sb,如果他的reference point在一个Sa确定的时空网格里面,那么就计算这两个子轨迹的相似度

 

时空轨迹图python 时空轨迹交集啥意思_物联网_11

 3.4 reduce & sum

将属于同一组轨迹的线段的相似性得分汇总,得到轨迹的相似度

3.5 总流程

时空轨迹图python 时空轨迹交集啥意思_物联网_12

4 实验

4.1 实验部分

4.1.1 真实数据

  • Xinjiang-Car:
  • 汽车轨迹
  • 通过高速公路上的一系列收费站、摄像头和其他入口设施记录下来的
  • 按照车辆的轨迹按时间顺序排列,在车辆通过这些设施时进行收集
  • Xinjiang-Phone
  • 手机轨迹
  • 手机连接的一系列基站的序列
  • 为了收集ground-truth数据,论文聘请了一名本地司机和两名乘客(各自使用不同的手机)每天在高速公路上驾车约7小时
  • 数据采集时间为7天,每天大约收集到5.2万条汽车轨迹和3条手机轨迹。
  • 高速公路沿线的定位设施非常稀疏(相距约十公里),导致采样间隔为51.7分钟,平均每条轨迹只有5个采样点。
  • 手机轨迹的采样间隔约为28.7分钟,平均每条轨迹有25个采样点,定位误差约为5公里
  • 实验任务是将新疆手机轨迹划分为不同的时间间隔,并与新疆汽车轨迹匹配,以找到每个乘客搭乘的汽车

4.1.2 人工数据集

  • beijing-Taxi
  • 2013年5月13日北京出租车的GPS轨迹
  • 27,627个轨迹,约有1800万条轨迹段
  • 根据中国移动公司在北京的真实基站位置,应用A2-A4-RSRQ切换算法 模拟了乘客和司机的手机轨迹
  • 总共得到了208,648个乘客手机轨迹,称为Beijing-Passenger
  • 生成了1000个司机手机轨迹,称为Beijing-Driver
  • 司机轨迹的平均间隔明显大于乘客轨迹的平均间隔,因为司机可能在没有乘客时开得更慢或停下来

 4.2 Baseline

  • MHD:Modified Hausdorff Distance 
  • Ta中每个点对Tb的最小距离        
  • MHDT
  • 对Ta和Tb计算最小距离的点之间的时间间隔加以限制
  • TWD:只考虑时间加权相似度

4.3 实验结果

时空轨迹图python 时空轨迹交集啥意思_数据_13