閆曉東,常天慶,郭理彬
(陸軍裝甲兵學(xué)院 兵器與控制系, 北京 100072)
與平面路徑規(guī)劃相比,越野戰(zhàn)場環(huán)境下的無人車路徑規(guī)劃主要有以下3個特點(diǎn):一是地形建模困難,受地表質(zhì)地、起伏坡度等因素影響,常規(guī)的二維柵格模型無法有效體現(xiàn)越野地形環(huán)境特點(diǎn);二是約束條件多,越野戰(zhàn)場環(huán)境下進(jìn)行無人車路徑規(guī)劃,除了需要考慮建筑物、壕溝等阻礙通行的障礙物外,還需要考慮無人車機(jī)動性能、地表材質(zhì)、地形坡度、敵方火力分布和火力毀傷性能等因素;三是目標(biāo)函數(shù)難確定,約束條件多帶來的困難就是目標(biāo)函數(shù)難確定,不能直接以路徑長度或者機(jī)動時間作為目標(biāo)函數(shù)。因此,越野戰(zhàn)場環(huán)境下的無人車路徑規(guī)劃技術(shù)受到較大挑戰(zhàn)。針對上述特點(diǎn)和困難,許多學(xué)者進(jìn)行了不斷地探索,其中吳天羿等通過研究和分析地形坡度和地表屬性對于車輛路徑規(guī)劃的綜合影響,改進(jìn)評價函數(shù)等方法設(shè)計(jì)了考慮坡度和粗糙度約束的路徑優(yōu)化算法。JI Y等通過采集的越野地形信息進(jìn)行隨機(jī)采樣路徑規(guī)劃,然后構(gòu)建越野路徑規(guī)劃評價函數(shù)的方法進(jìn)行越野環(huán)境下無人車路徑規(guī)劃。田洪青等采用人工勢能場算法對越野環(huán)境建模,評估車輛通行風(fēng)險,提出了基于勢能場模型的概率圖算法。趙夢彤融合通過性分級和推薦車速,設(shè)計(jì)以通過時間最短為目標(biāo)的改進(jìn)蟻群算法,得到兼顧通行效率、通過性和安全性的優(yōu)化路徑。鞏緒生等通過采用全局信息與局部信息、前期規(guī)劃結(jié)果與當(dāng)前規(guī)劃相結(jié)合的方法,提出了一種越野環(huán)境下的動態(tài)路徑規(guī)劃方法。王坤等通過建立通行禁忌表和坡度權(quán)值表,在縮小前期搜索范圍的基礎(chǔ)上實(shí)現(xiàn)了三維空間路徑規(guī)劃。
本文在以往學(xué)者研究的基礎(chǔ)上,針對越野戰(zhàn)場環(huán)境特點(diǎn)對戰(zhàn)場地形環(huán)境和戰(zhàn)場威脅進(jìn)行建模,提出了針對越野戰(zhàn)場環(huán)境的無人車路徑規(guī)劃算法,并通過仿真驗(yàn)證了算法的有效性。
越野戰(zhàn)場環(huán)境下,對無人車路徑規(guī)劃有影響的地形環(huán)境因素主要有建筑物、獨(dú)立石等獨(dú)立突出障礙物,斷崖、反坦克壕等線型障礙物,水塘、雷場等面狀障礙物,以及地面坡度、地表質(zhì)地等。常規(guī)的地形柵格模型以0和1分別表示某個柵格有無障礙物,無人車只能到達(dá)沒有障礙物的位置,不能到達(dá)有障礙物的位置,對于某一個具體的位置,無人車能否到達(dá)是確定的。但是在立體空間中,無人車能否到達(dá)某一個具體位置是不確定的,例如,圖1中小方格的邊長代表實(shí)地距離為1 m,方格中的數(shù)字為該方格中心位置的高程,可以看出,和雖然為相鄰的兩個方格,但是兩者的高程差達(dá)到了10 m,無人車不可能從直接到達(dá),而從直接到達(dá)卻是可以的。為此,本文針對越野地形特點(diǎn)建立三維高程模型、坡度模型和地面可通性模型。
圖1 高程柵格示意圖Fig.1 Diagram of elevation grid
2.1.1 三維高程模型
依據(jù)地形環(huán)境的高程信息建立戰(zhàn)場三維高程模型,具體方法為:確定采樣精度,并均勻確定橫向個數(shù)為,縱向個數(shù)為的采樣點(diǎn),以采樣點(diǎn)所在位置的高程值作為采樣值,得到一個*階矩陣,將矩陣中元素所在行數(shù)作為縱坐標(biāo),所在列數(shù)作為橫坐標(biāo),元素值作為垂直坐標(biāo),建立地形的三維高程模型,如圖2所示。
圖2 三維高程模型生成示意圖Fig.2 Generation of 3D elevation model
2.1.2 坡度模型
根據(jù)相鄰采樣點(diǎn)之間的平均坡度計(jì)算和生成作戰(zhàn)地區(qū)的坡度模型,并用一個(=*)階方陣來表示,矩陣中元素的數(shù)值根據(jù)式(1)確定:
(1)
式(1)中:和為相鄰高程采樣點(diǎn)在矩陣中對應(yīng)元素的索引坐標(biāo)值;1為采樣點(diǎn)相對采樣點(diǎn)的平均坡度;為采樣點(diǎn)和采樣點(diǎn)之間的平面直線距離,如圖3所示。(,)為采樣點(diǎn)和采樣點(diǎn)的相鄰位置關(guān)系判定值,當(dāng)與符合8鄰域位置關(guān)系時令(,)=1,否則令(,)=0。
圖3 坡度模型示意圖Fig.3 Schematic diagram of slope model
2.1.3 地面可通性模型
地面可通性模型用來描述當(dāng)前位置與相鄰位置之間是否能夠滿足無人車的直接通行條件,對無人車能否通行產(chǎn)生影響的因素主要有動力因素、車體結(jié)構(gòu)因素和地表質(zhì)地因素。其中,動力因素主要影響無人車的最大行駛坡度,車體結(jié)構(gòu)因素主要影響無人車的適宜行駛地面類型、輪胎或履帶抓地能力以及最大接近角、最大離去角和最大縱向通過角。為簡化模型,本文認(rèn)為無人車在最大設(shè)計(jì)行駛坡度范圍內(nèi)都滿足輪胎或履帶的抓地能力條件。地面可通性模型用一個(=*)階方陣表示,具體計(jì)算公式為
=()*(,,)*()*(,)
(2)
式中:()是關(guān)于的函數(shù),當(dāng)采樣點(diǎn)和采樣點(diǎn)之間的平均坡度不大于無人車的最大設(shè)計(jì)行駛坡度時令()=1,否則令()=0。為路徑規(guī)劃過程中的父節(jié)點(diǎn)位置索引坐標(biāo)值,當(dāng)為起始點(diǎn)時,為自身,(,,)用來判定無人車由位置經(jīng)到達(dá)的接近角、離去角和縱向通過角是否超過設(shè)計(jì)最大值,當(dāng)未超過時令(,,)=1,否則令(,,)=0。()為地表通行性函數(shù),用來反應(yīng)采樣點(diǎn)處的地表質(zhì)地能否滿足無人車通行條件,當(dāng)采樣點(diǎn)處為河流、水塘、沼澤等無人車無法通行質(zhì)地的條件時,令()=0,否則令()=1。(,)含義同式(1)。通過式(2)可以確定出所有采樣點(diǎn)之間的可通過性,=1表示無人車能夠直接從位置到達(dá)位置,=0表示不可到達(dá)。
越野戰(zhàn)場環(huán)境下的路徑規(guī)劃,除了需要考慮地形環(huán)境和無人車機(jī)動性能外,敵方兵力兵器的分布位置和毀傷性能也是需要考慮的重要因素,在進(jìn)行路徑規(guī)劃時,應(yīng)盡量避開敵方兵力兵器的偵察范圍和有效火力打擊范圍,而當(dāng)無法避開時則盡量減少進(jìn)入上述區(qū)域。為此,本文根據(jù)敵方兵力兵器的分布位置和毀傷性能建立戰(zhàn)場威脅人工勢場模型,根據(jù)戰(zhàn)場威脅人工勢場模型可以確定作戰(zhàn)區(qū)域內(nèi)任意位置的受敵方威脅程度值,具體數(shù)值通過式(3)~式(6)來計(jì)算。
(3)
(4)
當(dāng)(,)≤時
(5)
當(dāng)(,)>時
=*((,)-+1)
(6)
其中,(,)為任意采樣點(diǎn)的下標(biāo)值坐標(biāo),(,)為該位置的受威脅程度值,(,)為敵方第個火力點(diǎn)在位置(,)產(chǎn)生的威脅程度值,為敵方火力點(diǎn)數(shù)量值,為敵方第個火力點(diǎn)的有效射程,(,)為敵方第個火力點(diǎn)所在位置(,)與位置(,)之間的直線距離,為敵方第個火力點(diǎn)的相對威脅程度值,為敵方第個火力點(diǎn)受壓制程度值,(,)為敵方第個火力點(diǎn)與位置(,)的通視判定函數(shù),當(dāng)兩者可通視時令(,)=1,否則令(,)=0,通視判定方法如圖4所示,和為距離修正常數(shù)。
圖4 通視判定方法示意圖Fig.4 Intervisibility judgment
A算法是常用的路徑規(guī)劃算法之一,具有原理簡單、搜索效率高等優(yōu)點(diǎn),它在Dijkstra算法的基礎(chǔ)上引入了貪婪算法,是一種依據(jù)圖搜索的智能啟發(fā)式算法。A算法進(jìn)行路徑搜索的代價函數(shù)可以表示為
()=()+Δ()+()
(7)
式中:為父節(jié)點(diǎn)位置;為子節(jié)點(diǎn)位置;()為子節(jié)點(diǎn)位置的綜合代價值;()為從起點(diǎn)到達(dá)位置的實(shí)際代價值;Δ()為從父節(jié)點(diǎn)到達(dá)子節(jié)點(diǎn)的實(shí)際代價值增量;()為從子節(jié)點(diǎn)位置到達(dá)終點(diǎn)End的啟發(fā)代價值。
A算法進(jìn)行路徑規(guī)劃的基本步驟為:
1) 建立2個空列表openlist和closelist,將起始點(diǎn)Start加入openlist當(dāng)中。
2) 遍歷openlist列表中的點(diǎn),找到綜合代價值()最小的點(diǎn),將點(diǎn)從openlist中刪除,并將點(diǎn)添加到closelist當(dāng)中。
3) 按照一定規(guī)則找出所有可以從點(diǎn)直接到達(dá)的相鄰點(diǎn)(=1,2,…),并計(jì)算出所有點(diǎn)的實(shí)際代價值()。
4) 如果點(diǎn)(=1,2,…)已經(jīng)存在于closelist當(dāng)中,則忽略該點(diǎn)。
5) 如果點(diǎn)(=1,2,…)不在openlist當(dāng)中,則將該點(diǎn)添加到openlist中。
6) 如果點(diǎn)(=1,2,…)已經(jīng)存在于openlist當(dāng)中,則比較新計(jì)算出的實(shí)際代價值()和歷史記錄的實(shí)際代價值(),如果新得到的值更優(yōu),則將設(shè)置位的父節(jié)點(diǎn),并更新各代價值,否則,不更新父節(jié)點(diǎn)和各代價值。
7) 循環(huán)步驟2)至步驟6),直至將終點(diǎn)End添加到openlist當(dāng)中,表示已經(jīng)找到路徑,或者openlist為空,表示不存在起點(diǎn)至終點(diǎn)的路徑。
經(jīng)典A算法中,()一般取值為從起始點(diǎn)Start到達(dá)當(dāng)前位置實(shí)際已經(jīng)走過的路程,()一般取值為當(dāng)前位置與終點(diǎn)End之間的歐氏距離或者曼哈頓距離,只要起始點(diǎn)Start和終點(diǎn)End之間存在路徑,經(jīng)典A算法總能找到一條從起始點(diǎn)到達(dá)終點(diǎn)的最短路徑。但是在越野戰(zhàn)場環(huán)境中,受無人車機(jī)動性能的影響,經(jīng)典A算法規(guī)劃出的最短路徑可能無法滿足無人車的行駛要求,同時受戰(zhàn)場敵情威脅的影響,為避免無人車暴露在敵情威脅下,往往需要繞行一定路程才能到達(dá)目標(biāo)位置。為此,本文在經(jīng)典A算法的基礎(chǔ)上提出了一種針對越野戰(zhàn)場環(huán)境的融合地形信息和戰(zhàn)場威脅人工勢場的路徑規(guī)劃算法,并將代價函數(shù)表示為
()=()+Δ(,)+()
(8)
=1+(1+||)+*()
(9)
其中:為代價值修正因子;為坡度影響系數(shù),該值反映的是坡度對規(guī)劃路徑的影響程度,值越大則坡度的影響程度越大,算法對坡度越敏感,規(guī)劃出的路徑越平緩,越適合無人車行駛,反之,則規(guī)劃出的路徑起伏程度越大,越不適合無人車行駛。為戰(zhàn)場威脅程度值影響系數(shù),值越大則戰(zhàn)場威脅程度值影響越大,規(guī)劃出的路徑受到的威脅程度越小,路徑也就越安全,反之,規(guī)劃出的路徑越危險。為了簡化算法,本文假設(shè)正負(fù)坡度對無人車機(jī)動影響程度是相同的,因此在式(9)中對取絕對值。運(yùn)用本文提出的路徑規(guī)劃算法進(jìn)行路徑規(guī)劃的流程如圖5所示。
圖5 算法流程框圖Fig.5 Algorithm flow chart
本文使用MATLAB R2016a進(jìn)行編程和仿真,按照5 m的精度對某地區(qū)長750 m,寬250 m的范圍進(jìn)行高程采樣。無人車機(jī)動參數(shù)設(shè)置見表1,敵情參數(shù)設(shè)置見表2,假設(shè)敵方不同目標(biāo)相對威脅程度和被壓制程度相同,算法參數(shù)設(shè)置見表3。
表1 無人車機(jī)動參數(shù)設(shè)置Table 1 Maneuver parameter of unmanned vehicle
表2 敵情參數(shù)設(shè)置Table 2 Parameter of enemy
表3 算法參數(shù)設(shè)置Table 3 Parameter of algorithm
根據(jù)本文構(gòu)建的戰(zhàn)場威脅人工勢場模型能夠得到作戰(zhàn)區(qū)域內(nèi)每個位置受到的敵方威脅程度值。圖6是以灰度值圖像顏色的深淺表示受到的威脅程度大小繪制的戰(zhàn)場威脅程度平面圖,圖6中,顏色越深代表該位置越危險,反之則越安全。
圖6 戰(zhàn)場威脅程度示意圖Fig.6 Schematic diagram of battlefield threat degree
圖7為傳統(tǒng)A算法、考慮坡度因素、考慮敵情因素和同時考慮坡度及敵情因素4種條件下規(guī)劃出的路徑結(jié)果示意圖,圖7中,黃色路徑是使用經(jīng)典A算法規(guī)劃出的路徑,綠色路徑是考慮坡度影響的條件下規(guī)劃出的路徑,白色路徑是考慮敵情影響的條件下規(guī)劃出的路徑,紅色路徑是同時考慮坡度及敵情條件下規(guī)劃出的路徑,藍(lán)色倒三角標(biāo)記位置為敵方火力點(diǎn)所在位置,紅色圓點(diǎn)標(biāo)記位置為敵方可以通視位置。表4表示了4條路徑的總長度、途經(jīng)危險區(qū)長度、危險區(qū)長度占總長度百分比3個指標(biāo)。
圖7 仿真結(jié)果示意圖Fig.7 Schematic diagram of simulation results
表4 4條路徑指標(biāo)Table 4 Comparison of path indicators
由圖7和表4可知,在不考慮坡度及敵情影響的條件下,經(jīng)典A算法按照八鄰域搜索機(jī)制以路程最短為目標(biāo)進(jìn)行起始點(diǎn)至目標(biāo)點(diǎn)的路徑規(guī)劃,規(guī)劃出的黃色路徑雖然路程最短,但起伏程度在4條路徑中最大,極不適宜無人車行駛,且暴露在敵方火力下的路段占總路段長度的24.51%,實(shí)用性最差??紤]坡度影響的條件下規(guī)劃出的綠色路徑整體走勢較為平緩,較為適宜無人車行駛,但路徑總長度較大,且暴露在敵方火力下的路段占總路段長度的29.54%,在4條路徑中最危險,實(shí)用性較差。考慮敵情威脅影響下規(guī)劃出的白色路徑途徑危險區(qū)的長度占總長度的比例最小,為4.68%,在4條路徑中最安全,但路徑起伏仍較大,不適宜無人車行駛,實(shí)用性較差。同時考慮坡度和敵情的條件下規(guī)劃出的紅色路徑,總長度較短,整體起伏較小,對無人車行駛性影響較小,暴露在敵方火力下的路段占路徑總長度的6.25%,綜合考慮,在四條路徑中實(shí)用性最高。
提出了針對越野戰(zhàn)場環(huán)境的無人車路徑規(guī)劃算法,通過仿真驗(yàn)證了算法的有效性。仿真結(jié)果表明:提出的地形環(huán)境建模方法能夠有效保留和反映地形環(huán)境信息,規(guī)劃出的路徑實(shí)用性強(qiáng);構(gòu)建的戰(zhàn)場威脅程度人工勢場模型能夠有效體現(xiàn)敵方火力的影響,使無人車避免或者減少遭受敵方火力打擊;提出的針對越野戰(zhàn)場環(huán)境路徑規(guī)劃算法能夠綜合地形、敵情、無人車機(jī)動性能等條件影響,規(guī)劃出距離短、起伏小、安全可行的最優(yōu)路線。