本發(fā)明實(shí)施例涉及無人機(jī)
技術(shù)領(lǐng)域:
,具體涉及一種多無人機(jī)任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化方法及裝置。
背景技術(shù):
:當(dāng)前,無人機(jī)uav(unmannedaerialvehicle)在軍民領(lǐng)域有著廣泛的應(yīng)用,可完成目標(biāo)偵察、目標(biāo)跟蹤、情報(bào)收集、震后救援和地質(zhì)勘探等多種類型任務(wù)。例如在多架uav協(xié)同偵察目標(biāo)時(shí),既要最合理地為每架uav分配其所需偵察的目標(biāo),還要為其規(guī)劃最優(yōu)的飛行航跡。該問題是一個(gè)受多因素約束的任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化問題,也是非確定性問題。隨著uav研究的深入,環(huán)境因素被逐漸納入問題的研究,特別是uav任務(wù)分配、航跡規(guī)劃和飛行控制等問題中,在環(huán)境因素的影響下如何降低耗能、控制uav的飛行狀態(tài)從而使uav消耗最少的燃料執(zhí)行最多的任務(wù)、具備更好的任務(wù)執(zhí)行狀態(tài)和更高的安全性是當(dāng)前uav研究的主要工作。當(dāng)前常用于解決uav任務(wù)分配與任務(wù)規(guī)劃問題的模型有:tsp模型,top模型和vrp模型,其中,tsp模型是在只有單一旅行者的條件下,使得旅行者通過所有給定的目標(biāo)點(diǎn)之后,從而使其路徑成本最小的模型;top模型是在存在多個(gè)成員的條件下,使得每個(gè)成員盡可能訪問更多的目標(biāo)點(diǎn),從而使得所有成員的總收益最大的模型;vrp模型是在車輛數(shù)量固定的條件下,使得車輛訪問一定數(shù)量目標(biāo)點(diǎn),且在此過程中每個(gè)目標(biāo)點(diǎn)只能被訪問一次,最終使得uav航行的總距離或總時(shí)間最短的模型。在實(shí)現(xiàn)本發(fā)明實(shí)施例的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有的技術(shù)方案在實(shí)際操作中,一般是假設(shè)模型中在恒定時(shí)間內(nèi)無人機(jī)的速度是恒定的。然而這個(gè)假設(shè)顯然是不現(xiàn)實(shí)的,導(dǎo)致模型無法精確模擬出無人機(jī)的實(shí)際運(yùn)動(dòng)狀態(tài),進(jìn)而無法進(jìn)行最優(yōu)的航跡規(guī)劃。技術(shù)實(shí)現(xiàn)要素:本發(fā)明實(shí)施例的一個(gè)目的是解決現(xiàn)有技術(shù)由于在進(jìn)行航跡規(guī)劃是設(shè)定無人機(jī)的速度是恒定的,導(dǎo)致模型無法精確模擬出無人機(jī)的實(shí)際運(yùn)動(dòng)狀態(tài),進(jìn)而無法給出的最優(yōu)的航跡規(guī)劃。本發(fā)明實(shí)施例提出了一種多無人機(jī)任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化方法,包括:s1、獲取多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度以及各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù);s2、根據(jù)多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度和預(yù)設(shè)遺傳算法,構(gòu)建初始種群,所述初始種群中的每個(gè)染色體均包括與無人機(jī)數(shù)量相同的dubins飛行路徑且各條dubins飛行路徑均由不同無人機(jī)完成;s3、根據(jù)所述初始種群、各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)確定各無人機(jī)的飛行狀態(tài)和各無人機(jī)完成對(duì)應(yīng)dubins飛行路徑的航跡段的航行時(shí)間,根據(jù)所述航跡段的航行時(shí)間和muav-vs-dvrp模型獲取初始種群中每個(gè)染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間;s4、基于遺傳算法,對(duì)初始種群中染色體進(jìn)行交叉、變異處理,并在達(dá)到預(yù)定迭代次數(shù)后,選取所有無人機(jī)完成任務(wù)時(shí)間最短的染色體對(duì)應(yīng)的dubins飛行路徑作為所述無人機(jī)聯(lián)合優(yōu)化的任務(wù)分配與航跡規(guī)劃方案??蛇x的,根據(jù)多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度和預(yù)設(shè)遺傳算法,構(gòu)建初始種群包括:根據(jù)預(yù)設(shè)遺傳算法的編碼方式進(jìn)行染色體編碼生成預(yù)定規(guī)模的初始種群;所述染色體由目標(biāo)點(diǎn)信息、無人機(jī)地速航向角信息和無人機(jī)信息組成;其中所述目標(biāo)點(diǎn)屬于集合t0表示uavs的起點(diǎn),無人機(jī)地速航向角屬于集合ng表示無人機(jī)地速航向角離散度,無人機(jī)屬于集合nu表示無人機(jī)數(shù)量;其中,所述染色體第一行為所述目標(biāo)點(diǎn)的隨機(jī)全排列,第二行為根據(jù)無人機(jī)航向角離散度為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的地速航向角,第三行為根據(jù)無人機(jī)集合為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的無人機(jī),且需保證無人機(jī)集合中的無人機(jī)全部至少被選擇一次??蛇x的,根據(jù)所述初始種群、各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)確定各無人機(jī)的飛行狀態(tài)和各無人機(jī)完成對(duì)應(yīng)dubins飛行路徑的航跡段的航行時(shí)間,根據(jù)所述航跡段的航行時(shí)間和muav-vs-dvrp模型獲取初始種群中每個(gè)染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間:對(duì)每個(gè)染色體對(duì)應(yīng)的dubins飛行路徑根據(jù)其目標(biāo)點(diǎn)被訪問順序?qū)⑺鲲w行路徑分為多個(gè)航跡段;根據(jù)每個(gè)航跡段對(duì)應(yīng)的起始點(diǎn)的坐標(biāo)和航向角以及終止點(diǎn)的坐標(biāo)和航向角,結(jié)合風(fēng)場(chǎng)參數(shù)確定無人機(jī)飛行狀態(tài),進(jìn)而獲取所述無人機(jī)完成所述航跡段的航行時(shí)間;根據(jù)每個(gè)航跡段對(duì)應(yīng)的航行時(shí)間獲取所述染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間??蛇x的,根據(jù)每個(gè)航跡段對(duì)應(yīng)的起始點(diǎn)的坐標(biāo)和航向角以及終止點(diǎn)的坐標(biāo)和航向角,結(jié)合風(fēng)場(chǎng)參數(shù)確定無人機(jī)飛行狀態(tài),進(jìn)而獲取所述無人機(jī)完成所述航跡段的航行時(shí)間包括:采用以下公式計(jì)算獲取無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk航跡段的航行時(shí)間:其中,ui表示執(zhí)行上述任務(wù)的無人機(jī),u表示無人機(jī)集合,tj為起始點(diǎn),βgj為無人機(jī)在起始點(diǎn)的航向角,tk為終止點(diǎn),βgk為無人機(jī)在終止點(diǎn)的航向角,t表示目標(biāo)點(diǎn)的集合,rmin為無人機(jī)最小轉(zhuǎn)彎半徑,vgi為無人機(jī)ui的地速;采用以下公式計(jì)算獲取無人機(jī)的地速:其中,表示空速大小,βai表示空速航向角,vgi表示地速的大小,βgi表示地速航向角,表示風(fēng)速大小,表示風(fēng)向??蛇x的,根據(jù)所述航跡段的航行時(shí)間和muav-vs-dvrp模型獲取初始種群中每個(gè)染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間包括:根據(jù)muav-vs-dvrp模型獲取航行時(shí)間:其約束條件為:其中,βgj、βgk分別表示在tj、tk兩目標(biāo)點(diǎn)的航向角;表示無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk的航行時(shí)間;是一個(gè)二元決策變量,若以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk時(shí),否則nt表示目標(biāo)點(diǎn)的數(shù)量,ng表示無人機(jī)地速航向角離散度。可選的,基于遺傳算法,對(duì)初始種群中染色體進(jìn)行交叉、變異處理,并在達(dá)到預(yù)定迭代次數(shù)后,選取所有無人機(jī)完成任務(wù)時(shí)間最短的染色體對(duì)應(yīng)的dubins飛行路徑作為所述無人機(jī)聯(lián)合優(yōu)化的任務(wù)分配與航跡規(guī)劃方案包括:步驟1、使用所述編碼方法生成初始解,并生成預(yù)定規(guī)模的初始種群并根據(jù)種群中每個(gè)染色體完成任務(wù)時(shí)間計(jì)算其適應(yīng)度;步驟2、使用輪盤賭方法選擇父代種群中的兩個(gè)個(gè)體(a,b)進(jìn)行交叉,交叉規(guī)則為先隨機(jī)選擇個(gè)體a中交叉位置,然后查找個(gè)體b中與個(gè)體a交叉位置第一行相同的基因,將染色體a和b中交叉位置基因進(jìn)行替換得到新的染色體c和d,判斷染色體c和d是否滿足muav-vs-dvrp模型的約束條件,若滿足則利用染色體c和d替換種群中染色體a和b,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體a和b中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是,則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中染色體a和b,然后不斷迭代更新步驟1種群,得到新的子代種群;步驟3、使用輪盤賭方法選擇步驟2種群中一條染色體進(jìn)行變異,對(duì)所述染色體進(jìn)行變異的方式為下述變異方式中的至少一種,包括:對(duì)染色體第一行進(jìn)行目標(biāo)點(diǎn)變異;對(duì)染色體第二行進(jìn)行無人機(jī)地速航向角變異;對(duì)染色體第三行進(jìn)行無人機(jī)變異;整個(gè)染色體變異的步驟包括:首先,若染色體的第一行順序變異,則隨機(jī)選取當(dāng)前染色體的兩個(gè)基因位并交換對(duì)應(yīng)基因位的目標(biāo)點(diǎn)編碼;再選擇第二行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)地速航向角編碼的值替換原值;最后判斷第三行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)編碼的值替換原值,并且在變異后判斷染色體是否滿足muav-vs-dvrp模型的約束條件,若滿足則替換種群中染色體,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中的染色體并不斷迭代更新步驟2種群,得到新的子代種群;步驟4、計(jì)算子代種群適應(yīng)度并選取本次迭代中所有解中的最優(yōu)解;步驟5、判斷當(dāng)前的迭代次數(shù)是否達(dá)到預(yù)設(shè)值,若判斷否,則對(duì)步驟3中的子代種群和父代種群按照一定比例組合形成新的父代種群返回步驟2;若判斷為是,則結(jié)束迭代,將最終獲得的最優(yōu)解作為無人機(jī)的任務(wù)分配與航跡規(guī)劃結(jié)果。本發(fā)明實(shí)施例提供了一種多無人機(jī)任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化裝置,包括:獲取模塊,用于獲取多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度以及各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù);第一處理模塊,用于根據(jù)多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度和預(yù)設(shè)遺傳算法,構(gòu)建初始種群,所述初始種群中的每個(gè)染色體均包括與無人機(jī)數(shù)量相同的dubins飛行路徑且各條dubins飛行路徑均由不同無人機(jī)完成;第二處理模塊,用于根據(jù)所述初始種群、各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)確定各無人機(jī)的飛行狀態(tài)和各無人機(jī)完成對(duì)應(yīng)dubins飛行路徑的航跡段的航行時(shí)間,根據(jù)所述航跡段的航行時(shí)間和muav-vs-dvrp模型獲取初始種群中每個(gè)染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間;第三處理模塊,用于基于遺傳算法,對(duì)初始種群中染色體進(jìn)行交叉、變異處理,并在達(dá)到預(yù)定迭代次數(shù)后,選取所有無人機(jī)完成任務(wù)時(shí)間最短的染色體對(duì)應(yīng)的dubins飛行路徑作為所述無人機(jī)聯(lián)合優(yōu)化的任務(wù)分配與航跡規(guī)劃方案。可選的,所述第一處理模塊,用于根據(jù)預(yù)設(shè)遺傳算法的編碼方式進(jìn)行染色體編碼生成預(yù)定規(guī)模的初始種群;所述染色體由目標(biāo)點(diǎn)信息、無人機(jī)地速航向角信息和無人機(jī)信息組成;其中所述目標(biāo)點(diǎn)屬于集合t0表示uavs的起點(diǎn),無人機(jī)地速航向角屬于集合ng表示無人機(jī)地速航向角離散度,無人機(jī)屬于集合nu表示無人機(jī)數(shù)量;其中,所述染色體第一行為所述目標(biāo)點(diǎn)的隨機(jī)全排列,第二行為根據(jù)無人機(jī)航向角離散度為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的地速航向角,第三行為根據(jù)無人機(jī)集合為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的無人機(jī),且需保證無人機(jī)集合中的無人機(jī)全部至少被選擇一次??蛇x的,所述第二處理模塊,用于對(duì)每個(gè)染色體對(duì)應(yīng)的dubins飛行路徑根據(jù)其目標(biāo)點(diǎn)被訪問順序?qū)⑺鲲w行路徑分為多個(gè)航跡段;執(zhí)行第一步驟和第二步驟;所述第一步驟包括:采用以下公式計(jì)算獲取無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk航跡段的航行時(shí)間:其中,tj為起始點(diǎn),βgj為無人機(jī)在起始點(diǎn)的航向角,tk為終止點(diǎn),βgk為無人機(jī)在終止點(diǎn)的航向角,t表示目標(biāo)點(diǎn)的集合,rmin為無人機(jī)最小轉(zhuǎn)彎半徑,vg為無人機(jī)的地速;采用以下公式計(jì)算獲取無人機(jī)的地速:其中,表示空速大小,βai表示空速航向角,vgi表示地速的大小,βgi表示地速航向角,表示風(fēng)速大小,表示風(fēng)向;所述第二步驟包括:根據(jù)muav-vs-dvrp模型獲取航行時(shí)間:其約束條件為:其中,βgj、βgk分別表示在tj、tk兩目標(biāo)點(diǎn)的航向角;表示無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk的航行時(shí)間;是一個(gè)二元決策變量,若以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk時(shí),否則nt表示目標(biāo)點(diǎn)的數(shù)量,ng表示無人機(jī)地速航向角離散度??蛇x的,其特征在于,所述第三處理模塊,用于執(zhí)行以下步驟:步驟1、使用所述編碼方法生成初始解,并生成預(yù)定規(guī)模的初始種群并根據(jù)種群中每個(gè)染色體完成任務(wù)時(shí)間計(jì)算其適應(yīng)度;步驟2、使用輪盤賭方法選擇父代種群中的兩個(gè)個(gè)體(a,b)進(jìn)行交叉,交叉規(guī)則為先隨機(jī)選擇個(gè)體a中交叉位置,然后查找個(gè)體b中與個(gè)體a交叉位置第一行相同的基因,將染色體a和b中交叉位置基因進(jìn)行替換得到新的染色體c和d,判斷染色體c和d是否滿足muav-vs-dvrp模型的約束條件,若滿足則利用染色體c和d替換種群中染色體a和b,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體a和b中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是,則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中染色體a和b,然后不斷迭代更新步驟1種群,得到新的子代種群;步驟3、使用輪盤賭方法選擇步驟2種群中一條染色體進(jìn)行變異,對(duì)所述染色體進(jìn)行變異的方式為下述變異方式中的至少一種,包括:對(duì)染色體第一行進(jìn)行目標(biāo)點(diǎn)變異;對(duì)染色體第二行進(jìn)行無人機(jī)地速航向角變異;對(duì)染色體第三行進(jìn)行無人機(jī)變異;整個(gè)染色體變異的步驟包括:首先,若染色體的第一行順序變異,則隨機(jī)選取當(dāng)前染色體的兩個(gè)基因位并交換對(duì)應(yīng)基因位的目標(biāo)點(diǎn)編碼;再選擇第二行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)地速航向角編碼的值替換原值;最后判斷第三行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)編碼的值替換原值,并且在變異后判斷染色體是否滿足muav-vs-dvrp模型的約束條件,若滿足則替換種群中染色體,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中的染色體并不斷迭代更新步驟2種群,得到新的子代種群;步驟4、計(jì)算子代種群適應(yīng)度并選取本次迭代中所有解中的最優(yōu)解;步驟5、判斷當(dāng)前的迭代次數(shù)是否達(dá)到預(yù)設(shè)值,若判斷否,則對(duì)步驟3中的子代種群和父代種群按照一定比例組合形成新的父代種群返回步驟2;若判斷為是,則結(jié)束迭代,將最終獲得的最優(yōu)解作為無人機(jī)的任務(wù)分配與航跡規(guī)劃結(jié)果。由上述技術(shù)方案可知,本發(fā)明實(shí)施例提出的一種無人機(jī)任務(wù)分配與航跡規(guī)劃方法及裝置首先通過對(duì)風(fēng)場(chǎng)和無人機(jī)的運(yùn)動(dòng)參數(shù)進(jìn)行分析,獲取無人機(jī)在風(fēng)場(chǎng)中的實(shí)際飛行狀態(tài),然后基于實(shí)際飛行狀態(tài)進(jìn)行飛行路徑的規(guī)劃,與現(xiàn)有技術(shù)中設(shè)定無人機(jī)速度恒定的方案相比,能根據(jù)不確定環(huán)境中風(fēng)場(chǎng)的狀態(tài)精確計(jì)算無人機(jī)在所有可能飛行路徑上的航行時(shí)間,進(jìn)而選擇出最優(yōu)的飛行路徑。附圖說明通過參考附圖會(huì)更加清楚的理解本發(fā)明的特征和優(yōu)點(diǎn),附圖是示意性的而不應(yīng)理解為對(duì)本發(fā)明進(jìn)行任何限制,在附圖中:圖1示出了本發(fā)明一實(shí)施例提供的一種多無人機(jī)任務(wù)分配與航跡規(guī)劃的流程示意圖;圖2示出了本發(fā)明一實(shí)施例提供的計(jì)算dubins飛行路徑的航行時(shí)間的流程示意圖;圖3示出了本發(fā)明一實(shí)施例提供的遺傳算法的流程示意圖;圖4a-圖4c示出了本發(fā)明一實(shí)施例提供遺傳算法中的算子的示意圖;圖5示出了本發(fā)明一實(shí)施例提供的風(fēng)向示意圖;圖6示出了本發(fā)明一實(shí)施例提供的速度矢量關(guān)系示意圖;圖7示出了本發(fā)明一實(shí)施例提供的uav由a飛往c點(diǎn)受風(fēng)場(chǎng)影響的分析示意圖;圖8示出了本發(fā)明一實(shí)施例提供的對(duì)飛行路徑進(jìn)行分段的示意圖;圖9a-圖9d示出了本發(fā)明一實(shí)施例提供的uav在西風(fēng)、南風(fēng)東風(fēng)、北風(fēng)影響下的最短飛行路徑的示意圖;圖10示出了本發(fā)明一實(shí)施例提供的一種多無人機(jī)任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化裝置的結(jié)構(gòu)示意圖。具體實(shí)施方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖1示出了本發(fā)明一實(shí)施例提供的一種多無人機(jī)任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化方法的流程示意圖,參見圖1,該方法可由處理器實(shí)現(xiàn),具體包括如下步驟:110、獲取多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度以及各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù);需要說明的是,在進(jìn)行任務(wù)分配和航跡規(guī)劃之前,技術(shù)人員可設(shè)定或者根據(jù)實(shí)際情況測(cè)出無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息,然后將其輸入至處理器中;而地速航向角離散度可根據(jù)實(shí)際需要進(jìn)行配置。另外,無人機(jī)的運(yùn)動(dòng)參數(shù)可以是技術(shù)人員根據(jù)實(shí)際飛行需要設(shè)定的,風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)可以是技術(shù)人員測(cè)量得出或者是根據(jù)實(shí)際情況設(shè)定的。120、根據(jù)多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度和預(yù)設(shè)遺傳算法,構(gòu)建初始種群,所述初始種群中的每個(gè)染色體均包括與無人機(jī)數(shù)量相同的dubins飛行路徑且各條dubins飛行路徑均由不同無人機(jī)完成;不難理解的是,無人機(jī)在風(fēng)場(chǎng)中飛行時(shí),必然會(huì)受到風(fēng)場(chǎng)的影響,影響因素舉例為:風(fēng)場(chǎng)的風(fēng)向和風(fēng)速,因此,為了得到精確的無人機(jī)的實(shí)際飛行狀態(tài),本實(shí)施例基于無人機(jī)自身的運(yùn)動(dòng)參數(shù)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)計(jì)算獲取無人機(jī)的實(shí)際飛行狀態(tài),以為后續(xù)的航跡規(guī)劃提供精確的數(shù)據(jù)基礎(chǔ)。詳細(xì)地,所述無人機(jī)的運(yùn)動(dòng)參數(shù)包括:空速;所述風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)包括:風(fēng)速;進(jìn)而根據(jù)所述無人機(jī)的空速和所述風(fēng)場(chǎng)的風(fēng)速獲取所述無人機(jī)的地速。另外,不難理解的是,在沒有約束條件下,兩點(diǎn)之間的飛行路徑可能存在無限多個(gè)情況,因此,本發(fā)明實(shí)施例為了降低計(jì)算量,在盡可能不影響航跡規(guī)劃的前提下,通過預(yù)先設(shè)置約束條件的方式,例如:約束無人機(jī)飛行的航向角、飛行的高度等等;然后結(jié)合預(yù)設(shè)遺傳算法構(gòu)建染色體數(shù)量有限的初始種群。不難理解的是,構(gòu)建飛行路徑的方式有多種,此處使用的是dubinscarmodel(dubins車模型)。130、根據(jù)所述初始種群、各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)確定各無人機(jī)的飛行狀態(tài)和各無人機(jī)完成對(duì)應(yīng)dubins飛行路徑的航跡段的航行時(shí)間,根據(jù)所述航跡段的航行時(shí)間和muav-vs-dvrp模型獲取初始種群中每個(gè)染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間;140、基于遺傳算法,對(duì)初始種群中染色體進(jìn)行交叉、變異處理,并在達(dá)到預(yù)定迭代次數(shù)后,選取所有無人機(jī)完成任務(wù)時(shí)間最短的染色體對(duì)應(yīng)的dubins飛行路徑作為所述無人機(jī)聯(lián)合優(yōu)化的任務(wù)分配與航跡規(guī)劃方案。不難理解的是,每次交叉、變異的迭代可能都有新的個(gè)體的出現(xiàn),然后基于步驟130對(duì)新的染色體進(jìn)行的航行時(shí)間的計(jì)算,因此,每個(gè)染色體對(duì)應(yīng)一個(gè)航行時(shí)間。可見,本實(shí)施例首先通過對(duì)風(fēng)場(chǎng)和無人機(jī)的運(yùn)動(dòng)參數(shù)進(jìn)行分析,獲取無人機(jī)在風(fēng)場(chǎng)中的實(shí)際飛行狀態(tài),然后基于實(shí)際飛行狀態(tài)進(jìn)行飛行路徑的規(guī)劃,與現(xiàn)有技術(shù)相比,本實(shí)施例將無人機(jī)航跡規(guī)劃問題與無人機(jī)實(shí)際飛行環(huán)境相結(jié)合,使規(guī)劃得到的最優(yōu)飛行路徑方案優(yōu)于無人機(jī)速度恒定的方案,進(jìn)而達(dá)到能精確計(jì)算無人機(jī)在所有可能飛行路徑上的航行時(shí)間,進(jìn)而選擇出最優(yōu)的飛行路徑。下面對(duì)本發(fā)明實(shí)施例中的各步驟進(jìn)行詳細(xì)說明:首先,對(duì)步驟120進(jìn)行詳細(xì)說明:根據(jù)預(yù)設(shè)遺傳算法的編碼方式進(jìn)行染色體編碼生成預(yù)定規(guī)模的初始種群;所述染色體由目標(biāo)點(diǎn)信息、無人機(jī)地速航向角信息和無人機(jī)信息組成;其中所述目標(biāo)點(diǎn)屬于集合t0表示uavs的起點(diǎn),無人機(jī)地速航向角屬于集合ng表示無人機(jī)地速航向角離散度,無人機(jī)屬于集合nu表示無人機(jī)數(shù)量;其中,所述染色體第一行為所述目標(biāo)點(diǎn)的隨機(jī)全排列,第二行為根據(jù)無人機(jī)航向角離散度為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的地速航向角,第三行為根據(jù)無人機(jī)集合為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的無人機(jī),且需保證無人機(jī)集合中的無人機(jī)全部至少被選擇一次;需要說明的是,無人機(jī)的航向角為360°,而為了減少處理器需要處理的數(shù)據(jù)量,提高航跡規(guī)劃的效率,此處的航向角離散度可以為無人機(jī)到達(dá)個(gè)目標(biāo)點(diǎn)的航向角必須為10的倍數(shù),例如:10度、20度...360度等。然后,參見圖2,下面對(duì)步驟130進(jìn)行詳細(xì)說明:210、對(duì)每個(gè)染色體對(duì)應(yīng)的dubins飛行路徑根據(jù)其目標(biāo)點(diǎn)被訪問順序?qū)⑺鲲w行路徑分為多個(gè)航跡段;220、根據(jù)每個(gè)航跡段對(duì)應(yīng)的起始點(diǎn)的坐標(biāo)和航向角以及終止點(diǎn)的坐標(biāo)和航向角,結(jié)合風(fēng)場(chǎng)參數(shù)確定無人機(jī)飛行狀態(tài),進(jìn)而獲取所述無人機(jī)完成所述航跡段的航行時(shí)間;230、根據(jù)每個(gè)航跡段對(duì)應(yīng)的航行時(shí)間獲取所述染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間。需要說明的是,在構(gòu)建完成一個(gè)染色體對(duì)應(yīng)的所有的dubins飛行路徑后,處理器根據(jù)角度變化將一個(gè)dubins飛行路徑分為若干段,然后根據(jù)每一段飛行路徑兩端的起始點(diǎn)和終止點(diǎn)的坐標(biāo)以及無人機(jī)到達(dá)起始點(diǎn)和終止點(diǎn)的航向角,結(jié)合預(yù)建立的計(jì)算模型,計(jì)算獲取每一段飛行路徑的航行時(shí)間,進(jìn)而獲取這一dubins飛行路徑的航行時(shí)間,同理,可計(jì)算獲取每個(gè)染色體對(duì)應(yīng)的所有dubins飛行路徑的航行時(shí)間。其中,步驟220包括:采用以下公式計(jì)算獲取無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk航跡段的航行時(shí)間:其中,ui表示執(zhí)行上述任務(wù)的無人機(jī),u表示無人機(jī)集合,tj為起始點(diǎn),βgj為無人機(jī)在起始點(diǎn)的航向角,tk為終止點(diǎn),βgk為無人機(jī)在終止點(diǎn)的航向角,t表示目標(biāo)點(diǎn)的集合,rmin為無人機(jī)最小轉(zhuǎn)彎半徑,vgi為無人機(jī)ui的地速;采用以下公式計(jì)算獲取無人機(jī)的地速:其中,表示空速大小,βai表示空速航向角,vgi表示地速的大小,βgi表示地速航向角,表示風(fēng)速大小,表示風(fēng)向。根據(jù)muav-vs-dvrp模型獲取無人機(jī)完成任務(wù)時(shí)間:其約束條件為:其中,βgj、βgk分別表示在tj、tk兩目標(biāo)點(diǎn)的航向角;表示無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk的航行時(shí)間;是一個(gè)二元決策變量,若以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk時(shí),否則nt表示目標(biāo)點(diǎn)的數(shù)量,ng表示無人機(jī)地速航向角離散度。下面對(duì)步驟140進(jìn)行詳細(xì)說明:步驟1、使用所述編碼方法生成初始解,并生成預(yù)定規(guī)模的初始種群并根據(jù)種群中每個(gè)染色體完成任務(wù)時(shí)間計(jì)算其適應(yīng)度;步驟2、使用輪盤賭方法選擇父代種群中的兩個(gè)個(gè)體(a,b)進(jìn)行交叉,交叉規(guī)則為先隨機(jī)選擇個(gè)體a中交叉位置,然后查找個(gè)體b中與個(gè)體a交叉位置第一行相同的基因,將染色體a和b中交叉位置基因進(jìn)行替換得到新的染色體c和d,判斷染色體c和d是否滿足muav-vs-dvrp模型的約束條件,若滿足則利用染色體c和d替換種群中染色體a和b,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體a和b中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是,則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中染色體a和b,然后不斷迭代更新步驟1種群,得到新的子代種群;步驟3、使用輪盤賭方法選擇步驟2種群中一條染色體進(jìn)行變異,對(duì)所述染色體進(jìn)行變異的方式為下述變異方式中的至少一種,包括:對(duì)染色體第一行進(jìn)行目標(biāo)點(diǎn)變異;對(duì)染色體第二行進(jìn)行無人機(jī)地速航向角變異;對(duì)染色體第三行進(jìn)行無人機(jī)變異;整個(gè)染色體變異的步驟包括:首先,若染色體的第一行順序變異,則隨機(jī)選取當(dāng)前染色體的兩個(gè)基因位并交換對(duì)應(yīng)基因位的目標(biāo)點(diǎn)編碼;再選擇第二行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)地速航向角編碼的值替換原值;最后判斷第三行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)編碼的值替換原值,并且在變異后判斷染色體是否滿足muav-vs-dvrp模型的約束條件,若滿足則替換種群中染色體,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中的染色體并不斷迭代更新步驟2種群,得到新的子代種群;步驟4、計(jì)算子代種群適應(yīng)度并選取本次迭代中所有解中的最優(yōu)解;步驟5、判斷當(dāng)前的迭代次數(shù)是否達(dá)到預(yù)設(shè)值,若判斷否,則對(duì)步驟3中的子代種群和父代種群按照一定比例組合形成新的父代種群返回步驟2;若判斷為是,則結(jié)束迭代,將最終獲得的最優(yōu)解作為無人機(jī)的任務(wù)分配與航跡規(guī)劃結(jié)果。下面參見圖3對(duì)本發(fā)明的采用的遺傳算法的原理進(jìn)行詳細(xì)說明:1、開啟;2、基于技術(shù)人員的設(shè)定,生成包括指定數(shù)量染色體的種群,指定數(shù)量可具體為100個(gè);其中,每個(gè)染色體與圖1對(duì)應(yīng)實(shí)施例中的步驟130中的各個(gè)無人機(jī)dubins飛行路徑一一對(duì)應(yīng)。需要說明的是,染色體編碼代表了問題的一種可行的解決方案。在muav-vs-dvrp問題中一個(gè)可行的解決方案是由uav訪問目標(biāo)點(diǎn)的順序、訪問目標(biāo)點(diǎn)的uav航向角和無人機(jī)編碼三部分組成。同樣的,染色體的編碼也由三部分組成,分別為:目標(biāo)點(diǎn)編號(hào)、航向角編號(hào)和無人機(jī)編碼。其中,目標(biāo)點(diǎn)編號(hào)屬于集合航向角編號(hào)屬于集合無人機(jī)編碼屬于集合nu表示無人機(jī)數(shù)量。如圖4a所示,染色體a表示在穩(wěn)定風(fēng)場(chǎng)下兩架uav訪問三個(gè)目標(biāo)點(diǎn)的一種可行方案,即一號(hào)uav從起始點(diǎn)s(0,0)出發(fā),訪問目標(biāo)點(diǎn)3后返回,二號(hào)uav從起始點(diǎn)s(0,0)出發(fā),訪問目標(biāo)點(diǎn)1后,再訪問目標(biāo)點(diǎn)2,最終返回。編碼中第二行代表uav訪問對(duì)應(yīng)目標(biāo)點(diǎn)時(shí)的航向角編碼,即i,可根據(jù)其編碼解碼得到對(duì)應(yīng)的航向角βg。3、計(jì)算每個(gè)染色體的適應(yīng)度;需要說明的是,采用圖1對(duì)應(yīng)實(shí)施例中的步驟140的計(jì)算方法,計(jì)算染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間,并基于任務(wù)完成時(shí)間計(jì)算染色體的適應(yīng)度,例如:完成任務(wù)時(shí)間與適應(yīng)度成反比關(guān)系。不難理解的是,按照上述步驟2中的編碼方式生成規(guī)定數(shù)量的種群后進(jìn)行適應(yīng)度的計(jì)算,本文發(fā)明中適應(yīng)度的計(jì)算以目標(biāo)函數(shù)為依據(jù),其計(jì)算過程如下:4、選擇操作根據(jù)j’通過輪盤賭的方法進(jìn)行選擇操作。5、交叉操作通過對(duì)父代染色體進(jìn)行交叉,可以繼承父代中比較優(yōu)良的基因,獲得更優(yōu)的子代。針對(duì)muav-vs-dvrp問題本文針對(duì)當(dāng)前的編碼方式設(shè)計(jì)了一種新的部分映射交叉方法,即隨機(jī)產(chǎn)生父代染色體a交叉的基因位,在父代染色體b中找到同一目標(biāo)點(diǎn)對(duì)應(yīng)的基因位,交叉產(chǎn)生中間子染色體a、b,并對(duì)中間子染色體的uav編碼進(jìn)行沖突校驗(yàn),即在兩架uav執(zhí)行任務(wù)的情形下,若任意一個(gè)中間子染色體的uav編碼只存在一個(gè)值,則將該染色體此前交叉操作基因位對(duì)應(yīng)的uav編碼與當(dāng)前染色體隨機(jī)位置的uav編碼進(jìn)行調(diào)換,最終得到兩個(gè)可行的子染色體。參見圖4b,有父代parenta和parentb,在parenta上隨機(jī)產(chǎn)生進(jìn)行交叉的基因位為3,找到parentb上對(duì)應(yīng)相同目標(biāo)點(diǎn)的基因位,經(jīng)過交叉后產(chǎn)生中間子染色體proto-childa和proto-childb。此時(shí),proto-childb中uav編碼均為2,即當(dāng)前的目標(biāo)點(diǎn)均由二號(hào)uav訪問,這不滿足多uav訪問目標(biāo)點(diǎn)的要求。在這種狀況下,隨機(jī)產(chǎn)生uav編碼交叉的位置為2,并將該染色體此前交叉操作基因位對(duì)應(yīng)的uav編碼與當(dāng)前染色體位置的uav編碼進(jìn)行調(diào)換,得到可行的子染色體offspringa和offspringb。6、變異操作變異是為了防止遺傳算法陷入局部最優(yōu)。針對(duì)求解dvs-vrp模型的遺傳算法,染色體變異存在三種情況:目標(biāo)點(diǎn)編碼變異、航向角編碼變異和uav編碼變異。根據(jù)變異概率,染色體中可發(fā)生多次變異也可不發(fā)生變異。其中,目標(biāo)點(diǎn)編碼變異采用雙基因位變異,即在染色體的第一行隨機(jī)產(chǎn)生兩個(gè)進(jìn)行變異的基因位,并將兩個(gè)基因位上的值互換,該方法滿足了模型中每個(gè)目標(biāo)點(diǎn)只被訪問一次的約束,保證了子染色體的可行性。航向角編碼和uav編碼的變異均采用均勻變異,需要注意的是uav編碼的變異存在產(chǎn)生不可行染色體的可能,因而在uav編碼變異后需要進(jìn)行變異算子校驗(yàn)。如圖4c所示,有父代parenta,在parenta上分別進(jìn)行目標(biāo)點(diǎn)變異、航向角變異和無人機(jī)變異,在進(jìn)行變異前首先判斷兩種變異是否發(fā)生,在判斷得到目標(biāo)點(diǎn)變異發(fā)生時(shí),隨機(jī)選取進(jìn)行變異的基因位,本例中選取的基因位是1和3,隨后將被選取的基因位上的目標(biāo)值進(jìn)行交換,得到新的目標(biāo)點(diǎn)訪問順序;在判斷得到航向角變異發(fā)生時(shí),隨機(jī)選取進(jìn)行變異的基因位,本例中選取的基因位是2,隨機(jī)生成與當(dāng)前航向角不同的航向角替換當(dāng)前值,得到新的無人機(jī)訪問對(duì)應(yīng)目標(biāo)點(diǎn)的航向角狀態(tài);在判斷得到無人機(jī)變異發(fā)生時(shí),隨機(jī)選取進(jìn)行變異的基因位,本例中選取的基因位是2,隨機(jī)生成與當(dāng)前無人機(jī)不同的無人機(jī)替換當(dāng)前值,得到新的染色體。然而當(dāng)無人機(jī)變異選擇的基因位是1時(shí),變異得到的染色體的無人機(jī)編碼均為1,不滿足約束條件要求,因而在在得到的染色體中隨機(jī)選取基因位,將被選取基因位上的無人機(jī)編碼變異為當(dāng)前染色體中的缺失值,得到滿足約束條件的染色體。7、更新操作8、選取最優(yōu)分配方案9、判斷是否終止10、獲得最優(yōu)分配方案11、結(jié)束需要說明的是,上述步驟與圖1對(duì)應(yīng)實(shí)施例中的部分步驟相對(duì)應(yīng),故,相似之處此處不再贅述,具體請(qǐng)查看圖1對(duì)應(yīng)的實(shí)施例中的相關(guān)內(nèi)容。下面結(jié)合上述的遺傳算法對(duì)本發(fā)明的設(shè)計(jì)原理進(jìn)行詳細(xì)說明:步驟一,為避免問題過于復(fù)雜,本發(fā)明采用區(qū)域固定風(fēng)場(chǎng)進(jìn)行風(fēng)場(chǎng)建模,即在規(guī)定區(qū)域內(nèi),其風(fēng)場(chǎng)的風(fēng)速和風(fēng)向是不變的。已知區(qū)域的風(fēng)場(chǎng)狀態(tài)可表示為:其中,vw表示風(fēng)場(chǎng)中的風(fēng)速,βw表示風(fēng)向。風(fēng)速vw是指風(fēng)相對(duì)于地面單位時(shí)間內(nèi)移動(dòng)的距離,單位為m/s;風(fēng)向βw是指風(fēng)吹來的方向,風(fēng)向的測(cè)量單位一般用方位來表示,如陸地上,一般用16個(gè)方位表示,海上多用36個(gè)方位表示,而在高空則用角度表示,即把圓周分成360度,本文規(guī)定西風(fēng)(w)是0度(即360度),南風(fēng)(s)是90度,東風(fēng)(e)是180度,北風(fēng)(n)是270度,如圖5所示。步驟二,配置uav以u(píng)表示uav,固定翼uav在空中的配置定義為:q=(x,y,ψ)(4)其中,其中,和表示的是一架uav在笛卡爾慣性參考系中的坐標(biāo);vg表示uav的地速;是指uav的角速度;|c|≤1,表示uav的轉(zhuǎn)角指令;ωmax是uav的最大旋轉(zhuǎn)角速度。需要注意的是,其中,rmin表示uav最小轉(zhuǎn)彎半徑,vg為固定翼uav的地速,因而在風(fēng)影響下的多uav任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化問題中,uav的最大旋轉(zhuǎn)角速度需滿足以下條件:其中,rmin的值固定不變。為使問題簡(jiǎn)化,本文提出以下關(guān)于uav在執(zhí)行任務(wù)過程中需滿足的運(yùn)動(dòng)約束的假設(shè):(1)uav最小轉(zhuǎn)彎半徑不變?yōu)閞min;(2)uav在固定的高度飛行;(3)根據(jù)uav的飛行包線,uav在指定高度固定載荷下的飛行速度存在上下界[21],即va_min和va_max分別表示在某高度下uav空速的最小值和最大值;(4)uav由出發(fā)點(diǎn)出發(fā)并在執(zhí)行完成任務(wù)后返回出發(fā)點(diǎn)。步驟三,計(jì)算uav的實(shí)際飛行狀態(tài)考慮風(fēng)影響的uav實(shí)際速度定義為uav的地速大小為vg,此時(shí)uav的航向角為βg,uav地速矢量將不考慮風(fēng)影響的uav理論速度定義為uav的空速大小為va,此時(shí)uav的航向角為βa,uav空速矢量uav空速地速與風(fēng)場(chǎng)中風(fēng)速的矢量關(guān)系如圖6所示。上述速度與角度關(guān)系為:在無風(fēng)時(shí),即uav空速與地速相等。可通過對(duì)uav航向角的離散化降低問題的復(fù)雜性,即uav航向角可表示為其中nψ表示航向角的離散度。由于uav以其地速為依據(jù)進(jìn)行航跡規(guī)劃,因而本文提出改變uav空速航向角βa使uav地速航向角βg滿足上述航向角集合的要求,即在nψ=36時(shí),可將實(shí)驗(yàn)誤差控制在可接受的范圍內(nèi)。下面結(jié)合圖7進(jìn)行實(shí)例說明:uav由a(50,300)飛往c(150,350),該uav所處的環(huán)境是風(fēng)速為5m/s、風(fēng)向?yàn)槟巷L(fēng)(vw=5m/s,βw=90°),uav在位置點(diǎn)x(85,324)時(shí),根據(jù)式(9)和(11)可得到其空速和地速如表4-1所示。表4-1固定翼uav在x(85,324)點(diǎn),無風(fēng)與南風(fēng)環(huán)境下空速、地速對(duì)比表空速地速南風(fēng)環(huán)境36km/h,0°40.8km/h,28°無風(fēng)環(huán)境36km/h,28°36km/h,28°步驟四,目標(biāo)點(diǎn)配置nt個(gè)目標(biāo)點(diǎn)的集合可表示為:其中,集合中所有的目標(biāo)點(diǎn)的位置和任務(wù)量均已知,t0表示無人機(jī)起始點(diǎn)。在本發(fā)明中,每一個(gè)目標(biāo)點(diǎn)上都可能有不同類型的任務(wù)需要被uav執(zhí)行,且在此過程中每架uav只能執(zhí)行一個(gè)目標(biāo)點(diǎn)上的一個(gè)任務(wù),即每個(gè)目標(biāo)點(diǎn)都要被不同的uav訪問,每架uav只能訪問某個(gè)目標(biāo)點(diǎn)一次。步驟五,計(jì)算航行時(shí)間在以飛行時(shí)間作為目標(biāo)函數(shù)的uav任務(wù)分配與航跡規(guī)劃問題中,uav的任務(wù)分配方案決定uav訪問目標(biāo)點(diǎn)的順序,根據(jù)uav目標(biāo)點(diǎn)訪問順序進(jìn)行航跡規(guī)劃,由航跡規(guī)劃的結(jié)果計(jì)算uav飛行時(shí)間進(jìn)而由uav飛行時(shí)間決定當(dāng)前uav任務(wù)分配與航跡規(guī)劃方案是否優(yōu)于已知方案??紤]到uav地速為變量的情況,本發(fā)明采用積分的方式計(jì)算uav的飛行時(shí)間。以表示以航向角βψj由tj出發(fā)并以航向角βψk飛至tk的時(shí)間,其計(jì)算公式為:上式中表示,將uav由tj到tk的路徑根據(jù)角度變化分為若干段,如圖8所示,并將每一段起點(diǎn)的地速vg作為本段的飛行速度,從而得到uav在兩點(diǎn)間的航行時(shí)間根據(jù)固定翼uav的空間配置可將其定義為dubinscarmodel。根據(jù)dubins路徑的產(chǎn)生原理,兩點(diǎn)間最短dubins路徑可以由弧段路徑和直線段路徑組合生成,存在以下六種情況:d={lsl,rsr,rsl,lsr,rlr,lrl}其中,l表示uav以半徑rmin向左轉(zhuǎn)彎的一段弧,r表示uav向以半徑rmin右轉(zhuǎn)彎的一段弧,s表示uav以直線方式飛行。從而,可根據(jù)公式(14)計(jì)算uav在任意目標(biāo)點(diǎn)間dubins路徑的航行時(shí)間。其中,表示在tj、tk兩點(diǎn)航向角分別為βψj、βψk的航行時(shí)間,由(13)計(jì)算得到,其約束符合(8);是決策變量,若以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk時(shí),否則j中j、k值取0表示uav由起始點(diǎn)出發(fā)或路徑末端指向起始點(diǎn)。模型的約束條件包括等,具體如下:(1)目標(biāo)點(diǎn)的訪問約束:所有目標(biāo)點(diǎn)有且僅有一次被訪問。(2)uav的路徑約束:每架uav均從起點(diǎn)出發(fā),在訪問若干個(gè)目標(biāo)點(diǎn)后,再返回起點(diǎn)。可見,基于上式可得到每個(gè)飛行路徑的航行時(shí)間,進(jìn)而從中選取出航行時(shí)間最短的飛行路徑。下面對(duì)本發(fā)明進(jìn)行具體實(shí)例的詳細(xì)說明:首先,所有的仿真實(shí)驗(yàn)均是在4g內(nèi)存、3.4ghzcpu的硬件上、在matlabr2014a的環(huán)境中運(yùn)行的。具體說明如下:uav模型基于小型固定翼uav的數(shù)學(xué)模型,其空速為10米/秒,最小轉(zhuǎn)彎半徑為200米,航向角離散度為36,固定翼uav均從出發(fā)點(diǎn)s(0,0)處以航向角90°起飛,在完成訪問任務(wù)后以航向角90°返回點(diǎn)s(0,0);風(fēng)場(chǎng)環(huán)境是固定風(fēng)場(chǎng),即在一次實(shí)驗(yàn)過程中風(fēng)速和風(fēng)向都是不變的,并且為了保證uav能夠安全飛行,風(fēng)速大小不超過9米/秒,風(fēng)向取西、南、東和北,即0°、90°、180°和270°四個(gè)方向,uav需要訪問的三個(gè)目標(biāo)點(diǎn)坐標(biāo)分別為:a(50,300)、b(100,150)和c(150,350)。根據(jù)上述本發(fā)明提出的模型和算法,本文分別在風(fēng)、南風(fēng)、東風(fēng)和北風(fēng),風(fēng)速為5m/s的風(fēng)場(chǎng)環(huán)境和試驗(yàn)場(chǎng)景下進(jìn)行實(shí)驗(yàn),并得到各風(fēng)場(chǎng)環(huán)境下兩架無人機(jī)完成任務(wù)時(shí)間最短的任務(wù)分配與航跡規(guī)劃方案如表3-1所示(依次參見圖9a-圖9d)。3-1對(duì)于方法實(shí)施方式,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明實(shí)施方式并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本發(fā)明實(shí)施方式,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施方式均屬于優(yōu)選實(shí)施方式,所涉及的動(dòng)作并不一定是本發(fā)明實(shí)施方式所必須的。圖10示出了本發(fā)明一實(shí)施例提供的一種多無人機(jī)任務(wù)分配與航跡規(guī)劃聯(lián)合優(yōu)化的結(jié)構(gòu)示意圖,參見圖10,該裝置包括:獲取模塊101、第一處理模塊102、第二處理模塊103以及第三處理模塊104,其中:獲取模塊101,用于獲取多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度以及各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù);第一處理模塊102,用于根據(jù)多個(gè)無人機(jī)和多個(gè)目標(biāo)點(diǎn)的位置信息、無人機(jī)地速航向角離散度和預(yù)設(shè)遺傳算法,構(gòu)建初始種群,所述初始種群中的每個(gè)染色體均包括與無人機(jī)數(shù)量相同的dubins飛行路徑且各條dubins飛行路徑均由不同無人機(jī)完成;第二處理模塊103,用于根據(jù)所述初始種群、各無人機(jī)和風(fēng)場(chǎng)的運(yùn)動(dòng)參數(shù)確定各無人機(jī)的飛行狀態(tài)和各無人機(jī)完成對(duì)應(yīng)dubins飛行路徑的航跡段的航行時(shí)間,根據(jù)所述航跡段的航行時(shí)間和muav-vs-dvrp模型獲取初始種群中每個(gè)染色體對(duì)應(yīng)的所有無人機(jī)完成任務(wù)時(shí)間;第三處理模塊104,用于基于遺傳算法,對(duì)初始種群中染色體進(jìn)行交叉、變異處理,并在達(dá)到預(yù)定迭代次數(shù)后,選取所有無人機(jī)完成任務(wù)時(shí)間最短的染色體對(duì)應(yīng)的dubins飛行路徑作為所述無人機(jī)聯(lián)合優(yōu)化的任務(wù)分配與航跡規(guī)劃方案。可見,本實(shí)施例首先通過對(duì)風(fēng)場(chǎng)和無人機(jī)的運(yùn)動(dòng)參數(shù)進(jìn)行分析,獲取無人機(jī)在風(fēng)場(chǎng)中的實(shí)際飛行狀態(tài),然后基于實(shí)際飛行狀態(tài)進(jìn)行飛行路徑的規(guī)劃,與現(xiàn)有技術(shù)相比,本實(shí)施例將無人機(jī)航跡規(guī)劃問題與無人機(jī)實(shí)際飛行環(huán)境相結(jié)合,使規(guī)劃得到的最優(yōu)飛行路徑方案優(yōu)于無人機(jī)速度恒定的方案,進(jìn)而達(dá)到能精確計(jì)算無人機(jī)在所有可能飛行路徑上的航行時(shí)間,進(jìn)而選擇出最優(yōu)的飛行路徑。下面對(duì)本裝置的各功能模塊進(jìn)行詳細(xì)說明:第一處理模塊102,用于根據(jù)預(yù)設(shè)遺傳算法的編碼方式進(jìn)行染色體編碼生成預(yù)定規(guī)模的初始種群;所述染色體由目標(biāo)點(diǎn)信息、無人機(jī)地速航向角信息和無人機(jī)信息組成;其中所述目標(biāo)點(diǎn)屬于集合t0表示uavs的起點(diǎn),無人機(jī)地速航向角屬于集合ng表示無人機(jī)地速航向角離散度,無人機(jī)屬于集合nu表示無人機(jī)數(shù)量;其中,所述染色體第一行為所述目標(biāo)點(diǎn)的隨機(jī)全排列,第二行為根據(jù)無人機(jī)航向角離散度為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的地速航向角,第三行為根據(jù)無人機(jī)集合為每個(gè)目標(biāo)點(diǎn)隨機(jī)選取對(duì)應(yīng)的無人機(jī),且需保證無人機(jī)集合中的無人機(jī)全部至少被選擇一次。第二處理模塊103,用于對(duì)每個(gè)染色體對(duì)應(yīng)的dubins飛行路徑根據(jù)其目標(biāo)點(diǎn)被訪問順序?qū)⑺鲲w行路徑分為多個(gè)航跡段;執(zhí)行第一步驟和第二步驟;所述第一步驟包括:采用以下公式計(jì)算獲取無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk航跡段的航行時(shí)間:其中,tj為起始點(diǎn),βgj為無人機(jī)在起始點(diǎn)的航向角,tk為終止點(diǎn),βgk為無人機(jī)在終止點(diǎn)的航向角,t表示目標(biāo)點(diǎn)的集合,rmin為無人機(jī)最小轉(zhuǎn)彎半徑,vg為無人機(jī)的地速;采用以下公式計(jì)算獲取無人機(jī)的地速:其中,表示空速大小,βai表示空速航向角,vgi表示地速的大小,βgi表示地速航向角,表示風(fēng)速大小,表示風(fēng)向;所述第二步驟包括:根據(jù)muav-vs-dvrp模型獲取完成任務(wù)時(shí)間:其約束條件為:其中,βgj、βgk分別表示在tj、tk兩目標(biāo)點(diǎn)的航向角;表示無人機(jī)ui以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk的航行時(shí)間;是一個(gè)二元決策變量,若以地速航向角βgj由目標(biāo)點(diǎn)tj出發(fā)并以地速航向角βgk飛至目標(biāo)點(diǎn)tk時(shí),否則nt表示目標(biāo)點(diǎn)的數(shù)量,ng表示無人機(jī)地速航向角離散度。第三處理模塊104,用于執(zhí)行以下步驟:步驟1、使用所述編碼方法生成初始解,并生成預(yù)定規(guī)模的初始種群并根據(jù)種群中每個(gè)染色體完成任務(wù)時(shí)間計(jì)算其適應(yīng)度;步驟2、使用輪盤賭方法選擇父代種群中的兩個(gè)個(gè)體(a,b)進(jìn)行交叉,交叉規(guī)則為先隨機(jī)選擇個(gè)體a中交叉位置,然后查找個(gè)體b中與個(gè)體a交叉位置第一行相同的基因,將染色體a和b中交叉位置基因進(jìn)行替換得到新的染色體c和d,判斷染色體c和d是否滿足muav-vs-dvrp模型的約束條件,若滿足則利用染色體c和d替換種群中染色體a和b,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體a和b中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是,則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中染色體a和b,然后不斷迭代更新步驟1種群,得到新的子代種群;步驟3、使用輪盤賭方法選擇步驟2種群中一條染色體進(jìn)行變異,對(duì)所述染色體進(jìn)行變異的方式為下述變異方式中的至少一種,包括:對(duì)染色體第一行進(jìn)行目標(biāo)點(diǎn)變異;對(duì)染色體第二行進(jìn)行無人機(jī)地速航向角變異;對(duì)染色體第三行進(jìn)行無人機(jī)變異;整個(gè)染色體變異的步驟包括:首先,若染色體的第一行順序變異,則隨機(jī)選取當(dāng)前染色體的兩個(gè)基因位并交換對(duì)應(yīng)基因位的目標(biāo)點(diǎn)編碼;再選擇第二行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)地速航向角編碼的值替換原值;最后判斷第三行是否變異及變異位置,若變異則隨機(jī)生成變異的有異于當(dāng)前位置無人機(jī)編碼的值替換原值,并且在變異后判斷染色體是否滿足muav-vs-dvrp模型的約束條件,若滿足則替換種群中染色體,否則對(duì)不滿足約束條件的染色體進(jìn)行約束校驗(yàn),即檢驗(yàn)染色體中無人機(jī)數(shù)量不滿足約束條件時(shí),針對(duì)不滿足條件的染色體,隨機(jī)選取一個(gè)基因位并判斷該基因位上的無人機(jī)編碼是否存在兩個(gè)及兩個(gè)以上,若是則將缺失的無人機(jī)編碼放入該基因位,否則重新選取基因位,生成滿足約束條件的染色體替換種群中的染色體并不斷迭代更新步驟2種群,得到新的子代種群;步驟4、計(jì)算子代種群適應(yīng)度并選取本次迭代中所有解中的最優(yōu)解;步驟5、判斷當(dāng)前的迭代次數(shù)是否達(dá)到預(yù)設(shè)值,若判斷否,則對(duì)步驟3中的子代種群和父代種群按照一定比例組合形成新的父代種群返回步驟2;若判斷為是,則結(jié)束迭代,將最終獲得的最優(yōu)解作為無人機(jī)的任務(wù)分配與航跡規(guī)劃結(jié)果。對(duì)于裝置實(shí)施方式而言,由于其與方法實(shí)施方式基本相似,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施方式的部分說明即可。應(yīng)當(dāng)注意的是,在本發(fā)明的裝置的各個(gè)部件中,根據(jù)其要實(shí)現(xiàn)的功能而對(duì)其中的部件進(jìn)行了邏輯劃分,但是,本發(fā)明不受限于此,可以根據(jù)需要對(duì)各個(gè)部件進(jìn)行重新劃分或者組合。本發(fā)明的各個(gè)部件實(shí)施方式可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本裝置中,pc通過實(shí)現(xiàn)因特網(wǎng)對(duì)設(shè)備或者裝置遠(yuǎn)程控制,精準(zhǔn)的控制設(shè)備或者裝置每個(gè)操作的步驟。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,并且程序產(chǎn)生的文件或文檔具有可統(tǒng)計(jì)性,產(chǎn)生數(shù)據(jù)報(bào)告和cpk報(bào)告等,能對(duì)功放進(jìn)行批量測(cè)試并統(tǒng)計(jì)。應(yīng)該注意的是上述實(shí)施方式對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施方式。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。最后應(yīng)說明的是:以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。當(dāng)前第1頁12