JUST技術:如何通過軌跡相似性度量方法,發現新冠易感人群

京東數科技術說發表於2020-10-09

2020年初,一場突如其來的新冠疫情,使得公共衛生安全問題受到了全社會的廣泛關注。與此同時,如何及時掌握人與人之間的病毒傳播路徑,及時發現確診人員的密切接觸者,成為了各地政府疫情防控最迫切的需求。

JUST基於大規模軌跡資料,針對易感人群難以發現的問題,開發並提供了關聯人群查詢功能,通過對軌跡進行匹配挖掘,能夠快速找出與確診人員行動軌跡在時空維度有過“接觸”的人群。其中,實現該功能的很重要的一項工作就是:如何衡量兩條軌跡的相似性。下文將簡要介紹一些常見的軌跡相似性度量方法。

軌跡作為一種時空資料[1],指的是某物體在空間中的移動路徑,通常表示為GPS點的序列,例如tr=<p1→p2→…pn>,其中點pi=(lat,lng,t),表示該物體在t時刻位於地理座標位置(lat,lng)上,lat和lng分別表示緯度和經度。

在這裡插入圖片描述
圖1:離散的GPS點序列組成軌跡

大資料時代,隨著車載導航系統的普及,海量的軌跡資料正在源源不斷的產生,這些軌跡中蘊含著巨大的價值[2],例如可以進行交通流量分析和預測,為政府的城市規劃提供建議;也可以進行軌跡聚類,發現那些被很多軌跡經過的道路,用於指導自行車道的規劃;還可以進行駐留點檢測,發現軌跡經常停留的區域等。

在這裡插入圖片描述
圖2:海量的軌跡資料(北京計程車軌跡)及其應用

軌跡資料的分析處理非常具有挑戰性,主要包含三個方面:1)軌跡資料量大;2)軌跡資料噪音多;3)軌跡資料獲取途徑多樣。其中,軌跡相似性作為一項基礎演算法服務,衡量兩條軌跡之間的距離大小,可為其上層應用提供支援,也是目前研究的熱點之一。

在這裡插入圖片描述
圖3:軌跡相似性查詢示意圖

相對於點與點或點與軌跡之間的距離度量,軌跡之間的距離度量更加的複雜,需要考慮的因素也更多,例如軌跡的取樣率、考慮軌跡的時間資訊和軌跡自身的噪音等。常見的軌跡相似性度量方法大致分類如下圖所示。

在這裡插入圖片描述

圖4:軌跡相似性方法分類

我們定義如下兩條軌跡,長度分別為n和m,則:

在這裡插入圖片描述

  • 歐式距離(Euclidean Distance)

歐式距離要求兩條軌跡的長度相同一一對應,其數學定義為:

在這裡插入圖片描述

歐氏距離的定義簡單明瞭,就是兩條軌跡對應點的空間距離的平均值,但是缺點也很明顯,就是不能度量不同長度的軌跡相似性,且對噪音點敏感。

在這裡插入圖片描述

圖5:歐式距離示意圖(黑點與紅點一一對應)

  • 動態時間歸整(Dynamic Time Warping,DTW)

如上所述,歐式距離的一個明顯的限制是要求兩條軌跡長度相等,這在實際情況中是不太可能的,更理想的情況應該在軌跡長度上具有一定的靈活性。

動態時間歸整DTW[3]的思想是自動扭曲兩個序列,並在時間軸上進行區域性的縮放對齊,以使其形態儘可能一致,從而得到最大可能的相似性。DTW將兩條軌跡的點進行多對多的對映,從而較為高效地解決了資料不齊的問題,其動態規劃演算法如下:

在這裡插入圖片描述

其中Head(tr)=表示該軌跡的第一個點;Rest(tr)=<p2…pn>表示除第一個點之外的所有點組成的子序列。

在這裡插入圖片描述

圖6:DTW示意圖(黑點與紅點進行多對多對映)

動態時間歸整演算法靈活,對軌跡長度無限制,且效果較好,但是其並未對噪音點進行處理,離群點也會對結果造成較大影響。

  • 最長公共字串(Longest Common Sub-Sequence,LCSS)

有一個經典的演算法問題:求解兩序列的最長公共子序列,不要求公共子序列中的兩個連續相連,例如BDCABA和ABCBDAB的最大公共子序列為BCBA。在此基礎上,很自然提出了基於最長公共子序列的軌跡相似性度量方法,即LCSS,其值代表最多可被是為同一點的點數,也就是兩條軌跡中滿足最小距離閾值限制的軌跡點的對數。其基於動態規劃的演算法如下:

在這裡插入圖片描述

其中,引數是最小距離閾值,兩點之間距離小於該值時將被認為是同一點,此外,該演算法對軌跡長度沒有限制。
在這裡插入圖片描述

圖7:LCSS示意圖,有兩對點的距離小於,則被視為同一點,LCSS值為2

最長公共子串距離對噪音點進行了處理,即因噪音點的偏離沒有與其相近的軌跡點故不會被計算在最終結果內,這一步驟有效對抗噪音。但與此同時,該演算法的最小距離閾值不好定義,還有可能返回並不相似的軌跡。

  • 編輯距離(Edit Distance on Real sequence,EDR)

給定兩個長度分別為n和m的軌跡tr1和tr2,最小距離的匹配閾值,則兩條軌跡之間的EDR距離[4]就是需要對tr1及逆行插入、刪除或替換使其變為tr2的操作次數,其基於動態規劃的演算法如下。

在這裡插入圖片描述

其中,

在這裡插入圖片描述

