王 莘
(西安航空學院電氣學院,陜西西安,710077)
一般來說,如果一個系統(tǒng)不存在任何的外部指令,系統(tǒng)在已設定的某種規(guī)則的控制下,控制、協(xié)調(diào)各個組成部分形成有序的機構,就是自組織。顯然,無線傳感器網(wǎng)絡(WSN)就是一種典型的自組織系統(tǒng)。
自組織算法與網(wǎng)絡的拓撲結構相關,分為基于平面結構和層次結構的兩種算法。而后者相對于前者,在網(wǎng)絡的管理、QOS支持、系統(tǒng)的擴展性、降低系統(tǒng)開銷等方面有著明顯的優(yōu)勢。在現(xiàn)代的大型無線傳感器網(wǎng)絡的應用中,層次化的趨勢越加明顯。本文研究的的分簇自組織算法也是基于層次網(wǎng)絡結構。
分簇算法是把網(wǎng)絡節(jié)點分成了簇首節(jié)點和成員節(jié)點兩類,再由成員節(jié)點就近加入簇首節(jié)點組成簇。兩類節(jié)點是通過分布式算法在網(wǎng)絡初期劃分的,并且在運營的過程中,周期性重構簇,每個周期稱之為“輪”。利用分簇算法的WSN因完成路由功能,而減少路由算法的開銷;壓縮、融合相關信息,是網(wǎng)絡的使用效率得以提高。這些都有效的減小了網(wǎng)絡的負荷,有利于延長網(wǎng)絡的生存期。
下面介紹本文涉及的分簇算法:
1)LEACH算法:這種算法每輪可以分為兩個過程:簇的建立和數(shù)據(jù)傳輸。網(wǎng)絡以周期循環(huán)的方式隨機的選擇網(wǎng)絡節(jié)點成為簇首節(jié)點,成員節(jié)點以就近的方式加入簇首形成簇。在數(shù)據(jù)傳輸時,成員節(jié)點把感知的內(nèi)容傳輸給簇首壓縮、融合后,由簇首把結果傳輸給匯聚節(jié)點。如此循環(huán),直到網(wǎng)絡的所有節(jié)點的死亡(能量耗盡)為止。
2)LEACH-C算法:是LEACH算法最為經(jīng)典的改進算法,為了優(yōu)化簇首在網(wǎng)絡中的分布,引入了中心控制機制,來提高網(wǎng)絡的性能。兩種算法的主要區(qū)別在簇首的建立過程,LEACH-C算法在建立簇的過程中,先由匯聚節(jié)點收集所有節(jié)點的位置信息和能量,在根據(jù)模擬退火算法,得到分簇方案。方案建立時,所選擇的簇首的依據(jù)是,整個網(wǎng)絡在運行的過程中所消耗的總能量最少。之后向所有成員節(jié)點傳送節(jié)點的ID信息,根據(jù)該信息決定成員節(jié)點的下一步工作狀態(tài):加入簇首節(jié)點或進入休眠。
經(jīng)前文的介紹,可看出LEACH、LEACH-C雖然可有效的降低節(jié)點能耗,但其簇首節(jié)點因承擔了過于繁多的功能大大增加了其負擔,如果能將剩余能量與簇首的選舉之間建立一定的關系,就能有效的實現(xiàn)整個網(wǎng)絡節(jié)點的負載能耗的均衡,以延長網(wǎng)絡的生存期。本文提出一種基于LEACH算法的無線傳感器網(wǎng)絡分布式節(jié)能分簇算法DEEC,它從節(jié)點的分簇及分簇結構、平均能量估算兩個各方面對原有的算法加以改進。
本文是通過三個步驟來實現(xiàn)DEEC算法
2.1.1 平均能量估算
首先假設在M×M的范圍內(nèi)隨機的分布著n個節(jié)點,若每輪成員節(jié)點發(fā)送的數(shù)據(jù)為kbits的消息,則該輪的能量消耗的總量如式3-1:
其中,Ee是每處理1bit信息接收和發(fā)送電路耗費的能量,Ed簇首消耗的能量,ε功放單位面積能耗,k′是簇首總數(shù),dc是匯聚節(jié)點和簇首間的平均距離,ds是成員和簇首間的平均距離。
對式3-1,求Er關于k′的偏導數(shù),令其為0,得到最優(yōu)簇首個數(shù)如式3-2:
第p輪節(jié)點的平均能耗如式3-3:
其中E0為網(wǎng)絡初始能量,L為網(wǎng)絡生存的總輪數(shù)。
2.1.2 選擇簇首
在DEEC中簇首的選擇不是隨機的,而是節(jié)點中所剩余的能和平均能量兩者相關的,只有能量剩余多的節(jié)點成為簇首概率大與能量剩余少的節(jié)點,才能延長網(wǎng)絡的生存期。節(jié)點成為簇首的概率如式3-4:
其中Po是節(jié)點成為簇首的平均概率。
2.1.3 重新建立簇的結構
在LEACH算法中只有簇首和成員節(jié)點之分,而簇首節(jié)點承擔著控制簇的建立、壓縮和融合信息、傳輸信息等功能,這樣因為過重的負擔大大降低了網(wǎng)絡的生存期。所以在這里我新建立了一個簇結構,在其中添加了兩個新的功能節(jié)點:中心節(jié)點和發(fā)送節(jié)點。來對簇首的功能進行了一次分化。中心節(jié)點分擔了信息的壓縮和融合的功能,發(fā)送節(jié)點則負責之后向匯聚節(jié)點發(fā)送信息。中心節(jié)點和發(fā)送節(jié)點的選擇如圖1、圖2所示。
圖1 中心節(jié)點確定流程圖
圖2 發(fā)送節(jié)點確定流程圖
通過Matlab模擬仿真對DEEC、LEACH、LEACH-C的節(jié)點性能進行對比,對DEEC的性能作出客觀正確的評價。設定DEEC仿真環(huán)境。設定仿真參數(shù),仿真參數(shù)如表1所示。
圖3、圖4是我們通過仿真得到的三種算法的節(jié)點存活數(shù)和數(shù)據(jù)傳輸能力對比圖,我們可看出:
1)DEEC比LEACH、LEACH-C的存活率分別高出了28%和5%。
2)DEEC節(jié)點開始死亡輪次和全部死亡輪次值均大于LEACH、LEACH-C。
3)DEEC比LEACH、LEACH-C的傳輸能力分別高出了283%和39.3%。
圖3 存活節(jié)點數(shù)對比
綜上所述,使用DEEC能更有效的降低系統(tǒng)的能耗,網(wǎng)絡生存周期得到明顯的提升;數(shù)據(jù)傳輸能力強,具有更好的拓展性。可以更有效地解決無線傳感器網(wǎng)絡的能耗問題。
本文針對無線傳感器網(wǎng)絡的能耗問題,提出了一種基于LEACH算法的無線傳感器網(wǎng)絡分布式節(jié)能分簇算法DEEC。該算法為了減少簇首節(jié)點的負擔,添加了中心節(jié)點和發(fā)送節(jié)點,分擔了簇首節(jié)點的數(shù)據(jù)壓縮、融合以及數(shù)據(jù)發(fā)送功能,使整個網(wǎng)絡的能耗均衡。在簇首形成時,引入了參考量-平均能量,使其與節(jié)點剩余能量對比,使剩余能量和成為簇首概率相連接,進而使網(wǎng)絡的剩余能量得以均衡,延長網(wǎng)絡壽命。
圖4 數(shù)據(jù)傳輸能力對比
表1 LPPST仿真參數(shù)
[1]戴由旺,李增有,韋俞鋒.基于ZigBee的低功耗無線傳感節(jié)點設計與實現(xiàn)[J].現(xiàn)代電子技術,2011(18):121-123,126.
[2]姚蘭,曾鋒.基于最大覆蓋集的無線傳感器網(wǎng)絡節(jié)能策略研究[J].計算機工程與科學,2013(4):47-52.
[3]王雪飛.自組織傳感器網(wǎng)的節(jié)點節(jié)能與網(wǎng)絡節(jié)能策略[J].計算機應用,2006(6):204-206.
[4]謝麗,楊勇.無線傳感器網(wǎng)絡節(jié)能分析[J].農(nóng)業(yè)網(wǎng)絡信息.2013(3):65-68.
[5]邱春榮.無線傳感器網(wǎng)絡節(jié)能技術研究[J].長沙民政職業(yè)技術學院學報.2012(3):124-126.