欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于遺傳算法的空間碎片主動(dòng)清除任務(wù)規(guī)劃方法與流程

文檔序號(hào):12906575閱讀:681來(lái)源:國(guó)知局
基于遺傳算法的空間碎片主動(dòng)清除任務(wù)規(guī)劃方法與流程

本發(fā)明涉及一種空間碎片主動(dòng)清除任務(wù)規(guī)劃方法。



背景技術(shù):

近年來(lái),隨著航天技術(shù)的不斷發(fā)展,人類航天活動(dòng)越來(lái)越頻繁。與此同時(shí),空間碎片以指數(shù)速度增加,成為未來(lái)空間資源有效利用所面臨的一個(gè)嚴(yán)峻挑戰(zhàn)。盡管為了應(yīng)對(duì)太空碎片的威脅,一些規(guī)避、防護(hù)等被動(dòng)的措施已經(jīng)廣泛采用,但是為從根本上治理空間環(huán)境,還需要采取主動(dòng)清除措施,所以開展對(duì)空間碎片的在軌主動(dòng)清除研究具有重要意義。空間碎片的清除工具主要包括機(jī)械臂、飛網(wǎng)、充氣式結(jié)構(gòu)、標(biāo)槍繩以及靜電吸附毯。機(jī)械臂在高轉(zhuǎn)矩或剛性結(jié)構(gòu)點(diǎn)捕獲時(shí)性能最好,其技術(shù)成熟且有多個(gè)自由度,便于推力調(diào)整;飛網(wǎng)具有質(zhì)量輕并且成本低的優(yōu)點(diǎn),適合抓取形狀不規(guī)則的空間碎片,但是不能控制碎片的角自由度;充氣式結(jié)構(gòu)同樣具有質(zhì)量輕和成本低的優(yōu)點(diǎn),但是充氣式結(jié)構(gòu)容易發(fā)生泄漏;標(biāo)槍繩適合牽引推力器,但同樣缺乏對(duì)碎片角自由度的控制;套索可以將碎片套住,降低碎片的角速度;靜電吸附毯非常輕,常用于初始接觸和捕獲。

現(xiàn)有的任務(wù)規(guī)劃方法分類如下:

(1)集中式任務(wù)規(guī)劃系統(tǒng)

在集中式任務(wù)規(guī)劃系統(tǒng)中,任務(wù)分配、路徑規(guī)劃等均由地面控制站或者任務(wù)執(zhí)行機(jī)構(gòu)中的leader完成,其他的任務(wù)執(zhí)行機(jī)構(gòu)處于從屬地位,本身沒(méi)有自主決策能力,在整個(gè)系統(tǒng)中充當(dāng)?shù)氖且?guī)劃決定的執(zhí)行者。這種任務(wù)分配的缺點(diǎn)是計(jì)算量以及信息傳輸量都比較大,給通信網(wǎng)絡(luò)帶來(lái)了很大的負(fù)擔(dān)。并且對(duì)任務(wù)重新規(guī)劃的能力比較弱,對(duì)環(huán)境變化的反應(yīng)較慢。

(2)分布式任務(wù)規(guī)劃系統(tǒng)

在分布式任務(wù)規(guī)劃系統(tǒng)中,每一個(gè)任務(wù)執(zhí)行機(jī)構(gòu)都具有自主決策能力。它們相互連接、影響和通信,并且都有一定的感知、測(cè)量、存儲(chǔ)和計(jì)算的能力。任務(wù)規(guī)劃由系統(tǒng)中的每個(gè)執(zhí)行機(jī)構(gòu)完成。與集中式任務(wù)規(guī)劃相比,分布式任務(wù)規(guī)劃具有更好的實(shí)時(shí)性、容錯(cuò)性、開放性。另外,分布式任務(wù)規(guī)劃在計(jì)算量、運(yùn)行成本、系統(tǒng)限制、魯棒性、擴(kuò)展性等方面有著巨大的優(yōu)勢(shì)。而實(shí)現(xiàn)分布式任務(wù)規(guī)劃采用最多的方法就是多agent方法。agent理論和技術(shù),特別是多agent技術(shù)的理論和技術(shù),為分布式任務(wù)規(guī)劃的分析、設(shè)計(jì)和實(shí)現(xiàn)提供了一條嶄新的途徑。多執(zhí)行機(jī)構(gòu)的任務(wù)規(guī)劃問(wèn)題可以很自然的表達(dá)成一個(gè)多agent網(wǎng)絡(luò),這個(gè)網(wǎng)絡(luò)系統(tǒng)在物理上就是一個(gè)分布式系統(tǒng)。

針對(duì)于任務(wù)規(guī)劃任務(wù),也會(huì)有研究人員想到利用遺傳算法進(jìn)行任務(wù)規(guī)劃,但是目前的利用遺傳算法進(jìn)行任務(wù)規(guī)劃系統(tǒng)或者方法,中采用不同的編碼方式,常常對(duì)于算法的性能產(chǎn)生重要影響。遺傳算法中最重要的編碼就是由holland提出的二進(jìn)制編碼。它采用最小字符編碼原則,優(yōu)點(diǎn)是便于進(jìn)行編/解碼操作,交叉、變異操作易于實(shí)現(xiàn)。缺點(diǎn)是在用于多維、高精度數(shù)值問(wèn)題優(yōu)化時(shí),不能不能很好地克服連續(xù)函數(shù)離散化時(shí)的映射誤差;二進(jìn)制編碼同樣不能反映問(wèn)題的固有結(jié)構(gòu),同時(shí)也存在精度不高、個(gè)體長(zhǎng)度達(dá)、內(nèi)存占用高等問(wèn)題。如果采用其他編碼方式則會(huì)給遺產(chǎn)過(guò)程的交叉和變異操作造成問(wèn)題,使優(yōu)化過(guò)程容易陷入局部最優(yōu)。

