新聞中心

        EEPW首頁 > 物聯網與傳感器 > 設計應用 > 基于權值的無線傳感器網絡分簇算法

        基于權值的無線傳感器網絡分簇算法

        —— Clustering Routing Algorithm for Wireless Sensor Network
        作者:王斯瑤 吳援明 謝光忠 電子科技大學 光電信息學院 時間:2009-02-25 來源:電子產品世界 收藏

        摘要:綜述了國際上網絡路由算法的主要成果,但重點分析更具有能量有效性的算法,總結了各種算法的主要思想,并對其進行了性能評價,提出了一種新的算法,及有待進一步研究的問題。
        關鍵詞:網絡;;分簇;能量有效

        本文引用地址:http://www.104case.com/article/91670.htm

        引言

          近年來隨著傳感器和無線通信技術的進步,網絡(WSN)技術發展迅猛,進展很快,使我們可以把大量低成本的傳感器分布在廣闊的區域來監測我們所感興趣的環境。傳感器通過無線網絡連接起來形成無線傳感器網絡(WSN),WSN有一些自身的限制,如:有限的能量供應[1,2],有限的計算能力和有限的連接傳感器的無線鏈路的帶寬,而且WSN的應用領域也給路由協議帶來了一些限制,比如說,WSN可能隨意地分布在惡劣的或不可到達的環境中,人為維護十分困難,因此延長網絡壽命是無線傳感器網絡協議設計的關鍵技術。

        無線傳感器網絡

          無線傳感器網絡由大量傳感器節點和一個基站(BS)構成,基站是節點與其它網絡通信的出入口,傳感器節點監測環境并將收集的數據傳給基站。然而,它能量有限,直接將數據傳給基站會消耗很多能量(圖1)。采用多跳的路由方法也不理想,因為最接近基站的節點會因路由大量收到的數據而很快死亡,從而導致后來到達的數據不能傳給基站。其它的路由方法中[3,4],PEGASIS中的節點只與鄰居節點通信,節點輪流發送融合后的數據給BS,基于蟻群算法的路由在盡量選擇最短路徑的同時考慮每個節點的能量消耗,以選出更合適的路徑。

          本文中,我們重點評價更具有能量有效性的算法,它將無線傳感器網絡分成若干簇,每個簇選舉出一個簇頭,簇頭作為本地基站將簇內節點傳給它的數據進行數據融合[5]后再傳給基站(圖2),因而大大降低了節點消耗的能量,延長了網絡壽命。


        圖1  傳感器系統模型一


        圖2  傳感器網絡系統模型二

        無線傳感器網絡中的分簇路由算法
        傳統路由算法

          直接路由算法中節點直接將數據傳送給基站,這樣遠離基站的節點會消耗很多的能量而很快死亡。而MTE(Minimum Transmission Energy)[6]是它的一個改進,它采用多跳的方法傳送數據,每個節點運行建立路由以確定下一跳鄰居節點,這個鄰居節點是朝BS方向上離它最近的節點(假設每個節點都知道網絡中其它節點的位置),數據包通過下一跳鄰居節點傳送直到到達BS。

          在MTE這種路由算法中最接近基站的節點會因路由大量傳來的數據而很快死亡,而直接通信中是離基站最遠的節點最快死亡。

        最基本的分簇路由算法

          為了解決傳統路由算法中的高能量耗散問題,提出了LEACH(Low-Energy Adaptive Clustering Hierarchy)[7]—一種最基本的分簇路由算法,每個節點根據一定的概率周期性地輪換做簇頭,成為簇頭的節點用相同的發射功率給網絡中的所有節點廣播消息,非簇頭節點選擇加入收到信號最強的那個簇頭的簇并用CSMA MAC協議發消息給簇頭,通知其成為它的成員。之后,簇頭根據簇中節點數目創建TDMA[8]時間表告訴每個節點發送數據的時隙,以避免碰撞的發生。另外,簇頭還要通知簇成員使用哪種CDMA編碼,簇頭也使用這種編碼過濾收到的數據,這樣鄰居簇的信號就會被當為噪聲過濾掉,因此不會影響簇內通信。節點只在分配給它們的時隙內發送數據,其它時間關閉其無線發射機以節約能量,到此,簇就形成了。在數據發送階段,簇頭將成員節點傳給它的數據進行融合后直接傳給BS。

          在LEACH中,成員節點在分配的TDMA時隙內總有數據傳給簇頭,為了節約能量,節點也許只需在它檢測到有興趣的數據時才傳送數據,另外,算法周期性地分簇會消耗節點很多能量。因此,我們需要在以后的路由算法中在這些方面對它進行改善。

        可形成最佳簇的中心控制分簇路由算法

          LEACH雖節約能量,但它不能形成最佳簇。中心控制算法通過基站來控制形成最佳的簇。

          LEACH-C中,每個節點發送包含自身位置信息和能量信息的消息給BS,位置信息可以保證形成優良的簇,為了將能耗平均分攤給所有節點,BS計算網絡節點的平均能量,低于此能量的節點都不能做簇頭,因此用LEACH-C可以形成比LEACH更優良的簇,它的其它階段和LEACH一樣。靜態分簇(Static Clustering)中,簇形成方法和LEACH-C一樣,只是這些簇頭一旦形成,在整個網絡生命期都固定不變,其余的數據傳輸方式和LEACH和LEACH-C一樣,但是一旦簇頭能量耗盡,簇內節點就失去了通信能力。

          LEACH-C和LEACH在仿真時間內比Static Clustering明顯可以發送更多的數據給BS,并且每單位能量可傳送更多的數據,但LEACH-C性能最好。

          由于LEACH在一些情況中所選的簇頭可能全在區域的一端,在另一端的傳感器節點可能偵聽不到簇頭發出的信息,而不能加入任何簇,因此提出了SC(Substractive Clustering)和LMSSC(Least Mean Squared Substractive Clustering)[9]分簇算法。

          SC的思想是具有最多鄰居數的節點被選為一個簇的中心,在一個確定半徑內的其它節點歸為它的簇,之后再尋找新的具有最多鄰居的節點,這樣一直持續下去直到80%的節點已被分簇。

          LMSSC在SC上進行了修改以形成更好的簇,它的思想是在確定半徑內與鄰居節點的距離平方和平均值最小的節點被選為一個簇的中心,所有這個半徑內的它的鄰居節點被劃為它的簇。這兩種方法都是在簇形成以后再在簇內選擇合適的簇頭。簇頭將收到的數據進行融合后直接或選擇一條代價最小(到BS能量消耗最小)的路徑將數據傳給BS。

          LMSSC中節點運行的周期比SC中的更長,所以LMSSC產生的簇更佳。并且,選擇最小代價路徑傳送數據的SC和LMSSC比直接傳送數據的SC和LMSSC性能更優。

          HYENAS(Hybrid Energy-Aware Sensor Networks)[10]也是先形成簇,再選擇簇頭,但它用CBR(Case-Based Reasoning)作為一種決策方法來保證形成合適的簇,CBR技術通過吸取每輪結束時的錯誤經歷來創建黑名單,黑名單是用來存放一組簇的。這些簇的簇成員所用的能量超過了網絡中所有節點所用能量的平均值,當當前每個簇的特性(如:簇成員數,簇頭到其它節點的距離平方和等)和黑名單中簇的特性有相似之處時,基站就會增加一個簇。如果有少數節點離開了原來的簇時,它們會自己形成子簇,子簇簇頭會單獨為子簇創建TDMA時間表,然后把這個消息傳給它最初的簇頭,簇頭再傳給基站。這種方法能處理少數移動節點的問題,還能大大減少簇頭和移動節點的通信距離。

          當第一個節點死亡或最后一個節點死亡時,HYENAS運行的輪數要比LEACH多。因此,它的網絡壽命也就相應更長。

        基于閾值信息的分簇路由算法

          TEEN(Threshold Sensitive Energy Efficient Sensor Network Protocol)[11]協議在LEACH上進行了改進。它的分簇方法和LEACH一樣,只是它的簇成員不像LEACH算法那樣總是發送數據給簇頭。它的每個節點設定了兩個閾值,硬門限(HT)和軟門限(ST),當節點監測到的數據大于HT并且與前次監測的數據變化值大于或等于ST時才發送數據給簇頭,這樣可以大大減少節點發射數據的次數,但節點不發送數據用戶就會長時間收不到數據或者認為節點死亡。

          APTEEN(Adaptive Periodic Threshold-sensitive Energy Efficient Sensor Network Protocol)[12]協議彌補了TEEN的缺點,簇成員節點除了在數據發生明顯變化時發送外,還會周期性地發送消息,這樣節點除了能節約能量外,用戶收到發送來的消息后也可以周期性得獲得已存儲在基站的數據。

          在每個節點的平均能量耗散和存活節點總數性能方面,APTEEN介于TEEN和LEACH之間,但TEEN性能最好,因為TEEN中簇內的節點發送數據的次數最少。

        其它的分簇路由算法

          PEGASIS(Power-Efficient Gathering in Sensor Information System)[13]的主要思想是每個節點從最近的鄰居節點接收和發送數據給最近鄰居節點,并且輪流發送融合后的數據給BS,這個方法可將能量負載均勻地分攤給網絡中的所有節點。

          PEGASIS:與LEACH相比,當相同數目的節點死亡時,PEGASIS比LEACH要運行多一倍的輪數。

          基于蟻群算法的路由算法[14,15]是通過在整個網絡內建立梯度(節點與相鄰節點到基站的最小跳數之差稱為梯度)和每個節點之間的信息素(提示數據包選擇哪條路徑的信息稱為信息素)來進行路由選擇。在設計信息素濃度的公式時,不僅考慮了節點間的梯度,還加入相鄰節點剩余能量的因素。

          該算法在盡量選擇最短路徑的同時,還考慮每個節點的能量消耗,以達到尋找最佳路由的目的。

          EBRA(Energy-Based Radius Self-Adjust Routing Protocol)[16]中節點會選擇一條平均單位跳數消耗最少能量的路徑傳送數據,當節點自身的能量降低到一定數值以后,它會向其鄰居節點廣播進行降低半徑的請求來達到維護路由的目的。

        Mobile Ad Hoc中的分簇路由算法

          在無線傳感器網絡中少數節點移動的情況下,我們可以借鑒Mobile Ad Hoc網絡中的分簇算法[17,18]。Mobile Ad Hoc中,由于節點的頻繁移動,分簇的目的則是保證穩定的分簇結構,最小化簇建立和維護的開銷,最大化系統中移動節點的壽命。DCA(Distributed Clustering Algorithm)[19]網絡拓撲結構在算法執行期間不變,因此它對靜態網絡很有用。算法中,只有當節點的具有較大權值的鄰居節點決定了它自己的角色時,節點才決定自己承擔什么樣的角色。相反,DMAC(Distributed and Mobility-Adaptive Clustering)適用于拓撲結構不斷變化的網絡,節點不僅對從其它節點發來的消息做出適當的反應,還對與其它節點連接的鏈路失敗或新鏈路的出現做出適當的反應。DBCA(Distributed Weighted Clustering Algorithm for Mobile Ad Hoc)[20]的簇形成方法和DWBCP的相似,在簇維護階段,當節點移出了它的簇邊界時,它就廣播一個消息要求加入一個新簇,任何收到該消息的簇頭都會發送應答消息給該節點,節點根據消息選擇加入具有最小權值的簇頭的簇,如果在給定的時間內沒收到任何消息,就宣布自己做為簇頭。當簇頭消耗的能量超過事先設定的閾值時,簇頭就不再擔任這個角色,該簇重新推選簇頭。

        基于權值的分簇算法

          這里提出一種創新的分簇路由算法——基于權值的分簇路由算法。該算法主要研究的是簇頭選舉方法,每個節點根據自己的剩余能量、鄰居數目、與所有鄰居的平均距離、與基站的距離、以及能量消耗速度來計算出自己的權值:

          其中Ev為節點v的剩余能量,Nv為節點v的鄰居數目,即在節點v發射范圍內的節點數目之和,δ為簇頭能夠處理的理想的節點數,Dnv與Dbv分別為節點v與鄰居節點的距離之和,與基站的距離,R為簇覆蓋范圍的直徑,Numv為節點v做過簇頭的次數,Tv為節點v在現在的能量消耗速度下,直到能量水平達到最小可接受的閾值時的期望時間,W1—W6為權值因子,根據系統需要選擇,它們之和為1。在鄰居節點中具有最小權值的節點做為簇頭,其它的過程,諸如數據傳輸過程都與LEACH中的一樣。

        系統主要操作步驟:

          Step1:根據以上的方法選取簇頭形成簇;

          Step2:簇頭為每個簇成員分配TDMA時間表;

          Step3:節點在分配的時隙內發送數據給簇頭;

          Step4:簇頭將收到的數據進行融合后通過單跳或多跳的形式傳給基站;

          Step5:當簇頭的剩余能量小于等于本輪開始時能量的某個百分比時,重新分簇。

          基于權值的分簇路由算法考慮了形成簇頭的多種因素,如簇內通信代價、簇間通信代價、節點自身的能量狀況,而LEACH算法只根據節點做過簇頭的次數來決定簇頭的選舉,因此它選出的簇頭更合理,產生的簇也更佳。

        結語

          由于傳感器網絡通常分布在環境惡劣或人不可到達的地方,所以人為維護是困難的,因此在進行數據通信的同時盡可能延長網絡的壽命是我們需要解決的首要任務,分簇算法將無線傳感器網絡分成若干簇,每個簇選舉出一個簇頭,簇頭作為本地基站將簇內節點傳給它的數據進行數據融合后再傳給基站,因而大大降低了節點消耗的能量,延長了網絡壽命,本文綜述的分簇路由算法及提出的創新的分簇路由算法——基于權值的分簇路由算法,都是實現這種目標的有效算法。但后者選出的簇頭在節約能量方面最佳,更受推崇。

          基于權值的分簇路由算法對權值因子的選擇是人為的,即認為哪個因素重要,就給相應的因素賦更大的權值,反之,賦更小的值,但這些值究竟應該多大,應該有一個更具說服力的模型來描述,比如,在作戰環境、地震檢測、動物移動中應該具體用什么模型,以及它們對網絡壽命的影響,這些都是還需要進一步研究的問題。

          無線傳感器網絡中的路由算法對網絡的壽命起著關鍵的作用,近年來,分簇路由算法已頻繁地用于無線傳感器網絡中,因為它的路由算法更具有能量有效性。本文綜述了近年來分簇路由算法的主要成果,及它們的性能比較,并提出了一種在能量方面更有效的創新性算法,以及還需期待研究的問題。

        參考文獻:

        [1] GUPTA G, YOUNIS M. Load-balanced clustering of wireless sensor networks. Communication, 2003. ICC ’03. IEEE International Conference, 2003,1848-1852.
        [2] 何朝筍.傳感器網絡節點調度算法研究與實現[D].哈爾濱工業大學,2006, U.D.C.: 681.324
        [3] YOUNIS M, YOUSSEF M, ARISHA K. Energy-aware routing in cluster-based sensor networks. Modeling, Analysis and Simulation of Computer and Telecommunications Systems, 2002. MASCOTS 2002. Proceedings.10th IEEE International Symposium, 2002,129 – 136.
        [4] 董婷.傳感器網絡中基于自適應的路由算法研究[D].湖南大學,2006
        [5] TILLAPART P, THAMMAROJSAKUL S, THUMTHAWATWORN T. An approach to hybrid clustering and routing in wireless sensor networks. Aerospace Conference, 2005, 1-8.
        [6] HEINZELMAN W R., CHANDRAKASAN A., BALAKRISHNAN H. Energy-efficient communication protocol for wireless microsensor networks. Proceedings of the 33rd Annual Hawaii International Conference, 2000, 10 pp.
        Summary:?Wireless distributed microsensor systems will enable the reliable monitoring of a variety of environments for both civil and military applications. In this paper, we look at communication protocols, which can have significant impact on the overall en.....
        [7] HEINZELMAN W B, CHANDRAKASAN A P, BALAKRISHNAN H.. An application-specific protocol architecture for wireless microsensor Networks. Wireless Communications, 2002, 4(1): 660-670.
        [8] REN Q C, LIANG Q L. An energy-efficient MAC protocol for wireless sensor networks. Global Telecommunications Conference, 2005, 5 pp.
        [9] BASAGNI S. Distributed clustering for ad hoc networks. Parallel Architectures, Algorithms, and Networks, 1999.(1-SPAN’99) Proceedings. Fourth International Symposium, 1999, 310-315.
        [10] TILLAPART P, THUMTHAWATWORN T, PAKDEEPINIT P. Method for cluster heads selection in wireless sensor networks. Aerospace Conference, 2004, 3615-3623.
        [11]  MANJESHWAR A., AGRAWAL D P. TEEN: a routing protocol for enhanced efficiency in wireless sensor networks. Parallel and Distributed Processing Symposium, Proceedings 15th International, 2001, 2009-2015.
        [12] MANJESHWAR A, AGRAWAL D P. APTEEN: a hybrid protocol for efficient routing and comprehensive information retrieval in wireless sensor networks. Parallel and Distributed Processing Symposium, Proceedings of the International, 2002, 195-202.
        [13] LINDSEY S, RAGHAVENDRA C S. PEGASIS: power-efficient gathering in sensor information systems. Aerospace Conference Proceedings, 2002, 1125-1130.
        [14] DORIGO M., MANIEZZO V, COLORNI A. ant system: optimization by a colony of colony of cooperating agents. Systems, Man, and Cybernetics, Part B. IEEE Transaction, 1996, 1(26): 29-41.
        [15]康望星.基于蟻群算法的無線傳感器網絡路由算法研究[D].哈爾濱工業大學,2006
        [16]柴云鶴.基于能量的半徑自適應傳感器網絡路由協議設計與實現[D].哈爾濱工業大學,U.D.C. : 681.14,2006
        [17] YANG W D, ZHANG G Z. A weight-based clustering algorithm for mobile ad hoc networks. Wireless and Mobile Communication, 2007. ICWMC’07. Third International Conference, 2007, 3-3.
        [18] ZOUHAIR E B, KADOCH M, AGBA B L. A flexible weight based clustering algorithm in mobile ad hoc networks. Systems and Networks Communications, 2006. ICSNC’06. International Conference, 2006, 50-50.  
        [19] HUANG G Y, LI X W, HE J. Energy-efficiency analysis of cluster-based routing protocol in wireless sensor networks. Aerospace Conference, 2006, 8 pp.
        [20] CHOI W C, WOO M. A distributed weighted clustering algorithm for mobile ad hoc networks. Telecommunications, 2006. AICT-ICIW’06. International conference on Internet and Web Application and Services/Advanced International Conference, 2006, 73-73.



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 张家界市| 彩票| 逊克县| 天峨县| 九江市| 黄陵县| 四平市| 遂川县| 从化市| 五莲县| 南召县| 太仓市| 平顺县| 阿图什市| 苗栗市| 甘洛县| 揭西县| 南丰县| 板桥市| 永城市| 吉木乃县| 囊谦县| 灌南县| 万源市| 江阴市| 新安县| 金昌市| 赞皇县| 南漳县| 高台县| 天镇县| 新安县| 新干县| 西华县| 永定县| 莲花县| 繁峙县| 新巴尔虎左旗| 扎鲁特旗| 龙游县| 山西省|