一種基于遺傳算法的三維靜態無線傳感網絡部署方法,用于對大面積范圍內三維靜態無線傳感器網絡拓撲進行建模,屬于無線傳感網絡部署
技術領域:
。
背景技術:
:面向無線傳感器網絡三維空間覆蓋與部署的前瞻性論著包括wangyun教授提出的關于三維空間中均勻部署的無線傳感器網絡覆蓋率的研究[4],臺灣交通大學黃奇輔等2004年發表的多項式時間算法[5]和法國巴黎第13大學的ravelomanana同年提出的exchangeid和assigncode協議[6],但[5][6]假設監測事件在三維空間均勻分布且節點靜止。2006年美國康奈爾大學的alam等提出了采用vorinoi多邊形圖的三維空間節點部署策略,既保證100%空間覆蓋又使節點數最小,且該策略可同時適用于節定靜止和移動的情況[7],但此策略假設所有節點的監測范圍是一樣的。(1)基于虛擬力的移動無線傳感器網絡二位平面部署最初由美國南加州大學howard等提出了基于勢場的節點移動擴散法[1],是一種移動無線傳感器網絡的增量部署算法。其主要思想是將節點一個一個的部署到一個未知的區域中,然后每個節點利用之前部署的節點收集的信息來確定其部署位置。該算法的設計目的是最大化網絡的覆蓋率,同時確保節點保持與另一個節點的視線關系。該算法由虛擬力量(vf)算法支持,然而,在vf算法中,靜止無線傳感器節點所產生的虛擬力會阻礙移動無線傳感器節點的移動。粒子群優化(pso)作為另一種動態部署算法被引入,但在這種情況下,所需的計算時間是最大的瓶頸。清華大學王雪[3]等2007年提出了一種動態部署算法命名為“協同進化粒子群優化虛擬力導向”(vfcpso),因為該算法結合了協同進化粒子群優化(復)vf算法,即復使用多個群優化解向量的不同組件協同動態部署和更新每個粒子的速度不僅歷史局部和全局最優解,而且虛擬無線傳感器節點的力量。仿真結果表明,所提出的vfcpso能夠有效地實現wsns的動態部署,并且在計算時間和有效性方面比vf、pso和vfpso算法具有更好的性能。這些研究為無線傳感器網絡的部署問題提供了很多可參考的思路,但這些僅針對二維空間,在實際運用時大多考慮的是三維空間,因此其實用價值還待發掘。(2)多項式時間算法在黃奇輔教授的關于多項式時間算法的文章中[5],制定無線傳感器網絡部署問題作為一個決策問題,其目標是確定每一個點在服務區域的無線傳感器網絡覆蓋至少α無線傳感器、α是一個給定的參數和無線傳感器的傳感區域建模的球(不一定是相同的半徑)。這個問題在2d空間已推出了一個有效的多項式時間算法[8]。黃奇輔教授在研究中證明了在一個三維空間中解決這個問題在多項式時間內仍然是可行的。并提出了一個方案可以很容易地將無線傳感器網絡部署問題轉化為一種有效的多項式時間分配協議。該方案可用于在三維空間中部署無線傳感器,并減少無線傳感器的使用時間,延長網絡壽命。(3)exchangeid和assigncode協議ravelomanana教授的文章的目的是研究隨機性在無線傳感器網絡中的作用,以及對這些網絡的適當協議的設計和分析。在一些典型的隨機無線傳感器網絡行為的基礎上,提出了兩種分布式機制。第一個問題涉及到將節點的標識符分發給它們的鄰居,而第二個協議解決了代碼分配問題。有了高概率,兩種協議都可以在多對數的時間槽中實現它們的任務。(4)vorinoi多邊形圖的三維空間節點部署策略2006年美國康奈爾大學的alam等提出了采用vorinoi多邊形圖的三維空間節點部署策略,證明了三維空間中被截斷的八面體鑲嵌是最合理的解決這個問題的方法。文中定義了一個稱為體積商的度量,它是空間填充多面體質量的度量。該文證明了被截斷的八面體結果是最佳選擇,體積商為0.68329,比所有其他可能選擇的體積系數都好得多(分別為優化的六邊形棱鏡和菱形十二面體,其體積系數為0.477,而立方體只有0.36755)。大3d空間覆蓋所需的節點數量取決于由這些節點所創建的空間的voronoitessel消融所創建的單元的形狀。如果每個單元格的形狀是一個具有更高容量商的空間填充多面體,那么節點數就更小。例如,菱形十二面體或六邊形棱鏡布置的節點數需要比被截斷的八面體放置多出43.25%的節點。在找到最佳放置策略之后,檢查了連接性問題,發現最佳放置策略(截尾八面體)要求傳輸范圍至少為1.7889倍,以保持完全的連接。該文為三維空間中無線傳感器的一種部署思路,但其僅針對無線傳感器在空間中均勻分布,且無線傳感器規格一致的問題,在實際應用中還存在很大的局限性。以上列舉了一些國內外對無線傳感器網絡部署問題的研究,當多數研究都是基于理論的研究,很少結合實際應用,考慮如何解決一個具體的無線傳感器網絡部署問題。一個更全面,同時考慮覆蓋率,連通性,能耗,成本等因素的無線傳感器網絡部署問題的解決方案是今后發展的目標。技術實現要素:本發明的目的在于:解決現有技術中的無線傳感器網絡部署,覆蓋率、連通性差,受地形不規則的限制,能耗、成本高的問題,提供了一種基于遺傳算法的三維靜態無線傳感網絡部署方法。本發明采用的技術方案如下:一種基于遺傳算法的三維靜態無線傳感網絡部署方法,其特征在于:如下步驟;(1)將目標區域的三維空間劃分為若干個區域;(2)對每個區域使用遺傳算法進行三維靜態無線傳感器網絡的拓撲部署,拓撲部署中的無線傳感器節點之間彼此連通,得到區域連通;(3)生成每個區域連通的最小生成樹找到最優基站位置;(4)利用所有區域的最優基站位置之間的相互連通,完成森林三維空間的無線傳感器的100%連通。進一步,所述步驟(2)的具體步驟為:(21)隨機產生n個投放m個無線傳感器的區域作為初代樣本;(22)通過自然選擇函數在初代樣本中挑選最優樣本;(23)以初代樣本得到親代樣本,通過遺傳與變異產生新的n個投放m個無線傳感器的區域樣本,即下一代樣本;(24)在下一代樣本中加入初代樣本中的最優樣本選出下一代最優樣本;(25)判斷下一代最優樣本是否滿足要求,如果滿足,則輸出最優樣本,轉到步驟(26),如果不滿足,轉到步驟(23)進行下一代樣本迭代;(26)判斷最優樣本是否連通,如果不連通,增加額外無線傳感器數目△i作為衡量連通性的指標,得到增加的無線傳感器節點個數,得到無線傳感器都能相互連通的區域連通。進一步,所述步驟(22)中,自然選擇函數的具體公式如下:f1=vcover/v,△i=∑j△ij,式中,rs為無線傳感器檢測球體的半徑,b、c表示覆蓋性和連通性的權重值,vcover為總的空間范圍,即每個無線傳感器覆蓋范圍的并集,vi為單個無線傳感器可覆蓋到的檢測范圍,[]表示向下取整,rc為無線傳感器的連通半徑,△i為網絡連通需增加的無線傳感器數量,即該網絡最小生成樹的節點數與現有無線傳感器數的差值,l為大于連通半徑的路徑的長度為,j表示最小生成樹中連線個數,v是網格點點數,當畫網格畫的很細時,用被覆蓋點數除以總點數表示覆蓋率,v的計算是利用了微元的思想,將區域用密集的網格劃分,網格節點即為監測點。進一步,所述步驟(23)的具體步驟如下:(231)從初代樣本中選擇一個最差樣本后,用最優樣本替換最差樣本,用一個最優樣本和其它樣本兩兩配對作為親代樣本,從親代樣本中分別隨機選取一半的無線傳感器進行位置互換,生成中間代樣本;(232)對中間代樣本區域畫細密的網格,遍歷所有網格節點;(233)記錄中間樣本中有且僅有一個無線傳感器覆蓋的網格節點集合a和該網格節點對應的無線傳感器節點集合b,統計b中的無線傳感器對網絡一次覆蓋的貢獻,并對每個無線傳感器進行投票,票數值最小的,即為出現次數最少的無線傳感器,即為冗余節點,將其刪除,刪除一個冗余無線傳感器就增加一個無線傳感器;(234)記錄中間代樣本中沒有被任何無線傳感器覆蓋的網格節點集合c,枚舉將新增無線傳感器放置在c中任意位置覆蓋網格節點的個數,找到最大化的網格節點位置,即為新增無線傳感器的位置,在此位置新增無線傳感器后,生成下一代樣本。進一步,所述步驟(3)的具體步驟如下:(31)利用kruscal算法找到無線傳感器網絡的最小生成樹;(32)找到最小生成樹的葉子結點作為最外圈,并標記葉子結點;(33)從最小生成樹中將標記的葉子節點和邊去掉,修改生成新的最小生成樹;(34)再從新的最小生成樹中找到葉子結點,作為次外圈;(35)重復步驟(32)-步驟(34),直至最小生成樹節點數為0,即找到基站位置,或遍歷后發現有一條線段和它的兩個端點,就在線段上任取一點作為基站位置。綜上所述,由于采用了上述技術方案,本發明的有益效果是:一、本發明考慮了實際情況中無線傳感器異構,地形、障礙物、森林體積不規則、樹木密度不均勻等多方因素的影響,結合遺傳算法準確地用遺傳算法對三維無線靜態無線傳感器網絡進行建模,具有較高實用價值;二、遺傳算法設計中,利用離散投點的方式統計三維區域無線傳感器覆蓋率;枚舉空白區域內增加節點的效果,對無線傳感器局部拓撲進行變異調整,有效加速收斂;三、從葉子結點向最小生成樹內部進行遍歷的算法,保證三維區域的網絡跳數最小,找到最優基站位置,使得網絡能耗最低。四、結合5g研究中高密度的小基站的概念,對森林三維空間的無線傳感器網絡進行分層設計,利用小基站之間的相互連通,實現無線傳感器之間100%連通,為5g相關技術的研究提供技術支持。五、考慮無線傳感器數量、能耗、森林地形與障礙物等多方因素對網絡拓撲綜合影響,與現有技術相比,本發明限制條件不多,如傳感半徑不受限制,覆蓋率、連通率比例不受限制。附圖說明圖1為本發明中森林內無線傳感器及基站示意圖;圖2為發明中遺傳算法進行三維靜態無線傳感器網絡的拓撲部署的流程圖;圖3為本發明中隨機生成的初代樣本的示意圖,每個點代表一個傳感器;圖4為本發明中隨機生成的初代樣的示意圖;每個球代表傳感器覆蓋區域,覆蓋率:70.2%連通性:△i=2;圖5為本發明中第8次迭代后最優樣本無線傳感器分布示意圖;圖6為本發明中第8次迭代后傳感器覆蓋區域示意圖,覆蓋率:81.88%連通性:△i=1;圖7為本發明中第10次迭代后最優樣本無線傳感器分布示意圖;圖8為本發明中第10次迭代后的最優樣本覆蓋區示意圖,覆蓋率:87.71%連通性:△i=0,無需修復;圖9為本發明中10次迭代后最優樣本的最小生成樹示意圖;圖10為本發明中基站位置示意圖;圖11為本發明中初代樣本覆蓋率71.39%,△i=2示意圖;圖12為本發明中優化樣本覆蓋率92.56%,△i=0示意圖。具體實施方式為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發明,并不用于限定本發明。由于森林的覆蓋面積十分廣闊,因此我們將森林進行區域分割,把每個區域進行遺傳算法,遺傳算法后生成最小生成樹找到最優基站位置,用基站連通起來將會使我們的研究復雜程度降低,同時達到較好的森林監測目的。(1)根據森林的地理環境,如障礙物、樹木密度、地形等因素將目標森林區域的三維空間劃分為若干個區域,如圖1所示;(2)對于每一個區域使用遺傳算法進行三維靜態無線傳感器網絡的拓撲部署,調整無線傳感器數量,使得本區域網絡覆蓋率接近90%,無線傳感器節點之間彼此都可以連通;如圖2所示,具體步驟為:(21)隨機產生n個投放m個無線傳感器的區域作為初代樣本;(22)通過自然選擇函數在初代樣本中挑選最優樣本;自然選擇函數的具體公式如下:覆蓋性:本次研究中,我們取無線傳感器為boolean模型,即無線傳感器檢測范圍為半徑為rs的球體。則單個無線傳感器可覆蓋到的檢測范圍為定義總的無線傳感器的覆蓋范圍為即每個無線傳感器覆蓋范圍的并集。v是網格點點數,當畫網格畫的很細時,用被覆蓋點數除以總點數表示覆蓋率,v的計算是利用了微元的思想,將區域用密集的網格劃分,網格節點即為監測點。則定義無線傳感器的網絡的覆蓋率f1=vcover/v。即為了簡化不規則體積地計算,在實際仿真時,創新地對某一區域畫細密的網格,并保證網格寬度遠遠小于無線傳感器檢測半徑。計算區域內所有網格點是否被無線傳感器覆蓋,若不管被覆蓋多少次也只記為被覆蓋,因此,覆蓋率可用被覆蓋的網格節點與區域內所有網格節點的比值表征。連通性:我們設無線傳感器的連通半徑為rc,即無線傳感器可與到它的距離小于等于rc的其他無線傳感器連通。因為我們要保證在給定范圍內所有的無線傳感器都能相互連通,所以我們用能使網絡實現相互連通所需增加的額外無線傳感器數目△i作為衡量連通性的指標。具體計算△i的做法為:找到現有節點能構成的最小生成樹,找到最小生成樹中大于連通半徑的路徑。假設大于連通半徑的路徑的長度為l,則這條路徑上需要增加的節點個數為所以△i=∑j△ij,[]表示向下取整,j表示最小生成樹中連線個數。我們先假設森林內的樹木均勻分布,以下討論在一小片正方體微元(微元就是指無線傳感器分布的小體積塊)森林區域內的無線傳感器部署問題。假設該片森林區域為一個體積為v(a*a*a)的立方體,在該片區域中的無線傳感器數量m是定值,此處m值的確定與森林內樹木的密度有關。在密集的森林內可部署較多的無線傳感器,稀疏的森林則部署更少的無線傳感器,這樣可以達到節約資源的目的。我們采用前面提到的遺傳算法來解決這30個無線傳感器在立方體微元森林區域中的分布問題。我們首先得到21個在可投放無線傳感器區域隨機投放m個無線傳感器的樣本。然后構造一個自然選擇函數。此函數應既包括覆蓋信息也包括連通信息。這里我們構造的函數為b、c表示覆蓋性和連通性的權重值,△i為使得網絡連通仍需增加的無線傳感器數量,即該網絡最小生成樹的節點數與現有無線傳感器數的差值。為使連通性和覆蓋性均能較好的體現,我們取(23)以初代樣本得到親代樣本,通過遺傳與變異產生新的n個投放m個無線傳感器的區域樣本,即下一代樣本;通過自然選擇函數,我們從21個樣本中選出一個最優樣本fmax,一個最差樣本fmin。然后用最優樣本替換最差樣本(為增加收斂速度)后,選擇一個最優樣本和18個一般樣本組成的20個樣本兩兩配對作為親代樣本,從親代樣本中分別隨機選取一半的無線傳感器進行位置互換,得到中間樣本。這是一次遺傳過程,經過第一次遺傳過程,可得到第二代遺傳樣本。為了加快得到理想的分布,我們對其進行有利的變異。具體變異過程如下:每次的變異過程我們都將一個最浪費資源的無線傳感器移動到一個最空曠的地方。具體實現方法為:首先對中間樣本畫細密的網格,遍歷所有網格點。記錄中間樣本中有且僅有一個無線傳感器覆蓋的網格點集合a和該網格點對應的無線傳感器節點集合b,統計b中出現次數最少的節點即為冗余節點(這個操作目的是找到每個無線傳感器對網絡一次覆蓋的貢獻,我們不希望一個監測點被多個無線傳感器覆蓋。比如,無線傳感器有32個,那么遍歷a中監測點,看看監測點被那一個無線傳感器覆蓋了,并對該無線傳感器進行投票,計數加一。最后根據每個無線傳感器的得票數值,確定每個無線傳感器對一次覆蓋的貢獻,數值少的無線傳感器就是冗余無線傳感器。),將其刪除。記錄沒有被任何無線傳感器覆蓋的網格節點集合c,枚舉將新增無線傳感器放置在集合c中任意位置覆蓋網格節點的個數,找到最大化的網格節點位置,即為新增無線傳感器的位置,在此位置新增無線傳感器后,生成下一代樣本。這種變異的處理方式可以大大加快遺傳算法的收斂速度,并避免陷入局部最優解,高效地迭代出全局最優拓撲。(24)在下一代樣本中加入初代樣本中的最優樣本選出下一代最優樣本;(25)判斷下一代最優樣本是否滿足要求,如果滿足,則輸出最優樣本,經過很多次的遺傳和變異,我們可以得到一個覆蓋率達到90%,且連通性也不錯的樣本,轉到步驟(26),如果不滿足,轉到步驟(23)進行下一代樣本迭代;(26)判斷最優樣本是否連通,如果不連通,增加額外無線傳感器數目△i作為衡量連通性的指標,得到增加的無線傳感器節點個數,得到無線傳感器都能相互連通的區域連通。即使我們得到了一個比較優化的樣本,覆蓋率達到90%,連通性也比較好,我們也并不能保證這個區域內的無線傳感器實現完全連通。為得到一個完全連通的網絡,我們還需對我們所得的最優樣本進行修復。具體做法為:找到現有節點所構成的最小生成樹,在大于覆蓋半徑的路徑l上均勻增加個無線傳感器。以一個體積為v(a*a*a)的正方體森林區域為例。假設樹木在此區域均分布。無線傳感器可附著在樹木上。在此區域以樹木間距離為步長創建網格,無線傳感器的位置可以為任意網格節點,如圖3-圖8所示,得到覆蓋率:87.71%連通性:△i=0無需修復。(3)利用kruscal算法得到本區域連通的最小生成樹,對該最小生成樹進行遍歷,找到最優基站。在確定了一個微元內的無線傳感器網絡分布后,我們需要尋找到一個最佳的基站位置。理論分析表明,無線傳感器網絡能量的利用率隨sink節點跳數的增加而快速單調遞減。sink節點即為我們需要放置基站的位置。所以為了提高無線傳感器網絡的利用率,延長網絡使用壽命,我們需要找到一個sink節點的位置,使網絡最大跳數盡量達到最小。如圖9、10所示,具體步驟如下:(31)利用kruscal算法找到無線傳感器網絡的最小生成樹;(32)找到最小生成樹的葉子結點作為最外圈,并標記葉子結點;(33)從最小生成樹中將標記的葉子節點和邊去掉,修改生成新的最小生成樹;(34)再從新的最小生成樹中找到葉子結點,作為次外圈;(35)重復步驟(32)-步驟(34),直至最小生成樹節點數為0,即找到基站位置,或遍歷后發現有一條線段和它的兩個端點,就在線段上任取一點作為基站位置。圖10中,相同顏色的邊為同一跳,該最小生成樹上有33個無線傳感器,共11跳。通過仿真結果我們可以看出,經過10次的遺傳與變異,我們可以得到一個覆蓋率為87.71%,且可以實現完全連通的無線傳感器網絡。這個結果達到了我們的預期要求,且比初代樣本優化了許多。然后我們通過畫出無線傳感器網絡的最小生成樹可以找到其根結點,確定基站放置的位置。(4)利用所有區域的最優基站之間的相互連通,完成森林三維空間的無線傳感器的100%連通。本算法嚴格考慮了實際地形地貌分布以及外物對無線傳感器本身的連通覆蓋特性造成的影響。對此,我們所采取的對策是微元塊多樣化。地形對于本模型的主要影響為每個微元將不再是規則的正方體。針對這個問題,我們只需在控制在最初隨機投放無線傳感器時,使無線傳感器不落在不可投擲的區域。該方法可以很好的解決地形地貌影響對原本方案的影響。而對于森林中比較常見的障礙物,例如比較粗壯的樹枝,大的石塊等等,這些將會對整個網絡的覆蓋和連通特性造成影響。如圖11初代樣本覆蓋率71.39%,△i=2、如圖12優化樣本覆蓋率92.56%,△i=0。考慮各種常見的障礙物和地形對無線傳感器網絡的影響,總結如下兩點。如果障礙物處不能放置無線傳感器只需在投點時避開障礙物的位置,則采取和地形地貌影響一樣的方法進行處理。如果障礙物會造成原本連通的無線傳感器之間不能連通,比如障礙物的介電常數,形狀等因素影響了空間電磁場的傳播,就可能造成無線傳感器之間的連通性被破壞。當兩個無線傳感器之間的連通被阻斷時,我們先判斷其是否對整張網絡的連通造成影響。如果整張網絡依然連通,則無需進行修復。若整張網絡不連通,我們將受到阻礙的兩個無線傳感器的距離設為無窮大,然后利用kruscl算法尋找一個可以使整張網絡連通的最小生成樹,在這個樹中大于一倍連通半徑的路徑上增加最少個點使得整張網絡連通。此解決障礙物的算法,同時也適用于當無線傳感器網絡有節點損壞時,影響整張網絡連通性的情況。增加對地形、障礙物、樹木分布等因素的處理環節使得該算法可擴展性高,適應動態變化的拓撲結構。對比是否考慮地形、障礙物、樹木分布等因素的處理環節兩種情況:樣本編號12345678910覆蓋率/%87.8986.8378.2583.1276.0481.5684.5682.1682.3879.93連通度0000000010表1.考慮地形影響的森林區域最優拓撲樣本編號12345678910覆蓋率/%87.7185.0687.7182.1586.4186.4186.1186.0685.9985.35連通度0000000000表2.不考慮地形的森林區域的最優拓撲對比兩種情況下算法處理性能,均能找到網絡覆蓋率在90%左右,100%連通的拓撲。因此,本算法處理地形、障礙物、樹木分布等因素對無線傳感器網絡拓撲的影響方案是可行的。本發明用于已知四條連通路徑受到阻斷(連線的四條),此解決障礙物的算法,同時也適用于當無線傳感器網絡有節點損壞時,影響整張網絡連通性的情況。該算法可擴展性高,適應動態變化的拓撲結構。本發明創新地利用遺傳算法和圖論相關理論,完成基于覆蓋和連通的三維靜態無線傳感器網絡的建模和最優拓撲方案的求解。本方案收斂速度快,利用較少數量的無線傳感器,實現網絡覆蓋率90%和連通度100%的指標。本發明考慮了實際情況中無線傳感器異構,地形、障礙物、森林體積不規則、樹木密度不均勻等多方因素的影響,使得最優方案有較好的使用價值。本發明通過實時監控網絡,通過局部增加節點的方式,對出現通信障礙的區域進行修復,本方案可擴展性高,適應動態變化的拓撲結構。本發明結合5g研究中高密度的小基站的概念,依據樹木密度,將森林劃分區域,在每個區域中設立小基站。區域內基于無線傳感器—無線傳感器或無線傳感器—基站通信,區域間基于基站—基站通信。巧妙的運用實際需要的基站節點來改良整個端接時可能產生的不連通性,也就是解決了塊與塊之間的連通性,并且在理論上對于覆蓋率也有一定程度上的增益。并且,通過優化基站位置,減小每個區域的平均跳數,使得網絡耗能盡量均勻,延長整個無線傳感器網絡的壽命。以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護范圍之內。當前第1頁12