針對(duì)平臺(tái)利用載荷清除跨尺度、多數(shù)據(jù)量、長(zhǎng)期性空間碎片的任務(wù),需要研究平臺(tái)的實(shí)時(shí)任務(wù)規(guī)劃問(wèn)題。以往大多數(shù)任務(wù)規(guī)劃研究都集中于地面任務(wù),針對(duì)空間任務(wù)規(guī)劃問(wèn)題的研究比較少,且大部分集中于理論,以實(shí)際空間任務(wù)為背景的任務(wù)規(guī)劃則更少。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明為了解決現(xiàn)有的遺傳算法的編碼方式和交叉、變異操作容易導(dǎo)致空間碎片主動(dòng)清除任務(wù)規(guī)劃陷入局部最優(yōu)的問(wèn)題。

基于遺傳算法的空間碎片主動(dòng)清除任務(wù)規(guī)劃方法,包括以下步驟:

步驟1、編碼:

碎片清除任務(wù)考慮采用機(jī)械臂進(jìn)行碎片抓取,機(jī)械臂從平臺(tái)觸發(fā)進(jìn)行碎片清除;

設(shè)碎片的數(shù)量為n-1;考慮將平臺(tái)視為第1個(gè)城市,碎片作為第2~n個(gè)城市;以城市的遍歷次序作為編碼,即(z1,z2,...,zn)是{1,2,...,n}的一個(gè)全排列,其中z1,z2,...,zn表示每次遍歷所有城市的次序,將每次遍歷所有城市的次序z1,z2,...,zn作為編碼;共有(n-1)!種可能,!表示階乘;將每種可能產(chǎn)生的次序編碼作為個(gè)體,所有可能的次序編碼組合起來(lái)作為初始種群;

步驟2、初始化群體:

根據(jù)碎片清除任務(wù)所給出的碎片相對(duì)位置得到各個(gè)城市間的距離矩陣;距離矩陣表示在空間中隨機(jī)分布的空間碎片之間的位置關(guān)系;

定義哈密頓圈的長(zhǎng)度為機(jī)械臂從平臺(tái)出發(fā)清除所有碎片后回到平臺(tái)所經(jīng)歷的路徑長(zhǎng)度其中ci表示次序編碼中zi所對(duì)應(yīng)的城市,ci+1表示zi+1對(duì)應(yīng)的城市;d(ci,ci+1)表示兩個(gè)城市之間的距離;以哈密頓圈的長(zhǎng)度的倒數(shù)作為適應(yīng)度函數(shù);

初始化群體、種群大小m、最大迭代次數(shù)t1、交叉概率pc=0.5、變異概率pm=0.01;

步驟3、個(gè)體適應(yīng)度計(jì)算:

計(jì)算每個(gè)個(gè)體的適應(yīng)度:

步驟4、選擇中間群體:

計(jì)算種群中所有個(gè)體的適應(yīng)度總和;

計(jì)算每個(gè)個(gè)體的相對(duì)適應(yīng)度大小,即各個(gè)個(gè)體在選擇操作中被選中的概率;使用模擬賭盤操作,來(lái)確定各個(gè)個(gè)體被選中的次數(shù),得到中間群體;

具體過(guò)程包括以下步驟:

步驟4.1、首先計(jì)算出計(jì)算種群中所有個(gè)體的適應(yīng)度總和其中f(j)為個(gè)體j的適應(yīng)度;

步驟4.2、計(jì)算每個(gè)個(gè)體被遺傳到下一代群體中的概率:

步驟4.3、并算出每個(gè)個(gè)體的累積概率:

步驟4.4、接下來(lái)要在[0,1]區(qū)間產(chǎn)生一個(gè)均勻分布的偽隨機(jī)數(shù)r;

步驟4.5、若r<q1,則選擇個(gè)體1;否則,選擇個(gè)體i,使得:qi≤r≤qi+1成立;

步驟4.6、重復(fù)步驟4.4、步驟4.5共計(jì)m次完成選擇操作,得到中間群體;

步驟5、交叉操作:

對(duì)選擇操作得到的中間群體進(jìn)行以下操作:以交叉概率pc從中間群體中隨機(jī)地選出需要進(jìn)行交叉的個(gè)體,對(duì)這些個(gè)體隨機(jī)地兩兩配對(duì);在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)k和l;k,l表示交叉點(diǎn)的位置;對(duì)已經(jīng)配對(duì)的兩個(gè)個(gè)體分別記為個(gè)體a和個(gè)體b,取出個(gè)體a和個(gè)體b編碼中第k位與l之間的基因片段,分別記為a和b;將基因片段a與個(gè)體b進(jìn)行比對(duì),將個(gè)體b每位上的編碼與基因片段a每位上的編碼相同的編碼刪除,形成編碼片段β,并將基因片段a連接在編碼片段β的后面形成個(gè)體b′,個(gè)體b′為個(gè)體b交叉后的個(gè)體;

利用基因片段b對(duì)個(gè)體a進(jìn)行相同的交叉操作,得到個(gè)體b交叉后的個(gè)體a′;

步驟6、變異操作:

針對(duì)交叉操作之后的群體,以變異概率pm隨機(jī)地從群體中選出的個(gè)體上,首先在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)g,h;這兩個(gè)數(shù)表示變異點(diǎn)的位置;將個(gè)體編碼中第g位與h位上對(duì)應(yīng)的基因互換,得到變異后的個(gè)體;

步驟7、確定清除的任務(wù)規(guī)劃:

針對(duì)變異后的群體,返回步驟3,直至最大迭代次數(shù)t1,結(jié)束操作,得到機(jī)械臂從平臺(tái)觸發(fā)進(jìn)行碎片清除的任務(wù)規(guī)劃。

