一種能耗約束下的多無人機(jī)任務(wù)分配方法
【專利摘要】本發(fā)明涉及能耗約束下的多無人機(jī)任務(wù)分配方法,無人機(jī)編隊(duì)由兩架任務(wù)機(jī)和一架服務(wù)機(jī)構(gòu)成,上位機(jī)采用改進(jìn)的遺傳算法將各任務(wù)點(diǎn)分配給各任務(wù)機(jī),并引入三交換交叉算子,使得到的無人機(jī)編隊(duì)航路最小,且各個(gè)任務(wù)機(jī)的航路盡量均衡;同時(shí),考慮任務(wù)機(jī)的能耗約束問題,為使任務(wù)機(jī)耗費(fèi)的能源盡量少,在任務(wù)機(jī)的理想航路基礎(chǔ)上確定任務(wù)機(jī)的航路匯合點(diǎn),并由服務(wù)機(jī)在匯合點(diǎn)提供能源補(bǔ)給,最終得到無人機(jī)的完整航路,完成所有任務(wù)點(diǎn)的分配。相較于傳統(tǒng)的多無人機(jī)任務(wù)分配問題,本發(fā)明提高了多無人機(jī)系統(tǒng)完成任務(wù)的效率,使多個(gè)任務(wù)機(jī)訪問任務(wù)點(diǎn)的路航路盡可能均衡;引入了能源補(bǔ)給點(diǎn)的設(shè)置方法,對(duì)于保證無人機(jī)任務(wù)分配的順利完成具有十分重大的意義。
【專利說明】
-種能耗約束下的多無人機(jī)任務(wù)分配方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明專利設(shè)及多無人機(jī)任務(wù)分配領(lǐng)域,用于解決空中多無人飛行器能耗受限的 任務(wù)分配問題。
【背景技術(shù)】
[0002] 隨著對(duì)機(jī)器人技術(shù)的深入研究,W及系統(tǒng)能力的顯著提升,機(jī)器人系統(tǒng)的應(yīng)用得 到了飛速發(fā)展。目前,機(jī)器人可W應(yīng)用于更廣泛的領(lǐng)域,機(jī)器人代替人類,使得人類從繁重、 危險(xiǎn)的勞動(dòng)中解脫出來,特別是一些危險(xiǎn)性較高或者人類無法進(jìn)入的特殊場(chǎng)合,例如核泄 漏、空中無人機(jī)航拍監(jiān)測(cè)、火星探險(xiǎn)、火災(zāi)救援W及軍事反恐等應(yīng)用需求。對(duì)于復(fù)雜繁瑣的 作業(yè)任務(wù),單個(gè)機(jī)器人完成任務(wù)所耗費(fèi)時(shí)間較長(zhǎng),效率低等因素導(dǎo)致單一機(jī)器人已無法滿 足完成某些任務(wù)的需求,因此,人類可W將多移動(dòng)機(jī)器人系統(tǒng)運(yùn)用于工農(nóng)業(yè)生產(chǎn)、軍事國(guó)防 和科學(xué)研究等領(lǐng)域中實(shí)現(xiàn)降低人類勞動(dòng)強(qiáng)度、提高工作效率、避免人員傷亡W及擴(kuò)展人類 活動(dòng)空間等目的。
[0003] 現(xiàn)代戰(zhàn)爭(zhēng)中使用機(jī)器人代替±兵執(zhí)行危險(xiǎn)的任務(wù),能最大限度地減少地面部隊(duì)和 非參戰(zhàn)人員的傷亡,由于運(yùn)些任務(wù)的可分解性,用多個(gè)機(jī)器人協(xié)作并行地完成不同的子任 務(wù)顯然會(huì)比單機(jī)器人要快得多。對(duì)于多機(jī)器人系統(tǒng),任務(wù)分配是有效利用多移動(dòng)機(jī)器人系 統(tǒng)資源,W充分發(fā)揮系統(tǒng)效能優(yōu)勢(shì)的重要基礎(chǔ),其重要性程度隨系統(tǒng)成員的功能差異性和 任務(wù)的結(jié)構(gòu)復(fù)雜性的增加而增加。美國(guó)Michigan大學(xué)的化Iland教授提出的遺傳算法 (Genetic Algorithm,GA)是求解復(fù)雜的組合優(yōu)化問題的有效方法。在多機(jī)器人任務(wù)分配系 統(tǒng)中,任務(wù)分配問題的模型可W由多旅行商問題分析得到。最早的旅行商問題的數(shù)學(xué)規(guī)劃 是由Dantzig(1959)等人提出,多旅行商問題(Multiple Traveling Salesman Problem,后 簡(jiǎn)稱MTSP)是指M個(gè)旅行商從同一個(gè)城市或不同城市出發(fā),分別走一條旅行路線,除出發(fā)城 市外,使得每個(gè)城市有且僅有一個(gè)旅行商經(jīng)過,最終回到出發(fā)城市,且總路程最短。
[0004] 任務(wù)分配過程中,各機(jī)器人相當(dāng)于各個(gè)旅行商,旅行商訪問的各個(gè)城市相當(dāng)于機(jī) 器人訪問的各個(gè)任務(wù)點(diǎn),不同之處在于任務(wù)分配的過程為類旅行商模型,即為旅行商無需 返回出發(fā)點(diǎn)的類似模型。
[0005] 由于W上傳統(tǒng)方法并未考慮任務(wù)分配過程中各個(gè)任務(wù)機(jī)航路均衡的問題,W及任 務(wù)機(jī)能耗約束的問題,而對(duì)于無人機(jī)控制領(lǐng)域,任務(wù)機(jī)能耗約束又是一個(gè)必須解決的關(guān)鍵 問題。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明要解決的技術(shù)問題是,針對(duì)上述技術(shù)缺陷,提供一種能耗約束下的多無人 機(jī)任務(wù)分配的方法,能夠?qū)Χ酂o人機(jī)的前方任務(wù)進(jìn)行合理分配并進(jìn)行航路優(yōu)化;同時(shí),解決 多無人機(jī)能耗的補(bǔ)給問題;使其適應(yīng)未來空中作戰(zhàn)戰(zhàn)場(chǎng)及空中運(yùn)輸?shù)绕渌罩腥蝿?wù)分配問 題。
[0007] 為解決上述技術(shù)問題,本發(fā)明采用如下技術(shù)方案:
[0008] -種能耗約束下的多無人機(jī)任務(wù)分配方法,其特征在于在給定無人機(jī)編隊(duì)、各任 務(wù)點(diǎn)W及在任務(wù)機(jī)能耗約束下,W均衡優(yōu)化航路同時(shí)最小化航路為目標(biāo)分配任務(wù),為使任 務(wù)機(jī)耗費(fèi)的能源盡量少,在任務(wù)機(jī)的理想航路基礎(chǔ)上確定任務(wù)機(jī)的航路匯合點(diǎn),并由服務(wù) 機(jī)在匯合點(diǎn)提供能源補(bǔ)給,最終得到無人機(jī)的完整航路,完成所有任務(wù)點(diǎn)的分配;具體包括 如下步驟:
[0009] 步驟1:任務(wù)分配系統(tǒng)初始化;主要包括上位機(jī)初始化、地面控制臺(tái)初始化、時(shí)鐘初 始化、無人機(jī)編隊(duì)初始化;所述無人機(jī)編隊(duì)有至少=架無人機(jī),分別為任務(wù)機(jī)A、任務(wù)機(jī)B,為 任務(wù)機(jī)提供能源的服務(wù)機(jī)C;設(shè)定前方有多個(gè)任務(wù)點(diǎn),且任務(wù)點(diǎn)數(shù)目多于任務(wù)機(jī)數(shù)目,無人 機(jī)編隊(duì)在接收到出發(fā)命令前,位于出發(fā)點(diǎn)0待命;
[0010] 步驟2:建立地面控制臺(tái)、定位衛(wèi)星W及無人機(jī)編隊(duì)之間的通信:執(zhí)行前方任務(wù)時(shí), 通過衛(wèi)星定位技術(shù)實(shí)時(shí)獲得各任務(wù)點(diǎn)、無人機(jī)的位置信息;
[0011] 步驟3:定位衛(wèi)星實(shí)時(shí)將無人機(jī)及前方各任務(wù)點(diǎn)的位置信息傳回給地面控制臺(tái),地 面控制臺(tái)實(shí)時(shí)接收、分析并處理運(yùn)些位置信息;
[0012] 步驟4:上位機(jī)通過改進(jìn)的遺傳算法,引入=交換交叉算子將各任務(wù)點(diǎn)分配給各任 務(wù)機(jī),得到理想航路1〇,即任務(wù)機(jī)不受能耗約束的航路;建立任務(wù)點(diǎn)分配模型為類MTSP模 型,即為旅行商無返回的類MTSP模型;
[0013] 步驟5:獲取能源補(bǔ)給點(diǎn)P的位置:上位機(jī)結(jié)合約束條件模擬任務(wù)機(jī)在初步的理想 航路Io上飛行,得到第一個(gè)能源補(bǔ)給點(diǎn)Po的位置;
[0014] 步驟6:設(shè)定無人機(jī)編隊(duì)到達(dá)第一個(gè)能源補(bǔ)給點(diǎn)Po后,任務(wù)分配系統(tǒng)對(duì)余下的任務(wù) 點(diǎn)重新作任務(wù)分配,同時(shí)尋求下一個(gè)能源補(bǔ)給點(diǎn),即一直循環(huán)運(yùn)行步驟2、步驟3、步驟4、步 驟5,直至完成所有任務(wù)點(diǎn)的分配;
[0015] 步驟7:在所有任務(wù)點(diǎn)分配完成后,控制臺(tái)發(fā)出控制命令,無人機(jī)編隊(duì)接收命令,從 0點(diǎn)出發(fā),沿著指定的規(guī)劃航路前往各任務(wù)點(diǎn)執(zhí)行分配的任務(wù)。
[0016] 上述技術(shù)方案中,任務(wù)機(jī)A和任務(wù)機(jī)B為同構(gòu)無人機(jī),服務(wù)機(jī)C與任務(wù)機(jī)為異構(gòu)無人 機(jī),且服務(wù)機(jī)C能耗限制足W保證完成所有任務(wù),任務(wù)機(jī)A和任務(wù)機(jī)B能耗受限需在飛行過程 中進(jìn)行能源補(bǔ)充。
[0017] 上述技術(shù)方案中,所述能源補(bǔ)給點(diǎn)P是任務(wù)機(jī)能量耗盡的匯合點(diǎn),也是服務(wù)機(jī)C與 任務(wù)機(jī)A、任務(wù)機(jī)B的匯合點(diǎn);且不計(jì)匯合時(shí)刻所耗費(fèi)的時(shí)間,服務(wù)機(jī)C的飛行航路為從出發(fā) 點(diǎn)依次前往各能源補(bǔ)給點(diǎn);在每一個(gè)迭代周期內(nèi)判斷各任務(wù)機(jī)是否需要進(jìn)行能源補(bǔ)給,能 源補(bǔ)給點(diǎn)P位于某一時(shí)刻任務(wù)機(jī)A和B的連線中點(diǎn)處,當(dāng)一隊(duì)編隊(duì)到達(dá)能源補(bǔ)給點(diǎn)即寸,任務(wù) 機(jī)A、任務(wù)機(jī)B的能源已經(jīng)耗盡,服務(wù)機(jī)C的飛行路線為由出發(fā)點(diǎn)0到能源補(bǔ)給點(diǎn)P的直線路 徑。
[0018] 上述技術(shù)方案中,單個(gè)任務(wù)機(jī)的航路長(zhǎng)度即將達(dá)到航路極限值時(shí),該任務(wù)機(jī)前往 能源補(bǔ)給點(diǎn)。
[0019] 上述技術(shù)方案中,步驟4中設(shè)定任務(wù)機(jī)編隊(duì)訪問完所有任務(wù)點(diǎn)后,停留在最后一個(gè) 任務(wù)點(diǎn),無需返回出發(fā)點(diǎn),得到任務(wù)機(jī)初步的不受能耗約束的航路1〇,也即理想航路1〇。
[0020] 本發(fā)明所述改進(jìn)的遺傳算法將各任務(wù)點(diǎn)分配至各任務(wù)機(jī),引進(jìn)=交換交叉算子使 得任務(wù)機(jī)總航路最短、各任務(wù)機(jī)航路大致均衡。任務(wù)分配問題可W描述為:前方有多個(gè)任務(wù) 點(diǎn),且任務(wù)點(diǎn)數(shù)目多于任務(wù)機(jī)數(shù)目,一隊(duì)空中無人機(jī)編隊(duì)正在出發(fā)點(diǎn)待命,上位機(jī)等待通過 衛(wèi)星定位技術(shù)傳回的任務(wù)點(diǎn)及無人機(jī)的位置信息,當(dāng)前方戰(zhàn)場(chǎng)各任務(wù)點(diǎn)的分配方式確定 后,由地面控制臺(tái)發(fā)出控制命令,任務(wù)機(jī)接到新的命令去偵查一些確定位置的點(diǎn),到達(dá)指定 的位置點(diǎn)去執(zhí)行某項(xiàng)任務(wù)。
[0021] 本發(fā)明中,由=角形直角邊小于斜邊原理,設(shè)置匯合點(diǎn)P在任務(wù)機(jī)A、B的連線中點(diǎn) 處,能保證能源的高效利用率,使任務(wù)機(jī)在偏離理想航路和到達(dá)能源補(bǔ)給點(diǎn)P的過程中,所 消耗的能量最小化,最終確定能源補(bǔ)給點(diǎn)P的位置;不計(jì)能源補(bǔ)給點(diǎn)處所耗費(fèi)的時(shí)間,則在 一次能源補(bǔ)給完成后,無人機(jī)編隊(duì)重新開始對(duì)余下的任務(wù)點(diǎn)進(jìn)行分配,同時(shí)尋求下一個(gè)能 源補(bǔ)給點(diǎn),直至完成所有任務(wù)點(diǎn)的分配。
[0022] 本發(fā)明的無人機(jī)任務(wù)編隊(duì)中,任務(wù)機(jī)A和任務(wù)機(jī)B為同構(gòu)的,服務(wù)機(jī)C與任務(wù)機(jī)為異 構(gòu)無人機(jī),異構(gòu)無人機(jī)具有不同的硬件結(jié)構(gòu)和機(jī)體構(gòu)造,針對(duì)不同類型任務(wù)點(diǎn)執(zhí)行偵查、訪 問、打擊等任務(wù);作為能源補(bǔ)給的服務(wù)機(jī)為高性能、高成本的無人機(jī),飛行速度可W超過3馬 赫(無人機(jī)的飛行馬赫數(shù)為無人機(jī)的飛行速度與其飛行高度上音速的比值,例如1馬赫或IM 即為一倍音速),同時(shí),本方法中的無人機(jī)的發(fā)動(dòng)機(jī)推重比設(shè)定為9(無人機(jī)的推重比是指發(fā) 動(dòng)機(jī)推力與發(fā)動(dòng)機(jī)重量或機(jī)體重量之比,它表示發(fā)動(dòng)機(jī)或機(jī)體單位重量所產(chǎn)生的推力,目 前世界先進(jìn)發(fā)動(dòng)機(jī)的推重比一般在7.5-9.0之間,美國(guó)F-119發(fā)動(dòng)機(jī)運(yùn)一數(shù)值能達(dá)到11.0), 由此可知,服務(wù)機(jī)的成本造價(jià)相應(yīng)較高,故W上編隊(duì)方式能夠W較小的作戰(zhàn)成本高效地完 成作戰(zhàn)任務(wù)。任務(wù)機(jī)A和任務(wù)機(jī)B在飛往各任務(wù)點(diǎn)的過程中,其能耗是受限制的,服務(wù)機(jī)C為 高性能無人機(jī),故所受能耗限制約束較弱,在執(zhí)行任務(wù)的過程中,其能源足W保證完成任 務(wù)。
[0023] 綜上所述,本發(fā)明設(shè)及一種解決多無人機(jī)能耗受限任務(wù)分配的方法。所述無人機(jī) 編隊(duì)由兩架任務(wù)機(jī)和一架服務(wù)機(jī)構(gòu)成,適用于未來空中作戰(zhàn)戰(zhàn)場(chǎng)W及其他任務(wù)分配問題。 通過衛(wèi)星定位等技術(shù),實(shí)時(shí)獲取無人機(jī)和任務(wù)點(diǎn)的位置信息;地面控制臺(tái)接收定位衛(wèi)星傳 回的位置信息;上位機(jī)采用改進(jìn)的遺傳算法將各任務(wù)點(diǎn)分配給各任務(wù)機(jī),在傳統(tǒng)的遺傳算 法中引入=交換交叉算子,使得到的無人機(jī)編隊(duì)航路最小,且各個(gè)任務(wù)機(jī)的航路盡量均衡; 同時(shí),考慮任務(wù)機(jī)的能耗約束問題,為使任務(wù)機(jī)耗費(fèi)的能源盡量少,在任務(wù)機(jī)的理想航路基 礎(chǔ)上確定任務(wù)機(jī)的航路匯合點(diǎn),并由服務(wù)機(jī)在匯合點(diǎn)提供能源補(bǔ)給。最終得到無人機(jī)的完 整航路,完成所有任務(wù)點(diǎn)的分配。相較于傳統(tǒng)的多無人機(jī)任務(wù)分配問題,本發(fā)明提出了一種 低成本、結(jié)構(gòu)簡(jiǎn)單的無人機(jī)編隊(duì)方式;其次,本發(fā)明在傳統(tǒng)的遺傳算法中引入=交換交叉算 子,使得到的無人機(jī)編隊(duì)航路盡量小,提高了多無人機(jī)系統(tǒng)完成任務(wù)的效率,限制每個(gè)任務(wù) 機(jī)訪問任務(wù)點(diǎn)的完成時(shí)間,使多個(gè)任務(wù)機(jī)訪問任務(wù)點(diǎn)的路航路盡可能均衡,充分利用了多 無人機(jī)系統(tǒng);再次,本發(fā)明對(duì)于一組能源即將耗盡的無人機(jī)編隊(duì),引入了能源補(bǔ)給點(diǎn)的設(shè)置 方法,對(duì)于保證無人機(jī)任務(wù)分配的順利完成具有十分重大的意義。
【附圖說明】
[0024] 圖1是本發(fā)明能耗約束下的多無人機(jī)任務(wù)分配方法通信示意圖;
[0025] 圖2是本發(fā)明能耗約束下的多無人機(jī)任務(wù)分配流程圖;
[0026] 圖3是本發(fā)明任務(wù)機(jī)理想航路示意圖;
[0027] 圖4是本發(fā)明能耗約束下的多無人機(jī)任務(wù)分配航路示意圖。
[0028] 具體實(shí)施措施
[0029] 為了進(jìn)一步說明本發(fā)明的技術(shù)方案,對(duì)照附圖對(duì)本發(fā)明進(jìn)行詳細(xì)的說明。
[0030] 圖1為本發(fā)明地面控制臺(tái)、定位衛(wèi)星W及無人機(jī)編隊(duì)之間的通信示意圖。
[0031] 通過定位衛(wèi)星獲取各無人機(jī)、任務(wù)點(diǎn)的位置信息,定位衛(wèi)星將各任務(wù)點(diǎn)、無人機(jī)位 置信息傳回給地面控制臺(tái),地面控制臺(tái)接收、分析并處理運(yùn)些位置信息,通過改進(jìn)的遺傳算 法得到任務(wù)機(jī)的任務(wù)分配路徑,從而得到任務(wù)分配的規(guī)劃航路。
[0032] 圖2為本發(fā)明能耗約束下的多無人機(jī)任務(wù)分配方法的流程圖,主要包括W下步驟:
[0033] 步驟1:任務(wù)分配系統(tǒng)初始化,主要包括上位機(jī)初始化、地面控制臺(tái)初始化、時(shí)鐘初 始化、無人機(jī)編隊(duì)初始化;
[0034] 步驟1-1:設(shè)置無人機(jī)編隊(duì):A、B、C。其中A、B為任務(wù)機(jī),C為服務(wù)機(jī)。無人機(jī)編隊(duì)在接 收到出發(fā)命令前,位于出發(fā)點(diǎn)0;
[0035] 步驟1-2:無人機(jī)初始化主要包括:巧螺儀初始化、加速度計(jì)初始化、磁強(qiáng)計(jì)初始 化、氣壓計(jì)初始化、GPS初始化、攝像頭初始化、單片機(jī)初始化;
[0036] 步驟2:建立地面控制臺(tái)、定位衛(wèi)星W及無人機(jī)編隊(duì)之間的通信;
[0037] 步驟3:地面控制臺(tái)、定位衛(wèi)星W及無人機(jī)編隊(duì)之間進(jìn)行信息傳遞。如圖1所示的地 面控制臺(tái)、定位衛(wèi)星W及無人機(jī)編隊(duì)之間的通信示意圖;
[0038] 步驟3-1:執(zhí)行前方戰(zhàn)場(chǎng)的空中作戰(zhàn)任務(wù)時(shí),通過衛(wèi)星定位等技術(shù)實(shí)時(shí)獲取各任務(wù) 點(diǎn)、無人機(jī)的位置信息;
[0039] 步驟3-2:定位衛(wèi)星將各任務(wù)點(diǎn)、無人機(jī)位置信息傳回給地面控制臺(tái);
[0040] 步驟3-3:地面控制臺(tái)接收、分析并處理傳回的位置信息;
[0041] 步驟4:上位機(jī)通過改進(jìn)的遺傳算法將各任務(wù)點(diǎn)分配給兩架任務(wù)機(jī),得到任務(wù)機(jī)理 想航路1〇。
[0042] 步驟4-1:如圖3所示任務(wù)機(jī)理想航路示意圖。建立任務(wù)點(diǎn)分配模型,其數(shù)學(xué)模型如 下:
[0043]
[0044]
[0045] 其中,xijk、yk功0-1決策變量:當(dāng)Xijk=I時(shí),表示任務(wù)機(jī)k通過弧Q J),否則Xijk = 0;當(dāng)yki = 1時(shí),表示任務(wù)機(jī)ki方問任務(wù)點(diǎn)i,否則yki = 0; W0表示無人機(jī)編隊(duì)的出發(fā)點(diǎn)0,稱為 初始點(diǎn);點(diǎn)1,…,n表示2架任務(wù)機(jī)需訪問的任務(wù)點(diǎn);(^為任務(wù)機(jī)經(jīng)過對(duì)應(yīng)弧段(i,j)所遍歷 的距離;tk為第k個(gè)任務(wù)機(jī)飛行完后耗用的時(shí)間;Vk為第k個(gè)任務(wù)機(jī)的速度,其中:
[0046] Vi = VA= IM ;
[0047] V2 = VB =IM;
[004引 v3 = vc = 3M;
[0049]其中,IM或1馬赫即為1倍音速;
[(K)加 ]目標(biāo)函數(shù)為:
[0051] T=min(max(ti,t2)) (1)
[0052] 其中;
[0化3] (2)
[0化4]
[0化5] (3)
[0化6] (4)
[0化7] (5)
[005引 X=(Xijk)GS (6)
[0059] 在該模型中,式(1)表示兩架任務(wù)機(jī)中,使訪問任務(wù)點(diǎn)時(shí)間最大的任務(wù)機(jī)用時(shí)最小 化;式(2)表示各個(gè)任務(wù)機(jī)訪問完所有任務(wù)點(diǎn)后耗用的時(shí)間;式(3)表示從起始點(diǎn)0(也即出 發(fā)點(diǎn)0)出發(fā),所有任務(wù)點(diǎn)只被某一個(gè)任務(wù)機(jī)嚴(yán)格訪問一次;式(4)表示任一條弧的終點(diǎn)任務(wù) 點(diǎn)僅有一個(gè)起點(diǎn)任務(wù)點(diǎn)與之相連;式(5)表示任一條弧的起點(diǎn)任務(wù)點(diǎn)僅有一個(gè)終點(diǎn)任務(wù)點(diǎn) 與之相連;式(6)表示消去構(gòu)成不完整線路的解,S為支路消去約束,即消去構(gòu)成不完整路線 的解。
[0060] 步驟4-2:利用改進(jìn)的遺傳算法將各任務(wù)點(diǎn)按照式(1)的優(yōu)化條件分配給任務(wù)機(jī)A 和B:采用=交換交叉,染色體編碼W及矩陣解碼方法,對(duì)種群重復(fù)地進(jìn)行選擇、交叉、變異 等遺傳操作,不斷產(chǎn)生出比父代更適應(yīng)環(huán)境的新一代種群。
[0061] 步驟4-2-1:對(duì)任務(wù)進(jìn)行遺傳編碼。任務(wù)機(jī)A、B進(jìn)行任務(wù)分配,共有N+1個(gè)任務(wù)點(diǎn),用 點(diǎn)0表示所有無人機(jī)的起始點(diǎn),點(diǎn)1…N表示2架任務(wù)機(jī)需要訪問的任務(wù)點(diǎn)。附加1個(gè)虛擬符 號(hào),表示1個(gè)虛擬任務(wù)點(diǎn)。它們與起始點(diǎn)0具有相同的坐標(biāo),即每一次出現(xiàn)虛擬符號(hào)就表示任 務(wù)機(jī)訪問起始點(diǎn)0,但是對(duì)于任務(wù)訪問完成的情況下,出現(xiàn)虛擬符號(hào)時(shí)不返回起始點(diǎn)0。每一 條路線表示某一個(gè)任務(wù)機(jī)的訪問航路。為避免出現(xiàn)無意義的子路徑,我們假設(shè)從任務(wù)點(diǎn)0到 任務(wù)點(diǎn)0的路程是無窮大。例如,當(dāng)N=6,即有6個(gè)任務(wù)點(diǎn)時(shí),染色體代碼是0~7,其中"7"為 添加的虛擬符號(hào),2架任務(wù)機(jī)的任務(wù)分配問題,它的一條染色體編碼是: 「
[0063] 則該任務(wù)機(jī)A、B的航路分別表示為:
[0064] 0-1-2-50-4-3-6
[0065] 在算法操作過程中,可能會(huì)出現(xiàn)虛擬符號(hào)在一條染色體的兩端的情況:
[0066]
[0067] 則此時(shí)任務(wù)機(jī)A、B的航路表示為:
[0068] 1-2-5-6-4-30-0
[0069] 從任務(wù)點(diǎn)0到任務(wù)點(diǎn)0的路程是無窮大,所W目前任務(wù)機(jī)中的路程最大值為無窮 大。又由于有約束條件航路最大值最小化,所W運(yùn)樣的染色體會(huì)被淘汰掉。
[0070] 步驟4-2-2:群體規(guī)模選擇。合適的群體規(guī)模對(duì)遺傳算法的收斂具有重要意義。群 體太小難W求得滿意的結(jié)果,群體太大則計(jì)算復(fù)雜。根據(jù)經(jīng)驗(yàn),群體規(guī)模一般取10~200。 [0071 ]步驟4-2-3:適值函數(shù)。由于優(yōu)化目標(biāo)為最小化完成時(shí)間,令目標(biāo)函數(shù)作指數(shù)變換 得到適值函數(shù):
[0072] f = a exp(-bXT) (7)
[0073] 其中:a、b為正實(shí)數(shù)。
[0074] 步驟4-2-4:選擇。采用輪盤賭選擇的方法,每一個(gè)個(gè)體被選擇的概率就等于它的 適應(yīng)值與整個(gè)種群中個(gè)體適應(yīng)值和的比例。若某個(gè)個(gè)體i,其適值為則其被選擇的概率 表示為:
[0075]
烤}
[0076] 步驟4-2-5:交叉操作。引入S交換交叉算子使各任務(wù)機(jī)航路長(zhǎng)度的最大值最小 化,從而實(shí)現(xiàn)均衡各任務(wù)機(jī)的航路長(zhǎng)度。=交換交叉算子采用3個(gè)父代染色體雜交出現(xiàn)1個(gè) 子代,該方法增加了父代染色體的數(shù)量,保留和放大了子代繼承父代優(yōu)良基因的特性,加快 了算法的捜索速度。W6個(gè)任務(wù)點(diǎn)的情況為例,來詳細(xì)地描述=交換交叉算子的交叉過程:
[0077] 6個(gè)任務(wù)點(diǎn)的非對(duì)稱距離如下所示,對(duì)于任務(wù)點(diǎn)距離對(duì)稱的任務(wù)分配此方法仍然 適用。
[0078] 6個(gè)任務(wù)點(diǎn)之間的距離
[0079]
[0080」隨機(jī)選掙=個(gè)個(gè)體進(jìn)斤=交挾交義:
[0081 ] Q = I 2 5 7 4 3 6
[0082] (6 = 2 7 3 4 1 6 5
[008;3] 丫 =3 6 4 5 7 2 1
[0084] a航路的路程和是23,單個(gè)任務(wù)機(jī)中的最大路程是14;
[0085] 0航路的路程和是27,單個(gè)任務(wù)機(jī)中的最大路程是20;
[0086] 丫航路的路程和是34,單個(gè)任務(wù)機(jī)中的最大路程是20。隨機(jī)選擇起始點(diǎn)為1,使1成 為立個(gè)父體的第一個(gè)位置。
[0087] Q = I 2 5 7 4 3 6
[0088] (6=1 6 5 2 7 3 4
[0089] 丫 =1 364572
[0090] L=I ***** *
[0091 ]因?yàn)閐(l ,2)=6,d(l ,6)=4,d(l ,3)=5,所Wd(l ,2)〉d(l ,3)〉d(l ,6),所W
[0092] 口 = 1 6 2 5 7 4 3 [OOW] 0=1 6 5 2 7 3 4
[0094] 丫 =1645723
[00巧]L=I 6 * * * * *
[0096] 由此類推,最后得到的后代是:
[0097] L=I 6 5 2 7 4 3
[0098] L的路程和是20,單個(gè)任務(wù)機(jī)中的最大路程是13,所WL的總路程和W及單個(gè)任務(wù) 機(jī)航路的最大值均小于a, 0和丫。
[0099] 步驟4-2-6:變異操作。本發(fā)明中類MTSP多機(jī)器人任務(wù)分配系統(tǒng)的染色體變異采用 交換變異,即交換兩個(gè)隨機(jī)位置上的基因。
[0100] 步驟4-2-7:矩陣解碼。6個(gè)任務(wù)點(diǎn)的作戰(zhàn)情況中,其中的一條染色體是:
[0101] Q = I 2 5 7 4 3 6
[0102] 貝1J2架任務(wù)機(jī)的航路分別是:
[0103] 0-1-2-50-4-3-6
[01 04] 即任務(wù)機(jī)A的航路為0-1-2-5;任務(wù)機(jī)B的航路為0-4-3-6。
[01化]建立一個(gè)6*6的任務(wù)點(diǎn)距離矩陣D,如下所示:
[0106]
[0107] ;,可W得到任務(wù)機(jī)A、B的可達(dá)矩陣XI、拉如下:
[010 引
[0109]
[0110] 每個(gè)任務(wù)機(jī)的可達(dá)矩陣乂巧1,拉}與各個(gè)任務(wù)點(diǎn)構(gòu)成的距離矩陣D分別進(jìn)行點(diǎn)乘,得 到的矩陣即為各個(gè)任務(wù)機(jī)飛行路線的距離矩陣I、,最終得到每個(gè)任務(wù)機(jī)的飛行路 線長(zhǎng)度。例如,由W上可得任務(wù)機(jī)A所走路程的距離矩陣為:
[0111]
[0112]
[0113] 所W,可W求得算法分配后的任務(wù)機(jī)A的航路長(zhǎng)度總和Sa=1+6+2 = 9;任務(wù)機(jī)B的 航路長(zhǎng)度總和Sb = 4+7+3 = 14;
[0114] 步驟4-3:設(shè)定任務(wù)機(jī)編隊(duì)訪問完所有任務(wù)點(diǎn)后,停留在最后一個(gè)任務(wù)點(diǎn),無需返 回出發(fā)點(diǎn),得到如圖3所示的任務(wù)機(jī)理想航路1〇;
[0115] 步驟5:獲取能源補(bǔ)給點(diǎn)P的位置,如圖4所示的一種能耗約束下的多無人機(jī)任務(wù)分 配航路示意圖;
[0116] 步驟5-1:上位機(jī)結(jié)合約束條件(任務(wù)機(jī)的能耗約束條件:Sa= Sb《So, W及能源補(bǔ) 給點(diǎn)位于兩架任務(wù)機(jī)A、B的連線中點(diǎn)處的中點(diǎn)約束條件;
,
摸擬任務(wù)機(jī)在理想航路Io上飛行,得到第一個(gè)能源補(bǔ)給點(diǎn)Po的 位置,如圖4中所示能源補(bǔ)給點(diǎn)P;
[0117] 步驟5-2:兩個(gè)任務(wù)機(jī)A、BW及服務(wù)機(jī)C的匯合點(diǎn)為點(diǎn)P,且不計(jì)匯合時(shí)刻所耗費(fèi)的 時(shí)間,服務(wù)機(jī)C的飛行航路為從出發(fā)點(diǎn)依次前往各能源補(bǔ)給點(diǎn)。并且,對(duì)于每一次迭代,系統(tǒng) 判斷單個(gè)任務(wù)機(jī)的航路長(zhǎng)度是否即將達(dá)到航路極限值(單次航路最大值為So),當(dāng)某一任務(wù) 機(jī)的航路即將達(dá)到極限值時(shí),任務(wù)機(jī)前往能源補(bǔ)給點(diǎn)。其中,任務(wù)機(jī)A、B的飛行速度為1M(1M 即為一倍音速),服務(wù)機(jī)C的飛行速度為3M;迭代周期為200ms;A、B、C的飛行航路長(zhǎng)度分別 為:Sa、Sb、Sc;A、B之間的直線距離為Sab;A'、B'為任務(wù)機(jī)偏離理想航路Io的偏離點(diǎn);任務(wù)機(jī)一 次受能耗約束的最大飛行航路長(zhǎng)度為S〇;Sa-b-為偏離點(diǎn)A'和B'的直線距離;Sa p為偏離點(diǎn)A' 和匯合點(diǎn)P的直線距離;Sb-P為偏離點(diǎn)B'和匯合點(diǎn)P的直線距離;任務(wù)機(jī)的能耗約束條件,W 及能源補(bǔ)給點(diǎn)的位置的中點(diǎn)約束條件為:
[011 引
[0119] 由W上約束條件可W得到任務(wù)機(jī)編隊(duì)執(zhí)行任務(wù)過程中某一次能源補(bǔ)給點(diǎn)P的位 置;
[0120] 步驟6:無人機(jī)編隊(duì)到達(dá)第一個(gè)能源補(bǔ)給點(diǎn)后,系統(tǒng)對(duì)余下的任務(wù)點(diǎn)重新作任務(wù)分 配,同時(shí)結(jié)合約束條件尋求下一個(gè)能源補(bǔ)給點(diǎn)。即一直循環(huán)運(yùn)行步驟2、步驟3、步驟4、步驟 5,直至完成所有任務(wù)點(diǎn)的分配,最終確定多無人機(jī)基于能耗受限的任務(wù)分配的航路;
[0121] 步驟7:在所有任務(wù)點(diǎn)分配完成后,控制臺(tái)發(fā)出控制命令,無人機(jī)編隊(duì)接收命令,從 0點(diǎn)出發(fā),沿著指定航路前往任務(wù)點(diǎn)執(zhí)行任務(wù)。
[0122] 綜上,本發(fā)明設(shè)計(jì)了一種優(yōu)化和均衡無人機(jī)編隊(duì)航路的任務(wù)分配方法,得到無人 機(jī)的規(guī)劃航路;同時(shí),考慮了實(shí)際應(yīng)用中的能源補(bǔ)給問題,在任務(wù)機(jī)訪問各任務(wù)點(diǎn)的同時(shí), 設(shè)置能源補(bǔ)給點(diǎn)求解過程。該方法具有實(shí)用性強(qiáng)的優(yōu)點(diǎn),適用于其他空中多任務(wù)分配的場(chǎng) 合;擴(kuò)大了多無人機(jī)任務(wù)分配應(yīng)用領(lǐng)域,為空中運(yùn)輸及空中戰(zhàn)場(chǎng)規(guī)劃提供了良好的分配方 法D
【主權(quán)項(xiàng)】
1. 一種能耗約束下的多無人機(jī)任務(wù)分配方法,其特征在于:在給定無人機(jī)編隊(duì)、各任務(wù) 點(diǎn)以及在任務(wù)機(jī)能耗約束下,以均衡優(yōu)化航路同時(shí)最小化航路為目標(biāo)分配任務(wù),為使任務(wù) 機(jī)耗費(fèi)的能源盡量少,在任務(wù)機(jī)的理想航路基礎(chǔ)上確定任務(wù)機(jī)的航路匯合點(diǎn),并由服務(wù)機(jī) 在匯合點(diǎn)提供能源補(bǔ)給,最終得到無人機(jī)的完整航路,完成所有任務(wù)點(diǎn)的分配;具體包括如 下步驟: 步驟1:任務(wù)分配系統(tǒng)初始化;主要包括上位機(jī)初始化、地面控制臺(tái)初始化、時(shí)鐘初始 化、無人機(jī)編隊(duì)初始化;所述無人機(jī)編隊(duì)有至少三架無人機(jī),分別為任務(wù)機(jī)A、任務(wù)機(jī)B,為任 務(wù)機(jī)提供能源的服務(wù)機(jī)C;設(shè)定前方有多個(gè)任務(wù)點(diǎn),且任務(wù)點(diǎn)數(shù)目多于任務(wù)機(jī)數(shù)目,無人機(jī) 編隊(duì)在接收到出發(fā)命令前,位于出發(fā)點(diǎn)〇待命; 步驟2:建立地面控制臺(tái)、定位衛(wèi)星以及無人機(jī)編隊(duì)之間的通信:執(zhí)行前方任務(wù)時(shí),通過 衛(wèi)星定位技術(shù)實(shí)時(shí)獲得各任務(wù)點(diǎn)、無人機(jī)的位置信息; 步驟3:定位衛(wèi)星實(shí)時(shí)將無人機(jī)及前方各任務(wù)點(diǎn)的位置信息傳回給地面控制臺(tái),地面控 制臺(tái)實(shí)時(shí)接收、分析并處理這些位置信息; 步驟4:上位機(jī)通過改進(jìn)的遺傳算法,引入三交換交叉算子將各任務(wù)點(diǎn)分配給各任務(wù) 機(jī),得到理想航路1〇,即任務(wù)機(jī)不受能耗約束的航路;建立任務(wù)點(diǎn)分配模型為類MTSP模型, 即為旅行商無返回的類MTSP模型; 步驟5:獲取能源補(bǔ)給點(diǎn)P的位置:上位機(jī)結(jié)合約束條件模擬任務(wù)機(jī)在初步的理想航路1〇 上飛行,得到第一個(gè)能源補(bǔ)給點(diǎn)P〇的位置; 步驟6:設(shè)定無人機(jī)編隊(duì)到達(dá)第一個(gè)能源補(bǔ)給點(diǎn)P〇后,任務(wù)分配系統(tǒng)對(duì)余下的任務(wù)點(diǎn)重 新作任務(wù)分配,同時(shí)尋求下一個(gè)能源補(bǔ)給點(diǎn),即一直循環(huán)運(yùn)行步驟2、步驟3、步驟4、步驟5, 直至完成所有任務(wù)點(diǎn)的分配; 步驟7:在所有任務(wù)點(diǎn)分配完成后,控制臺(tái)發(fā)出控制命令,無人機(jī)編隊(duì)接收命令,從0點(diǎn) 出發(fā),沿著指定的規(guī)劃航路前往各任務(wù)點(diǎn)執(zhí)行分配的任務(wù)。2. 根據(jù)權(quán)利要求1所述的能耗約束下的多無人機(jī)任務(wù)分配方法,其特征在于:任務(wù)機(jī)A 和任務(wù)機(jī)B為同構(gòu)無人機(jī),服務(wù)機(jī)C與任務(wù)機(jī)為異構(gòu)無人機(jī),且服務(wù)機(jī)C能耗限制足以保證完 成所有任務(wù),任務(wù)機(jī)A和任務(wù)機(jī)B能耗受限需在飛行過程中進(jìn)行能源補(bǔ)充。3. 根據(jù)權(quán)利要求1所述的能耗約束下的多無人機(jī)任務(wù)分配方法,其特征在于:所述能源 補(bǔ)給點(diǎn)P是任務(wù)機(jī)能量耗盡的匯合點(diǎn),也是服務(wù)機(jī)C與任務(wù)機(jī)A、任務(wù)機(jī)B的匯合點(diǎn);且不計(jì)匯 合時(shí)刻所耗費(fèi)的時(shí)間,服務(wù)機(jī)C的飛行航路為從出發(fā)點(diǎn)依次前往各能源補(bǔ)給點(diǎn);在每一個(gè)迭 代周期內(nèi)判斷各任務(wù)機(jī)是否需要進(jìn)行能源補(bǔ)給,能源補(bǔ)給點(diǎn)P位于某一時(shí)刻任務(wù)機(jī)A和B的 連線中點(diǎn)處,當(dāng)一隊(duì)編隊(duì)到達(dá)能源補(bǔ)給點(diǎn)P時(shí),任務(wù)機(jī)A、任務(wù)機(jī)B的能源已經(jīng)耗盡,服務(wù)機(jī)C 的飛行路線為由出發(fā)點(diǎn)〇到能源補(bǔ)給點(diǎn)P的直線路徑。4. 根據(jù)權(quán)利要求1所述的能耗約束下的多無人機(jī)任務(wù)分配方法,其特征在于:單個(gè)任務(wù) 機(jī)的航路長(zhǎng)度即將達(dá)到航路極限值時(shí),該任務(wù)機(jī)前往能源補(bǔ)給點(diǎn)。5. 根據(jù)權(quán)利要求1所述的能耗約束下的多無人機(jī)任務(wù)分配方法,其特征在于:步驟4中 設(shè)定任務(wù)機(jī)編隊(duì)訪問完所有任務(wù)點(diǎn)后,停留在最后一個(gè)任務(wù)點(diǎn),無需返回出發(fā)點(diǎn),得到任務(wù) 機(jī)初步的不受能耗約束的航路1〇,也即理想航路1〇。
【文檔編號(hào)】G05D1/10GK106020230SQ201610341065
【公開日】2016年10月12日
【申請(qǐng)日】2016年5月20日
【發(fā)明人】吳懷宇, 鮑逸群, 陳洋, 陳鵬震, 鐘銳
【申請(qǐng)人】武漢科技大學(xué)