System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及計算機領域的優化技術和移動通信領域的自組網,具體涉及一種基于蟻群優化的大規模自組網多點中繼選擇方法。
技術介紹
1、近些年來,在民用領域和軍用領域,移動自組網的發展變得越來越引人注目,其中無人機(uav,unmannedaerial?vehicle)憑借其體積小、成本低、便于部署等優勢在實時監控、搜尋救援、中繼傳輸、戰略打擊等方面都得到了廣泛的應用。然而無人機自組織網絡具有節點移動性強、網絡拓撲變化快、數據交互頻繁、能量消耗大等特點,傳統的路由算法已經無法滿足其對網絡傳輸延遲、丟包率、路由開銷等方面上的要求。
2、最優鏈路狀態路由(olsr,optimized?link?state?routing)協議是一種經典的鏈路狀態協議,其通過在節點間廣播hello分組來完成鏈路探測,鄰居發現,以及多點中繼(mpr,multi-point?relay)節點的選擇。利用拓撲控制(tc,topology?control)分組在獲取mpr節點信息后建立和維護網絡的整個拓撲,并最終運用dijkrastra算法計算路徑,生成路由。其中mpr節點的選擇至關重要,每個節點都只會將其tc分組發送至其對應的mpr節點,以減少網絡間的控制包數量。文獻[8]提及,選擇最優的mpr集是np難問題。傳統方式對mpr集進行選擇往往采用貪心算法,優先選取覆蓋源節點二跳鄰居最多的一跳節點。這樣會造成很大的冗余,進而導致協議的開銷增大,網絡間的延遲上升。很多學者都從不同角度上對mpr的選取算法進行了改進。有學者采用最小最大算法,以減少每個節點上的
3、蟻群算法(aco,ant?colony?optimization)是對現實世界中真實的蟻群覓食行為的抽象和改進,是一種智能優化的啟發式算法。螞蟻通過在覓食過程中移動所留下的信息素來向其他螞蟻傳遞信息,其他螞蟻根據不同路徑信息素的濃度來決定其下一步路徑。蟻群算法的優勢在于其搜索具有全局性,而傳統的貪心算法無法考慮到全局的情況,往往陷入局部最優。蟻群算法利用隨機概率選擇下一跳路徑,當信息素積累,概率增加到1時,算法便會退化為貪心算法。單一的蟻群算法雖然在貪心算法的基礎上有所改進。但仍然存在迭代時間過長而陷入局部最優的問題
技術實現思路
1、本專利技術目的在于針對上述現有技術的缺陷和不足,提供了一種基于蟻群優化的大規模自組網多點中繼選擇方法,該方法結合蟻群算法的全局搜索能力,考慮到無人機自組網的特性,將本地節點三跳鄰居數據庫引入蟻群的路徑選擇函數中,同時考慮節點的速度,對aco算法原有的路徑選擇以及狀態更新機制進行了改進,將蟻群優化應用于求解mpr集合問題中,達到了優化mpr集合的目的,最后將其集成于qualnet網絡仿真軟件系統中,很好地驗證了專利技術所提出算法的性能。
2、本專利技術解決其技術問題所采用的技術方案是:一種基于蟻群優化的大規模自組網多點中繼選擇方法,該方法包括如下步驟:
3、步驟1:初始化源節點一跳鄰居集合s1,二跳鄰居集合s2,三跳鄰居集合s3,螞蟻的數目num_ants每只螞蟻訪問過的節點數組visit,當前未被覆蓋的二跳鄰居節點個數uncover_s2,蟻群的總循環次數total_iteration;
4、步驟2:當目前的迭代次數小于總循環次數時,做如下步驟:初始化每只螞蟻的起始節點,并將其記錄入每只螞蟻的visit數組中,初始化每只螞蟻當前的一跳鄰居集合cur_s1,當前二跳集合cur_s2,當前三跳集合cur_s3;
5、步驟3:對每只螞蟻,當目前的uncover_s2>0時,做如下步驟:根據本專利技術提出的路徑概率選擇公式計算出螞蟻選擇其他節點的概率,依據輪盤賭選擇法選擇出當前螞蟻的下一跳選擇,更新visit數組,cur_s1,cur_s2,cur_s3數組,將已選擇的節點對應的節點覆蓋,對每只螞蟻根據當前visit數組情況,更新cur_solu和best_solu;
6、步驟4:依據本專利技術提出的信息素更新方法,對當前路徑進行更新。
7、進一步地,本專利技術上述步驟3中,路徑概率選擇公式為:
8、
9、其中,α表示信息素的啟發式因子,β表示兩跳權重的啟發因子,γ表示三跳權重的啟發因子,ε表示節點相對速度的啟發因子,τ(i)表示節點i上持有的信息素的濃度,μ(i)表示節點i所覆蓋源節點二跳鄰居的權重,η(i)表示節點i所覆蓋源節點三跳鄰居的權重,ν(i)表示目標節點i移動速度對概率選擇的影響公式。
10、進一步地,本專利技術上述步驟4中,信息素更新公式為:
11、τi(t+1)=(1-ρ)·τi(t)+δτi(t)?(2)
12、其中ρ為階段性的信息素的揮發率,τi(t)為更新前節點i上的信息素增量,τi(t+1)為更新后節點i上的信息素增量;
13、
14、其中itecur代表當前的迭代次數,itemax代表設置的最大迭代次數;
15、
16、其中代表螞蟻k在迭代過程中釋放在去往i節點路徑的的信息素,cursek為當前迭代的解,q值為初始信息素常量。
17、有益效果:
18、1.本專利技術有效地降低了選取的mpr集合大小,進而降低了網絡丟包率,提升網絡的吞吐量,將蟻群算法引入mpr集合的選擇過程中,將本地三跳鄰居數據庫以及速度考量加入節點的路徑選擇決策中,對于信息素的更新,采取了全局信息素更新規則對路徑上的信息素進行更新以防止算法收斂于局部最優解。
19、2.本專利技術很好地解決了傳統mpr選擇算法容易產生冗余的問題,實現了無法適應于現在的大規模自組網。
20、3.本專利技術結合蟻群算法的全局搜索能力,考慮到無人機自組網的特性,將本地節點三跳鄰居數據庫引入蟻群的路徑選擇函數中,同時考慮節點的速度,對aco算法原有的路徑選擇以及狀態更新機制進行了改進,將蟻群優化應用于求解mpr集合問題中,達到了優化mpr集合的目的,最后將其集成于qualnet網絡仿真軟件系統中,很好地驗證了專利技術所提出算法的性能。
本文檔來自技高網...【技術保護點】
1.一種基于蟻群優化的大規模自組網多點中繼選擇方法,其特征在于,所述方法包括以下步驟:
2.根據權利要求1所述的一種基于蟻群優化的大規模自組網多點中繼選擇方法,其特征在于,所述步驟3中,路徑概率選擇公式為:
【技術特征摘要】
1.一種基于蟻群優化的大規模自組網多點中繼選擇方法,其特征在于,所述方法包括以下步驟:
2.根據權...
【專利技術屬性】
技術研發人員:王天昕,湯逸豪,朱天林,李大鵬,
申請(專利權)人:南京郵電大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。