基于遺傳算法的空間碎片主動(dòng)清除任務(wù)規(guī)劃方法,包括以下步驟:

步驟1、編碼:

設(shè)碎片的數(shù)量為n-1;考慮將平臺(tái)視為第1個(gè)城市,碎片作為第2~n個(gè)城市;以城市的遍歷次序作為編碼,即(z1,z2,...,zn)是{1,2,...,n}的一個(gè)全排列,其中z1,z2,...,zn表示每次遍歷所有城市的次序,將每次遍歷所有城市的次序z1,z2,...,zn作為編碼;共有(n-1)!種可能,!表示階乘;將每種可能產(chǎn)生的次序編碼作為個(gè)體,所有可能的次序編碼組合起來(lái)作為初始種群;

采用機(jī)械臂和飛網(wǎng)結(jié)合進(jìn)行抓取規(guī)劃,當(dāng)n-1為偶數(shù)時(shí),飛網(wǎng)需要抓取個(gè)碎片,機(jī)械臂抓取個(gè)碎片;當(dāng)n-1為奇數(shù)時(shí),飛網(wǎng)需要抓取個(gè)碎片,機(jī)械臂抓取個(gè)碎片;

為處理問(wèn)題的方便,當(dāng)n-1為偶數(shù)時(shí),設(shè)定遺傳算法的編碼序列z1,z2,...,zn的前一半的序列為飛網(wǎng)的抓捕目標(biāo)序列,后一半的序列為機(jī)械臂的抓捕目標(biāo)序列;當(dāng)n-1為奇數(shù)時(shí),前一半的序列為飛網(wǎng)的抓捕目標(biāo)序列,后一半的序列為機(jī)械臂的抓捕目標(biāo)序列;

步驟2、初始化群體:

根據(jù)碎片清除任務(wù)所給出的碎片相對(duì)位置得到各個(gè)城市間的距離矩陣;距離矩陣表示在空間中隨機(jī)分布的空間碎片之間的位置關(guān)系;

初始化:飛網(wǎng)每次抓捕兩個(gè)目標(biāo),飛網(wǎng)抓取碎片的單位距離所花費(fèi)的時(shí)間記為t1,每次抓捕兩個(gè)目標(biāo)需要消耗的能量記為q1;機(jī)械臂抓取碎片的單位距離所花費(fèi)的時(shí)間記為t2,每次抓捕單個(gè)目標(biāo)需要消耗的能量記為q2;

d(ci,ci+1)表示兩個(gè)城市之間的距離;ci表示次序編碼中zi所對(duì)應(yīng)的城市,ci+1表示zi+1對(duì)應(yīng)的城市;

初始化群體、種群大小m、最大迭代次數(shù)t1、交叉概率pc=0.5、變異概率pm=0.01;

步驟3、個(gè)體適應(yīng)度計(jì)算:

計(jì)算每個(gè)個(gè)體的適應(yīng)度:

當(dāng)n-1為偶數(shù)時(shí)

當(dāng)n-1為奇數(shù)時(shí)

其中k為加權(quán)系數(shù);

步驟4、選擇中間群體:

計(jì)算種群中所有個(gè)體的適應(yīng)度總和;

計(jì)算每個(gè)個(gè)體的相對(duì)適應(yīng)度大小,即各個(gè)個(gè)體在選擇操作中被選中的概率;使用模擬賭盤操作,來(lái)確定各個(gè)個(gè)體被選中的次數(shù),得到中間群體;

步驟4的具體過(guò)程包括以下步驟:

步驟4.1、首先計(jì)算出計(jì)算種群中所有個(gè)體的適應(yīng)度總和其中f(j)為個(gè)體j的適應(yīng)度;

步驟4.2、計(jì)算每個(gè)個(gè)體被遺傳到下一代群體中的概率:

步驟4.3、并算出每個(gè)個(gè)體的累積概率:

步驟4.4、接下來(lái)要在[0,1]區(qū)間產(chǎn)生一個(gè)均勻分布的偽隨機(jī)數(shù)r;

步驟4.5、若r<q1,則選擇個(gè)體1;否則,選擇個(gè)體i,使得:qi≤r≤qi+1成立;

步驟4.6、重復(fù)步驟4.4、步驟4.5共計(jì)m次完成選擇操作,得到中間群體;

步驟5、交叉操作:

對(duì)選擇操作得到的中間群體進(jìn)行以下操作:以交叉概率pc從中間群體中隨機(jī)地選出需要進(jìn)行交叉的個(gè)體,對(duì)這些個(gè)體隨機(jī)地兩兩配對(duì);在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)k和l;k,l表示交叉點(diǎn)的位置;對(duì)已經(jīng)配對(duì)的兩個(gè)個(gè)體分別記為個(gè)體a和個(gè)體b,取出個(gè)體a和個(gè)體b編碼中第k位與l之間的基因片段,分別記為a和b;將基因片段a與個(gè)體b進(jìn)行比對(duì),將個(gè)體b每位上的編碼與基因片段a每位上的編碼相同的編碼刪除,形成編碼片段β,并將基因片段a連接在編碼片段β的后面形成個(gè)體b′,個(gè)體b′為個(gè)體b交叉后的個(gè)體;

利用基因片段b對(duì)個(gè)體a進(jìn)行相同的交叉操作,得到個(gè)體b交叉后的個(gè)體a′;

步驟6、變異操作:

針對(duì)交叉操作之后的群體,以變異概率pm隨機(jī)地從群體中選出的個(gè)體上,首先在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)g,h;這兩個(gè)數(shù)表示變異點(diǎn)的位置;將個(gè)體編碼中第g位與h位上對(duì)應(yīng)的基因互換,得到變異后的個(gè)體;

