本發(fā)明屬于任務(wù)分配,具體為一種基于改進多目標蟻群算法的無人機集群任務(wù)分配方法。
背景技術(shù):
1、隨著無人機技術(shù)的迅速發(fā)展,無人機集群作為一種高效、靈活的系統(tǒng),受到了廣泛的關(guān)注和研究。在執(zhí)行任務(wù)時,無人機集群能夠充分利用其靈活性和可擴展性,通過協(xié)同執(zhí)行的方式,提高任務(wù)的執(zhí)行效率和成功率。無人機集群任務(wù)分配是一個多目標多約束的優(yōu)化問題,其復(fù)雜性隨著無人機數(shù)量和任務(wù)規(guī)模的增加而急劇上升。在執(zhí)行任務(wù)時,需綜合考慮任務(wù)環(huán)境、資源限制和多機協(xié)同等因素,將任務(wù)合理分配給各個無人機,以確保在滿足各種約束條件的前提下,無人機集群能有效地執(zhí)行任務(wù)。因此,研究無人機集群任務(wù)分配方法,對于提升無人機集群執(zhí)行任務(wù)效能具有重要意義。
2、目前關(guān)于無人機集群任務(wù)分配的研究已經(jīng)取得了一些研究成果,但尚有不足。首先,模型大多建模為單目標優(yōu)化模型,或通過加權(quán)法將多目標優(yōu)化模型轉(zhuǎn)為單目標優(yōu)化模型,難以真正描述無人機集群在執(zhí)行任務(wù)時任務(wù)分配的復(fù)雜性。其次,在任務(wù)分配中計算航程代價時只考慮無人機到目標點的二維歐氏距離,未考慮到無人機在實際環(huán)境中的三維飛行距離。最后,沒有考慮到無人機集群在執(zhí)行任務(wù)時,無人機的飛行速度、續(xù)航能力等性能特點存在差異。以上的不足易導(dǎo)致無人機在執(zhí)行任務(wù)分配方案時,實際任務(wù)執(zhí)行效果與預(yù)期存在較大偏差。因此,在無人機集群任務(wù)分配中,必須充分考慮每架無人機的性能特點與任務(wù)環(huán)境的實際情況,確保任務(wù)分配的有效性,最大程度地提升任務(wù)執(zhí)行效果。
3、蟻群算法是dorigo提出的一種基于螞蟻覓食行為的優(yōu)化算法,使用正反饋機制,具有很強的魯棒性,在解決組合優(yōu)化問題中展現(xiàn)出了優(yōu)異的性能。近年來,隨著優(yōu)化問題的復(fù)雜性和多樣性不斷提高,研究者們開始關(guān)注多目標蟻群算法,提出了多種改進和變體算法,以提高算法的收斂性、多樣性和魯棒性。然而,當前的多目標蟻群算法更加注重理論研究,難以直接應(yīng)用于無人機集群任務(wù)分配中。因此,需對其進行改進,使多目標蟻群算法能夠有效地應(yīng)用于無人機集群任務(wù)分配問題,利用算法的啟發(fā)式搜索策略和正反饋機制在求解過程中不斷調(diào)整和優(yōu)化解的質(zhì)量,從而逐步逼近帕累托最優(yōu)解集。
技術(shù)實現(xiàn)思路
1、發(fā)明目的:為解決現(xiàn)有任務(wù)分配方法中模型過于簡化、航程代價計算不準確、未考慮無人機性能差異等問題,以及為解決當前的多目標蟻群算法難以直接應(yīng)用于無人機集群任務(wù)分配的問題,本發(fā)明提出了一種基于改進多目標蟻群算法的無人機集群任務(wù)分配方法。
2、技術(shù)方案:一種基于改進多目標蟻群算法的無人機集群任務(wù)分配方法,包括以下步驟:
3、步驟1:以最小化任務(wù)完成后的無人機集群總飛行航程為優(yōu)化目標一,以最小化任務(wù)完成時間為優(yōu)化目標二;所述任務(wù)完成后的無人機集群總飛行航程是指根據(jù)無人機的初始位置、任務(wù)的位置和飛行環(huán)境,估算得到的所有無人機到任務(wù)的飛行航程;所述任務(wù)完成時間是指執(zhí)行完最后一個任務(wù)的完成時間;
4、步驟2:確定無人機集群中各無人機間的協(xié)同約束,確定執(zhí)行任務(wù)的時序約束,確定每架無人機的飛行航程約束;
5、步驟3:根據(jù)優(yōu)化目標一和優(yōu)化目標二,分別構(gòu)建兩個螞蟻組和相應(yīng)的兩個啟發(fā)信息,每個螞蟻組由多只螞蟻構(gòu)成;
6、步驟4:將每個螞蟻組劃分成多個螞蟻子群,對于任意一螞蟻子群,其包含的每只螞蟻都代表同一架無人機;
7、步驟5:從每個螞蟻子群中取一只螞蟻,以此形成蟻簇;
8、步驟6:根據(jù)每架無人機的初始價值和剩余飛行航程,更新每架無人機的成員信息素;每架無人機基于其成員信息素來競爭獲得下一個任務(wù)的執(zhí)行權(quán);
9、步驟7:獲得下一個任務(wù)的執(zhí)行權(quán)的無人機根據(jù)狀態(tài)轉(zhuǎn)移規(guī)則選擇下一個任務(wù);所述狀態(tài)轉(zhuǎn)移規(guī)則由任務(wù)環(huán)境中的信息素與啟發(fā)信息共同決定;
10、步驟8:重復(fù)執(zhí)行步驟6~步驟7,直至該蟻簇中的所有螞蟻均遍歷完,得到該蟻簇對應(yīng)的任務(wù)分配解;然后執(zhí)行步驟9;
11、步驟9:計算該蟻簇對應(yīng)的任務(wù)分配解的優(yōu)化目標一的值和優(yōu)化目標二的值,并更新局部信息素;
12、步驟10:重復(fù)執(zhí)行步驟5至步驟9,直至所有的蟻簇遍歷完,得到所有蟻簇各自對應(yīng)的任務(wù)分配解,然后執(zhí)行步驟11;
13、步驟11:將當前構(gòu)造的所有任務(wù)分配解中的帕累托最優(yōu)解存入檔案集中,當前構(gòu)造的所有任務(wù)分配解是指上一次迭代檔案集中的所有解和本次迭代得到的所有蟻簇各自對應(yīng)的任務(wù)分配解;在檔案集中找出最靠近原點的多個帕累托最優(yōu)解,記為解集origin;根據(jù)檔案集中的所有解和解集origin中的所有解,更新兩個螞蟻組的全局信息素;
14、步驟12:判斷是否滿足終止條件,若滿足,則輸出檔案集中的所有解,檔案集中的所有解構(gòu)成最終的任務(wù)分配方案;若不滿足,則執(zhí)行步驟3;
15、步驟13:無人機集群按照步驟12得到的任務(wù)分配方案,執(zhí)行任務(wù)。
16、進一步的,所述的任務(wù)完成后的無人機集群總飛行航程,按照以下步驟進行建模:
17、使用數(shù)字高程模型對任務(wù)環(huán)境進行數(shù)字模擬;
18、任務(wù)完成后的無人機集群總飛行航程建模為:
19、;
20、其中,為無人機在執(zhí)行任務(wù)時采用基于垂直切面的三維航程代價計算方法預(yù)估得到的飛行航程;為任務(wù)決策變量,表示無人機是否執(zhí)行任務(wù),表示無人機不執(zhí)行任務(wù),表示無人機執(zhí)行任務(wù);表示無人機總數(shù)量,表示任務(wù)總數(shù)量;
21、所述的任務(wù)完成時間建模為:
22、;
23、其中,為無人機執(zhí)行任務(wù)所花費的時間,為無人機的飛行速度。
24、進一步的,步驟2中,無人機集群中各無人機間的協(xié)同約束,表示為:
25、;
26、式中,為任務(wù)決策變量,表示無人機是否執(zhí)行任務(wù),表示無人機不執(zhí)行任務(wù),表示無人機執(zhí)行任務(wù);
27、該協(xié)同約束表示一架無人機在同一時間只能執(zhí)行一個任務(wù),且一個任務(wù)只能被一架無人機執(zhí)行;
28、對于無人機要執(zhí)行的任意兩個相鄰的任務(wù)與任務(wù),無人機必須在執(zhí)行完任務(wù)之后,才能執(zhí)行任務(wù),因此,執(zhí)行任務(wù)的時序約束,表示為:
29、;
30、其中,、分別為無人機到達任務(wù)、任務(wù)的時間,且任務(wù)的執(zhí)行順序在任務(wù)之前,為無人機執(zhí)行任務(wù)所花費的時間;
31、每架無人機的飛行航程約束,表示為:
32、;
33、其中,為無人機的最大可飛行航程;為無人機在執(zhí)行任務(wù)時采用基于垂直切面的三維航程代價計算方法預(yù)估得到的飛行航程。
34、進一步的,步驟3中的兩個啟發(fā)信息包括任務(wù)完成后的無人機集群總飛行航程對應(yīng)的啟發(fā)信息和任務(wù)完成時間對應(yīng)的啟發(fā)信息,分別表示為:
35、;
36、其中,為從任務(wù)轉(zhuǎn)移到任務(wù)所需的航程代價;為所有無人機的平均飛行時間;為無人機的當前飛行時間;為無人機從任務(wù)轉(zhuǎn)移到任務(wù)所花費的時間代價,為無人機的飛行速度。
37、進一步的,步驟6中,所述的根據(jù)每架無人機的初始價值和剩余飛行航程,更新每架無人機的成員信息素,表示為:
38、設(shè)無人機在時刻的成員信息素,由無人機的初始價值和此時的剩余飛行航程對其進行更新,表示為:
39、;
40、式中,為無人機在時刻的已飛行的航程;為無人機的初始價值,為無人機的最大可飛行航程。
41、進一步的,步驟6中,所述的每架無人機基于其成員信息素來競爭獲得下一個任務(wù)的執(zhí)行權(quán),表示為:
42、根據(jù)成員信息素,無人機在時刻獲得下一個任務(wù)的任務(wù)執(zhí)行權(quán)的概率為:
43、;
44、式中,表示無人機總數(shù)量。
45、進一步的,步驟7中,所述的獲得下一個任務(wù)的執(zhí)行權(quán)的無人機根據(jù)狀態(tài)轉(zhuǎn)移規(guī)則選擇下一個任務(wù),表示為:
46、假設(shè)獲得下一個任務(wù)的執(zhí)行權(quán)的無人機為無人機,所述狀態(tài)轉(zhuǎn)移規(guī)則表示為:
47、;
48、其中,為根據(jù)下式給出的概率分布產(chǎn)生的一個隨機變量:
49、;
50、其中,為螞蟻組,每個螞蟻組都有自己的信息素矩陣與啟發(fā)信息;為時刻待選擇的任務(wù)集合;為時刻任務(wù)與任務(wù)之間的信息素濃度;為時刻任務(wù)與任務(wù)之間的啟發(fā)信息;與分別為信息素因子和啟發(fā)信息因子,用于控制信息素與啟發(fā)信息的相對重要性;為之間的隨機數(shù);為平衡因子,當時使用貪心法,當時采用輪盤賭法。
51、進一步的,步驟9中,所述的更新局部信息素,表示為:
52、;
53、其中,為時刻任務(wù)與任務(wù)之間的信息素濃度,為局部信息素揮發(fā)系數(shù),為信息素初始值。
54、進一步的,步驟11中,所述的更新兩個螞蟻組的全局信息素,表示為:
55、;
56、其中,的值是非負的;為全局信息素揮發(fā)系數(shù);為每次迭代后任務(wù)與任務(wù)之間的信息素增量,計算方法為:
57、;
58、式中,為檔案集中的所有解經(jīng)過路徑留下的信息素;為解集origin中的解經(jīng)過路徑留下的信息素;為信息素常數(shù);origin為解集origin;與分別為檔案集中的解的目標函數(shù)值和解集origin中的解的目標函數(shù)值。
59、進一步的,在步驟10中,當?shù)玫剿邢伌馗髯詫?yīng)的任務(wù)分配解后,對狀態(tài)轉(zhuǎn)移規(guī)則中的按照以下公式進行自適應(yīng)更新:
60、;
61、其中,為的上限,為基于香農(nóng)熵設(shè)置的種群多樣性;為路徑在任務(wù)分配解中出現(xiàn)的概率;為種群數(shù)量;為路徑在任務(wù)分配解中出現(xiàn)的次數(shù)。
62、有益效果:本發(fā)明建立了兩個優(yōu)化目標與多約束條件的任務(wù)分配模型,并針對此模型提出一種基于競爭的多目標蟻群系統(tǒng)算法進行求解,與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:
63、(1)本發(fā)明方法考慮到任務(wù)場景時任務(wù)分配的復(fù)雜性,設(shè)置了兩個優(yōu)化目標,并根據(jù)這兩個優(yōu)化目標設(shè)置不同的啟發(fā)信息和信息素矩陣,為決策者提供更多選擇方案,確保任務(wù)分配能夠根據(jù)不同的情況靈活調(diào)整,更好地適應(yīng)任務(wù)環(huán)境的變化,提高任務(wù)分配效率;
64、(2)本發(fā)明方法針對無人機的性能差異與多機協(xié)同建立約束,并在改進蟻群算法中設(shè)置成員信息素矩陣,確保了只有具備剩余飛行航程的無人機能夠繼續(xù)執(zhí)行后續(xù)的任務(wù),從而有效滿足模型中的約束條件,并且使剩余飛行航程更為充足的無人機將擁有更大的機會被選擇執(zhí)行任務(wù),有效平衡了無人機的剩余飛行航程,避免了因某架無人機過早耗盡剩余飛行航程而無法繼續(xù)參與后續(xù)任務(wù)的情況;
65、(3)本發(fā)明方法根據(jù)種群多樣性設(shè)計自適應(yīng)轉(zhuǎn)移規(guī)則,使算法在種群多樣性較大時,加快收斂速度;在算法趨向于局部最優(yōu)時,擴大搜索空間,提高找到更好解的可能性;
66、(4)本發(fā)明方法設(shè)置容量有限的檔案集存儲帕累托最優(yōu)解,實現(xiàn)種群間的信息共享,并設(shè)計基于原點的信息素更新方法,在提高算法收斂性的同時保持了種群多樣性。