專利名稱:無線傳感網(wǎng)絡(luò)中基于軟閾值的簇頭選舉方法
技術(shù)領(lǐng)域:
本發(fā)明提出一種無線傳感器網(wǎng)絡(luò)分簇選舉方法,尤其涉及分簇方法中的簇頭選舉機(jī)制。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)(Wireless sensor networks)是當(dāng)前國際上備受關(guān)注的,由多學(xué) 科高度交叉的新興前沿研究熱點(diǎn)領(lǐng)域。它綜合了傳感器技術(shù)、嵌入式計(jì)算技術(shù)、分布式 信息處理技術(shù)、現(xiàn)代網(wǎng)絡(luò)及無線通信等技術(shù)。通過各類微型傳感器對目標(biāo)信息進(jìn)行實(shí)時 監(jiān)測,由嵌入式計(jì)算資源對信息進(jìn)行處理,能夠協(xié)作地實(shí)時監(jiān)測、感知和釆集各種環(huán)境 信息。無線傳感器網(wǎng)絡(luò)具有十分廣闊的應(yīng)用前景,在軍事國防、工農(nóng)業(yè)控制、城市管理、 生物醫(yī)療、環(huán)境監(jiān)測、搶險救災(zāi)、防恐反恐和危險遠(yuǎn)程控制等許多領(lǐng)域都有重要的科研 價值和巨大的實(shí)用價值,己經(jīng)引起了世界許多國家學(xué)術(shù)界,工業(yè)界乃至國防部門的高度 重視,并成為進(jìn)入2000年以來公認(rèn)的新型前沿?zé)狳c(diǎn)研究領(lǐng)域,并被認(rèn)為是將對二十一 世紀(jì)產(chǎn)生巨大影響力的技術(shù)之一,將會對人類未來的生活方式產(chǎn)生深遠(yuǎn)影響。
在無線傳感網(wǎng)絡(luò)的研究中,由于節(jié)點(diǎn)的能量有限,如何更有效的利用節(jié)點(diǎn)能量,均 衡網(wǎng)絡(luò)負(fù)載,以延長網(wǎng)絡(luò)的生存時間是最重要的問題。對于擁有大量節(jié)點(diǎn)的無線傳感網(wǎng) 絡(luò),分層的拓?fù)浣Y(jié)構(gòu)在網(wǎng)絡(luò)管理和可擴(kuò)展性上具有較多的優(yōu)勢。在這種網(wǎng)絡(luò)結(jié)構(gòu)中,簇 頭(Cluster Head, CH)承擔(dān)簇內(nèi)的數(shù)據(jù)收集和處理工作,收集的數(shù)據(jù)通過簇頭間的路 由發(fā)送至基站(Sink節(jié)點(diǎn))。分簇算法也是目前的主流路由算法,在眾多的分簇算法 中,LEACH (low energy adaptive clustering hierarchy)算法是比較成熟且常用的 分簇路由算法,它的成簇方法貫穿于其后提出的很多層次路由協(xié)議中,如PEGASIS, HEED 等。LEACH是一種基于簇的低能耗自適應(yīng)的路由協(xié)議,其操作被分為若干的輪(round), 每輪包括簇的建立階段和穩(wěn)定階段,如圖1所示。在簇的建立階段,相鄰節(jié)點(diǎn)動態(tài)地形 成簇,隨機(jī)產(chǎn)生簇頭在數(shù)據(jù)通信階段,簇內(nèi)節(jié)點(diǎn)把數(shù)據(jù)發(fā)送給簇頭,簇頭進(jìn)行數(shù)據(jù)融 合并把結(jié)果發(fā)送給匯聚節(jié)點(diǎn)。LEACH算法能夠保證各節(jié)點(diǎn)等概率地?fù)?dān)任簇頭,使得網(wǎng)絡(luò) 中的節(jié)點(diǎn)相對均衡地消耗能量。但LEACH算法也存在許多局限,如簇頭節(jié)點(diǎn)分布不均, 未考慮節(jié)點(diǎn)剩余能量等。針對LEACH算法存在的局限,國內(nèi)外學(xué)者提出了許多改進(jìn)的算 法,PEGASIS (Power-Efficient Gathering in Sensor Information System)算法提
出了簇內(nèi)多跳的概念,通過在簇內(nèi)建立一條遍歷所有簇成員節(jié)點(diǎn)的鏈路,每個節(jié)點(diǎn)只與 距離自己最近的節(jié)點(diǎn)通信,并且在每一跳均進(jìn)行數(shù)據(jù)融合,進(jìn)一步降低了網(wǎng)絡(luò)能耗。HEED(Hybrid Energy Efficient Distributed)算法針對LEACH簇頭分布不均勻這一問題
進(jìn)行了改進(jìn),在簇頭選擇中考慮了節(jié)點(diǎn)的剩余能量,并以主從關(guān)系引入了多個約束條件
作用于簇頭的選擇過程,能產(chǎn)生分布更加均勻的簇頭。
發(fā)明內(nèi)容
本發(fā)明主要針對LEACH算法中簇頭選取機(jī)制的不足進(jìn)行了改進(jìn),并在LEACH架構(gòu)的 基礎(chǔ)上提出了基于軟閾值的簇頭選舉方法(STCS, Soft Threshold based Cluster-head Selection Method)。此方法對LEACH的簇頭選舉機(jī)制進(jìn)行了改進(jìn),不再采用硬性的閾 值來控制節(jié)點(diǎn)成為簇頭的概率,而使用一種動態(tài)調(diào)整閾值的策略,能夠更好的均衡網(wǎng)絡(luò) 能耗,延長網(wǎng)絡(luò)生存時間。
在LEACH算法中,選取簇頭的方法為對于網(wǎng)絡(luò)中的任意一個節(jié)點(diǎn)i,隨機(jī)地產(chǎn)生 一個0到1之間的隨機(jī)數(shù),并將隨機(jī)數(shù)與閾值T(i)進(jìn)行比較,若隨機(jī)數(shù)小于T(i),節(jié) 點(diǎn)被選擇擔(dān)任本輪的簇頭,并將閾值T(i)設(shè)置為0,下次將不再參與簇頭選舉,否則, 若節(jié)點(diǎn)產(chǎn)生的隨機(jī)數(shù)大于或等于T(i),節(jié)點(diǎn)不擔(dān)任該輪簇頭。T(i)表示如下
r("l-/^(尸mod全) (i)
o 其它
其中戶=7^ (k是每輪中的簇頭期望個數(shù),N是網(wǎng)絡(luò)中的節(jié)點(diǎn)總數(shù)),r表示當(dāng)前
的輪次(0^<*) , G是前r輪數(shù)據(jù)傳輸過程中均未擔(dān)任過簇頭的節(jié)點(diǎn)的集合。
本發(fā)明不同于傳統(tǒng)的LEACH算法所采用的硬性閾值策略,使得節(jié)點(diǎn)的成為簇頭的概 率能夠根據(jù)自己在上一輪中扮演的角色以及簇內(nèi)成員節(jié)點(diǎn)數(shù)目進(jìn)行調(diào)整,執(zhí)行流程如圖 2所示,步驟如下
第一輪簇頭選舉設(shè)置每個節(jié)點(diǎn)的閾值T(i)均為p,也就是說每個節(jié)點(diǎn)擔(dān)任簇頭的 A;
初始概率均為P(P=y)。
第r輪簇頭選舉(r〉l):若節(jié)點(diǎn)在第r-1輪中擔(dān)任過簇頭,則降低節(jié)點(diǎn)在本輪被選 舉為簇頭的概率,設(shè)置『(0l^:r(/)iM-e;否則,將調(diào)整閾值,提高節(jié)點(diǎn)在本輪被選舉
為簇頭的概率,設(shè)置|r =|r—i + NUjJ(c(;.》。其中,c (i)表示節(jié)點(diǎn)i在第r-i輪
中所屬的簇,NUM(C(i))表示該簇C(i)的簇內(nèi)成員數(shù)目。
圖1 LEACH算法的簡要流程圖 圖2軟閾值的計(jì)算流程圖
圖3 STCS方法與LEACH算法節(jié)點(diǎn)存活數(shù)比較曲線圖,(a)為場景1, (b)為場景2。
具體實(shí)施方式
-
具體實(shí)施方案可分為協(xié)議初始化,簇頭選舉及簇的建立,簇內(nèi)通信和簇間通信,簇 頭更新幾個部分。
協(xié)議初始化首先將節(jié)點(diǎn)以一定的密度部署在監(jiān)測區(qū)域,各傳感器節(jié)點(diǎn)燒錄對應(yīng)的 協(xié)議程序。
簇頭選舉及簇的建立各節(jié)點(diǎn)設(shè)置各自的閾值T(i), i表示節(jié)點(diǎn)編號,各節(jié)點(diǎn)的初 始閾值均設(shè)置為0.05,每個節(jié)點(diǎn)產(chǎn)生一個O到l之間的隨機(jī)數(shù)。將該數(shù)與各自的閾值進(jìn) 行比較,若隨機(jī)數(shù)小于閾值,則節(jié)點(diǎn)設(shè)置自身為當(dāng)前輪的簇頭節(jié)點(diǎn),并廣播ADV報(bào)文通 告自身的簇頭信息。否則,若隨機(jī)數(shù)大于或等于閾值,則節(jié)點(diǎn)設(shè)置自身為普通節(jié)點(diǎn),等 待接受來自簇頭的ADV消息。當(dāng)普通節(jié)點(diǎn)接收到來自周圍各簇頭發(fā)送的ADV消息之后,
將比較接收到各簇頭報(bào)文的信號強(qiáng)度,然后選擇信號最強(qiáng)的節(jié)點(diǎn)作為自己將要加入簇的 簇頭節(jié)點(diǎn),并向其發(fā)送JOIN消息。簇頭節(jié)點(diǎn)接收到普通節(jié)點(diǎn)發(fā)送的JOIN消息后,將其 設(shè)置為本簇的簇內(nèi)成員節(jié)點(diǎn),并記錄。如此,距離較近的節(jié)點(diǎn)將組成簇,簇頭節(jié)點(diǎn)為簇 內(nèi)成員分配TDMA時槽并發(fā)送至各成員節(jié)點(diǎn),簇的建立過程結(jié)束。
簇內(nèi)通信和簇間通信簇內(nèi)成員節(jié)點(diǎn)根據(jù)簇頭節(jié)點(diǎn)分配的TDMA時槽,在指定的時 間進(jìn)行數(shù)據(jù)傳輸,將自身監(jiān)測的數(shù)據(jù)傳給簇頭節(jié)點(diǎn)。簇頭節(jié)點(diǎn)收到來自簇內(nèi)成員的所有 數(shù)據(jù)之后,將對數(shù)據(jù)進(jìn)行融合,然后將數(shù)據(jù)經(jīng)過簇間的路由傳至Sink節(jié)點(diǎn)。
簇頭更新由于簇頭節(jié)點(diǎn)承擔(dān)簇內(nèi)數(shù)據(jù)融合,發(fā)送或轉(zhuǎn)發(fā)數(shù)據(jù)到基站的任務(wù),因此 會比普通節(jié)點(diǎn)消耗更多的能力,為均衡網(wǎng)絡(luò)負(fù)載,每輪數(shù)據(jù)傳輸結(jié)束之后,將重復(fù)上述 過程,重新選擇簇頭節(jié)點(diǎn),新一輪的簇頭選舉,各節(jié)點(diǎn)的閾值將根據(jù)上一輪所屬簇的成 員節(jié)點(diǎn)數(shù)目以及自己在上輪中擔(dān)任的角色進(jìn)行調(diào)整,若節(jié)點(diǎn)在上一輪中擔(dān)任簇頭,則降 低其在本輪中被選為簇頭的概率,將本輪的閾值調(diào)整為上輪的閾值減小p2,即0.0025,
否則,若節(jié)點(diǎn)在上一輪中未擔(dān)任簇頭,則增加其在本輪中被選為簇頭的概率,將本輪的 閾值調(diào)整為上輪閾值增加p7上輪所屬簇成員數(shù)目。
示范性實(shí)例分析
網(wǎng)絡(luò)生存時間(life-time)是衡量無線傳感器網(wǎng)絡(luò)路由協(xié)議性能的核心指標(biāo)。由于
6傳感器節(jié)點(diǎn)能量有限,如何最大限度的利用傳感器能量,盡可能地延長網(wǎng)絡(luò)使用壽命是諸多協(xié)議首要考慮的問題,基于軟閾值的簇頭選舉方法與LEACH最大的區(qū)別在于改進(jìn)了分簇方法中簇頭選舉機(jī)制,通過動態(tài)的調(diào)整節(jié)點(diǎn)的閾值來延長網(wǎng)絡(luò)生存時間,為了驗(yàn)證STCS方法的有效性,從傳感器節(jié)點(diǎn)的平均能量消耗以及存活節(jié)點(diǎn)數(shù)對所提出的算法進(jìn)行仿真和分析。使用的仿真工具是被業(yè)界公認(rèn)的NS2仿真工具。
為了測試網(wǎng)絡(luò)規(guī)模對路由協(xié)議的性能影響,設(shè)置了兩種節(jié)點(diǎn)部署場景場景l(fā):將100個節(jié)點(diǎn)隨機(jī)分布在100*1001112的區(qū)域內(nèi),Sink節(jié)點(diǎn)部署在(50, 175)處的位置;
場景2:將200個節(jié)點(diǎn)隨機(jī)分布在200*200 1112的區(qū)域內(nèi),Sink節(jié)點(diǎn)部署在(100,350)處的位置;
每個無線傳感器節(jié)點(diǎn)的初始能量設(shè)為2J,每20秒更新一次簇頭?;谲涢撝档拇仡^選舉方法與LEACH在網(wǎng)絡(luò)生存時間與節(jié)點(diǎn)存活數(shù)比較曲線圖如圖3的(a) 、 (b)所示。
在場景1中,STCS方法在網(wǎng)絡(luò)運(yùn)行初期,由于節(jié)點(diǎn)可以多次被選舉擔(dān)任簇頭,從而有部分節(jié)點(diǎn)因擔(dān)任簇頭次數(shù)過多而失效,因此性能與LEACH相比欠佳,但隨著算法的執(zhí)行,STSC方法的優(yōu)勢逐漸凸顯出來,并且在總體性能上超過了 LEACH, LEACH算法由于簇頭選擇局限性,有些節(jié)點(diǎn)可能剩余能量不多,但由于算法的不斷進(jìn)行,LEACH由于其硬性的閾值策略,節(jié)點(diǎn)一旦擔(dān)任過簇頭,就不能再繼續(xù)參與下一輪的簇頭選舉,因而可以選擇擔(dān)當(dāng)簇頭節(jié)點(diǎn)的范圍越來越小, 一些剩余能量較低的節(jié)點(diǎn)因?yàn)闆]有其他的選擇而只能被選為擔(dān)當(dāng)簇頭,從而導(dǎo)致節(jié)點(diǎn)能量更快的耗盡,所以總的看來,相對LEACH,STCS方法使網(wǎng)絡(luò)的生存時間得到了有效的延長。
在場景2中可以看出,隨著傳感器網(wǎng)絡(luò)規(guī)模的擴(kuò)大,STCS方法的性能仍然高于LEACH,并且相比較小網(wǎng)絡(luò)規(guī)模條件下的表現(xiàn)更佳。因此可以推斷,本方法在較大的網(wǎng)絡(luò)規(guī)模條件下仍然適用。
綜上所述,基于軟閾值的簇頭選舉方法在平均網(wǎng)絡(luò)能耗,延長網(wǎng)絡(luò)生存時間等方面較LEACH而言都表現(xiàn)出了良好的性能,隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大,本方法仍然能夠表現(xiàn)出較好的性能,顯示了良好的可擴(kuò)展性。符號說明
WSN:無線傳感器網(wǎng)絡(luò); Sink:匯聚節(jié)點(diǎn),基站;STCS:基于算閥值的簇頭選舉方法; LEACH:低開銷自適應(yīng)分層路由算法;TDMA:時分多址。
權(quán)利要求
1、一種應(yīng)用于分簇路由協(xié)議的基于軟閾值的簇頭選舉方法,其特征是節(jié)點(diǎn)在每輪擔(dān)任簇頭的概率根據(jù)上一輪是否擔(dān)任簇頭的情況以及簇成員數(shù)目進(jìn)行調(diào)整,而不是在該節(jié)點(diǎn)擔(dān)任過簇頭之后直接將閾值設(shè)為0,從而使節(jié)點(diǎn)可以多次參與簇頭的選舉過程;具體步驟主要包括簇頭選舉及簇的建立,簇內(nèi)通信和簇間通信,簇頭更新。
2、 根據(jù)權(quán)利要求l所述的基于軟閾值的簇頭選舉方法,其特征在于,所述簇頭選舉 及簇的建立的操作步驟如下步驟l:各節(jié)點(diǎn)設(shè)置自身的閾值T(i), i表示節(jié)點(diǎn)編號,設(shè)r表示輪次,T(i)的設(shè)置方 式為若當(dāng)前是第一輪簇頭選舉,對應(yīng)r=0,則T(i)=Pinit,各節(jié)點(diǎn)的初始閾值均設(shè)置為pinit=o.05,否則的話,若節(jié)點(diǎn)在上一輪選舉中擔(dān)任簇頭,則設(shè)置n/)l,:r(!')lH-e,若節(jié)點(diǎn) 在上一輪選舉中不擔(dān)任簇頭,則設(shè)置r(/)ir=r(/)|r—} + ^jj(c^ ,其中為閾值調(diào)整參數(shù),C (i)表示節(jié)點(diǎn)i在第r-l輪中所屬的簇,N函(C(i))表示該簇C(i)的簇內(nèi)成員數(shù)目; 步驟2:每個節(jié)點(diǎn)產(chǎn)生一個0到1之間的隨機(jī)數(shù);將該數(shù)與各節(jié)點(diǎn)在步驟1中計(jì)算的閾值進(jìn)行比較,若隨機(jī)數(shù)小于閾值,則節(jié)點(diǎn)設(shè)置自身為當(dāng)前輪的簇頭節(jié)點(diǎn),并廣播ADV報(bào)文通告自身的簇頭信息;否則,若隨機(jī)數(shù)大于或等于閾值,則節(jié)點(diǎn)設(shè)置自身為普通節(jié)點(diǎn),等待接受來自簇頭的ADV消息;步驟3:當(dāng)普通節(jié)點(diǎn)接收到來自周圍各簇頭發(fā)送的ADV消息之后,將比較接收到各簇頭報(bào)文的信號強(qiáng)度,然后選擇信號最強(qiáng)的節(jié)點(diǎn)作為自己將要加入簇的簇頭節(jié)點(diǎn),并向其發(fā)送JOIN消息;步驟4:簇頭節(jié)點(diǎn)接收到普通節(jié)點(diǎn)發(fā)送的JOIN消息后,將其設(shè)置為本簇的簇內(nèi)成員節(jié)點(diǎn), 并記錄;如此,距離較近的節(jié)點(diǎn)將組成簇;步驟5:簇頭節(jié)點(diǎn)根據(jù)簇內(nèi)成員節(jié)點(diǎn)的數(shù)目產(chǎn)生一個時分復(fù)用TDMA時隙表,并廣播給簇 內(nèi)成員節(jié)點(diǎn),TDMA時隙表為每個簇內(nèi)成員節(jié)點(diǎn)指定了其數(shù)據(jù)傳輸?shù)乃鶎贂r隙。
3、 根據(jù)權(quán)利要求1所述的基于軟閾值的簇頭選舉方法,其特征在于,所述簇內(nèi)通 信和簇間通信的步驟如下步驟l:簇內(nèi)成員節(jié)點(diǎn)根據(jù)簇頭節(jié)點(diǎn)分配的TDMA時槽,在指定的時間進(jìn)行數(shù)據(jù)傳輸,將 自身監(jiān)測的數(shù)據(jù)傳給簇頭節(jié)點(diǎn);步驟2:簇頭節(jié)點(diǎn)收到來自簇內(nèi)成員的所有數(shù)據(jù)之后,將對數(shù)據(jù)進(jìn)行融合,然后將數(shù)據(jù)經(jīng)過簇間的路由傳至Sink節(jié)點(diǎn);
4、根據(jù)權(quán)利要求l所述的基于軟閾值的簇頭選舉方法,其特征在于,所述簇頭更新的步驟如下步驟1:若節(jié)點(diǎn)在上一輪中擔(dān)任簇頭,則降低其在本輪中被選為簇頭的概率,將本輪的 閾值調(diào)整為上輪的閾值減??;步驟2:若節(jié)點(diǎn)在上一輪中未擔(dān)任簇頭,則增加其在本輪中被選為簇頭的概率,將本輪
全文摘要
一種應(yīng)用于無線傳感網(wǎng)絡(luò)中的簇頭選舉機(jī)制,本簇頭選舉機(jī)制引入了軟閾值的概念,對傳統(tǒng)分簇算法的簇頭選舉機(jī)制進(jìn)行了改進(jìn)。通過設(shè)置可動態(tài)調(diào)整的閾值,改變傳統(tǒng)分簇算法中的固定閾值的方式,讓節(jié)點(diǎn)在擔(dān)任過簇頭之后仍然有機(jī)會繼續(xù)擔(dān)任簇頭,從而讓更多的節(jié)點(diǎn)參與到每輪的簇頭選舉中來,因而能夠更好的均衡網(wǎng)絡(luò)中節(jié)點(diǎn)的能耗,延長網(wǎng)絡(luò)生存時間。
文檔編號H04W40/02GK101594657SQ200910087899
公開日2009年12月2日 申請日期2009年6月25日 優(yōu)先權(quán)日2009年6月25日
發(fā)明者嶸 丁, 冰 楊, 磊 楊, 王佳偉 申請人:北京航空航天大學(xué)