呂石磊 范仁杰 李 震 陳嘉鴻 謝家興
(1.華南農(nóng)業(yè)大學電子工程學院(人工智能學院), 廣州 510642; 2.嶺南現(xiàn)代農(nóng)業(yè)科學與技術(shù)廣東省實驗室, 廣州 510642;3.人工智能與數(shù)字經(jīng)濟廣東省實驗室(廣州), 廣州 510330; 4.國家柑橘產(chǎn)業(yè)技術(shù)體系機械化研究室, 廣州 510642)
在農(nóng)業(yè)生產(chǎn)的主要環(huán)節(jié)中,作物病蟲害的監(jiān)測和施藥往往極度依賴人工,而人力資源不足的矛盾日益突出。隨著農(nóng)業(yè)航空植保技術(shù)的不斷發(fā)展,農(nóng)業(yè)無人機已經(jīng)廣泛地應(yīng)用到現(xiàn)代化農(nóng)業(yè)生產(chǎn)與管理環(huán)節(jié),通過無人機對植株進行精確監(jiān)測和精準施肥、施藥成為必然選擇[1-3],無人機航跡規(guī)劃是當前的研究熱點,存在人工可操作性差、作業(yè)成本高等問題。農(nóng)業(yè)無人機的飛行航跡規(guī)劃是否合理將直接影響到飛行任務(wù)的成敗,在山地果園、農(nóng)田等復(fù)雜地形環(huán)境下,無人機常常面臨著不同類型的威脅區(qū)和障礙物,如風切變區(qū)、基站塔、護林樹、設(shè)施農(nóng)用建筑等[4]。因此,有必要對農(nóng)業(yè)無人機進行合理、安全的飛行航跡規(guī)劃,以提升避障性能,并降低飛行成本。
國內(nèi)外學者提出了多種無人機航跡自主規(guī)劃算法,可分為傳統(tǒng)經(jīng)典算法和群體智能算法。傳統(tǒng)經(jīng)典算法包括Dijkstra算法[5]、A*算法[6]、人工勢場法[7]、模擬退火算法[8]等。董箭等[9]提出了基于改進A*算法的無人機航跡規(guī)劃方法,在一定程度上提升了航跡規(guī)劃效率及最短航跡判定準確性。陳俠等[10]改進了人工勢場法,并將其應(yīng)用于無人機航跡規(guī)劃,解決了搜索范圍隨機性過高、收斂速度慢等問題。群體智能算法包括遺傳算法(Genetic algorithm, GA)[11]、粒子群算法(Particle swarm optimization, PSO)[12]、蝙蝠算法(Bat algorithm, BA)[13]、人工蜂群算法(Artificial bee colony, ABC)[14]、蟻群算法(Ant colony optimization, ACO)[15]等。與傳統(tǒng)經(jīng)典算法相比,群體智能算法利用群體優(yōu)勢,在沒有集中控制,不提供全局模型的前提下,適合于求解具有非線性、多峰、多谷、非凸等特點的大規(guī)模復(fù)雜規(guī)劃問題。方勝良等[16]通過融合約束條件和搜索算法來減小搜索空間,并基于PSO算法得到全局最優(yōu)的無人機航跡規(guī)劃方案。王慶海等[17]提出了基于航跡長度和航跡角度等約束條件的無人機航跡規(guī)劃模型,并采用改進ABC算法得到航跡規(guī)劃方案。賀井然等[18]提出了融合k均值聚類方法的改進ABC算法,實驗結(jié)果表明,與傳統(tǒng)ABC算法相比,改進ABC算法在求解無人機航跡規(guī)劃問題時具有更好的收斂速度和搜索精度。王宇等[19]提出了基于改進ACO算法的無人機航跡規(guī)劃方法,以幫助植保無人機規(guī)劃出更加高效的飛行路徑。
與其他群體智能算法相比,BA算法具有求解速度快、參數(shù)調(diào)整量小等優(yōu)點。然而,由于全局搜索能力低,BA算法容易陷入局部最優(yōu),尋優(yōu)結(jié)果不穩(wěn)定。為了改進BA算法性能,張宇楠等[20]提出了基于自適應(yīng)步長機制的改進BA算法,使蝙蝠群體在迭代尋優(yōu)過程不易陷入局部最優(yōu)。肖輝輝等[21]將差分策略與BA算法結(jié)合起來,進一步提升算法性能。楊凱中等[22]將鴿群優(yōu)化算法的羅盤算子用于幫助蝙蝠群體快速找到高質(zhì)量的個體,有效提升了算法的搜索能力。陳東寧等[23]針對多形態(tài)作用力BA算法全局搜索能力強、收斂速度快的優(yōu)勢,以及多階段自適應(yīng)信息素機制ACO算法局部精細化能力強的特點,將改進BA算法和改進ACO算法進行串行混合,提出了多階段自適應(yīng)混合智能算法。GAN等[24]提出了基于迭代局部搜索和隨機慣性權(quán)值的改進ILSSIWBA算法(Bat algorithm based on iterative local search and stochastic inertia weight),該算法對局部最優(yōu)進行干擾并進行局部重搜索,具有較強的跳出局部最優(yōu)的能力。WANG等[25]提出了融合差分進化算法的改進BA算法,并將其應(yīng)用于求解軍事無人機的航跡規(guī)劃問題。
本文針對傳統(tǒng)BA算法在求解高維度問題時容易陷入局部最優(yōu)且求解精度低的問題,提出融合脈沖變頻策略、自適應(yīng)局部搜索策略和變異機制的改進IBA-FCS算法(Improved bat algorithm using frequency conversion strategy);針對農(nóng)業(yè)無人機在丘陵山地果園復(fù)雜地形環(huán)境下的安全航跡規(guī)劃問題,提出融合障礙物威脅區(qū)、無人機飛行高度和轉(zhuǎn)角等約束的航跡規(guī)劃模型;應(yīng)用IBA-FCS算法求解航跡規(guī)劃模型,并將模型的求解空間由笛卡爾坐標系變換到圓柱坐標系,減小模型的有效可行解空間,以期得到安全可靠且低成本的農(nóng)用無人機航跡規(guī)劃方案。
BA算法利用蝙蝠在覓食時所發(fā)出脈沖的頻率f、響度A、脈沖發(fā)射率R的變化構(gòu)建模型。在算法迭代過程中,蝙蝠個體i的參數(shù)更新可描述為:
(1)
(2)
fi=fmin+(fmax-fmin)β(β∈[0,1])
(3)
式中fi——蝙蝠個體i的頻率
fmax、fmin——f的最大值、最小值
t——當前迭代次數(shù)
β——隨機向量,服從均勻分布
x*——當前的全局最優(yōu)解
(2)在當前全局最優(yōu)解附近進行局部搜索
(4)
式中ε——隨機數(shù)
At——當前所有蝙蝠的平均響度
(3)更新脈沖響度A和脈沖發(fā)射率R
(5)
(6)
式中α、γ——常量,一般取0.9
Rmax——最大發(fā)射頻率
隨著迭代次數(shù)的增加,可得到
(7)
BA算法的搜索過程包括全局搜索和局部搜索。在全局搜索操作中,蝙蝠i的位置更新過程主要受脈沖頻率fi、當前全局最優(yōu)解x*和先前速度等參數(shù)變化的影響。首先,針對傳統(tǒng)BA算法沒有考慮蝙蝠i的個體最優(yōu)解對其位置更新過程的影響,在蝙蝠i的個體位置更新公式中引入個體最優(yōu)解對其位置更新過程的影響;其次,傳統(tǒng)BA算法的脈沖頻率fi的參數(shù)變化僅與上邊界fmax和下邊界fmin相關(guān),頻率fi的參數(shù)變化不能隨著算法的迭代進程自適應(yīng)變化。綜合上述分析,提出在傳統(tǒng)BA算法全局搜索操作中加入脈沖變頻策略[26]。IBA-FCS算法使用2個自適應(yīng)變頻的脈沖頻率分別表征個體最優(yōu)解和全局最優(yōu)解對蝙蝠i位置更新過程的影響,即f1和f2;同時,f1和f2隨當前目標函數(shù)的適應(yīng)值和算法的迭代進程進行參數(shù)自適應(yīng)變化。IBA-FCS算法的全局搜索操作為
(8)
f1=αb(1-e-|Favg-Fmin|)+γb(1-t/tmax)+fmin
(9)
(10)
(11)
式中h*——蝙蝠i的當前個體最優(yōu)解
r1、r2——(0.5,1.5)范圍內(nèi)的隨機數(shù)
Favg——蝙蝠群體的當前函數(shù)適應(yīng)度均值
Fmin——當前最優(yōu)蝙蝠個體的函數(shù)適應(yīng)度
tmax——算法最大迭代次數(shù)
μ——位置參數(shù)的遞減權(quán)重系數(shù),用于約束蝙蝠i全局搜索操作的更新步長,取為(0,1]
ωmax、ωmin——ω的最大值、最小值
ωb——速度參數(shù)的遞減權(quán)重系數(shù)
ωb較大保證了算法前期具有較強的全局搜索能力,ωb較小使算法后期具有較強的局部搜索能力。參數(shù)f1主要受目標函數(shù)適應(yīng)度和算法迭代進程的影響,二者權(quán)重系數(shù)分別為正常數(shù)αb和γb;若記參數(shù)f1與f2之和為常數(shù)SF,則f2=SF-f1。隨著算法迭代進程變化,參數(shù)f1的取值將從SF遞減為fmin,參數(shù)f2的取值將從0遞增為SF-fmin。在算法搜索過程的前期,參數(shù)f1的值較大能夠增加蝙蝠群體的多樣性,從而增強算法的全局搜索能力;在算法搜索過程的后期,f2的值較大能夠保證算法具有較好的收斂性,從而增強算法的尋優(yōu)精度。
(12)
其中
(13)
式中δ——隨機向量
Vr——目標函數(shù)可行解域的邊界距離與蝙蝠群體數(shù)量的比值向量,目的是使局部搜索步長能夠同求解問題的規(guī)模自適應(yīng)變化
g(k)——隨算法的迭代過程變化的指數(shù)遞減函數(shù),用來約束蝙蝠個體i局部搜索操作的更新步長
(14)
(15)
(1)設(shè)置蝙蝠種群規(guī)模、最大迭代次數(shù)、初始響度A0、初始速度V0、頻率f、 常數(shù)α和γ。
(2)根據(jù)式(9)更新脈沖頻率f,根據(jù)式(11)更新慣性權(quán)重系數(shù)ωb,根據(jù)式(14)、(15)更新響度A和發(fā)射率R。
(3)根據(jù)式(8)更新蝙蝠個體速度,選擇式(10)更新蝙蝠個體位置;若蝙蝠個體滿足局部搜索條件,則根據(jù)式(12)、(13)進行局部搜索。
(4)判斷蝙蝠個體是否進行變異操作,如若滿足條件,則進行變異,并計算適應(yīng)度。
(5)根據(jù)適應(yīng)度更新蝙蝠個體位置參數(shù)和全局最優(yōu)解。
(6)判斷是否達到終止條件,如不滿足終止條件,則轉(zhuǎn)至步驟(2)。
使用9個測試函數(shù)來分析算法性能,如表1所示。其中,f1~f4為單峰函數(shù),f5~f9為多峰函數(shù)。測試環(huán)境:Microsoft Windows 10 Pro 64-bit,Intel Core i7-10700F @ 2.90 GHz,16.0 GB RAM,Matlab R2019a。對照算法包括PSO算法、GA算法、傳統(tǒng)BA算法和改進BA算法(ILSSIWBA)。
表1 測試函數(shù)Tab.1 Test functions
IBA-FCS算法參數(shù)設(shè)置為:速度參數(shù)權(quán)重系數(shù)隨算法迭代進程變化自適應(yīng)遞減,ωmax=0.9,ωmin=0.1;脈沖頻率權(quán)重系數(shù)αb=1,γb=1.5;雙脈沖頻率之和SF=3,fmin=0.5,fmax=2.5;位置參數(shù)權(quán)重系數(shù)隨算法迭代進程變化線性遞減,μmax=0.7,μmin=0.3;算法其余控制參數(shù)為Amin=0.3,Rmax=0.7。各對照算法的參數(shù)設(shè)置同原文獻。PSO算法:學習因子c1=c2=2,慣性權(quán)重w=0.729。傳統(tǒng)BA算法:脈沖頻率范圍為[-2,0],響度A初始值范圍為(1,2),脈沖發(fā)射率R初始值為(0,0.5),最大發(fā)射率Rmax=0.9。GA算法:染色體交叉率取值范圍為(0.4,1),染色體變異率為(0,0.5)。ILSSIWBA算法:fmin=-2,fmax=2,隨機慣性權(quán)重的最大因子μmax=0.9,隨機慣性權(quán)重的最小因子μmin=0.4,隨機慣性權(quán)重與其均值的偏差σ=0.2,脈率上限r(nóng)∞=0.7,響度下限A∞=0.6。各算法種群規(guī)模均為500,最大迭代次數(shù)均為300次,獨立運行50次。各算法求解50維度(D)測試函數(shù)的結(jié)果,包括函數(shù)最優(yōu)值、最壞值、均值和標準方差,如表2所示。
由表2可知,在尋優(yōu)精度方面,GA算法和傳統(tǒng)BA算法對50D部分單峰測試函數(shù)(f1、f2、f3)的平均求解精度稍優(yōu)于PSO算法;在部分多峰測試函數(shù)(f5、f7、f8、f9)中,傳統(tǒng)BA算法和ILSSIWBA算法的平均求解精度優(yōu)于PSO算法。與對照算法相比,IBA-FCS算法在單峰函數(shù)和多峰函數(shù)中均具有更好的求解精度,并且基于不同測試函數(shù)測試結(jié)果的標準差可知,IBA-FCS算法具有較好的魯棒性。在算法運行時間方面,由于IBA-FCS算法中加入了多種評價判斷策略,其運行時間會稍差于傳統(tǒng)BA算法和PSO算法,但仍處于同一數(shù)量級。
多峰函數(shù)一般用于檢驗群體智能算法跳出局部最優(yōu)值的全局性尋優(yōu)性能。在本文的測試函數(shù)中,函數(shù)f5是具有大量局部最優(yōu)值的典型多峰測試函數(shù),其二維函數(shù)圖像類似橫斷山脈,與山地果園飛行環(huán)境形似,尋優(yōu)難度相對較大。由表2可知,IBA-FCS算法較對照算法在求解該多峰函數(shù)的過程中仍具有明顯優(yōu)勢。但是,受農(nóng)業(yè)無人機作業(yè)環(huán)境制約,其航跡規(guī)劃方案不僅要求尋優(yōu)到最短飛行路徑,還需要綜合考慮障礙物、飛行參數(shù)等多因素約束。因此,農(nóng)業(yè)無人機安全航跡規(guī)劃模型是一個多約束、非線性的復(fù)雜優(yōu)化問題,與典型多峰測試函數(shù)相比,其對群體智能算法的尋優(yōu)能力有更高的要求。
表2 50D測試函數(shù)的計算結(jié)果Tab.2 Calculation results of 50D test functions
采用復(fù)合函數(shù)來模擬山地果園的無人機飛行環(huán)境地形,形成三維數(shù)字高程地圖模型
(16)
式中n′——山坡數(shù)量
hi——山坡高度相關(guān)控制參數(shù)
(xi,yi)——第i個山坡的中心坐標
xsi、ysi——對應(yīng)山坡沿x軸和y軸方向的衰減量,用于約束坡度數(shù)據(jù)
at~gt——系數(shù)
z1(x,y)通過不同系數(shù)(at,bt,ct,dt,et,ft,gt)的設(shè)定組合模擬數(shù)字地圖多樣化的基準地形特征,但僅通過z1(x,y)難以描述復(fù)雜多樣的丘陵山地地形。z2(x,y)用于表征數(shù)字地圖的丘陵山坡數(shù)據(jù),以增大地形的起伏程度。最終取z1和z2的最大值作為對應(yīng)點的高程,形成山地果園無人機仿真飛行環(huán)境地形。
3.2.1路徑最短約束
無人機航跡規(guī)劃的首要目標是尋找起飛點和目標點之間最短路程的飛行路徑方案。一般地,記無人機的飛行路徑點為Wij=(xij,yij,zij),即在第i條飛行路徑中第j個路徑點的無人機三維空間位置,則整條飛行路徑Xi可表示為包含n個路徑點的三維數(shù)組。將2個路徑點之間的歐氏距離記作路徑段lWijWi,j+1,則與無人機飛行路徑相關(guān)的成本函數(shù)F1為
(17)
3.2.2威脅最小約束
無人機通過躲避障礙物來確保安全作業(yè)航跡。設(shè)定障礙物威脅區(qū)為圓柱體形式,其投影如圖1所示,記圓柱體中心坐標為Ck,半徑為Rk,外圍為碰撞威脅區(qū)D,則無人機的避障威脅成本與其路徑段WijWi,j+1和障礙物中心Ck的距離dk成反比。將飛行環(huán)境下的障礙物威脅區(qū)集合記作K,障礙物威脅成本懲罰系數(shù)記作γc,則與無人機避障威脅相關(guān)的成本函數(shù)F2為
圖1 障礙物威脅區(qū)示意圖Fig.1 Diagram of obstacle threat area
(18)
其中
(19)
3.2.3飛行高度約束
無人機的飛行高度通常受到最小高度hmin和最大高度hmax的約束限制,如圖2所示,其中Tij為地形高度,zij為無人機相對于海平面的高度。將無人機在路徑點Wij處距離基準地形地面的高度記作hij,即zij和Tij的差,則與無人機當前路徑點Wij相關(guān)的成本函數(shù)Hij為
圖2 飛行高度約束示意圖Fig.2 Diagram of flight height constraint
(20)
同時,將無人機飛行高度超出約束限制條件的懲罰系數(shù)記作γh,則與無人機飛行路徑相關(guān)的成本函數(shù)F3為
(21)
3.2.4飛行轉(zhuǎn)角約束
無人機的飛行轉(zhuǎn)角控制參數(shù)主要包括水平轉(zhuǎn)彎角和豎直俯仰角,這2個參數(shù)變量必須符合無人機的實際轉(zhuǎn)角約束限制,否則航跡規(guī)劃模型無法生成具有可行性的飛行路徑。如圖3所示,lWijWi,j+1和lWi,j+1Wi,j+2表示無人機飛行路徑中2個連續(xù)路徑段,lW′ijW′i,j+1和lW′i,j+1W′i,j+2是其在xOy平面的投影。
圖3 飛行轉(zhuǎn)角控制參數(shù)示意圖Fig.3 Diagram of flight angle control parameters
記k為軸正方向的單位向量,則lW′ijW′i,j+1的計算式和水平轉(zhuǎn)彎角αij、豎直俯仰角βi,j+1計算式為
lW′ijW′i,j+1=k×(lWijWi,j+1×k)
(22)
(23)
(24)
同時,將無人機的水平轉(zhuǎn)彎角和豎直俯仰角超出約束限制條件的懲罰系數(shù)分別記作a1和a2,則與無人機飛行轉(zhuǎn)角相關(guān)的成本函數(shù)F4為
(25)
3.2.5多因素約束的飛行成本函數(shù)
綜合考慮與無人機飛行路徑Xi相關(guān)的最短路徑、最小威脅,以及飛行高度和飛行轉(zhuǎn)角等限制,基于多因素約束的飛行成本函數(shù)F為
(26)
式中bk——各因素的權(quán)重系數(shù)
將改進IBA-FCS算法應(yīng)用于求解農(nóng)業(yè)無人機安全航跡規(guī)劃模型??紤]模型的多因素約束的飛行成本函數(shù)可行解空間域大,進而導(dǎo)致對飛行路徑和航跡規(guī)劃方案的尋優(yōu)難度較大,本文結(jié)合無人機的飛行轉(zhuǎn)角約束特點,提出將航跡規(guī)劃模型的求解空間由笛卡爾坐標系變換到圓柱坐標系,使得IBA-FCS算法在圓柱坐標系空間有更優(yōu)的計算效率,進而提升航跡規(guī)劃方案質(zhì)量。
圓柱坐標系(Cylindrical coordinate system)是一種三維坐標系統(tǒng),它是二維極坐標系向z軸的延伸。在笛卡爾坐標系中,任給一點P,記ρ和θ為點P在xOy平面投影點的極坐標,z′是點P的豎坐標,則點P的柱面坐標為P(ρ,θ,z′),其中ρ≥0,0≤θ≤2π。
將無人機飛行航跡中的各子路徑記作圓柱坐標系的一組向量(ρ,θ,z′),其表示無人機從一個航點到另一個航點的位置變化向量,取值范圍設(shè)為ρ∈(0,Lpath),方位角θ∈(-π,π),高度z′∈(z′min,z′max),其中Lpath為子路徑長度最大變化量,z′min為子路徑高度的最小變化量,z′max為子路徑高度的最大變化量。一條包含n個路徑點的飛行路徑Ωi可以表示為
Ωi=(ρi1,θi1,z′i1,ρi2,θi2,z′i2,…,ρin,θin,z′in)
(27)
通過將IBA-FCS算法中蝙蝠個體i的位置描述為Ωi,與該蝙蝠個體i相關(guān)的速度向量用位置變化向量ΔΩi來表示,即
ΔΩi=(Δρi1,Δθi1,Δz′i1,Δρi2,Δθi2,
Δz′i2,…,Δρin,Δθin,Δz′in)
(28)
(29)
其中
為了確定蝙蝠群體的個體最優(yōu)位置Pi和全局最優(yōu)位置Pg,需要將基于柱面坐標的飛行路徑Ωi映射到笛卡爾坐標系的路徑Di,以便計算飛行成本函數(shù)適應(yīng)度。圓柱坐標系的點Xij=(ρij,θij,z′ij)∈Ωi到笛卡爾坐標系的點Qij=(xij,yij,zij)∈Di的映射過程為
(30)
Pi和Pg的更新公式為
(31)
(32)
實驗包括仿真實驗和實地場景實驗。在仿真實驗環(huán)境中,基于Matlab R2019a軟件并采用式(16)構(gòu)建了無人機的飛行環(huán)境基準地形,系數(shù)組合(at,bt,ct,dt,et,ft,gt)為(10,0.2,0.1,0.6,1,0.1,0.1),h=(40,50,40,40,50,40,40),x0=(100,600,430,160,400,300,500),y0=(1000,110,300,850,600,700,500),xs=(300,200,200,400,300,200,400),ys=(200,200,200,200,200,200,300),該地形的空間區(qū)域為1 000 m×1 000 m×400 m,飛行環(huán)境設(shè)置了8~12個障礙物威脅區(qū);無人機的最小飛行高度hmin=100 m,最大飛行高度hmax=300 m。
為充分評估農(nóng)業(yè)無人機安全航跡規(guī)劃模型性能,本文設(shè)置了3次飛行任務(wù),參數(shù)設(shè)置如表3所示,每次任務(wù)的無人機飛行路徑點數(shù)量均為12(不包括出發(fā)點和目的點)。在算法測試方面,IBA-FCS算法的對照算法包括PSO算法、傳統(tǒng)BA算法和ILSSIWBA算法,各算法種群規(guī)模均為500,最大迭代次數(shù)均為300次,獨立運行10次,其余算法參數(shù)同2.5節(jié)。
表3 航跡規(guī)劃任務(wù)參數(shù)Tab.3 Parameters of track planning task m
針對不同的飛行任務(wù),各算法求解的無人機飛行成本函數(shù)適應(yīng)度如表4所示。其中,飛行任務(wù)Ⅰ、Ⅱ、Ⅲ障礙物威脅區(qū)的數(shù)量分別為8、10、12,無人機飛行環(huán)境復(fù)雜度依次增加,即能夠?qū)Ω魉惴ǖ膶?yōu)性能進行多維度測試分析。實驗結(jié)果表明,在3次飛行任務(wù)中,與各對照算法相比,IBA-FCS算法結(jié)果均具有一定優(yōu)勢。從定性分析的角度看,在飛行任務(wù)Ⅰ、Ⅲ中,傳統(tǒng)BA算法結(jié)果優(yōu)于PSO算法,但在飛行任務(wù)Ⅱ中,傳統(tǒng)BA算法的均值和最差解不如PSO算法,這表明傳統(tǒng)BA算法具有一定的跳出局部最優(yōu)的能力,但其尋優(yōu)魯棒性不強;ILSSIWBA算法結(jié)果優(yōu)于PSO算法和傳統(tǒng)BA算法,但劣于IBA-FCS算法,而IBA-FCS算法相較于對照算法有效降低了陷入局部最優(yōu)的概率,并具有更高的全局搜索能力和尋優(yōu)魯棒性。從定量分析的角度看,與傳統(tǒng)BA算法相比,IBA-FCS算法在3次飛行任務(wù)中求解的飛行成本函數(shù)適應(yīng)度依次下降21.644 4%、21.768 1%、17.593 9%,其飛行成本函數(shù)適應(yīng)度平均下降20.335 5%。
表4 飛行成本函數(shù)適應(yīng)度Tab.4 Fitness of flight cost functions
基于各算法求解的無人機航跡規(guī)劃方案之一(俯視圖)如圖4所示,圖中,方形點為出發(fā)點,圓形點為目的點。從圖中可知,對照算法求解的航跡規(guī)劃方案均不能逼近最優(yōu)的飛行路徑,部分路徑段出現(xiàn)嚴重偏離目的點方向的情況,嚴重影響了飛行成本函數(shù)適應(yīng)度;與之相比,IBA-FCS算法求解的飛行路徑趨于平滑,在躲避障礙物威脅區(qū)的基礎(chǔ)上始終與目的點方向保持一致,因此其無人機航跡規(guī)劃方案質(zhì)量更好。
圖4 航跡規(guī)劃方案Fig.4 Track planning schemes
本文提出將航跡規(guī)劃模型的求解空間由笛卡爾坐標系變換到圓柱坐標系,以此來提升IBA-FCS算法的尋優(yōu)效率。為進一步探究不同坐標系對IBA-FCS算法求解無人機航跡規(guī)劃方案的影響,基于相同的飛行環(huán)境設(shè)置了飛行任務(wù)對照實驗。其中,出發(fā)點為(100 m,900 m,100 m),目的點為(900 m,100 m,200 m)?;诘芽栕鴺讼岛蛨A柱坐標系的IBA-FCS算法求解的無人機飛行成本函數(shù)適應(yīng)度(獨立運行10次)如表5所示,無人機航跡規(guī)劃方案之一(俯視圖)如圖5所示,其中IBA-FCS表示基于圓柱坐標系的改進蝙蝠算法,RIBA-FCS算法表示基于笛卡爾坐標系的改進蝙蝠算法。實驗結(jié)果表明,基于圓柱坐標系的IBA-FCS算法尋優(yōu)性能和魯棒性整體優(yōu)于其在笛卡爾坐標系的算法結(jié)果,飛行成本函數(shù)適應(yīng)度平均下降4.612 7%。這主要是因為圓柱坐標系能夠通過控制柱坐標向量的方位角來在IBA-FCS算法初始化階段生成滿足無人機飛行轉(zhuǎn)彎角約束的可行解,進而減小可行解域的搜索空間,同時通過約束極軸和方位角分量,以及其與無人機最大飛行速度、最大轉(zhuǎn)彎角度之間的相互關(guān)系來提高算法的尋優(yōu)效率。
表5 基于不同坐標系的IBA-FCS算法結(jié)果Tab.5 Results of IBA-FCS algorithm using different coordinate systems
圖5 基于不同坐標系的航跡規(guī)劃方案Fig.5 Track planning schemes using different coordinate systems
為進一步探究基于IBA-FCS算法的農(nóng)業(yè)無人機安全航跡規(guī)劃模型性能,在廣東省廣州市天河區(qū)廣東農(nóng)業(yè)技術(shù)展示中心的四季蜜芒種植園進行了實地場景實驗。首先,應(yīng)用無人機高空航拍整體地形(圖6),然后劃出進行實驗的空間區(qū)域,即100 m×60 m×30 m;采用手持式地形采樣儀收集實驗區(qū)域地形的三維點云數(shù)據(jù)[28],通過最鄰近插值算法生成無人機飛行環(huán)境的三維數(shù)字高程地圖(圖7),并將在喬木植株周邊設(shè)置3個障礙物威脅區(qū)(1,2,3),其坐標參數(shù)如表6所示。
圖6 實地場景實驗的航拍地形Fig.6 Aerial terrain in field experiment
圖7 實地場景實驗的無人機飛行環(huán)境Fig.7 UAV flight environment in field experiment
表6 實地場景實驗障礙物威脅區(qū)參數(shù)Tab.6 Parameters of obstacle threat zones in field experiment m
實地場景實驗的飛行任務(wù)出發(fā)點設(shè)為(10 m,10 m,15 m),目的點設(shè)為(50 m,50 m,15 m),基于IBA-FCS算法在圓柱坐標系求解的無人機航跡規(guī)劃方案(俯視圖)如圖8所示,在滿足飛行轉(zhuǎn)角等約束的基礎(chǔ)上,無人機的飛行路徑能夠躲避障礙物威脅區(qū),并收斂于最優(yōu)航跡。
圖8 實地場景實驗的航跡規(guī)劃方案Fig.8 Track planning schemes in field experiment
(1)針對傳統(tǒng)BA算法易陷入局部最優(yōu)解的缺點,通過設(shè)計脈沖變頻策略、自適應(yīng)局部搜索策略和變異機制來提出改進的IBA-FCS算法,并應(yīng)用基準測試函數(shù)驗證了該算法較對照算法具有更好的尋優(yōu)性能。
(2)針對山地果園復(fù)雜地形環(huán)境下的農(nóng)業(yè)無人機最優(yōu)航跡規(guī)劃問題,結(jié)合無人機的飛行環(huán)境地形數(shù)據(jù),在綜合考慮最短路徑、最小威脅,以及飛行高度和飛行轉(zhuǎn)角等多因素約束的基礎(chǔ)上,構(gòu)建了農(nóng)業(yè)無人機安全航跡規(guī)劃模型。
(3)應(yīng)用IBA-FCS算法求解航跡規(guī)劃模型,并通過將模型的可行解空間由笛卡爾坐標系變換到圓柱坐標系來提升算法的尋優(yōu)效率,通過設(shè)計多個不同數(shù)量障礙物的航跡規(guī)劃任務(wù)對照實驗,表明IBA-FCS算法較傳統(tǒng)對照算法具有更好的航跡規(guī)劃效果。其中,IBA-FCS算法較傳統(tǒng)BA算法飛行成本函數(shù)適應(yīng)度平均下降20.335 5%,基于圓柱坐標系的IBA-FCS算法求解的飛行成本函數(shù)適應(yīng)度較基于笛卡爾坐標系求解的飛行成本函數(shù)適應(yīng)度平均下降4.612 7%。仿真實驗和實地場景實驗均驗證了山地果園靜態(tài)障礙環(huán)境下本文提出的無人機安全航跡規(guī)劃設(shè)計方法的有效性。