孟祥澤, 胡嘯峰*, 沈 兵
(1.中國人民公安大學(xué)信息網(wǎng)絡(luò)安全學(xué)院, 北京 100038;2.中國人民公安大學(xué)公共安全行為科學(xué)實(shí)驗(yàn)室, 北京 100038)
老年人在社區(qū)室外行動(dòng)中面臨突發(fā)疾病(如心臟病)、走失(如阿爾茲海默癥患者)等常見風(fēng)險(xiǎn)。調(diào)研發(fā)現(xiàn),在大量老年人猝死事故案例中,如果在事故發(fā)生后的特定時(shí)間內(nèi)能夠快速發(fā)現(xiàn)并及時(shí)搶救,可以極大地降低死亡概率。當(dāng)前,社區(qū)視頻監(jiān)控普遍存在死角,社區(qū)網(wǎng)格員及各類管理服務(wù)人員數(shù)量有限、工作繁重,難以全天候?qū)ι鐓^(qū)老年人活動(dòng)進(jìn)行安全監(jiān)控與服務(wù),因此,基于定位裝置與軌跡研判的監(jiān)控方式逐漸受到重視。
目前,中外空間軌跡數(shù)據(jù)分析研究中,多采用聚類算法挖掘人員行為模式與軌跡序列特征。常用的軌跡聚類算法主要包括:①劃分方法,如K均值聚類算法(K-means clustering algorithm,K-means)、最大期望算法(expectation-maximization,EM),該類算法處理大數(shù)據(jù)集效果較好,但無法識(shí)別球形軌跡,趙玉明等[1]將基于Kullback-Leibler散度(Kullback-Leibler divergence)的相似性尺度與聚類方法相結(jié)合以提高聚類準(zhǔn)確度;②層次方法,如BIRCH(balanced iterative reducing and clustering using hierarchies)[2]、CURE(clustering using representative)[3]算法,優(yōu)點(diǎn)在于能夠適應(yīng)任意形狀的軌跡和不同屬性的數(shù)據(jù),但計(jì)算時(shí)間較長;③基于密度的方法,如DBSCAN(density-based spatial clustering of applications with noise)算法[4,5]、OPTICS(ordering point to identify the cluster structure)算法[6],CFSFDP(clustering by fast search and find of density peaks)算法[7-8],優(yōu)點(diǎn)是能夠形成任意形狀的簇,但是需要自定義參數(shù),且最佳參數(shù)設(shè)定需要多次嘗試;④基于網(wǎng)格的方法[9],如STING(statistical information grid-based method)[10]、CLIQUE(clustering in QUEst)算法[11],優(yōu)點(diǎn)是可以處理任意類型的數(shù)據(jù),但聚類效果依賴劃分的網(wǎng)格單元。由于基于密度的算法可以形成任意形狀的簇,并且無需預(yù)定義簇的個(gè)數(shù),因此在軌跡分析研究中使用的頻率較高。
軌跡間的距離度量算法同樣是軌跡數(shù)據(jù)分析中的關(guān)鍵技術(shù),目前常用的軌跡間距離算法包括歐氏距離、豪斯多夫(Hausdorff)距離、最長公共子序列(longest-common-subsequence,LCSS)[12]、分段路徑對應(yīng)距離(symmetric segment path distance,SSPD)等算法。魏龍翔[13]提出了集合Hausdorff距離與LCSS距離的算法。動(dòng)態(tài)時(shí)間規(guī)整算法(dynamic time warping,DTW)[14-15]適合利用不同采樣率和規(guī)模的數(shù)據(jù)進(jìn)行軌跡間距計(jì)算。
目前的異常軌跡檢測算法普遍將聚類算法與距離度量算法結(jié)合運(yùn)用,來檢驗(yàn)離群軌跡。如異常軌跡檢測算法(trajectory outlier detection,TAROD)[16-17]先將軌跡進(jìn)行分段,然后綜合利用基于距離和基于密度的聚類算法檢測離群軌跡。基于時(shí)間的路網(wǎng)中熱門路線的異常檢測(time-dependent popular routes based trajectory outlier detection,TPRO)算法[18]提出了一種基于時(shí)間的距離度量,并同時(shí)考慮了時(shí)間和空間的異常。胡瑗等[19]對軌跡進(jìn)行分段,然后使用主題模型線性判別分析(linear discriminant analysis,LDA)進(jìn)行局部聚類,最后建立隱馬爾可夫模型進(jìn)行異常軌跡識(shí)別。何明等[20]結(jié)合DTW和Hausdorff距離兩種度量算法,并定義了3種不同的異常模式對異常軌跡進(jìn)行識(shí)別。逄煥利等[21]結(jié)合基于軌跡分離的異常軌跡算法(isolation-based anomalous trajectory,IBAT)和DTW算法檢測異常軌跡。李旭東等[22]改進(jìn)了SSPD方法并結(jié)合密度峰值聚類算法識(shí)別軌跡。胡園等[23]提出了一種基于密度的(radius density-based spatial clustering of applications with noise,RDBSCAN)聚類方法,并結(jié)合軌跡密度異常和長度異常識(shí)別異常軌跡??紤]到ST-DBSCAN算法[24]與DTW算法可同時(shí)兼顧空間與時(shí)間信息,使得模型能從時(shí)間與空間尺度上綜合檢測異常軌跡。王雷等[25]通過計(jì)算出租車的流量變化來識(shí)別交通的異常狀況?,F(xiàn)擬結(jié)合ST-DBSCAN聚類算法和DTW算法來識(shí)別異常軌跡。因?yàn)槔夏耆诵袨檐壽E存在一定的隨機(jī)性,某些離群軌跡不一定等同于異常軌跡。而目前大部分異常軌跡識(shí)別研究中,大多將離群軌跡等同于異常軌跡。這與實(shí)際情況往往存在一定的差異。為描述行人的具體行為,需要從軌跡數(shù)據(jù)中提取出行為鏈,如崔洪軍等[26]通過建立出行乘客的行為鏈來描述乘客行為,并使用馬爾科夫鏈模型預(yù)測乘客行為。
針對上述問題,首先利用ST-DBSCAN算法和DTW算法分辨老年人的離群軌跡。其次,針對所定義的老年人在社區(qū)室外場景下的兩種異常軌跡模式:出行軌跡偏離日常軌跡和出行時(shí)異常停止或速度異常,識(shí)別老年人異常軌跡。再次,結(jié)合老年人的背景信息、氣象信息進(jìn)行安全風(fēng)險(xiǎn)分析。最后,結(jié)合老年人出行軌跡異常模式、老年人背景信息、氣象信息,建立社區(qū)老年人異常行為軌跡風(fēng)險(xiǎn)分析模型。
建立了社區(qū)老年人異常行為軌跡風(fēng)險(xiǎn)分析模型,如圖1所示。該模型分為2部分:空間異常行為軌跡識(shí)別、空間異常行為軌跡風(fēng)險(xiǎn)分析。
圖1 社區(qū)老年人異常行為軌跡風(fēng)險(xiǎn)分析模型Fig.1 Risk analysis model of elderly people’s spatial behavior trajectory
第一部分為空間異常行為軌跡識(shí)別。使用ST-DBSCAN軌跡聚類算法對老年人的空間行為軌跡進(jìn)行聚類,識(shí)別出老年人動(dòng)態(tài)行為鏈及行為軌跡規(guī)律。異常識(shí)別模塊以兩種常見的老年人異常軌跡模式識(shí)別為目標(biāo)(出行軌跡偏離日常軌跡和停留時(shí)間過長),利用DTW算法對老年人的動(dòng)態(tài)軌跡進(jìn)行異常軌跡識(shí)別。第二部分為空間異常行為軌跡風(fēng)險(xiǎn)分析。模塊綜合考慮老年人的異常軌跡模式、老年人的身份屬性信息和環(huán)境信息等特征,建立老年人的異常軌跡綜合風(fēng)險(xiǎn)分析模型,定量化地分析老年人在室外場景下的異常軌跡風(fēng)險(xiǎn),實(shí)現(xiàn)老年人異常軌跡預(yù)警。
定義了兩種老年人的出行異常,如圖1中空間異常行為軌跡識(shí)別部分所示,模型的第一部分用于識(shí)別這兩種異常。第一種異常為老年人的出行軌跡偏離日常軌跡,第二種異常為老年人出行時(shí)出現(xiàn)異常停止或出現(xiàn)速度異常的情況。
1.1.1 出行軌跡偏離日常軌跡
針對第一種異常情況,首先要確定老年人的日常軌跡,利用ST-DBSCAN聚類算法對老年人的軌跡數(shù)據(jù)進(jìn)行聚類,得到老年人頻繁訪問的地點(diǎn)。連接這些訪問熱點(diǎn),得到老年人的日常行為鏈,即為老年人的日常軌跡。下一步使用DTW動(dòng)態(tài)時(shí)間規(guī)整算法計(jì)算老年人出行軌跡與老年人日常行為鏈之間的距離。計(jì)算每一條出行軌跡與行為鏈的距離,并求出平均值,將其作為判斷出行軌跡是否異常的臨界距離。如果某條實(shí)時(shí)出行軌跡與日常軌跡之間的距離大于平均值,則認(rèn)為這條出行軌跡是異常的。
利用ST-DBSCAN聚類算法,設(shè)存在數(shù)據(jù)總量為N的軌跡點(diǎn)集{X1,X2, …,XN},預(yù)設(shè)空間鄰域半徑為SEPS,時(shí)間鄰域半徑為TEPS,每個(gè)聚類簇內(nèi)最少包含點(diǎn)的個(gè)數(shù)為 MinPTS。隨機(jī)選取一個(gè)中心點(diǎn)計(jì)算空間鄰域和時(shí)間鄰域內(nèi)點(diǎn)的個(gè)數(shù)n,如n≥MinPTS則鄰域內(nèi)的點(diǎn)為一個(gè)簇,接下來重復(fù)此步來尋找同一個(gè)簇。DTW算法利用時(shí)間序列進(jìn)行延伸和縮短,來計(jì)算兩個(gè)時(shí)間序列之間的相似性。兩個(gè)時(shí)間序列為X和Y,長度分別為|X|和|Y|。歸整路徑,其形式為W=w1,w2,…,wK,Max(|X|,|Y|)≤K≤|X|+|Y|。wK的形式為(i,j),其中i表示X中的i坐標(biāo),j表示Y中的j坐標(biāo)。歸整路徑W必須從w1=(1,1)開始,到wK=(|X|,|Y|)結(jié)尾,以保證X和Y中的每個(gè)坐標(biāo)都在W中出現(xiàn)。另外,W中w(i,j)的i和j必須是單調(diào)增加的。最后要得到的歸整路徑是距離最短的一個(gè)歸整路徑,即
D(i,j)=Dist(i,j)+min[D(i-1,j),D(i,j-1),D(i-1,j-1)]
(1)
式(1)中:D(i,j)為長度為i和j的兩個(gè)時(shí)間序列之間的歸整路徑距離。最后求得的規(guī)整路徑的距離為D(|X|,|Y|)。
1.1.2 出行時(shí)異常停止或速度異常
第二種異常情況是指在出行過程中老年人突發(fā)疾病倒地或老年人由于身體不適導(dǎo)致行動(dòng)緩慢的情況。為檢測老年人的異常停止,首先統(tǒng)計(jì)老年人在日常行動(dòng)中出現(xiàn)停止移動(dòng)的地點(diǎn)和停止的時(shí)間,將數(shù)據(jù)中最長的停止時(shí)間tmax作為臨界條件。如果實(shí)時(shí)運(yùn)動(dòng)軌跡中出現(xiàn)了老年人在某處的停止時(shí)間大于tmax的情況,則認(rèn)為老年人在此處可能遇到了意外摔倒或失去意識(shí)的情況,此時(shí)老年人存在猝死的風(fēng)險(xiǎn)。
為檢測老年人的異常速度,使用式(2)~式(4)來計(jì)算老年人的移動(dòng)速度。分析老年人的出行速度時(shí),將日常出行中的最低速度作為判斷老年人出行時(shí)速度是否異常的臨界值。如果老年人實(shí)時(shí)出行時(shí)的移動(dòng)速度小于臨界值,則認(rèn)為此時(shí)老年人可能遇到了異常情況。
c=sin(Lat1)sin(Lat2)cos(Lng1-Lng2)+cos(Lat1)cos(Lat2)
(2)
D=π/180Rarccos(c)
(3)
v=D/t
(4)
式中:Lat為緯度;Lng為經(jīng)度;R為地球半徑,m;D為兩點(diǎn)之間的距離,m;v為兩點(diǎn)之間的瞬時(shí)速度,m/s;t為兩點(diǎn)的時(shí)間差,s;c為圓心角,rad。
模型在1.1節(jié)“空間異常行為軌跡識(shí)別”中識(shí)別出了異常情況,為增加模型識(shí)別安全風(fēng)險(xiǎn)的準(zhǔn)確性,結(jié)合異常軌跡模式、老年人身份屬性信息、環(huán)境信息對出現(xiàn)的異常進(jìn)行具體的風(fēng)險(xiǎn)分析。如表1所示,分為人員數(shù)據(jù)、出行數(shù)據(jù)、天氣數(shù)據(jù)、異常4種屬性,每個(gè)屬性包含不同的情況,每一種情況分為不同風(fēng)險(xiǎn)等級(jí),分別有0到3分的差別。其中各項(xiàng)數(shù)值是通過專家經(jīng)驗(yàn)得到的權(quán)重值。針對老年人發(fā)生異常時(shí)的不同情況進(jìn)行打分,最后得分除以表中最大分值21,此數(shù)值即為老年人行為軌跡出現(xiàn)異常時(shí)的安全風(fēng)險(xiǎn)。
表1 行為軌跡安全風(fēng)險(xiǎn)權(quán)重值Table 1 Behavior trajectory security risk weight value
為驗(yàn)證模型的有效性,使用微軟開源的軌跡數(shù)據(jù)集GeoLife對模型進(jìn)行驗(yàn)證。假設(shè)GeoLife數(shù)據(jù)集中編號(hào)102與97的人員為老年人。下一步對數(shù)據(jù)賦予假設(shè)的老年人背景信息和氣象信息,將真實(shí)的軌跡數(shù)據(jù)與模擬的人員背景數(shù)據(jù)、氣象數(shù)據(jù)相結(jié)合來驗(yàn)證模型。其中方法的實(shí)用性和有效性需要在之后實(shí)踐中進(jìn)一步驗(yàn)證[27]。
使用ST-DBSCAN算法提取兩人的日常行為鏈如圖2所示。選擇兩人4 d的出行路線來判斷這4 d 的出行是否遇到了危險(xiǎn),每種顏色表示每一天的出行軌跡,如圖3所示。使用DTW算法分別計(jì)算4條軌跡與日常行為鏈的距離,將其與邊界距離相比。在102號(hào)的4條出行軌跡中,第一條與第四條軌跡的偏離值大于了邊界值,所以將這兩條軌跡認(rèn)定為異常軌跡。97號(hào)的第三條軌跡的偏離值大于了邊界值,所以這一條軌跡判斷為異常軌跡。下一步判斷兩人的出行軌跡是否符合第二種異常模式,如圖4所示分析兩人的實(shí)時(shí)移動(dòng)速度,結(jié)果表明102號(hào)被觀測者偶爾使用交通工具出行,而97號(hào)則是經(jīng)常步行出門。分析兩人出行時(shí)在某處停止的時(shí)間,兩人的最長停止時(shí)間分別為5 s和1 min 30 s,將其作為判斷第二種異常情況的臨界條件。從兩人這4 d的出行軌跡來看,兩人的出行軌跡出現(xiàn)了第一種異常情況,而沒有出現(xiàn)第二種異常。
圖2 使用ST-DBSCAN得到的軌跡行為鏈Fig.2 Trajectory behavior chain after clustering using ST-DBSCAN algorithm
圖3 4 d的出行軌跡與日常軌跡比較Fig.3 Comparison of travel trajectory with daily trajectory of 4 days
圖4 被觀察者出行習(xí)慣分析Fig.4 Analysis of travel habits of the observed
對兩人出現(xiàn)的異常進(jìn)行風(fēng)險(xiǎn)分析,結(jié)果如表2所示,102號(hào)的第一條和第三條出行軌跡存在風(fēng)險(xiǎn),其安全風(fēng)險(xiǎn)為33.3%和42.8%。97號(hào)的第三條軌跡存在風(fēng)險(xiǎn),其安全風(fēng)險(xiǎn)為23.8%。
表2 模型結(jié)果風(fēng)險(xiǎn)值Table 2 Model risk value
建立了一個(gè)老年人空間異常行為軌跡風(fēng)險(xiǎn)分析模型。使用模型對老年人的出行數(shù)據(jù)進(jìn)行分析,并計(jì)算出老年人軌跡出現(xiàn)異常時(shí)的安全風(fēng)險(xiǎn)。整個(gè)模型由老年人空間異常行為軌跡識(shí)別、老年人空間異常行為軌跡風(fēng)險(xiǎn)分析這兩部分組成。結(jié)合ST-DBSCAN算法和DTW算法建立異常軌跡檢測模型來識(shí)別老年人異常軌跡,并建立了風(fēng)險(xiǎn)分析模型,該部分結(jié)合異常軌跡模式、老年人背景信息、氣象信息,計(jì)算出老年人出行時(shí)的安全風(fēng)險(xiǎn)。從實(shí)驗(yàn)結(jié)果來看,研究成果可以為社區(qū)、居委會(huì)、養(yǎng)老機(jī)構(gòu)提供老年人異常行為軌跡風(fēng)險(xiǎn)分析的技術(shù)支持,并能夠?yàn)樯鐓^(qū)的安全管理提供服務(wù)。