畢文豪,段曉波
西北工業大學,陜西 西安 710072
近年來,隨著信息工程、控制理論、人工智能等技術的不斷發展,無人機(UAV)在軍事領域的應用越來越廣泛。目前,軍用無人機可以完成對地偵察、對地打擊、無人貨運等戰術功能。同時,無人僚機、無人機編隊協同作戰和無人機集群作戰等更高層次作戰功能也在不斷發展中。為了更好地完成上述任務,無人機需要具有根據戰場環境和任務需求進行自主航路規劃的能力。
航路規劃是指在環境約束、飛行性能約束等約束條件下,尋找無人機從起始點到目標點、滿足特定任務指標的飛行航路。航路規劃可以幫助無人機在面對不同任務功能時,以最小的損失(如時間、受損程度等)完成相應的作戰任務,其中主要需要考慮三個方面:(1)面向地形約束,考慮地形變化產生的碰撞威脅;(2)在飛機性能、燃油量和武器性能等約束下規劃合理的飛行航路;(3)降低作戰環境中無人機遇到不確定風險的可能性,如敵方雷達、防空導彈等戰場威脅,提高飛行器安全冗余和作戰效能[1]。
目前,航路規劃主要包含三種方法:一是基于幾何模型搜索的方法,如A*算法[2-3]、Dijkstra算法[4]等;二是基于虛擬勢場的方法,如人工勢場法[5]等;三是基于優化算法的方法,如蟻群算法[6]、遺傳算法[7]、粒子群算法[8]、灰狼算法[9]等。
近年來,人工智能技術的快速發展為無人機航路規劃技術的研究提供了新的思路。參考文獻[10]提出了一種基于Layered PER-DDQN的無人機航路規劃算法,通過戰場環境分層將航路規劃問題分解為地形規避問題和威脅躲避問題,有效解決了無人機在戰場環境中的航路規劃問題。參考文獻[11]提出了一種基于REL-DDPG 的無人機航路規劃算法,有效解決了復雜三維地形環境下的航路規劃問題。
本文利用不同深度強化學習算法的優勢,結合目標網絡模型、競爭網絡模型和優先級經驗重現策略構建PER-D3QN模型,并將其應用于解決戰場環境下無人機航路規劃問題。搭建了包含戰場三維地形和戰場威脅的戰場環境模型,通過與Double DQN、DQN 和A*算法的仿真結果對比,驗證本文算法具有較好的收斂性、穩定性、適用性和實時性。
戰場環境建模是利用數學建模的方法對無人機作戰場景進行抽象化表述。對于戰場環境下無人機航路規劃問題,需要考慮戰場三維地形和戰場威脅。
本文利用數字高程模型(DEM)描述戰場三維地形,該方法利用有限數量的地形高程數據對地面的地形構造進行數字化模擬,可表示為{Vi=(xi,yi,zi)|i=1, 2, …,n, (xi,yi)∈D} ,其中,(xi,yi)∈D表示平面坐標,zi表示(xi,yi)位置的高程信息。
數字高程模型可以通過簡單的數據結構實現地形信息的表示,但由于數據總量和數據密度受數據來源的限制,無法獲取地形上每一點的具體數據。本文采用雙線性內插法[12]來解決這一問題,即根據待采樣點與高程數據庫中已有相鄰點之間的距離確定相應權值,計算出待采樣點的高度值,如圖1所示。待采樣點p的高程信息計算公式為