在這裡插入圖片描述

圖8:EDR示意圖,在p1處“插入”一點、將p2’“替換”為p3和在p5處“插入”一點,共計3個操作使兩條軌跡相等(即對應點距離均小於閾值),故其EDR值為3

軌跡的編輯距離為軌跡相似新度量提供了一種新的思路,其缺陷也很明顯,就是對噪音點敏感。

  • 豪斯多夫距離(Hausdorff Distance)

簡單來說,豪斯多夫距離[5]就是兩條軌跡最近點距離的最大值。

在這裡插入圖片描述

其中,h(tr1,tr2)稱為tr1到tr2的單向豪斯多夫距離,其定義如下:

在這裡插入圖片描述

在這裡插入圖片描述

圖9:豪斯多夫距離示意圖,每個紅點都有一個最近的黑點,豪斯多夫距離就是其中的最大值

  • 弗雷歇距離(Fréchet Distance)

直觀的理解,弗雷歇距離[6]就是狗繩距離,即主人走路徑A,狗走路徑B,各自走完兩條路徑過程中所需要的最短狗繩長度。

在這裡插入圖片描述

圖10:狗繩距離示意圖,虛線表示主人和狗在同一時刻所處位置的對應,弗雷歇距離即為長度最長的虛線

弗雷歇距離基於動態規劃思想的演算法如下:

在這裡插入圖片描述

其中,d(p,q)是兩個GPS點的歐式距離,tr(n-1)=<p1→p2→…pn-1> 是軌跡tr的長度為n-1的子軌跡。

弗雷歇距離為我們提供了一種簡單直觀的度量相似性的方式,也能達到較好的效果;但可惜的是其並沒有對噪音點進行處理,例如若狗的某個軌跡點因為噪聲偏離得很遠,那麼弗雷歇距離也隨之增大,這顯然是不合理的。

  • 單向距離(One Way Distance,OWD)

單向距離OWD[7]的定義如下:

在這裡插入圖片描述

其中,|tr1|表示軌跡tr1的長度,d(p,tr2)表示GPS點p到tr2的距離。為了對稱,簡單修改上述公式:

在這裡插入圖片描述

在這裡插入圖片描述

圖11:單向距離示意圖,該距離即為各多邊形的面積之和與折線長度的比值

OWD距離的基本思想基於兩條軌跡圍成的面積,當面積大,說明軌跡之間距離較遠,相似度就低;相反,若圍成的面積為0,則說明兩條軌跡重合,相似度最高。

  • 多線位置距離(Locality In-between Polylines,LIP)

多線位置距離LIP[8]定義如下:

在這裡插入圖片描述

其中,Ii表示兩條軌跡的第i個交點,權重wi定義如下:

在這裡插入圖片描述

在這裡插入圖片描述

圖12:LIP方法示意圖,該距離為每個區域面積與其權重乘積之和

LIP方法很好理解,當某區域面積的周長佔總長比重大時權重也自然就大;當Area均為0時,說明兩條軌跡重合沒有縫隙,LIP距離為0;當Area加權和大時,則說明兩條軌跡之間縫隙較大,LIP距離也就大。此外,權重由區域周長佔總長比重大決定,也一定程度對抗了噪音點的干擾。

目前,京東城市自研的時空資料引擎JUST(JD Urban Spatio-Temporal Data Engine)已經實現了動態時間規整、豪斯多夫距離和弗雷歇距離等多種軌跡相似性計算方法,使用者無需編碼,僅需一條SQL就可以實現,同時JUST還提供了軌跡的視覺化功能方便使用者觀察,歡迎訪問https://just.urban-computing.cn/進行體驗,合作請發郵件至just@jd.com。

在這裡插入圖片描述

圖13:JUST產品主頁

在這裡插入圖片描述

圖14:JUST產品門戶

參考文獻:

[1] Zheng, Y., et al. Urban Computing: concepts, methodologies, and applications. ACM TIST.

[2] Yu Zheng. Trajectory Data Mining: An Overview. ACM Transactions on Intelligent Systems and Technology. 2015, vol. 6, issue 3.

[3] Yi B K, Jagadish H V, Faloutsos C. Efficient retrieval of similar time sequences under time warping[C]//Proceedings 14th International Conference on Data Engineering. IEEE, 1998: 201-208.

[4] Chen L, Özsu M T, Oria V. Robust and fast similarity search for moving object trajectories[C]//Proceedings of the 2005 ACM SIGMOD international conference on Management of data. 2005: 491-502.

[5] Alt H. The computational geometry of comparing shapes[M]//Efficient Algorithms. Springer, Berlin, Heidelberg, 2009: 235-248.

[6] Eiter T, Mannila H. Computing discrete Fréchet distance[R]. Technical Report CD-TR 94/64, Christian Doppler Laboratory for Expert Systems, TU Vienna, Austria, 1994.

[7] OWD論文:Lin B, Su J. One way distance: For shape based similarity search of moving object trajectories[J]. GeoInformatica, 2008, 12(2): 117-142.

[8] LIP論文:Pelekis N, Kopanakis I, Marketos G, et al. Similarity search in trajectory databases[C]//14th International Symposium on Temporal Representation and Reasoning (TIME’07). IEEE, 2007: 129-140.

本文作者:京東數科 JUST團隊
文章來源:“京東數科技術說”微信公眾號
原文連結: https://mp.weixin.qq.com/s/rvNTfWLqf9OgWfUyiGuBAg.
更多技術乾貨歡迎關注“京東數科技術說”微信公眾號,我們只憑技術說話!

相關文章