步驟7、確定清除的任務(wù)規(guī)劃:

針對(duì)變異后的群體,返回步驟3,直至最大迭代次數(shù)t1,結(jié)束操作,得到飛網(wǎng)和機(jī)械臂從平臺(tái)觸發(fā)進(jìn)行碎片清除的任務(wù)規(guī)劃。

本發(fā)明的有益效果:

本發(fā)明將任務(wù)規(guī)劃的方法用到碎片抓捕路徑優(yōu)化問(wèn)題上,首先針對(duì)平臺(tái)的任務(wù)特點(diǎn),設(shè)定碎片清除任務(wù);然后將平臺(tái)任務(wù)規(guī)劃問(wèn)題數(shù)學(xué)建模為旅行商城市路徑最短問(wèn)題。針對(duì)于空間碎片的特點(diǎn)分別設(shè)計(jì)了適用于機(jī)械臂抓捕方案的適應(yīng)度函數(shù)以及適用于飛網(wǎng)和機(jī)械臂抓捕方案的適應(yīng)度函數(shù);并設(shè)定特定的遺傳參數(shù),采用遺傳算法進(jìn)行優(yōu)化求解,不僅不容易陷入局部最優(yōu),使整個(gè)任務(wù)的總體性能指標(biāo)達(dá)到最優(yōu),而且收斂速度快,任務(wù)規(guī)劃容易實(shí)現(xiàn)。

仿真驗(yàn)證了本發(fā)明的有效性。并且中考慮了空間碎片的實(shí)際分布情況,并全面考慮了抓捕碎片的實(shí)際過(guò)程中的多種約束條件,算法收斂速度快,結(jié)果誤差小。綜上,本通過(guò)平臺(tái)任務(wù)規(guī)劃可以實(shí)現(xiàn)平臺(tái)清除碎片過(guò)程中以最優(yōu)路徑進(jìn)行快速補(bǔ)充、更換與抓捕。

僅用機(jī)械臂進(jìn)行碎片抓捕的情況,本發(fā)明的收斂速度非??欤诜N群數(shù)量少于100,即迭代次數(shù)小于100的情況下就可以找到全局最優(yōu)解。由于平臺(tái)任務(wù)所設(shè)定的相關(guān)數(shù)據(jù)具有較大的對(duì)稱性,所以最優(yōu)解所對(duì)應(yīng)的最優(yōu)序列不唯一。隨著種群數(shù)量的增加,初始迭代所得到的最優(yōu)路徑會(huì)比較大,但最終仍然可以較快收斂到最優(yōu)值。針對(duì)于本任務(wù)節(jié)點(diǎn)數(shù)為8個(gè),空間碎片的尺度范圍為10m,載荷可以同時(shí)處理8個(gè)任務(wù)節(jié)點(diǎn),因此,本發(fā)明的技術(shù)指標(biāo)達(dá)到良好的捕捉效果。

利用飛網(wǎng)和機(jī)械臂抓捕碎片的情況,本發(fā)明的收斂速度非??欤诜N群數(shù)量少于100,迭代次數(shù)小于100的情況下就可以找到局部最優(yōu)解。由于空間碎片成不規(guī)則分布,所以可以得到唯一的全局最優(yōu)解。針對(duì)于本任務(wù)節(jié)點(diǎn)數(shù)為8個(gè),空間碎片的尺度范圍為10m,載荷可以同時(shí)處理8個(gè)任務(wù)節(jié)點(diǎn),因此,本發(fā)明的技術(shù)指標(biāo)達(dá)到良好的捕捉效果。

附圖說(shuō)明

圖1是實(shí)施例中通過(guò)機(jī)械臂進(jìn)行抓捕碎片的最優(yōu)抓捕路徑;

圖2是實(shí)施例中通過(guò)飛網(wǎng)和機(jī)械臂結(jié)合進(jìn)行碎片抓捕的最優(yōu)抓捕路徑。

具體實(shí)施方式

具體實(shí)施方式一:

基于遺傳算法的空間碎片主動(dòng)清除任務(wù)規(guī)劃方法,包括以下步驟:

步驟1、編碼:

碎片清除任務(wù)考慮采用機(jī)械臂進(jìn)行碎片抓取,機(jī)械臂從平臺(tái)觸發(fā)進(jìn)行碎片清除;

設(shè)碎片的數(shù)量為n-1;考慮將平臺(tái)視為第1個(gè)城市,碎片作為第2~n個(gè)城市;以城市的遍歷次序作為編碼,即(z1,z2,...,zn)是{1,2,...,n}的一個(gè)全排列,其中z1,z2,...,zn表示每次遍歷所有城市的次序,將每次遍歷所有城市的次序z1,z2,...,zn作為編碼;共有(n-1)!種可能,!表示階乘;將每種可能產(chǎn)生的次序編碼作為個(gè)體,所有可能的次序編碼組合起來(lái)作為初始種群;

步驟2、初始化群體:

根據(jù)碎片清除任務(wù)所給出的碎片相對(duì)位置得到各個(gè)城市間的距離矩陣;距離矩陣表示在空間中隨機(jī)分布的空間碎片之間的位置關(guān)系;

定義哈密頓圈的長(zhǎng)度為機(jī)械臂從平臺(tái)出發(fā)清除所有碎片后回到平臺(tái)所經(jīng)歷的路徑長(zhǎng)度其中ci表示次序編碼中zi所對(duì)應(yīng)的城市,ci+1表示zi+1對(duì)應(yīng)的城市;d(ci,ci+1)表示兩個(gè)城市之間的距離;因?yàn)樗_(dá)到的目標(biāo)是使得機(jī)械臂所經(jīng)歷的路徑長(zhǎng)度最短,即以最短的時(shí)間,最省的燃料來(lái)完成整個(gè)空間碎片的清除任務(wù),所以可以轉(zhuǎn)化為求是目標(biāo)函數(shù)最小值的優(yōu)化問(wèn)題;因此以哈密頓圈的長(zhǎng)度的倒數(shù)作為適應(yīng)度函數(shù);

