涂 杰 黎 杰 劉 凱
(1.中國人民解放軍92246部隊 上海 200000)(2.海軍航空大學 煙臺 264001)
在分布式交互仿真中,仿真實體需要在網絡中及時發布信息,以保證各仿真節點中所存儲實體的一致性、連續性和平滑性。在網絡帶寬有限和實體數量較多的情況下,必須要采用一定的技術手段,一方面保證仿真過程中信息連貫性,仿真實體運動的平滑性和連續性,另一方面盡量降低對網絡帶寬帶來的消耗。航位推算(DR)算法是目前最常采用的一種技術,該算法通過對實體運行進行預測來減少信息的傳輸量,降低網絡帶寬需求。
目前DR 算法是基于實體運動物理量,結合固定運動模型,完成對仿真實體運動狀態的推測,當推測出的仿真實體運動狀態與實際仿真實體運動狀態的誤差超出閾值時,則進行相應的誤差補償,從而在保持仿真實體運動平滑性和連續性的前提下,降低對通信資源的消耗[1]。然而,抽象出的固定運動模型難以對仿真實體的復雜的運動狀態進行精確推測,制約著DR 算法的整體性能。深度學習技術可以在目標函數的引導下,基于深度神經網絡實現對任意復雜函數的擬合,從而為我們持續更新運動模型,提升模型推算精度,提供了新的思路。
DR 算法通過對仿真實體運動信息的預測,減少仿真過程中的信息傳輸資源開銷[2]。DR 算法的基本原理是,根據仿真實體的運動特征,抽象出簡化的運動模型,并設置閾值;利用抽象出的運動模型,根據最近一次發布的仿真實體運動信息,對仿真實體的運動狀態進行預測;如果推測出的仿真實體運動信息與發布的真實信息的誤差在閾值范圍內,則不進行信息推送,如果超出閾值,則需要進行信息傳輸,對推測的運動信息進行補償;在信息推送的間隙,則通過仿真實體最后接受的信息和抽象出的運動模型對仿真實體運動狀態進行推測[3~5]。
DR 算法的研究主要集中在,構建仿真實體的運動預測模型和對如何設置閾值的研究。對于仿真實體運動預測模型的研究,主要做法是在對仿真實體運動模型分析的基礎上進行抽象簡化,進而抽取出有限個運動模式,如勻速直線運動、加減速運動、轉彎等。在實際應用中,通過對運動模式的排列組合,以及接收到的仿真實體的最后運動信息,實現對仿真實體運動狀態的預測。基于簡化運動模式組合的推測模型構建方法,會增加推測值與真實值的偏差,并且隨著對仿真粒度的細化,會使仿真過程中通信資源的開銷大幅增加,嚴重影響仿真過程中,仿真實體運動的平滑性和連續性。以計算資源為代價來降低通信資源開銷是DR算法的核心機理,克服仿真實體高精度模型的構建困難,提供更為準確的仿真實體運動信息推測模型,對DR 算法的效能提升具有重要意義。

圖1 DR算法原理圖
在仿真過程中,為了降低對通信資源的開銷,同時使仿真實體的運動狀態保持良好的平滑性和連續性,采用了DR 算法。然而傳統的仿真實體運動推測模型的構建方式,不能對仿真實體的運動特性進行精確描述,并且大多數仿真實體的運動特性復雜,直接進行高精度的運動模型構建難度較大。傳統方式中,通過仿真引擎得出的真實數據僅能對推測模型得出的數據進行補償修正,卻無法在補償的同時利用差值對整個模型進行更新,使其獲得更優的預測性能,進而無法提升對仿真實體運動狀態的預測性能,進一步降低通信數據量,減輕對通信資源的消耗。
深度神經網絡具有極強的表示能力,能夠在數據的驅動下,通過監督學習的方式,以實際輸出值和期望值之間的誤差為引導,對難以用公式進行描述的模型進行擬合,并依據所擬合的模型能夠對未知狀態進行預測。由于仿真實體的運動狀態信息前后緊密相關,所以本文采用深度學習領域中能夠處理序列信息的經典神經網絡,循環神經網絡(Recurrent Neural Network,RNN)[6~7]。樸素的循環神經網絡能夠處理的數據長度是有限的,較長的數據序列很容易產生梯度爆炸和梯度消失,為了能更好地處理較長的數據序列,可以使用改進后的循環神經網絡,長短時記憶網絡(Long Short Term Memory Network,LSTM)及其相關變體[8~9,20]。
LSTM 是循環神經網絡的一個重要發展成果[16~17],該網絡通過增加一個傳輸狀態c,實現了對長序列的更好處理。典型的LSTM 設置有遺忘門ft、輸入門it和輸出門ot[18~19],傳輸狀態c通過遺忘門ft和輸入門it,能夠對序列數據進行選擇性保留[10,14]。黑色方框內的wf、vf、wi、vi、wg、vgwo、vo被稱為權重系數,對序列數據的保留程度由wf和vf調控,對當前數據的保留程度由wi、vi、wg、vg調控,當前的輸出則由處理后的歷史數據和wo、vo調控。對于各黑色加粗方框內的權重系數矩陣,由預測仿真實體運動狀態和真實運動狀態之間的誤差進行反向傳播,并采用梯度下降的方式進行更新,以提升模型的預測精度[11,15]。LSTM的公式表示如下:
在LSTM-DR 算法中,仿真實體運動狀態預測模型不再是一成不變的,而是利用預測運動狀態與真實運動狀態之間的誤差,持續不斷地的向誤差減小的方向對模型進行更新,從而不斷提升模型的預測精度,減少對運動狀態信息進行通信的需求。

