喬建華,張雪英
(1.太原理工大學信息工程學院,太原030024; 2.太原科技大學電子信息工程學院,太原030024)(*通信作者電子郵箱tyzhangxy@163.com)
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,WSN)的首要制約因素就是能源問題,如何降低能耗是WSN需要重點考慮的問題。WSN中大部分能量消耗在通信部分,在發(fā)送和接收狀態(tài)下能耗最大。將壓縮感知(Compressed Sensing,CS)理論應(yīng)用在WSN的數(shù)據(jù)收集中,可以大大減少傳送數(shù)據(jù)量,從而降低能耗,延長網(wǎng)絡(luò)壽命。
Bajwa等[1]最早將CS理論應(yīng)用于無線傳感器網(wǎng)絡(luò)的數(shù)據(jù)采集。文獻[2]闡述了基于CS的WSN數(shù)據(jù)采集的實現(xiàn)過程,指出CS具有普適的采樣和分散的編碼的特征,并給出了從網(wǎng)絡(luò)節(jié)點到融合中心通過無線方式傳送隨機投影值的兩種方法:直傳式和路由中轉(zhuǎn)式。
文獻[3]首次提出大規(guī)模 WSN的壓縮數(shù)據(jù)收集(Compressive Data Gathering,CDG)方案,不再采用文獻[2]的每個節(jié)點各自傳送的方式,而是由匯聚節(jié)點(Sink)得到所有讀數(shù)的加權(quán)和。CDG的示意圖如圖1所示。
圖1 多跳路由的壓縮數(shù)據(jù)收集示意圖Fig.1 Schematic diagram of compressive data gathering in a multi-hop routing
CDG基于CS理論,對M×N 維測量矩陣的每一行系數(shù)在N個傳感器節(jié)點上進行投影,每個節(jié)點有M個投影系數(shù){ Φi,j}Mi=1,然后與本地采集的數(shù)據(jù)進行加權(quán)傳輸。例如傳感器節(jié)點s1將它的采集數(shù)據(jù)d1和投影系數(shù)1的乘積v1傳送給下一個節(jié)點s2,s2將它的d2和投影系數(shù)2的乘積v2再加上v1傳給下一個節(jié)點s3,沿路由不斷進行下去,最后Sink得到一個加權(quán)和測量值。每個節(jié)點經(jīng)過M次傳送后,Sink就能得到M個測量值。然后利用重構(gòu)算法得到原始信號?;贑S的壓縮數(shù)據(jù)收集將Sink所需的N個采樣值轉(zhuǎn)化為收集M(M N)個本地采樣值的加權(quán)和。減少了傳輸?shù)臄?shù)據(jù)量,降低了能耗,延長了網(wǎng)絡(luò)壽命。因此,該收集方案成為多跳路由收集的基本方案。
如果測量矩陣是稀疏隨機投影矩陣,則每行系數(shù)會出現(xiàn)若干0,與節(jié)點采樣值的乘積也為0,這時無需進行傳輸,因此對于稀疏測量矩陣,只需要傳送非0系數(shù)對應(yīng)的節(jié)點的加權(quán)結(jié)果。所以,隨機投影傳輸?shù)臄?shù)據(jù)量更少,從而更加延長了網(wǎng)絡(luò)壽命。Haupt等[4]最早就指出一個相對較小的信號的隨機投影數(shù)可以包含其大部分顯著的信息;因此,如果一個信號在某些正交基上是可壓縮的,則可以非常精確地從隨機投影得到重建,因而,稀疏隨機矩陣成為CS在WSN中應(yīng)用的首選矩陣。文獻[5]利用稀疏隨機矩陣降低通信成本來恢復在信道衰落下由WSN觀測的稀疏信號,但重點研究的是信號恢復所需的測量次數(shù)。文獻[6]提出了一種大規(guī)模WSN的自適應(yīng)稀疏隨機投影算法,主要考慮隨機投影的稀疏性對均方誤差和系統(tǒng)時延的影響,以更好地實現(xiàn)均方誤差和系統(tǒng)延遲之間的權(quán)衡。文獻[7]利用稀疏隨機測量矩陣的優(yōu)點來減少能量消耗,提出基于簇的加權(quán)壓縮數(shù)據(jù)采集方法,采用最小生成樹投影來減少能量消耗,減少傳感器節(jié)點數(shù)。但是僅針對空間相關(guān)的數(shù)據(jù)收集,也沒有考慮收集器的最優(yōu)位置。文獻[8]綜述了基于CS的WSN壓縮數(shù)據(jù)收集的不同方法。這些文獻都用到了稀疏隨機投影矩陣,但都沒有說明采集數(shù)據(jù)的具體收集過程。
文獻[9-10]提出了一種采用隨機投影的壓縮數(shù)據(jù)收集方法,即在網(wǎng)絡(luò)中隨機選擇M個節(jié)點稱為投影節(jié)點以收集M個加權(quán)和。投影節(jié)點相當于簇頭,測量矩陣Φ的每一行非0元素對應(yīng)的節(jié)點分配給一個投影節(jié)點。每個投影節(jié)點通過最小生成樹路由收集相應(yīng)這一行數(shù)據(jù)的加權(quán)和,并發(fā)送給Sink,從而完成全部數(shù)據(jù)收集,形成M個測量值。該方案存在的一個主要問題就是投影節(jié)點的選擇是根據(jù)M/N的概率隨機選出的。由于其隨機性,選出的投影節(jié)點無任何規(guī)律可言,不能保證選擇出位置合適、能量較高、數(shù)量精確的理想的投影節(jié)點。但顯然,投影節(jié)點在網(wǎng)絡(luò)中的位置會影響聚合算法的效率。其次,由于測量矩陣每行的非0系數(shù)的位置也是隨機的,一組遠近不等的節(jié)點將加權(quán)和傳送到位置不定的投影節(jié)點,這樣的網(wǎng)絡(luò)耗能勢必會很不均衡。而且由非0節(jié)點到投影節(jié)點通過樹結(jié)構(gòu)建立路由,開銷也較大,另外也沒有說明在網(wǎng)絡(luò)運行過程中出現(xiàn)節(jié)點死亡后的情形。
針對隨機選擇投影節(jié)點產(chǎn)生的問題,本文提出均衡投影節(jié)點的壓縮數(shù)據(jù)收集方法。根據(jù)WSN節(jié)點分布是否均勻提出基于空間位置和基于節(jié)點分布密度的均衡分簇法,然后再進行壓縮數(shù)據(jù)收集,并通過與隨機投影節(jié)點方法的比較,驗證了本文方法能夠有效平衡網(wǎng)絡(luò)能耗、延長網(wǎng)絡(luò)壽命。
壓縮感知[11-12]理論指出[13]:對于稀疏信號或可壓縮信號,可以以遠低于Nyquist頻率的采樣頻率對數(shù)據(jù)采樣,然后通過非線性重建算法完美地重建信號。設(shè)N維信號x,在某N×N維的稀疏變換矩陣Ψ下可以表示為:
其中:θ是K稀疏的N×1的列向量,即θ中只有K個非零項,且K N。然后在M×N維測量矩陣(或稱投影矩陣、觀測矩陣)Φ下投影,得M個觀測值y,且M N,即:
其中:T稱為傳感矩陣;y為M×1的列向量,即為測量值。
壓縮感知理論指出,式(2)存在確定解的充分條件是T滿足有限等距性質(zhì)(Restricted Isometry Property,RIP)[14],即存在δ∈(0,1)使得全部K稀疏信號θ均滿足:
則可以通過求解以下凸優(yōu)化問題得到重建信號^θ[12-13]:
式(4)可以采用基追蹤或貪婪算法等方法重構(gòu)原始信號^x。
根據(jù)CS理論,設(shè)測量矩陣Φ是M×N維的矩陣,x為N×1維的列向量,則有:
其中:Xj是將N個x分成L段的各分段,每段長度設(shè)為Nj(j=1,2,…,L);每個Φj為M × Nj(j=1,2,…,L) 維矩陣。這樣,每段x就可以稱為一個簇,每個簇可以選擇一個投影節(jié)點作為簇頭。簇頭收集每個簇的數(shù)據(jù)傳到Sink,Sink將所有簇的數(shù)
從式(5)可以看出,對于N個節(jié)點xj(j=1,2,…,N),可以將Φ中每行與x乘加的結(jié)果一次算出來,得M個測量值。也可以把N個節(jié)點分段來處理,假設(shè)將N個節(jié)點分成L段,每段可以是不同的點數(shù)量。測量矩陣Φ,也可以對應(yīng)分成L塊,每塊為M行的矩陣,列數(shù)與對應(yīng)x各分段的點數(shù)相等。每個分塊矩陣與對應(yīng)的x的每段相乘便得到M×1的列向量,然后L個列向量再進行相加,得M個測量值。用公式表示為:據(jù)對應(yīng)相加,就得到了最終的測量值。用這個測量值及傳感矩陣,就可以進行數(shù)據(jù)重構(gòu)。若只對某些區(qū)域感興趣,也可以只取其中某些段,由于測量矩陣具有隨機性,部分隨機矩陣仍滿足RIP,仍可恢復信號,由于測量比增加,會得到更高的重構(gòu)性能。
在每個分段選擇一個投影節(jié)點,可使投影節(jié)點分布均衡;而且,依據(jù)一定條件來選擇,可以選出能量較高,位置更優(yōu)越的投影節(jié)點。本文根據(jù)網(wǎng)絡(luò)節(jié)點分布是否均勻,提出了兩種均衡分簇的方法。
針對節(jié)點分布密度均勻的網(wǎng)絡(luò),提出基于空間位置的均衡分簇法。為了使投影節(jié)點分布均勻,將監(jiān)測區(qū)域劃分成大小相等的網(wǎng)格,在每個網(wǎng)格內(nèi)選舉性能最優(yōu)的節(jié)點作為投影節(jié)點。然后投影節(jié)點收集所在簇的加權(quán)和數(shù)據(jù),再傳送到Sink。具體的實施過程如下。
1)選擇第一輪的投影節(jié)點及成簇:
a)確定分簇數(shù)量及網(wǎng)格數(shù)。
b)以相同尺寸劃分整個監(jiān)測區(qū)域為所計算的網(wǎng)格數(shù)。
c)在每個網(wǎng)格選擇網(wǎng)格中心周圍位置且能量較高的節(jié)點作投影節(jié)點。
d)發(fā)送投影節(jié)點信息給每個網(wǎng)格的投影節(jié)點。
e)每個傳感器節(jié)點依據(jù)距離最近(跳步最少)選擇它相應(yīng)的投影節(jié)點。
2)在一輪簇建立以后,就可以進行數(shù)據(jù)收集了,簇內(nèi)數(shù)據(jù)通過傳感節(jié)點經(jīng)路由傳送到簇內(nèi)投影節(jié)點。全部簇的投影節(jié)點所收集數(shù)據(jù)經(jīng)一定路由傳至匯聚節(jié)點,再將其對應(yīng)相加,就是全部測量值,然后通過重構(gòu)就可以恢復原始數(shù)據(jù)。
3)接著就可以進行下一輪投影節(jié)點的選擇和新簇的建立,其過程為:
a)簇內(nèi)節(jié)點將其剩余能量值傳送給投影節(jié)點。
b)投影節(jié)點選擇簇中心能量較大者作為新投影節(jié)點。c)每個原來的投影節(jié)點將其信息傳給新投影節(jié)點。d)每個傳感節(jié)點尋找它的新投影節(jié)點,形成新簇。
由于能量問題是WSN中路由算法需要考慮的首要問題,本文采用了簡化的網(wǎng)絡(luò)信道損耗模型[15],如圖2所示。
圖2 信道損耗模型Fig.2 Channel loss model
假設(shè)有N個傳感器節(jié)點隨機分布在半徑為R的區(qū)域內(nèi),其中簇頭個數(shù)為h,則簇頭節(jié)點的平均覆蓋面積為πR2/h。假設(shè)簇頭節(jié)點每跳的傳輸距離為D,每個簇頭的能量消耗在三方面:接收所有簇成員的信息、融合這些數(shù)據(jù)、把融合后的信息傳送給Sink節(jié)點[16]。則在一幀中簇頭節(jié)點消耗的能量為:
其中:k為每個數(shù)據(jù)的信息位數(shù);Eelect為每比特數(shù)據(jù)在發(fā)射電路或接收電路中所消耗的能量;EDA為數(shù)據(jù)融合的消耗;Efs為耗散能量,與所采用的傳輸信號模型有關(guān),為自由空間傳輸常數(shù);D是簇頭節(jié)點發(fā)送數(shù)據(jù)的距離。
假設(shè)簇內(nèi)傳感器節(jié)點離簇頭的距離不超過自由空間模型的臨界值[16],則一個非簇頭節(jié)點的能量消耗為:
發(fā)送一幀中一個簇的能量消耗為:
在R區(qū)域每個簇發(fā)送一幀(忽略數(shù)據(jù)轉(zhuǎn)發(fā)的能量消耗)的總能量消耗為:
由式(9)~(11)整理化簡得:
對Etotal求導,得到最優(yōu)簇頭數(shù)為:
若設(shè)定監(jiān)測區(qū)域大小為100 m×100 m的空間,部署有100個傳感器節(jié)點,每跳的傳輸距離D為槡50 2 m,半徑R設(shè)為方形區(qū)域的半邊長50 m,則根據(jù)式(13)得h≈17。為方便計可將區(qū)域劃分為16個網(wǎng)格。
空間投影節(jié)點均衡劃分通過網(wǎng)格來實現(xiàn),首先考慮節(jié)點分布密度恒定的場合。一個網(wǎng)格選擇一個投影節(jié)點,因此100 m×100 m的區(qū)域劃分成4×4的16個網(wǎng)格,如圖3所示,鄰近網(wǎng)格內(nèi)的節(jié)點都可以互相傳輸信息,并且呈對角線分布的兩個網(wǎng)格在對角線的兩端的節(jié)點都在通信范圍內(nèi)。設(shè)這些網(wǎng)格的邊長是d,節(jié)點可以傳輸?shù)淖钸h距離是Rs,則兩個節(jié)點之間互相傳輸信息的距離是Rs≤ 2d。
圖3 節(jié)點分布密度均勻的網(wǎng)格劃分Fig.3 Grid partition with uniform node distribution density
在劃分好的網(wǎng)格下,首先要確定節(jié)點的網(wǎng)格坐標。假設(shè)Sink位于區(qū)域中心,根據(jù)節(jié)點地理位置計算其在區(qū)域內(nèi)的網(wǎng)格坐標:
其中:Tx表示節(jié)點的網(wǎng)格橫坐標;Ty表示節(jié)點的網(wǎng)格縱坐標;S(i).xd和S(i).yd分別表示節(jié)點本身的橫坐標和縱坐標;Xm和Ym是監(jiān)測區(qū)域的長和寬;L1是區(qū)域長度的等分數(shù);L2是區(qū)域?qū)挾鹊牡确謹?shù);floor(x)表示不大于x的整數(shù)。網(wǎng)格坐標一樣的節(jié)點視為一組。例如在圖3中,根據(jù)式(14)可得每個節(jié)點所屬網(wǎng)格的坐標,并給每個網(wǎng)格設(shè)置一個編號,分別對應(yīng)從1到16。
在每個網(wǎng)格中,先根據(jù)每個節(jié)點的剩余能量和該節(jié)點到數(shù)據(jù)收集中心的距離來選擇簇頭。簇頭選擇節(jié)點競爭半徑較大的。競爭半徑公式為:
其中:b是(0,1)范圍的一個隨機數(shù)字,保證結(jié)果在一定范圍內(nèi);dmax表示該網(wǎng)格內(nèi)節(jié)點與Sink最遠的距離;dmin表示該網(wǎng)格內(nèi)節(jié)點與Sink最近的距離;dbs表示當前節(jié)點到Sink的距離;E0表示節(jié)點初始能量;Ed表示節(jié)點能否傳輸信息的臨界能量;S(i).E表示節(jié)點當前所擁有的能量;D表示最大的傳感半徑。競爭半徑考慮了節(jié)點的剩余能量以及該節(jié)點與Sink的距離兩個方面,競爭半徑大的節(jié)點當選簇頭對這個網(wǎng)格內(nèi)的所有節(jié)點是最有利的。
在每個網(wǎng)格中,將該網(wǎng)格中的每個節(jié)點計算出來的競爭半徑進行比較,將競爭半徑最大的節(jié)點選為簇頭。所有網(wǎng)格內(nèi)都選出一個簇頭之后,整個網(wǎng)絡(luò)中的除簇頭以外的其他節(jié)點找到與之距離最近的簇頭,向其發(fā)送要加入該簇頭所創(chuàng)建簇的請求,簇頭收到距離它較近的節(jié)點發(fā)來的加入簇請求之后,要向這些節(jié)點發(fā)送同意其加入簇的信息。等所有節(jié)點都有了歸屬的簇之后,就組成了無線傳感器網(wǎng)絡(luò)。
仿真實驗中,先對WSN和傳感器節(jié)點作如下的假設(shè):
1)Sink節(jié)點位置固定在區(qū)域中央;
2)傳感器節(jié)點都是靜止的;
3)傳感器節(jié)點不能獲知其自身的位置信息;
4)簇頭融合單位數(shù)據(jù)消耗的能量相同;
5)網(wǎng)絡(luò)中單位面積的區(qū)域需要檢測的數(shù)據(jù)量相同;
6)每個節(jié)點的覆蓋面積相同;
7)無線信道對稱。
對基于空間位置的均衡分簇法,并假設(shè)傳感器節(jié)點均勻分布在監(jiān)測區(qū)域。仿真參數(shù)如見表1所示。
表1 仿真相關(guān)參數(shù)Tab.1 Simulation related parameters
圖4(a)是節(jié)點均勻網(wǎng)絡(luò)基于位置方法選舉的簇頭和成簇效果,可以看出,通過網(wǎng)格劃分,節(jié)點分布密度均勻的網(wǎng)絡(luò)簇頭選舉也很均勻。圖4(b)所示為該網(wǎng)絡(luò)在300輪時的節(jié)點分布和成簇情況,圓點為死亡的節(jié)點??梢娫诰W(wǎng)絡(luò)運行過程中的成簇仍然是均衡的,每個網(wǎng)格選擇一個投影節(jié)點。
基于位置和基于隨機投影節(jié)點的兩種方法的剩余節(jié)點數(shù)的比較如圖5所示。
由圖5可以看出:在網(wǎng)絡(luò)開始運行階段,基于位置分簇的效果要差一些,死亡節(jié)點出現(xiàn)比較早,剩余節(jié)點數(shù)較少,但不影響網(wǎng)絡(luò)運行;當運行到剩余節(jié)點數(shù)為80%的時候,基于隨機投影的死亡節(jié)點迅速增加,并很快超過了基于位置分簇的死亡節(jié)點數(shù),剩余節(jié)點數(shù)迅速降低:在385輪時剩余節(jié)點數(shù)由20點瞬間將為0,網(wǎng)絡(luò)癱瘓,但此輪時基于位置分簇的網(wǎng)絡(luò)仍有近40%的節(jié)點存活,網(wǎng)絡(luò)仍能運行。以剩余節(jié)點數(shù)為20點時作為網(wǎng)絡(luò)正常運行的臨界點來考慮,低于20點網(wǎng)絡(luò)無法聯(lián)通,基于位置分簇的網(wǎng)絡(luò)比基于隨機投影節(jié)點分簇的網(wǎng)絡(luò)生存期延長了約35%。
圖5 基于位置和隨機分簇的節(jié)點均勻WSN的剩余節(jié)點數(shù)比較Fig.5 Comparison of remaining nodes of WSN with node even distribution based on location and random clustering
針對節(jié)點分布不均的WSN,每個網(wǎng)格的節(jié)點數(shù)量多少不等,如果采用第2章的基于位置的分簇法在每個網(wǎng)格選擇一個投影節(jié)點,節(jié)點少的網(wǎng)格的投影節(jié)點能量會很快耗盡,為了適應(yīng)節(jié)點不均的網(wǎng)絡(luò),本文提出基于節(jié)點密度的均衡分簇法。
對于節(jié)點分布密度不均的WSN,節(jié)點數(shù)較多的網(wǎng)格組成一個簇之后可以較好地進行節(jié)點與節(jié)點、節(jié)點與簇頭、簇頭與Sink的數(shù)據(jù)傳輸,還可以使收集同一種信息的部分節(jié)點進入休眠,節(jié)省能量消耗。而節(jié)點數(shù)較少的網(wǎng)格形成一個簇之后,簇頭只能在這幾個節(jié)點之間輪換,加快了該網(wǎng)格的能量消耗,使這些區(qū)域的節(jié)點過早地死亡,造成網(wǎng)絡(luò)耗能的不均衡。
節(jié)點分布密度的衡量通過網(wǎng)格來得到,網(wǎng)格內(nèi)節(jié)點數(shù)量少的,說明密度小;反之說明密度大。因此首先進行網(wǎng)格內(nèi)節(jié)點的調(diào)整,計算每個網(wǎng)格中的節(jié)點的數(shù)量。如果網(wǎng)格的節(jié)點的數(shù)量少于等于p,這些網(wǎng)格中的節(jié)點就被歸到節(jié)點數(shù)量大于p的其他鄰近網(wǎng)格。所有節(jié)點數(shù)量小于等于p的網(wǎng)格中的節(jié)點都歸到指定網(wǎng)格中之后,就形成了一個新的網(wǎng)格劃分格局。這樣,就可以避免節(jié)點不均衡的能量消耗,從而提高整個網(wǎng)絡(luò)的存活周期。接下來,就可進行簇頭選舉和形成簇。
仿真實驗中,對WSN和傳感器節(jié)點的假設(shè)同2.4節(jié)。對基于節(jié)點分布密度的均衡分簇法,并假設(shè)傳感器節(jié)點隨機非均勻分布在監(jiān)測區(qū)域。為了研究比較,分別在兩個場景中進行了仿真,具體參數(shù)如表2所示。對場景2,監(jiān)測區(qū)域大小為200 m×200 m的空間,部署有400個傳感器節(jié)點,傳感器節(jié)點的通信半徑D為槡50 2 m,監(jiān)測區(qū)域半徑R相當于為100 m,則根據(jù)式(13)得h≈68。為仿真方便可將區(qū)域劃分為64個網(wǎng)格。
表2 仿真相關(guān)參數(shù)(場景1、場景2)Tab.2 Simulation related parameters(scene 1 and scene 2)
下面就用同樣節(jié)點布置的網(wǎng)絡(luò)來測試基于節(jié)點分布密度分簇法和文獻[9]采用隨機投影節(jié)點方法的性能。
場景1的基于節(jié)點分布密度均衡分簇法的成簇效果如圖6所示。圖6(a)是第一輪成簇的示意圖,可見節(jié)點密度小的網(wǎng)格,其節(jié)點進行了網(wǎng)格的重新分配,加入到了距離鄰近的簇,不再進行投影節(jié)點的選擇。圖6(b)是第300輪時的成簇效果,仍有約60%的節(jié)點存活,可見網(wǎng)絡(luò)仍然運行良好。
圖7(a)是文獻[9]采用隨機投影節(jié)點的方法,它的投影節(jié)點是隨機產(chǎn)生的,從中可以看出,投影節(jié)點的位置很隨機,形成的簇大小也不均衡。圖7(b)是其300輪時的成簇效果,比圖6(b)的節(jié)點數(shù)明顯減少,而且邊遠的節(jié)點大部分死亡,只有Sink附近的網(wǎng)絡(luò)在運行,信息的獲取已經(jīng)失衡。
圖6 基于密度分簇的節(jié)點不均勻分布WSN的成簇特性(場景1)Fig.6 Clustering characteristics of WSN with node uneven distribution based on density clustering(scene 1)
本文方法和隨機投影節(jié)點方法的剩余節(jié)點數(shù)在場景1下的對比如圖8所示。從圖8可以看出,隨機投影節(jié)點方法的死亡節(jié)點出現(xiàn)比較晚,但節(jié)點死亡的速度下降比較快,在剩20個節(jié)點的時候驟然癱瘓。而基于節(jié)點密度分簇的方法的死亡節(jié)點數(shù)下降比較緩慢,使得網(wǎng)絡(luò)的運行時間增長,而且網(wǎng)絡(luò)也沒有突然終止。以剩余20個節(jié)點為網(wǎng)絡(luò)正常運行狀態(tài)的臨界值來考慮,隨機投影方法壽命接近400輪,基于密度分簇的網(wǎng)絡(luò)壽命約為550輪,基于密度分簇法的網(wǎng)絡(luò)生存期延長了約27%,而且在未癱瘓前,剩余節(jié)點數(shù)也較隨機投影方法的節(jié)點數(shù)多約20%,運行狀態(tài)優(yōu)良。
另外由圖8與圖5比較可見,基于隨機投影節(jié)點方法在不同節(jié)點分布的網(wǎng)絡(luò)節(jié)點死亡的速度都比較快,在還有約20個存活節(jié)點數(shù)的時候,都會驟然癱瘓,而本文方法的死亡節(jié)點數(shù)下降都比較緩慢,網(wǎng)絡(luò)可以維持較長的時間。
對于場景2,應(yīng)用基于密度分簇法和隨機投影節(jié)點法對同樣布置的非均勻節(jié)點進行分簇?;诠?jié)點密度分簇法的簇頭分布和成簇效果如圖9所示。同樣可見,節(jié)點數(shù)少的網(wǎng)格不再選擇投影節(jié)點,而是與鄰近網(wǎng)格合并形成一個簇,從而均衡了能耗。
基于密度分簇法和隨機投影節(jié)點方法的剩余節(jié)點數(shù)在場景2下的對比如圖10所示。由圖10可以看出,基于隨機投影節(jié)點的方法的剩余節(jié)點數(shù)隨輪數(shù)增加迅速下降,同樣在剩20個節(jié)點時驟然為0,網(wǎng)絡(luò)停止運行。而本文方法在每輪的剩余節(jié)點數(shù)都比隨機分簇方法的多,在網(wǎng)絡(luò)運行中期,可以達到2倍左右的數(shù)量。而在隨機分簇網(wǎng)絡(luò)癱瘓后,本文的均衡分簇網(wǎng)絡(luò)仍可運行,壽命延長了約25%。
圖8 基于密度和隨機投影節(jié)點兩種分簇方法的剩余節(jié)點數(shù)對比(場景1)Fig.8 Comparison of remaining nodes based on two clustering methods based on density and random projection nodes(scene 1)
從圖5、圖8和圖10中本文方法與基于隨機投影節(jié)點方法的比較來看,在整個網(wǎng)絡(luò)的正常運行期間,相比隨機投影節(jié)點方法,本文方法的剩余節(jié)點數(shù)明顯較多,網(wǎng)絡(luò)運行時間長,運行狀態(tài)優(yōu)良,耗能均衡。
圖9 基于節(jié)點密度分簇法的WSN簇頭分布和成簇效果(場景2)Fig.9 Cluster head distribution and clustering effect of WSN based on node density clustering method(scene 2)
圖10 基于密度和隨機投影節(jié)點兩種分簇方法的剩余節(jié)點數(shù)對比(場景2)Fig.10 Comparison of remaining nodes based on two clustering methods based on density and random projection nodes(scene 2)
基于均衡投影的壓縮數(shù)據(jù)收集方法的具體實施環(huán)節(jié)包括以下幾點:
1)根據(jù)網(wǎng)絡(luò)參數(shù),確定劃分網(wǎng)格的數(shù)量,并以此劃分網(wǎng)格。
2)均衡選擇投影節(jié)點并建簇。采用基于空間位置或節(jié)點密度的均衡分簇法,選擇投影節(jié)點,并以投影節(jié)點為中心建立一個簇。
3)M×N維測量矩陣的每行非零系數(shù)對應(yīng)的節(jié)點統(tǒng)一編為一個號 S(S ∈ {1,2,…,M})。
4)根據(jù)CS理論,每個投影節(jié)點收集相同編號的節(jié)點的加權(quán)和并一跳或多跳傳給Sink。若是多跳傳輸,在傳輸過程中將相同編號的數(shù)據(jù)相加,再傳給Sink。
5)經(jīng)過M次傳輸,Sink將收集的所有相同編號的數(shù)據(jù)相加,就可得M個測量值。應(yīng)用重構(gòu)算法,就可重構(gòu)原始數(shù)據(jù)。
采用均衡分簇法,保證了投影節(jié)點的均衡分布,也均衡了網(wǎng)絡(luò)的整體能耗。由于采用了稀疏隨機投影矩陣,只需傳送非0節(jié)點的加權(quán)數(shù)據(jù),使得整個網(wǎng)絡(luò)的能耗降低;而且,如果測量矩陣的每一列只有一個非0元素,這樣每一行的非0系數(shù)的節(jié)點互不干擾,就可以同時進行M個測量值的傳送,不必間隔時隙完成,這樣的傳送速度更快,實時性更強。
而且,基于網(wǎng)格的建簇較之一般的分簇方法并沒有增加開銷,由于劃分好了網(wǎng)格,只需要在網(wǎng)格中選擇出投影節(jié)點,就可以形成一個簇。由于網(wǎng)格內(nèi)節(jié)點數(shù)量有限,所以投影節(jié)點的選擇比一般分簇的簇頭的選擇速度要快;而且對基于密度的均衡分簇,當網(wǎng)格內(nèi)節(jié)點數(shù)少于某閾值就不需要選擇投影節(jié)點了,開銷更為減少。因此,本文建簇的方法更為節(jié)能。
針對投影節(jié)點隨機選擇、位置不均衡的問題,本文提出了基于均衡投影的壓縮數(shù)據(jù)收集方法,并針對均勻分布節(jié)點WSN,提出基于空間位置的均衡分簇法,以大小相同的網(wǎng)格劃分來實現(xiàn),保證了投影節(jié)點的位置均衡;針對不均勻節(jié)點分布WSN,提出基于節(jié)點密度的均衡分簇法,同時考慮了位置和密度因素,減少了孤立點的能耗,均衡了能量,延長了網(wǎng)絡(luò)壽命。通過與隨機投影節(jié)點方法的仿真比較,本文方法運行狀態(tài)優(yōu)良,網(wǎng)絡(luò)生存期顯著延長。但對于非均勻WSN,按密度分簇的閾值需要根據(jù)實際應(yīng)用中網(wǎng)絡(luò)規(guī)模、節(jié)點整體分布密度和應(yīng)用需求等綜合因素來選擇,并需要先進行實驗和驗證。