初始化群體、種群大小m、最大迭代次數(shù)t1、交叉概率pc=0.5、變異概率pm=0.01;

步驟3、個(gè)體適應(yīng)度計(jì)算:

計(jì)算每個(gè)個(gè)體的適應(yīng)度:

步驟4、選擇中間群體:

計(jì)算種群中所有個(gè)體的適應(yīng)度總和;

計(jì)算每個(gè)個(gè)體的相對(duì)適應(yīng)度大小,即各個(gè)個(gè)體在選擇操作中被選中的概率;使用模擬賭盤操作,來(lái)確定各個(gè)個(gè)體被選中的次數(shù),得到中間群體;

步驟5、交叉操作:

對(duì)選擇操作得到的中間群體進(jìn)行以下操作:以交叉概率pc從中間群體中隨機(jī)地選出需要進(jìn)行交叉的個(gè)體,對(duì)這些個(gè)體隨機(jī)地兩兩配對(duì);在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)k和l;k,l表示交叉點(diǎn)的位置;對(duì)已經(jīng)配對(duì)的兩個(gè)個(gè)體分別記為個(gè)體a和個(gè)體b,取出個(gè)體a和個(gè)體b編碼中第k位與l之間的基因片段,分別記為a和b;將基因片段a與個(gè)體b進(jìn)行比對(duì),將個(gè)體b每位上的編碼與基因片段a每位上的編碼相同的編碼刪除,形成編碼片段β,并將基因片段a連接在編碼片段β的后面形成個(gè)體b′,個(gè)體b′為個(gè)體b交叉后的個(gè)體;

利用基因片段b對(duì)個(gè)體a進(jìn)行相同的交叉操作,得到個(gè)體b交叉后的個(gè)體a′;

步驟6、變異操作:

針對(duì)交叉操作之后的群體,以變異概率pm隨機(jī)地從群體中選出的個(gè)體上,首先在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)g,h;這兩個(gè)數(shù)表示變異點(diǎn)的位置;將個(gè)體編碼中第g位與h位上對(duì)應(yīng)的基因互換,得到變異后的個(gè)體;

步驟7、確定清除的任務(wù)規(guī)劃:

針對(duì)變異后的群體,返回步驟3,直至最大迭代次數(shù)t1,結(jié)束操作,得到機(jī)械臂從平臺(tái)觸發(fā)進(jìn)行碎片清除的任務(wù)規(guī)劃。

過(guò)去,針對(duì)平臺(tái)利用載荷清除跨尺度、多數(shù)據(jù)量、長(zhǎng)期性空間碎片的任務(wù),需要研究平臺(tái)的實(shí)時(shí)任務(wù)規(guī)劃問(wèn)題。以往大多數(shù)任務(wù)規(guī)劃研究都集中于地面任務(wù),針對(duì)空間任務(wù)規(guī)劃問(wèn)題的研究比較少,且大部分集中于理論,以實(shí)際空間任務(wù)為背景的任務(wù)規(guī)劃則更少。而本發(fā)明以空間碎片清除為任務(wù)背景,將任務(wù)規(guī)劃的方法用到碎片抓捕路徑優(yōu)化問(wèn)題上,研究平臺(tái)如何實(shí)時(shí)規(guī)劃每項(xiàng)任務(wù)的執(zhí)行順序及執(zhí)行路徑,并使整個(gè)任務(wù)的總體性能指標(biāo)達(dá)到最優(yōu)。

同時(shí),在以往的任務(wù)規(guī)劃理論研究中也有研究人員考慮用遺傳算法進(jìn)行,但是采用的編碼方式會(huì)給遺產(chǎn)過(guò)程的交叉和變異操作造成問(wèn)題,使優(yōu)化過(guò)程容易陷入局部最優(yōu)。而本發(fā)明則很好的解決了這個(gè)問(wèn)題,使整個(gè)任務(wù)的總體性能指標(biāo)達(dá)到最優(yōu),并且能夠?qū)嶋H應(yīng)用于實(shí)際任務(wù)規(guī)劃和清除空間碎片。

具體實(shí)施方式二:

本實(shí)施方式步驟4的具體過(guò)程包括以下步驟:

步驟4.1、首先計(jì)算出計(jì)算種群中所有個(gè)體的適應(yīng)度總和其中f(j)為個(gè)體j的適應(yīng)度;

步驟4.2、計(jì)算每個(gè)個(gè)體被遺傳到下一代群體中的概率:

步驟4.3、并算出每個(gè)個(gè)體的累積概率:

步驟4.4、接下來(lái)要在[0,1]區(qū)間產(chǎn)生一個(gè)均勻分布的偽隨機(jī)數(shù)r;

步驟4.5、若r<q1,則選擇個(gè)體1;否則,選擇個(gè)體i,使得:qi≤r≤qi+1成立;

步驟4.6、重復(fù)步驟4.4、步驟4.5共計(jì)m次完成選擇操作,得到中間群體。

其他步驟和參數(shù)與具體實(shí)施方式一相同。

具體實(shí)施方式三:

本實(shí)施方式所述的t1=1000。在空間碎片少于12個(gè)時(shí),只需要將t1設(shè)為1000就能使總體性能指標(biāo)達(dá)到最優(yōu),且耗費(fèi)時(shí)間短、收斂速度快。

其他步驟和參數(shù)與具體實(shí)施方式一或二相同。

具體實(shí)施方式四:

