本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒把b置。
背景技術(shù):
在起飛巡航階段,所有無(wú)人機(jī)(uav)通常通過(guò)點(diǎn)對(duì)點(diǎn)的通信鏈接(communicationlinks)進(jìn)行信息交互,以形成一定的編隊(duì)隊(duì)形(formationshape或者formationgeometry),并保持此編隊(duì)隊(duì)形繼續(xù)朝目標(biāo)區(qū)域飛行。其中所使用的通信鏈接被稱為多uav協(xié)同編隊(duì)的通信拓?fù)?,同時(shí),將uav之間所有可用的通信鏈接的集合稱為多uav協(xié)同編隊(duì)的編隊(duì)通信圖(formationcommunicationgraph)。
由于通信拓?fù)渲腥魏蝺晌恢胾av之間的通信距離不同,導(dǎo)致通信拓?fù)渲胁煌瑄av之間通信鏈接具有不同的通信代價(jià)并會(huì)消耗uav相應(yīng)的電池電量或燃料。實(shí)際應(yīng)用中,兩個(gè)uav之間通信鏈接的通信代價(jià)受到很多因素影響,例如,任務(wù)要求、通信距離、飛行性能、安全性等。為簡(jiǎn)化說(shuō)明,上述通信代價(jià)直接采用通信距離來(lái)表示。
同時(shí),每架uav可用的電池電量或燃料又是有限的。因此,如何通過(guò)優(yōu)化多無(wú)人機(jī)協(xié)同編隊(duì)通信拓?fù)?,降低uav的電池的電量或燃料的消耗成為了亟需解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供了一種多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒把b置,用于三維持久編隊(duì)中僅有部分無(wú)人機(jī)能夠作為該編隊(duì)的領(lǐng)航者且所有無(wú)人機(jī)未發(fā)生故障時(shí)使得三維持久編隊(duì)在保持編隊(duì)隊(duì)形安全飛行的過(guò)程中該編隊(duì)通信代價(jià)最小。
第一方面,本發(fā)明實(shí)施例提供了一種多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒?,所述方法包括?/p>
根據(jù)無(wú)人機(jī)需要組成的三維持久編隊(duì)的編隊(duì)隊(duì)形獲取編隊(duì)通信圖及其對(duì)應(yīng)的賦權(quán)無(wú)向圖;
根據(jù)三維最優(yōu)剛性圖獲取方法計(jì)算所述賦權(quán)無(wú)向圖的三維最優(yōu)剛性圖;
根據(jù)所述三維最優(yōu)剛性圖和三維最優(yōu)持久圖獲取方法獲取三維最優(yōu)持久圖;
若存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0則所述三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,而該無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
可選地,所述方法還包括:
若不存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0,則判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為1;若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj與節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為2;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則尋找任意一個(gè)可作領(lǐng)航者的無(wú)人機(jī),該無(wú)人機(jī)在三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為3,然后在所述三維最優(yōu)持久圖中尋找一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vl,該節(jié)點(diǎn)vl到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
可選地,所述三維最優(yōu)持久圖獲取方法包括:
將所述三維最優(yōu)剛性圖轉(zhuǎn)換成第一有向圖;
在所述第一有向圖中增加虛擬領(lǐng)航者節(jié)點(diǎn)得到第二有向圖;所述虛擬領(lǐng)航者節(jié)點(diǎn)與所述第一有向圖中每個(gè)節(jié)點(diǎn)之間設(shè)置有三條出弧,并且所述虛擬領(lǐng)航者節(jié)點(diǎn)的每條出弧的權(quán)值相同并大于所述第一有向圖中全部弧的權(quán)值之和;
獲取所述第二有向圖的第一最小樹形圖,并刪除所述第一最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第三有向圖t1;
刪除所述第二有向圖中對(duì)應(yīng)所述第一最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第四有向圖;
獲取所述第四有向圖的第二最小樹形圖,并刪除所述第二最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第五有向圖t2;
刪除所述第四有向圖中對(duì)應(yīng)所述第二最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第六有向圖;
獲取所述第六有向圖的第三最小樹形圖,并刪除所述第三最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第七有向圖t3;
合并所述第三有向圖、所述第五有向圖和所述第七有向圖得到第八有向圖t以及所述第八有向圖t中弧的數(shù)量m;
當(dāng)所述三維最優(yōu)剛性圖r的節(jié)點(diǎn)數(shù)量為n且m滿足m=3n-6時(shí),則所述第八有向圖t為三維最優(yōu)持久圖;
當(dāng)滿足m<(3n-6)時(shí),獲取所述三維最優(yōu)剛性圖中的第l條邊對(duì)應(yīng)的兩條弧,符號(hào)l的初始值為1;
若該兩條弧都不在所述第八有向圖中,獲取第l條邊對(duì)應(yīng)兩節(jié)點(diǎn)的入度;
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度不都等于3時(shí),將該兩個(gè)節(jié)點(diǎn)中入度小于3的節(jié)點(diǎn)的連接另外那個(gè)節(jié)點(diǎn)的入弧添加到所述第八有向圖中得到第九有向圖;
若所述第九有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第九有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第九有向圖中的數(shù)據(jù)。
可選地,所述三維最優(yōu)持久圖獲取方法還包括:
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度都等于3時(shí),將該第l條邊對(duì)應(yīng)的一條弧添加到第八有向圖中得到第九有向圖;該弧為第l條邊所對(duì)應(yīng)第一節(jié)點(diǎn)的入弧;
按照先入度2再入度1最后入度0的方式在所述第九有向圖中尋找入度小于3的一個(gè)第二節(jié)點(diǎn),并獲取所述第二節(jié)點(diǎn)與所述第一節(jié)點(diǎn)之間具有最少跳數(shù)的路徑;
將所述最少跳數(shù)的路徑對(duì)應(yīng)的所有弧反向得到第十有向圖;
若所述第十有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第十有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第十有向圖中的數(shù)據(jù);
將所述符號(hào)l的值增加1,若符號(hào)l小于等于(3n-6)時(shí),則繼續(xù)判斷第l條邊對(duì)應(yīng)的兩條弧是否都不在所述第八有向圖t中。
第三方面,本發(fā)明實(shí)施例提供了一種多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖裳b置,所述裝置包括:
賦權(quán)無(wú)向圖獲取模塊,用于根據(jù)無(wú)人機(jī)需要組成的三維持久編隊(duì)的編隊(duì)隊(duì)形獲取編隊(duì)通信圖及其對(duì)應(yīng)的賦權(quán)無(wú)向圖;
三維最優(yōu)剛性圖獲取模塊,用于根據(jù)三維最優(yōu)剛性圖獲取方法計(jì)算所述賦權(quán)無(wú)向圖的三維最優(yōu)剛性圖;
三維最優(yōu)持久圖獲取模塊,用于根據(jù)所述三維最優(yōu)剛性圖和三維最優(yōu)持久圖獲取方法獲取三維最優(yōu)持久圖;
最優(yōu)通信拓?fù)浍@取模塊,用于在存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0時(shí)確定所述三維最優(yōu)持久圖為該編隊(duì)的最優(yōu)通信拓?fù)洌摕o(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
可選地,若不存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0,所述最優(yōu)通信拓?fù)浍@取模塊還用于:
判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為1;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj與節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為2;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則尋找任意一個(gè)可作領(lǐng)航者的無(wú)人機(jī),該無(wú)人機(jī)在三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為3,然后在所述三維最優(yōu)持久圖中尋找一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vl,該節(jié)點(diǎn)vl到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
可選地,所述三維最優(yōu)持久圖獲取模塊執(zhí)行以下步驟獲取所述三維最優(yōu)持久圖包括:
將所述三維最優(yōu)剛性圖轉(zhuǎn)換成第一有向圖;
在所述第一有向圖中增加虛擬領(lǐng)航者節(jié)點(diǎn)得到第二有向圖;所述虛擬領(lǐng)航者節(jié)點(diǎn)與所述第一有向圖中每個(gè)節(jié)點(diǎn)之間設(shè)置有三條出弧,并且所述虛擬領(lǐng)航者節(jié)點(diǎn)的每條出弧的權(quán)值相同并大于所述第一有向圖中全部弧的權(quán)值之和;
獲取所述第二有向圖的第一最小樹形圖,并刪除所述第一最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第三有向圖t1;
刪除所述第二有向圖中對(duì)應(yīng)所述第一最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第四有向圖;
獲取所述第四有向圖的第二最小樹形圖,并刪除所述第二最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第五有向圖t2;
刪除所述第四有向圖中對(duì)應(yīng)所述第二最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第六有向圖;
獲取所述第六有向圖的第三最小樹形圖,并刪除所述第三最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第七有向圖t3;
合并所述第三有向圖、所述第五有向圖和所述第七有向圖得到第八有向圖t以及所述第八有向圖t中弧的數(shù)量m;
當(dāng)所述三維最優(yōu)剛性圖r的節(jié)點(diǎn)數(shù)量為n且m滿足m=3n-6時(shí),則所述第八有向圖t為三維最優(yōu)持久圖;當(dāng)滿足m<(3n-6)時(shí),獲取所述三維最優(yōu)剛性圖中的第l條邊對(duì)應(yīng)的兩條弧,符號(hào)l的初始值為1;
若該兩條弧都不在所述第八有向圖中,獲取第l條邊對(duì)應(yīng)兩節(jié)點(diǎn)的入度;
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度不都等于3時(shí),將該兩個(gè)節(jié)點(diǎn)中入度小于3的節(jié)點(diǎn)的連接另外那個(gè)節(jié)點(diǎn)的入弧添加到所述第八有向圖中得到第九有向圖;
若所述第九有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第九有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第九有向圖中的數(shù)據(jù)。
可選地,所述三維最優(yōu)持久圖獲取模塊還用于執(zhí)行以下步驟包括:
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度都等于3時(shí),將該第l條邊對(duì)應(yīng)的一條弧添加到第八有向圖中得到第九有向圖;該弧為第l條邊所對(duì)應(yīng)第一節(jié)點(diǎn)的入弧;
按照先入度2再入度1最后入度0的方式在所述第九有向圖中尋找入度小于3的一個(gè)第二節(jié)點(diǎn),并獲取所述第二節(jié)點(diǎn)與所述第一節(jié)點(diǎn)之間具有最少跳數(shù)的路徑;
將所述最少跳數(shù)的路徑對(duì)應(yīng)的所有弧反向得到第十有向圖;
若所述第十有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第十有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第十有向圖中的數(shù)據(jù);
將所述符號(hào)l的值增加1,若符號(hào)l小于等于(3n-6)時(shí),則繼續(xù)判斷第l條邊對(duì)應(yīng)的兩條弧是否都不在所述第八有向圖t中。
與相關(guān)技術(shù)相比較,本發(fā)明能夠在更短的時(shí)間內(nèi)計(jì)算出多無(wú)人機(jī)組成的三維持久編隊(duì)的最優(yōu)通信拓?fù)?,并且能夠滿足“只有部分無(wú)人機(jī)可以作為編隊(duì)的領(lǐng)航者”的約束條件,使得多無(wú)人機(jī)組成的三維持久編隊(duì)在保持隊(duì)形過(guò)程中的編隊(duì)通信代價(jià)最小。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些圖獲得其他的附圖。
圖1是本發(fā)明實(shí)施例提供的多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒ǖ牧鞒淌疽鈭D;
圖2(a)~(b)是本發(fā)明實(shí)施例中5架uav組成的三維持久編隊(duì)的隊(duì)形以及相對(duì)位置示意圖;其中,uav1、uav2、uav3、uav4和uav5分別在隊(duì)形的1號(hào)、2號(hào)、3號(hào)、4號(hào)和5號(hào)位置,并且只有uav2和uav4可以作為編隊(duì)的領(lǐng)航者;
圖3(a)~(g)是采用圖1方法獲取圖2中5架uav組成的三維持久編隊(duì)的最優(yōu)通信拓?fù)涞倪^(guò)程示意圖;最終使用uav2作為編隊(duì)的領(lǐng)航者,因此滿足“只有uav2和uav4可以作為編隊(duì)的領(lǐng)航者”的約束條件;
圖4是現(xiàn)有技術(shù)獲取的圖2中5架uav組成的三維持久編隊(duì)的最優(yōu)通信拓?fù)涫疽鈭D;使用uav5作為編隊(duì)的領(lǐng)航者,因此不能滿足“只有uav2和uav4可以作為編隊(duì)的領(lǐng)航者”的約束條件;
圖5(a)~(b)是本發(fā)明實(shí)施例中16架uav組成的三維持久編隊(duì)的隊(duì)形以及相對(duì)位置示意圖;其中,無(wú)人機(jī)uav1、uav2、uav3、uav4、uav5、uav6、uav7、uav8、uav9、uav10、uav11、uav12、uav13、uav14、uav15和uav16分別在隊(duì)形的1號(hào)、2號(hào)、3號(hào)、4號(hào)、5號(hào)、6號(hào)、7號(hào)、8號(hào)、9號(hào)、10號(hào)、11號(hào)、12號(hào)、13號(hào)、14號(hào)、15號(hào)和16號(hào)位置,并且只有uav5和uav9可以作為編隊(duì)的領(lǐng)航者;
圖6(a)~(h)是采用圖1方法獲取圖5中16架uav組成的三維持久編隊(duì)的最優(yōu)通信拓?fù)涞倪^(guò)程示意圖;最終使用uav5作為編隊(duì)的領(lǐng)航者,因此滿足“只有uav5和uav9可以作為編隊(duì)的領(lǐng)航者”的約束條件;
圖7是現(xiàn)有技術(shù)獲取的圖5中16架uav組成的三維持久編隊(duì)的最優(yōu)通信拓?fù)涫疽鈭D;使用無(wú)人機(jī)uav13作為編隊(duì)的領(lǐng)航者,因此不能滿足“只有uav5和uav9可以作為編隊(duì)的領(lǐng)航者”的約束條件;
圖8是本發(fā)明實(shí)施例提供的多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖裳b置框圖。
具體實(shí)施方式
下面將結(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í)施例提供的一種多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒ǖ牧鞒淌疽鈭D。需要說(shuō)明的是,本發(fā)明實(shí)施例中多無(wú)人機(jī)協(xié)同編隊(duì)中僅有部分無(wú)人機(jī)可以作為編隊(duì)的領(lǐng)航者,且全部無(wú)人機(jī)都未發(fā)生故障的情景下使用的。如圖1所示,該方法包括:
s1、根據(jù)無(wú)人機(jī)需要組成的三維持久編隊(duì)的編隊(duì)隊(duì)形獲取編隊(duì)通信圖及其對(duì)應(yīng)的賦權(quán)無(wú)向圖。
實(shí)際應(yīng)用中,本發(fā)明實(shí)施例根據(jù)所述預(yù)設(shè)編隊(duì)的隊(duì)形和無(wú)人機(jī)的通信范圍,確定編隊(duì)中無(wú)人機(jī)之間的可用通信鏈接,以無(wú)人機(jī)作為節(jié)點(diǎn),以可用通信鏈接作為弧,構(gòu)建編隊(duì)的編隊(duì)通信圖。其中,任意兩個(gè)無(wú)人機(jī)之間的距離在無(wú)人機(jī)的通信范圍之內(nèi),則該兩無(wú)人機(jī)之間具有雙向的通信鏈接,每個(gè)通信鏈接的通信代價(jià)由相應(yīng)的通信距離決定。
假設(shè)n架uav通過(guò)uav之間的單向通信以形成并保持一個(gè)三維持久編隊(duì)的編隊(duì)隊(duì)形s。該編隊(duì)隊(duì)形s中n個(gè)位置分別編號(hào)為{1,2,…,n},每個(gè)位置的高度不完全一樣。此編隊(duì)的編隊(duì)通信圖可用一個(gè)賦權(quán)有向圖d=(v,a,w,p)來(lái)表示:
(1)v={vi},1≤i≤n是圖中的節(jié)點(diǎn)集合,其中vi表示uavi。
(2)
(3)w={w(aij)},aij∈a是圖中所有弧的權(quán)值集合,其中w(aij)表示從uavi到uavj的通信鏈接aij的代價(jià)。
(4)p={pi},1≤i≤n是每個(gè)uav在編隊(duì)隊(duì)形s的具體位置集合,簡(jiǎn)稱為uav位置配置(uavpositionconfiguration)。其中將編隊(duì)隊(duì)形s中的n個(gè)位置分別編號(hào)為{1,2,...,n},則1≤pi≤n表示uavi在編隊(duì)隊(duì)形s中的具體位置。
為了保持編隊(duì)隊(duì)形,uav之間需要使用相應(yīng)的通信鏈接進(jìn)行信息交互以保持它們之間距離恒定,但不一定需要使用所有的通信鏈接,即編隊(duì)用于保持隊(duì)形的通信拓?fù)鋞=(v,a*,w*,p)只是編隊(duì)通信圖d=(v,a,w,p)的一個(gè)子圖,其中
s2、根據(jù)三維最優(yōu)剛性圖獲取方法計(jì)算所述賦權(quán)無(wú)向圖的三維最優(yōu)剛性圖。
下面對(duì)本發(fā)明實(shí)施例用到的幾個(gè)概念進(jìn)行解釋說(shuō)明。
三維剛性圖是指:令pi(t)∈r3代表uavi在t時(shí)刻的位置,假設(shè)編隊(duì)中部分uav之間通過(guò)雙向通信以保持它們之間的距離恒定。如果編隊(duì)運(yùn)動(dòng)過(guò)程中任意兩個(gè)uav在任意時(shí)刻都能夠保持恒定的距離,即
需要說(shuō)明的是,具有相同節(jié)點(diǎn)的不同三維剛性圖可能不是唯一的。
三維最小剛性圖是指:如果一個(gè)三維剛性圖任意刪除一條邊都不能夠維持其剛性,則稱此三維剛性圖為三維最小剛性圖?;蛘撸?jié)點(diǎn)數(shù)為n,邊數(shù)為3n-6的三維剛性圖為三維最小剛性圖。需要說(shuō)明的是,具有相同節(jié)點(diǎn)的三維最小剛性圖也可能不唯一。
三維最優(yōu)剛性圖是指:如果一個(gè)三維最小剛性圖的各邊權(quán)值之和是具有相同節(jié)點(diǎn)的所有三維剛性圖中最小的,則此三維最小剛性圖為三維最優(yōu)剛性圖(three-dimensionaloptimalrigidgraph,3dorg)。
本發(fā)明實(shí)施例中采用現(xiàn)有的基于三維剛度矩陣的三維最優(yōu)剛性圖獲取方法獲取三維最優(yōu)剛性圖,此算法運(yùn)行在編隊(duì)中每個(gè)uav中。以u(píng)avi為例,此算法的步驟如表1所示。
表1
需要說(shuō)明的是,表1所示三維最優(yōu)剛性圖獲取方法的時(shí)間復(fù)雜度主要由step4決定。而step4最多需要計(jì)算|e|次,并且第i次計(jì)算矩陣m的秩的時(shí)間復(fù)雜度為
s3、根據(jù)所述三維最優(yōu)剛性圖和三維最優(yōu)持久圖獲取方法獲取三維最優(yōu)持久圖。
本發(fā)明實(shí)施例中利用三維最優(yōu)剛性圖和三維最優(yōu)持久圖獲取方法獲取三維最優(yōu)持久圖的具體步驟包括:
s31、將所述三維最優(yōu)剛性圖r轉(zhuǎn)換成第一有向圖;
s32、在所述第一有向圖中增加虛擬領(lǐng)航者節(jié)點(diǎn)得到第二有向圖;所述虛擬領(lǐng)航者節(jié)點(diǎn)與所述第一有向圖中每個(gè)節(jié)點(diǎn)之間設(shè)置有三條出弧,并且所述虛擬領(lǐng)航者節(jié)點(diǎn)的每條出弧的權(quán)值相同并大于所述第一有向圖中全部弧的權(quán)值之和;
s33、獲取所述第二有向圖的第一最小樹形圖,并刪除所述第一最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第三有向圖;
s34、刪除所述第二有向圖中對(duì)應(yīng)所述第一最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第四有向圖;
s35、獲取所述第四有向圖的第二最小樹形圖,并刪除所述第二最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第五有向圖;
s36、刪除所述第四有向圖中對(duì)應(yīng)所述第二最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第六有向圖;
s37、獲取所述第六有向圖的第三最小樹形圖,并刪除所述第三最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第七有向圖;s38、合并所述第三有向圖、所述第五有向圖和所述第七有向圖得到第八有向圖以及所述第八有向圖t中弧的數(shù)量m;
s39、當(dāng)所述三維最優(yōu)剛性圖r的節(jié)點(diǎn)數(shù)量為n且m滿足m=3n-6時(shí),則所述第八有向圖t為三維最優(yōu)持久圖。
本發(fā)明一實(shí)施例中,三維最優(yōu)持久圖獲取方法還利用節(jié)點(diǎn)的入度獲取三維最優(yōu)持久圖的具體步驟還包括:
當(dāng)所述三維最優(yōu)剛性圖的節(jié)點(diǎn)數(shù)量為n且m滿足m<(3n-6)時(shí),獲取所述三維最優(yōu)剛性圖中的第l條邊對(duì)應(yīng)的兩條弧;符號(hào)l的初始值為1
若該兩條弧都不在所述第八有向圖中,獲取第l條邊對(duì)應(yīng)兩節(jié)點(diǎn)的入度;
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度不都等于3時(shí),將該兩個(gè)節(jié)點(diǎn)中入度小于3的節(jié)點(diǎn)的連接另外那個(gè)節(jié)點(diǎn)的入弧添加到所述第八有向圖中得到第九有向圖;
若所述第九有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第九有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第九有向圖中的數(shù)據(jù)。
本發(fā)明一實(shí)施例中,三維最優(yōu)持久圖獲取方法還利用節(jié)點(diǎn)的入度獲取三維最優(yōu)持久圖的具體步驟還包括:
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度都等于3時(shí),將該第l條邊對(duì)應(yīng)的一條弧添加到第八有向圖中得到第九有向圖;該弧為第l條邊所對(duì)應(yīng)第一節(jié)點(diǎn)的入弧;
按照先入度2再入度1最后入度0的方式在所述第九有向圖中尋找入度小于3的一個(gè)第二節(jié)點(diǎn),并獲取所述第二節(jié)點(diǎn)與所述第一節(jié)點(diǎn)之間具有最少跳數(shù)的路徑;
將所述最少跳數(shù)的路徑對(duì)應(yīng)的所有弧反向得到第十有向圖;
若所述第十有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第十有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第十有向圖中的數(shù)據(jù);
將所述符號(hào)l的值增加1,若符號(hào)l小于等于(3n-6)時(shí),則繼續(xù)判斷第l條邊對(duì)應(yīng)的兩條弧是否都不在所述第八有向圖t中
基于上述說(shuō)明,本發(fā)明實(shí)施例提供了一種基于三維最優(yōu)剛性圖和最小樹形圖(three-dimensionaloptimalrigidgraphandminimumcostarborescence,3dorg_mca)的三維最優(yōu)持久圖獲取方法,此算法運(yùn)行在編隊(duì)中每個(gè)uav中。以u(píng)avi為例,此算法步驟如表2所示。
表2
需要說(shuō)明的是,本實(shí)施例中最小樹形圖(minimumcostarborescence,mca)指的是一個(gè)加權(quán)有向圖的最小生成樹。求解mca問題的第一個(gè)算法是edmonds算法,其時(shí)間復(fù)雜度為o(e×v),后來(lái)gabow等人又提出了一個(gè)針對(duì)edmonds算法的更快的實(shí)現(xiàn),其時(shí)間復(fù)雜度為o(|e|+|v|×log|v|)。
可理解的是,表2中三維最優(yōu)持久圖獲取方法主要由step3、step5和step7的時(shí)間復(fù)雜度決定。例如,本發(fā)明實(shí)施例中表2中step3、step5和step7采用了gabow等人提出的edmonds算法實(shí)現(xiàn),從而得到該算法的時(shí)間復(fù)雜度約為o(3×(|a|+|v|×log|v|))。
由表2中step1可知|a|=2×|e*|,而由三維最優(yōu)剛性圖的特性可知三維最優(yōu)剛性圖r=(v,e*,w*,p)的邊數(shù)|e*|等于3×|v|-6,所以上述算法的時(shí)間復(fù)雜度又約為o(3×(6×|v|+|v|×log|v|))。
與相關(guān)技術(shù)中最好的三維最優(yōu)持久圖生成算法相比較,本發(fā)明實(shí)施例中三維最優(yōu)持久圖獲取方法的時(shí)間復(fù)雜度更低,因?yàn)楝F(xiàn)有技術(shù)算法需要計(jì)算矩陣的秩,因此其時(shí)間復(fù)雜度至少為o(|v|3)。
s4、若存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0則所述三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,而該無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
本發(fā)明實(shí)施例中判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0;若是,則所述三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,而該無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若不存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0,則判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為1;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj與節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為2;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則尋找任意一個(gè)可作領(lǐng)航者的無(wú)人機(jī),該無(wú)人機(jī)在三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為3,然后在所述三維最優(yōu)持久圖中尋找一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vl,該節(jié)點(diǎn)vl到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
本發(fā)明實(shí)施例提供的多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒ň哂腥缦聝?yōu)點(diǎn):
(1)時(shí)間復(fù)雜度更低。
(2)可以根據(jù)“編隊(duì)領(lǐng)航者約束”自動(dòng)選擇最合適的無(wú)人機(jī)作為編隊(duì)的領(lǐng)航者。
下面舉例驗(yàn)證本發(fā)明實(shí)施例提供的多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖煞椒ǖ膬?yōu)越性和有效性。
1、多無(wú)人機(jī)組成的小規(guī)模三維持久編隊(duì)的通信拓?fù)鋬?yōu)化。
假設(shè)一個(gè)小規(guī)模三維持久編隊(duì)由5架uav組成,每個(gè)uav的通信范圍是1600m并且不會(huì)發(fā)生任何故障,它們需要形成并保持一個(gè)如圖2所示的三維空間隊(duì)形,所有位置分別編號(hào)為{1,2,3,4,5},它們?cè)谌S空間的相對(duì)位置圖2(a)所示。例如,本發(fā)明實(shí)施例中以上述三維空間隊(duì)形中的4號(hào)位置作為編隊(duì)參考點(diǎn),則上述三維持久編隊(duì)隊(duì)形s如圖2(b)所示。其中,uav1、uav2、uav3、uav4和uav5分別在隊(duì)形的1號(hào)、2號(hào)、3號(hào)、4號(hào)和5號(hào)位置,并且只有uav2和uav4可以作為編隊(duì)的領(lǐng)航者。
本發(fā)明實(shí)施例中,根據(jù)圖1所示算法,首先令初始的uav位置配置為p={1,2,3,4,5},構(gòu)建相應(yīng)的編隊(duì)通信圖d=(v,a,w,p);將d中的弧轉(zhuǎn)換成邊得到對(duì)應(yīng)的賦權(quán)無(wú)向圖g=(v,e,w,p);然后結(jié)合表1所示算法生成賦權(quán)無(wú)向圖g的三維最優(yōu)剛性圖r(如圖3(a)所示)。利用表2所示算法生成上述三維最優(yōu)剛性圖r對(duì)應(yīng)的三維最優(yōu)持久圖t。其中,表2所示算法中step3所得的最小樹形圖t1'如圖3(b)所示;表2所示算法中step5所得的最小樹形圖t2'如圖3(c)所示;表2所示算法中step7所得的最小樹形圖t3'如圖3(d)所示。再將最小樹形圖t1'、t2'和t3'中的虛擬領(lǐng)航者節(jié)點(diǎn)v0和v0的出弧刪除分別得到有向圖t1、t2和t3。然后合并有向圖t1、t2和t3得到的有向圖t如圖3(e)所示。由于該有向圖t中弧的總數(shù)和三維最優(yōu)剛性圖r中邊的總數(shù)相同,滿足表2所示算法的step9的條件,因此t是r對(duì)應(yīng)的一個(gè)三維最優(yōu)持久圖。
此時(shí),可作領(lǐng)航者的uav2和uav4在t中對(duì)應(yīng)節(jié)點(diǎn)v2和v4的入度均為2,即不滿足“編隊(duì)領(lǐng)航者約束”,因此本發(fā)明將對(duì)t進(jìn)行調(diào)整以滿足“編隊(duì)領(lǐng)航者約束”,具體過(guò)程如下:
(1)首先找到可作領(lǐng)航者的uav2,uav2在t中對(duì)應(yīng)節(jié)點(diǎn)v2的入度為2,然后在t中尋找一個(gè)入度小于3的節(jié)點(diǎn)v1,使得t中該節(jié)點(diǎn)v1到節(jié)點(diǎn)v2之間具有一條最少跳數(shù)的路(v1,v2);將t中上述最少跳數(shù)的路上所有弧反向,得到新的t如圖3(f)所示,此時(shí)t中節(jié)點(diǎn)v2的入度已經(jīng)變?yōu)?;
(2)繼續(xù)在t中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)v1,使得t中該節(jié)點(diǎn)v1到節(jié)點(diǎn)v2之間具有一條最少跳數(shù)的路(v1,v3,v2);將t中上述最少跳數(shù)的路上所有弧反向,得到新的t如圖3(g)所示,此時(shí)t中節(jié)點(diǎn)v2的入度已經(jīng)變?yōu)?;又因?yàn)関2所代表的uav2可以作為編隊(duì)領(lǐng)航者即t滿足“編隊(duì)領(lǐng)航者約束”,因此三維最優(yōu)持久圖t就是此三維持久編隊(duì)的最優(yōu)通信拓?fù)?,?duì)應(yīng)的編隊(duì)通信代價(jià)為8640。
對(duì)比地,現(xiàn)有技術(shù)中效果最優(yōu)的通信拓?fù)鋬?yōu)化算法得到的最優(yōu)通信拓?fù)淙鐖D4所示,其對(duì)應(yīng)的編隊(duì)通信代價(jià)也是8640,但由于未考慮“編隊(duì)領(lǐng)航者約束”,因此現(xiàn)有算法選擇uav5作為編隊(duì)領(lǐng)航者,即不滿足“只有uav2和uav4可以作為編隊(duì)的領(lǐng)航者”的約束條件;另外其時(shí)間復(fù)雜度也比本發(fā)明實(shí)施例提供的生成方法的時(shí)間復(fù)雜度更高。
2、多無(wú)人機(jī)組成的大規(guī)模三維持久編隊(duì)的通信拓?fù)鋬?yōu)化。
假設(shè)一個(gè)大規(guī)模三維持久編隊(duì)由16架uav組成,每個(gè)uav的通信范圍是1600m并且不會(huì)發(fā)生任何故障,上述16架uav需要形成并保持如圖5所示的三維空間隊(duì)形s,所有位置分別編號(hào)為{1,2,…,16},它們?cè)谌S空間的相對(duì)位置圖5(a)所示。例如,本發(fā)明實(shí)施例中以上述三維空間隊(duì)形中的10號(hào)位置作為編隊(duì)參考點(diǎn),則上述三維持久編隊(duì)隊(duì)形s如圖5(b)所示。其中,無(wú)人機(jī)uav1、uav2、uav3、uav4、uav5、uav6、uav7、uav8、uav9、uav10、uav11、uav12、uav13、uav14、uav15和uav16分別在隊(duì)形的1號(hào)、2號(hào)、3號(hào)、4號(hào)、5號(hào)、6號(hào)、7號(hào)、8號(hào)、9號(hào)、10號(hào)、11號(hào)、12號(hào)、13號(hào)、14號(hào)、15號(hào)和16號(hào)位置,并且只有uav5和uav9可以作為編隊(duì)的領(lǐng)航者。
本發(fā)明一實(shí)施例中,根據(jù)圖1所示算法,首先令初始的uav位置配置為p={1,2,…,16},構(gòu)建相應(yīng)的編隊(duì)通信圖d=(v,a,w,p);將d中的弧轉(zhuǎn)換成邊得到對(duì)應(yīng)的賦權(quán)無(wú)向圖g=(v,e,w,p);然后結(jié)合表1所示算法生成賦權(quán)無(wú)向圖g的三維最優(yōu)剛性圖r(如圖6(a)所示)。利用表2所示算法生成上述三維最優(yōu)剛性圖r對(duì)應(yīng)的三維最優(yōu)持久圖t。其中,表2所示算法中step3所得的最小樹形圖t1'如圖6(b)所示;表2所示算法中step5所得的最小樹形圖t2'如圖6(c)所示;表2所示算法中step7所得的最小樹形圖t3'如圖6(d)所示。將t1'中的v0和v0的出弧刪除后得的t1,將t2'中的v0和v0的出弧刪除后得的t2,將t3'中的v0和v0的出弧刪除后得的t3,將上述最小樹形圖t1、t2和t3合并得到的有向圖t如圖6(e)所示。由于該有向圖t中弧的總數(shù)和三維最優(yōu)剛性圖r中邊的總數(shù)相同,滿足表2所示算法的step9的條件,因此t是r對(duì)應(yīng)的一個(gè)三維最優(yōu)持久圖。
此時(shí),可作領(lǐng)航者的uav5和uav9在t中對(duì)應(yīng)節(jié)點(diǎn)v5和v9的入度均為3,即不滿足“編隊(duì)領(lǐng)航者約束”,因此本發(fā)明將對(duì)t進(jìn)行調(diào)整以滿足“編隊(duì)領(lǐng)航者約束”,具體過(guò)程如下:
(1)首先找到可作領(lǐng)航者的uav5,uav5在t中對(duì)應(yīng)節(jié)點(diǎn)v5的入度為3,然后在t中尋找一個(gè)入度小于3的節(jié)點(diǎn)v1,使得t中該節(jié)點(diǎn)v1到節(jié)點(diǎn)v5之間具有一條最少跳數(shù)的路(v1,v3,v5);將t中上述最少跳數(shù)的路上所有弧反向,得到新的t如圖6(f)所示,此時(shí)t中節(jié)點(diǎn)v5的入度已經(jīng)變?yōu)?;
(2)繼續(xù)在t中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)v1,使得t中該節(jié)點(diǎn)v1到節(jié)點(diǎn)v5之間具有一條最少跳數(shù)的路(v1,v6,v5);將t中上述最少跳數(shù)的路上所有弧反向,得到新的t如圖6(g)所示,此時(shí)t中節(jié)點(diǎn)v5的入度已經(jīng)變?yōu)?;
(3)繼續(xù)在t中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)v1,使得t中該節(jié)點(diǎn)v1到節(jié)點(diǎn)v5之間具有一條最少跳數(shù)的路(v1,v4,v13,v8,v5);將上述最少跳數(shù)的路上所有弧反向后得到新的t如圖6(h)所示,此時(shí)t中節(jié)點(diǎn)v5的入度已經(jīng)變?yōu)?;又因?yàn)関5所代表的uav5可以作為編隊(duì)領(lǐng)航者即t滿足“編隊(duì)領(lǐng)航者約束”,因此三維最優(yōu)持久圖t就是此三維持久編隊(duì)的最優(yōu)通信拓?fù)洌瑢?duì)應(yīng)的編隊(duì)通信代價(jià)為32102。
對(duì)比地,現(xiàn)有技術(shù)中效果最優(yōu)的通信拓?fù)鋬?yōu)化算法得到的最優(yōu)通信拓?fù)淙鐖D7所示,其對(duì)應(yīng)的編隊(duì)通信代價(jià)也是32102,但由于未考慮“編隊(duì)領(lǐng)航者約束”,因此現(xiàn)有算法選擇uav13作為編隊(duì)領(lǐng)航者,即不滿足“只有uav5和uav9可以作為編隊(duì)的領(lǐng)航者”的約束條件;另外其時(shí)間復(fù)雜度也比本發(fā)明實(shí)施例提供的生成方法的時(shí)間復(fù)雜度更高。
本發(fā)明實(shí)施例還提供了一種多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖裳b置,適用于所述三維持久編隊(duì)中部分無(wú)人機(jī)可以作為該編隊(duì)的領(lǐng)航者,剩余部分無(wú)人機(jī)不能作為該編隊(duì)的領(lǐng)航者的情景。如圖8所示,所述裝置包括:
賦權(quán)無(wú)向圖獲取模塊m1,用于根據(jù)無(wú)人機(jī)需要組成的三維持久編隊(duì)的編隊(duì)隊(duì)形獲取編隊(duì)通信圖及其對(duì)應(yīng)的賦權(quán)無(wú)向圖;
三維最優(yōu)剛性圖獲取模塊m2,用于根據(jù)三維最優(yōu)剛性圖獲取方法計(jì)算所述賦權(quán)無(wú)向圖的三維最優(yōu)剛性圖;
三維最優(yōu)持久圖獲取模塊m3,用于根據(jù)所述三維最優(yōu)剛性圖和三維最優(yōu)持久圖獲取方法獲取三維最優(yōu)持久圖;
最優(yōu)通信拓?fù)浍@取模塊m4,用于在存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0時(shí)確定所述三維最優(yōu)持久圖為該編隊(duì)的最優(yōu)通信拓?fù)?,而該無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
可選地,在不存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)的入度為0時(shí),所述最優(yōu)通信拓?fù)浍@取模塊還用于:
判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為1;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj與節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則判斷是否存在一個(gè)可作領(lǐng)航者的無(wú)人機(jī)在所述三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為2;
若是,則在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)?,?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者;
若否,則尋找任意一個(gè)可作領(lǐng)航者的無(wú)人機(jī),該無(wú)人機(jī)在三維最優(yōu)持久圖中對(duì)應(yīng)節(jié)點(diǎn)vi的入度為3,然后在所述三維最優(yōu)持久圖中尋找一個(gè)入度小于3的節(jié)點(diǎn)vj,該節(jié)點(diǎn)vj到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vk,該節(jié)點(diǎn)vk到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向;繼續(xù)在所述三維最優(yōu)持久圖中尋找另外一個(gè)入度小于3的節(jié)點(diǎn)vl,該節(jié)點(diǎn)vl到節(jié)點(diǎn)vi之間具有一條最少跳數(shù)的路;將上述最少跳數(shù)的路上所有弧反向后得到新的三維最優(yōu)持久圖即為該編隊(duì)的最優(yōu)通信拓?fù)洌?jié)點(diǎn)vi對(duì)應(yīng)的無(wú)人機(jī)為該編隊(duì)的領(lǐng)航者。
可選地,所述三維最優(yōu)持久圖m3獲取模塊執(zhí)行以下步驟獲取所述三維最優(yōu)持久圖包括:
將所述三維最優(yōu)剛性圖轉(zhuǎn)換成第一有向圖;
在所述第一有向圖中增加虛擬領(lǐng)航者節(jié)點(diǎn)得到第二有向圖;所述虛擬領(lǐng)航者節(jié)點(diǎn)與所述第一有向圖中每個(gè)節(jié)點(diǎn)之間設(shè)置有三條出弧,并且所述虛擬領(lǐng)航者節(jié)點(diǎn)的每條出弧的權(quán)值相同并大于所述第一有向圖中全部弧的權(quán)值之和;
獲取所述第二有向圖的第一最小樹形圖,并刪除所述第一最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第三有向圖t1;
刪除所述第二有向圖中對(duì)應(yīng)所述第一最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第四有向圖;
獲取所述第四有向圖的第二最小樹形圖,并刪除所述第二最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第五有向圖t2;
刪除所述第四有向圖中對(duì)應(yīng)所述第二最小樹形圖中所有弧及其對(duì)應(yīng)的反向弧得到第六有向圖;
獲取所述第六有向圖的第三最小樹形圖,并刪除所述第三最小樹形圖中所述虛擬領(lǐng)航者節(jié)點(diǎn)及其對(duì)應(yīng)的出弧得到第七有向圖t3;
合并所述第三有向圖、所述第五有向圖和所述第七有向圖得到第八有向圖t以及所述第八有向圖t中弧的數(shù)量m;
當(dāng)所述三維最優(yōu)剛性圖r的節(jié)點(diǎn)數(shù)量為n且m滿足m=3n-6時(shí),則所述第八有向圖t為三維最優(yōu)持久圖;當(dāng)滿足m<(3n-6)時(shí),獲取所述三維最優(yōu)剛性圖中的第l條邊對(duì)應(yīng)的兩條弧,符號(hào)l的初始值為1;
若該兩條弧都不在所述第八有向圖中,獲取第l條邊對(duì)應(yīng)兩節(jié)點(diǎn)的入度;
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度不都等于3時(shí),將該兩個(gè)節(jié)點(diǎn)中入度小于3的節(jié)點(diǎn)的連接另外那個(gè)節(jié)點(diǎn)的入弧添加到所述第八有向圖中得到第九有向圖;
若所述第九有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第九有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第九有向圖中的數(shù)據(jù)。
可選地,所述三維最優(yōu)持久圖獲取模塊m3還用于執(zhí)行以下步驟包括:
當(dāng)?shù)趌條邊對(duì)應(yīng)的兩節(jié)點(diǎn)的入度都等于3時(shí),將該第l條邊對(duì)應(yīng)的一條弧添加到第八有向圖中得到第九有向圖;該弧為第l條邊所對(duì)應(yīng)第一節(jié)點(diǎn)的入??;
按照先入度2再入度1最后入度0的方式在所述第九有向圖中尋找入度小于3的一個(gè)第二節(jié)點(diǎn),并獲取所述第二節(jié)點(diǎn)與所述第一節(jié)點(diǎn)之間具有最少跳數(shù)的路徑;
將所述最少跳數(shù)的路徑對(duì)應(yīng)的所有弧反向得到第十有向圖;
若所述第十有向圖中弧的數(shù)量m等于(3n-6)時(shí),則所述第十有向圖為三維最優(yōu)持久圖;否則將所述第八有向圖中的數(shù)據(jù)更新為所述第十有向圖中的數(shù)據(jù);
將所述符號(hào)l的值增加1,若符號(hào)l小于等于(3n-6)時(shí),則繼續(xù)判斷第l條邊對(duì)應(yīng)的兩條弧是否都不在所述第八有向圖t中。
需要說(shuō)明的是,本發(fā)明實(shí)施例提供的多無(wú)人機(jī)協(xié)同編隊(duì)中的最優(yōu)通信拓?fù)渖裳b置與上述方法一一對(duì)應(yīng)的關(guān)系,上述方法的實(shí)施細(xì)節(jié)同樣適用于上述裝置,本發(fā)明實(shí)施例不再對(duì)上述系統(tǒng)進(jìn)行詳細(xì)說(shuō)明。
本發(fā)明的說(shuō)明書中,說(shuō)明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說(shuō)明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本發(fā)明公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋呈反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說(shuō),如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在于該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中。可以把實(shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過(guò)程或者單元中的至少一些是互相排斥之處,可以采用任何組合對(duì)本說(shuō)明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過(guò)程或單元進(jìn)行組合。除非另外明確陳述,本說(shuō)明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來(lái)代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來(lái)使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(dsp)來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的一種瀏覽器終端的設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說(shuō)明而不是對(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ī)來(lái)實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過(guò)同一個(gè)硬件項(xiàng)來(lái)具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求和說(shuō)明書的范圍當(dāng)中。