單玉浩,楊曉東,吳 兵
(海軍潛艇學(xué)院,山東 青島 266000)
航路規(guī)劃是指在特定約束條件下,尋找運(yùn)動體從初始點到目標(biāo)點并且滿足某種性能指標(biāo)最優(yōu)的運(yùn)動軌跡。針對汽車、無人機(jī)、水下機(jī)器人等的路徑規(guī)劃方法很多。其中根據(jù)規(guī)劃范圍[1]分為全局路徑規(guī)劃和局部路徑規(guī)劃;根據(jù)環(huán)境信息的準(zhǔn)確性可分為確定性路徑規(guī)劃和不確定性路徑規(guī)劃。根據(jù)具體的算法不同[2],可分為基于幾何模型的方法,如Voronoi 圖、可視圖、柵格法;基于虛擬勢場和導(dǎo)航函數(shù)的方法,如人工勢場法;基于數(shù)學(xué)優(yōu)化的方法;基于智能的方法[3-4],如蟻群算法、遺傳算法、粒子群算法、神經(jīng)網(wǎng)絡(luò)算法,以及幾種算法的改進(jìn)、組合[5]。
導(dǎo)航裝備的發(fā)展及信息渠道的多元化使得潛航器智能航路規(guī)劃成為非常重要的課題。結(jié)合潛航器實際航行環(huán)境,建立多約束多指標(biāo)的潛航器三維規(guī)劃模型,改進(jìn)蟻群算法信息素更新策略,避免路徑搜索陷入局部最優(yōu)?;趩文繕?biāo)動態(tài)威脅建立局部避障航路規(guī)劃模型,所得航路能很好規(guī)避動態(tài)障礙。
潛航器航路規(guī)劃是保證潛艇安全航行和執(zhí)行任務(wù)的手段,過去指的是人為依據(jù)海圖在出航前或出航時規(guī)劃出一條航線。隨著導(dǎo)航技術(shù)的發(fā)展及海上信息獲取渠道的增加,潛航器航路規(guī)劃與人工智能的結(jié)合表現(xiàn)出更多的優(yōu)異性。蟻群算法[6-8]是一類不確定算法,含有隨機(jī)因素,主要依靠螞蟻遺留信息素來完成尋優(yōu)的過程,因此容易陷入局部最優(yōu),但蟻群算法具有較強(qiáng)的魯棒性、分布式計算機(jī)制、自組織性和進(jìn)化性,現(xiàn)已應(yīng)用到航路規(guī)劃領(lǐng)域并取得很好的效果。
潛航器的航行安全性是其完成各項訓(xùn)練和作戰(zhàn)任務(wù)的重要前提和基礎(chǔ)保障,安全性受潛航器的內(nèi)部因素和外部因素共同影響。潛航器航行安全是指首先要避免與沉船、暗礁、島嶼等障礙物發(fā)生碰撞;其次要采取必要的措施提高自己的隱蔽性從而避免被敵方探測設(shè)施捕獲;最后還要盡量快速地到達(dá)目的地。由此可以看出,潛航器航行安全主要包括安全性、隱蔽性和快速性。
圖 1 航行安全影響因素集Fig. 1 Navigation safety impact factor set
潛航器進(jìn)行航路規(guī)劃,要詳細(xì)了解航行海區(qū)的海洋地理、地質(zhì)、水文氣象、聲學(xué)環(huán)境等情況,以便于采取合理的戰(zhàn)術(shù)機(jī)動,確保潛航器航行安全,需要注意一些對潛航器航行有安全影響的自然地理等因素。
蟻群算法等仿生智能算法是通過進(jìn)化的思想來實現(xiàn)全局搜索,同時由具體問題的代價函數(shù)決定最優(yōu)解。但傳統(tǒng)蟻群算法在搜索過程中信息素收斂速度過快,易陷入局部最優(yōu)。因此為保證信息素在每次更新過程中得到合理的分配,引入混合啟發(fā)式蟻群—微分進(jìn)化模型,將微分進(jìn)化算法中的變異、交叉操作用于信息素更新機(jī)制。假設(shè)螞蟻種群規(guī)模為M,這樣關(guān)于信息素的變異操作為:在每次所有螞蟻完成一次循環(huán)后,使用從實驗以來全局最優(yōu)的螞蟻走過路徑的信息素分布對其他螞蟻走過路徑的信息軌跡進(jìn)行更新,更新規(guī)則為:
當(dāng)前全局最優(yōu)解的信息素按下式進(jìn)行更新:
考慮潛航器的特殊性,其航路規(guī)劃過程中的啟發(fā)因子總結(jié)為3 個方面:
1)規(guī)避式啟發(fā)因子。水下航行環(huán)境較為復(fù)雜,島礁等礙航物存在處水深淺,屬不可通行區(qū)域,由水深判斷下一待選點的可航性:
2)保持式啟發(fā)因子。潛航器在航渡過程中不可能頻繁地上浮或者下潛,其具有保持同一深度面航行的特性:z
其中: 下一待選航路點的深度; 為當(dāng)前航路點的深度。
3)距離啟發(fā)因子。潛航器航渡過程中,都希望規(guī)劃的航路盡可能短,以縮短完成任務(wù)的時間,因此計算可見度時加入待選點與終點的距離這一指標(biāo):
總的啟發(fā)因子
狀態(tài)轉(zhuǎn)移概率
其中,allowedk為下一平面上潛航器的可行域。
在完成全局靜態(tài)航路規(guī)劃后,若航行器在行進(jìn)過程中發(fā)現(xiàn)敵方機(jī)動目標(biāo),則需建立動態(tài)規(guī)避模型[9-11]。模型以敵我當(dāng)前位置連線為路徑規(guī)劃的基準(zhǔn)線進(jìn)而確定下一時刻的可行域,以步長為半徑、基準(zhǔn)線為中心線畫圓弧,圓弧弧度為120 °,此圓弧即為可行域,離散化可行域,在基準(zhǔn)線兩邊間隔一定角度在圓弧上取點,將這些點作為下一時刻可選航路點,如圖2所示。
圖 2 規(guī)避機(jī)動可行域Fig. 2 Evading maneuverable domain
1)計算敵方位角其中 (Mx,My)為單威脅目標(biāo)的當(dāng)前位置點。由于敵我態(tài)勢的不同,目標(biāo)方位角的具體計算如下:
2)離散化可行域基準(zhǔn)線以左:
基準(zhǔn)線以右:
式中: (x,y) 為我方下一時刻的可選航路點,(x,y)?{g1,g2,g3,...,gn}。 C (x,y)是由敵我距離變化量決定的誘導(dǎo)因素,當(dāng)距離減小得越小或增大的越大時其值越大,具體計算方法為:
式中:dis1為當(dāng)前時刻與下一時刻的敵我距離變化量;diff 為可選點與規(guī)避完畢需到達(dá)的目標(biāo)點之間的距離;range 為所有可選點與目標(biāo)點之間距離的最小值;m 為權(quán)重調(diào)整系數(shù),取值范圍為0~1。
潛航器在規(guī)避機(jī)動過程中除考慮聲吶的作用距離時,也必須考慮到聲吶的作用范圍,以此時監(jiān)測敵方的運(yùn)動狀態(tài)。潛航器聲吶并不是可對周圍區(qū)域進(jìn)行全方位聽測,其對潛航器側(cè)后方存在一定的盲區(qū),為保證我方安全,必須時刻將敵置于我方聲吶可聽測范圍內(nèi)。因此設(shè)計函數(shù)項,其計算方式如下:
L(x,y)為通過定義最小距離限制敵我距離的安全性因素,具體計算方法為:
式中: dis 為敵我距離; dmin為允許的敵我距離最小量,本模型中敵我最小距離即為敵威脅半徑n。
1)我方航行器轉(zhuǎn)向機(jī)動,純方位法解算目標(biāo)運(yùn)動要素,包括位置,航向 Mc ,航速 Ms。
2)運(yùn)動要素解算完畢,開始進(jìn)行規(guī)避機(jī)動。計算航行器當(dāng)前可行域,判斷敵我態(tài)勢,若敵在我右舷,則向左轉(zhuǎn)向,即選擇基準(zhǔn)線左邊點作為可選航路點,否則向右轉(zhuǎn)向機(jī)動。
4)判斷是否繼續(xù)規(guī)避機(jī)動。以開始機(jī)動時我方位置點及我方航向作直線,計算航路點到直線的距離,若此距離相比上一航路點到直線的距離減小,則停止規(guī)避機(jī)動,轉(zhuǎn)到步驟5,否則,轉(zhuǎn)到步驟2。
5)計算原航路上開始規(guī)避機(jī)動點與其下一點連線的斜率k0,依次計算后續(xù)點之間連線的斜率,直到找到斜率不同于k0的目標(biāo)點作為規(guī)避機(jī)動后需轉(zhuǎn)到的原航向上的目標(biāo)點。
參數(shù)設(shè)置:蟻群規(guī)模PopNumber = 30。信息素強(qiáng)度Q=8;揮發(fā)系數(shù)=0.4;循環(huán)次數(shù)K=300;常量因子F=1.2;常數(shù)CR=0.6;規(guī)劃起始點序號為(1,3,800),規(guī)劃結(jié)束點序號為(21,20,800)。
首先利用插值擬合仿真海底三維地形,在仿真空間中的起始點和終點之間設(shè)置若干個吸引區(qū)域和排斥區(qū)域如圖3 所示,其中白色區(qū)域為有利隱蔽的吸引區(qū)域,黑色區(qū)域為敵方探測區(qū)域,考慮航程及安全因素,最終得到潛航器的全局航路規(guī)劃結(jié)果如圖4 所示。可見,規(guī)劃出的全局路徑很好地規(guī)避了海底地形障礙和敵方探測區(qū)域,且有效地利用有利隱蔽區(qū)域,實現(xiàn)了規(guī)劃的安全性、隱蔽性、快速性。
假設(shè)單威脅為敵方艦艇(潛艇),或?qū)摵狡骱叫杏杏绊懙牡谌杰娪门炌?,對航路局部在線規(guī)劃算法進(jìn)行模擬與仿真。
仿真條件設(shè)定:取威脅因子航向160;步長2( nmile/10 min);步長0.5(nmile/10 min)。
由仿真試驗結(jié)果可見,基于動態(tài)威脅的潛航器局部航路在線規(guī)劃方法能夠較好地實現(xiàn)動態(tài)威脅規(guī)避,且通過調(diào)整權(quán)重系數(shù),潛航器可以與威脅目標(biāo)的距離始終保持在需要的可靠范圍內(nèi)。
圖 3 蟻群算法規(guī)劃航路Fig. 3 Ant colony algorithm planning route
圖 4 局部在線航路規(guī)劃圖Fig. 4 Local online route planning
本文通過改進(jìn)蟻群算法的信息素更新機(jī)制和對啟發(fā)因子進(jìn)行重設(shè),結(jié)合潛航器航行特點和環(huán)境影響因素集,考慮航行的安全性、隱蔽性,建立了基于靜態(tài)環(huán)境的潛航器全局航路規(guī)劃模型。并針對突發(fā)動態(tài)單威脅目標(biāo),考慮敵我距離變化量、我方當(dāng)前位置與目標(biāo)點的距離、我方聲吶盲區(qū)、敵我距離最小量4 個因數(shù),建立基于單目標(biāo)動態(tài)威脅的局部航路規(guī)劃模型。進(jìn)一步仿真驗證了本文提出的潛航器全局航路規(guī)劃算法和動態(tài)局部航路規(guī)劃算法的有效性。