本實(shí)施方式所述的設(shè)碎片的數(shù)量為8個(gè),也就是n-1=8。當(dāng)空間碎片少于12個(gè)時(shí),只需要將t1設(shè)為1000就能使總體性能指標(biāo)達(dá)到最優(yōu),且耗費(fèi)時(shí)間短、收斂速度快。并且當(dāng)式述的設(shè)碎片的數(shù)量為8個(gè),利用以上設(shè)置的參數(shù)進(jìn)行任務(wù)規(guī)劃時(shí),在保證總體性能指標(biāo)達(dá)到最優(yōu)的前提下,耗費(fèi)時(shí)間最短、收斂速度最快。

其他步驟和參數(shù)與具體實(shí)施方式一至三之一相同。

具體實(shí)施方式五:

基于遺傳算法的空間碎片主動(dòng)清除任務(wù)規(guī)劃方法,包括以下步驟:

步驟1、編碼:

設(shè)碎片的數(shù)量為n-1;考慮將平臺(tái)視為第1個(gè)城市,碎片作為第2~n個(gè)城市;以城市的遍歷次序作為編碼,即(z1,z2,...,zn)是{1,2,...,n}的一個(gè)全排列,其中z1,z2,...,zn表示每次遍歷所有城市的次序,將每次遍歷所有城市的次序z1,z2,...,zn作為編碼;共有(n-1)!種可能,!表示階乘;將每種可能產(chǎn)生的次序編碼作為個(gè)體,所有可能的次序編碼組合起來(lái)作為初始種群;

采用機(jī)械臂和飛網(wǎng)結(jié)合進(jìn)行抓取規(guī)劃,當(dāng)n-1為偶數(shù)時(shí),飛網(wǎng)需要抓取個(gè)碎片,機(jī)械臂抓取個(gè)碎片;當(dāng)n-1為奇數(shù)時(shí),飛網(wǎng)需要抓取個(gè)碎片,機(jī)械臂抓取個(gè)碎片;

為處理問(wèn)題的方便,當(dāng)n-1為偶數(shù)時(shí),設(shè)定遺傳算法的編碼序列z1,z2,...,zn的前一半的序列為飛網(wǎng)的抓捕目標(biāo)序列,后一半的序列為機(jī)械臂的抓捕目標(biāo)序列;當(dāng)n-1為奇數(shù)時(shí),前一半的序列為飛網(wǎng)的抓捕目標(biāo)序列,后一半的序列為機(jī)械臂的抓捕目標(biāo)序列;值得注意的是,由于遺傳算法通過(guò)定義自適應(yīng)度函數(shù),并通過(guò)遺傳和變異等操作可以找到目標(biāo)函數(shù)的最優(yōu)序列;因此,我們上述定義前一半序列為飛網(wǎng)的抓捕序列,后一半序列為機(jī)械臂抓捕序列對(duì)結(jié)果是沒(méi)有影響的,只要我們?cè)O(shè)置好相應(yīng)的自適應(yīng)度函數(shù);

步驟2、初始化群體:

根據(jù)碎片清除任務(wù)所給出的碎片相對(duì)位置得到各個(gè)城市間的距離矩陣;距離矩陣表示在空間中隨機(jī)分布的空間碎片之間的位置關(guān)系;

在使用機(jī)械臂抓捕基礎(chǔ)上,我們進(jìn)一步考慮飛網(wǎng)和機(jī)械臂兩種抓捕方式,并且考慮燃料和時(shí)間加權(quán)最優(yōu)的目標(biāo);因此,這里需要初始化:飛網(wǎng)每次抓捕兩個(gè)目標(biāo),飛網(wǎng)抓取碎片的單位距離所花費(fèi)的時(shí)間記為t1,每次抓捕兩個(gè)目標(biāo)需要消耗的能量記為q1;機(jī)械臂抓取碎片的單位距離所花費(fèi)的時(shí)間記為t2,每次抓捕單個(gè)目標(biāo)需要消耗的能量記為q2;

d(ci,ci+1)表示兩個(gè)城市之間的距離;ci表示次序編碼中zi所對(duì)應(yīng)的城市,ci+1表示zi+1對(duì)應(yīng)的城市;

初始化群體、種群大小m、最大迭代次數(shù)t1、交叉概率pc=0.5、變異概率pm=0.01;

步驟3、個(gè)體適應(yīng)度計(jì)算:

計(jì)算每個(gè)個(gè)體的適應(yīng)度:

當(dāng)n-1為偶數(shù)時(shí)

當(dāng)n-1為奇數(shù)時(shí)

其中k為加權(quán)系數(shù);

步驟4、選擇中間群體:

計(jì)算種群中所有個(gè)體的適應(yīng)度總和;

計(jì)算每個(gè)個(gè)體的相對(duì)適應(yīng)度大小,即各個(gè)個(gè)體在選擇操作中被選中的概率;使用模擬賭盤操作,來(lái)確定各個(gè)個(gè)體被選中的次數(shù),得到中間群體;

步驟5、交叉操作:

對(duì)選擇操作得到的中間群體進(jìn)行以下操作:以交叉概率pc從中間群體中隨機(jī)地選出需要進(jìn)行交叉的個(gè)體,對(duì)這些個(gè)體隨機(jī)地兩兩配對(duì);在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)k和l;k,l表示交叉點(diǎn)的位置;對(duì)已經(jīng)配對(duì)的兩個(gè)個(gè)體分別記為個(gè)體a和個(gè)體b,取出個(gè)體a和個(gè)體b編碼中第k位與l之間的基因片段,分別記為a和b;將基因片段a與個(gè)體b進(jìn)行比對(duì),將個(gè)體b每位上的編碼與基因片段a每位上的編碼相同的編碼刪除,形成編碼片段β,并將基因片段a連接在編碼片段β的后面形成個(gè)體b′,個(gè)體b′為個(gè)體b交叉后的個(gè)體;

