劉天凱,劉洪,鄭敏,譚沖?
(1 中國科學(xué)院上海微系統(tǒng)與信息技術(shù)研究所, 上海 200050; 2 中國科學(xué)院大學(xué), 北京 100049)
隨著供電需求的增大和技術(shù)的發(fā)展,電網(wǎng)的容量在不斷增加,維護和檢測的成本也不斷提高。因此,在變電站或輸電線路上建立各類檢測系統(tǒng),通過傳感器收集各類環(huán)境信息,數(shù)據(jù)經(jīng)由無線網(wǎng)絡(luò)傳到監(jiān)測平臺,做到無人值守,實時監(jiān)控,可以很大地節(jié)約成本。無線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)[1]具有自組織、低功耗、高魯棒性的特點,適用于輸變電場景監(jiān)測區(qū)域廣、傳感器眾多的特點。WSN中的傳感器通常由電池供電[2],且難以更換,能耗是主要研究的一個問題。
針對這一問題,許多學(xué)者做了大量的研究。LEACH(low-energy adaptive clustering hierarchy)是由Heinzelman等[3]提出的基于分簇的路由協(xié)議,網(wǎng)絡(luò)中的節(jié)點隨機選出簇首,其他節(jié)點選擇簇首加入簇中,以此延長網(wǎng)絡(luò)生命周期。但是,LEACH隨機選舉簇首,沒有考慮到節(jié)點能耗問題和位置因素,并且簇首到基站為單跳傳輸。對于上述問題,后來的學(xué)者從這幾個方面做了很多改進(jìn),Heinzelman 等[4]考慮了剩余能量的問題,又提出LEACH-C選擇能量值高于平均能量的節(jié)點作為簇首的候選節(jié)點;黃利曉等[5]提出LEACH-improved加入距離因子和能量密度等因素去選舉簇首;Hu和Wang[6]提出EEUC,采用簇間多跳和非均勻分簇的方式,均衡了能耗;Lee和Kao[7]在分簇算法中引入邊緣度和雙能量閾值的算法考慮了各類節(jié)點的位置信息,同時對剩余能量的選擇進(jìn)行優(yōu)化;李安超和陳桂芬[8]提出一種3層結(jié)構(gòu)的分簇算法,改進(jìn)了分簇的模型,適用于大規(guī)模的無線傳感器網(wǎng)絡(luò)。同時,匯聚節(jié)點移動也作為一種平衡能耗的改進(jìn)方式,Gharaei等[9]采用移動匯聚節(jié)點的方法,并使用人工蜂群優(yōu)化算法規(guī)劃了最優(yōu)路徑,但并不適用于常處于室外或布線復(fù)雜的輸變電環(huán)境。群智能算法作為優(yōu)化多峰函數(shù)的算法,一些學(xué)者在簇首選舉的過程中引入了群智能算法,Daneshvar等[10]使用灰狼優(yōu)化算法選舉簇首,提出雙跳路由算法,均衡了能耗、戴劍勇等[11]引入螢火蟲算法和BP神經(jīng)網(wǎng)絡(luò),考慮了簇首密度、簇首位置,對簇首選舉和路徑選擇進(jìn)行優(yōu)化;Singh等[12]引入粒子群算法,改善簇首分布不均的問題;武小年等[13]提出改進(jìn)粒子群優(yōu)化算法的分簇路由協(xié)議,把節(jié)點的剩余能量和位置因子作為粒子群優(yōu)化算法的目標(biāo),通過自適應(yīng)學(xué)習(xí)因子對粒子群優(yōu)化算法做了改進(jìn)。麻雀搜索算法(sparrow search algorithm,SSA)是由Xue和Shen[14]提出的一種模擬麻雀覓食和警戒行為的智能算法,在高維多峰的優(yōu)化上其求解成功率、收斂速度等方面表現(xiàn)優(yōu)異,已應(yīng)用于圖像分割[15]、三維無人機航空優(yōu)化[16]等場景。而輸變電場景中節(jié)點個數(shù)眾多,對于最優(yōu)簇首集合的選舉問題,SSA算法尋優(yōu)精度高,具有一定優(yōu)勢,并且尚未應(yīng)用在簇首選舉當(dāng)中。
在輸變電的部分場景,如大型室外變電站,監(jiān)測區(qū)域大,傳感器眾多,難以供電,為了節(jié)約成本,傳感器的計算能力較低,不具有組網(wǎng)能力,無法成為“簇首節(jié)點”或中繼節(jié)點,只能以單跳的方式傳輸進(jìn)行數(shù)據(jù)傳輸。根據(jù)上述場景,提出一種解決方案,布置計算能力較高的節(jié)點作為傳感器的中繼節(jié)點,中繼節(jié)點進(jìn)行組網(wǎng),并選舉出一個節(jié)點作為整個網(wǎng)絡(luò)的網(wǎng)關(guān),稱為“無線網(wǎng)關(guān)”(wireless gateway),傳感器傳輸數(shù)據(jù)到中繼節(jié)點,中繼節(jié)點收集數(shù)據(jù)后,進(jìn)行數(shù)據(jù)融合,通過中繼節(jié)點網(wǎng)絡(luò)傳輸?shù)綗o線網(wǎng)關(guān)節(jié)點,無線網(wǎng)關(guān)節(jié)點以無線的方式(如4G模塊)將數(shù)據(jù)傳輸?shù)奖O(jiān)測平臺。中繼節(jié)點近似于常見無線傳感器網(wǎng)絡(luò)中的匯聚節(jié)點[17](sink node),具有以下功能:1)與傳感器通信;2)傳輸數(shù)據(jù)到監(jiān)測平臺。輸變電場景中,傳輸數(shù)據(jù)到監(jiān)測平臺的功能通常由4G模塊完成,4G模塊會定時向監(jiān)測平臺發(fā)送心跳和數(shù)據(jù),產(chǎn)生的能耗較大,大于相同時間下與單個傳感器通信產(chǎn)生的能耗。而中繼節(jié)點間也可以通過與傳感器通信的方式進(jìn)行組網(wǎng),并且產(chǎn)生的能耗會小于節(jié)點直接傳輸數(shù)據(jù)到監(jiān)測平臺的能耗。因此,本文主要研究的內(nèi)容為中繼節(jié)點間的組網(wǎng),提出一種輪換無線網(wǎng)關(guān)節(jié)點的路由協(xié)議(LEACH-WGR-SSA),防止無線網(wǎng)關(guān)節(jié)點過早死亡,并對無線網(wǎng)關(guān)節(jié)點的選舉進(jìn)行優(yōu)化。在LEACH的基礎(chǔ)上考慮了剩余能量、鄰接節(jié)點個數(shù)和位置信息,并引入麻雀搜索智能優(yōu)化算法對簇首選舉進(jìn)行優(yōu)化,同時,為避免SSA陷入局部收斂,加入Levy飛行策略,獲得了較優(yōu)的簇首分布,延長了網(wǎng)絡(luò)生存周期。
在輸變電場景中,大部分場景處于室外或因布線復(fù)雜,節(jié)點均由電池供電。與常見無線傳感器網(wǎng)絡(luò)的不同,本文中的網(wǎng)絡(luò)不包含能量無限的匯聚節(jié)點,所有中繼節(jié)點均可與傳感器通信,并具有與監(jiān)測平臺通信的功能,選舉出的無線網(wǎng)關(guān)節(jié)點將數(shù)據(jù)傳輸?shù)奖O(jiān)測平臺,其余中繼節(jié)點關(guān)閉該功能。圖1中的傳感器收集完變電站或輸電線路的環(huán)境信息后,接入到中繼節(jié)點。中繼節(jié)點之間進(jìn)行組網(wǎng),網(wǎng)絡(luò)每一輪先在中繼節(jié)點中選舉出無線網(wǎng)關(guān),再選舉出中繼節(jié)點的簇首節(jié)點,普通的中繼節(jié)點選擇加入到最近的簇中。中繼節(jié)點收集完傳感器的信息后,將數(shù)據(jù)傳輸?shù)酱刂械拇厥坠?jié)點,簇首節(jié)點再將數(shù)據(jù)傳輸?shù)綗o線網(wǎng)關(guān)。隨后,無線網(wǎng)關(guān)將整個網(wǎng)絡(luò)的信息上傳到監(jiān)測平臺。本文的主要研究內(nèi)容為中繼節(jié)點的組網(wǎng)和對應(yīng)的路由算法,暫不考慮傳感器的接入。
圖1 輸變電網(wǎng)絡(luò)結(jié)構(gòu)組成Fig.1 Network structure of power transmission and substation
本文對輸變電網(wǎng)絡(luò)抽象并假設(shè):網(wǎng)絡(luò)中有N個中繼節(jié)點,隨機分布在M×M的監(jiān)測區(qū)域,節(jié)點不會移動,節(jié)點初始能量相同,都具有位置信息、全局唯一ID、計算能力和數(shù)據(jù)融合能力,數(shù)據(jù)傳輸?shù)奖O(jiān)測平臺會產(chǎn)生一定的能耗。
由于變電站或者輸電線路監(jiān)測場景較大,如大型的室外變電站或者是多條輸電線路的交匯處,需要覆蓋的區(qū)域相對較大,因此,本文仿真選擇400 m×400 m的監(jiān)測區(qū)域。并且,輸變電場景中傳感器眾多,為減低能耗,通常通信半徑較小,仿真中設(shè)置傳感器的通信半徑20 m,根據(jù)正六邊形鑲嵌模型[18]計算出中繼節(jié)點最少為156個,但是中繼節(jié)點為隨機放置,為保證對傳感器的全覆蓋,同時也為了降低死亡節(jié)點對覆蓋率的影響,設(shè)置200個中繼節(jié)點在監(jiān)測場景當(dāng)中。
組網(wǎng)過程將通過網(wǎng)絡(luò)初始化階段、無線網(wǎng)關(guān)節(jié)點選舉階段、簇首選舉及分簇階段和路由傳輸階段4部分完成。
中繼節(jié)點部署后,將進(jìn)行網(wǎng)絡(luò)初始化。首次建網(wǎng)將預(yù)設(shè)一個中繼節(jié)點作為前無線網(wǎng)關(guān)節(jié)點。各個節(jié)點將自己的全局ID、剩余能量、地理位置等報文發(fā)送給前無線網(wǎng)關(guān)。在完成無線網(wǎng)關(guān)的選舉或簇首的選舉后,廣播計算結(jié)果,所有節(jié)點收到選舉結(jié)果信息。
為均衡能耗,無線網(wǎng)關(guān)節(jié)點采用輪換的方式,前無線網(wǎng)關(guān)節(jié)點對收集的數(shù)據(jù)進(jìn)行整合,進(jìn)行無線網(wǎng)關(guān)節(jié)點的選舉。提出一種算法WGR(wireless gateway rotation),用于無線網(wǎng)關(guān)節(jié)點的選舉,考慮3個主要因素:
1) 中繼節(jié)點的剩余能量:無線網(wǎng)關(guān)節(jié)點選舉完成后,這個網(wǎng)絡(luò)將進(jìn)行分簇,無線網(wǎng)關(guān)節(jié)點也作為一個簇首。因此,無線網(wǎng)關(guān)節(jié)點的功能主要為以下3個:接收分簇后簇首的數(shù)據(jù),接收簇內(nèi)節(jié)點的數(shù)據(jù),傳輸數(shù)據(jù)到監(jiān)測平臺。無線網(wǎng)關(guān)節(jié)點產(chǎn)生的能耗遠(yuǎn)高于其他節(jié)點,因此,選擇剩余能量較高的節(jié)點作為無線網(wǎng)關(guān)節(jié)點,防止過早死亡。
2) 中繼節(jié)點鄰接節(jié)點數(shù)量:無線網(wǎng)關(guān)節(jié)點也作為一個簇首,接收普通中繼節(jié)點的數(shù)據(jù),鄰接節(jié)點單跳傳輸?shù)酱厥桩a(chǎn)生的能耗較小,因此考慮鄰接節(jié)點的個數(shù)作為選舉無線網(wǎng)關(guān)節(jié)點的一個因素。其中節(jié)點i的鄰接節(jié)點集合表示為
Gi={j|d(i,j)≤R,j∈Galive},i∈Galive,
(1)
(2)
其中:d(i,j)為節(jié)點i和節(jié)點j之間的距離,R為鄰接節(jié)點的范圍半徑,N為節(jié)點數(shù)量,M為監(jiān)測區(qū)域變長,p為簇首節(jié)點和無線網(wǎng)關(guān)在所有節(jié)點中的占比,Galive是存活節(jié)點的集合。
3) 中繼節(jié)點到所有存活節(jié)點質(zhì)心的距離:為保證整個網(wǎng)絡(luò)能量負(fù)載的均衡,將無線網(wǎng)關(guān)節(jié)點放置于中心的位置可以減少平均的傳輸距離和跳數(shù),因此,將中繼節(jié)點到所有存活節(jié)點質(zhì)心的距離作為一個考慮因素。
pWG(i)為無線網(wǎng)關(guān)節(jié)點選舉的權(quán)值函數(shù):
(3)
(4)
(5)
(6)
其中:α+β+δ=1,α,β,δ∈(0,1);Enode(i)是i節(jié)點的剩余能量;E(Enode)是節(jié)點平均剩余能量;Nneighbor(i)是i節(jié)點的鄰接節(jié)點個數(shù);E(Nneigbor)為所有存活節(jié)點平均的鄰接節(jié)點數(shù);dtoCT(i)是節(jié)點i距離存活節(jié)點集合質(zhì)心的距離;E(dtoCT)是所有存活節(jié)點距離存活節(jié)點集合質(zhì)心的距離平均值;n為所有存活節(jié)點個數(shù);Galive是存活節(jié)點的集合。
iopt∈max(pWG(i),i∈Galive).
(7)
編號為iopt的節(jié)點成為無線網(wǎng)關(guān)節(jié)點,無線網(wǎng)關(guān)節(jié)點選舉完成。
α,β,δ的選擇對仿真的結(jié)果有重要的影響。其中α為中繼節(jié)點剩余能量因子的加權(quán)因子,在整個網(wǎng)絡(luò)的初期,各個節(jié)點剩余能量較多,對能量的敏感度較小,因此前期選擇降低剩余能量因子。網(wǎng)絡(luò)傳輸?shù)竭_(dá)一定的時間,各個節(jié)點的剩余能量所剩不多,容易死亡,因此剩余能量對網(wǎng)絡(luò)生命周期影響較大,應(yīng)提高α的大小。β為中繼節(jié)點鄰接節(jié)點數(shù)量因子的加權(quán)因子,對于分布不均勻的網(wǎng)絡(luò),可以提高該因子。δ為中繼節(jié)點到所有存活節(jié)點質(zhì)心距離的加權(quán)因子,該因子影響這個網(wǎng)絡(luò)的平均傳輸距離,影響著每一輪的傳輸能耗,對于節(jié)點剩余能量較少的情況,為減少節(jié)點的死亡速度,均衡能耗,α重要性要高于δ。多次實驗表明:在節(jié)點總剩余能耗減少一半之前,設(shè)置α為0.3,β為0.2,δ為0.5;節(jié)點總能耗減少一半后,設(shè)置α為0.6,β為0.2,δ為0.2,仿真結(jié)果較優(yōu)。本文的仿真使用上述的參數(shù)和方法。
無線網(wǎng)關(guān)節(jié)點選舉完成后,整個網(wǎng)絡(luò)的結(jié)構(gòu)與常見的傳感器網(wǎng)絡(luò)類似,采用分簇路由機制可以均衡網(wǎng)絡(luò)的能耗,防止無線網(wǎng)關(guān)周圍的“熱點節(jié)點”迅速死亡。
前無線網(wǎng)關(guān)節(jié)點選擇簇首并建立分簇。本文采用麻雀搜索算法對簇首的分布進(jìn)行優(yōu)化,優(yōu)化目標(biāo)為提高簇首節(jié)點的剩余能量在所有存活節(jié)點中的占比,減少每輪傳輸?shù)哪芎摹2⑶覟榧铀偈諗?,對種群初始化進(jìn)行優(yōu)化,考慮3個因素:中繼節(jié)點的剩余能量、中繼節(jié)點鄰接節(jié)點數(shù)、到無線網(wǎng)關(guān)節(jié)點的距離。雖然SSA具有強大的局部搜索能力,但與多種群智能優(yōu)化算法類似,容易陷入局部最優(yōu),因此,使用Levy飛行策略進(jìn)行改進(jìn)。
2.3.1 麻雀搜索算法
該算法主要分為以下幾個步驟:
1) 種群初始化
(8)
i∈[1,dpop],j∈[1,Npop].
(9)
2) 計算適應(yīng)度函數(shù)
適應(yīng)度函數(shù)是智能優(yōu)化算法不斷迭代優(yōu)化的指標(biāo)。定義適應(yīng)度函數(shù)為
(10)
其中,f(x)為每個種群向量的適應(yīng)度函數(shù)。根據(jù)適應(yīng)度對種群i進(jìn)行排序。
3) 更新發(fā)現(xiàn)者位置
算法中包含3個角色:發(fā)現(xiàn)者、加入者和警戒者。發(fā)現(xiàn)者和加入者是可以相互轉(zhuǎn)化的,但是總比例不變。發(fā)現(xiàn)者負(fù)責(zé)覓食并為加入者找到尋優(yōu)方向,發(fā)現(xiàn)者更新的公式如下
(11)
4) 更新加入者位置
加入者的更新公式為
(12)
其中:Xbest為當(dāng)前最優(yōu)位置,Xworst為最差位置;A+為1×dpop的矩陣,矩陣的值為1和-1隨機分布,并且滿足A+=AT(AAT)-1。當(dāng)i>Npop/2時,表示未獲得食物,將會去其他位置搜索。
5) 更新警戒者位置
警戒者的更新公式為
(13)
其中:χ~N(0,1)作為步長,H為-1到1的隨機數(shù);fi,fw,fg分別為當(dāng)前種群麻雀的適應(yīng)度值,當(dāng)前最差的適應(yīng)度值和最佳的適應(yīng)度值。fi>fg表示麻雀在整個種群中處于較差的位置;fi=fg表示麻雀意識到危險,靠近其他的麻雀。
6) 迭代并更新位置
重復(fù)步驟3)~步驟5)直至低于閾值或達(dá)到迭代次數(shù)。
2.3.2 Levy飛行策略優(yōu)化
Levy飛行屬于馬爾可夫過程,這是一種特殊的隨機游走策略,它結(jié)合了短距離搜索和偶爾的跳遠(yuǎn)。因此,Levy飛行策略[19]可以增加種群的多樣性。Levy飛行策略遵循如下公式
L(S)~|S|-1-η(0<η<2).
(14)
由于其分布較為復(fù)雜,常使用Mantegna算法進(jìn)行模擬。
(15)
(16)
δv=1.
(17)
其中:S為隨機步長,θ和ω服從正態(tài)分布,τ為標(biāo)準(zhǔn)gamma函數(shù)。
由于發(fā)現(xiàn)者經(jīng)常引導(dǎo)其他麻雀對位置進(jìn)行更新,而實驗表明,Levy飛行對其他的角色影響很小,因此只使用Levy飛行策略用來更新發(fā)現(xiàn)者的位置。
將公式(11)更新為
(18)
(19)
其中ξ為步長。2.3.1中步驟3)中式(11)更為式(18)。
2.3.3 簇首選舉
簇首選舉過程按照麻雀搜索的優(yōu)化算法的步驟進(jìn)行:
1) 種群初始化
為均衡能耗并加速智能算法的收斂,對種群初始化階段進(jìn)行優(yōu)化,將考慮3個因素:節(jié)點的剩余能量、節(jié)點到基站的距離、節(jié)點的鄰接節(jié)點的個數(shù)。與上文無線網(wǎng)關(guān)節(jié)點選舉類似:
(20)
(21)
其中:ο+ρ+υ=1,ο,ρ,υ∈(0,1);Enode(i)是i節(jié)點的剩余能量,E(Enode)是節(jié)點平均剩余能量;Nneighbor(i)是i節(jié)點的鄰接節(jié)點個數(shù),E(Nneigbor)為所有存活普通節(jié)點平均的鄰接節(jié)點數(shù);dtoWG(i)是節(jié)點i距離無線網(wǎng)關(guān)節(jié)點的距離,E(dtoWG)是所有存活普通節(jié)點距離無線網(wǎng)關(guān)節(jié)點的距離平均值;Gnode是普通節(jié)點的集合。pcluster(i)是簇首的選舉公式。
根據(jù)pcluster(i)對節(jié)點由大到小排序,選擇前50%的節(jié)點作為候選節(jié)點。對于每一個種群從候選節(jié)點隨機取出不重復(fù)的K個值,作為單個種群的一個向量。構(gòu)建種群初始值之后,為了防止局部最優(yōu),將UB、LB即節(jié)點編號的上下界,設(shè)置為整個存活節(jié)點的編號區(qū)間。其中根據(jù)文獻(xiàn)[20],較優(yōu)的簇首個數(shù)為
(22)
其中:n為存活節(jié)點個數(shù),εfs和εmp分別為自由空間模型和多路衰減模型的功放因子參數(shù),M為監(jiān)測區(qū)域邊長,Eelec為電路損耗能量,dtoWG為節(jié)點到無線網(wǎng)關(guān)的距離期望[21]。
2) 計算適應(yīng)度函數(shù)
適應(yīng)度函數(shù)的確定是算法中最為重要的步驟,不斷迭代得到較低的適應(yīng)度值是麻雀尋優(yōu)算法的優(yōu)化目標(biāo)。選舉簇首的優(yōu)化目標(biāo)有以下3個:
① 提高簇首節(jié)點的剩余能量占所有存活節(jié)點的比例:為防止節(jié)點迅速死亡,簇首節(jié)點應(yīng)具有較高的能耗,因此,定義能量適應(yīng)度函數(shù)為
(23)
其中:Enode為普通節(jié)點的能量,ECH為簇首節(jié)點的能量。
② 降低簇內(nèi)數(shù)據(jù)傳輸?shù)哪芎模捍貎?nèi)數(shù)據(jù)傳輸?shù)哪芎呐c簇內(nèi)節(jié)點到簇首的距離正相關(guān),因此,定義簇間距離的適應(yīng)度函數(shù)為
(24)
其中:d(j,i)表示第j個簇中第i個節(jié)點到簇首的距離,nc(j)表示第j個簇內(nèi)的節(jié)點個數(shù)。
③ 降低簇間數(shù)據(jù)傳輸?shù)哪芎模捍厥组g傳輸數(shù)據(jù)的能耗與到無線網(wǎng)關(guān)節(jié)點的距離正相關(guān),因此,定義距離無線網(wǎng)關(guān)節(jié)點距離的適應(yīng)度函數(shù)為
(25)
其中:dtoWG(i)為第i個簇首到無線網(wǎng)關(guān)節(jié)點的距離。因此適應(yīng)度函數(shù)為
F=φf1+φf2+γf3.
(26)
其中:φ,φ,γ為3類適應(yīng)度函數(shù)的權(quán)重,φ+φ+γ=1,φ,φ,γ∈(0,1)。計算每個種群的適應(yīng)度值,進(jìn)行排序。
φ,φ,γ這3個權(quán)重對仿真有重要的影響,與無線網(wǎng)關(guān)的選舉類似,經(jīng)過多次試驗,對這3個參數(shù)的選擇采取以下策略:設(shè)置φ為0.3,φ為0.5,γ為0.2;節(jié)點總能耗減少一半后,設(shè)置φ為0.5,φ為0.3,γ為0.2。
3) 更新位置
按照2.3.1中步驟3)~步驟6)進(jìn)行。
4) 選出簇首
迭代完成后,選出較優(yōu)的簇首。
本文提出的SSA簇首選舉的算法框架如表1所示。
表1 SSA簇首選舉算法框架Table 1 SSA cluster head election algorithm framework
2.3.4 分簇建立
簇首選舉完成后,前無線網(wǎng)關(guān)節(jié)點通過廣播
的方式通知所有節(jié)點新的無線網(wǎng)關(guān)節(jié)點和簇首。普通節(jié)點選擇距離最近的簇首或無線網(wǎng)關(guān)節(jié)點進(jìn)行接入。
簇內(nèi)節(jié)點通過單跳的方式將數(shù)據(jù)傳輸?shù)酱厥祝厥讓?shù)據(jù)進(jìn)行數(shù)據(jù)融合。如果簇首距離無線網(wǎng)關(guān)節(jié)點過遠(yuǎn),會產(chǎn)生大量的能耗,因此,采用簇首間多跳的方式傳輸數(shù)據(jù)。簇首和無線網(wǎng)關(guān)節(jié)點按照prim算法計算最小生成樹,無線網(wǎng)關(guān)節(jié)點作為根節(jié)點。
考慮到簇首間的傳輸能耗和剩余能量,防止中繼節(jié)點能耗過低還要承擔(dān)轉(zhuǎn)發(fā)的能耗。因此,定義簇首間的權(quán)值為
(27)
其中:ETx(i,j)為i傳輸?shù)絡(luò)的能量;Enode(i),Enode(j)為節(jié)點i,j的剩余能量。按照該權(quán)值構(gòu)成簇首間的生成樹。
本文采用LEACH的能耗模型,根據(jù)不同的距離采用自由空間模型或多路衰減模型。其中d為節(jié)點間的距離,k為一組數(shù)據(jù)的比特數(shù),d0為距離門限,εfs和εmp分別為自由空間模型和多路衰減模型的功放因子參數(shù),Eelec為每傳輸1 bit數(shù)據(jù)產(chǎn)生的能耗,EDA為每融合1 bit數(shù)據(jù)的能耗,距離為d傳輸kbit數(shù)據(jù)的發(fā)送能耗和接收能耗分別為ETx(k,d)和ERx(k),融合kbit的融合能耗為分別為:
(28)
ERx(k)=kEelec.
(29)
EDA(m)=mEDA.
(30)
(31)
仿真初始化的過程中,傳輸自身剩余能量和位置信息大小為200 bit,無線網(wǎng)關(guān)廣播的無線網(wǎng)關(guān)選舉結(jié)果的信息大小為100 bit,廣播簇首選舉結(jié)果信息大小為200 bit,無線網(wǎng)關(guān)廣播的距離為覆蓋所有節(jié)點的最大半徑。
無線網(wǎng)關(guān)傳輸數(shù)據(jù)到檢測平臺每一輪的能耗同樣滿足上述的能耗模型,仿真中,假設(shè)每隔200 m存在一個基站用來接收無線網(wǎng)關(guān)的數(shù)據(jù),設(shè)置無線網(wǎng)關(guān)上傳經(jīng)過數(shù)據(jù)融合的數(shù)據(jù)的大小為4 000 bit,傳輸半徑為200 m,計算出無線網(wǎng)關(guān)傳輸?shù)奖O(jiān)測平臺每輪傳輸能耗為8.52×106nJ。
分別使用LEACH,LEACH-WGR,LEACH-WGR-SSA,LEACH-WGR-PSO等4種算法在相同參數(shù)下進(jìn)行模擬。PSO算法作為群智能優(yōu)化算法,被多位學(xué)者引入到分簇路由算法當(dāng)中,比較適用于輸變電場景監(jiān)測區(qū)域大,節(jié)點數(shù)量多的特點,因此選擇PSO算法進(jìn)行對比。本文使用網(wǎng)絡(luò)模型與常用模型有所不同,通常LEACH算法中匯聚節(jié)點位置不變且能量無限,本文對應(yīng)的無線網(wǎng)關(guān)節(jié)點能量有限、可以輪轉(zhuǎn),并且會產(chǎn)生傳輸數(shù)據(jù)到監(jiān)測平臺的能耗。因此,本文基于LEACH的仿真,對于無線網(wǎng)關(guān)節(jié)點的處理為隨機選舉。網(wǎng)絡(luò)的相關(guān)實驗環(huán)境和參數(shù)設(shè)置如表2所示。
表2 仿真參數(shù)表Table 2 Simulation parameters
表3和圖2(a)為4種算法下節(jié)點死亡率的對比。仿真結(jié)果表明,當(dāng)50%的節(jié)點死亡時,LEACH-WGR的輪數(shù)相較于LEACH延長35.1%。同時,采用麻雀搜索算法優(yōu)化的LEACH-WGR-SSA相較于LEACH和LEACH-WGR提高121.6%和64.1%,比同類智能算法PSO(粒子群優(yōu)化算法)增加6.5%,延長了業(yè)務(wù)較多的網(wǎng)絡(luò)前期,從而增加了整個網(wǎng)絡(luò)的業(yè)務(wù)量。WGR的算法綜合考慮到無線網(wǎng)關(guān)節(jié)點的剩余能量、地理位置及鄰接節(jié)點個數(shù),減少了整個網(wǎng)絡(luò)傳輸?shù)木嚯x和跳數(shù),均衡了能耗,減緩了節(jié)點的死亡。采用麻雀搜索算法對簇首選舉進(jìn)行優(yōu)化,在種群初始化和適應(yīng)度函數(shù)的選取上,均考慮了剩余能量因素、簇內(nèi)節(jié)點傳輸距離和到無線網(wǎng)關(guān)節(jié)點的距離,做到減少每輪傳輸?shù)哪芎暮湍芰康木?,同時麻雀搜
表3 節(jié)點死亡率表Table 3 Percentage death nodes
索算法通過警戒和發(fā)現(xiàn)的模式,加入一些擾動,同時加入Levy飛行策略,避免尋優(yōu)過程陷入局部最優(yōu),得到了較好的適應(yīng)度值。
LEACH-WGR延長了網(wǎng)絡(luò)的生存周期,相較于LEACH、LEACH-WGR、LEACH-WGR-PSO分別延長31.3%、8.5%、5.3%。相較于常見的無線傳感器網(wǎng)絡(luò),增長效果有限,因為無線網(wǎng)關(guān)傳輸數(shù)據(jù)到監(jiān)測平臺每輪的損耗較高,即使進(jìn)行了優(yōu)化,節(jié)點的每輪能量損耗是固定的,過高的能耗導(dǎo)致節(jié)點的迅速死亡。
圖2(b)為傳輸數(shù)據(jù)包數(shù)的對比。當(dāng)網(wǎng)絡(luò)運轉(zhuǎn)結(jié)束,LEACH、LEACH-WGR、LEACH-WGR-PSO、LEACH-WGR-SSA傳輸?shù)臄?shù)據(jù)包數(shù)分別為3 339、4 267、8 878、9 788,LEACH-WGR-SSA相較于其他算法提高了193.1%、129.4%、10.3%,LEACH-WGR-SSA傳輸?shù)陌鼣?shù)遠(yuǎn)高于LEACH和LEACH-WGR。說明LEACH-WGR-SSA算法的能量效率較高,每輪數(shù)據(jù)傳輸?shù)哪芰枯^少,能量分配均衡,存活的節(jié)點越多,傳輸?shù)臄?shù)據(jù)也就越多。
圖2 節(jié)點存活數(shù)量和傳輸數(shù)據(jù)包數(shù)對比Fig.2 Comparison of number of alive nodes and transmission data among algorithms
圖3為LEACH-WGR-PSO和LEACH-WGR-SSA在相同條件下的收斂情況對比,LEACH-WGR-PSO在39輪后收斂,LEACH-WGR-SSA在34輪收斂。雖然收斂次數(shù)接近,但LEACH-WGR-SSA算法尋優(yōu)的最佳適應(yīng)度值優(yōu)于LEACH-WGR-PSO。因此,LEACH-WGR-SSA在此場景下具有一定的優(yōu)勢。
圖3 收斂情況對比Fig.3 Comparison of iterative convergence among algorithms
本文針對輸變電場景傳感器眾多,并且沒有組網(wǎng)能力的特點,提出采用計算能力高的中繼節(jié)點收集傳感器信息,并對中繼節(jié)點進(jìn)行組網(wǎng)的解決方案,并根據(jù)這一方案,研究中繼節(jié)點間的組網(wǎng),提出一種輪換無線網(wǎng)關(guān)節(jié)點的路由分簇算法,同時加入麻雀搜索的智能優(yōu)化算法,優(yōu)化簇首的選舉。對于無線網(wǎng)關(guān)節(jié)點的選舉考慮到了節(jié)點剩余能量、距離質(zhì)心的位置和鄰接節(jié)點個數(shù);對于中繼節(jié)點的選舉同樣考慮了節(jié)點剩余能量和鄰接節(jié)點個數(shù),也考慮到無線網(wǎng)關(guān)節(jié)點的距離。同時加入Levy飛行策略對SSA算法中發(fā)現(xiàn)者位置更新進(jìn)行優(yōu)化,防止算法陷入局部最優(yōu)。仿真結(jié)果表明,該算法延長了網(wǎng)絡(luò)的生存周期,均衡了能耗,同時改進(jìn)后的麻雀搜索算法尋優(yōu)能力在該場景下有一定的優(yōu)勢。
雖然LEACH-WGR-SSA算法在仿真中取得了較好的結(jié)果,但并未考慮到傳感器到中繼節(jié)點的接入,傳感器接入的個數(shù)和傳輸?shù)臄?shù)據(jù)量對整個網(wǎng)絡(luò)的能耗有一定的影響。后續(xù)的研究將考慮這一因素,對算法和模型進(jìn)行改進(jìn),運用到真實的場景中。