袁旭華, 惠小靜
(延安大學(xué)數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,陜西延安 716000)
為了對大棚農(nóng)業(yè)的精細(xì)管理,農(nóng)業(yè)物聯(lián)網(wǎng)(agriculture internet of things,AIoT)[1]應(yīng)運(yùn)而生。在大棚監(jiān)控系統(tǒng)中,運(yùn)用農(nóng)業(yè)物聯(lián)網(wǎng)西游中的各種傳感器(溫度、濕度、pH值、光和二氧化碳等)設(shè)備,監(jiān)測環(huán)境中的溫度、相對濕度、pH值、光照度和二氧化碳濃度等指標(biāo),通過各種儀器實(shí)時顯示到大棚監(jiān)控中心,保證作物有一個良好的、適宜的生產(chǎn)環(huán)境,為精細(xì)農(nóng)業(yè)精準(zhǔn)控制提供科學(xué)依據(jù),從而提高農(nóng)作物產(chǎn)量、調(diào)節(jié)作物生長周期、提高經(jīng)濟(jì)效益的目的。無線傳感器網(wǎng)絡(luò)(wireless sensor networks,WSNs)作為農(nóng)業(yè)物聯(lián)網(wǎng)推廣的重要載體、未來延伸Internet覆蓋范圍和實(shí)現(xiàn)普適計(jì)算的一項(xiàng)關(guān)鍵技術(shù),得到國家、社會和學(xué)術(shù)界廣泛重視,必將在農(nóng)業(yè)生產(chǎn)、農(nóng)業(yè)經(jīng)濟(jì)和社會發(fā)展等各個領(lǐng)域顯示出巨大的應(yīng)用價值[2]。農(nóng)業(yè)WSNs通過對大棚監(jiān)測區(qū)域部署各種傳感器類型的節(jié)點(diǎn),近距離多跳自組織的形式傳輸數(shù)據(jù)、節(jié)點(diǎn)之間相互協(xié)作、互相配合的智能網(wǎng)絡(luò)。將采集到的數(shù)據(jù)進(jìn)行初步預(yù)處理,以多跳自組織的形式發(fā)送給匯聚節(jié)點(diǎn),匯聚節(jié)點(diǎn)再將收集到的信息傳輸給大棚監(jiān)控中心,大棚監(jiān)控中心進(jìn)行適當(dāng)?shù)奶幚?,最終將處理后的數(shù)據(jù)反饋給決策者并傳送給所需的用戶[3]。
農(nóng)業(yè)無線傳感器網(wǎng)絡(luò)以數(shù)據(jù)為中心,以完成規(guī)定的任務(wù)為目標(biāo),當(dāng)傳感器網(wǎng)絡(luò)執(zhí)行具體應(yīng)用任務(wù)過程中,完成規(guī)定功能的任務(wù)主要由完成任務(wù)時間、網(wǎng)絡(luò)能量消耗情況、網(wǎng)絡(luò)生存時間、網(wǎng)絡(luò)內(nèi)部負(fù)載均衡性以及穩(wěn)定性和可靠性等性能決定,而這些參數(shù)都與大棚監(jiān)測區(qū)域的傳感器節(jié)點(diǎn)組成的網(wǎng)絡(luò)結(jié)構(gòu)息息相關(guān),即與網(wǎng)絡(luò)分簇?cái)?shù)量、簇的結(jié)果相關(guān)。一般而言,大多傳感器網(wǎng)絡(luò)都是在經(jīng)典分簇低功耗自適應(yīng)集簇分簇型協(xié)議(LEACH,low energy adaptive clustering hierarchy)分簇架構(gòu)基礎(chǔ)上進(jìn)一步研究的。大棚網(wǎng)絡(luò)建立初期,分簇算法將監(jiān)測區(qū)域劃分為若干個區(qū)域(簇),每個簇由簇頭節(jié)點(diǎn)和簇成員節(jié)點(diǎn)構(gòu)成,簇成員節(jié)點(diǎn)主要負(fù)責(zé)數(shù)據(jù)的感知、采集和預(yù)處理,之后將采集的數(shù)據(jù)發(fā)送給簇頭,簇頭對收集到簇成員節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,之后轉(zhuǎn)發(fā)給宿(sink)。簇頭的工作職責(zé)主要是簇之間的相互通信以及簇內(nèi)資源管理與分配,使簇內(nèi)傳感器節(jié)點(diǎn)負(fù)載均衡。簇結(jié)構(gòu)數(shù)量及大小很大程度上會影響整個傳感器網(wǎng)絡(luò)性能,因此基于負(fù)載均衡的無線傳感器網(wǎng)絡(luò)分簇算法的研究對提高網(wǎng)絡(luò)性能、延長網(wǎng)絡(luò)壽命和提高網(wǎng)絡(luò)壽命有著非常重要的意義[4]。
無線傳感器網(wǎng)絡(luò)能耗模型采用與LEACH算法相同的無線通信模型,傳感節(jié)點(diǎn)無線通信能耗模型如圖1所示。
從圖1中可以看出,傳感節(jié)點(diǎn)發(fā)送數(shù)據(jù)能量消耗主要分布在發(fā)射電路和放大器電路2個部分,發(fā)射電路的能耗與發(fā)送數(shù)據(jù)包的長度l有關(guān),放大器電路的能耗與數(shù)據(jù)包的長度和傳輸距離d有關(guān)。無線傳感器網(wǎng)絡(luò)數(shù)據(jù)傳輸能耗模型分2種,即自由空間傳輸模型和多路徑衰減模型,數(shù)據(jù)傳輸距離不同,采用的網(wǎng)絡(luò)能耗模型也不同。另外該模型根據(jù)傳輸距離的長度給出1個參考閾值d0,當(dāng)距離小于閾值d0時,采用自由空間傳輸能耗模型,發(fā)送數(shù)據(jù)所需能耗與距離的平方成正比。當(dāng)距離大于參考閾值d0時,采用多路徑衰減能耗模型,發(fā)送數(shù)據(jù)的能耗與距離的四次方成正比。傳感器節(jié)點(diǎn)發(fā)送數(shù)據(jù)能耗的公式如式(1)所示[5]。
(1)
式中:ETx(l)是發(fā)射電路發(fā)送數(shù)據(jù)包長度l的發(fā)射能耗;ETx(l,d)是將數(shù)據(jù)包長度l發(fā)送至距離d的放大器能耗。而節(jié)點(diǎn)接收數(shù)據(jù)后,網(wǎng)絡(luò)能耗為:
Erx(l)=l×Eelec。
(2)
簇頭節(jié)點(diǎn)進(jìn)行數(shù)據(jù)融合(l個簇頭和N/k-1個簇成員節(jié)點(diǎn))消耗的能量為
Eax=l×EDA(1=N/k-1)=l×EDA×N/k。
(3)
閾值d0由式(4)決定:
(4)
式中:Eelec與信道編碼、調(diào)制、濾波、擴(kuò)頻信號等因素有關(guān),參數(shù)εfsd2和εampd4取決于特定誤比特率條件。節(jié)點(diǎn)發(fā)送或接收單位長度數(shù)據(jù)的能耗Eelec=50 nJ/bit,自由空間數(shù)據(jù)傳輸模型的放大器能耗參數(shù)εfs=10 pJ/(bit·m2),多路徑衰減數(shù)據(jù)傳輸模型的放大器能耗參數(shù)εamp=0.001 3 pJ/(bit·m4),簇頭數(shù)據(jù)融合的能量消耗EDA=5 pJ/bit。
無線傳感器網(wǎng)絡(luò)分簇算法主要針對監(jiān)測區(qū)域中的傳感器節(jié)點(diǎn),通過何種方法對監(jiān)測區(qū)域中的所有傳感節(jié)點(diǎn)進(jìn)行分簇,使簇內(nèi)成員節(jié)點(diǎn)以最少的能量完成網(wǎng)絡(luò)數(shù)據(jù)的采集、處理和傳輸,最終傳送給宿節(jié)點(diǎn)?,F(xiàn)有的分簇方法大都偏重于算法的網(wǎng)絡(luò)能耗、計(jì)算復(fù)雜度、網(wǎng)絡(luò)數(shù)據(jù)傳輸時延等方面,但很難保證適當(dāng)?shù)拇財(cái)?shù)量、簇內(nèi)成員節(jié)點(diǎn)之間的通信質(zhì)量以及簇之間的負(fù)載均衡性問題。監(jiān)測區(qū)域中的簇頭節(jié)點(diǎn)數(shù)過多或者過少都會導(dǎo)致網(wǎng)絡(luò)出現(xiàn)各種問題,性能下降,降低網(wǎng)絡(luò)壽命。如監(jiān)測區(qū)域中的簇頭節(jié)點(diǎn)數(shù)過多,不方便宿節(jié)點(diǎn)的管理,導(dǎo)致和宿節(jié)點(diǎn)直接通信的簇頭節(jié)點(diǎn)太多,造成數(shù)據(jù)傳輸擁塞,延長數(shù)據(jù)傳輸時延和增加通信能耗。如監(jiān)測區(qū)域中的簇頭節(jié)點(diǎn)數(shù)過少,會導(dǎo)致簇內(nèi)成員節(jié)點(diǎn)過多,造成簇頭節(jié)點(diǎn)能耗過多,管理難度增大,最終導(dǎo)致負(fù)載不均衡,造成部分節(jié)點(diǎn)能量消耗過快而過早失效,影響整個網(wǎng)絡(luò)的連通性和可靠性。
目前已經(jīng)有很多專家學(xué)者在無線傳感器網(wǎng)絡(luò)分簇算法中展開深入的研究,并取得了一些成果。最典型的則屬于低功耗自適應(yīng)集簇分簇型協(xié)議LEACH分簇算法,現(xiàn)在許多算法都是基于此方法開展進(jìn)一步工作的。如Yue等對無線傳感器網(wǎng)絡(luò)分簇方法進(jìn)行了整理總結(jié),分別從平面路由層分簇協(xié)議和異構(gòu)路由分簇方法進(jìn)行總結(jié)[6]。Liu等針對分布式傳感器網(wǎng)絡(luò)提出了一種基于聚類的負(fù)載均衡分簇算法,構(gòu)建了一種更加穩(wěn)定的分簇架構(gòu),延長了網(wǎng)絡(luò)壽命[7]。Javaid等針對異構(gòu)無線傳感器網(wǎng)絡(luò)分簇算法,提出一種EDDEEC(enhanced developed distributed energy-efficient clustering)分簇方法,提高了網(wǎng)絡(luò)工作效率,節(jié)省了網(wǎng)絡(luò)能耗,延長了網(wǎng)絡(luò)壽命[8]。在文獻(xiàn)[9]中,針對無線傳感器網(wǎng)絡(luò)非均勻分簇問題,提出一種能量模糊感知分簇方法,節(jié)約了網(wǎng)絡(luò)能耗,提高了網(wǎng)絡(luò)壽命。Bagci等提出一種新的路由分簇協(xié)議ECHERP(equalized cluster head election routing protocol),大大提高了工作效率,節(jié)省了網(wǎng)絡(luò)能耗[10]。Nikolidakis等結(jié)合群智能仿生優(yōu)化算法,提出一種基于人工蜂群算法的無線傳感器網(wǎng)絡(luò)路由分簇算法,仿真結(jié)果表明該方法非常成功地應(yīng)用于WSNs分簇方法中,節(jié)省了網(wǎng)絡(luò)能耗,延長了網(wǎng)絡(luò)壽命[11]。從以上研究成果來看,上述這些算法都從網(wǎng)絡(luò)能耗、網(wǎng)絡(luò)壽命角度出發(fā),對其進(jìn)行優(yōu)化和改善。但上述方法要求傳感器網(wǎng)絡(luò)簇頭節(jié)點(diǎn)需要較強(qiáng)的計(jì)算能力、通信能力和存儲能力,整個計(jì)算過程網(wǎng)絡(luò)能耗開銷非常大,同時沒有考慮網(wǎng)絡(luò)簇內(nèi)成員節(jié)點(diǎn)的多跳數(shù)據(jù)傳輸情況。因此,本研究綜合考慮負(fù)載均衡和能量消耗2個優(yōu)化目標(biāo),搜索過程充分考慮了網(wǎng)絡(luò)分簇的負(fù)載均衡性、簇內(nèi)數(shù)據(jù)傳輸距離、跳數(shù)、時延和帶寬等因素,將群智能螢火蟲算法與無線傳感器網(wǎng)絡(luò)分簇路由算法相結(jié)合,提出一種新的自適應(yīng)螢火蟲WSNs負(fù)載均衡分簇算法。
英國劍橋大學(xué)Yang博士對螢火蟲發(fā)光行為進(jìn)行抽象,于2007年提出了螢火蟲算法(glowworm swarm optimization,GSO)[12],該算法是一種新元啟發(fā)式群智能算法,具有操作簡單、并行魯棒性較強(qiáng)等特點(diǎn),在高維空間復(fù)雜函數(shù)優(yōu)化方面得到成功應(yīng)用[13]。一般典型的螢火蟲優(yōu)化算法由算法初始化、熒光素更新、飛行位置更新以及螢火蟲決策域更新4個部分構(gòu)成[14]。螢火蟲i在尋找食物過程中,種群個體之間都會相互溝通與協(xié)作,主要通過飛行過程中發(fā)出熒光素向周圍傳送食物源信息,食物源越大,熒光素則越濃,吸引其他螢火蟲飛往食物源較多的地方。螢火蟲的決策范圍根據(jù)式(5)進(jìn)行確定。
(5)
(6)
式中:xi(k)為第k次迭代計(jì)算中螢火蟲i位置;li(k)表示第k次迭代中螢火蟲i熒光素值;在第k次迭代中,螢火蟲i向鄰居螢火蟲個體j運(yùn)動的概率用pij(k)表示,由式(7)表示為:
(7)
螢火蟲i向熒光素多的地方運(yùn)動后的位置由式(8)得到:
(8)
式中:S表示螢火蟲搜索食物源的運(yùn)動步長。
螢火蟲i搜索食物源運(yùn)動到新地方后,按照式(9)對螢火蟲發(fā)出的熒光素值進(jìn)行更新:
li(k)=(1-λ)li(k-1)+ωf[xi(k)]。
(9)
式中:li(k)表示在第k次迭代計(jì)算中螢火蟲個體i熒光素值;λ∈(0,1)[15]。
在螢火蟲算法中,由于算法本身在搜索最優(yōu)解過程中容易陷入局部最優(yōu)以及尋優(yōu)速度較慢等問題。同時,搜索過程中如果步長較大,則容易尋找到全局最優(yōu)解,但與之付出的是搜索精度大大降低,還會出現(xiàn)較大的波動情況;如果搜索過程中如果步長較小,搜索最優(yōu)解的速度降低,搜索精度明顯提高。這是一個相互影響、相互制約的關(guān)系,必須在它們二者之中進(jìn)行權(quán)衡,由此提出自適應(yīng)搜索的改進(jìn)螢火蟲算法,同時引入螢光因子Yi
(10)
式中:φi表示第i頭螢火蟲的當(dāng)前狀態(tài);φmax表示熒光素濃度最高時種群個體當(dāng)前狀態(tài);dmax為最佳螢火蟲到其他螢火蟲個體之間的距離最大值。
基于螢火蟲算法中的螢光因子自適應(yīng)調(diào)整搜索步長最佳策略為
si=smin+(smax-smin)Yi。
(11)
式中:smin、smax分別是搜索步長的最小值、最大值。
根據(jù)前面的(10)、(11)計(jì)算公式自適應(yīng)調(diào)整搜索步長。當(dāng)種群個體第i頭螢火蟲靠近熒光素濃度最大的螢火蟲區(qū)域時,距離越近,那么‖φi-φmax‖越小,另外可通過計(jì)算公式(10)可知,所求得的螢光因子Yi值越小,而根據(jù)計(jì)算公式(11)得出的自適應(yīng)調(diào)整搜索步長最佳策略si也越小。
因此,為了保證搜索過程中盡快尋找到全局最優(yōu)解,在搜索最優(yōu)解過程中必須進(jìn)行動態(tài)調(diào)整,采取以下措施:自適應(yīng)調(diào)整步長的螢火蟲算法在搜索最優(yōu)解初期,采取步長較大的搜索方式,進(jìn)行第1步精度較差的大范圍搜索,盡快完成全局搜索最優(yōu)解,在最優(yōu)解鄰域附近進(jìn)行步長較小的精度搜索,即局部搜索,搜索更精確的最優(yōu)解。
假定在邊長為M的正方形傳感器網(wǎng)絡(luò)監(jiān)測區(qū)域中,隨機(jī)部署N個傳感器感知節(jié)點(diǎn),簇頭節(jié)點(diǎn)到宿節(jié)點(diǎn)之間的距離為dChtoBS。另外,假定監(jiān)測區(qū)域中N個傳感器感知節(jié)點(diǎn)均勻劃分為k個簇區(qū)域,每個簇成員節(jié)點(diǎn)的個數(shù)為(N/k-1),并參考“1.1”中的網(wǎng)絡(luò)能耗模型可知,簇頭的能耗ECH主要由以下2個部分組成:接收簇成員節(jié)點(diǎn)的能耗和向宿節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)產(chǎn)生的能耗。其他的簇內(nèi)成員節(jié)點(diǎn)的能耗ENEN主要由感知節(jié)點(diǎn)感知數(shù)據(jù)產(chǎn)生的能耗以及向簇頭轉(zhuǎn)發(fā)數(shù)據(jù)產(chǎn)生的能耗。
假定傳感器感知節(jié)點(diǎn)在監(jiān)測區(qū)域中服從泊松分布,每個簇所占區(qū)域S面積可以計(jì)算為M2/k,監(jiān)測區(qū)域中傳感器節(jié)點(diǎn)的密度函數(shù)為
(12)
傳感器節(jié)點(diǎn)到簇頭節(jié)點(diǎn)距離的平方數(shù)學(xué)期望為
E[dtoCH2]=E[x2+y2]=M2/2kπ。
(13)
無線傳感器網(wǎng)絡(luò)整個監(jiān)測區(qū)域總的能量消耗為
Etotal=k×Ecluster=k×ECH+k×(N.k-1)×ENEN;
(14)
(15)
將式子(13)代入(15),可以計(jì)算得到網(wǎng)咯總能量消耗為
(16)
對于式(16),關(guān)于k的計(jì)算,求k的一階導(dǎo)數(shù),可以得到下式
(17)
本研究通過求取最佳的分簇?cái)?shù)目k值,運(yùn)用改進(jìn)的螢火蟲算法對網(wǎng)絡(luò)總能量消耗最小,也就是傳感器網(wǎng)絡(luò)總能耗最小對應(yīng)的分簇最佳數(shù)值?;诟倪M(jìn)螢火蟲算法的WSNs分簇算法尋找最佳分簇值k的工作流程如圖2所示。
為了測試本研究提出的負(fù)載均衡分簇算法性能,用Matlab 2014b仿真軟件進(jìn)行仿真試驗(yàn)和性能分析。假設(shè)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)隨機(jī)均勻分布在(500×500)m2的二維空間中,傳感器節(jié)點(diǎn)規(guī)模200個。仿真輪詢次數(shù)設(shè)為100,每次仿真中傳感節(jié)點(diǎn)均有10個數(shù)據(jù)包從源節(jié)點(diǎn)向移動Sink傳送,每個數(shù)據(jù)包容量4 kb。了使模型的結(jié)果更有說服力,本研究給出的結(jié)果都是100次試驗(yàn)的平均結(jié)果。仿真環(huán)境參數(shù)設(shè)置如表1所示。
表1 仿真環(huán)境參數(shù)設(shè)置
為了更好地說明本研究提出算法的優(yōu)越性,對LEACH算法[16]、ACO蟻群算法[17]、PSO粒子群算法[18-19]和本研究提出的改進(jìn)螢火蟲算法(IGSO)算法4種數(shù)據(jù)融合算法進(jìn)行對比。首先給出無線傳感器網(wǎng)絡(luò)分簇圖,具體如圖3所示。
4.2.1網(wǎng)絡(luò)總能耗對比傳感器網(wǎng)絡(luò)總的能量消耗定義為整個網(wǎng)絡(luò)傳感器節(jié)點(diǎn)所消耗的能量總和。網(wǎng)絡(luò)的總能量消耗越小,表明該網(wǎng)絡(luò)工作效率越高,傳輸?shù)臄?shù)據(jù)量越少, 網(wǎng)絡(luò)的生命周期也就越長。以傳感器總能量消耗作為衡量指標(biāo),4種算法的網(wǎng)絡(luò)總能耗如圖4所示。
從圖4可以看出,隨著仿真輪數(shù)的增加,4種算法的網(wǎng)絡(luò)能耗都在逐漸增加,但LEACH算法增長幅度最大,本研究提出的算法的增長幅度最小。另外,LEACH路由協(xié)議的能耗最大,ACO算法較大,PSO算法能耗較小,改進(jìn)的螢火蟲算法最小。以60輪數(shù)為參考,本研究提出的算法比LEACH協(xié)議、ACO算法和PSO算法的能耗分別節(jié)省了32.8%、22.8%和12.8%。
4.2.2網(wǎng)絡(luò)負(fù)載均衡性對比網(wǎng)絡(luò)負(fù)載均衡是影響網(wǎng)絡(luò)生存周期的重要指標(biāo),網(wǎng)絡(luò)負(fù)載越均衡,網(wǎng)絡(luò)的生存周期越長。網(wǎng)絡(luò)負(fù)載均衡一般用負(fù)載均衡因子(load balancing factor,LLBF)來表示。LLBF定義為監(jiān)測區(qū)域中網(wǎng)絡(luò)所有感知節(jié)點(diǎn)(包括簇頭節(jié)點(diǎn))方差的倒數(shù)。具體計(jì)算為
(18)
式中:參數(shù)nc為傳感器節(jié)點(diǎn)個數(shù);xi為第i個簇頭成員中感知節(jié)點(diǎn)數(shù);u為所有簇頭節(jié)點(diǎn)的平均節(jié)點(diǎn)數(shù)。4種算法的網(wǎng)絡(luò)負(fù)載平衡性能對比結(jié)果如圖5所示。
圖5顯示,隨著仿真輪數(shù)的增加,LEACH分簇協(xié)議的網(wǎng)絡(luò)負(fù)載均衡性在不斷增大,網(wǎng)絡(luò)的負(fù)載均衡性能逐漸變差。其余3種算法的負(fù)載均衡性能較好,但是3種算法的負(fù)載均衡性能相差不大。整體來看,本研究提出的改進(jìn)螢火蟲算法的網(wǎng)絡(luò)負(fù)載均衡能力最好,ACO算法和PSO算法區(qū)別很小。
4.2.3簇頭個數(shù)對比LEACH協(xié)議、ACO算法和PSO算法和本研究提出的螢火蟲算法產(chǎn)生的簇頭節(jié)點(diǎn)個數(shù)如圖6所示。通常最佳的簇頭節(jié)點(diǎn)數(shù)是總的傳感節(jié)點(diǎn)數(shù)的6%~10%,簇頭數(shù)越多,且保持恒定,網(wǎng)絡(luò)性能越好。經(jīng)統(tǒng)計(jì),本研究提出算法的簇頭節(jié)點(diǎn)數(shù)幾乎都保持在15~24個。LEACH協(xié)議的簇頭節(jié)點(diǎn)數(shù)在11~28個之間波動劇烈。ACO算法和PSO算法的簇頭節(jié)點(diǎn)數(shù)保持在13~26個,但是由于存活的節(jié)點(diǎn)數(shù)減少,簇頭節(jié)點(diǎn)數(shù)也隨之減少,保持在20個左右,波動較大。由此可以看出,本研究提出的算法性能最好。
4.2.4簇頭節(jié)點(diǎn)能耗對比由于簇頭節(jié)點(diǎn)承擔(dān)著數(shù)據(jù)采集、融合和傳輸?shù)榷嘀厝蝿?wù),因此能量消耗最大。通過簇頭節(jié)點(diǎn)的能量消耗情況可知整個網(wǎng)絡(luò)能量消耗情況,4種算法每一輪簇頭節(jié)點(diǎn)能量消耗如圖7所示。
在LEACH協(xié)議中,簇頭節(jié)點(diǎn)須要傳輸所有的感知數(shù)據(jù),能量消耗較多,感知數(shù)據(jù)量急劇減少,簇頭能量消耗也快速降低。在ACO算法和PSO算法的負(fù)載均衡分簇算法中,由于在分簇過程中考慮到簇內(nèi)成員節(jié)點(diǎn)的能耗均衡問題,使得簇內(nèi)成員節(jié)點(diǎn)相互協(xié)作,簇頭能耗也較小,PSO算法的簇頭能耗比ACO算法小一些。在本研究提出的算法中,簇頭節(jié)點(diǎn)能量消耗相對較小,并且比較平穩(wěn)。
4.2.5存活節(jié)點(diǎn)數(shù)對比網(wǎng)絡(luò)存活節(jié)數(shù)是反映WSNs網(wǎng)絡(luò)性能的重要指標(biāo)之一,網(wǎng)絡(luò)的存活節(jié)點(diǎn)數(shù)越多,證明網(wǎng)絡(luò)能夠更長時間地執(zhí)行監(jiān)測任務(wù),避免頻繁地更換電池。通過與其他3種算法比較,圖8對本研究所提出的負(fù)載均衡分簇算法進(jìn)行了性能評估,該圖主要對不同負(fù)載均衡分簇算法的存活節(jié)點(diǎn)數(shù)隨輪次增加而變化的曲線圖進(jìn)行比較。
從圖8可以看出,在LEACH協(xié)議中,50%的傳感節(jié)點(diǎn)的死亡時間為47輪。在ACO分簇算法中,50%的傳感節(jié)點(diǎn)的死亡時間為45輪。PSO算法在網(wǎng)絡(luò)運(yùn)行100輪時,節(jié)點(diǎn)死亡率為70.3%,本研究提出的算法為55.7%。由于本研究提出的算法考慮了無線傳感器網(wǎng)絡(luò)的剩余能量和到匯聚節(jié)點(diǎn)的距離等因素,且將每個節(jié)點(diǎn)的感知數(shù)據(jù)協(xié)同通信,均衡分簇,通過簇頭節(jié)點(diǎn)傳遞給匯聚節(jié)點(diǎn),網(wǎng)絡(luò)能量消耗較小。
4.2.6網(wǎng)絡(luò)傳輸時延對比筆者用成功接收到的數(shù)據(jù)包的傳輸時延來衡量協(xié)議的實(shí)時性。一個數(shù)據(jù)在源節(jié)點(diǎn)的發(fā)送時刻記為Ts,在宿節(jié)點(diǎn)的接收時刻記為Tr,則平均傳輸時延為:
(19)
式中:Nr為成功接收到的包的總數(shù)。
從圖9可以看出,隨著仿真輪數(shù)的增加,數(shù)據(jù)傳輸延時明顯增大,這主要因?yàn)殡S著算法的運(yùn)行,網(wǎng)絡(luò)節(jié)點(diǎn)能耗逐漸增大,剩余能量越來越少,沖突和重傳次數(shù)增加,產(chǎn)生較大的延遲,但是本研究提出負(fù)載均衡分簇算法的時延明顯比ACO分簇算法和PSO分簇方法小一些。LEACH協(xié)議數(shù)據(jù)傳輸量最大,網(wǎng)絡(luò)時延最大。
負(fù)載均衡分簇路由算法一直是農(nóng)業(yè)物聯(lián)網(wǎng)感知層傳感網(wǎng)絡(luò)關(guān)鍵技術(shù)之一,是農(nóng)業(yè)領(lǐng)域?qū)W者關(guān)注的重點(diǎn)。本研究將群智能螢火蟲算法與農(nóng)業(yè)WSNs分簇路由算法相結(jié)合,提出了一種基于自適應(yīng)螢火蟲的農(nóng)業(yè)WSNs負(fù)載均衡分簇算法。該算法綜合考慮負(fù)載均衡和能量消耗2個優(yōu)化目標(biāo),搜索過程充分考慮了農(nóng)業(yè)網(wǎng)絡(luò)分簇的負(fù)載均衡性、簇內(nèi)數(shù)據(jù)傳輸距離等因素。試驗(yàn)表明,提出的算法在感知范圍內(nèi)自適應(yīng)地調(diào)整搜索步長,降低振蕩現(xiàn)象,提高求解精度。同時有效地減少簇首選舉和路由維護(hù)的開銷,提高網(wǎng)絡(luò)壽命,實(shí)時尋找性能更好的路由,具有較好的穩(wěn)定性。
本研究提出的螢火蟲智能分簇算法主要針對較大規(guī)模的農(nóng)業(yè)無線傳感器網(wǎng)絡(luò),同時算法本身的能耗和仿真耗時也較多,都是在離線狀態(tài)下完成的,下一步將對算法進(jìn)一步優(yōu)化,以及重點(diǎn)考慮算法的實(shí)用性和擴(kuò)展算法的應(yīng)用領(lǐng)域。
參考文獻(xiàn):
[1]Liu Y H,He Y,Li M,et al. Does wireless sensor network scale? a measurement study on GreenOrbs[J]. IEEE Transactions on Parallel and Distributed Systems,2013,24(10):1983-1993.
[2]袁志強(qiáng). 基于ZigBee技術(shù)的溫室大棚無線監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 江蘇農(nóng)業(yè)科學(xué),2012,40(11):396-397.
[3]Othman M F,Shazali K. Wireless sensor network applications:a study in environment monitoring system[J]. Procedia Engineering,2012,41:1204-1210.
[4]Suryadevara N K,Mukhopadhyay S C. Wireless sensor network based home monitoring system for wellness determination of elderly[J]. Sensors Journal,IEEE,2012,12(6):1965-1972.
[5]Tyagi S,Kumar N. A systematic review on clustering and routing techniques based upon LEACH protocol for wireless sensor networks[J]. Journal of Network and Computer Applications,2013,36(2):623-645.
[6]Yue Y,Li J Q,F(xiàn)an H H,et al. Optimization-based artificial bee colony algorithm for data collection in Large-Scale Mobile wireless sensor networks[J]. Journal of Sensors,2016(4):1-12.
[7]Liu X. A survey on clustering routing protocols in wireless sensor networks[J]. Sensors,2012,12(8):11113-11153.
[8]Liao Y,Qi H,Li W Q. Load-balanced clustering algorithm with distributed self-organization for wireless sensor networks[J]. IEEE Sensors Journal,2013,13(5):1498-1506.
[9]Javaid N,Qureshi T N,Khan A H,et al. EDDEEC:enhanced developed distributed energy-efficient clustering for heterogeneous wireless sensor networks[J]. Procedia Computer Science,2013,19:914-919.
[10]Bagci H,Yazici A. An energy aware fuzzy approach to unequal clustering in wireless sensor networks[J]. Applied Soft Computing,2013,13(4):1741-1749.
[11]Nikolidakis S A,Kandris D,Vergados D D,et al. Energy efficient routing in wireless sensor networks through balanced clustering[J]. Algorithms,2013,6(1):29-42.
[12]Karaboga D,Okdem S,Ozturk C. Cluster based wireless sensor network routing using artificial bee colony algorithm[J]. Wireless Networks,2012,18(7):847-860.
[13]Zainal N,Zain A M,Radzi N H M,et al. Glowworm swarm optimization (GSO) algorithm for optimization problems:a state-of-the-art review[C]//Applied Mechanics and Materials,2013:507-511.
[14]Huang K,Zhou Y. Improved variation step adaptive GSO algorithm[J]. Computer Engineering,2012,38(4):185-187.
[15]Marinaki M,Marinakis Y. A glowworm swarm optimization algorithm for the vehicle routing problem with stochastic demands[J]. Expert Systems With Applications,2016,46:145-163.
[16]Jayakumar D N,Venkatesh P. Glowworm swarm optimization algorithm with topsis for solving multiple objective environmental economic dispatch problem[J]. Applied Soft Computing,2014,23:375-386.
[17]黃成,張潤,吳曉蓓,等. 三維空間下基于簇首優(yōu)化機(jī)制的LEACH路由算法[J]. 南京理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,39(2):241-245.
[18]繆聰聰,陳慶奎,曹劍煒,等. 基于蟻群的無線傳感器網(wǎng)絡(luò)能量均衡非均勻分簇路由算法[J]. 計(jì)算機(jī)應(yīng)用,2013,33(12):3410-3414.
[19]蘇金樹,郭文忠,余朝龍,等. 負(fù)載均衡感知的無線傳感器網(wǎng)絡(luò)容錯分簇算法[J]. 計(jì)算機(jī)學(xué)報(bào),2014,37(2):445-456.