利用基因片段b對(duì)個(gè)體a進(jìn)行相同的交叉操作,得到個(gè)體b交叉后的個(gè)體a′;

步驟6、變異操作:

針對(duì)交叉操作之后的群體,以變異概率pm隨機(jī)地從群體中選出的個(gè)體上,首先在2~n之間產(chǎn)生兩個(gè)隨機(jī)數(shù)g,h;這兩個(gè)數(shù)表示變異點(diǎn)的位置;將個(gè)體編碼中第g位與h位上對(duì)應(yīng)的基因互換,得到變異后的個(gè)體;

步驟7、確定清除的任務(wù)規(guī)劃:

針對(duì)變異后的群體,返回步驟3,直至最大迭代次數(shù)t1,結(jié)束操作,得到飛網(wǎng)和機(jī)械臂從平臺(tái)觸發(fā)進(jìn)行碎片清除的任務(wù)規(guī)劃。

具體實(shí)施方式六:

本實(shí)施方式所述的步驟4的具體過(guò)程包括以下步驟:

步驟4.1、首先計(jì)算出計(jì)算種群中所有個(gè)體的適應(yīng)度總和其中f(j)為個(gè)體j的適應(yīng)度;

步驟4.2、計(jì)算每個(gè)個(gè)體被遺傳到下一代群體中的概率:

步驟4.3、并算出每個(gè)個(gè)體的累積概率:

步驟4.4、接下來(lái)要在[0,1]區(qū)間產(chǎn)生一個(gè)均勻分布的偽隨機(jī)數(shù)r;

步驟4.5、若r<q1,則選擇個(gè)體1;否則,選擇個(gè)體i,使得:qi≤r≤qi+1成立;

步驟4.6、重復(fù)步驟4.4、步驟4.5共計(jì)m次完成選擇操作,得到中間群體。

其他步驟和參數(shù)與具體實(shí)施方式五相同。

具體實(shí)施方式七:

本實(shí)施方式步驟3所述的加權(quán)系數(shù)k為0.8。針對(duì)于加權(quán)的目標(biāo)函數(shù),不能輕易收斂達(dá)到最優(yōu),時(shí)間以秒為標(biāo)準(zhǔn)單位,能量以焦耳為標(biāo)準(zhǔn)單位的情況下,當(dāng)k為0.8時(shí),本發(fā)明的捕捉收斂速度快。

其他步驟和參數(shù)與具體實(shí)施方式五或六相同。

具體實(shí)施方式八:

本實(shí)施方式所述的t1=1000。

其他步驟和參數(shù)與具體實(shí)施方式五至七之一相同。

具體實(shí)施方式九:

所述的設(shè)碎片的數(shù)量為8個(gè),也就是n-1=8。

其他步驟和參數(shù)與具體實(shí)施方式五至八之一相同。

實(shí)施例:

針對(duì)于利用機(jī)械臂抓捕碎片的情況,記為任務(wù)一:

設(shè)計(jì)8個(gè)碎片主動(dòng)清除任務(wù)規(guī)劃,將平臺(tái)視為第1個(gè)城市,其余8個(gè)碎片編碼為第2~9個(gè)城市,選擇t1=1000,定義種群數(shù)目為1000,9個(gè)城市個(gè)數(shù)。接下來(lái),分別設(shè)置交叉與變異的概率分別為pc=0.5,pm=0.01,且滿足任務(wù)所規(guī)定范圍。最后根據(jù)空間碎片和平臺(tái)之間的相對(duì)位置初始化距離矩陣。這里,需要第一個(gè)城市必須為平臺(tái),其余城市不能為平臺(tái),且從最后一個(gè)城市回到平臺(tái)的過(guò)程在求取哈密頓圈時(shí)將被考慮。

平臺(tái)與碎片相對(duì)位置可以求得距離矩陣為:

任務(wù)一:matlab初始化程序?yàn)椋?/p>

%生成初始群體

t=1000;%%迭代次數(shù)

m=1000;num=9;%%種群大小與城市個(gè)數(shù)

pc=0.5;pm=0.01;%%交叉與變異概率,必須選取在規(guī)定范圍內(nèi)

o=zeros(m,num);%%用于存放種群個(gè)體

%%生成距離矩陣

%%根據(jù)任務(wù)一中平臺(tái)與碎片相對(duì)位置算得

個(gè)體適應(yīng)度計(jì)算:

計(jì)算個(gè)體的適應(yīng)度,即與種群中某一個(gè)個(gè)體r相對(duì)應(yīng)的哈密頓圈長(zhǎng)的倒數(shù),其中哈密頓圈長(zhǎng)為

比例選擇操作具體執(zhí)行過(guò)程包括:計(jì)算種群中所有個(gè)體的適應(yīng)度總和;計(jì)算每個(gè)個(gè)體的相對(duì)適應(yīng)度大小,即各個(gè)個(gè)體在選擇操作中被選中的概率;使用模擬賭盤操作,來(lái)確定各個(gè)個(gè)體被選中的次數(shù),得到中間群體。

%計(jì)算種群中所有個(gè)體的適應(yīng)度總和

對(duì)選擇操作得到的中間群體進(jìn)行以下操作:以交叉概率pc從中間群體中隨機(jī)地選出需要進(jìn)行交叉的個(gè)體,對(duì)這些個(gè)體隨機(jī)地兩兩配對(duì);在1~(num-1)之間產(chǎn)生兩個(gè)隨機(jī)數(shù)k,l,這兩個(gè)數(shù)表示交叉點(diǎn)的位置;對(duì)已經(jīng)配對(duì)的兩個(gè)個(gè)體,相互對(duì)應(yīng)地交換第k到l位的數(shù)字。

