王紅君 ?;矍? 岳有軍 趙輝
摘要:在溫室下無(wú)線傳感器網(wǎng)絡(luò)中,采用基于低功耗自適應(yīng)集簇分層型算法進(jìn)行分簇時(shí),存在簇分布不均勻及路由能量消耗過(guò)快的問(wèn)題。因此,本研究基于雙簇頭異構(gòu)成簇算法,優(yōu)化了簇頭選擇算法。在分好的簇中布署1個(gè)異構(gòu)節(jié)點(diǎn)做為第一簇頭,根據(jù)能量因素選擇另1個(gè)簇頭,2個(gè)簇頭履行不同的職責(zé),達(dá)到均攤能量消耗、延長(zhǎng)網(wǎng)絡(luò)生命周期的目的。其中,采用單跳與多跳結(jié)合方法將第一簇頭節(jié)點(diǎn)信息傳送到匯聚節(jié)點(diǎn)以達(dá)到提高傳輸效率的目的。仿真結(jié)果表明,該算法平衡了靜態(tài)節(jié)點(diǎn)能耗,延長(zhǎng)了網(wǎng)絡(luò)存活時(shí)間。
關(guān)鍵詞:溫室;無(wú)線傳感器網(wǎng)絡(luò);雙簇頭;異構(gòu)節(jié)點(diǎn);LEACH算法
中圖分類號(hào): TP212.9? 文獻(xiàn)標(biāo)志碼: A? 文章編號(hào):1002-1302(2019)05-0180-04
收稿日期:2017-12-21
基金項(xiàng)目:天津市農(nóng)業(yè)科技成果轉(zhuǎn)化與推廣項(xiàng)目(編號(hào):201203060、201303080)。
作者簡(jiǎn)介:王紅君(1963—),女,天津人,碩士,教授,碩士生導(dǎo)師,研究方向?yàn)榱鞒坦I(yè)先進(jìn)控制技術(shù)。E-mail:hongewang@126.com。
通信作者:?;矍?,碩士,主要研究方向?yàn)榫W(wǎng)絡(luò)控制理論與技術(shù)。E-mail:623516651@qq.com。
無(wú)線傳感器網(wǎng)絡(luò)指布署的微型傳感器節(jié)點(diǎn)利用無(wú)線通信的方式得到的多跳自組織網(wǎng)絡(luò)系統(tǒng),其作用是獲取監(jiān)控區(qū)域的目標(biāo)信息并發(fā)送給觀察者[1]。在設(shè)施溫室中布署傳感器節(jié)點(diǎn)可以實(shí)現(xiàn)對(duì)農(nóng)作物和環(huán)境的實(shí)時(shí)監(jiān)測(cè),但由于傳感器節(jié)點(diǎn)體積小并且采用電池供電時(shí)其能源和帶寬非常有限,因此,研究如何在溫室環(huán)境下延長(zhǎng)網(wǎng)絡(luò)的生命周期是一個(gè)有待解決的問(wèn)題。無(wú)線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)見(jiàn)圖1[2]。
目前,眾多學(xué)者對(duì)路由協(xié)議進(jìn)行了大量研究,如(low energy adaptive clustering hierarchy,簡(jiǎn)稱LEACH[3])、(directed diffusion,簡(jiǎn)稱DD[4])、(geographical and energy aware routing,簡(jiǎn)稱GEAR[5])等。筆者主要研究溫室下無(wú)線傳感器網(wǎng)絡(luò)雙簇頭異構(gòu)成簇算法,首先以LEACH為基礎(chǔ)進(jìn)行分析。
LEACH協(xié)議將網(wǎng)絡(luò)的運(yùn)行分成若干輪,每輪隨機(jī)地選取簇首節(jié)點(diǎn),將網(wǎng)絡(luò)的能量均攤到每個(gè)節(jié)點(diǎn)中[6],延長(zhǎng)網(wǎng)絡(luò)的生存時(shí)間。每輪過(guò)程包含簇的建立與數(shù)據(jù)傳輸2個(gè)階段。建立階段指進(jìn)行簇頭的選舉和節(jié)點(diǎn)的加簇過(guò)程;傳輸階段指每個(gè)節(jié)點(diǎn)將所得數(shù)據(jù)發(fā)送到簇頭,簇頭匯總每個(gè)節(jié)點(diǎn)的數(shù)據(jù)傳到用戶終端。LEACH協(xié)議的分簇拓?fù)浣Y(jié)構(gòu)有效降低了路由控制進(jìn)程中能量的消耗,簇頭的輪換機(jī)制也使節(jié)點(diǎn)能量消耗減慢,從而延長(zhǎng)了網(wǎng)絡(luò)生存時(shí)間。
然而,LEACH協(xié)議也有自身缺點(diǎn)。簇頭節(jié)點(diǎn)選舉過(guò)程有較大的隨機(jī)性,在每輪的簇頭選擇階段,每個(gè)節(jié)點(diǎn)有相同的概率成為簇頭且與其位置無(wú)關(guān)。節(jié)點(diǎn)分布不均時(shí)LEACH算法所選簇頭可能沒(méi)有均勻分布在監(jiān)測(cè)區(qū)域內(nèi);當(dāng)節(jié)點(diǎn)分布區(qū)域比較稀疏時(shí),簇頭節(jié)點(diǎn)較少或沒(méi)有,此時(shí)普通節(jié)點(diǎn)會(huì)直接與匯聚節(jié)點(diǎn)通信,導(dǎo)致普通節(jié)點(diǎn)的死亡速度加快,影響整個(gè)網(wǎng)絡(luò)的生命周期[7]。
1 網(wǎng)絡(luò)模型與能量模型
1.1 網(wǎng)絡(luò)模型
由于網(wǎng)絡(luò)中異構(gòu)節(jié)點(diǎn)的加入,需要特別設(shè)置網(wǎng)絡(luò)模型,在1個(gè)m×m的區(qū)域內(nèi)隨機(jī)布署n個(gè)傳感器節(jié)點(diǎn),其中包括k個(gè)異構(gòu)傳感器節(jié)點(diǎn),異傳感器節(jié)點(diǎn)能量是普通傳感器節(jié)點(diǎn)能量的h倍。具體設(shè)置如下:(1)由于節(jié)點(diǎn)分布不均勻,所以本研究的普通節(jié)點(diǎn)都是隨機(jī)分布的;(2)基站位置唯一且固定,并擁有足夠的能量、計(jì)算能力和存儲(chǔ)能力;(3)節(jié)點(diǎn)可以根據(jù)距離調(diào)整它的發(fā)射功率;(4)異構(gòu)節(jié)點(diǎn)采用確定布署的方式,且布署后位置不發(fā)生改變。
1.2 能量模型
本研究采用能量消耗模型[8],模型結(jié)構(gòu)見(jiàn)圖2。
節(jié)點(diǎn)發(fā)送k bit數(shù)據(jù)到距離d的位置,消耗的能量為發(fā)射電路損耗的能量與功率放大損耗能量的和,其計(jì)算公式為
式中:Eelec表示發(fā)射電路損耗的能量;εfs、εmp分別為自由空間模型、多路徑衰減模型中功率放大消耗的能量。接收數(shù)據(jù)消耗的能量為
式中:k表示接收的數(shù)據(jù)數(shù)量。
2 雙簇頭異構(gòu)成簇算法
本研究針對(duì)LEACH協(xié)議簇頭隨機(jī)選取導(dǎo)致的簇頭分布不均勻、簇頭節(jié)點(diǎn)能量消耗過(guò)快等問(wèn)題,提出了雙簇頭異構(gòu)成簇算法。(1)利用k-Medoids聚類算法將整個(gè)網(wǎng)絡(luò)區(qū)域的節(jié)點(diǎn)分為若干個(gè)類;(2)在每個(gè)類中布署1個(gè)異構(gòu)節(jié)點(diǎn)作為第一簇頭,用于數(shù)據(jù)的傳輸;(3)根據(jù)能量因素選取另外1個(gè)簇頭作為第二簇頭,用于數(shù)據(jù)的融合;(4)第二簇頭將融合好的數(shù)據(jù)傳輸給第一簇頭,由第一簇頭經(jīng)過(guò)單跳與多跳相結(jié)合模式將信息發(fā)給基站。算法流程見(jiàn)圖3。
2.1 簇的形成
利用k-Medoids算法隨機(jī)選取k個(gè)節(jié)點(diǎn)作為初始Medoid,1個(gè)節(jié)點(diǎn)表示1個(gè)聚類,根據(jù)節(jié)點(diǎn)與各聚類中心的距離將其他節(jié)點(diǎn)分配到最近的聚類中,然后根據(jù)其他所有節(jié)點(diǎn)與這k個(gè)節(jié)點(diǎn)的距離d進(jìn)行聚類,直到k個(gè)medoids固定。其中,k值的選取定義為
式中:Ncluster指要選取的簇頭個(gè)數(shù);Nm為節(jié)點(diǎn)個(gè)數(shù)。
2.2 異構(gòu)節(jié)點(diǎn)的布署
節(jié)點(diǎn)布署主要分為確定布署和隨機(jī)布署。本研究普通節(jié)點(diǎn)采用隨機(jī)布署的方式,異構(gòu)節(jié)點(diǎn)采用確定布署的方式即采用選址理論[9]的方法,網(wǎng)絡(luò)中異構(gòu)節(jié)點(diǎn)的地理位置根據(jù)所有普通節(jié)點(diǎn)設(shè)置。
假定在無(wú)線傳感器網(wǎng)絡(luò)中包含k個(gè)類,每個(gè)類中包含n個(gè)普通節(jié)點(diǎn),其地理位置為L(zhǎng)i=(xi,yi),1≤i≤n。唯一的異構(gòu)傳感器節(jié)點(diǎn)應(yīng)該布署在PH(u,v),可以使所有普通節(jié)點(diǎn)和最近的異構(gòu)節(jié)點(diǎn)之間的通信開(kāi)銷C(u,v)最小。假設(shè)異構(gòu)節(jié)點(diǎn)的能量是普通節(jié)點(diǎn)能量的h倍,則
式中:wi表示節(jié)點(diǎn)i的通信量,通常情況下所有普通傳感器節(jié)點(diǎn)的通信量一樣,即wi=1。然后通過(guò)多次迭代得到u和v,從而使C(u,v)最小。