本發(fā)明屬于軌跡預(yù)測(cè),具體涉及一種基于多注意協(xié)同網(wǎng)絡(luò)的多維變量場(chǎng)景下飛行器軌跡預(yù)測(cè)方法。
背景技術(shù):
1、仿真實(shí)體是構(gòu)成分布式仿真系統(tǒng)的基本功能單元,分布式仿真的主要目的是在參試的仿真實(shí)體間構(gòu)建出一個(gè)真實(shí)、感知一致的虛擬環(huán)境。當(dāng)試驗(yàn)中的某一實(shí)體狀態(tài)發(fā)生變化或者是在虛擬環(huán)境中的位置發(fā)生變化時(shí),所有的參試實(shí)體能夠及時(shí)的發(fā)現(xiàn)實(shí)體狀態(tài)的更新。然而由于網(wǎng)絡(luò)通信容量限制以及信息傳輸?shù)牟淮_定延遲,往往導(dǎo)致不同仿真實(shí)體對(duì)同一實(shí)體狀態(tài)更新的觀測(cè)不能達(dá)到一致,從而導(dǎo)致了分布式仿真過(guò)程中的時(shí)空不一致問(wèn)題。隨著分布式仿真系統(tǒng)向著規(guī)模大、實(shí)體多、地域廣、結(jié)構(gòu)異、時(shí)間長(zhǎng)的方向發(fā)展,仿真過(guò)程表現(xiàn)的細(xì)致程度也越來(lái)越高,分布式仿真系統(tǒng)中的時(shí)空不一致問(wèn)題更加突出。大規(guī)模分布式仿真系統(tǒng)對(duì)于時(shí)空一致性有著很高的要求,時(shí)空不一致的存在會(huì)導(dǎo)致仿真實(shí)體間認(rèn)知的不一致,產(chǎn)生因果顛倒,理解歧異等不良影響,破壞仿真的真實(shí)感和有效性,影響仿真結(jié)果的可信度。
2、為了解決時(shí)空不一致問(wèn)題,推算定位算法在實(shí)體之間利用預(yù)測(cè)技術(shù),實(shí)現(xiàn)降低網(wǎng)絡(luò)傳輸不穩(wěn)定所造成的時(shí)空不一致補(bǔ)償,從而保證了仿真的真實(shí)性和結(jié)果的可信度。但是其僅依賴短周期歷史數(shù)據(jù)實(shí)現(xiàn)實(shí)體狀態(tài)預(yù)測(cè),難以從時(shí)間與空間維度挖掘各類高機(jī)動(dòng)目標(biāo)的運(yùn)動(dòng)特征,無(wú)法處理預(yù)測(cè)對(duì)象運(yùn)動(dòng)行為的突變,影響了實(shí)體狀態(tài)預(yù)測(cè)的準(zhǔn)確性,因此需要其它更高效準(zhǔn)確的軌跡預(yù)測(cè)方法來(lái)對(duì)分布式仿真系統(tǒng)中的飛行器等仿真實(shí)體進(jìn)行軌跡預(yù)測(cè)。
3、現(xiàn)有的飛行器軌跡預(yù)測(cè)方法大多基于預(yù)定義的運(yùn)動(dòng)模型,使用馬爾可夫鏈、卡爾曼濾波等算法進(jìn)行軌跡預(yù)測(cè)。然而飛行器在執(zhí)行任務(wù)時(shí),往往處于復(fù)雜的非線性環(huán)境中,其運(yùn)動(dòng)行為不僅受到飛行器自身的動(dòng)力學(xué)約束,還受到諸如氣象條件、地形地貌、環(huán)境干擾等多種外部因素的影響。這些因素使得飛行器的運(yùn)動(dòng)狀態(tài)變得難以預(yù)測(cè),傳統(tǒng)的物理模型在面對(duì)如此復(fù)雜的環(huán)境時(shí),難以精確描述飛行器的真實(shí)運(yùn)動(dòng)行為,導(dǎo)致預(yù)測(cè)精度下降。此外,物理模型的構(gòu)建通常依賴于大量的假設(shè)和簡(jiǎn)化,當(dāng)這些假設(shè)不再成立時(shí),模型的適用性和準(zhǔn)確性也會(huì)隨之降低。近年來(lái),隨著機(jī)器學(xué)習(xí)和深度學(xué)習(xí)方法的發(fā)展,使用數(shù)據(jù)驅(qū)動(dòng)的方法來(lái)學(xué)習(xí)飛行器的復(fù)雜運(yùn)動(dòng)規(guī)律以提高軌跡預(yù)測(cè)的準(zhǔn)確性變得可行,因此基于深度神經(jīng)網(wǎng)絡(luò)的軌跡跟蹤和預(yù)測(cè)算法越來(lái)越受到學(xué)者的關(guān)注。
4、基于數(shù)據(jù)驅(qū)動(dòng)的軌跡預(yù)測(cè)方法依賴于大量歷史數(shù)據(jù)和實(shí)時(shí)數(shù)據(jù)來(lái)進(jìn)行飛行器運(yùn)動(dòng)的預(yù)測(cè),在處理復(fù)雜非線性環(huán)境中具有顯著優(yōu)勢(shì)。數(shù)據(jù)驅(qū)動(dòng)方法通過(guò)大量歷史數(shù)據(jù)進(jìn)行學(xué)習(xí),不需要對(duì)飛行器的物理特性有深入了解,這不僅降低了建模的難度,也提高了模型的適應(yīng)性,可以有效應(yīng)對(duì)多變的飛行任務(wù)場(chǎng)景。然而數(shù)據(jù)驅(qū)動(dòng)方法在多變量預(yù)測(cè)上仍存在顯著不足,在處理多變量數(shù)據(jù)時(shí),這些方法難以充分建模變量之間的復(fù)雜關(guān)系,常常需要進(jìn)行復(fù)雜的特征選擇,否則容易導(dǎo)致信息丟失或噪聲引入,導(dǎo)致預(yù)測(cè)的準(zhǔn)確性差。
5、因此,開發(fā)一種多維變量場(chǎng)景下的飛行器軌跡預(yù)測(cè)技術(shù),對(duì)于保障抗干擾性能、提升虛實(shí)協(xié)同測(cè)試過(guò)程中各類資源所認(rèn)知飛行器狀態(tài)的時(shí)空一致性、降低飛行器狀態(tài)認(rèn)知滯后對(duì)復(fù)雜環(huán)境構(gòu)建逼真度的影響具有重要意義。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的是為解決在多變量場(chǎng)景下現(xiàn)有基于數(shù)據(jù)驅(qū)動(dòng)的預(yù)測(cè)方法難以充分建模變量之間的復(fù)雜關(guān)系,導(dǎo)致預(yù)測(cè)的準(zhǔn)確性差的問(wèn)題,而提出了一種基于多注意協(xié)同網(wǎng)絡(luò)的多維變量場(chǎng)景下飛行器軌跡預(yù)測(cè)方法。
2、本發(fā)明為解決上述技術(shù)問(wèn)題所采取的技術(shù)方案是:一種基于多注意協(xié)同網(wǎng)絡(luò)的多維變量場(chǎng)景下飛行器軌跡預(yù)測(cè)方法,所述方法具體包括以下步驟:
3、步驟一、采集飛行器的m組軌跡數(shù)據(jù),且每組軌跡數(shù)據(jù)均包括時(shí)間數(shù)據(jù)、速度數(shù)據(jù)、位置數(shù)據(jù)和航向角數(shù)據(jù);
4、對(duì)采集的各組軌跡數(shù)據(jù)分別進(jìn)行預(yù)處理后,再對(duì)預(yù)處理后的各組軌跡數(shù)據(jù)中的位置數(shù)據(jù)進(jìn)行重構(gòu),得到處理后的各組軌跡數(shù)據(jù);
5、步驟二、對(duì)處理后的各組軌跡數(shù)據(jù)進(jìn)行聚類,分別得到各類軌跡數(shù)據(jù);
6、步驟三、為每類軌跡數(shù)據(jù)分別構(gòu)建一個(gè)基于多注意協(xié)同網(wǎng)絡(luò)的預(yù)測(cè)模型,預(yù)測(cè)模型內(nèi)包括t-net和np-net兩個(gè)分支,且將每類軌跡數(shù)據(jù)分別作為對(duì)應(yīng)預(yù)測(cè)模型的訓(xùn)練集;
7、利用訓(xùn)練集對(duì)各個(gè)預(yù)測(cè)模型進(jìn)行訓(xùn)練后,獲得訓(xùn)練好的各個(gè)預(yù)測(cè)模型;
8、步驟四、將待預(yù)測(cè)數(shù)據(jù)作為對(duì)應(yīng)的訓(xùn)練好的預(yù)測(cè)模型的輸入,獲得軌跡預(yù)測(cè)結(jié)果。
9、進(jìn)一步地,所述對(duì)采集的各組軌跡數(shù)據(jù)分別進(jìn)行預(yù)處理,具體為:
10、剔除速度數(shù)據(jù)、位置數(shù)據(jù)和航向角數(shù)據(jù)中的無(wú)效值,并過(guò)濾速度數(shù)據(jù)、位置數(shù)據(jù)和航向角數(shù)據(jù)中的噪聲。
11、進(jìn)一步地,所述對(duì)預(yù)處理后的各組軌跡數(shù)據(jù)中的位置數(shù)據(jù)進(jìn)行重構(gòu),具體為:
12、以第m'組軌跡數(shù)據(jù)中的位置數(shù)據(jù)為例:
13、步驟一一、設(shè)定距離閾值;
14、步驟一二、計(jì)算兩個(gè)相鄰時(shí)間點(diǎn)所對(duì)應(yīng)的位置數(shù)據(jù)之間的距離;
15、若兩個(gè)相鄰時(shí)間點(diǎn)所對(duì)應(yīng)的位置數(shù)據(jù)之間的距離大于設(shè)定的距離閾值,則兩個(gè)相鄰時(shí)間點(diǎn)標(biāo)記為間斷點(diǎn);
16、若兩個(gè)相鄰時(shí)間點(diǎn)所對(duì)應(yīng)的位置數(shù)據(jù)之間的距離小于等于設(shè)定的距離閾值,則不需要處理;
17、對(duì)第m'組軌跡數(shù)據(jù)中每?jī)蓚€(gè)相鄰時(shí)間點(diǎn)對(duì)應(yīng)的位置數(shù)據(jù)分別進(jìn)行判斷后,得到第m'組軌跡的位置數(shù)據(jù)中的全部間斷點(diǎn);
18、步驟一三、分別獲得每?jī)蓚€(gè)相鄰間斷點(diǎn)之間的數(shù)據(jù)點(diǎn)數(shù),并將獲得的數(shù)據(jù)點(diǎn)數(shù)分別與軌跡噪聲閾值進(jìn)行比較;
19、若兩個(gè)相鄰間斷點(diǎn)之間的數(shù)據(jù)點(diǎn)數(shù)大于軌跡噪聲閾值,則將兩個(gè)相鄰間斷點(diǎn)以及兩個(gè)相鄰間斷點(diǎn)之間數(shù)據(jù)點(diǎn)對(duì)應(yīng)的軌跡數(shù)據(jù)保存為一組新的軌跡數(shù)據(jù);
20、若兩個(gè)相鄰間斷點(diǎn)之間的數(shù)據(jù)點(diǎn)數(shù)小于等于軌跡噪聲閾值,則將兩個(gè)相鄰間斷點(diǎn)以及兩個(gè)相鄰間斷點(diǎn)之間數(shù)據(jù)點(diǎn)對(duì)應(yīng)的軌跡數(shù)據(jù)視為噪聲剔除;
21、步驟一四、從第m'組軌跡數(shù)據(jù)中去除步驟一三保存的新軌跡數(shù)據(jù)以及步驟一三剔除的噪聲數(shù)據(jù),將剩余的數(shù)據(jù)作為更新后的第m'組軌跡數(shù)據(jù);
22、對(duì)每組軌跡數(shù)據(jù)中的位置數(shù)據(jù)分別進(jìn)行處理后,將更新后的軌跡數(shù)據(jù)和保存的新軌跡數(shù)據(jù)作為處理后的各組軌跡數(shù)據(jù)。
23、進(jìn)一步地,所述對(duì)處理后的各組軌跡數(shù)據(jù)進(jìn)行聚類是基于各組軌跡數(shù)據(jù)中的位置數(shù)據(jù)進(jìn)行的,聚類過(guò)程為:
24、步驟二一、基于處理后的各組軌跡數(shù)據(jù)中的位置數(shù)據(jù)計(jì)算距離矩陣d:
25、
26、其中,軌跡集合et是由處理后的各組軌跡數(shù)據(jù)組成的集合,etj′是軌跡集合et中的第j′組軌跡數(shù)據(jù),j′=1,2,…,n,n是集合et中軌跡數(shù)據(jù)的組數(shù),是集合et中第1組軌跡數(shù)據(jù)與第j′組軌跡數(shù)據(jù)的相似度;
27、步驟二二、初始化聚類中心個(gè)數(shù)i′=1;
28、步驟二三、根據(jù)距離矩陣d,將軌跡集合et中的各組軌跡數(shù)據(jù)聚為i′類;
29、步驟二四、根據(jù)聚類結(jié)果計(jì)算聚類誤差sse,若聚類誤差收斂,則得到最終的聚類結(jié)果,若聚類誤差不收斂,則令i′=i′+1,返回執(zhí)行步驟二三。
30、進(jìn)一步地,所述集合et中第1組軌跡數(shù)據(jù)與第j′組軌跡數(shù)據(jù)的相似度的計(jì)算方法為:
31、
32、其中,h(et1,etj′)是中間變量,a是第1組軌跡數(shù)據(jù)中的位置點(diǎn),b是第j′組軌跡數(shù)據(jù)中的位置點(diǎn);
33、
34、進(jìn)一步地,所述聚類誤差sse的計(jì)算過(guò)程為:
35、
36、其中,ci′表示第i′個(gè)聚類,p代表ci′中任意一組軌跡數(shù)據(jù)中的位置數(shù)據(jù),mi′為屬于ci′的全部組軌跡數(shù)據(jù)中位置數(shù)據(jù)的質(zhì)心,k′是類別總數(shù)。
37、進(jìn)一步地,所述預(yù)測(cè)模型的訓(xùn)練過(guò)程為:
38、以任意一個(gè)預(yù)測(cè)模型為例
39、步驟三一、利用當(dāng)前預(yù)測(cè)模型的訓(xùn)練集中的每組軌跡數(shù)據(jù)均構(gòu)造一組目標(biāo)變量序列和非預(yù)測(cè)變量序列;
40、其中,將一組目標(biāo)變量序列和非預(yù)測(cè)變量序列分別表示為和xt是軌跡數(shù)據(jù)中第t個(gè)時(shí)間點(diǎn)對(duì)應(yīng)的非預(yù)測(cè)變量,分別是xt中的第1個(gè),第2個(gè),第n個(gè)變量;
41、其中,t是一組軌跡數(shù)據(jù)中的時(shí)間點(diǎn)個(gè)數(shù);
42、步驟三二、將非預(yù)測(cè)變量序列作為np-net分支的輸入,通過(guò)np-net分支輸出在各時(shí)間點(diǎn)的隱藏狀態(tài)
43、步驟三三、t-net分支內(nèi)包括編碼器模塊和解碼器模塊,編碼器模塊內(nèi)包括t個(gè)知識(shí)增強(qiáng)型lstm單元,解碼器模塊內(nèi)包括δ個(gè)知識(shí)增強(qiáng)型lstm單元;
44、將np-net分支輸出的隱藏狀態(tài)和目標(biāo)變量序列作為編碼器模塊的輸入,通過(guò)編碼器模塊輸出目標(biāo)變量序列的隱藏狀態(tài)序列
45、將隱藏表示序列作為解碼器模塊的輸入,解碼器模塊基于時(shí)間注意力機(jī)制輸出隱藏狀態(tài),將解碼器模塊輸出的隱藏狀態(tài)經(jīng)過(guò)多層感知器,通過(guò)多層感知器輸出預(yù)測(cè)結(jié)果;
46、步驟三四、根據(jù)步驟三三輸出的預(yù)測(cè)結(jié)果計(jì)算損失函數(shù),基于損失函數(shù)計(jì)算結(jié)果和反向傳播學(xué)習(xí)算法對(duì)預(yù)測(cè)模型的參數(shù)進(jìn)行調(diào)整,直至達(dá)到設(shè)置的最大訓(xùn)練次數(shù)時(shí)停止訓(xùn)練,獲得訓(xùn)練好的預(yù)測(cè)模型。
47、進(jìn)一步地,所述np-net分支內(nèi)包括變量蒸餾注意力模塊和lstm模塊,其中,變量蒸餾注意力模塊內(nèi)包括t個(gè)變量蒸餾注意力單元,lstm模塊內(nèi)包括t個(gè)lstm單元;
48、np-net分支的工作過(guò)程具體為:
49、每個(gè)變量蒸餾注意力單元內(nèi)均包括兩層前向神經(jīng)網(wǎng)絡(luò),第t個(gè)變量蒸餾注意力單元的第一層前向神經(jīng)網(wǎng)絡(luò)將xt中的每個(gè)變量分別映射到m維空間,得到xt中每個(gè)變量的隱藏表示:
50、
51、其中,tanh是激活函數(shù),是的隱藏表示,k=1,2,…,n,是嵌入向量,是偏置參數(shù);
52、第二層前向神經(jīng)網(wǎng)絡(luò)分別為每個(gè)隱藏表示分配權(quán)重:
53、
54、其中,是隱藏表示的權(quán)重,是變階上下文向量;
55、基于和將xt轉(zhuǎn)換為空間語(yǔ)義序列
56、
57、將空間語(yǔ)義序列作為第t個(gè)lstm單元的輸入,通過(guò)第t個(gè)lstm單元輸出隱藏狀態(tài)
58、
59、其中,是第t-1個(gè)lstm單元輸出的隱藏狀態(tài),是第t個(gè)lstm單元輸出的隱藏狀態(tài),it是第t個(gè)lstm單元的輸入門的輸出,ft是第t個(gè)lstm單元的遺忘門的輸出,ot是第t個(gè)lstm單元的輸出門的輸出,σ表示sigmoid激活函數(shù),和是偏置參數(shù),⊙是逐元素乘法,wi、wf、wo和wc是循環(huán)權(quán)重,ui、uf、uo和uc是輸入權(quán)重,ct是第t個(gè)lstm單元的狀態(tài),ct-1是第t-1個(gè)lstm單元的狀態(tài),為中間變量。
60、進(jìn)一步地,所述t-net分支的工作過(guò)程為:
61、步驟1、將隱藏狀態(tài)和目標(biāo)變量序列yt作為編碼器模塊中第t個(gè)知識(shí)增強(qiáng)型lstm單元的輸入,即則
62、
63、其中,是編碼器模塊中第t-1個(gè)知識(shí)增強(qiáng)型lstm單元輸出的隱藏狀態(tài),是編碼器模塊中第t個(gè)知識(shí)增強(qiáng)型lstm單元的候選狀態(tài);
64、根據(jù)隱藏狀態(tài)和生成第t個(gè)知識(shí)增強(qiáng)型lstm單元的隱藏狀態(tài):
65、
66、其中,表示矩陣的轉(zhuǎn)置,是權(quán)重參數(shù),是輔助上下文向量,st是的重要性分?jǐn)?shù),γt是的權(quán)重;
67、
68、其中,wa和wh是權(quán)重參數(shù),是編碼器模塊中第t個(gè)知識(shí)增強(qiáng)型lstm單元輸出的隱藏狀態(tài);
69、步驟2、將作為解碼器模塊中各個(gè)知識(shí)增強(qiáng)型lstm單元的輸入,對(duì)于解碼器模塊中的第τ個(gè)知識(shí)增強(qiáng)型lstm單元,基于時(shí)間注意力機(jī)制、和解碼器模塊中第τ-1個(gè)知識(shí)增強(qiáng)型lstm單元的隱藏狀態(tài)dτ-1生成上下文向量hcτ:
70、
71、其中,和是權(quán)重參數(shù),⊙是逐元素乘法,et是的重要性得分,βt是的注意力權(quán)重;
72、根據(jù)βt對(duì)進(jìn)行加權(quán)求和生成上下文向量hcτ:
73、
74、步驟3、將第τ-1個(gè)知識(shí)增強(qiáng)型lstm單元的隱藏狀態(tài)經(jīng)過(guò)多層感知器,通過(guò)多層感知器輸出第τ-1個(gè)知識(shí)增強(qiáng)型lstm單元的預(yù)測(cè)結(jié)果,將第τ-1個(gè)知識(shí)增強(qiáng)型lstm單元的預(yù)測(cè)結(jié)果與上下文向量hcτ進(jìn)行級(jí)聯(lián)操作;
75、將級(jí)聯(lián)操作結(jié)果、隱藏狀態(tài)dτ-1和隱藏狀態(tài)作為第τ個(gè)知識(shí)增強(qiáng)型lstm單元的輸入,即
76、其中,[:]是級(jí)聯(lián)操作,是解碼器模塊中第τ-1個(gè)知識(shí)增強(qiáng)型lstm單元的預(yù)測(cè)結(jié)果,dτ是解碼器模塊中第τ個(gè)知識(shí)增強(qiáng)型lstm單元的隱藏狀態(tài);
77、將隱藏狀態(tài)dτ經(jīng)過(guò)多層感知器,通過(guò)多層感知器輸出第τ個(gè)知識(shí)增強(qiáng)型lstm單元的預(yù)測(cè)結(jié)果。
78、更進(jìn)一步地,所述將隱藏狀態(tài)dτ經(jīng)過(guò)多層感知器,通過(guò)多層感知器輸出第τ個(gè)知識(shí)增強(qiáng)型lstm單元的預(yù)測(cè)結(jié)果,具體為:
79、
80、其中,是權(quán)重參數(shù),是第τ個(gè)知識(shí)增強(qiáng)型lstm單元的預(yù)測(cè)結(jié)果。
81、本發(fā)明的有益效果是:
82、本發(fā)明首先設(shè)計(jì)一個(gè)變量蒸餾注意機(jī)制作為第一層網(wǎng)絡(luò),變量蒸餾注意力網(wǎng)絡(luò)弱化了非預(yù)測(cè)變量的負(fù)面影響,將當(dāng)前序列轉(zhuǎn)換為空間語(yǔ)義。而且設(shè)計(jì)了一種新的長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)變體kelstm來(lái)計(jì)算變量間的交互作用,緩解信息沖突,區(qū)分變量對(duì)任務(wù)的時(shí)間影響。本發(fā)明方法可以減少無(wú)關(guān)變量的負(fù)面影響,強(qiáng)調(diào)重要變量對(duì)預(yù)測(cè)的貢獻(xiàn),成功地捕捉了過(guò)去的目標(biāo)變量、非預(yù)測(cè)變量與即將到來(lái)的目標(biāo)之間的潛在相互作用,特別是目標(biāo)和非預(yù)測(cè)變量的影響之間的細(xì)微差異,本發(fā)明方法可以在不需要進(jìn)行復(fù)雜的特征選擇的前提下,提高預(yù)測(cè)的準(zhǔn)確性,而且本發(fā)明方法在復(fù)雜的非線性環(huán)境中仍然具有很好的適應(yīng)性。