圖1 數字高程模型雙線性內插法示意圖Fig.1 Bilinear interpolation for DEM
zp=(l-u)(m-v)za+(l-u)vzb+uvzc+u(m-v)zd(1)
其中,za,zb,zc,zd表示相鄰點的高程數據。
在戰場環境中,戰場威脅是無人機航路規劃中的重要約束之一,主要包括雷達探測、防空導彈、防空高炮等。無人機在執行航路規劃時,需要對戰場威脅區域進行規避,在自身不受損傷的前提下完成指定的任務。本文以防空武器所處位置為圓心,依據防空武器作戰半徑設定圓形威脅區。
強化學習是一種基于馬爾可夫決策過程框架,使用狀態、動作和收益定義智能體與環境之間的交互過程,通過智能體在環境中不斷探索、試錯的方式進行學習,根據環境對當前狀態下所選取動作的反饋收益調整探索策略的機器學習方法。
深度強化學習(DQN)在強化學習的基礎上,通過構建深度神經網絡(DNN)表征智能體的動作價值函數。動作價值函數表示為Q(st,at|θ),其中,st和at表示t時刻智能體的狀態和動作,θ表示網絡參數。DQN 算法通過最小化損失函數L(θ)的方式更新網絡參數θ,使得網絡Q(st,at|θ)的輸出不斷逼近最優動作價值。損失函數L(θ)的定義為
式中,y為網絡更新的目標值;γ∈[0,1]為折扣系數;Rt+1為收益函數。
在DQN算法中,智能體的動作價值函數網絡在更新過程中存在由于訓練樣本相關性強導致的過擬合問題和網絡更新參數相關聯導致的網絡優化不穩定問題。針對上述問題,相關研究人員提出了Double DQN、Dueling DQN等方法。
Double DQN[13]在DQN 算法的基礎上引入目標網絡Q(st,at|θ-)解決過擬合問題。Double DQN首先利用預測網絡Q(st,at|θ)選取最大價值的動作,然后利用目標函數計算該動作對應的價值,并與收益函數共同構成目標更新值y',其表達式為
Dueling DQN[14]將競爭網絡模型引入DQN 算法中,通過將動作價值函數分解為狀態價值函數和動作優勢函數,提高對最優策略的學習效率。競爭網絡的表達式為
式中,V(st|θ,α)為狀態價值函數,A(st,at|θ,β)為動作優勢函數,α和β為對應網絡的參數。
此外,相關研究人員提出在DQN算法中加入經驗重現策略,將智能體與環境交互得到的樣本數據存儲至經驗重現池,當進行網絡更新時,從經驗重現池隨機提取小批量的樣本數據進行訓練,消除樣本之間的關聯性,從而提升算法的收斂效果和穩定性。
優先級經驗重現(PER)[15]是指在經驗重現策略的基礎上,根據經驗重現池中數據樣本的優先級進行采樣學習,從而提升網絡的訓練效率。在網絡訓練過程中,目標值與預測值之間的誤差越大,預測網絡對該狀態的預測精度越低,則其學習的優先級越高。定義第i組數據樣本的優先度為

PER-D3QN 算法是一種結合Double DQN、Dueling DQN 和優先級重現策略的深度強化學習算法。該方法聯合了上述方法的優勢,有效地提高了復雜環境下智能體的學習效率和準確性。
本文利用PER-D3QN算法解決無人機航路規劃問題,構建如圖2所示的算法模型。本文所提算法旨在讓無人機能夠根據當前在戰場環境中的所處狀態st,利用PERD3QN 算法選擇飛行動作at并獲得相應收益Rt+1,實現無人機在戰場環境中的全局航路規劃。

圖2 基于PER-D3QN的無人機航路規劃算法網絡模型Fig.2 Network model of UAV path planning method based on PER-D3QN
2.3.1 狀態空間
在戰場環境下,無人機的狀態空間包含地形環境狀態、威脅區域狀態和與目標點的相對狀態。
地形環境狀態用于描述無人機當前時刻與其周圍地形環境的相對位置關系,其表達式為
威脅區域狀態用于表示無人機當前時刻與戰場威脅區域的相對位置關系,如圖3所示,其表達式為

圖3 威脅區域狀態示意圖Fig.3 Diagram of threat area state
式中,R表示威脅區感知半徑。
無人機與目標點的相對狀態用于引導無人機飛向目標位置,其表達式為
式中,φt和γt分別為無人機所處位置與目標點的航向角度差和俯仰角度差,如圖4所示。

圖4 無人機與目標點相對狀態示意圖Fig.4 Diagram of the relative state of the UAV and the target point
根據以上三個狀態即可得到無人機在t時刻的狀態矢量,即
2.3.2 動作空間
綜上可見,除個別BITs“保護與安全”條款相對較理想、較適合目前和未來中國防范在發展中國家投資的安全風險外,與多發展中國家的BITs“保護與安全”條款空泛和模糊,總體上未能超越國際習慣法最低待遇標準,其國際法效果是,中國難以主張東道國對安全風險損害承擔國家責任,不能為中國投資者及其投資和人員提供充分有效的保護與安全。
動作空間是無人機可采取的行為集合,本文采用的動作空間共包含9個離散動作,分別為向右下方飛行a1、向下方飛行a2、向左下方飛行a3、向右方飛行a4、向前方飛行a5、向左方飛行a6、向右上方飛行a7、向上方飛行a8和向左上方飛行a9,如圖5 所示。無人機可根據當前狀態從上述離散動作中進行選擇。動作空間A可表示為

圖5 動作空間示意圖Fig.5 Diagram of action space
2.3.3 收益函數
針對無人機規劃問題的特點,從任務完成、地形避障、威脅區域躲避、飛行高度控制、飛行引導等角度設計深度強化學習的收益函數。
(1) 任務完成收益函數
無人機航路規劃的首要目標是規劃出從初始點到目標點的飛行航路,當無人機完成航路規劃時給予其正向獎勵,表達式為
式中,kM為無人機抵達目標點給予后的激勵值,sTarget為無人機抵達目標點時的期望狀態。
(2) 地形避障收益函數
無人機在飛行過程中需要及時躲避地形障礙,當無人機與地面發生碰撞時給予懲罰反饋,表達式為
式中,kG表示懲罰反饋;zt表示無人機當前時刻飛行高度;hsafe表示無人機與地面的安全距離;zt,G表示無人機所處位置的地形高度。
(3)威脅區域躲避收益函數
在戰場環境下,無人機需要盡量避免進入敵方防空武器的威脅區,根據進入威脅區的距離設計反饋函數,表達式為

