一種基于簇頭期望的無線傳感器網(wǎng)絡(luò)能量均衡路由優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種無線傳感器網(wǎng)絡(luò)能量均衡路由優(yōu)化方法,尤其涉及一種基于簇頭 期望的無線傳感器網(wǎng)絡(luò)能量均衡路由優(yōu)化方法。
【背景技術(shù)】
[0002] 無線傳感器網(wǎng)絡(luò)WSN(WirelessSensorNetworks)作為物聯(lián)網(wǎng)的一個(gè)重要分支, 其作用是在所監(jiān)測環(huán)境中感知采集數(shù)據(jù),相鄰節(jié)點(diǎn)實(shí)時(shí)地感知同一對象信息,然后將其融 合、壓縮后通過無線自組多跳協(xié)議發(fā)送給基站。WSN分簇路由具有層次清晰、擴(kuò)展性強(qiáng)、易實(shí) 現(xiàn)相鄰數(shù)據(jù)融合等優(yōu)點(diǎn),非常適合工業(yè)監(jiān)測等應(yīng)用領(lǐng)域。
[0003] 分簇路由算法包含簇頭的選舉、簇頭與基站之間的通信,可采用單跳和多跳 兩種通信方式。W.Heinzelman等人提出的LEACH(Low-energyAdaptiveClustering Hierarchy)算法是一種自組織、自適應(yīng)的完全分布式分簇路由算法。為了延長第一個(gè)傳感 器節(jié)點(diǎn)的失效時(shí)間,LEACH算法利用隨機(jī)性輪換簇頭,從而達(dá)到平衡網(wǎng)絡(luò)中節(jié)點(diǎn)能量負(fù)載的 目的。成法等人針對熱區(qū)問題,提出基于非均勻分簇的多跳路由算法,靠近基站的簇的規(guī)模 小于遠(yuǎn)離基站的簇,因此靠近基站的簇頭可以為簇間的數(shù)據(jù)轉(zhuǎn)發(fā)預(yù)留能量,達(dá)到均衡簇頭 能量消耗的目的。呂濤等人針對LEACH算法存在極大簇和極小簇的情況,提出通過控制簇 成員數(shù)和合并極小簇的方法使WSN中的各個(gè)分簇能量平衡;蔣暢江等人針對多跳方式的分 簇網(wǎng)絡(luò)中熱區(qū)的問題,提出了 一種高效的能量均衡、非均勻分簇和簇間多跳路由有機(jī)結(jié)合 的分布式路由算法;HuiLin等人針對集成的拓?fù)浣Y(jié)構(gòu)和分簇路由問題,提出了一個(gè)混和整 數(shù)線性規(guī)劃模型,以確定最佳簇頭位置;孫彥清等人針對節(jié)點(diǎn)負(fù)載不均而形成的熱區(qū)問題, 提出了一種基于動態(tài)分區(qū)負(fù)載均衡的分簇路由算法;蘇金樹等人針對簇間負(fù)載的不均衡 性,提出了一個(gè)負(fù)載均衡感知的無線傳感器網(wǎng)絡(luò)容錯分簇算法;胡峰松等人針對LEACH中 多個(gè)簇頭與基站遠(yuǎn)距離通信能量消耗過多的問題,考慮節(jié)點(diǎn)的能量和位置因素,以優(yōu)化簇 的結(jié)構(gòu);AiminWang等人在LEACH的簇頭選舉閾值上引入了能量信息,采用滑動窗口機(jī)制, 可根據(jù)動態(tài)節(jié)點(diǎn)數(shù)目調(diào)整簇頭數(shù)。
[0004] 由于簇頭既要管理簇內(nèi)通信又要進(jìn)行簇間通信,所以簇頭的能耗將比簇內(nèi)成員節(jié) 點(diǎn)多,從而導(dǎo)致節(jié)點(diǎn)能量不均衡。如果簇頭過早失效,將導(dǎo)致該簇在本輪失效,形成路由空 洞,進(jìn)而縮短了網(wǎng)絡(luò)生命周期。以上分簇路由算法雖然在一定程度上是能量高效的,但是節(jié) 點(diǎn)能量不均衡的問題尚未解決,雖然分簇路由算法可以優(yōu)化數(shù)據(jù)的傳輸量,減少網(wǎng)絡(luò)能耗, 但是簇頭負(fù)載的不均衡性會嚴(yán)重影響路由算法的性能。因此,選舉簇頭時(shí)如何考慮節(jié)點(diǎn)的 剩余能量和平衡每個(gè)簇頭的負(fù)載是至關(guān)重要的。
【發(fā)明內(nèi)容】
[0005] 發(fā)明的目的在于克服現(xiàn)有技術(shù)之不足,提供一種基于簇頭期望的無線傳感器網(wǎng)絡(luò) 能量均衡路由優(yōu)化方法(CHEEB),該算法在選舉簇頭時(shí)同時(shí)考慮分簇負(fù)載分布情況和節(jié)點(diǎn) 剩余能量兩個(gè)優(yōu)化目標(biāo),通過改進(jìn)選舉簇頭時(shí)的閾值來保證每一輪簇頭數(shù)目在期望范圍, 以緩解簇頭能量消耗不均衡的問題;同時(shí)通過控制不同位置簇頭的覆蓋范圍,考慮距離權(quán) 值和剩余能量權(quán)值,使得簇頭的成員節(jié)點(diǎn)分布較為均勻,以提高節(jié)點(diǎn)能量效率。
[0006] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:提供一種基于簇頭期望的無線傳感 器網(wǎng)絡(luò)能量均衡路由優(yōu)化方法,其特征在于,包括:將簇?cái)?shù)目、節(jié)點(diǎn)剩余能量以及簇的負(fù)載 均衡等因素加入到簇頭的選舉中,將分簇的負(fù)載分布情況和節(jié)點(diǎn)剩余能量作為選舉簇頭的 兩個(gè)主要指標(biāo);所述簇頭的選舉的工作時(shí)間單位是輪,每一輪分為簇建立階段和數(shù)據(jù)傳輸 階段兩部分,通過調(diào)整閾值來保證每一輪簇頭數(shù)目在期望范圍,解決簇頭能量消耗不均衡 的問題;通過控制不同位置簇頭的覆蓋范圍,計(jì)算距離權(quán)值和剩余能量權(quán)值,使得簇頭的節(jié) 點(diǎn)成員分布較為均勻,以提高節(jié)點(diǎn)能量效率。
[0007] 優(yōu)選的,Ci是節(jié)點(diǎn)i在當(dāng)前周期是否成為過簇頭的指示函數(shù),所述簇建立階段的 步驟為:
[0008] A1、遍歷每個(gè)未失效且Ci= 1的節(jié)點(diǎn),節(jié)點(diǎn)i隨機(jī)生成[0, 1]間的實(shí)數(shù)j;
[0009] A2、計(jì)算節(jié)點(diǎn)i的閾值Pi,判斷Pi與j的大小關(guān)系;如果j〈Pi,則進(jìn)入步驟A3,否 則轉(zhuǎn)到步驟A4;
[0010] A3、節(jié)點(diǎn)i當(dāng)選為本輪簇頭,Ci置為0 ;簇頭廣播當(dāng)選簇頭信息;進(jìn)入步驟A5 ;
[0011] A4、節(jié)點(diǎn)i未當(dāng)選本輪簇頭,Ci置為1 ;接收所有簇頭發(fā)來的當(dāng)選簇頭信息;進(jìn)入 步驟A5 ;
[0012] A5、未當(dāng)選為簇頭的非簇頭節(jié)點(diǎn)依據(jù)接收到的每個(gè)簇頭發(fā)來的當(dāng)選簇頭信息的信 號強(qiáng)度,選擇信號強(qiáng)度最大的簇頭作為本輪所要加入的簇;非簇頭節(jié)點(diǎn)將連接請求信息反 饋給選定的簇頭;
[0013] A6、簇頭接收非簇頭節(jié)點(diǎn)的連接請求信息,根據(jù)簇內(nèi)節(jié)點(diǎn)的數(shù)量,簇頭創(chuàng)建一個(gè)告 知節(jié)點(diǎn)何時(shí)能傳輸數(shù)據(jù)的時(shí)間表,并且將這個(gè)時(shí)間表廣播到簇內(nèi)的節(jié)點(diǎn);
[0014]A7、簇內(nèi)的節(jié)點(diǎn)接收時(shí)間表并進(jìn)入數(shù)據(jù)傳輸階段。
[0015] 優(yōu)選的,所述數(shù)據(jù)傳輸階段的步驟為:
[0016] B1、判斷節(jié)點(diǎn)i是否是簇頭;如果不是則進(jìn)入步驟B2,如果是則進(jìn)入步驟B3 ;
[0017] B2、每個(gè)簇內(nèi)的節(jié)點(diǎn)的無線電關(guān)閉直到分配給該節(jié)點(diǎn)的傳輸時(shí)間到來;Ci= 1的 節(jié)點(diǎn)在自己的最后一個(gè)時(shí)隙里發(fā)送剩余能量信息的數(shù)據(jù)包給簇頭;Ci= 0的節(jié)點(diǎn)在自己的 最后一個(gè)時(shí)隙里發(fā)送不含剩余能量信息的數(shù)據(jù)包給簇頭,轉(zhuǎn)到步驟B3 ;
[0018] B3、簇頭打開接收器接收簇內(nèi)節(jié)點(diǎn)發(fā)來的數(shù)據(jù)包;簇頭接收到所有簇內(nèi)節(jié)點(diǎn)的數(shù) 據(jù)包后先進(jìn)行數(shù)據(jù)融合,再將捎帶剩余能量信息發(fā)送給基站;
[0019] B4、基站接收簇頭發(fā)來的信息并計(jì)算Ci= 1節(jié)點(diǎn)的平均能量,再廣播給全網(wǎng);
[0020] B5、節(jié)點(diǎn)接收計(jì)算閾值所必須的平均能量;
[0021] B6、新一輪開始,判斷是否是新周期,如果是新的周期則將所有節(jié)點(diǎn)的Ci重置為 1,轉(zhuǎn)入步驟A1 ;如果判斷為否則轉(zhuǎn)入步驟B1。
[0022] 優(yōu)選的,步驟A3中簇頭廣播當(dāng)選簇頭信息包含當(dāng)選簇頭節(jié)點(diǎn)的ID和用于區(qū)分該 消息是否為公告信息的首部。
[0023] 優(yōu)選的,所述步驟A2中的閾值Pi的計(jì)算公式為:
[0024]
[0025] 因?yàn)橹挥挟?dāng)前周期還未成為簇頭的節(jié)點(diǎn)可以參加簇頭選舉,所以(1)式中能量比 例因子的分母不是全體節(jié)點(diǎn)的平均能量,而是有資格參加選舉的節(jié)點(diǎn)平均能量;同時(shí)(1) 式可以使得期望簇頭數(shù)目保持k不變;簇頭期望公式為:
[0029]由W.Heinzelman等人研宄的文獻(xiàn)《Anapplication-specificprotocol architectureforwirelessmicrosensornetworks》可知:
[0033] 為了節(jié)點(diǎn)能量均衡,要多讓高能量節(jié)點(diǎn)當(dāng)選簇頭,每個(gè)候選簇頭將自身的地址位 置、剩余能量、節(jié)點(diǎn)與簇頭的距離以及簇頭與基站的距離等消息廣播給其他節(jié)點(diǎn);令節(jié)點(diǎn)i 的初始能量為Ei(l,在第r輪分簇之前的剩余能量權(quán)值F(EJ為
[0034]
[0035] F(EJ越大,說明該節(jié)點(diǎn)在此時(shí)的剩余能量越大;
[0036] 節(jié)點(diǎn)i到簇頭叫的通信范圍越小,簇頭與節(jié)點(diǎn)之間的能耗越??;同樣如果節(jié)點(diǎn)i 到基站BS的通信范圍越小,數(shù)據(jù)傳輸?shù)哪芎囊苍叫?。根?jù)自由傳播能量模型可知,則綜合 距離權(quán)值可以表示為
[0037]
[0038]結(jié)合公式(5),同時(shí)加入綜合距離權(quán)值使得簇頭盡量靠近基站,減少數(shù)據(jù)傳輸消耗 的能量;節(jié)點(diǎn)i成為簇頭的概率由式⑶計(jì)算:
[0039]
(8)
[0040] 設(shè)a、0為調(diào)節(jié)節(jié)點(diǎn)剩余能量權(quán)值和綜合距離權(quán)值在簇頭競爭時(shí)所占的概率比 值,且a+ |3 = 1。
[0041] 本發(fā)明的有益效果是:本發(fā)明的算法在選舉簇頭時(shí)同時(shí)考慮分簇負(fù)載分布情況和 節(jié)點(diǎn)剩余能量兩個(gè)優(yōu)化目標(biāo),通過改進(jìn)選舉簇頭時(shí)的閾值來保證每一輪簇頭數(shù)目在期望范 圍,以緩解簇頭