白云鵬 林志鵬 段洪濤 蘭天旭 范振雄 李 婕 朱秋明
(1.南京航空航天大學,電磁頻譜空間認知動態(tài)系統工業(yè)與信息化部重點實驗室,江蘇南京 211100;2.國家無線電監(jiān)測中心,北京 100144)
電磁頻譜作為一種重要的國家戰(zhàn)略資源,關乎國家信息化發(fā)展戰(zhàn)略和信息化戰(zhàn)爭優(yōu)勢的確立。隨著用戶的增加,電磁頻譜資源日益緊缺,用頻矛盾日趨尖銳。為了有效利用頻譜資源,加強對非法用頻的管控,需要構建精確的電磁頻譜地圖[1]。
傳統的電磁頻譜地圖測繪是在區(qū)域內隨機放置傳感器,基于傳感器采集到的離散數據通過補全算法進行頻譜地圖重構[2-3]。然而,對于部分不便于放置固定傳感器的場景,需要采用動態(tài)采集的方法完成頻譜測繪。無人機因為其機動性在采集數據及測量方面有很強的優(yōu)勢[4-10],文獻[11-12]使用無人機飛行采集頻譜數據,進而完成了頻譜地圖的構建。
然而隨著測繪區(qū)域的增大以及測繪時間的限制,對于無人機數量的需求越來越大。相較于單架無人機,多無人機系統具有更好的容錯性/魯棒性,可以在某架無人機發(fā)生故障時繼續(xù)完成任務。同時,通過無人機之間的信息交流,能夠進一步提高完成任務的效率[13]。多機協同航跡規(guī)劃是在給定環(huán)境下,規(guī)劃出一條或多條滿足各種約束條件和協同條件的安全無碰撞的航跡[14]。目前已有多種航跡規(guī)劃算法用于實現不同的航跡規(guī)劃目標。文獻[15]和[16]提出了一種基于人工勢場的無人機航跡規(guī)劃方法,假設無人機在勢場的作用下運動,進而避免無人機發(fā)生碰撞。文獻[17]和[18]提出了一種基于遺傳算法的無人機航跡規(guī)劃方法,使無人機在所設計的航跡下能耗達到最低。文獻[19]和[20]分別基于圖論和迪杰斯特拉算法設計出最短距離的無人機航跡。文獻[21]和[22]分別利用強化學習和混合整數線性規(guī)劃法來規(guī)劃無人機的航跡,以提高其通信能力。然而經調研,目前面向頻譜測繪任務的航跡規(guī)劃研究較少。
本文提出了一種面向頻譜測繪任務的多無人機協同航跡規(guī)劃方法,首先利用多無人機稀疏采樣完成輻射源的地理信息感知,之后基于人工勢場法完成無人機航跡的規(guī)劃,實現了非合作環(huán)境下的多無人機高效、安全地頻譜地圖測繪。
多無人機頻譜地圖協同測繪方案如圖1 所示,多架無人機分布在待測區(qū)域上方,在飛控指令下按照各自的航跡飛行并采集頻譜數據,其航跡點坐標為Ω=[x,y],其中x、y分別為無人機在二維空間中的橫軸、縱軸坐標,具體表示為
圖1 多無人機頻譜地圖協同測繪方案Fig.1 Multi-UAVs spectrum map cooperative mapping scheme
其中,i∈[1,2,…,K]為無人機的編號,v為無人機的航行速度,滿足v∈[vmin,vmax],γ為無人機飛行方向與橫軸正方向的夾角。
多無人機飛行過程中為了避免無人機之間發(fā)生碰撞,任意時刻任意兩架無人機之間的距離應該大于安全距離,具體表示為
其中,i,j∈[1,2,…,K],dc為無人機飛行的安全距離。同時,為了保證無人機能夠有效采集數據,各個無人機應在測繪區(qū)域內飛行,具體表示為
其中,xmin和xmax、ymin和ymax分別為待測繪區(qū)域的橫、縱軸范圍。
為了保證無人機高效、安全地完成測繪任務,本文以每架無人機的飛行時間、無人機總的飛行距離和測繪地圖的精確度作為優(yōu)化目標對無人機航跡進行規(guī)劃。
首先考慮無人機的飛行時間優(yōu)化。無人機協同飛行時的一個重難點就是保證無人機之間的協同性,無人機同時起飛完成測繪任務后并同時回到起點,每架無人機的飛行時間應盡可能相同,具體表示為
其中,σ表示允許無人機之間飛行時間最大相差的程度。
為了降低無人機的能耗,應該使得無人機的飛行距離盡可能地短,具體表示為
其中,d為每個無人機的飛行距離,dstra為無人機直線飛行的距離,drot為無人機環(huán)繞飛行的距離,dextra為無人機之間因可能發(fā)生碰撞而改變航跡帶來的距離變化。
無人機協同測繪的目標是測繪出高精度的頻譜地圖,其中測繪地圖的精確度可以用歸一化均方根誤差(normalized mean squared error,NMSE)表示,NMSE 是用于表現電磁頻譜地圖估計值與真實值之間的相對誤差,具體表示為
其中,為了便于處理頻譜地圖,將待測頻譜地圖分為M?N個網格,p和分別為利用理論分析方法仿真得出的各個網格頻譜強度值和無人機測繪出的各個網格頻譜強度值。
本文提出的多機航跡規(guī)劃算法包括環(huán)境感知和航跡規(guī)劃兩個部分,如圖2所示。首先,根據無人機的數量及待測區(qū)域的大小完成初始的航跡規(guī)劃,無人機從相同起點出發(fā)按照規(guī)劃的航跡飛行采集數據直至所有無人機都飛至終點;然后,基于各個無人機采集的頻譜數據,通過頻譜數據補全算法進行數據補全并利用聚類算法完成輻射源地理信息的感知;最后,基于輻射源的地理信息完成人工勢場法的參數設計,計算出各個無人機的合力方向,從而判斷無人機的飛行方向,并進一步通過判斷各個無人機下一步的航跡點是否可能會發(fā)生碰撞從而對參數進行修正,無人機在計算出的飛行方向下飛行采集數據,當所有無人機完成數據采集并回到起點時,完成測繪任務。
圖2 多機航跡規(guī)劃算法流程Fig.2 Multi-UAVs trajectory planning algorithm
本文通過多機均勻采集數據及數據分析完成待測區(qū)域內的輻射源地理信息感知。無人機的初始航跡規(guī)劃方法及數據采集如圖3 所示。其中,無人機數量為K,待測繪區(qū)域長L,寬W。將待測繪區(qū)域分為M?N個網格,以正東方向為x軸正方向,正北方向為y軸正方向建立二維平面直角坐標系。
為了保證各無人機飛行時間盡量相同,根據無人機的數量及待測區(qū)域的大小為各無人機規(guī)劃大小一致的測繪區(qū)域,同時為了保證采樣的均勻性,令無人機以相同的間隔平行飛行采集數據。各無人機從相同起點出發(fā)飛至特定點之后按照平行飛行軌跡采集頻譜數據,其航跡點計算具體如下:
令無人機的坐標為()xi,yi,各無人機均從坐標原點出發(fā),起始點為(0,0),第i架無人機開始采集數據點的坐標為()L·(i-1)/K,0,各無人機從原點出發(fā)飛至各自開始采集數據點之后平行飛行采集數據。
平行飛行時,當無人機沿y軸運動時其航跡點坐標具體表示為
其中,t+1 時刻和t時刻分別表示下一個路徑點跟當前路徑點,符號“±”表示:當無人機向y軸負方向運動時為-,當無人機向y軸正方向運動時為+;當yi(t+1) >W或yi(t+1) <0 時,無人機改變飛行方向為x軸正方向。
改變飛行方向后,無人機沿著x軸正方向運動,航跡點坐標具體表示為
然后,針對無人機初始采集的數據進行補全預測獲得待測區(qū)域的頻譜態(tài)勢,本文采用反距離權重(inverse distance weighted,IDW)插值補全算法,該方法可以表示為
其中,τj是權重系數,具體表示為
其中,u=1,2,3,…,q和qj分別表示代補全點和已測點,s(q,qj)表示待補全點和已測點的歐氏距離。在此基礎上,本文通過聚類算法獲取輻射源的信息。根據頻譜數據p計算最大路徑損耗誤差Emax和最小路徑損耗誤差Emin
最后,根據Emax選取聚類中心,并根據Emin將各個點歸入最近的類,從而得出輻射源的地理信息。
無人機受力示意圖如圖4 所示,假設輻射源對于無人機有引力的作用,無人機之間存在斥力作用,無人機在引力場跟斥力場的共同作用下進行飛行,其中Fatt為引力,Frep為斥力,Frf為合力,具體表示為
圖4 無人機受力示意圖Fig.4 Schematic diagram of the force of the UAV
輻射源的訪問順序包括無人機各自采集輻射源的數目及飛往各個輻射源處環(huán)繞飛行采集數據的順序,考慮到無人機的能耗問題,得到的訪問順序應滿足使無人機總飛行距離盡可能短的約束條件;同時考慮到無人機之間的協同性問題,各個無人機的飛行時間應滿足協同飛行的要求,即飛行時間相同或時間差在一定的范圍內。
首先初始化參數包括若干種輻射源的訪問順序、算法迭代次數,然后根據無人機飛行總距離及時間條件計算出此時的最優(yōu)訪問順序,之后基于此順序進行修改不斷迭代,直至得到最優(yōu)訪問順序。
本文中,基于遺傳算法的輻射源訪問順序判斷算法具體實現如下所示:
針對本文提出的算法,基于Matlab 平臺進行仿真,具體場景設置如下:選取南航校園作為待測區(qū)域,以校園左下角為坐標原點,正東方向為x軸正方向,正北方向為y軸正方向建立平面直角坐標系。區(qū)域大小為1000 m*1000 m,將其劃分為100*100的網格,每個網格為邊長為10 m 的小正方形。在校園內隨機分布20 個輻射源,具體位置如圖5 中紅色圓圈所示,其中圓圈大小代表輻射源強度,從小到大分別為5、10、15、20 dBm,通過理論分析方法得出該場景下的頻譜地圖如圖5所示。無人機數量設置為3,初始位置為坐標原點(0 m,0 m),無人機飛行的安全距離設置為10 m,各個無人機飛行參數相同,其中直線飛行時無人機為勻速飛行,速度設置為5 m/s,飛行高度始終為80 m。
圖5 多輻射源的待測繪場景Fig.5 Scene to be mapped with multiple radiation sources
為了保證初始飛行采樣的均勻性,根據無人機數量以及待測區(qū)域大小規(guī)劃無人機初始飛行的航跡,保證各個無人機測繪的區(qū)域大小基本相同,即每個無人機測繪飛行區(qū)域的1/3。基于無人機初始飛行采集的數據,利用IDW 補全算法進行補全后的地圖如圖6 所示,根據補全后的數據利用聚類算法可以得出輻射源的數目及位置如圖7 所示,從圖7中可以看出根據聚類算法分析得出了17 個輻射源。
圖6 初始數據重構的頻譜地圖Fig.6 Spectrum map reconstructed from initial data
圖7 輻射源地理信息Fig.7 Radiation source geographic information
根據得出的輻射源地理信息,利用遺傳算法進行求解,得出各個無人機所訪問的輻射源的順序??紤]到本場景的計算復雜度相對較低,在具體遺傳算法的設計中,初始種群數設置為80,迭代次數設置為5000,種群篩選的原則是使得無人機的總飛行距離最短,且令無人機的飛行時間應盡可能相等,這是為了保證無人機之間的協同性,具體描述為
根據上述遺傳算法得出三架無人機訪問輻射源的順序依次為(5,10,13,1)、(12,6,11,15,8,14)、(3,17,7,16,2,9,4),基于無人機訪問輻射源順序,設定人工勢場法中的引力系數及斥力系數,并實時根據無人機采集數據信息完成系數的更改修正。由上述準則進一步規(guī)劃出的無人機航跡如圖8 所示,從圖中可以清楚看出任意時刻任意兩架無人機的距離都大于安全距離,且無人機對于距離較近的輻射源處只采集其中一處,避免了重復采集。
圖8 基于人工勢場的多機航跡Fig.8 Multi aircraft track based on artificial potential field
基于圖8 航跡采集的數據利用IDW 補全算法進行補全后的頻譜地圖如圖9 所示,通過比對初始數據生成的頻譜地圖可以發(fā)現,所設計航跡可以高效、安全地完成測繪任務。
圖9 多機測繪的頻譜地圖Fig.9 Spectrum map of multi machine mapping
在相同場景下仿真單無人機飛行的航跡及測繪地圖分別如圖10、圖11 所示,從圖中可以看出單機測繪地圖明顯不如多機測繪的地圖效果好。
圖10 基于人工勢場的單無人機航跡Fig.10 Trajectory of single UAV Based on artificial potential field
圖11 單機測繪的頻譜地圖Fig.11 Spectrum map of single machine mapping
經過對比發(fā)現,單無人機完成測繪任務需要2 h 26 min 53 s,而多無人機完成測繪任務需要43 min 18 s,可以發(fā)現多無人機協同測繪大大縮短了測繪時長,提升了測繪效率;單無人機測繪地圖誤差為0.1763,多無人機測繪地圖誤差為0.1554,說明了多機協同在測繪地圖的精度上也有一定的提升,再次說明了所設計算法的魯棒性及實用性。
本文針對非合作環(huán)境下的頻譜測繪問題,提出了一種無人機協同航跡規(guī)劃方法。首先基于飛行過程中的狀態(tài)約束以及優(yōu)化目標構建無人機協同測繪模型,同時面向待測繪區(qū)域均勻采樣任務需求預先規(guī)劃各個無人機的初始飛行航跡,其次利用補全及聚類算法對初始采樣數據進行處理,實現對于輻射源的地理信息的初步感知,進一步通過人工勢場法完成無人機協同航跡規(guī)劃,最后通過仿真對比單無人機測繪場景驗證了所設計方法的有效性。本文中考慮的無人機航跡應用場景為二維平面,未來會進一步將該方法應用到三維場景中,并且考慮面向更加復雜任務無人機協同軌跡規(guī)劃方法。