黃 葵 韓嘯華 朱興動 趙火箭
(1.海軍航空大學青島校區 青島 266000)(2.海軍航空大學 煙臺 264001)(3.91197部隊 青島 266000)
航母是名副其實的海上霸主。作為其主要作戰武器的艦載機更是航母戰斗力的重要體現,其在甲板上的轉運方式更是直接影響到艦載機綜合出動能力[1~2]。在飛行甲板上,艦載機需要在障礙密集的環境中進行出動準備和著艦回收。因此,設計出一種合適的路徑規劃方法,是確保艦載機在甲板上高效轉運的基礎。目前,艦載機艦面轉運的相關研究主要運用了機器人等領域的理論[2~6]。
劉潔等[7]將艦載機調運模式的軌跡規劃問題轉化為時間-能量混合最優問題,設計了保辛偽譜方法進行求解。薛均曉等[8]基于智能體狀態和動作空間對航母甲板場景進行建模,并構造了環境預測深度Q網絡進行求解。司維超等[9]針對艦載機路徑規劃問題,建立了飛行甲板、實體姿態、路徑平滑等數學模型,并設計了多生境并行混沌算法進行求解。上述方法雖有效解決了艦載機路徑規劃問題,但并未考慮艦載機轉運過程中的位姿約束問題,對特定位姿下的轉運問題需要考慮到航向等因素。
在考慮位姿約束的情況下,Dubins L E等[10]提出了基于幾何法求解最短路徑的Dubins曲線,該曲線能夠找到一條從起始點到目標點的最短距離,并且滿足轉彎半徑和初始相對位置,但其限制目標只能向前行進。J.A Reeds等[11]提出了ReedsSheep曲線,該曲線在Dubins曲線的基礎上,將反向運動加入到了規劃中,使得在某些情況下可以得出更優的解。上述曲線在無障礙環境中能夠有效地規劃出路徑,但在障礙密集的環境中,需要考慮避碰問題。張智等[12]在遺傳算法的基礎上,針對性的對ReedsSheep曲線的三段路徑進行編碼,通過設定兩個中間節點進行求解,算法收斂速度較快,但局限性較大。
本文參考ReedsSheep曲線中的規劃思想,將艦載機的運動狀態引入到節點的搜索方式中,并設計出滿足艦載機非完整性約束的啟發函數。仿真結果表明,該方法能夠有效解決帶有位姿約束的艦載機艦面路徑規劃問題。
在甲板轉運過程中,艦載機需要根據任務要求在展翼和收翼狀態中進行切換,因此本文對艦載機的兩種狀態進行輪廓描述。為了降低模型復雜度,在包含艦載機輪廓且不損失較多有效空間的前提下,引入多邊形線段集來進行描述,如圖1所示。
實現艦載機的碰撞檢測需計算艦載機之間的安全距離,被多邊形線段集描述后的艦載機形狀為凸多邊形,故問題實質轉化為求解凸多邊形間的最小距離,即求解兩條線段之間的距離。給定兩個非連接的凸多邊形P和Q,本文按照如下步驟來推導凸多邊形間最短距離,示意圖如圖2所示。

圖2 碰撞距離檢測
步驟1 通過線段P1P2向量與線段Q1Q2向量的叉乘來判斷線段是否相交,若不相交則繼續。
步驟2 計算線段端點之間的距離,分別計算dP1_Q1、dP1_Q2、dP2_Q1和 dP2_Q2,以 dP1_Q1為例,計算公式如下:

步驟3 計算線段端點到線段之間的直線距離,需計算出垂足坐標,計算公式如下:
步驟4 求得垂足坐標后,需判斷該點是否在其線段上,判斷公式如下:

若滿足上述關系式,則線段端點在該條線段上,所計算距離為有效距離。
在一般的路徑規劃問題上,運動學模型僅考慮研究對象的構型空間。甲板上的艦載機和牽引車屬于典型的非完整約束系統,在該類問題中,通常需要考慮研究對象的非完整約束。
艦載機在艦面轉運時通常有單機滑行、離軸無桿牽引、離軸有桿牽引三種調運模式,由于本文主要對路徑規劃算法進行研究,故采取較為簡單的單機滑行調運模式,運動學模型如圖3所示。

圖3 艦載機滑行運動模型
艦載機的位姿用構型描述[13]。使用一個固定在甲板環境中的慣性坐標系,構型可以表示為一個構型向量,表達式為

其中,(x ,y)是艦載機后輪中心的位置;θ是艦載機的航向角。對時間求導,則速度可以表示為速度向量,表達式為

其中,各變量表示如下式:

其中,L為艦載機前后輪輪距;φ為艦載機轉向角,規定角度逆時針為正,順時針為負。
由于艦載機在轉運過程中受輪式結構的限制,其轉運半徑受到限制,故對轉向角進行約束:

其中,φmax為轉向角的最大值。
在智能規劃算法中,節點以離散的方式進行搜索,而在艦載機轉運過程中需要考慮到運動學約束,因此通過使用一組預先計算的運動基元來確定可達狀態。
ReedsSheep曲線指出,在任意的起始狀態下和終止狀態之間都存在由幾段半徑固定的圓弧和一段直線段拼接而成的曲線,且圓弧的半徑為目標的最小轉向半徑,目標不僅可以朝前移動,也可以向后移動,示意圖如圖4所示。

