孟凡君,曹 偉,管志強(qiáng)
(南京船舶雷達(dá)研究所 人力資源部,江蘇 南京 210000)
海量雷達(dá)數(shù)據(jù)異常軌跡分析
孟凡君,曹 偉,管志強(qiáng)
(南京船舶雷達(dá)研究所 人力資源部,江蘇 南京 210000)
針對(duì)敵對(duì)偽裝目標(biāo)潛入我重點(diǎn)海域進(jìn)行敵對(duì)活動(dòng)時(shí),難以利用民用手段或雷達(dá)特性區(qū)分識(shí)別的問題。通過分布式并行處理積累的雷達(dá)數(shù)據(jù),總結(jié)各類目標(biāo)活動(dòng)規(guī)律,能夠分析對(duì)比發(fā)現(xiàn)偽裝目標(biāo)。針對(duì)雷達(dá)數(shù)據(jù)的海量特性,使用分布式處理框架Hadoop處理原始雷達(dá)數(shù)據(jù),生成軌跡知識(shí)庫,并以知識(shí)庫為基礎(chǔ)利用異常軌跡分析算法判斷軌跡是否異常。結(jié)果表明,該方法大約3天實(shí)現(xiàn)了全年雷達(dá)數(shù)據(jù)的異常軌跡分析,并能通過增加節(jié)點(diǎn)進(jìn)一步提升分析速度。
雷達(dá)數(shù)據(jù);分布式存儲(chǔ);并行處理;異常軌跡
各類敵對(duì)偽裝目標(biāo)通過不安裝AIS設(shè)備或利用偽裝AIS,潛伏進(jìn)入我重點(diǎn)海域進(jìn)行偵查監(jiān)視等敵對(duì)活動(dòng),利用民用識(shí)別手段或雷達(dá)特性難以區(qū)分此類目標(biāo)[1]。而通過分析雷達(dá)數(shù)據(jù)[2]中的雷達(dá)航跡和AIS數(shù)據(jù)記載的各類目標(biāo)運(yùn)動(dòng)軌跡[3-4],總結(jié)各種目標(biāo)活動(dòng)規(guī)律,能夠從中發(fā)現(xiàn)其中的偽裝或異常目標(biāo),提高我方指揮員的判情識(shí)別能力。雷達(dá)數(shù)據(jù)持續(xù)產(chǎn)生,各基站單日雷達(dá)數(shù)據(jù)超過百萬條,達(dá)到GB級(jí),各年數(shù)據(jù)量超過TB級(jí),常見的異常軌跡檢測(cè)算法如TROAD算法[5-6]在如此大數(shù)據(jù)量下都會(huì)產(chǎn)生巨額分析時(shí)間。如何高效地從海量的雷達(dá)數(shù)據(jù)中發(fā)現(xiàn)目標(biāo)運(yùn)動(dòng)規(guī)律,分析出異常軌跡是一個(gè)亟待解決的難題[7]。
為完成對(duì)海量數(shù)據(jù)的異常分析,本文選取了并行處理框架Hadoop[8-10]搭建雷達(dá)數(shù)據(jù)處理平臺(tái)。依靠HDFS和HBase實(shí)現(xiàn)了海量雷達(dá)數(shù)據(jù)分布式存儲(chǔ)[11-14],通過MapReduce實(shí)現(xiàn)了海量雷達(dá)數(shù)據(jù)的并行處理,發(fā)現(xiàn)目標(biāo)的運(yùn)動(dòng)規(guī)律,并以此為基礎(chǔ)利用異常軌跡分析算法分析目標(biāo)軌跡是否異常。
雷達(dá)數(shù)據(jù)的處理流程如圖1 所示。
圖1 數(shù)據(jù)處理流程圖
首先利用Hadoop清洗、整理原始數(shù)據(jù),分別將AIS數(shù)據(jù)和航跡數(shù)據(jù)抽取、轉(zhuǎn)化、加載(ETL)到AIS存儲(chǔ)和航跡存儲(chǔ)中。其次考慮數(shù)據(jù)的特點(diǎn)及應(yīng)用,分別對(duì)AIS存儲(chǔ)和航跡存儲(chǔ)進(jìn)行并行處理生成單AIS軌跡知識(shí)庫、全AIS軌跡知識(shí)庫、全航跡軌跡知識(shí)庫。最后,利用異常軌跡分析算法以及3個(gè)知識(shí)庫的歷史軌跡規(guī)律,判斷所有軌跡是否異常。
雷達(dá)數(shù)據(jù)和軌跡規(guī)律都需要存儲(chǔ)在HBase中,主要分為基礎(chǔ)數(shù)據(jù)存儲(chǔ)和軌跡知識(shí)庫[15]。
2.1 基礎(chǔ)數(shù)據(jù)存儲(chǔ)
基礎(chǔ)數(shù)據(jù)存儲(chǔ)包含了所有的有效數(shù)據(jù),并將單個(gè)目標(biāo)單日的數(shù)據(jù)集合確立為一個(gè)對(duì)象集中存儲(chǔ),是目標(biāo)軌跡提取以及規(guī)律分析的基礎(chǔ),分為AIS存儲(chǔ)和航跡存儲(chǔ)。
2.2 軌跡知識(shí)庫設(shè)計(jì)
軌跡知識(shí)庫存儲(chǔ)了經(jīng)分析處理得到的目標(biāo)運(yùn)動(dòng)規(guī)律,是異常軌跡分析必備的對(duì)比知識(shí)庫。
2.2.1 全AIS軌跡知識(shí)庫
全AIS軌跡知識(shí)庫從時(shí)間、位置坐標(biāo)、運(yùn)動(dòng)屬性、身份屬性4個(gè)方面描述全體AIS目標(biāo)的整體分布規(guī)律,為判斷新航跡信息是否異常提供目標(biāo)分布規(guī)律。存儲(chǔ)時(shí)以“時(shí)間+航速+航向+國籍”為行鍵,其結(jié)構(gòu)如表1所示。
表1 全AIS軌跡知識(shí)庫結(jié)構(gòu)表
2.2.2 全航跡軌跡知識(shí)庫
全航跡軌跡知識(shí)庫從時(shí)間、位置坐標(biāo)、運(yùn)動(dòng)屬性、關(guān)聯(lián)AIS信息4個(gè)方面描述全體航跡目標(biāo)的整體分布規(guī)律,主要描述無關(guān)聯(lián)AIS的民用小目標(biāo)和軍事目標(biāo)在各類維度條件下的整體時(shí)空分布規(guī)律,用于判斷無關(guān)聯(lián)AIS航跡軌跡是否異常。其結(jié)構(gòu)如表2所示。
表2 全航跡軌跡知識(shí)庫結(jié)構(gòu)表
2.2.3 單AIS軌跡知識(shí)庫
單AIS軌跡知識(shí)庫從時(shí)間和位置坐標(biāo)兩方面描述單個(gè)AIS目標(biāo)的航行規(guī)律,通過計(jì)算某一AIS目標(biāo)軌跡與庫中目標(biāo)航行線路相似度判斷新軌跡是否異常,通過計(jì)算新航跡軌跡與庫中目標(biāo)航行線路相似度判斷疑似MMSI號(hào)。一個(gè)目標(biāo)有唯一MMSI號(hào),并集中行駛于多條航行路線,因此,對(duì)目標(biāo)航行線路以“MMSI+ID”為行鍵存儲(chǔ),其結(jié)構(gòu)如表3所示。
表3 單AIS軌跡知識(shí)庫結(jié)構(gòu)表
2.2.4 異常軌跡知識(shí)庫
異常軌跡知識(shí)庫描述某一類異常軌跡的坐標(biāo)分布和出現(xiàn)的時(shí)間規(guī)律,通過計(jì)算新目標(biāo)軌跡與庫中異常軌跡相似度判斷新軌跡所屬異常軌跡類,獲取軌跡出現(xiàn)規(guī)律。通過對(duì)所有異常軌跡聚類分析處理,將其分為若干類異常軌跡,給每類異常軌跡分配ID,并以“ID”為行鍵,其結(jié)構(gòu)如表4所示。
表4 異常軌跡知識(shí)庫結(jié)構(gòu)表
3.1 全AIS軌跡知識(shí)庫生成
視AIS存儲(chǔ)為一個(gè)六維數(shù)據(jù)集,在確立國籍、時(shí)間、航速、航向4個(gè)維度的情況下,將所有經(jīng)緯度坐標(biāo)信息存儲(chǔ)到同一個(gè)矩陣內(nèi),經(jīng)處理得目標(biāo)分布日規(guī)律。所有矩陣構(gòu)成AIS信息多維數(shù)據(jù)集,對(duì)日規(guī)律按月上卷得目標(biāo)分布月規(guī)律。算法如下:
(1)Hadoop將AIS存儲(chǔ)切分,并將每個(gè)分片交給各數(shù)據(jù)節(jié)點(diǎn)(DataNode)上的Map Task處理;
(2)Map階段。各Map Task從輸入分片中解析出數(shù)據(jù),并將其轉(zhuǎn)換為鍵值對(duì)<行鍵1,經(jīng)緯度>,其中,行鍵1 為“日期+航速+航向+國籍”;
(3)Reduce階段。利用Hash函數(shù)將Map輸出按其鍵值分塊,復(fù)制于各Reduce Task,合并Map輸出,將相同鍵的“經(jīng)緯度”坐標(biāo)合并到一個(gè)矩陣中,并按年平均,所得“矩陣”的每一位數(shù)值為該日期對(duì)應(yīng)坐標(biāo)內(nèi)目標(biāo)出現(xiàn)頻率即全AIS歷史軌跡分布日規(guī)律;
(4)Map階段。將知識(shí)庫中日規(guī)律分配于各Map Task,并將其轉(zhuǎn)換為鍵值對(duì)<行鍵2,矩陣>,其中,行鍵2 為“月份+航速+航向+國籍”;
(5)Reduce階段。各Reduce Task合并Map輸出,將相同鍵的“矩陣”相加,得到“矩陣*”即AIS歷史軌跡分布月規(guī)律,將其存儲(chǔ)到全AIS軌跡知識(shí)庫中。
3.2 全航跡軌跡知識(shí)庫生成
全航跡軌跡知識(shí)庫生成原理與全AIS軌跡知識(shí)庫類似,Map后鍵值對(duì)為<日期+航速+航向+關(guān)聯(lián)AIS信息,經(jīng)緯度>,存儲(chǔ)時(shí)以(日期(月份)+航速+航向+關(guān)聯(lián)AIS信息)為行健。
3.3 單AIS軌跡知識(shí)庫生成
單AIS軌跡知識(shí)庫的生成分為兩部分:獲取軌跡和軌跡聚類分析。對(duì)每一個(gè)MMSI號(hào)目標(biāo)分別執(zhí)行這兩步。
3.3.1 獲取軌跡
對(duì)應(yīng)的MapReduce并行實(shí)現(xiàn)算法為:
(1)Map階段:各Map Task從輸入分片中解析出數(shù)據(jù),并將數(shù)據(jù)中行鍵包含指定MMSI的數(shù)據(jù)轉(zhuǎn)換為鍵值對(duì)<行鍵,經(jīng)緯度>;
(2)Reduce階段。各Reduce Task合并Map輸出,將相同鍵的值合并,并用矩陣表示,得新鍵值對(duì)<行鍵,矩陣>。
3.3.2 軌跡聚類分析
軌跡聚類分析合并相似軌跡形成航行線路,流程圖如圖2所示。
圖2 軌跡聚類分析流程圖
(1)準(zhǔn)備階段。將第一個(gè)鍵值對(duì)的矩陣中軌跡膨脹并去重,添加到軌跡庫,該軌跡ID為1,計(jì)數(shù)1,并保存日期;
(2)對(duì)比階段。將下一個(gè)鍵值對(duì)對(duì)應(yīng)矩陣與軌跡庫中矩陣按ID對(duì)比,得鍵值對(duì)<重合率,ID >。重合率ρ表示兩矩陣對(duì)應(yīng)位均非零的元素個(gè)數(shù)占庫中矩陣非零元素個(gè)數(shù)的百分比;
(3)判斷階段。分析各鍵值對(duì)<重合率,ID>,若重合率不小于閾值ρ0,則單AIS軌跡庫中該ID對(duì)應(yīng)計(jì)數(shù)加1,添加日期;若所有鍵值對(duì)重合率均<ρ0,則將新軌跡膨脹去重化后添加到單AIS軌跡庫中,并計(jì)數(shù)1,保存日期。判斷下一鍵值對(duì),轉(zhuǎn)步驟(2);
(4)MapReduce并行階段。當(dāng)軌跡庫中軌跡數(shù)目達(dá)到N時(shí),開啟并行處理。由Hadoop將軌跡庫數(shù)據(jù)分于各Map Task,生成鍵值對(duì)<重合率,ID >。按重合率排序鍵值對(duì),執(zhí)行判斷操作。
將每個(gè)MMSI號(hào)對(duì)應(yīng)的軌跡庫中不同軌跡存入單AIS軌跡知識(shí)庫“MMSI+ID”行“路線軌跡”列中,并按月將軌跡計(jì)數(shù)除以總軌跡數(shù)得該軌跡占總軌跡百分比存入“軌跡占比”列,將該軌跡出現(xiàn)過的日期存入“日期”列。分別計(jì)算每個(gè)MMSI號(hào)的歷史軌跡,生成單AIS軌跡知識(shí)庫。
3.4 異常軌跡知識(shí)庫生成
異常軌跡知識(shí)庫生成分成3大部分:首先利用異常軌跡分析算法分析全部雷達(dá)數(shù)據(jù)獲得所有異常軌跡;其次利用軌跡聚類分析方法將異常軌跡聚類,發(fā)現(xiàn)相似軌跡出現(xiàn)規(guī)律;最后將每一類軌跡存儲(chǔ)到“軌跡”列中,“日期”列存儲(chǔ)出現(xiàn)過的日期。對(duì)日期按月統(tǒng)計(jì)求各月出現(xiàn)次數(shù)占總次數(shù)的百分比,得該類異常軌跡出現(xiàn)月規(guī)律,存儲(chǔ)到“規(guī)律列”。并在“備注”列中保存該類異常軌跡出現(xiàn)過的MMSI號(hào)、國籍等信息作為備用。
異常軌跡可以根據(jù)是否有MMSI號(hào)分為兩類,分析目標(biāo)軌跡是否異常流程如圖3所示。
圖3 新軌跡異常分析流程圖
(1)對(duì)于無關(guān)聯(lián)AIS航跡信息。首先根據(jù)其出現(xiàn)日期、航速、航向等,分別在兩個(gè)全軌跡知識(shí)庫中找到對(duì)應(yīng)時(shí)段的目標(biāo)分布并逐個(gè)對(duì)比,計(jì)算軌跡平均頻率和重合率,方法如下:軌跡的平均頻率為
(1)
軌跡重合率為
(2)
其中,新目標(biāo)軌跡用坐標(biāo)表示為(G1,G2,…,Gz);Gi表示一個(gè)坐標(biāo),其在目標(biāo)分布中出現(xiàn)的頻率為pi;pi為零的個(gè)數(shù)為n;z為軌跡坐標(biāo)總個(gè)數(shù)。判定異常頻率的閾值為p0,異常重合率的閾值為μ0。
1)若存在軌跡分布滿足p≥p0且μ≥μ0,則判定目標(biāo)軌跡正常,進(jìn)一步判斷:若該目標(biāo)分布為全AIS目標(biāo)軌跡分布,可獲得目標(biāo)疑似國籍,與單AIS軌跡知識(shí)庫中的航行線路逐條對(duì)比,獲得疑似MMSI號(hào)及航行規(guī)律;若該軌跡分布為無關(guān)聯(lián)AIS全航跡軌跡分布,判定為疑似小目標(biāo)或軍事目標(biāo);
2)若不存在軌跡分布滿足p≥p0且μ≥μ0,則判定目標(biāo)軌跡異常,可與異常軌跡庫中的軌跡逐個(gè)對(duì)比,尋找疑似已歸類異常軌跡,并查找該類軌跡的出現(xiàn)頻率和更多歷史軌跡信息。
(2)對(duì)于AIS信息或關(guān)聯(lián)AIS的航跡信息,首先與單AIS軌跡知識(shí)庫中該MMSI號(hào)下對(duì)應(yīng)月占比>10%的航行路線依次對(duì)比。
1)若重合比例均小于一定閾值 ,在單AIS軌跡知識(shí)庫不充分的情況下,與全AIS軌跡知識(shí)庫中對(duì)應(yīng)的目標(biāo)分布對(duì)比,如果存在軌跡分布滿足p≥p0且μ≥μ0,則疑似正常,否則均判定為異常軌跡,與異常軌跡知識(shí)庫中的軌跡逐條對(duì)比,尋找該軌跡曾經(jīng)的出現(xiàn)規(guī)律,并查找該軌跡歷史信息,獲取更多軌跡信息;
2)若存在重合比大于一定閾值,則取相似度最高的軌跡為目標(biāo)疑似航行線路,并獲得該軌跡出現(xiàn)的頻率。
分析疑似MMSI和異常航跡時(shí)需要并行處理。
實(shí)驗(yàn)數(shù)據(jù)為某雷達(dá)基站2014年全年的AIS數(shù)據(jù)和航跡數(shù)據(jù)。
5.1 異常目標(biāo)發(fā)現(xiàn)
通過對(duì)2014年雷達(dá)數(shù)據(jù)的分析,共發(fā)現(xiàn)1 464類異常軌跡。分為以下兩個(gè)場(chǎng)景。
場(chǎng)景1 使用單AIS目標(biāo)軌跡知識(shí)庫。
圖4中的軌跡均是MMSI號(hào)為210296000目標(biāo)的航行軌跡,其中粗線為主要航行線路分布,圓圈中細(xì)線僅有一小部分與常見航行線路重合,經(jīng)計(jì)算p=19%,為異常軌跡。
圖4 基于MMSI異常軌跡對(duì)比圖
場(chǎng)景2 使用全AIS目標(biāo)軌跡知識(shí)庫或全航跡目標(biāo)軌跡知識(shí)庫。
圖5中淺色區(qū)域?yàn)槿獳IS軌跡分布,深色軌跡橫穿灰色區(qū)域,并有一部分處于無目標(biāo)分布區(qū)域,經(jīng)計(jì)算P=45且μ=13%,為異常軌跡。
圖5 基于全AIS異常軌跡對(duì)比圖
5.2 處理效率對(duì)比
對(duì)比集中式處理,3節(jié)點(diǎn)分布式處理,5節(jié)點(diǎn)分布式處理生成4個(gè)知識(shí)庫所需時(shí)間,如表5所示。
表5 不同框架生成軌跡知識(shí)庫時(shí)間對(duì)比表 /h
結(jié)論:經(jīng)對(duì)比發(fā)現(xiàn),3節(jié)點(diǎn)分布式框架處理速度略好于集中式框架,5節(jié)點(diǎn)分布式框架處理能力有較大提升。原因在于分布式有更多數(shù)據(jù)傳輸與處理,3節(jié)點(diǎn)分布式框架只有2個(gè)數(shù)據(jù)節(jié)點(diǎn)實(shí)現(xiàn)數(shù)據(jù)處理,5節(jié)點(diǎn)分布式有4個(gè)數(shù)據(jù)節(jié)點(diǎn),處理能力近乎3節(jié)點(diǎn)的兩倍。5節(jié)點(diǎn)分布式處理框架基本滿足了異常軌跡建庫的時(shí)間需求。
本文提出的基于Hadoop平臺(tái)的分布式雷達(dá)數(shù)據(jù)處理系統(tǒng)實(shí)現(xiàn)了海量雷達(dá)數(shù)據(jù)的存儲(chǔ),并從中發(fā)現(xiàn)目標(biāo)運(yùn)動(dòng)規(guī)律,生成目標(biāo)軌跡知識(shí)庫,進(jìn)一步利用異常軌跡分析算法高效地實(shí)現(xiàn)了軌跡的異常判斷,獲取異常軌跡規(guī)律,為指戰(zhàn)員判斷敵對(duì)偽裝目標(biāo)提供了參考。此外,本文還有很多需要改進(jìn)之處,一方面航跡數(shù)據(jù)和AIS數(shù)據(jù)還有很多潛在價(jià)值值得挖掘;另一方面,需要尋找更好的方法將軌跡化簡合并,減少軌跡庫中的目標(biāo)單元。
[1] 潘家財(cái),邵哲平,姜青山. 數(shù)據(jù)挖掘在海上交通特征分析中的應(yīng)用研究[J].中國航海, 2010, 33(2): 61-62.
[2] 陳勇.一種目標(biāo)航跡數(shù)據(jù)聚類挖掘分析方法[J].無線電工程, 2015(3):22-24.
[3] 孟慶鵬,章碧,駱彬. 雷達(dá)及其信號(hào)信息數(shù)據(jù)庫的設(shè)計(jì)[J].雷達(dá)與對(duì)抗,2010,30(2): 60-63.
[4] 王艷軍,王曉峰.AIS和北斗終端組合在船舶動(dòng)態(tài)監(jiān)控中的應(yīng)用[J].上海海事大學(xué)學(xué)報(bào), 2011,32(4):17-21.
[5] Sun Z,Jin H,Wang X, et al. Trajectory outlier detection: a partition-and-detect framework[C].Beijing:IEEE International Conference on Data Engineering. IEEE Computer Society, 2008.
[6] 朱鑰,賈思奇,張俊魁,等. 基于Hadoop的城市交通碳排放數(shù)據(jù)挖掘研究[J].計(jì)算機(jī)應(yīng)用研究,2011, 28(11):4213-4215.
[7] Yu Xu,Pekka Kostamaa,Yan Qi,et al.A hadoop based distributed loading approach to parallel data warehouses[C]. New York: Proceedings of the 2011 International Conference on Management,2011.
[8] Apache Software Foundation. Hadoop [EB/OL]. (2013-10-15)[2015-04-15]http://hadoop.apache.org.
[9] 姜文.基于Hadoop平臺(tái)的數(shù)據(jù)分析和應(yīng)用[D].北京:北京郵電大學(xué),2011.
[10] 邱榮太.基于Hadoop平臺(tái)的MapReduee應(yīng)用研究[D].鄭州:河南理工大學(xué),2009.
[11] 于恒友,劉波,彭子平.基于HBase的輸電線路綜合數(shù)據(jù)存儲(chǔ)方案設(shè)計(jì)[J].電力科學(xué)與技術(shù)學(xué)報(bào),2014(2):58-64.
[12] 陳慶奎,周利珍.基于HBase的大規(guī)模無線傳感網(wǎng)絡(luò)數(shù)據(jù)存儲(chǔ)系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2012,32(7):1920-1923.
[13] 李振舉,李學(xué)軍,謝劍薇,等. 基于HBase的海量地形數(shù)據(jù)存儲(chǔ)[J].計(jì)算機(jī)應(yīng)用,2015, 35(7):1849-1853.
[14] 范建永,龍明,熊偉.基于HBase的矢量空間數(shù)據(jù)分布式存儲(chǔ)研究[J].地理與地理信息科學(xué),2012,28(5):39-42.
[15] Cheng P, An J. The key as dictionary compression method of inverted index table under the hbase database[J]. Journal of Software, 2013, 8(5):1086-1093.
The Abnormal Path Analysis of Massive Radar Data
MENG Fanjun,CAO Wei,GUAN Zhiqiang
(Human Resources Department,Nanjing Marine Radar Institute,Nanjing 210000,China)
It’s difficult to use civil means or radar characteristics to distinguish Hostile target diving our key sea areas for hostile activities. Through the distributed parallel processing of radar data, summing up the rules of various types of target activities can analyze and find the camouflage targets. In view of the massive characteristics of radar data, the distributed processing framework Hadoop is used to process the raw radar data. The path knowledge bases are generated,which is used to determine whether the trajectory is abnormal with the abnormal path analysis algorithm. The results show that the proposed method can achieve the abnormal trajectory analysis of the whole year radar data within about three days, and the analysis speed will increase by increasing the node.
radar data; distributed storage; parallel process; abnormal path
2016- 03- 13
孟凡君(1991-),男,碩士研究生。研究方向:雷達(dá)數(shù)據(jù)處理等。曹偉(1968-),男,博士,研究員。研究方向:雷達(dá)數(shù)據(jù)處理等。管志強(qiáng)(1982-),男,博士,高級(jí)工程師。研究方向:模式識(shí)別等。
10.16180/j.cnki.issn1007-7820.2017.01.012
TN957.52
A
1007-7820(2017)01-041-05