式中,kL>0 為飛行引導獎勵系數,Distance(st,sTarget)為無人機當前位置與目標位置的距離,sigmoid(·)用于調整數值區間,其表達式為sigmoid(x) =(1 + e-x)-1。
綜合以上收益函數,得到總收益函數,即
式中,γM,γG,γT,γH和γL分別為任務完成收益函數、地形避障收益函數、威脅區域躲避收益函數、飛行高度控制收益函數和飛行引導收益函數的權重系數。
本文在Python 編程環境中利用PyTorch 框架構建PERD3QN 網絡,用于算法訓練和測試的計算機配置為Intel i7-12700H CPU,NVIDIA RTX 3060 GPU,32GB運行內存。
為驗證本文算法的可行性和有效性,使用Double DQN、DQN 和傳統A*算法進行對比試驗。試驗在隨機生成的100幅戰場環境地圖中進行,其中,訓練過程使用80幅戰場環境地圖,測試過程使用20 幅戰場環境地圖。A*算法只在測試過程的戰場環境地圖中進行仿真。PER-D3QN、Double DQN和DQN在訓練過程中的學習曲線如圖6所示。

圖6 PER-D3QN,Double DQN和DQN的學習曲線Fig.6 Reward curve for PER-D3QN, Double DQN and DQN
在訓練過程中,智能體采用PER-D3QN、Double DQN和DQN算法各進行了30000回合的探索與學習。圖6展示了智能體在訓練過程中獲得的平均收益,其中,PER-D3QN在訓練至7500回合后達到收斂狀態,收斂效果優于Double DQN和DQN。
為驗證智能體訓練過程的有效性,對訓練好的算法模型進行測試。在測試過程中,對20幅戰場環境地圖各隨機生成50 組起始點和目標點,共構建1000 個仿真場景。將PER-D3QN、Double DQN、DQN和A*算法在上述仿真場景中進行測試,對航路規劃成功率、平均航程和算法平均計算時間進行計算和統計。
航路規劃成功率是指測試過程中成功完成航路規劃的次數與總測試次數的比值,其計算公式為
式中,Ns表示成功完成航路規劃的次數;Na表示總測試次數。
平均航程和平均計算時間在4種算法均成功完成航路規劃的仿真場景中計算并統計。平均航程是指各算法規劃得到的飛行航路航程的平均值,其計算公式為
式中,Lave為平均航程;Nv指飛行航路的個數;Mi為第i條飛行航路的節點數量;si,j為第i條飛行航路的第j個航路節點。
平均計算時間是指算法運行所消耗時間的平均值,其計算公式為
式中,Tave為平均計算時間;tc,i為規劃第i條飛行航路的計算耗時。
測試過程的統計結果見表1,得到的部分航路規劃結果如圖7所示。

表1 算法測試結果統計Table 1 Method test result statistics

圖7 戰場環境下PER-D3QN,Double DQN,DQN和A*算法航路規劃結果Fig.7 Results of path planning based on PER-D3QN, Double DQN, DQN and A* in battlefield environment
由表1可以看出:在成功率和平均航程上,傳統A*算法的成功率為100%且平均航程最短,可在任一仿真場景中實現航路規劃;PER-D3QN算法的成功率和平均航程稍遜于A*算法,但優于Double DQN 和DQN 算法,具有較好的穩定性,可勝任絕大部分仿真場景。在平均計算時間上,PER-D3QN 算法相較其他三種算法具有較大優勢,可在較短時間內完成航路規劃任務,更符合無人機作戰的實時性需求,具有更好的適用性。
仿真結果表明,本文所提出的基于PER-D3QN的無人機航路規劃算法,相較于Double DQN和DQN,在訓練過程和測試過程中均具有較好的表現;相較于傳統A*算法,雖在航路規劃成功率和平均航程上稍有劣勢,但在平均計算時間上具有較大優勢。
為解決無人機在戰場環境下的航路規劃問題,本文提出了基于PER-D3QN 的無人機航路規劃算法。構建了包含戰場三維地形和戰場威脅的戰場環境模型。通過設計網絡模型、狀態空間、動作空間和收益函數實現無人機航路規劃算法。在仿真驗證中,驗證了所提算法相較于Double DQN和DQN具有更好的收斂性、穩定性和適用性,相較于傳統A*算法具有較好的實時性。在下一步研究中,應考慮多無人機協同作戰的任務場景,基于多智能體深度強化學習方法研究復雜戰場環境下多無人機協同航路規劃問題,以進一步提升無人機作戰效能。