何常勝 夏曉峰
摘 要: 針對無線傳感器網絡(WSN)中均衡分簇問題,提出一種基于模糊邏輯推理的WSN分布式分簇算法(DFLC)。利用分布式模糊邏輯控制器選擇根節(jié)點,以能量大小、中心性、距基站的距離、跳數和節(jié)點密度5個參數作為分布式模糊邏輯控制算法的輸入。為網絡中的中間節(jié)點分配模糊邏輯推理引擎,根據自身和相鄰節(jié)點的信息進行判斷,選擇發(fā)送質量最高子節(jié)點的回復消息給根節(jié)點,減少了消息傳輸數量。仿真實驗表明,在產生消息數量、能源消耗、存活節(jié)點數、容錯性、負載平衡等方面,DFLC算法都優(yōu)于LEACH,ACAWT,Gupta和CHEF算法。
關鍵詞: 無線傳感器網絡; 模糊邏輯推理; 分布式分簇算法; 負載均衡
中圖分類號: TN919?34; TP393 文獻標識碼: A 文章編號: 1004?373X(2016)05?0067?06
0 引 言
在大多數無線傳感器網絡(Wireless Sensor Network,WSN)應用中,都利用聚類技術來減少能量消耗[1]。在分簇網絡中,成員節(jié)點負責發(fā)送遙感數據到根節(jié)點,根節(jié)點負責收集、處理和發(fā)送數據到基站,所以根節(jié)點會比成員節(jié)點產生更多的能量消耗。當簇中的根節(jié)點能量消耗完,則無法處理數據使網絡失效[2]。所以需要一種能夠平衡能源消耗、提高簇和網絡生命周期的算法。
本文提出一種基于模糊邏輯的WSN分布式分簇(Distributed Fuzzy?logic Clustering,DFLC)算法。采用分布式模糊邏輯推理系統(tǒng),以能量大小、中心性、到基站的距離、跳數和節(jié)點密度等參數作為輸入,來動態(tài)選擇根節(jié)點。每個節(jié)點都分配分布式模糊邏輯引擎,防止消息在傳輸過程中產生高能耗。通過在中間節(jié)點上運行模糊邏輯推理,降低成員節(jié)點到根節(jié)點的消息傳輸量。仿真實驗表明,DFLC算法的性能優(yōu)于其他分簇算法。
1 相關研究
文獻[3]提出的低能耗自適應聚類層次算法(LEACH)是一種分布式自組織分簇算法,其過程分為簇建立和簇穩(wěn)定2個階段,通過隨機選擇機制選舉簇頭來平衡節(jié)點負載。然而,該算法沒有考慮節(jié)點位置,不適合應用于較大的WSN環(huán)境。文獻[4]對LEACH進行改進,通過構建雙層簇來減小簇頭與Sink節(jié)點的傳輸距離。然而其最多能夠實現兩跳傳輸,也不適合大型網絡。文獻[5]提出一種基于模糊邏輯簇頭選舉算法(CHEF),以節(jié)點能量、密度和中心性為輸入,利用Mamdani模糊邏輯推理進行簇頭的選舉。然而其使用基站收集所有節(jié)點的信息,需要大量的節(jié)點間通信,消耗較多的能量。文獻[6]提出一種集中化使用模糊邏輯引擎來選擇生成簇頭的算法,然而該方法沒有考慮到需求情況,而是周期性運行。
不同于上述提到的算法,DFLC沒有使用基站從所有傳感器節(jié)點收集數據或集中化執(zhí)行模糊邏輯,而是使用了一個完全分布式結構。避免了節(jié)點到基站、基站到節(jié)點的大量計算開銷和消息傳輸開銷,從而降低整個網絡的能量消耗,提高網絡壽命。模糊邏輯引擎只由根節(jié)點或者有較高概率被選擇作為新根節(jié)點的父節(jié)點執(zhí)行,進一步節(jié)約能耗。此外,DFLC還考慮了容錯性、負載均衡、時效性和可擴展性等因素。
3 實 驗
利用NS2仿真器將提出的DFLC與低能耗自適應聚類層次算法(LEACH)[3]、等待定時自適應聚類算法(ACAWT)[10]、基于模糊邏輯簇頭選舉算法(CHEF)[4]和Gupta算法[11],在消息負載、網絡能耗、存活節(jié)點數、容錯性和簇頭能耗方面進行了實驗對比。表1給出了相關的仿真參數。
不同運行時間下的信息傳輸數量比較情況,如圖3所示。
從圖3中可以看出,DFLC算法產生的消息傳輸量最少,[LEACH]算法產生的消息傳輸量最大。在[ACAWT]算法中,簇被分成了各個子簇,成員節(jié)點分為子簇頭和子簇成員?;诜执仡^之間的通信來選擇新簇頭,這樣就降低了消息傳輸量。在[Gupta]算法中,基站統(tǒng)一收集來自節(jié)點的信息,然后運行聚類算法,這一過程產生了巨大的消息傳輸量。在[CHEF]算法中,基站不需要從所有節(jié)點收集信息,所以[CHEF]算法要優(yōu)于[Gupta]算法。本文提出的DFLC算法通過篩選最有可能成為根節(jié)點的那個節(jié)點的信息,使中間節(jié)點減少了從葉節(jié)點發(fā)到根節(jié)點的信息量,所以產生的數據量最小。
不同算法的能量消耗,如圖4所示??梢钥闯?,隨著仿真時間的增加,所有算法的能量消耗也都將會增加。其中,[DFLC]算法產生的能源消耗最低,[LEACH]算法產生的能源消耗最高。[ACAWT]算法中,在新簇頭的選擇階段,分簇頭向整個簇廣播數據,這就導致產生高能耗,尤其在有大量簇頭數的情況下。盡管[Gupta]算法考慮了能耗、節(jié)點濃度和中心參數等因素,收集節(jié)點和基站之間的數據,在基站集中運行模糊邏輯系統(tǒng)的過程仍然導致了較大的能源消耗。[CHEF]和[Gupta]算法類似,與之主要不同點是使用了局部簇頭選舉機制,從而使基站不需要從所有節(jié)點收集信息。[LEACH]算法完全取決于概率模型,導致簇頭節(jié)點的能量被迅速消耗。
不同仿真時間下各算法中存活節(jié)點的數量,如圖5所示??梢钥闯?,隨著時間的增加,存活節(jié)點數量不斷減少。其中,本文[DFLC]算法中存活節(jié)點數最多,而[LEACH]算法最少。因為與[LEACH,][Gupta]和[CHEF]算法不同的是,[DFLC]算法中傳輸消息的數量較少,能量消耗低,存活節(jié)點數也高于其他算法。
有限的能源是WSN的一個非常重要的約束。由于能源的消耗,節(jié)點可能會失效,這就導致不能及時完成正常任務,這就需要一個容錯機制,當節(jié)點失效后,用另一個節(jié)點來代替它繼續(xù)發(fā)揮作用,繼而使整個過程能夠繼續(xù)進行。為此,本文[DFLC]算法中集成了容錯機制。圖6為各個算法中容錯機制的性能。實驗中,通過故意丟棄節(jié)點的數據包來制造一些故障節(jié)點。將傳送的所有數據包記為“提供數據”,成功傳輸的數據包記為“投遞數據”。從圖6可以看出,和其他沒有考慮系統(tǒng)故障情況的算法相比,本文提出的算法具有最好的性能。同時,[DFLC]算法還與文獻[12]提出的具有簇頭容錯聚類技術的[FTFC]算法進行比較。結果表明,[DFLC]的容錯性能優(yōu)于[FTFC]。
為了延長系統(tǒng)壽命,需要均衡簇頭負載。將本文算法同現有的2種WSN負載均衡分簇算法:[EELBC][13]和[LBC][14]進行比較,結果如圖7所示。實驗中計算了6組簇頭的能耗平均值作為能量消耗率。可以看出,[DFLC]算法具有最低的簇頭能量消耗率。
4 結 語
本文提出了一種基于模糊邏輯的WSN分布式聚類算法(DFLC)。通過仿真實驗,將本文算法與[LEACH,][ACAWT,][Gupta]和[CHEF]算法在產生消息數量、能源消耗、存活節(jié)點數、容錯性、負載平衡等方面進行比較。結果表明,DFLC算法優(yōu)于其他分簇算法。
在今后工作中,將進一步研究在不同類型的移動模型上執(zhí)行分布式模糊邏輯方法。
參考文獻
[1] 李建洲,王海濤,陶安.一種能耗均衡的 WSN 分簇路由協(xié)議[J].傳感技術學報,2013,26(3):396?401.
[2] 蔣暢江,石為人,唐賢倫.能量均衡的無線傳感器網絡非均勻分簇路由協(xié)議[J].軟件學報,2012,23(5):1222?1232.
[3] RAN G, ZHANG H, GONG S. Improving on LEACH protocol of wireless sensor networks using fuzzy logic [J]. Journal of information & computational science, 2010, 7(3): 767?775.
[4] 顧相平,孫彥景,錢建生.一種改進的無線傳感器網絡LEACH?ED算法[J].傳感技術學報,2011,21(10):1770?1774.
[5] KIM J M, PARK S H, HAN Y J, et al. Cluster head election mechanism using fuzzy logic in wireless sensor networks [C]// Proceedings of 2008 10th IEEE International Conference on Advanced Communication Technology. [S.l.]: IEEE, 2008, 1: 654?659.
[6] JAVAID N, QURESHI T N, KHAN A H, et al. Eenhanced developed distributed energy?efficient clustering for heterogeneous wireless sensor networks [J]. Procedia computer science, 2013, 19: 914?919.
[7] 任塨曄,趙季紅,曲樺.基于模糊邏輯的多終端協(xié)同的垂直切換決策算法[J].通信學報,2014,35(9):67?78.
[8] HAMMOUDEH M, KURZ A, GAURA E. Multi?path, multi?hop hierarchical routing [C]// Proceedings of 2010 IEEE International Conference on Sensor Technologies and Applications. [S.l.]: IEEE, 2010: 140?145.
[9] CHOI H, WANG J, HUGHES E A. Scheduling for information gathering on sensor network [J]. Wireless networks, 2009, 15(1): 127?140.
[10] WEN C Y, SETHARES W A. Adaptive decentralized re?clustering for wireless sensor networks [C]// IEEE International Conference on Systems, Man and Cybernetics. [S.l.]: IEEE, 2006, 4: 2709?2716.
[11] GUPTA I, RIORDAN D, SAMPALLI S. Cluster?head election using fuzzy logic for wireless sensor networks [C]// Proceedings of the 3rd Annual Conference on Communication Networks and Services Research. [S.l.]: IEEE, 2005: 255?260.
[12] MUNAGA H, PRASAD M H M, MURTHY J V R, et al. A fault tolerant trajectory clustering (FTTC) for selecting cluster heads in wireless sensor networks [J]. International journal of computational intelligence research, 2010, 6(3): 81?90.
[13] KUILA P, JANA P K. Energy efficient load?balanced cluste?ring algorithm for wireless sensor networks [J]. Procedia technology, 2012, 6: 771?777.
[14] GUPTA G, YOUNIS M. Performance evaluation of load?ba?lanced clustering of wireless sensor networks [C]// Procee?dings of 2003 10th International Conference on Telecommunications. [S.l.]: IEEE, 2013, 2: 1577?1583.