基于蟻群算法的深空光網(wǎng)絡(luò)路由方法
【專利摘要】本發(fā)明一種基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,屬于通信網(wǎng)絡(luò)【技術(shù)領(lǐng)域】;該方法首先初始化網(wǎng)絡(luò),隨機(jī)設(shè)定深空光網(wǎng)絡(luò)中一個(gè)路由器為源路由器,另一個(gè)路由器為目的路由器,根據(jù)設(shè)定的源路由器和目的路由器,設(shè)置深空光網(wǎng)絡(luò)中的網(wǎng)絡(luò)約束條件,然后根據(jù)網(wǎng)絡(luò)約束條件,保留滿足條件的路徑和路由器,最后利用蟻群算法獲取深空光網(wǎng)絡(luò)的最優(yōu)路徑,本發(fā)明中的深空光網(wǎng)絡(luò)路由方法充分利用單向路徑資源,提高了網(wǎng)絡(luò)資源的利用率,同時(shí)考慮節(jié)點(diǎn)路由器的剩余電量,控制路由器能耗速度,提高了網(wǎng)絡(luò)的生存時(shí)間,此外,本發(fā)明保留路徑信息素,加快了算法的收斂速度,計(jì)算更加方便。
【專利說明】基于蟻群算法的深空光網(wǎng)絡(luò)路由方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于通信網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,特別設(shè)及一種基于蟻群算法的深空光網(wǎng)絡(luò)路由方 法。
【背景技術(shù)】
[000引 深空通信值eep-space Communication)是進(jìn)行深空探測(cè)的基礎(chǔ)和支撐,是空、天、 地信息交互的唯一手段,也是深空探測(cè)器正常運(yùn)行和發(fā)揮其效能的重要保證,在深空探測(cè) 工程中具有舉足輕重的地位;激光通信相對(duì)于傳統(tǒng)微波通信具有大容量、保密性強(qiáng)、輕便、 小型化等優(yōu)點(diǎn),光通信已被公認(rèn)為深空通信系統(tǒng)極具前景的傳輸技術(shù)之一。隨著空間激光 通信技術(shù)的不斷成熟,W及深空探測(cè)器技術(shù)的發(fā)展,深空光網(wǎng)絡(luò)有望成為未來深空通信的 重要基礎(chǔ)設(shè)施和必然發(fā)展趨勢(shì)。
[0003] 深空光通信網(wǎng)是實(shí)現(xiàn)深空高速信息通道的一項(xiàng)戰(zhàn)略性基礎(chǔ)設(shè)施,W深空光通信網(wǎng) 為基礎(chǔ),在全球甚至太空范圍內(nèi)實(shí)現(xiàn)無縫覆蓋的戰(zhàn)略互聯(lián)系統(tǒng)將為對(duì)地探測(cè)、導(dǎo)航定位、深 空探測(cè)及遙感遙測(cè)等任務(wù)的有效實(shí)施提供強(qiáng)有力的技術(shù)支撐;因此,有效整合現(xiàn)有人造衛(wèi) 星、航天器、空間站、行星探測(cè)器等深空基礎(chǔ)設(shè)施,進(jìn)而實(shí)現(xiàn)空天地一體化寬帶互聯(lián)將成為 未來深空探測(cè)任務(wù)的必然發(fā)展趨勢(shì);圖1為深空光網(wǎng)結(jié)構(gòu)示意圖,a為月球,b為拉格朗日 點(diǎn),C為火星,d為同步軌道衛(wèi)星,e為中軌道衛(wèi)星,f為低軌道衛(wèi)星,g為光地面站,h為地 球,i為大氣層;它包括了火星、月球、地球W及處于行星穩(wěn)定拉格朗日點(diǎn)的中繼衛(wèi)星之間 通信的基本設(shè)施;從圖中可W看出,地球與繞地同步衛(wèi)星,衛(wèi)星之間W及衛(wèi)星與其它行星之 間均存在通信鏈路;并且地球作為一個(gè)網(wǎng)關(guān),可W連接深空光網(wǎng)絡(luò)W外的其他網(wǎng)絡(luò),如因特 網(wǎng);通過深空光網(wǎng)絡(luò),深空航天設(shè)備之間W及深空航天設(shè)備與地球站之間可W通過中繼、多 跳的方式進(jìn)行鏈路數(shù)據(jù)傳輸,避免深空中遮擋物對(duì)激光通信視距傳輸干擾,同時(shí)減小遠(yuǎn)距 離傳輸導(dǎo)致的損耗。
[0004] 然而,激光通信視距傳輸和長(zhǎng)距離傳輸?shù)奶匦訵及深空探測(cè)器供電有限的特點(diǎn)為 深空光網(wǎng)絡(luò)的連通性和路由選擇提出更高挑戰(zhàn);為盡量減少額外開銷、尋找最優(yōu)傳輸路徑, 可行的深空光網(wǎng)絡(luò)值eep-Space化tical Network, DS0N)路由算法設(shè)計(jì)對(duì)于提高網(wǎng)絡(luò)性能 至關(guān)重要;現(xiàn)有深空光通信研究大多集中在點(diǎn)對(duì)點(diǎn)信號(hào)傳輸技術(shù)方面;基于深空光通信的 組網(wǎng)技術(shù),即深空光通信網(wǎng)的研究仍處于起步階段,深空光網(wǎng)絡(luò)設(shè)計(jì)、單向鏈路問題及節(jié)點(diǎn) 能耗是影響深空光網(wǎng)絡(luò)連通性和網(wǎng)絡(luò)壽命的重要因素,也是制約網(wǎng)絡(luò)可擴(kuò)展能力的關(guān)鍵條 件,在基于蟻群算法的深空光網(wǎng)絡(luò)路由方法中具有重要的研究意義;現(xiàn)有深空光設(shè)計(jì)網(wǎng)絡(luò) 路由方法主要采用傳統(tǒng)蟻群算法(TACA),傳統(tǒng)的蟻群算法中對(duì)于鏈路中出現(xiàn)的單向鏈路, 是直接將此鏈路屏蔽,會(huì)造成網(wǎng)絡(luò)資源的浪費(fèi),深空探測(cè)器有限的電量供應(yīng)影響網(wǎng)絡(luò)節(jié)點(diǎn) 路由器壽命,傳統(tǒng)的蟻群算法并未考慮電量問題,容易造成網(wǎng)絡(luò)過早死亡,并且,傳統(tǒng)蟻群 算法收斂速度慢,計(jì)算不方便。
【發(fā)明內(nèi)容】
[0005] 針對(duì)現(xiàn)有技術(shù)的不足,本發(fā)明提出一種基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,W 達(dá)到實(shí)現(xiàn)深空光網(wǎng)絡(luò)中的單向路徑數(shù)據(jù)傳輸、減少節(jié)點(diǎn)路由器能耗問題和提高計(jì)算收斂速 度的目的。
[0006] 本發(fā)明技術(shù)方案如下;
[0007] 基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,包括W下步驟:
[000引步驟1、初始化網(wǎng)絡(luò),隨機(jī)設(shè)定深空光網(wǎng)絡(luò)中一個(gè)路由器為源路由器,另一個(gè)路由 器為目的路由器,根據(jù)設(shè)定的源路由器和目的路由器,設(shè)置深空光網(wǎng)絡(luò)中的網(wǎng)絡(luò)約束條件; 所述的約束條件包括:
[0009] 帶寬約束:源路由器到目的路由器任一路徑的帶寬大于等于設(shè)定值;
[0010] 延時(shí)約束:源路由器到目的路由器任一路徑的時(shí)延小于等于設(shè)定值;
[0011] 延時(shí)抖動(dòng)約束;源路由器到目的路由器任一路徑的時(shí)延抖動(dòng)小于等于設(shè)定值;
[0012] 丟包率約束;每個(gè)路由器傳輸數(shù)據(jù)的丟包率小于等于設(shè)定值;
[0013] 路由器剩余電量約束:在當(dāng)前路由器的下一跳可選路由器集中,選擇剩余電量最 大的路由器為下一跳路由器;
[0014] 步驟2、在深空光網(wǎng)絡(luò)中,根據(jù)網(wǎng)絡(luò)約束條件,保留滿足條件的路徑和路由器;
[0015] 步驟3、根據(jù)蟻群算法獲取深空光網(wǎng)絡(luò)的最優(yōu)路徑,具體步驟如下:
[0016] 步驟3. 1、設(shè)定信息素增量為0,當(dāng)前循環(huán)迭代次數(shù)為0,設(shè)定蟻群規(guī)模數(shù)和最大循 環(huán)迭代次數(shù);
[0017] 步驟3. 2、在源路由器中構(gòu)建設(shè)定規(guī)模數(shù)的前向媽蟻,獲得每只前向媽蟻由當(dāng)前路 由器到達(dá)下一跳可選路由器集中每一條路徑的轉(zhuǎn)移概率,并選擇轉(zhuǎn)移概率最大的路徑作為 前向媽蟻的移動(dòng)路徑;
[0018] 步驟3. 3、當(dāng)前向媽蟻到達(dá)下一跳路由器時(shí),更新該路徑上的信息素和轉(zhuǎn)移概率, 并判斷從源路由器到當(dāng)前路由器是否存在多條路徑,若是,則保留所有路徑中延時(shí)最小的 路徑作為當(dāng)前最優(yōu)路徑,并繼續(xù)尋找下一跳路由器,直到到達(dá)目的路由器,否則,直接尋找 當(dāng)前路由器的下一跳路由器,直到到達(dá)目的路由器;
[0019] 步驟3. 4、在目的路由器中構(gòu)建與前向媽蟻相同規(guī)模數(shù)的后向媽蟻,獲得每只后向 媽蟻由當(dāng)前路由器到達(dá)下一跳可選路由器集中每一條路徑的轉(zhuǎn)移概率,并選擇轉(zhuǎn)移概率最 大的路徑作為后向媽蟻的移動(dòng)路徑;
[0020] 步驟3. 5、當(dāng)后向媽蟻到達(dá)下一跳路由器時(shí),更新該路徑上的信息素和轉(zhuǎn)移概率, 并判斷深空光網(wǎng)絡(luò)中是否存在單向路徑,根據(jù)判斷結(jié)果選擇移動(dòng)路徑,直到返回源路由 器;
[002U 步驟3. 6、判斷循環(huán)迭代次數(shù)是否達(dá)到設(shè)定的最大循環(huán)迭代次數(shù),若是,則執(zhí)行步 驟3. 7,否則,返回執(zhí)行步驟3. 2 ;
[002引步驟3. 7、判斷每一次迭代中最終目的路由器是否都找到,若是,則保存源路由器 到達(dá)目的路由器的路徑上的信息素,并且其他路徑信息素清零,執(zhí)行步驟3.8 ;否則,返回 執(zhí)行步驟3. 1,更換其他路由器作為源路由器,直到每次循環(huán)迭代中,均找到目的路由器;
[0023] 步驟3. 8、當(dāng)時(shí)延值保持不變時(shí),則當(dāng)前所尋找到的時(shí)延最小的路徑為最終最優(yōu)路 徑。
[0024] 所述的步驟3. 5、判斷深空光網(wǎng)絡(luò)中是否存在單向路徑,包括W下步驟:
[0025] 步驟3. 5. 1、判斷當(dāng)前路由器與下一跳路由器之間路徑的信息素是否為0,若是, 則該路徑為單向路徑,并執(zhí)行步驟3. 5. 2,否則,執(zhí)行步驟3. 5. 3 ;
[0026] 步驟3. 5. 2、根據(jù)與當(dāng)前路由器相鄰的路由器數(shù)量生成相同數(shù)量的廣播后向媽蟻, 每只廣播后向媽蟻向?qū)?yīng)的相鄰路由器廣播此路徑為單向路徑,同時(shí)獲得每只后向媽蟻由 當(dāng)前路由器到達(dá)下一跳可選路由器集中每一條路徑的轉(zhuǎn)移概率,并選擇轉(zhuǎn)移概率最大的路 徑作為后向媽蟻的移動(dòng)路徑;
[0027] 步驟3. 5. 3、后向媽蟻沿該路徑移動(dòng),到達(dá)下一跳路由器時(shí),返回執(zhí)行步驟3. 5. 1。 [002引所述的步驟3. 2和步驟3. 4中,轉(zhuǎn)移概率根據(jù)W下公式確定:
[0029]
【權(quán)利要求】
1. 一種基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,其特征在于:包括以下步驟: 步驟1、初始化網(wǎng)絡(luò),隨機(jī)設(shè)定深空光網(wǎng)絡(luò)中一個(gè)路由器為源路由器,另一個(gè)路由器為 目的路由器,根據(jù)設(shè)定的源路由器和目的路由器,設(shè)置深空光網(wǎng)絡(luò)中的網(wǎng)絡(luò)約束條件;所述 的約束條件包括: 帶寬約束:源路由器到目的路由器任一路徑的帶寬大于等于設(shè)定值; 延時(shí)約束:源路由器到目的路由器任一路徑的時(shí)延小于等于設(shè)定值; 延時(shí)抖動(dòng)約束:源路由器到目的路由器任一路徑的時(shí)延抖動(dòng)小于等于設(shè)定值; 丟包率約束:每個(gè)路由器傳輸數(shù)據(jù)的丟包率小于等于設(shè)定值; 路由器剩余電量約束:在當(dāng)前路由器的下一跳可選路由器集中,選擇剩余電量最大的 路由器為下一跳路由器; 步驟2、在深空光網(wǎng)絡(luò)中,根據(jù)網(wǎng)絡(luò)約束條件,保留滿足條件的路徑和路由器; 步驟3、根據(jù)蟻群算法獲取深空光網(wǎng)絡(luò)的最優(yōu)路徑; 步驟3. 1、設(shè)定信息素增量為0,當(dāng)前循環(huán)迭代次數(shù)為0,設(shè)定蟻群規(guī)模數(shù)和最大循環(huán)迭 代次數(shù); 步驟3. 2、在源路由器中構(gòu)建設(shè)定規(guī)模數(shù)的前向螞蟻,獲得每只前向螞蟻由當(dāng)前路由器 到達(dá)下一跳可選路由器集中每一條路徑的轉(zhuǎn)移概率,并選擇轉(zhuǎn)移概率最大的路徑作為前向 螞蟻的移動(dòng)路徑; 步驟3. 3、當(dāng)前向螞蟻到達(dá)下一跳路由器時(shí),更新該路徑上的信息素和轉(zhuǎn)移概率,并判 斷從源路由器到當(dāng)前路由器是否存在多條路徑,若是,則保留所有路徑中延時(shí)最小的路徑 作為當(dāng)前最優(yōu)路徑,并繼續(xù)尋找下一跳路由器,直到到達(dá)目的路由器,否則,直接尋找當(dāng)前 路由器的下一跳路由器,直到到達(dá)目的路由器; 步驟3. 4、在目的路由器中構(gòu)建與前向螞蟻相同規(guī)模數(shù)的后向螞蟻,獲得每只后向螞蟻 由當(dāng)前路由器到達(dá)下一跳可選路由器集中每一條路徑的轉(zhuǎn)移概率,并選擇轉(zhuǎn)移概率最大的 路徑作為后向螞蟻的移動(dòng)路徑; 步驟3. 5、當(dāng)后向螞蟻到達(dá)下一跳路由器時(shí),更新該路徑上的信息素和轉(zhuǎn)移概率,并判 斷深空光網(wǎng)絡(luò)中是否存在單向路徑,根據(jù)判斷結(jié)果選擇移動(dòng)路徑,直到返回源路由器; 步驟3. 6、判斷循環(huán)迭代次數(shù)是否達(dá)到設(shè)定的最大循環(huán)迭代次數(shù),若是,則執(zhí)行步驟 3. 7,否則,返回執(zhí)行步驟3.2 ; 步驟3. 7、判斷每一次迭代中最終目的路由器是否都找到,若是,則保存源路由器到達(dá) 目的路由器的路徑上的信息素,并且其他路徑信息素清零,執(zhí)行步驟3. 8 ;否則,返回執(zhí)行 步驟3. 1,更換其他路由器作為源路由器,直到每次循環(huán)迭代中,均找到目的路由器; 步驟3. 8、當(dāng)時(shí)延值保持不變時(shí),則當(dāng)前所尋找到的時(shí)延最小的路徑為最終最優(yōu)路徑。
2. 根據(jù)權(quán)利要求1所述的基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,其特征在于:步驟3. 5 中所述的判斷深空光網(wǎng)絡(luò)中是否存在單向路徑,包括以下步驟: 步驟3.5. 1、判斷當(dāng)前路由器與下一跳路由器之間路徑的信息素是否為0,若是,則該 路徑為單向路徑,并執(zhí)行步驟3. 5. 2,否則,執(zhí)行步驟3. 5. 3 ; 步驟3. 5. 2、根據(jù)與當(dāng)前路由器相鄰的路由器數(shù)量生成相同數(shù)量的廣播后向螞蟻,每只 廣播后向螞蟻向?qū)?yīng)的相鄰路由器廣播此路徑為單向路徑,同時(shí)獲得每只后向螞蟻由當(dāng)前 路由器到達(dá)下一跳可選路由器集中每一條路徑的轉(zhuǎn)移概率,并選擇轉(zhuǎn)移概率最大的路徑作 為后向螞蟻的移動(dòng)路徑; 步驟3. 5. 3、后向螞蟻沿該路徑移動(dòng),到達(dá)下一跳路由器時(shí),返回執(zhí)行步驟3. 5. 1。
3. 根據(jù)權(quán)利要求1所述的基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,其特征在于:步驟3. 2 和步驟3. 4中所述的轉(zhuǎn)移概率根據(jù)以下公式確定:
其中,a為信息啟發(fā)因子,即軌跡的相對(duì)重要性,0為期望啟發(fā)因子,即能見度的相對(duì) 重要性,乂⑴表示第k只螞蟻由路由器i轉(zhuǎn)移到路由器j的轉(zhuǎn)移概率,tu.ar表示t時(shí) 刻在路由器i與路由器j之間路徑上積累的信息素強(qiáng)度,rUjU) 3表示路由器i與路由器j之間路徑的能見度,取值范圍為[0, 1],tiu(t)a表示t時(shí)刻從路由器i到下一跳可選路 由器u的信息素,niu(t)3表示路由器i到路由器u之間路徑的能見度,取值范圍為[0, 1], all〇Wedk表示第k只螞蟻下一跳允許選擇路由器的集合。
4. 根據(jù)權(quán)利要求1所述的基于蟻群算法的深空光網(wǎng)絡(luò)路由方法,其特征在于:步驟3. 3 和步驟3. 5中所述的更新信息素的方法根據(jù)以下公式確定:
其中,tua+n)表示從t時(shí)刻開始,經(jīng)過n時(shí)刻路由器i移動(dòng)到路由器j路徑上積累 的信息素強(qiáng)度,P表示信息素蒸發(fā)系數(shù),取值范圍為[〇, 1],tu(t)表示t時(shí)刻路由器i和 路由器j路徑上積累的信息素強(qiáng)度,Atu表示信息素增量; 公式(2)中的△t^由以下公式確定:
其中,#表示第k只螞蟻從路由器i到路由器j的信息素增量,k表示經(jīng)過該路徑的第 k只螞蟻,m表示在路徑上走過的螞蟻總數(shù); 公式(3)中的< 由以下公式確定:
其中,Q表示信息素增加強(qiáng)度系數(shù),Lk表示路由器i到路由器j的路徑長(zhǎng)度,P(j)表示j路由器目前剩余電量。
【文檔編號(hào)】H04W40/10GK104486811SQ201410748767
【公開日】2015年4月1日 申請(qǐng)日期:2014年12月9日 優(yōu)先權(quán)日:2014年12月9日
【發(fā)明者】郭磊, 王小瑞, 侯維剛, 劉業(yè)君, 宋清洋, 于堯, 吳菁晶, 彭玉懷 申請(qǐng)人:東北大學(xué)