圖4 ReedsSheep曲線示意圖
圖中展示艦載機從初始位置xs到目標位置xg的兩條路徑,圖中虛線圓代表艦載機的轉彎弧。在網格精度一致的前提下,使用四類運動基元:最大右轉、最大左轉、前進和后退來生成路徑,改變行駛方向會產生額外代價,子節點位置則根據艦載機的最小轉彎半徑以及節點長度確定。對子節點進行碰撞檢測,無碰撞路徑的節點會加入到搜索樹。隨著不斷擴展,若新節點落入某個節點已經占用的單元格,則比較新舊節點的成本,成本較高的節點會被刪除,直到搜索到目標單元格,通過運動狀態生成的路徑能夠有效解決艦載機運動學約束,改進后的節點搜索方式如圖5所示。

圖5 節點擴展方式
滿足艦載機運動學約束的運動基元必須滿足以下條件:
1)驅動距離必須大于當前單元格大小。
2)運動曲率受艦載機最大轉向角的限制。
3)航向角的變化必須是連續空間中航向維度變化的倍數。
搜索算法中的啟發函數用來計算任何節點到目標節點的最小代價評估值,選取不同的啟發函數可以得到最短路徑或最快路徑,因此本文主要建立兩個啟發函數。
1)有障礙物的完整性約束啟發函數
該啟發函數主要考慮環境中的障礙物信息,忽略艦載機的非完整性約束,如圖6所示。計算在每個節點上到目標節點的最近距離,并將其作為代價函數h1(n)的值。由于能夠獲得當前位置到目標位置的最短路徑,因此解決了的朝向問題。

圖6 有障礙物的完整性啟發
2)無障礙物的非完整性約束啟發函數
該啟發函數主要考慮艦載機的非完整性約束,忽略環境中的障礙物信息,如圖7所示。將艦載機的最小轉彎半徑作為輸入,計算從起點(xs,ys,θs)到達目標點(xg,yg,θg)的Reed-Sheep曲線值,將其作為代價函數h2(n)的值。由于該項代價函數可以修剪搜索節點的分支,解決了艦載機到達目標點時路徑方向與目標方向不一致的問題。

圖7 無障礙物的非完整性約束啟發代價
由于這兩種啟發函數解決了路徑規劃中的不同問題,因此對于任何給定的狀態,選擇這兩個函數中最大的值作為啟發函數h(n),其表達式為

為驗證本文方法的可行性,本文結合具體算例進行實驗分析,具體的計算環境如下:Win 7 64 bit,Visual Studio 2015,c#編程語言。設定艦載機的速度勻速為1m/s,最大轉向角為0.9rad,前后輪距為7m。
隨機布放四組艦面環境,并兼顧正向和逆向轉運。第一組初末位姿分別為(59,177,1.32)、(577,146,1.57),并對第二組初末位姿分別為(73,217,0.78)、(696,197,1.57),第三組初末位姿分別為(119,219,0.52)、(361,201,0.78),第四組初末位姿分別為(491,234,0)、(247,100,2.27)。仿真圖如圖8~11所示,其中路徑軌跡為虛線的為采用R-S曲線進行仿真,路徑軌跡為實線的為采用改進后方法進行仿真。

圖8 案例1

圖9 案例2

圖10 案例3

圖11 案例4
在圖8~11四組案例中,前兩種案例艦面布放數量較少,后兩種案例布放數量較多,但兩種方法均能快速規劃出路徑,在時間上無較大差別,所以主要從路徑合理性上進行分析。
在第一種和第二種案例中,新方法規劃的路徑更為平滑。在第三種案例中,由于轉運路徑較長,新路徑在轉向處規劃的路徑更短。在第四種案例中,由于障礙布放較為密集,原方法所采用的轉向角度無法直接避開,需倒退再前進,而新方法可以直接規劃出合適路徑。
可以看出在上述四種方法中,新方法規劃出的路徑較為順滑,更加符合真實轉運要求。而通過舊方法進行規劃時,由于艦面艦載機布放較為復雜,往往需要設置多個中間節點才能規劃出有效路徑,因此該方法適合解決小范圍內的位姿約束問題,而本文改進的方法能夠根據啟發函數選擇成本較低的航向進行規劃,無需設置中間節點,較舊方法更快、更合理,滿足大范圍下的路徑規劃要求。
本文針對復雜環境下的艦載機艦面精確轉運問題,提出了一種大范圍考慮位姿約束的全局路徑規劃方法。本文構建了以艦載機運動學狀態為基礎的節點搜索方式,并設計出了滿足非完整性約束的啟發函數。仿真結果表明,本文所設計的方法能有效解決艦載機單機滑行下的路徑規劃問題。
此外,艦面轉運是一個多維度的綜合調度問題,至此作者已對艦載機牽引系統全局轉運、局部避碰進行了研究,接下來將對資源優化配置,甲板布位繼續深入研究。