%%交叉操作

對(duì)于交叉操作之后的群體進(jìn)行變異操作,其操作方法為:首先在1~num之間產(chǎn)生兩個(gè)隨機(jī)數(shù)g,h,這兩個(gè)數(shù)表示變異點(diǎn)的位置;最后再以變異概率隨機(jī)地從群體中選出的個(gè)體上,將g,h兩位置上的數(shù)互換。

%%交叉操作

%%g,h為2個(gè)變異點(diǎn)的位置

通過(guò)遺傳算法求解平臺(tái)碎片抓捕任務(wù),可以得到如下仿真結(jié)果:

表1種群大小為1000

表2迭代次數(shù)為100

最優(yōu)抓捕路徑如圖1所示;圖1中,platform表示平臺(tái),debris表示碎片,capturepath表示捕獲路徑。

分析以上仿真結(jié)果可以發(fā)現(xiàn),遺傳算法的收斂速度非???,在種群數(shù)量少于100,即迭代次數(shù)小于100的情況下就可以找到全局最優(yōu)解。由于平臺(tái)任務(wù)所設(shè)定的相關(guān)數(shù)據(jù)具有較大的對(duì)稱性,所以最優(yōu)解所對(duì)應(yīng)的最優(yōu)序列不唯一。隨著種群數(shù)量的增加,初始迭代所得到的最優(yōu)路徑會(huì)比較大,但最終仍然可以較快收斂到最優(yōu)值。

由于本任務(wù)節(jié)點(diǎn)數(shù)為8個(gè),空間碎片的尺度范圍為10m,載荷可以同時(shí)處理8個(gè)任務(wù)節(jié)點(diǎn),因此,本發(fā)明的技術(shù)指標(biāo)達(dá)到了的要求。

針對(duì)于利用飛網(wǎng)和機(jī)械臂抓捕碎片的情況,記為任務(wù)二:

如果碎片清除裝置中加入了飛網(wǎng),且飛網(wǎng)可以同時(shí)抓捕2個(gè)碎片。由以上分析的碎片抓捕多個(gè)過(guò)程分離原則,該任務(wù)同樣可以滿足機(jī)械臂或飛網(wǎng)失效更換過(guò)程獨(dú)立于碎片抓捕過(guò)程。

由于時(shí)間與燃料具有相互的制約關(guān)系,因此,這里將燃料和時(shí)間進(jìn)行加權(quán)組合成單目標(biāo),進(jìn)而考慮其最優(yōu)化問(wèn)題。任務(wù)二最大的難點(diǎn)在于飛網(wǎng)的抓捕過(guò)程與機(jī)械臂的抓捕過(guò)程是同時(shí)進(jìn)行的,總?cè)剂舷氖秋w網(wǎng)的燃料消耗與機(jī)械臂燃料消耗之和,但抓捕總時(shí)間則是飛網(wǎng)抓捕時(shí)間和機(jī)械臂抓捕時(shí)間中最長(zhǎng)的時(shí)間。由于飛網(wǎng)抓捕目標(biāo)和機(jī)械臂抓捕目標(biāo)是未知,因此,任務(wù)二無(wú)法轉(zhuǎn)化為標(biāo)準(zhǔn)的旅行商問(wèn)題進(jìn)行求解。但由于遺傳算法中適應(yīng)度函數(shù)具有非常好的靈活性,我們?nèi)匀豢梢酝ㄟ^(guò)編碼規(guī)則及適應(yīng)度函數(shù)的選取來(lái)完成任務(wù)二的求解。

綜上所述,對(duì)任務(wù)二的求解算法僅在任務(wù)一的編碼和適應(yīng)度函數(shù)部分進(jìn)行了改進(jìn),其他部分未做修改,這里不在累述。

%%生成初始群體及編碼規(guī)則改變

disp(dmatrix);%%考慮碎片在空間分布中的不確定與不規(guī)則性,設(shè)置一個(gè)隨機(jī)矩陣來(lái)描述空間碎片的分布位置

通過(guò)遺傳算法求解平臺(tái)任務(wù)二,可以得到如下仿真結(jié)果

表3種群大小為1000

表4迭代次數(shù)為100

最優(yōu)抓捕路徑如圖2所示,圖2中,platform表示平臺(tái),debris表示碎片,mainpulatorcapturepath表示機(jī)械臂捕獲路徑,netcapturepath表示飛網(wǎng)臂捕獲路徑。

分析以上仿真結(jié)果可以發(fā)現(xiàn),遺傳算法的收斂速度非???,在種群數(shù)量少于100,迭代次數(shù)小于100的情況下就可以找到局部最優(yōu)解。由于空間碎片成不規(guī)則分布,所以可以得到唯一的全局最優(yōu)解。

由于本任務(wù)節(jié)點(diǎn)數(shù)為8個(gè),空間碎片的尺度范圍為10m,載荷可以同時(shí)處理8個(gè)任務(wù)節(jié)點(diǎn),因此,本發(fā)明的技術(shù)指標(biāo)達(dá)到了的要求。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
文山县| 兰溪市| 通州区| 万山特区| 崇左市| 肇源县| 建昌县| 蕉岭县| 根河市| 黄梅县| 北安市| 延庆县| 浙江省| 大关县| 达日县| 肥西县| 台湾省| 峨边| 合山市| 鄂州市| 三明市| 左权县| 泰来县| 韶关市| 剑河县| 宿松县| 伊宁市| 苏尼特左旗| 东乌珠穆沁旗| 贵溪市| 和龙市| 米泉市| 交口县| 山西省| 师宗县| 柳林县| 翁牛特旗| 广东省| 五莲县| 伊金霍洛旗| 宿松县|