唐 俊
(中鐵第四勘察設(shè)計(jì)院集團(tuán)有限公司,湖北 武漢 430063)
無人機(jī)航跡規(guī)劃是指在考慮地形、氣象、威脅等環(huán)境因素及自身的飛行性能的基礎(chǔ)上,為無人機(jī)制定出從初始位置到目標(biāo)位置的最優(yōu)飛行路徑[1]。無人機(jī)航跡規(guī)劃是無人機(jī)任務(wù)規(guī)劃系統(tǒng)中的關(guān)鍵,對(duì)于提高無人機(jī)作業(yè)效率和應(yīng)用能力具有重要意義[2]。
無人機(jī)航跡規(guī)劃算法在二維與2.5維發(fā)展較為成熟[3-5]。但在貼近無人機(jī)實(shí)際應(yīng)用的三維環(huán)境下,具有一定局限性。如神經(jīng)網(wǎng)絡(luò)算法結(jié)合可調(diào)步長策略能快速生成三維航跡,但不適用多種約束共存的環(huán)境[6];遺傳算法與粒子群算法容易陷入局部最優(yōu),且在復(fù)雜約束的路徑規(guī)劃問題中航跡精度不理想[7-10];蟻群算法改進(jìn)啟發(fā)函數(shù)和信息素更新能使三維路徑長度與搜索效率得到提高,但難以顧及無人機(jī)的性能約束特點(diǎn),規(guī)劃航跡適應(yīng)性不足[11-12];人工勢(shì)場(chǎng)法適用于二維復(fù)雜環(huán)境,但無法應(yīng)用于三維環(huán)境中[13]。A*算法在二維圖形搜索領(lǐng)域應(yīng)用成熟[14],若直接應(yīng)用于三維環(huán)境,則運(yùn)算將成指數(shù)倍上升,效率緩慢,因此需要進(jìn)行改進(jìn)[15]。
綜上,目前無人機(jī)三維航跡規(guī)劃能在單一約束下快速生成航跡,但在復(fù)雜環(huán)境約束下缺少對(duì)最優(yōu)路徑的考慮,且無法同時(shí)兼顧復(fù)雜環(huán)境約束與無人機(jī)自身性能約束。因此,針對(duì)以上不足,本文擬設(shè)計(jì)多層擴(kuò)展A*算法,提出一種顧及復(fù)雜環(huán)境約束的無人機(jī)三維航跡快速規(guī)劃方法,期望能高效、準(zhǔn)確地生成無人機(jī)航跡。
根據(jù)算法基于規(guī)則格網(wǎng)空間搜索的特點(diǎn)將環(huán)境模型構(gòu)建成格網(wǎng)空間。主要方式如下:由于無人機(jī)在改變方向時(shí)存在最小慣性距離的約束,可將該長度作為格網(wǎng)單元,將路徑規(guī)劃區(qū)域分為一個(gè)m×n的格網(wǎng),每個(gè)格網(wǎng)具有對(duì)應(yīng)的行列號(hào),存儲(chǔ)無人機(jī)可飛行的高度范圍信息。
構(gòu)建的模型空間表示為
Ωm={(Xi,Yj,ZXi,Yj)|0≤Xi≤m,0≤Yj≤n,
Z1 (1) 式中,Z1、Z2、Z3、Z4為高度值,且Z1 在構(gòu)建環(huán)境模型后,需要將典型復(fù)雜環(huán)境約束信息融入環(huán)境模型,地形信息采用仿射變換方式。氣象與禁飛區(qū)等柱型約束先豎直投影成多邊形,然后獲取約束區(qū)域邊界所經(jīng)過的環(huán)境模型行列號(hào)。危險(xiǎn)物約束簡化為球形或正方體類型融入環(huán)境模型。通視約束是指因某些無人機(jī)任務(wù)要求,需要無人時(shí)刻在至少一個(gè)地面站的通視下飛行,要求航跡始終符合地面站通視性要求。通視融入主要采用視域分析方法并以不斷模擬拔高各地面站監(jiān)測(cè)點(diǎn)高程,反復(fù)進(jìn)行視域分析的方式以獲取環(huán)境模型各格網(wǎng)約束信息。 構(gòu)建環(huán)境模型后,通過多層擴(kuò)展A*算法在環(huán)境模型中搜索出參考航跡,接著對(duì)參考航跡采用航跡簡化與航線平滑方法進(jìn)行優(yōu)化,可高效、準(zhǔn)確地生成無人機(jī)航跡。 受無人機(jī)本身硬件性能的限制,無人機(jī)在水平方向轉(zhuǎn)彎時(shí),轉(zhuǎn)彎角度受到最大水平轉(zhuǎn)彎角的限制,因此在算法搜索時(shí),新增8個(gè)方向值,每次搜索時(shí),僅能搜索與原先方向相同或左右最鄰近的兩方向。 無人機(jī)在爬升與俯沖時(shí)有最大俯仰角的限制,根據(jù)此特點(diǎn),算法在路徑格網(wǎng)搜索擴(kuò)展節(jié)點(diǎn)時(shí),根據(jù)水平擴(kuò)展距離與無人機(jī)最大俯仰角的大小計(jì)算本次擴(kuò)展豎直高度的可達(dá)范圍,然后在豎直可達(dá)范圍內(nèi)以固定高度間隔為基準(zhǔn)分層擴(kuò)展豎直節(jié)點(diǎn)。豎直高度可達(dá)范圍計(jì)算公式為 (2) 式中,Hcur為當(dāng)前高度;Hnext為本次擴(kuò)展高度取值范圍;Lc為格網(wǎng)寬度;α為最大俯仰角。 在擴(kuò)展多個(gè)節(jié)點(diǎn)后,需要改進(jìn)算法代價(jià)函數(shù)以快速獲得一系列最優(yōu)航跡節(jié)點(diǎn),而無人機(jī)航跡規(guī)劃一般受距離與飛行高度的影響,可能還受其他因素的影響。因此代價(jià)的計(jì)算方式為 J=ω1L+ω2Z+ω3T1+ω4T2 (3) 式中,ω1、ω2、ω3、ω4均為權(quán)重值,它根據(jù)應(yīng)用情況相應(yīng)取值;L為航跡段長度;Z為軌跡平均高度;T1、T2為影響因素代價(jià)。這些影響因素需要?dú)w一化到同一個(gè)數(shù)量級(jí)。 按照多層擴(kuò)展A*算法設(shè)計(jì)思路,從起始點(diǎn)開始逐格網(wǎng)依次搜索至目標(biāo)點(diǎn),得到格網(wǎng)間一系列點(diǎn)的坐標(biāo),按順序相連即是參考航跡。算法流程如圖2所示。 算法搜索得到的參考航跡曲折多變,無法滿足無人機(jī)不頻繁轉(zhuǎn)向或升降的實(shí)際需求,需要進(jìn)行航跡簡化,將頻繁的微小轉(zhuǎn)向又回復(fù)的航跡簡化為直線。其主要思路是根據(jù)相鄰方向向量的差異程度判斷是否簡化,簡化方向向量相近的點(diǎn),若判斷出連續(xù)兩方向向量與之前不相近,則為不簡化點(diǎn)。算法流程如圖3所示。 在進(jìn)行線簡化后,所生成的航線均是由一系列直線段構(gòu)成,需要采用樣條曲線進(jìn)行航線平滑,使其符合無人機(jī)平滑轉(zhuǎn)彎的實(shí)際飛行特點(diǎn),最終生成一條可飛航跡。 通過選取四川省甘孜藏族自治州金沙江附近山谷地帶大約2200 km2的范圍作為案例試驗(yàn)區(qū)域,設(shè)置航跡規(guī)劃初始參數(shù)為:最大俯仰角為20°,最大水平角為45°,最小航跡段為20 m,最低離地高度為10 m,最大飛行高度為4500 m,以航跡距離為代價(jià),權(quán)重系數(shù)ε為1.44,將地形、大氣環(huán)境約束區(qū)域、起止點(diǎn)添加至同一場(chǎng)景中,如圖4所示。 按照以上參數(shù)進(jìn)行航跡規(guī)劃試驗(yàn)。首先對(duì)算法在各步驟所生成的航跡進(jìn)行對(duì)比,如圖5所示。由圖5可知,無論是經(jīng)典A*算法、稀疏A*算法還是本文多層擴(kuò)展A*算法,在未進(jìn)行線簡化時(shí),其航跡均有波浪形式;平滑前的航跡在轉(zhuǎn)彎時(shí)均是直邊形式,而平滑后轉(zhuǎn)彎是曲線平滑過渡,更符合無人機(jī)的實(shí)際飛行特點(diǎn)。 然后將經(jīng)典A*算法、稀疏A*算法與本文多層擴(kuò)展A*算法分別進(jìn)行對(duì)比試驗(yàn),其航跡效果如圖6與圖7所示。 3種算法生成的結(jié)果信息見表1。 表1 試驗(yàn)1算法效率對(duì)比 由圖6整體航跡結(jié)果圖可知,3種算法航跡均能有效避開約束區(qū)域,且航跡主要差別在前半段部分,將其放大如圖7局部圖所示。由圖7與表1可知,經(jīng)典A*算法由于其擴(kuò)展方向不受限制,規(guī)劃時(shí)間長,其路徑僅考慮最短的需求,還造成路徑多曲折,頻繁轉(zhuǎn)向,也未考慮無人機(jī)性能約束。稀疏A*算法雖顧及了無人機(jī)自身性能特點(diǎn),并且在算法搜索中所規(guī)劃時(shí)間較短,但由于其擴(kuò)展節(jié)點(diǎn)過少,導(dǎo)致航跡缺乏最優(yōu)性。本文多層擴(kuò)展A*算法在其基礎(chǔ)上,采用多層擴(kuò)展的方式,規(guī)劃效率與精度都有一定的提升,同時(shí)顧及了無人機(jī)自身性能特點(diǎn)生成的航路為可飛航路,少轉(zhuǎn)向,更加適合無人機(jī)飛行。 試驗(yàn)1中起止點(diǎn)距離較短,適用于分析航跡,而航跡規(guī)劃算法效率體現(xiàn)不夠明顯。因此,再次設(shè)置參數(shù)模擬進(jìn)行試驗(yàn)2,以航跡距離與飛行高度為代價(jià),系數(shù)分別為0.6與0.4;權(quán)重系數(shù)ε為1.732;最大俯仰角修改為40°;最低離地高度為50 m;其余不變,途中設(shè)置約束區(qū)域,同樣將3種算法分別進(jìn)行對(duì)比分析,其時(shí)間與解最優(yōu)性見表2。 表2 試驗(yàn)2算法效率對(duì)比 通過表2對(duì)比分析可得,經(jīng)典A*算法仍存在效率問題,算法運(yùn)行緩慢;稀疏A*算法存在解的最優(yōu)性問題,航跡距離較長。本文多層擴(kuò)展A*算法能夠兼顧效率與解的最優(yōu)性,是更為理想的方法。 本文針對(duì)復(fù)雜環(huán)境約束下無人機(jī)三維航跡規(guī)劃效率緩慢與精度低的問題,設(shè)計(jì)了適應(yīng)于復(fù)雜環(huán)境約束的多層擴(kuò)展A*算法,能夠生成一條符合要求的飛行航跡。通過選擇案例區(qū)域與經(jīng)典A*算法、稀疏A*算法進(jìn)行對(duì)比試驗(yàn),結(jié)果證明本文方法能夠?qū)崿F(xiàn)安全繞開威脅,并且提高了航跡規(guī)劃的效率與精度。2 無人機(jī)三維航跡快速規(guī)劃方法
2.1 多層擴(kuò)展A*算法設(shè)計(jì)
2.2 無人機(jī)三維航跡規(guī)劃方法
2.3 航線優(yōu)化
3 試驗(yàn)與分析
4 結(jié) 語