訾 潤
(青島市消防救援支隊,山東 青島 266000)
在大風雷暴等極端惡劣天氣下,野外森林面臨大規模火災的安全隱患。在城市中,因為地震等不可抗力以及人為操作不當,也可能引發小區規模的火情。大規模火災發生后,往往形成層次級火情,在外圍級火情的阻隔下,對內部的火情救援變得極為困難。在消防人員無法到達的情況下,內部火場的多點散發進一步增加了救援的難度,也會危及生命財產安全。在這種情況下,通過多無人機構成的無人機編隊到達人力難以到達的火場內部,完成偵查、打擊火源、滅火等任務成為一種最佳選擇。無人機的特點是十分突出的,無人機個體體積小、機動性強,可以穿越復雜的山體結構和建筑結構,深入探查區域的內部。同時,隨著無線通信技術的飛速發展,多個無人機之間通過信息交互,協同配合去完成一個整體任務變成可能。由于無人機個體受到機械性能、載彈量(滅火彈)等條件的制約,其能完成的滅火任務是有限的,因此,當無人機編隊到達火場后,必須對各個無人機合理地分配任務。這種任務分配的目的是在保證完成整體滅火任務的前提下,各個無人機相對均衡地承擔整體任務的子任務,并且編隊中任意一個無人機不會出現任務超載、無法完成的情況。無人機編隊根據火場中多點火情的任務分配,實際上是一種有約束條件的目標優化問題。針對該問題,可以采用的優化算法很多,例如基于遺傳算法的目標優化、基于圖割算法的目標優化以及基于動態規劃算法的目標優化等。該文采用粒子群算法對無人機編隊完成多點火情救援任務進行合理化分配的研究,以期使無人機編隊更好地協同配合、順利地完成滅火救援任務。
粒子群算法是由多個粒子構成一個粒子群,每一個粒子不斷調整自身的位置和速度,使粒子群達到最優狀態。各個粒子之間存在一定的約束和關聯,個體獨立又共同服務于整個粒子群落。
在無人機編隊的任務分配中使用粒子群算法,需要將每個無人機映射為粒子群中的一個粒子。隨著粒子群位置和速度不斷地更新,在整個粒子群達到最優狀態的情況下,每個無人機個體將找到自己的合理位置,去完成滅火救援任務。每個無人機完成自己的任務后,無人機編隊也將完成整體的滅火救援任務。該策略對多點散發式火情的救援具有特別重要的意義,針對性也是非常強的。
無人機編隊在整個粒子群算法的優化過程中,最重要的是找到自己的準確位置,這一對應著粒子的位置。根據粒子群算法的設定,粒子群中每個粒子的位置設置策略,可以用公式(1)表示。

式中:參數為一個隨機數,其取值范圍是(0,1)。
在服從于粒子群整體任務目標的前提下,每個粒子的位置會不斷更新以尋求達到最佳位置,粒子群中每個粒子的位置更新策略,可以用公式(2)表示。

進一步,可以得到粒子群中每個粒子的全局最佳位置,可以用公式(3)表示。

綜合以上2個方程,可以得到算法中每個粒子的更新機制,可以用公式(4)表示。