圖2 LSTM算法原理圖
具體的算法流程如圖3所示。在仿真過程中,仿真引擎每推進一個步長,將仿真實體t 時刻的運動狀態數據St被分發給相應的仿真實體,t 時刻之前的運動狀態信息被LSTM 算法進行選擇性的錄入,作為當前模型輸出的依據。

為驗證第3 節提出的LSTM-DR 算法,設置仿真實驗的想定如下,在二維平面內假設艦艇以20海里/h 的速度,航向北偏東30°航行30min,進而增速至25 海里/h 航行30min,然后轉向正東方向同時加速為30 海里/h 行駛30min。得到的實驗結果如圖4所示。

圖4 仿真實體運動狀態信息圖
從圖4 中可以看出,在仿真初期,基于LSTMDR算法的運動模型推算出的艦艇運動狀態與實際狀態有一定差距;第一次艦船運動狀態發生變化時,運動模型推測出的結果與真實結果仍在一條航跡上,但是位置上有些滯后;第二次艦船運動狀態發生了航向和速度兩種變化,在狀態改變的初始階段運動模型的估計精度下降;第二次運動仿真實體運動模型的精度恢復時間要長于第一次仿真實體運動狀態改變時,運動模型推測精度的恢復時間,但是要短于仿真初期模型估計精度的提升時間;仿真實體運動狀態持續時間間隔內,運動模型推測的運動狀態幾乎與發布的仿真實體真實運動狀態完全一致,推測精度高,完全滿足仿真實體運動平滑性和連續性的要求,在這一時間段內幾乎沒有對仿真實體運動信息的通信需求。
對于4.1 節得出的實驗結果,仿真實體運動初始和運動狀態發生急劇變化時,運動狀態推算模型的估計精度不高,是因為基于LSTM-DR 算法的模型需要進行訓練,即利用真實數據與推測數據間的誤差不斷對模型的權重數據進行反向更新,模型才能達到良好的估計精度。仿真實體運動推測模型運動狀態改變的激烈程度增大則模型訓練需要的時間延長,如第二次運動狀態改變,運動模型的精度恢復時間長于第一次仿真實體運動狀態改變時的模型精度恢復時間,但是短于仿真初始階段的模型精度提升時間。這是知識遷移效果所致,深度神經網絡對訓練得到的知識以權重參數的形式保留,在運動狀態變化不激烈的情況下,利用原有的保留知識仍能在一定精度上對仿真實體運動狀態進行估計,并且僅需要少量訓練就可以針對當前運動狀態恢復到原有的估計精度,隨著運動狀態變化激烈程度的增加,模型需要的訓練量則同步增加。
根據上述分析,可以得出如下結論,一是提出的LSTM-DR算法能夠利用誤差對仿真實體運動狀態推算模型進行更新,以達到更高的推算精度;二是在仿真實體運動之初以及運動狀態發生重大變化時,需要真實運動信息數據以盡快提升模型精度,然而在運動狀態不發生重大變化的較長時間間隔內,仿真實體運動模型可以進行高精度的運動狀態推測,幾乎不需要進行任何運動信息推送,通信資源需求大幅降低;三是在運動狀態發生變化時,仿真實體運動狀態推測模型的訓練時間與運動狀態的變化劇烈程度相關。
仿真技術是主要是為了實現對真實物理世界的逼近模擬,而深度神經網絡對模型具有強大的擬合能力[12],兩者的結合必然能夠促進仿真技術新的發展[13]。文中所提出LSTM-DR 算法,利用LSTM對仿真實體運動模型進行構建,相較于傳統的簡單運動模式組合的模型構建方式,能夠對仿真實體復雜運動特性進行更加精確地描述,實現對運動狀態的高精度推算,從而在保證仿真實體良好的運動連續性和平滑性的基礎上,降低對通信資源消耗。