石懷龍,李臣明,馬雁楠
(陸軍炮兵防空兵學(xué)院南京校區(qū),南京 211132)
箱式火箭炮是我陸軍火力打擊裝備體系的重要組成部分,在信息化作戰(zhàn)背景下,箱式火箭炮將更加注重機(jī)動作戰(zhàn)、快速作戰(zhàn)、精確作戰(zhàn),以達(dá)到增強(qiáng)火力打擊突然性、提高己方力量戰(zhàn)場生存率的效果[1]。為實(shí)現(xiàn)此作戰(zhàn)要求,箱式火箭炮必須科學(xué)、快速地選擇機(jī)動路線。
當(dāng)前學(xué)術(shù)界對于機(jī)動路線選擇相關(guān)問題的研究較多,方法各異。李偉等[2]建立了包括符合戰(zhàn)術(shù)意圖、地形狀況、裝備性能狀況、指揮保障在內(nèi)的機(jī)動作戰(zhàn)路線選擇的指標(biāo)體系,利用模糊數(shù)學(xué)法對機(jī)動作戰(zhàn)路線進(jìn)行選擇,實(shí)現(xiàn)了由定性分析向定量分析的轉(zhuǎn)化;路建偉等[3]采用蟻群算法原理較好地模擬出了現(xiàn)代戰(zhàn)場復(fù)雜環(huán)境對防空兵兵力機(jī)動路線選擇的影響等等。本文在充分探討研究指標(biāo)科學(xué)性的基礎(chǔ)上,采用基于改進(jìn)PSO 算法來解決機(jī)動路線選擇問題。
圖1 機(jī)動路線示意圖
1.2.1 影響因素的選擇
考慮箱式火箭炮在實(shí)施機(jī)動作戰(zhàn)過程中的實(shí)際情況,本文選取4 個影響因素作為研究對象,分別為:機(jī)動距離、道路狀況、機(jī)動時間和機(jī)動安全性。根據(jù)問題描述及設(shè)定情況,分別對確定的4 個影響因素展開建模和分析。
1)機(jī)動距離
設(shè)第i 點(diǎn)至第j 點(diǎn)任意相鄰節(jié)點(diǎn)路段的機(jī)動距離為dij,則dij可通過查詢紙質(zhì)地圖、數(shù)字地圖等手段獲得。
2)道路狀況
3)機(jī)動時間
設(shè)箱式火箭炮部(分)隊(duì)通過第i 點(diǎn)至第j 點(diǎn)任意相鄰節(jié)點(diǎn)的機(jī)動時間為tij,則tij的值可通過式(2)求得:
4)機(jī)動安全性
根據(jù)箱式火箭炮的使用原則,通??膳渲迷诰鄶硲?zhàn)斗防御前沿較遠(yuǎn)的位置,敵常規(guī)的偵察和火力打擊手段難以對我造成實(shí)質(zhì)威脅。這里只把箱式火箭炮在機(jī)動時被敵航空(飛機(jī))或天基(衛(wèi)星)偵察發(fā)現(xiàn)的概率和遭敵遠(yuǎn)程火力(導(dǎo)彈)攻擊后毀傷概率作為研究機(jī)動安全性問題主要的研究對象[4]。
設(shè)第i 點(diǎn)至第j 點(diǎn)任意相鄰節(jié)點(diǎn)路段的機(jī)動安全性為sij,敵偵察發(fā)現(xiàn)目標(biāo)的概率為rij,遭敵遠(yuǎn)程火力攻擊后毀傷的概率為cij,則機(jī)動安全性為sij可通過式(3)求得:
其中,
式中,pw為武器裝備的被識別率;v 為偵察飛機(jī)的飛行速度;d 為偵察飛機(jī)的搜索寬度;s 為機(jī)動區(qū)域;t為偵察飛機(jī)的偵察時間。r 為目標(biāo)與背景光度;α 為氣象因子;μ 為目標(biāo)形狀修正因子;pt為衛(wèi)星的分辨率;L 為目標(biāo)的幾何尺寸。r 為等效圓目標(biāo)半徑;c 為導(dǎo)彈系統(tǒng)偏差;
1.2.2 影響因素的無量綱化處理
根據(jù)以上分析,建立4 個影響因素的數(shù)學(xué)模型,但由于各個影響因素的量綱不同以及數(shù)值在數(shù)量級上懸殊較大,為方便下一步計(jì)算,要對它們進(jìn)行無量綱化處理,使其統(tǒng)一量綱。這里采用比重法對各影響因素進(jìn)行無量綱化處理[5]。
比重法的計(jì)算公式為:
因此,對于各影響因素的無量綱化處理可按照式(4)進(jìn)行。
通過無量綱化處理后的值,不能直接用于后續(xù)模型的計(jì)算,其原因在于有的影響因素要求其值越大越好,如機(jī)動安全性;有的影響因素要求其值越小越好,如機(jī)動時間。這里規(guī)定各影響因素的無量綱化值越小越好。對于值越大越好的因素,用1 減去它,得到新的無量綱化值。統(tǒng)一后的各影響因素?zé)o量綱化值可用式(5)表示:
1.2.3 影響因素權(quán)重的確定
權(quán)重是指在某一影響因素在所有影響因素中的重要程度。在分析機(jī)動路線選擇的影響因素時,本文選擇了4 個影響因素作為研究對象,這4 個影響因素在不同的戰(zhàn)場環(huán)境下的重要性通常是不同的。如在作戰(zhàn)中,當(dāng)敵方占據(jù)信息優(yōu)勢時,在進(jìn)行機(jī)動路線選擇決策時,機(jī)動安全性的權(quán)重會考慮的多一些;當(dāng)我方占據(jù)信息優(yōu)勢時,機(jī)動距離和機(jī)動時間的權(quán)重則會考慮的多一些。對于指揮員而言,要根據(jù)戰(zhàn)場實(shí)際情況,靈活確定各影響因素的權(quán)重。其方法可采用序關(guān)系分析法確定指標(biāo)的權(quán)重系數(shù)[6],具體步驟如下:
第4 步:計(jì)算權(quán)重系數(shù)。計(jì)算公式為:
1.2.4 綜合評價值模型的確定
根據(jù)式(5)中無量綱化處理后得到的值在和在式(6)中確定各影響因素權(quán)重值的方法,可按式(7)計(jì)算出各路段的綜合評價值:
表1 βn 取值參考表
根據(jù)以上建立的模型及分析可知,從起點(diǎn)至終點(diǎn)的各路段綜合評價值之和最小的某條機(jī)動路線即為最優(yōu)路線。確定這一條最優(yōu)的機(jī)動路線的方法有很多,如利用網(wǎng)絡(luò)模型或者枚舉的方法。這里采取一種基于改進(jìn)PSO 算法的方法進(jìn)行求解。
粒子群算法(PSO)是1955 年由美國學(xué)者J.Kenney 和R.C.Eberhart 率先提出。在PSO 中,每個粒子視為優(yōu)化問題的可行解,且每個粒子具有一定的速度以決定其方向和距離。PSO 通過初始化一群隨機(jī)粒子,這些粒子追隨當(dāng)前的最優(yōu)粒子在解空間中搜索,通過不停迭代最終找到最優(yōu)解。在每一次迭代中,粒子通過跟蹤兩個極值來更新自己:一個是粒子本身當(dāng)前找到的最優(yōu)解,另一個是整個群體當(dāng)前找到的最優(yōu)解。找到這兩個極值時,每個粒子根據(jù)式(8)來更新自己的速度和位置:
PSO 算法在實(shí)際運(yùn)用中體現(xiàn)出很多優(yōu)點(diǎn),如參數(shù)少、結(jié)構(gòu)簡單、魯棒性高、易實(shí)現(xiàn)等特點(diǎn)。但還有許多不完善的地方,如當(dāng)本身信息和個體極值信息占優(yōu)勢時,算法容易陷入局部最優(yōu)解等。Y.Shi[7]等提出通過增加一個慣性權(quán)重c0來協(xié)調(diào)PSO 算法的全局和局部尋優(yōu)能力,見式(9)。得到新的粒子群算法模型受到廣泛運(yùn)用,此算法也被稱為標(biāo)準(zhǔn)粒子群算法。
粒子群算法的基本步驟如圖2 所示。
圖2 粒子群算法基本步驟
設(shè)選定的地圖中共有n 個節(jié)點(diǎn),將計(jì)算完各路段綜合評價值的地圖看作一個帶權(quán)有向圖,使用賦權(quán)的鄰接矩陣將其表達(dá)成一個n×n 的矩陣。其基本思想為:對于有n 個節(jié)點(diǎn)的圖,用一維數(shù)組node[n]依次存儲節(jié)點(diǎn)信息,用二維數(shù)組Route[n][n]存儲節(jié)點(diǎn)之間關(guān)系的信息。該二維數(shù)組稱為這個帶權(quán)有向圖的鄰接矩陣。在鄰接矩陣中,以節(jié)點(diǎn)在node[n]數(shù)組中的下標(biāo)代表節(jié)點(diǎn),鄰接矩陣中的元素Route[i][j]存放的是頂點(diǎn)i 到頂點(diǎn)j 之間的綜合評價值。
在本文中,每一個粒子的代價函數(shù)是該粒子所選擇的路徑的綜合評價值。將每一個粒子設(shè)置為一個一維數(shù)組,該數(shù)組有n 個元素,每個元素表示經(jīng)過某一條路徑的綜合評價值。若整個環(huán)境中有m 個數(shù)組,則所有的粒子可以用一個m×n 的矩陣表示。每一個粒子都由n 個元素組成,分別表示模型中經(jīng)過的n 段路線,共同組成了該粒子選擇的某一條路徑。再計(jì)算該粒子中所有元素的和,即該路徑中所有路線的總體評價值,將其作為該粒子的適應(yīng)值。適應(yīng)值越小,總體評價值越低,粒子越優(yōu)。所有粒子通過歷史最優(yōu)適應(yīng)值數(shù)組pbest[m][n]和全局最優(yōu)適應(yīng)值數(shù)組gbest[n]來更新自己的位置。
為便于數(shù)值計(jì)算,給出基于改進(jìn)PSO 算法的機(jī)動路線選擇方法的算法步驟:
步驟1:定義參數(shù)如下:節(jié)點(diǎn)數(shù)n、節(jié)點(diǎn)信息數(shù)組node[n]、節(jié)點(diǎn)關(guān)系數(shù)組Route[n][n]、粒子總數(shù)m、最大迭代次數(shù)Dmax、最大速度Vmax、最遠(yuǎn)距離Xmax、慣性權(quán)重c0、加速因子r1r2、全部粒子的位置數(shù)組Position[m][n],全部粒子的速度數(shù)組Velocity[m][n]、歷史最優(yōu)位置數(shù)組pbest[m][n]、歷史最優(yōu)適應(yīng)值數(shù)組Vpbest[m][n]、全局最優(yōu)位置數(shù)組gbest[n]、全局最優(yōu)適應(yīng)值數(shù)組Vgbest[n]、當(dāng)前粒子歷史最優(yōu)適應(yīng)值數(shù)組Lpbest[n]、當(dāng)前粒子全局最優(yōu)適應(yīng)值Lgbest;
步驟2:對每個粒子初始化并檢查其有效性,隨機(jī)產(chǎn)生n 個初始解,隨機(jī)產(chǎn)生n 個初始速度,令當(dāng)前迭代次數(shù)歸零;
步驟3:通過計(jì)算每一個粒子的適應(yīng)值,將其放入Lpbest[n]中,比較Lpbest[n]與Vpbest[m][n]的大小,將更小的值賦予Vpbest[m][n];
步驟4:將所有Vpbest[m][n]與Vgbest[n]相比較,將更小的值賦予Vgbest[n];
步驟5:根據(jù)式(9)更新每一個粒子的速度與位置;
步驟6:檢查新的速度和位置是否超過Vmax與Xmax,若超出,則放棄本次的速度和位置更新;
步驟7:隨著迭代次數(shù)增加線性減少c0的取值,檢查迭代次數(shù)是否達(dá)到Dmax,是則轉(zhuǎn)到步驟8,否則轉(zhuǎn)到步驟5;
步驟8:迭代結(jié)束,gbest[n]即為找到的最優(yōu)路徑。
某箱式火箭炮營計(jì)劃從p1陣地機(jī)動到p8陣地。參謀人員通過前期調(diào)查將機(jī)動路線及可能經(jīng)過的節(jié)點(diǎn)繪制成圖,見圖3。將各路段影響因素的相關(guān)信息繪制成表2,通過戰(zhàn)場形勢分析,指揮員確定各影響因素的權(quán)重系數(shù)向量為{0.2、0.1、0.4、0.3}。假設(shè)所列路段路況均滿足箱式火箭炮營行軍要求,且機(jī)動過程中營行軍編隊(duì)可視為一個點(diǎn)。則該營指揮員如何選擇最優(yōu)的機(jī)動路線?
圖3 某營機(jī)動路線示意圖
設(shè)不直接通達(dá)的兩點(diǎn)之間的綜合評價值為-1,將各點(diǎn)間的綜合評價值用矩陣形式表達(dá)如下:
為驗(yàn)證算法有效性,運(yùn)用標(biāo)準(zhǔn)PSO 和本文提出的改進(jìn)PSO 分別對該算例進(jìn)行計(jì)算。設(shè)定參數(shù)如下:慣性權(quán)重c0=0.5;學(xué)習(xí)因子c1=c2=2;節(jié)點(diǎn)數(shù)n=8;粒子總數(shù)m=50;最大迭代次數(shù)Dmax=100;最大速度Vmax=25;最遠(yuǎn)距離Xmax=100。
兩種算法的運(yùn)行結(jié)果如下頁表4 所示,兩種算法的進(jìn)行迭代對比如圖4 所示。
根據(jù)表4 運(yùn)算結(jié)果可知,使用標(biāo)準(zhǔn)PSO 算法和改進(jìn)PSO 算法的最優(yōu)值都是收斂于1.184,最優(yōu)路徑為1→3→4→8。故該營指揮員應(yīng)選擇1→3→4→8 作為機(jī)動路線。從中也可以看出改進(jìn)PSO 算法在搜索成功率和耗時上都優(yōu)于標(biāo)準(zhǔn)PSO 算法。
表2 各路段影響因素信息
表3 各路段的綜合評價值
從圖4 兩種算法迭代對比可以看出,采用標(biāo)準(zhǔn)PSO 算法經(jīng)過約70 次迭代實(shí)現(xiàn)了最終收斂,而采用改進(jìn)PSO 算法只經(jīng)過約50 次迭代即實(shí)現(xiàn)了最終收斂,且收斂速度更快。
表4 兩種算法運(yùn)行結(jié)果對比
圖4 兩種算法迭代對比
本文分析了箱式火箭炮機(jī)動路線選擇的影響因素,構(gòu)建了綜合評價值模型,利用改進(jìn)PSO 算法進(jìn)行機(jī)動路線選擇尋優(yōu),通過算例分析證明了其可靠性,與此同時也顯示出改進(jìn)PSO 算法在搜索效率、收斂速度上都優(yōu)于標(biāo)準(zhǔn)PSO 算法,證明了本文采用的改進(jìn)PSO 算法求解箱式火箭炮機(jī)動路線選擇問題效果較好。