訾 潤(rùn)
(青島市消防救援支隊(duì),山東 青島 266000)
在大風(fēng)雷暴等極端惡劣天氣下,野外森林面臨大規(guī)模火災(zāi)的安全隱患。在城市中,因?yàn)榈卣鸬炔豢煽沽σ约叭藶椴僮鞑划?dāng),也可能引發(fā)小區(qū)規(guī)模的火情。大規(guī)?;馂?zāi)發(fā)生后,往往形成層次級(jí)火情,在外圍級(jí)火情的阻隔下,對(duì)內(nèi)部的火情救援變得極為困難。在消防人員無(wú)法到達(dá)的情況下,內(nèi)部火場(chǎng)的多點(diǎn)散發(fā)進(jìn)一步增加了救援的難度,也會(huì)危及生命財(cái)產(chǎn)安全。在這種情況下,通過(guò)多無(wú)人機(jī)構(gòu)成的無(wú)人機(jī)編隊(duì)到達(dá)人力難以到達(dá)的火場(chǎng)內(nèi)部,完成偵查、打擊火源、滅火等任務(wù)成為一種最佳選擇。無(wú)人機(jī)的特點(diǎn)是十分突出的,無(wú)人機(jī)個(gè)體體積小、機(jī)動(dòng)性強(qiáng),可以穿越復(fù)雜的山體結(jié)構(gòu)和建筑結(jié)構(gòu),深入探查區(qū)域的內(nèi)部。同時(shí),隨著無(wú)線通信技術(shù)的飛速發(fā)展,多個(gè)無(wú)人機(jī)之間通過(guò)信息交互,協(xié)同配合去完成一個(gè)整體任務(wù)變成可能。由于無(wú)人機(jī)個(gè)體受到機(jī)械性能、載彈量(滅火彈)等條件的制約,其能完成的滅火任務(wù)是有限的,因此,當(dāng)無(wú)人機(jī)編隊(duì)到達(dá)火場(chǎng)后,必須對(duì)各個(gè)無(wú)人機(jī)合理地分配任務(wù)。這種任務(wù)分配的目的是在保證完成整體滅火任務(wù)的前提下,各個(gè)無(wú)人機(jī)相對(duì)均衡地承擔(dān)整體任務(wù)的子任務(wù),并且編隊(duì)中任意一個(gè)無(wú)人機(jī)不會(huì)出現(xiàn)任務(wù)超載、無(wú)法完成的情況。無(wú)人機(jī)編隊(duì)根據(jù)火場(chǎng)中多點(diǎn)火情的任務(wù)分配,實(shí)際上是一種有約束條件的目標(biāo)優(yōu)化問(wèn)題。針對(duì)該問(wèn)題,可以采用的優(yōu)化算法很多,例如基于遺傳算法的目標(biāo)優(yōu)化、基于圖割算法的目標(biāo)優(yōu)化以及基于動(dòng)態(tài)規(guī)劃算法的目標(biāo)優(yōu)化等。該文采用粒子群算法對(duì)無(wú)人機(jī)編隊(duì)完成多點(diǎn)火情救援任務(wù)進(jìn)行合理化分配的研究,以期使無(wú)人機(jī)編隊(duì)更好地協(xié)同配合、順利地完成滅火救援任務(wù)。
粒子群算法是由多個(gè)粒子構(gòu)成一個(gè)粒子群,每一個(gè)粒子不斷調(diào)整自身的位置和速度,使粒子群達(dá)到最優(yōu)狀態(tài)。各個(gè)粒子之間存在一定的約束和關(guān)聯(lián),個(gè)體獨(dú)立又共同服務(wù)于整個(gè)粒子群落。
在無(wú)人機(jī)編隊(duì)的任務(wù)分配中使用粒子群算法,需要將每個(gè)無(wú)人機(jī)映射為粒子群中的一個(gè)粒子。隨著粒子群位置和速度不斷地更新,在整個(gè)粒子群達(dá)到最優(yōu)狀態(tài)的情況下,每個(gè)無(wú)人機(jī)個(gè)體將找到自己的合理位置,去完成滅火救援任務(wù)。每個(gè)無(wú)人機(jī)完成自己的任務(wù)后,無(wú)人機(jī)編隊(duì)也將完成整體的滅火救援任務(wù)。該策略對(duì)多點(diǎn)散發(fā)式火情的救援具有特別重要的意義,針對(duì)性也是非常強(qiáng)的。
無(wú)人機(jī)編隊(duì)在整個(gè)粒子群算法的優(yōu)化過(guò)程中,最重要的是找到自己的準(zhǔn)確位置,這一對(duì)應(yīng)著粒子的位置。根據(jù)粒子群算法的設(shè)定,粒子群中每個(gè)粒子的位置設(shè)置策略,可以用公式(1)表示。
式中:參數(shù)為一個(gè)隨機(jī)數(shù),其取值范圍是(0,1)。
在服從于粒子群整體任務(wù)目標(biāo)的前提下,每個(gè)粒子的位置會(huì)不斷更新以尋求達(dá)到最佳位置,粒子群中每個(gè)粒子的位置更新策略,可以用公式(2)表示。
進(jìn)一步,可以得到粒子群中每個(gè)粒子的全局最佳位置,可以用公式(3)表示。
綜合以上2個(gè)方程,可以得到算法中每個(gè)粒子的更新機(jī)制,可以用公式(4)表示。
在上述粒子群算法的支撐下,無(wú)人機(jī)編隊(duì)為了實(shí)現(xiàn)多點(diǎn)火情的救援目標(biāo),可以按照以下5個(gè)步驟分配任務(wù)。
第一個(gè)步驟,無(wú)人機(jī)編隊(duì)中的每個(gè)無(wú)人機(jī)映射為粒子群中的一個(gè)粒子,并進(jìn)行自身位置的初始化配置。
第二個(gè)步驟,在粒子群中全部無(wú)人機(jī)完成初始位置配置后,整個(gè)無(wú)人機(jī)編隊(duì)獲得了第一個(gè)整體狀態(tài),根據(jù)這個(gè)狀態(tài)構(gòu)建適應(yīng)度函數(shù)。
第三個(gè)步驟,在無(wú)人機(jī)編隊(duì)多點(diǎn)火情救援的總體任務(wù)下,根據(jù)公式(2)和公式(3)不斷更新每個(gè)無(wú)人機(jī)的局部最佳位置,同時(shí)計(jì)算無(wú)人機(jī)編隊(duì)的全局最佳位置。
第四個(gè)步驟,根據(jù)公式(4)所示的更新機(jī)制,進(jìn)一步更新整個(gè)編隊(duì)中每個(gè)無(wú)人機(jī)的位置,從而再次計(jì)算整個(gè)無(wú)人機(jī)編隊(duì)全局最佳位置,即對(duì)多個(gè)火情點(diǎn)的有效對(duì)應(yīng)。
第五個(gè)步驟,不斷計(jì)算無(wú)人機(jī)編隊(duì)位置和多個(gè)火情點(diǎn)的對(duì)應(yīng)位置之間的差異,判斷這個(gè)差異是否小于預(yù)先設(shè)定的閾值(一個(gè)很小的數(shù)值),如果不小于,繼續(xù)重復(fù)執(zhí)行步驟三和步驟四,如果小于,將此時(shí)的無(wú)人機(jī)編隊(duì)位置輸出。
無(wú)人機(jī)編隊(duì)按照步驟五輸出的結(jié)果,即可以找到最合理的位置,與火情點(diǎn)形成對(duì)應(yīng),從而可以進(jìn)行精準(zhǔn)打擊和滅火操作。
此處的試驗(yàn)在仿真環(huán)境下進(jìn)行,需要在仿真平臺(tái)上設(shè)置火情點(diǎn)位置和無(wú)人機(jī)位置,以便有針對(duì)性地分配任務(wù),進(jìn)行救援工作。
整個(gè)仿真試驗(yàn)的背景是野外森林火場(chǎng),已探明的火情點(diǎn)為8個(gè),其平面地圖位置配置如下。野外森林火場(chǎng)中第一個(gè)火情點(diǎn)位置,橫坐標(biāo)88個(gè)仿真距離位置上,縱坐標(biāo)21個(gè)仿真距離位置上;野外森林火場(chǎng)中第二個(gè)火情點(diǎn)位置,橫坐標(biāo)34個(gè)仿真距離位置上,縱坐標(biāo)39個(gè)仿真距離位置上;野外森林火場(chǎng)中第三個(gè)火情點(diǎn)位置,橫坐標(biāo)51個(gè)仿真距離位置上,縱坐標(biāo)30個(gè)仿真距離位置上;野外森林火場(chǎng)中第四個(gè)火情點(diǎn)位置,橫坐標(biāo)44個(gè)仿真距離位置上,縱坐標(biāo)90個(gè)仿真距離位置上;野外森林火場(chǎng)中第五個(gè)火情點(diǎn)位置,橫坐標(biāo)21個(gè)仿真距離位置上,縱坐標(biāo)28個(gè)仿真距離位置上;野外森林火場(chǎng)中第六個(gè)火情點(diǎn)位置,橫坐標(biāo)48個(gè)仿真距離位置上,縱坐標(biāo)28個(gè)仿真距離位置上;野外森林火場(chǎng)中第七個(gè)火情點(diǎn)位置,橫坐標(biāo)81個(gè)仿真距離位置上,縱坐標(biāo)71個(gè)仿真距離位置上;野外森林火場(chǎng)中第八個(gè)火情點(diǎn)位置,橫坐標(biāo)16個(gè)仿真距離位置上,縱坐標(biāo)51個(gè)仿真距離位置上。
參與多點(diǎn)火情救援的無(wú)人機(jī)數(shù)量為5個(gè),共同構(gòu)成了一個(gè)無(wú)人機(jī)編隊(duì),其空間地圖位置配置如下。無(wú)人機(jī)編隊(duì)中第一個(gè)無(wú)人機(jī),坐標(biāo)22個(gè)仿真距離位置上,坐標(biāo)28個(gè)仿真距離位置上,坐標(biāo)26個(gè)仿真距離位置上;無(wú)人機(jī)編隊(duì)中第二個(gè)無(wú)人機(jī),坐標(biāo)34個(gè)仿真距離位置上,坐標(biāo)50個(gè)仿真距離位置上,坐標(biāo)20個(gè)仿真距離位置上;無(wú)人機(jī)編隊(duì)中第三個(gè)無(wú)人機(jī),坐標(biāo)17個(gè)仿真距離位置上,坐標(biāo)14個(gè)仿真距離位置上,坐標(biāo)45個(gè)仿真距離位置上;無(wú)人機(jī)編隊(duì)中第四個(gè)無(wú)人機(jī),坐標(biāo)33個(gè)仿真距離位置上,坐標(biāo)35個(gè)仿真距離位置上,坐標(biāo)23個(gè)仿真距離位置上;無(wú)人機(jī)編隊(duì)中第五個(gè)無(wú)人機(jī),坐標(biāo)26個(gè)仿真距離位置上,坐標(biāo)31個(gè)仿真距離位置上,坐標(biāo)28個(gè)仿真距離位置上。
整個(gè)無(wú)人機(jī)編隊(duì)抵達(dá)森林火場(chǎng)上空后,要執(zhí)行三類(lèi)任務(wù),分別是偵察、投滅火彈打擊、滅火,滅火為最終任務(wù)。但滅火準(zhǔn)確與否與偵察、投滅火彈打擊的準(zhǔn)確與否直接相關(guān),因此這三項(xiàng)預(yù)期分值都應(yīng)該參與到粒子群優(yōu)化算法中。對(duì)8個(gè)火情點(diǎn)上,這3項(xiàng)任務(wù)的預(yù)期分配置見(jiàn)表1。
表1 森林火場(chǎng)中8個(gè)火情點(diǎn)的任務(wù)預(yù)期分配置
在各項(xiàng)條件的配置下,該文構(gòu)建多點(diǎn)火情無(wú)人機(jī)編隊(duì)救援仿真試驗(yàn)環(huán)境。在接下來(lái)的工作中,采用圖割算法和魚(yú)群算法作為對(duì)比方法,通過(guò)3種方法之間的比較,評(píng)價(jià)方法的有效性。
適應(yīng)度函數(shù)的收斂速度與收斂效果直接決定了優(yōu)化算法的性能,因此首先要比較圖割算法、魚(yú)群算法適應(yīng)度函數(shù)收斂情況與該文粒子群算法適應(yīng)度函數(shù)收斂情況的差異,結(jié)果如圖1所示。
圖1 各方法適應(yīng)度函數(shù)收斂對(duì)比
從圖1的結(jié)果可以清晰地看到,在無(wú)人機(jī)編隊(duì)多點(diǎn)火情救援的仿真試驗(yàn)中,該文構(gòu)建的基于粒子群算法的無(wú)人機(jī)編隊(duì)任務(wù)分配,其收斂函數(shù)曲線所表現(xiàn)出來(lái)的收斂速度快、收斂適應(yīng)度數(shù)值高,明顯優(yōu)于圖割算法和魚(yú)群算法。
在適應(yīng)度函數(shù)收斂性能比較結(jié)果的基礎(chǔ)上,進(jìn)一步比較3種方法滅火任務(wù)的各無(wú)人機(jī)分配結(jié)果,如圖2~圖4所示。
從圖2~圖4三種方法獲得的任務(wù)分配結(jié)果中可以得出以下2點(diǎn):1)圖割算法和魚(yú)群算法為無(wú)人機(jī)編隊(duì)進(jìn)行的滅火任務(wù)分配,均不同程度地出現(xiàn)了某一個(gè)無(wú)人機(jī)承載任務(wù)過(guò)多的情況,也出現(xiàn)了同一個(gè)火情點(diǎn)被多個(gè)無(wú)人機(jī)執(zhí)行滅火處理的冗余操作。2)該文算法獲得了更好的任務(wù)分配結(jié)果,沒(méi)有出現(xiàn)無(wú)人機(jī)過(guò)載的情況,也沒(méi)有出現(xiàn)火情點(diǎn)被重復(fù)覆蓋的情況,其具體的分配結(jié)果如下。第一個(gè)無(wú)人機(jī)對(duì)火情點(diǎn)、火情點(diǎn)執(zhí)行滅火處理;第二個(gè)無(wú)人機(jī)對(duì)火情點(diǎn)、火情點(diǎn)執(zhí)行滅火處理;第三個(gè)無(wú)人機(jī)對(duì)火情點(diǎn)、火情點(diǎn)執(zhí)行滅火處理;第四個(gè)無(wú)人機(jī)對(duì)火情點(diǎn)執(zhí)行滅火處理;第五個(gè)無(wú)人機(jī)對(duì)火情點(diǎn)執(zhí)行滅火處理。
圖2 圖割算法獲得的無(wú)人機(jī)編隊(duì)滅火任務(wù)分配結(jié)果
圖4 該文算法獲得的無(wú)人機(jī)編隊(duì)滅火任務(wù)分配結(jié)果
通過(guò)比較可以看出,該文基于粒子群算法構(gòu)建的無(wú)人機(jī)編隊(duì)多點(diǎn)火情救援任務(wù)分配可以獲得更好的結(jié)果,也證明了該文工作的價(jià)值。
圖3 魚(yú)群算法獲得的無(wú)人機(jī)編隊(duì)滅火任務(wù)分配結(jié)果
無(wú)論是野外森林火場(chǎng)還是城市小區(qū)的大規(guī)?;馂?zāi),都會(huì)出現(xiàn)不同程度的多點(diǎn)火情覆蓋、層級(jí)火情阻隔等情況。針對(duì)消防救援人員難以及時(shí)到達(dá)層級(jí)阻隔火場(chǎng)、難以短時(shí)間內(nèi)撲滅多點(diǎn)火情的問(wèn)題,該文提出了一種基于粒子群算法的無(wú)人機(jī)編隊(duì)多點(diǎn)火情救援任務(wù)分配方法。通過(guò)5個(gè)無(wú)人機(jī)構(gòu)成的無(wú)人機(jī)編隊(duì)配置和8個(gè)火情點(diǎn)的仿真火場(chǎng)配置,進(jìn)行進(jìn)一步研究。試驗(yàn)結(jié)果表明,該文提出的基于粒子群算法的無(wú)人機(jī)編隊(duì)任務(wù)分配,具有更好的適應(yīng)度函數(shù)曲線表現(xiàn),能夠更加合理地分配滅火任務(wù),不會(huì)出現(xiàn)個(gè)體無(wú)人機(jī)任務(wù)過(guò)載、個(gè)別火情點(diǎn)冗余救援的情況,性能明顯優(yōu)于圖割算法、魚(yú)群算法的分配結(jié)果。