在上述粒子群算法的支撐下,無人機編隊為了實現多點火情的救援目標,可以按照以下5個步驟分配任務。
第一個步驟,無人機編隊中的每個無人機映射為粒子群中的一個粒子,并進行自身位置的初始化配置。
第二個步驟,在粒子群中全部無人機完成初始位置配置后,整個無人機編隊獲得了第一個整體狀態,根據這個狀態構建適應度函數。
第三個步驟,在無人機編隊多點火情救援的總體任務下,根據公式(2)和公式(3)不斷更新每個無人機的局部最佳位置,同時計算無人機編隊的全局最佳位置。
第四個步驟,根據公式(4)所示的更新機制,進一步更新整個編隊中每個無人機的位置,從而再次計算整個無人機編隊全局最佳位置,即對多個火情點的有效對應。
第五個步驟,不斷計算無人機編隊位置和多個火情點的對應位置之間的差異,判斷這個差異是否小于預先設定的閾值(一個很小的數值),如果不小于,繼續重復執行步驟三和步驟四,如果小于,將此時的無人機編隊位置輸出。
無人機編隊按照步驟五輸出的結果,即可以找到最合理的位置,與火情點形成對應,從而可以進行精準打擊和滅火操作。
此處的試驗在仿真環境下進行,需要在仿真平臺上設置火情點位置和無人機位置,以便有針對性地分配任務,進行救援工作。
整個仿真試驗的背景是野外森林火場,已探明的火情點為8個,其平面地圖位置配置如下。野外森林火場中第一個火情點位置,橫坐標88個仿真距離位置上,縱坐標21個仿真距離位置上;野外森林火場中第二個火情點位置,橫坐標34個仿真距離位置上,縱坐標39個仿真距離位置上;野外森林火場中第三個火情點位置,橫坐標51個仿真距離位置上,縱坐標30個仿真距離位置上;野外森林火場中第四個火情點位置,橫坐標44個仿真距離位置上,縱坐標90個仿真距離位置上;野外森林火場中第五個火情點位置,橫坐標21個仿真距離位置上,縱坐標28個仿真距離位置上;野外森林火場中第六個火情點位置,橫坐標48個仿真距離位置上,縱坐標28個仿真距離位置上;野外森林火場中第七個火情點位置,橫坐標81個仿真距離位置上,縱坐標71個仿真距離位置上;野外森林火場中第八個火情點位置,橫坐標16個仿真距離位置上,縱坐標51個仿真距離位置上。
參與多點火情救援的無人機數量為5個,共同構成了一個無人機編隊,其空間地圖位置配置如下。無人機編隊中第一個無人機,坐標22個仿真距離位置上,坐標28個仿真距離位置上,坐標26個仿真距離位置上;無人機編隊中第二個無人機,坐標34個仿真距離位置上,坐標50個仿真距離位置上,坐標20個仿真距離位置上;無人機編隊中第三個無人機,坐標17個仿真距離位置上,坐標14個仿真距離位置上,坐標45個仿真距離位置上;無人機編隊中第四個無人機,坐標33個仿真距離位置上,坐標35個仿真距離位置上,坐標23個仿真距離位置上;無人機編隊中第五個無人機,坐標26個仿真距離位置上,坐標31個仿真距離位置上,坐標28個仿真距離位置上。
整個無人機編隊抵達森林火場上空后,要執行三類任務,分別是偵察、投滅火彈打擊、滅火,滅火為最終任務。但滅火準確與否與偵察、投滅火彈打擊的準確與否直接相關,因此這三項預期分值都應該參與到粒子群優化算法中。對8個火情點上,這3項任務的預期分配置見表1。

表1 森林火場中8個火情點的任務預期分配置
在各項條件的配置下,該文構建多點火情無人機編隊救援仿真試驗環境。在接下來的工作中,采用圖割算法和魚群算法作為對比方法,通過3種方法之間的比較,評價方法的有效性。
適應度函數的收斂速度與收斂效果直接決定了優化算法的性能,因此首先要比較圖割算法、魚群算法適應度函數收斂情況與該文粒子群算法適應度函數收斂情況的差異,結果如圖1所示。

圖1 各方法適應度函數收斂對比
從圖1的結果可以清晰地看到,在無人機編隊多點火情救援的仿真試驗中,該文構建的基于粒子群算法的無人機編隊任務分配,其收斂函數曲線所表現出來的收斂速度快、收斂適應度數值高,明顯優于圖割算法和魚群算法。
在適應度函數收斂性能比較結果的基礎上,進一步比較3種方法滅火任務的各無人機分配結果,如圖2~圖4所示。
從圖2~圖4三種方法獲得的任務分配結果中可以得出以下2點:1)圖割算法和魚群算法為無人機編隊進行的滅火任務分配,均不同程度地出現了某一個無人機承載任務過多的情況,也出現了同一個火情點被多個無人機執行滅火處理的冗余操作。2)該文算法獲得了更好的任務分配結果,沒有出現無人機過載的情況,也沒有出現火情點被重復覆蓋的情況,其具體的分配結果如下。第一個無人機對火情點、火情點執行滅火處理;第二個無人機對火情點、火情點執行滅火處理;第三個無人機對火情點、火情點執行滅火處理;第四個無人機對火情點執行滅火處理;第五個無人機對火情點執行滅火處理。

圖2 圖割算法獲得的無人機編隊滅火任務分配結果

圖4 該文算法獲得的無人機編隊滅火任務分配結果
通過比較可以看出,該文基于粒子群算法構建的無人機編隊多點火情救援任務分配可以獲得更好的結果,也證明了該文工作的價值。

圖3 魚群算法獲得的無人機編隊滅火任務分配結果
無論是野外森林火場還是城市小區的大規模火災,都會出現不同程度的多點火情覆蓋、層級火情阻隔等情況。針對消防救援人員難以及時到達層級阻隔火場、難以短時間內撲滅多點火情的問題,該文提出了一種基于粒子群算法的無人機編隊多點火情救援任務分配方法。通過5個無人機構成的無人機編隊配置和8個火情點的仿真火場配置,進行進一步研究。試驗結果表明,該文提出的基于粒子群算法的無人機編隊任務分配,具有更好的適應度函數曲線表現,能夠更加合理地分配滅火任務,不會出現個體無人機任務過載、個別火情點冗余救援的情況,性能明顯優于圖割算法、魚群算法的分配結果。