無(wú)線傳感器網(wǎng)絡(luò)中的LEACH算法分析與設(shè)計(jì)
摘要:在分析了經(jīng)典的LEACH分簇路由算法,以及基于LEACH算法基礎(chǔ)上的幾種經(jīng)典的改進(jìn)算法后,針對(duì)小規(guī)模無(wú)線測(cè)距網(wǎng)絡(luò)的特點(diǎn),在傳輸數(shù)據(jù)量較少、簇首節(jié)點(diǎn)無(wú)需進(jìn)行大量數(shù)據(jù)融合的情況下,對(duì)LEACH算法進(jìn)行改進(jìn),增加了節(jié)點(diǎn)與基站直接通信的個(gè)數(shù),減少了多跳累加誤差對(duì)測(cè)距的影響。使用MATLAB軟件進(jìn)行仿真,理論與實(shí)驗(yàn)仿真表明,本文提出的改進(jìn)算法能夠延長(zhǎng)整個(gè)網(wǎng)絡(luò)的生存時(shí)間,減少了一些不必要的能量浪費(fèi)。
關(guān)鍵詞:無(wú)線傳感器網(wǎng)絡(luò);分簇路由算法;LEACH;性能分析
引言
無(wú)線傳感器網(wǎng)絡(luò)是當(dāng)前網(wǎng)絡(luò)技術(shù)界備受關(guān)注的前沿?zé)狳c(diǎn)研究領(lǐng)域,涉及多學(xué)科,高度交叉,知識(shí)高度集成。無(wú)線傳感器網(wǎng)絡(luò)集成了傳感器技術(shù)、計(jì)算機(jī)技術(shù)和通信技術(shù),在軍事、環(huán)境、健康、家庭、商業(yè)等許多方面有著巨大的潛在應(yīng)用前景。無(wú)線傳感器網(wǎng)絡(luò)由大量密集分布的傳感器節(jié)點(diǎn)通過(guò)自組織的方式形成網(wǎng)絡(luò),節(jié)點(diǎn)通過(guò)網(wǎng)絡(luò)協(xié)議快速形成自主構(gòu)建、自主組織和自主管理的通信網(wǎng)絡(luò)。這種通過(guò)數(shù)千個(gè)微小的節(jié)點(diǎn)之間互相通信,通過(guò)接力的方法實(shí)現(xiàn)大范圍監(jiān)控的模式極大地提高了工作效率。然而節(jié)點(diǎn)大都需要在無(wú)人看管、不更換電池或者不可能更換電池的條件下長(zhǎng)時(shí)間地工作,因此高效、低功耗路由算法在無(wú)線傳感器網(wǎng)絡(luò)中就顯得非常重要。
1 基于LEACH的經(jīng)典分簇算法分析
1.1 LEACH路由算法分析
為了提高整個(gè)網(wǎng)絡(luò)的的生存時(shí)間,將功耗均衡的分配到網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn),麻省理工學(xué)院的Wendi Rabiner Heinzelman等人提出了一種低功耗的自適應(yīng)路由協(xié)議——LEACH協(xié)議(Low-Energy Adaptive ClusteriingHierarchy)。在LEACH協(xié)議中,每個(gè)傳感節(jié)點(diǎn)都有機(jī)會(huì)充當(dāng)簇頭節(jié)點(diǎn),簇頭節(jié)點(diǎn)的選擇主要依據(jù)網(wǎng)絡(luò)中所需要的簇頭節(jié)點(diǎn)個(gè)數(shù)與到目前為止每個(gè)節(jié)點(diǎn)已經(jīng)充當(dāng)簇頭節(jié)點(diǎn)的次數(shù)來(lái)判定的。網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)在0~1之間隨機(jī)選擇一個(gè)數(shù),如果選擇的數(shù)小于規(guī)定閥值T(n),則該節(jié)點(diǎn)就充當(dāng)簇首節(jié)點(diǎn)。T(n)的計(jì)算如下:
式(1)中,p表示在無(wú)線網(wǎng)絡(luò)中簇頭節(jié)點(diǎn)所占的百分比,r為當(dāng)前循環(huán)次數(shù),G是在前1/p輪中未充當(dāng)過(guò)簇頭節(jié)點(diǎn)的集合。LEACH算法通過(guò)設(shè)置T(n)值,以保證每個(gè)節(jié)點(diǎn)在1/p輪內(nèi)都有機(jī)會(huì)充當(dāng)一次簇頭節(jié)點(diǎn),從而平衡了節(jié)點(diǎn)的能量消耗。簇頭節(jié)點(diǎn)確定之后,簇頭節(jié)點(diǎn)通過(guò)廣播告知整個(gè)網(wǎng)絡(luò)自己已經(jīng)成為簇頭節(jié)點(diǎn),簇頭節(jié)點(diǎn)在廣播過(guò)程中采用CSMA MAC協(xié)議來(lái)避免沖突。這時(shí),網(wǎng)絡(luò)中的非簇頭節(jié)點(diǎn)可以根據(jù)接收到的信號(hào)強(qiáng)度來(lái)決定自己要從屬于哪個(gè)簇,選擇信號(hào)強(qiáng)度最強(qiáng)的源節(jié)點(diǎn)作為自己的簇頭節(jié)點(diǎn),并告知相關(guān)的簇頭節(jié)點(diǎn),自己則成為簇內(nèi)組員。
LEACH分簇算法缺點(diǎn):
①剛開(kāi)始假設(shè)每個(gè)節(jié)點(diǎn)能量相同,在現(xiàn)實(shí)環(huán)境中很難做到。
②每個(gè)節(jié)點(diǎn)成為簇首節(jié)點(diǎn)的概率相同,這樣可能導(dǎo)致一些高能量節(jié)點(diǎn)沒(méi)機(jī)會(huì)成為簇首節(jié)點(diǎn),而一些低能量節(jié)點(diǎn)成為簇首節(jié)點(diǎn)。一旦這些低能量節(jié)點(diǎn)成為簇首節(jié)點(diǎn),將會(huì)很快耗盡其能量。
③LEACH協(xié)議不能保證簇頭在每個(gè)區(qū)域都分布均勻,雖然統(tǒng)計(jì)上面是均勻的,但是由于簇頭產(chǎn)生帶有極大的隨機(jī)性,有些區(qū)域可能簇頭數(shù)會(huì)較多。
④簇首節(jié)點(diǎn)在通信過(guò)程中采用單跳與基站通信,這樣就會(huì)導(dǎo)致較遠(yuǎn)的簇首節(jié)點(diǎn)能量消耗過(guò)大,而過(guò)早死亡,影響整個(gè)網(wǎng)絡(luò)的性能。
⑤整個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)在兩跳范圍內(nèi),這樣不符合大規(guī)模網(wǎng)絡(luò)需求。
1.2 根據(jù)節(jié)點(diǎn)初始能量不同改進(jìn)
根據(jù)整個(gè)網(wǎng)絡(luò)中節(jié)點(diǎn)能量的初始不同,Georgios Smaragdakis等人提出了一種改進(jìn)行分簇算法——SEP算法(a Stable Election Proto-col for clustered heterogeneous),先把整個(gè)網(wǎng)絡(luò)分成兩類(lèi)節(jié)點(diǎn),能量較高的節(jié)點(diǎn)稱(chēng)為高能量節(jié)點(diǎn),能量低的稱(chēng)為正常節(jié)點(diǎn)。高能量節(jié)點(diǎn)則根據(jù)式(2)進(jìn)行選擇成為簇首節(jié)點(diǎn)的概率,而正常節(jié)點(diǎn)則根據(jù)式(3)選擇成為簇首節(jié)點(diǎn)的概率??梢钥闯?,高能量節(jié)點(diǎn)成為簇首節(jié)點(diǎn)的機(jī)會(huì)大于低能量節(jié)點(diǎn)。相較于LEACH算法,充分利用了整個(gè)網(wǎng)絡(luò)的功耗。
為整個(gè)網(wǎng)絡(luò)簇首節(jié)點(diǎn)的概率,Pnrm為正常節(jié)點(diǎn)成為簇首節(jié)點(diǎn)的概率,Padv為高能量節(jié)點(diǎn)成為簇首節(jié)點(diǎn)的概率。r為當(dāng)前循環(huán)次數(shù),G1是在前1/p輪中正常節(jié)點(diǎn)未充當(dāng)過(guò)簇頭節(jié)點(diǎn)的集合。G2是在前1/p輪中高能量節(jié)點(diǎn)未充當(dāng)過(guò)簇頭節(jié)點(diǎn)的集合。m為網(wǎng)絡(luò)中高能量節(jié)點(diǎn)的比例。a為高能量節(jié)點(diǎn)高于正常節(jié)點(diǎn)能量部分。
評(píng)論