本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,具體而言,涉及一種人機(jī)三維航跡規(guī)劃方法。
背景技術(shù):
1、無(wú)人機(jī)三維航跡規(guī)劃問(wèn)題,是旅行商問(wèn)題(traveling?salesman?problem,tsp)的一種拓展,指的是在限定的三維空間內(nèi),給定無(wú)人機(jī)起點(diǎn)、若干個(gè)任務(wù)點(diǎn),無(wú)人機(jī)從起點(diǎn)出發(fā),訪問(wèn)每個(gè)任務(wù)點(diǎn)后再回到起點(diǎn)。通過(guò)合理的航跡規(guī)劃方法,設(shè)計(jì)出一條安全、高效的路徑,使得無(wú)人機(jī)能夠在多點(diǎn)之間進(jìn)行航行,并能在一定的約束下,達(dá)到諸如總距離最短、成本最小等目的。
2、無(wú)人機(jī)三維航跡規(guī)劃問(wèn)題自上世紀(jì)提出以來(lái),一直是網(wǎng)絡(luò)優(yōu)化問(wèn)題中最基本的問(wèn)題之一,由于其應(yīng)用的廣泛性和經(jīng)濟(jì)上的重大價(jià)值,一直受到廣泛關(guān)注。它是旅行商問(wèn)題的一個(gè)變種,也是一種多項(xiàng)式復(fù)雜程度的非確定性問(wèn)題,即np完全問(wèn)題,問(wèn)題求解難度隨數(shù)據(jù)規(guī)模呈指數(shù)級(jí)上升,難以在有限的時(shí)間內(nèi)獲取最優(yōu)解,因此,目前無(wú)人機(jī)三維航跡規(guī)劃存在規(guī)劃效率低的問(wèn)題。
3、針對(duì)上述無(wú)人機(jī)三維航跡規(guī)劃效率低的問(wèn)題,目前尚未提出有效的解決方案。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明實(shí)施例提供了一種人機(jī)三維航跡規(guī)劃方法,以至少解決無(wú)人機(jī)三維航跡規(guī)劃效果差的技術(shù)問(wèn)題。
2、根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種路徑規(guī)劃方法,包括:獲取待規(guī)劃節(jié)點(diǎn)集合,其中,所述待規(guī)劃節(jié)點(diǎn)集合包括:多個(gè)路徑節(jié)點(diǎn),多個(gè)所述路徑節(jié)點(diǎn)包括:起點(diǎn)和至少一個(gè)任務(wù)點(diǎn);根據(jù)所述待規(guī)劃節(jié)點(diǎn)集合,確定預(yù)設(shè)路徑種群,其中,所述預(yù)設(shè)路徑種群包括:多個(gè)預(yù)設(shè)節(jié)點(diǎn)序列分別對(duì)應(yīng)的預(yù)設(shè)路徑,每個(gè)所述預(yù)設(shè)節(jié)點(diǎn)序列的兩端均為所述起點(diǎn),且每個(gè)所述預(yù)設(shè)節(jié)點(diǎn)序列包括所述待規(guī)劃節(jié)點(diǎn)集合中的全部所述任務(wù)點(diǎn),每個(gè)所述預(yù)設(shè)路徑包括:所述預(yù)設(shè)節(jié)點(diǎn)序列中每對(duì)相鄰的所述路徑節(jié)點(diǎn)之間的目標(biāo)節(jié)點(diǎn)路徑;使用預(yù)設(shè)優(yōu)化算法將所述預(yù)設(shè)路徑種群按照預(yù)設(shè)優(yōu)化次數(shù)進(jìn)行優(yōu)化,得到目標(biāo)路徑種群,其中,所述預(yù)設(shè)優(yōu)化算法用于在每次優(yōu)化過(guò)程中,從所述預(yù)設(shè)路徑種群確定總路徑距離符合預(yù)設(shè)條件的多個(gè)精英路徑,并將所述預(yù)設(shè)路徑種群中的每個(gè)所述預(yù)設(shè)路徑與多個(gè)所述精英路徑依次進(jìn)行融合,所述目標(biāo)路徑種群包括:經(jīng)過(guò)所述預(yù)設(shè)優(yōu)化次數(shù)后每個(gè)所述預(yù)設(shè)路徑對(duì)應(yīng)的優(yōu)化路徑;在所述目標(biāo)路徑種群中,確定總路徑距離最短的所述優(yōu)化路徑為目標(biāo)路徑。
3、可選地,在獲取待規(guī)劃節(jié)點(diǎn)集合之后,所述方法還包括:將所述待規(guī)劃節(jié)點(diǎn)集合中的任意兩個(gè)所述路徑節(jié)點(diǎn)進(jìn)行組合,得到路徑節(jié)點(diǎn)集合,其中,所述路徑節(jié)點(diǎn)集合包括:多個(gè)路徑節(jié)點(diǎn)對(duì),每個(gè)所述路徑節(jié)點(diǎn)對(duì)包括:第一節(jié)點(diǎn)和第二節(jié)點(diǎn);所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn)之間,規(guī)劃路徑距離最短的目標(biāo)節(jié)點(diǎn)路徑。
4、可選地,在所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn)之間,規(guī)劃路徑距離最短的目標(biāo)節(jié)點(diǎn)路徑包括:使用快速擴(kuò)展隨機(jī)樹(shù)將每對(duì)所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn)按照預(yù)設(shè)規(guī)劃次數(shù)進(jìn)行路徑規(guī)劃,得到多個(gè)預(yù)設(shè)節(jié)點(diǎn)路徑,其中,所述快速擴(kuò)展隨機(jī)樹(shù)用于在每次路徑規(guī)劃過(guò)程中,使用預(yù)設(shè)隨機(jī)樹(shù)中的多個(gè)樹(shù)節(jié)點(diǎn)記錄作為根節(jié)點(diǎn)的所述第一節(jié)點(diǎn)、作為葉子節(jié)點(diǎn)的所述第二節(jié)點(diǎn)、和本次路徑規(guī)劃過(guò)程中隨機(jī)選擇的多個(gè)采樣節(jié)點(diǎn),并根據(jù)所述預(yù)設(shè)隨機(jī)樹(shù)確定所述預(yù)設(shè)節(jié)點(diǎn)路徑;在多個(gè)所述預(yù)設(shè)節(jié)點(diǎn)路徑中,確定路徑距離最短的所述預(yù)設(shè)節(jié)點(diǎn)路徑為所述目標(biāo)節(jié)點(diǎn)路徑。
5、可選地,所述方法還包括:在每次路徑規(guī)劃過(guò)程中,從預(yù)設(shè)三維空間中隨機(jī)選取未處于預(yù)設(shè)障礙區(qū)域的采樣節(jié)點(diǎn),其中,所述預(yù)設(shè)三維空間至少包括:所述第一節(jié)點(diǎn)、所述第二節(jié)點(diǎn)和所述預(yù)設(shè)障礙區(qū)域;在所述預(yù)設(shè)隨機(jī)樹(shù)中記錄的至少一個(gè)所述樹(shù)節(jié)點(diǎn)中,確定距離所述采樣節(jié)點(diǎn)最近的所述樹(shù)節(jié)點(diǎn)為目標(biāo)節(jié)點(diǎn),其中,所述樹(shù)節(jié)點(diǎn)至少包括:所述第一節(jié)點(diǎn);檢測(cè)所述采樣節(jié)點(diǎn)和所述目標(biāo)節(jié)點(diǎn)之間的樹(shù)節(jié)點(diǎn)路徑是否經(jīng)過(guò)所述預(yù)設(shè)障礙區(qū)域;在所述樹(shù)節(jié)點(diǎn)路徑未經(jīng)過(guò)所述預(yù)設(shè)障礙區(qū)域的情況下,將所述采樣節(jié)點(diǎn)記錄為與所述目標(biāo)節(jié)點(diǎn)相連的所述樹(shù)節(jié)點(diǎn)。
6、可選地,所述方法還包括:在所述樹(shù)節(jié)點(diǎn)路徑未經(jīng)過(guò)所述預(yù)設(shè)障礙區(qū)域的情況下,檢測(cè)所述采樣節(jié)點(diǎn)與所述第二節(jié)點(diǎn)之間的路徑距離是否符合預(yù)設(shè)距離閾值;在所述采樣節(jié)點(diǎn)與所述第二節(jié)點(diǎn)之間的路徑距離不符合所述預(yù)設(shè)距離閾值的情況下,再次在預(yù)設(shè)三維空間中隨機(jī)選取未處于預(yù)設(shè)障礙區(qū)域的采樣節(jié)點(diǎn),直到預(yù)設(shè)隨機(jī)樹(shù)中記錄的所述采樣節(jié)點(diǎn)的節(jié)點(diǎn)數(shù)量達(dá)到第一數(shù)量閾值;在所述采樣節(jié)點(diǎn)與所述第二節(jié)點(diǎn)之間的路徑距離符合所述預(yù)設(shè)距離閾值的情況下,將所述采樣節(jié)點(diǎn)記錄為與所述目標(biāo)節(jié)點(diǎn)相連的所述樹(shù)節(jié)點(diǎn),并將所述第二節(jié)點(diǎn)記錄為與所述采樣節(jié)點(diǎn)相連的所述樹(shù)節(jié)點(diǎn)。
7、可選地,在多個(gè)所述預(yù)設(shè)節(jié)點(diǎn)路徑中,確定路徑距離最短的所述預(yù)設(shè)節(jié)點(diǎn)路徑為所述目標(biāo)節(jié)點(diǎn)路徑包括:在多個(gè)所述預(yù)設(shè)節(jié)點(diǎn)路徑中,確定路徑距離最短的所述預(yù)設(shè)節(jié)點(diǎn)路徑為第一節(jié)點(diǎn)路徑;剔除所述第一節(jié)點(diǎn)路徑中冗余的所述采樣節(jié)點(diǎn),得到第二節(jié)點(diǎn)路徑,其中,所述第二節(jié)點(diǎn)路徑包括:所述第二節(jié)點(diǎn)路徑包括:所述第一節(jié)點(diǎn)、所述第二節(jié)點(diǎn)和必要節(jié)點(diǎn),所述必要節(jié)點(diǎn)為未被剔除的所述采樣節(jié)點(diǎn);確定所述第二節(jié)點(diǎn)路徑中多個(gè)待擬合節(jié)點(diǎn)的擬合曲線,得到所述目標(biāo)節(jié)點(diǎn)路徑,其中,所述待擬合節(jié)點(diǎn)包括:所述第一節(jié)點(diǎn)、所述第二節(jié)點(diǎn)和所述必要節(jié)點(diǎn)。
8、可選地,剔除所述第一節(jié)點(diǎn)路徑中冗余的所述采樣節(jié)點(diǎn),得第二節(jié)點(diǎn)路徑包括:將所述第一節(jié)點(diǎn)放入預(yù)設(shè)路徑棧;在所述預(yù)設(shè)路徑棧的棧頂節(jié)點(diǎn)發(fā)生改變的情況下,按照從葉子節(jié)點(diǎn)到根節(jié)點(diǎn)的方向遍歷待優(yōu)化隨機(jī)樹(shù)中的每個(gè)樹(shù)節(jié)點(diǎn),直到確定所述必要節(jié)點(diǎn),其中,所述待優(yōu)化隨機(jī)樹(shù)為確定所述第一節(jié)點(diǎn)路徑的所述預(yù)設(shè)隨機(jī)樹(shù),所述待優(yōu)化隨機(jī)樹(shù)中的所述樹(shù)節(jié)點(diǎn)至少包括:所述采樣節(jié)點(diǎn)和所述第二節(jié)點(diǎn),所述必要節(jié)點(diǎn)與所述棧頂節(jié)點(diǎn)之間的棧節(jié)點(diǎn)路徑不經(jīng)過(guò)預(yù)設(shè)障礙區(qū);將所述必要節(jié)點(diǎn)放入所述預(yù)設(shè)路徑棧,直到將所述第二節(jié)點(diǎn)放入所述預(yù)設(shè)路徑棧;根據(jù)所述預(yù)設(shè)路徑棧中記錄的所述第一節(jié)點(diǎn)、所述必要節(jié)點(diǎn)和所述第二節(jié)點(diǎn),確定所述第二節(jié)點(diǎn)路徑。
9、可選地,在所述預(yù)設(shè)路徑棧的棧頂節(jié)點(diǎn)發(fā)生改變的情況下,按照從葉子節(jié)點(diǎn)到根節(jié)點(diǎn)的方向遍歷待優(yōu)化隨機(jī)樹(shù)中的每個(gè)樹(shù)節(jié)點(diǎn),直到確定所述必要節(jié)點(diǎn)包括:在所述預(yù)設(shè)路徑棧的棧頂節(jié)點(diǎn)發(fā)生改變的情況下,按照從葉子節(jié)點(diǎn)到根節(jié)點(diǎn)的方向選取所述樹(shù)節(jié)點(diǎn)作為待檢測(cè)節(jié)點(diǎn);檢測(cè)所述待檢測(cè)節(jié)點(diǎn)與預(yù)設(shè)路徑棧中的棧頂節(jié)點(diǎn)之間的棧節(jié)點(diǎn)路徑是否經(jīng)過(guò)預(yù)設(shè)障礙區(qū);在所述棧節(jié)點(diǎn)路徑未經(jīng)過(guò)所述預(yù)設(shè)障礙區(qū)的情況下,將確定所述棧節(jié)點(diǎn)路徑的所述待檢測(cè)節(jié)點(diǎn)確定為所述必要節(jié)點(diǎn);在所述棧節(jié)點(diǎn)路徑經(jīng)過(guò)所述預(yù)設(shè)障礙區(qū)的情況下,按照從葉子節(jié)點(diǎn)到根節(jié)點(diǎn)的方向選取下一所述樹(shù)節(jié)點(diǎn)作為所述待檢測(cè)節(jié)點(diǎn),直到確定所述必要節(jié)點(diǎn)。
10、可選地,確定所述第二節(jié)點(diǎn)路徑中多個(gè)待擬合節(jié)點(diǎn)的擬合曲線,得到所述目標(biāo)節(jié)點(diǎn)路徑包括:檢測(cè)所述第二節(jié)點(diǎn)路徑中所述待擬合節(jié)點(diǎn)的擬合節(jié)點(diǎn)數(shù)量是否達(dá)到第二數(shù)量閾值;在所述擬合節(jié)點(diǎn)數(shù)量達(dá)到所述第二數(shù)量閾值的情況下,使用曲線依次擬合所述第二節(jié)點(diǎn)路徑中相鄰的所述待擬合節(jié)點(diǎn),得到所述目標(biāo)節(jié)點(diǎn)路徑。
11、可選地,所述方法還包括:在所述擬合節(jié)點(diǎn)數(shù)量未達(dá)到所述第二數(shù)量閾值的情況下,在所述第二節(jié)點(diǎn)路徑中插入擴(kuò)充節(jié)點(diǎn);將所述擴(kuò)充節(jié)點(diǎn)確定為所述待擬合節(jié)點(diǎn),直到所述擬合節(jié)點(diǎn)數(shù)量達(dá)到所述第二數(shù)量閾值。
12、可選地,在所述擬合節(jié)點(diǎn)數(shù)量未達(dá)到所述第二數(shù)量閾值的情況下,在所述第二節(jié)點(diǎn)路徑中插入擴(kuò)充節(jié)點(diǎn)包括:在所述擬合節(jié)點(diǎn)數(shù)量未達(dá)到所述第二數(shù)量閾值的情況下,確定所述第二節(jié)點(diǎn)路徑中相鄰距離最遠(yuǎn)的待擬合節(jié)點(diǎn)對(duì),其中,所述待擬合節(jié)點(diǎn)對(duì)包括:兩個(gè)所述待擬合節(jié)點(diǎn);在所述待擬合節(jié)點(diǎn)對(duì)中兩個(gè)所述待擬合節(jié)點(diǎn)的中間位置插入所述擴(kuò)充節(jié)點(diǎn)。
13、可選地,根據(jù)所述待規(guī)劃節(jié)點(diǎn)集合,確定預(yù)設(shè)路徑種群包括:使用基于貪婪策略的種群初始化,將所述待規(guī)劃節(jié)點(diǎn)集合按照預(yù)設(shè)序列化次數(shù)進(jìn)行序列化處理,得到多個(gè)所述預(yù)設(shè)節(jié)點(diǎn)序列,其中,所述基于貪婪策略的種群初始化用于在每次序列化處理的過(guò)程中,確定本次進(jìn)行序列化處理的預(yù)設(shè)處理策略,并按照所述預(yù)設(shè)處理策略對(duì)所述待規(guī)劃節(jié)點(diǎn)集合進(jìn)行序列化處理,得到所述預(yù)設(shè)節(jié)點(diǎn)序列,所述預(yù)設(shè)處理策略至少包括:基于貪婪策略的個(gè)體初始化和隨機(jī)置亂;連接每個(gè)所述預(yù)設(shè)節(jié)點(diǎn)序列中多對(duì)相鄰所述路徑節(jié)點(diǎn)之間的所述目標(biāo)節(jié)點(diǎn)路徑,生成所述預(yù)設(shè)節(jié)點(diǎn)序列對(duì)應(yīng)的所述預(yù)設(shè)路徑;多個(gè)所述預(yù)設(shè)節(jié)點(diǎn)序列和每個(gè)所述預(yù)設(shè)節(jié)點(diǎn)序列對(duì)應(yīng)的所述預(yù)設(shè)路徑,放入所述預(yù)設(shè)路徑種群。
14、可選地,所述方法還包括:在每次序列化處理的過(guò)程中,生成第一隨機(jī)數(shù);檢測(cè)所述第一隨機(jī)數(shù)是否小于第一貪婪度;在所述第一隨機(jī)數(shù)小于所述第一貪婪度的情況下,使用基于貪婪策略的個(gè)體初始化將所述待規(guī)劃節(jié)點(diǎn)集合中的每個(gè)所述路徑節(jié)點(diǎn)依次放入第一初始節(jié)點(diǎn)序列,得到所述預(yù)設(shè)節(jié)點(diǎn)序列,其中,所述第一初始節(jié)點(diǎn)序列的首位為所述起點(diǎn);在所述第一隨機(jī)數(shù)不小于所述第一貪婪度的情況下,對(duì)所述待規(guī)劃節(jié)點(diǎn)集合進(jìn)行隨機(jī)置亂,得到所述預(yù)設(shè)節(jié)點(diǎn)序列。
15、可選地,在所述第一隨機(jī)數(shù)小于所述第一貪婪度的情況下,使用基于貪婪策略的個(gè)體初始化將所述待規(guī)劃節(jié)點(diǎn)集合中的每個(gè)所述路徑節(jié)點(diǎn)依次放入第一初始節(jié)點(diǎn)序列,得到所述預(yù)設(shè)節(jié)點(diǎn)序列包括:在所述第一隨機(jī)數(shù)小于所述第一貪婪度的情況下,將所述第一初始節(jié)點(diǎn)序列中的最后一個(gè)所述路徑節(jié)點(diǎn)確定為目標(biāo)路徑節(jié)點(diǎn);根據(jù)所述待規(guī)劃節(jié)點(diǎn)集合,確定所述目標(biāo)路徑節(jié)點(diǎn)的候選節(jié)點(diǎn)集合,其中,所述候選節(jié)點(diǎn)集合包括:多個(gè)備選路徑節(jié)點(diǎn),和每個(gè)所述備選路徑節(jié)點(diǎn)的選擇概率,所述備選路徑節(jié)點(diǎn)為所述待規(guī)劃節(jié)點(diǎn)集合中未放入所述第一初始節(jié)點(diǎn)序列中的所述路徑節(jié)點(diǎn),所述選擇概率根據(jù)所述備選路徑節(jié)點(diǎn)與所述目標(biāo)路徑節(jié)點(diǎn)之間的路徑距離確定,路徑距離與所述選擇概率呈反比;在所述候選節(jié)點(diǎn)集合的多個(gè)所述備選路徑節(jié)點(diǎn)中,選取候選路徑節(jié)點(diǎn)放入所述第一初始節(jié)點(diǎn)序列;在選擇候選路徑節(jié)點(diǎn)放入所述第一初始節(jié)點(diǎn)序列之后,將所述候選路徑節(jié)點(diǎn)確定為所述目標(biāo)路徑節(jié)點(diǎn),直到得到所述預(yù)設(shè)節(jié)點(diǎn)序列。
16、可選地,在所述候選節(jié)點(diǎn)集合的多個(gè)所述備選路徑節(jié)點(diǎn)中,選取候選路徑節(jié)點(diǎn)放入所述第一初始節(jié)點(diǎn)序列包括:生成所述目標(biāo)路徑節(jié)點(diǎn)對(duì)應(yīng)的第二隨機(jī)數(shù);在所述第二隨機(jī)數(shù)小于第二貪婪度的情況下,從所述候選節(jié)點(diǎn)集合中,選取所述選擇概率最大的所述備選路徑節(jié)點(diǎn)作為選擇所述候選路徑節(jié)點(diǎn);在所述第二隨機(jī)數(shù)不小于第二貪婪度的情況下,使用輪盤(pán)賭算法從所述候選節(jié)點(diǎn)集合中的多個(gè)所述備選路徑節(jié)點(diǎn)中,隨機(jī)選取所述候選路徑節(jié)點(diǎn),其中,所述輪盤(pán)賭算法用于將所述候選節(jié)點(diǎn)集合中多個(gè)所述備選路徑節(jié)點(diǎn)的所述選擇概率之和放縮為1,并根據(jù)放縮后的所述選擇概率隨機(jī)選擇所述備選路徑節(jié)點(diǎn)作為所述候選路徑節(jié)點(diǎn);將所述候選路徑節(jié)點(diǎn)連接在所述第一初始節(jié)點(diǎn)序列中的所述目標(biāo)路徑節(jié)點(diǎn)之后。
17、可選地,所述方法還包括:在選擇候選路徑節(jié)點(diǎn)放入所述第一初始節(jié)點(diǎn)序列之后,從所述候選節(jié)點(diǎn)集合中刪除所述候選路徑節(jié)點(diǎn);在從所述候選節(jié)點(diǎn)集合中刪除所述候選路徑節(jié)點(diǎn)之后,檢測(cè)所述候選節(jié)點(diǎn)集合是否為空;在所述候選節(jié)點(diǎn)集合為空的情況下,將所述起點(diǎn)連接在所述候選路徑節(jié)點(diǎn)之后。
18、可選地,在所述第一隨機(jī)數(shù)不小于所述第一貪婪度的情況下,對(duì)所述待規(guī)劃節(jié)點(diǎn)集合進(jìn)行隨機(jī)置亂,得到所述預(yù)設(shè)節(jié)點(diǎn)序列包括:在所述第一隨機(jī)數(shù)不小于第一貪婪度的情況下,將所述待規(guī)劃節(jié)點(diǎn)集合中的全部所述路徑節(jié)點(diǎn)進(jìn)行隨機(jī)置亂,得到第二初始節(jié)點(diǎn)序列;確定每個(gè)所述第二初始節(jié)點(diǎn)序列中第一節(jié)點(diǎn)序列和第二節(jié)點(diǎn)序列,其中,所述第一節(jié)點(diǎn)序列為所述初始節(jié)點(diǎn)序列中以所述起點(diǎn)為末位的前段序列,所述第二節(jié)點(diǎn)序列為所述初始節(jié)點(diǎn)序列中以所述起點(diǎn)為首位的后段序列;將所述第一節(jié)點(diǎn)序列移動(dòng)到所述第二節(jié)點(diǎn)序列的末尾,得到每個(gè)所述第二初始節(jié)點(diǎn)對(duì)應(yīng)的所述預(yù)設(shè)節(jié)點(diǎn)序列。
19、可選地,使用預(yù)設(shè)優(yōu)化算法將所述預(yù)設(shè)路徑種群按照預(yù)設(shè)優(yōu)化次數(shù)進(jìn)行優(yōu)化,得到目標(biāo)路徑種群包括:在每次優(yōu)化過(guò)程中,檢測(cè)所述預(yù)設(shè)路徑種群中每個(gè)所述預(yù)設(shè)路徑的適應(yīng)度,其中,所述適應(yīng)度根據(jù)所述預(yù)設(shè)路徑的總路徑距離確定,且所述適應(yīng)度與所述總路徑距離呈正比;在所述預(yù)設(shè)路徑種群中選取所述適應(yīng)度最大的多個(gè)所述預(yù)設(shè)路徑,作為符合所述預(yù)設(shè)條件的多個(gè)所述精英路徑;將所述預(yù)設(shè)路徑種群中的每個(gè)所述預(yù)設(shè)路徑與多個(gè)所述精英路徑按照適應(yīng)度由高到低的順序依次進(jìn)行融合,得到每個(gè)所述預(yù)設(shè)路徑對(duì)應(yīng)的目標(biāo)合并路徑;根據(jù)多個(gè)所述目標(biāo)合并路徑更新所述預(yù)設(shè)路徑種群,并再次進(jìn)行優(yōu)化,直到達(dá)到所述預(yù)設(shè)優(yōu)化次數(shù)。
20、可選地,多個(gè)所述精英路徑至少包括按照適應(yīng)度從大到小排列的第一精英路徑、第二精英路徑和第三精英路徑,將所述預(yù)設(shè)路徑種群中的每個(gè)所述預(yù)設(shè)路徑與多個(gè)所述精英路徑按照適應(yīng)度由高到低的順序依次進(jìn)行融合,得到每個(gè)所述預(yù)設(shè)路徑對(duì)應(yīng)的目標(biāo)合并路徑包括:將所述預(yù)設(shè)路徑種群中的所述預(yù)設(shè)路徑與所述第一精英路徑進(jìn)行融合,得到第一合并路徑;將第一合并路徑與第二精英路徑進(jìn)行融合,得到第二合并路徑;將所述第二合并路徑與所述第三精英路徑進(jìn)行融合,得到第三合并路徑;將所述第三合并路徑,確定為所述預(yù)設(shè)路徑對(duì)應(yīng)的所述目標(biāo)合并路徑。
21、可選地,所述方法還包括:在將每個(gè)所述預(yù)設(shè)路徑與每個(gè)所述精英路徑進(jìn)行融合的情況下,從所述預(yù)設(shè)路徑種群中隨機(jī)選取所述預(yù)設(shè)路徑作為待優(yōu)化路徑;檢測(cè)所述待優(yōu)化路徑是否屬于所述精英路徑;在所述待優(yōu)化路徑不屬于所述精英路徑的情況下,使用預(yù)設(shè)包圍操作基于所述待優(yōu)化路徑生成所述目標(biāo)合并路徑,其中,所述預(yù)設(shè)包圍操作用于在所述待優(yōu)化路徑中隨機(jī)選擇所述路徑節(jié)點(diǎn)作為第一目標(biāo)節(jié)點(diǎn);在所述精英路徑中確定與所述第一目標(biāo)節(jié)點(diǎn)相鄰的所述路徑節(jié)點(diǎn)為第二目標(biāo)節(jié)點(diǎn);在所述待優(yōu)化路徑中截取所述第一目標(biāo)節(jié)點(diǎn)與所述第二目標(biāo)節(jié)點(diǎn)之間且包括所述第二目標(biāo)節(jié)點(diǎn)的多個(gè)所述路徑節(jié)點(diǎn),得到第一預(yù)設(shè)節(jié)點(diǎn)子序列;將所述第一預(yù)設(shè)節(jié)點(diǎn)子序列逆序后插入所述待優(yōu)化路徑,使所述第二目標(biāo)節(jié)點(diǎn)與所述第一目標(biāo)節(jié)點(diǎn)相鄰;在所述待優(yōu)化路徑屬于所述精英路徑的情況下,使用預(yù)設(shè)進(jìn)攻操作基于所述待優(yōu)化路徑生成所述目標(biāo)合并路徑,其中,所述預(yù)設(shè)進(jìn)攻操作用于在所述待優(yōu)化路徑中隨機(jī)截取第二預(yù)設(shè)節(jié)點(diǎn)子序列,并將所述第二預(yù)設(shè)節(jié)點(diǎn)子序列逆序后插入原位置。
22、在本發(fā)明實(shí)施例中,獲取待規(guī)劃節(jié)點(diǎn)集合,其中,待規(guī)劃節(jié)點(diǎn)集合包括:多個(gè)路徑節(jié)點(diǎn),多個(gè)路徑節(jié)點(diǎn)包括:起點(diǎn)和至少一個(gè)任務(wù)點(diǎn);根據(jù)待規(guī)劃節(jié)點(diǎn)集合,確定預(yù)設(shè)路徑種群,其中,預(yù)設(shè)路徑種群包括:多個(gè)預(yù)設(shè)節(jié)點(diǎn)序列分別對(duì)應(yīng)的預(yù)設(shè)路徑,每個(gè)預(yù)設(shè)節(jié)點(diǎn)序列的兩端均為起點(diǎn),且每個(gè)預(yù)設(shè)節(jié)點(diǎn)序列包括待規(guī)劃節(jié)點(diǎn)集合中的全部任務(wù)點(diǎn),每個(gè)預(yù)設(shè)路徑包括:預(yù)設(shè)節(jié)點(diǎn)序列中每對(duì)相鄰的路徑節(jié)點(diǎn)之間的目標(biāo)節(jié)點(diǎn)路徑;使用預(yù)設(shè)優(yōu)化算法將預(yù)設(shè)路徑種群按照預(yù)設(shè)優(yōu)化次數(shù)進(jìn)行優(yōu)化,得到目標(biāo)路徑種群,其中,預(yù)設(shè)優(yōu)化算法用于在每次優(yōu)化過(guò)程中,從預(yù)設(shè)路徑種群確定總路徑距離符合預(yù)設(shè)條件的多個(gè)精英路徑,并將預(yù)設(shè)路徑種群中的每個(gè)預(yù)設(shè)路徑與多個(gè)精英路徑依次進(jìn)行融合,目標(biāo)路徑種群包括:經(jīng)過(guò)預(yù)設(shè)優(yōu)化次數(shù)后每個(gè)預(yù)設(shè)路徑對(duì)應(yīng)的優(yōu)化路徑;在目標(biāo)路徑種群中,確定總路徑距離最短的優(yōu)化路徑為目標(biāo)路徑,從而可以利用灰狼優(yōu)化算法在預(yù)設(shè)路徑種群中選出精英路徑,并基于該精英路徑對(duì)預(yù)設(shè)路徑種群中的預(yù)設(shè)路徑進(jìn)行優(yōu)化,可以提高路徑優(yōu)化效率,達(dá)到了對(duì)規(guī)劃路徑進(jìn)行快速優(yōu)化的目的,實(shí)現(xiàn)了提高路徑規(guī)劃效率的技術(shù)效果,進(jìn)而解決了無(wú)人機(jī)三維航跡規(guī)劃效果差技術(shù)問(wèn)題。