楊倩倩,王 龍
(晉中信息學(xué)院大數(shù)據(jù)學(xué)院,山西 太谷 030800)
大數(shù)據(jù)技術(shù)的發(fā)展與進(jìn)步提高了數(shù)據(jù)處理的效率[1],增加了人們?cè)谌粘I詈凸ぷ髦械恼J(rèn)知盈余,開拓了眼界,拓寬了視野。 但隨著大數(shù)據(jù)網(wǎng)絡(luò)時(shí)代信息的不斷發(fā)展[2],數(shù)據(jù)積攢越來越多,造成可使用數(shù)據(jù)被海量冗余數(shù)據(jù)覆蓋,長此以往將會(huì)導(dǎo)致諸多不良影響,因此需智能采集移動(dòng)數(shù)據(jù),以提高數(shù)據(jù)采集效果。
史兵麗等[3]設(shè)計(jì)了基于ZigBee 無線網(wǎng)絡(luò)的應(yīng)變數(shù)據(jù)采集系統(tǒng),并結(jié)合調(diào)制協(xié)調(diào)器和FPGA 陣列完成數(shù)據(jù)采集。 Karthikeyan A 等[4]指出由于信號(hào)覆蓋的環(huán)形范圍導(dǎo)致三維無線傳感器網(wǎng)絡(luò)數(shù)據(jù)重復(fù),為此,制定了三維分散分組(3D-SG)方案,根據(jù)該方案實(shí)現(xiàn)了數(shù)據(jù)采集與評(píng)估。 陳琪等[5]將所有節(jié)點(diǎn)均勻劃分成簇,然后在簇內(nèi)采用節(jié)點(diǎn)分級(jí)的思想進(jìn)行數(shù)據(jù)的多跳傳輸,最后使用移動(dòng)采集器沿著最短路徑訪問簇頭節(jié)點(diǎn)完成數(shù)據(jù)采集。 上述三種方法雖然都實(shí)現(xiàn)了數(shù)據(jù)采集,但是由于移動(dòng)節(jié)點(diǎn)具有較高的隨機(jī)性,因此在采集過程中無法對(duì)其進(jìn)行較為準(zhǔn)確的對(duì)比,導(dǎo)致數(shù)據(jù)采集效果有待進(jìn)一步提升。
在上述分析的基礎(chǔ)上,本文在利用已有的LEACH 分簇算法完成移動(dòng)數(shù)據(jù)節(jié)點(diǎn)分類采集的基礎(chǔ)上,利用最小生成樹方法分配移動(dòng)數(shù)據(jù)采集時(shí)隙,以降低無線傳感網(wǎng)中的節(jié)點(diǎn)能量消耗,提升移動(dòng)數(shù)據(jù)采集效果。
首先,將未完成聚類[7]的節(jié)點(diǎn)數(shù)據(jù)對(duì)象的數(shù)目設(shè)為N,且所有未完成聚類對(duì)象的屬性采用G+P維來表示,結(jié)合變化不定的數(shù)據(jù)信息,構(gòu)建如下信息數(shù)據(jù)集U:
由于量綱的不同,WSN 中節(jié)點(diǎn)數(shù)據(jù)信息具有一定的隨機(jī)性,因此無法對(duì)其進(jìn)行較為準(zhǔn)確的對(duì)比。要使不同量綱的數(shù)據(jù)對(duì)象能夠相互比較,就必須采用正規(guī)的無量綱化預(yù)處理方法,具體為先使用無量綱化法對(duì)節(jié)點(diǎn)數(shù)據(jù)進(jìn)行處理,再將處理結(jié)果投影到[0,1]區(qū)間內(nèi),計(jì)算方法如下式:
式中:xit代表在處理前的某維屬性,而x′it則代表處理后的某維屬性,min 代表這一維屬性數(shù)據(jù)中的最小值極限,max 代表這一維屬性數(shù)據(jù)中的最大值極限。
式中:Ht代表在所有維的屬性中節(jié)點(diǎn)數(shù)據(jù)的熵值。如果xit相對(duì)于預(yù)先指定的t的值完全相等,則有
1.2.1 計(jì)算勢(shì)值
當(dāng)WSN 是由雙重屬性數(shù)據(jù)對(duì)象組成時(shí),任意一個(gè)WSN 中節(jié)點(diǎn)xi對(duì)于節(jié)點(diǎn)xj處所產(chǎn)生的勢(shì)值可表示為:
1.2.2 查找空勢(shì)心
一般空間位勢(shì)中心位于同一類簇的中心,類簇的空間中心是該類節(jié)點(diǎn)數(shù)據(jù)對(duì)數(shù)據(jù)空間中某一概念的附屬中心,也是該概念特征的節(jié)點(diǎn)數(shù)據(jù)聚集中心。此外,在無線傳感網(wǎng)絡(luò)數(shù)據(jù)場(chǎng)中,空間勢(shì)心是一種用物體來表示的客觀實(shí)體節(jié)點(diǎn)數(shù)據(jù),即由傳感器節(jié)點(diǎn)在物理空間的位置屬性和感知屬性構(gòu)成。
采用LEACH 分簇算法將整個(gè)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)劃分為K個(gè)聚類范圍,作為聚類核心的LEACH分簇算法實(shí)現(xiàn)了移動(dòng)Sink 數(shù)據(jù)采集方案[9]的空間分布均衡。
以確定的無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)的物理位置質(zhì)心坐標(biāo)為基礎(chǔ),依據(jù)質(zhì)心點(diǎn)之間的最小歐氏距離原理和剩余能量不低于平均能量原則,確定各個(gè)聚類中移動(dòng)數(shù)據(jù)采集點(diǎn)。
勢(shì)能函數(shù)[10]是指在整個(gè)力場(chǎng)中,勢(shì)能依賴于位置和距離的函數(shù)。 在一個(gè)由雙重屬性數(shù)據(jù)對(duì)象組成的WSN中,決定在節(jié)點(diǎn)數(shù)據(jù)空間U中進(jìn)行聚類,劃分為K個(gè)類{Π1,Π2,…,Πk},此簇內(nèi)所有對(duì)象的勢(shì)能相加之和與該簇內(nèi)對(duì)象總數(shù)量之間的比值就是劃分簇的平均位值ˉφ(K),以上述確定的空勢(shì)心為基礎(chǔ),將ˉφ(K)表示為:
式中:NumK代表進(jìn)行K個(gè)聚類劃分后該簇內(nèi)對(duì)象總數(shù)量,Φ(xi)代表任意一個(gè)WSN 在xi處的位值和其他WSN 節(jié)點(diǎn)在xi處產(chǎn)生的位值的乘積。
WSN 數(shù)據(jù)場(chǎng)中的等勢(shì)線被認(rèn)為是空間勢(shì)心所環(huán)繞。 即在疊加過程中點(diǎn)數(shù)較大的節(jié)點(diǎn)數(shù)據(jù)形成的勢(shì)心是一種接近目標(biāo)數(shù)值的節(jié)點(diǎn)數(shù)據(jù),而節(jié)點(diǎn)的數(shù)據(jù)在疊加時(shí)比疊加之前較小數(shù)值的節(jié)點(diǎn)數(shù)據(jù)起到了更大的作用。 因此根據(jù)上述計(jì)算結(jié)果繪制等勢(shì)線,為無線傳感網(wǎng)絡(luò)數(shù)據(jù)采集奠定了良好基礎(chǔ)。
使用LEACH 分簇算法[11]劃分無線傳感網(wǎng)絡(luò)區(qū)間后,網(wǎng)絡(luò)中所有傳感器節(jié)點(diǎn)的聚集節(jié)點(diǎn)即為聚類中的數(shù)據(jù)采集點(diǎn),因此本文選取二維Dubins 曲線[12]實(shí)現(xiàn)所有采集點(diǎn)的連線。
其中,RSL 型Dubins 曲線主要包括三段,即:
式中:φ0代表聚類區(qū)間的切線內(nèi)夾角,φ1代表聚類區(qū)間的切線外夾角,d代表各個(gè)聚類區(qū)間之間的距離,sinφ0代表聚類區(qū)間的切線內(nèi)夾角的正弦值,cosφ0代表聚類區(qū)間的切線內(nèi)夾角的余弦值,sinφ1代表聚類區(qū)間的切線外夾角的正弦值,cosφ1代表聚類區(qū)間的切線外夾角的余弦值,arctan 代表反正切函數(shù),mod 代表求余函數(shù),|L|、|S|和|R|分別表示RSL 的三段曲線長度,相加可獲得完整的Dubins曲線的長度,即:∮LRS=|L|+|S|+|R|。
在分簇?cái)?shù)據(jù)的基礎(chǔ)上采用Sink 數(shù)據(jù)對(duì)節(jié)點(diǎn)再進(jìn)行細(xì)分,其細(xì)分后節(jié)點(diǎn)構(gòu)成了Dubins 曲線,從而有序快速地采集數(shù)據(jù)。
綜合上述分析,本文移動(dòng)數(shù)據(jù)采集流程如圖1所示。
圖1 無線傳感網(wǎng)移動(dòng)數(shù)據(jù)采集流程圖
至此完成無線傳感網(wǎng)絡(luò)移動(dòng)數(shù)據(jù)采集。
為了進(jìn)一步優(yōu)化無線傳感網(wǎng)數(shù)據(jù)效果,本文利用節(jié)點(diǎn)剩余能量作為邊權(quán)重,再利用克魯斯卡爾(Kruskal)算法構(gòu)建最小生成樹[13-14]。
假設(shè)無線傳感網(wǎng)數(shù)據(jù)連通網(wǎng)N=(V,E),將N中的邊按權(quán)值從小到大的順序排列:
①初始狀態(tài)為只有n個(gè)頂點(diǎn)而無邊的非連通圖T=(V,{}),圖中每個(gè)頂點(diǎn)自成一個(gè)連通分量。
②在節(jié)點(diǎn)能量E中選擇權(quán)值最小的邊,若該邊依附的頂點(diǎn)落在T中不同的連通分量上(即不形成回路),則將此邊將入到T中,否則舍去此邊而選擇下一條權(quán)值最小的邊。
③重復(fù)步驟②,直到T中所有的頂點(diǎn)都在同一連通分量上為止。 由此得到最小生成樹示意圖,如圖2 所示。
圖2 最小生成樹示意圖
圖2 中數(shù)字為節(jié)點(diǎn)剩余能量。 如節(jié)點(diǎn)2 的剩余能量為30。 依據(jù)節(jié)點(diǎn)剩余能量計(jì)算邊權(quán)重,每條邊權(quán)重等于邊的兩端節(jié)點(diǎn)剩余能量之和。 如由節(jié)點(diǎn)5和節(jié)點(diǎn)2 構(gòu)成的邊,其邊權(quán)重為20 與30 的和,即50。
先利用Kruskal 算法構(gòu)成生成樹,然后給樹中的每個(gè)節(jié)點(diǎn)分配時(shí)隙,分配過程的偽代碼如下:
①把原圖中所有邊按權(quán)值排序
②初始化最小生成樹為空,以及初始化連通分量
③for(intn=?;n<N;n++)
④if(E[n]?T=(V,{ }){
⑤把邊E[n]加入最小生成樹
⑥合并E[n]所在的連通分量
⑦}
至此完成無線傳感網(wǎng)移動(dòng)數(shù)據(jù)采集效果提升。
為了驗(yàn)證無線傳感網(wǎng)移動(dòng)數(shù)據(jù)采集效果提升方法的整體有效性。 分別用本文方法、文獻(xiàn)[3]方法和文獻(xiàn)[4]方法進(jìn)行如下測(cè)試。
使用MATLAB 軟件建立仿真平臺(tái)。 考慮200個(gè)無線傳感網(wǎng)絡(luò)節(jié)點(diǎn)隨機(jī)分布于500 m×500 m 區(qū)域。 每個(gè)節(jié)點(diǎn)的通信半徑為50 m。 200 個(gè)節(jié)點(diǎn)內(nèi)只有部分節(jié)點(diǎn)在每輪產(chǎn)生數(shù)據(jù)包,即產(chǎn)生數(shù)據(jù)包的概率從0~1 變化。 具體參數(shù)設(shè)置如表1 所示。每當(dāng)移動(dòng)節(jié)點(diǎn)移動(dòng)到終點(diǎn)并返回起點(diǎn)時(shí),稱其完成一“輪”移動(dòng)。 根據(jù)移動(dòng)節(jié)點(diǎn)的通信范圍,可以將全部區(qū)域劃分為直接通信區(qū)域和多跳通信區(qū)域。
表1 仿真參數(shù)設(shè)置
圖3 中,L1 和L2 兩條曲線之間的區(qū)域即為直接通信區(qū)域,該區(qū)域內(nèi)的節(jié)點(diǎn)距離軌道較近,因而能夠向移動(dòng)節(jié)點(diǎn)直接傳送數(shù)據(jù)。 而無線傳感網(wǎng)中的其他節(jié)點(diǎn)需要采用多跳中繼方式將數(shù)據(jù)傳送給區(qū)域內(nèi)節(jié)點(diǎn)。
圖3 應(yīng)用場(chǎng)景示例圖
3.2.1 質(zhì)心坐標(biāo)查找準(zhǔn)確性測(cè)試
根據(jù)上述參數(shù)設(shè)定,考慮到不同方法適用場(chǎng)景不同,因此利用式(3)計(jì)算信息熵權(quán)重,并以0.85 作為固定值,設(shè)置移動(dòng)節(jié)點(diǎn)坐標(biāo)為(118,89),測(cè)試三種方法查找節(jié)點(diǎn)的物理位置質(zhì)心坐標(biāo)的準(zhǔn)確性。 其測(cè)試結(jié)果如圖4 所示。
圖4 不同方法質(zhì)心坐標(biāo)查找準(zhǔn)確性對(duì)比
由圖4 可知,采用所提方法、文獻(xiàn)[3]方法和文獻(xiàn)[4]方法的質(zhì)心坐標(biāo)查找準(zhǔn)確性相差均較小,所提方法和文獻(xiàn)[3]方法最高差值均為0.10%,文獻(xiàn)[4]方法最高差值為0.16%。 整體來看,所提方法整體質(zhì)心坐標(biāo)查找準(zhǔn)確性曲線波動(dòng)幅度較小,表明所提方法的質(zhì)心坐標(biāo)查找誤差是三種方法中最低的。 這是因?yàn)樗岱椒ńY(jié)合了信息熵權(quán)重,使用勢(shì)能函數(shù)對(duì)節(jié)點(diǎn)數(shù)據(jù)對(duì)象進(jìn)行分簇,提高了方法的質(zhì)心坐標(biāo)查找準(zhǔn)確性。
3.2.2 能耗測(cè)試
假設(shè)本文所研究的無線傳感網(wǎng)中節(jié)點(diǎn)的初始能量設(shè)置為30 J,結(jié)合Kruskal 最小生成樹算法流程,構(gòu)建能耗模型如下:
由圖5 可知,在相同的有效測(cè)試次數(shù)下,所提方法的能耗量均在0.06 ~0.07 的最佳區(qū)間內(nèi),且隨著測(cè)試次數(shù)的增多,數(shù)據(jù)采集的能耗量也在隨之下降。雖然文獻(xiàn)[3]方法的數(shù)據(jù)采集能耗量和文獻(xiàn)[4]方法的數(shù)據(jù)采集能耗量也在隨之下降,但能耗區(qū)間與所提方法的最佳能耗區(qū)間相比過高,這是因?yàn)樗岱椒ɡ肒ruskal 算法構(gòu)成最小生成樹,然后給樹中的每個(gè)節(jié)點(diǎn)分配時(shí)隙,促使每個(gè)節(jié)點(diǎn)得到的實(shí)時(shí)能耗量最低,較低的能耗量進(jìn)一步增強(qiáng)了采集的穩(wěn)定性,這充分驗(yàn)證了所提方法的有效性。
圖5 不同方法數(shù)據(jù)采集能耗量對(duì)比
3.2.3 延時(shí)率測(cè)試
對(duì)比三種方法在發(fā)送采集移動(dòng)數(shù)據(jù)時(shí)產(chǎn)生的延時(shí)率,延時(shí)率等于數(shù)據(jù)幀長度和發(fā)送速率的比值,延時(shí)率越低,數(shù)據(jù)采集后的傳輸效果越好。 對(duì)比結(jié)果如表2 所示。
表2 不同方法數(shù)據(jù)采集的延時(shí)率
由表2 可知,在多次有效測(cè)試后,所提方法的延時(shí)率均在20%以下,而文獻(xiàn)[3]方法和文獻(xiàn)[4]方法的延時(shí)率都在25%以上,這是因?yàn)樗岱椒ㄊ紫葘?duì)無線傳感網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行聚類處理,將需要采集的數(shù)據(jù)提前聚類,提高了采集效率,降低了延時(shí)率。 通過上述對(duì)比,驗(yàn)證了所提方法的有效性。
近年來,由于可循環(huán)有效數(shù)據(jù)資料的流失對(duì)日常生活造成了許多不便,因此需要對(duì)聚類移動(dòng)數(shù)據(jù)進(jìn)行智能采集。 目前無線傳感網(wǎng)數(shù)據(jù)采集方法的采集效果有待進(jìn)一步提升,所以提出無線傳感網(wǎng)移動(dòng)數(shù)據(jù)采集效果提升方法。 利用無線傳感網(wǎng)絡(luò)構(gòu)成勢(shì)值等勢(shì)線,采用LEACH 算法聚類,然后將聚類后的節(jié)點(diǎn)數(shù)據(jù)構(gòu)成Dubins 曲線完成數(shù)據(jù)采集,最后通過構(gòu)建最小生成樹分配數(shù)據(jù)收集時(shí)隙。 由仿真結(jié)果可知,所提方法解決了數(shù)據(jù)采集誤差大、數(shù)據(jù)采集效率低、數(shù)據(jù)采集所用能耗大、數(shù)據(jù)采集的延時(shí)率高的問題,為將來數(shù)據(jù)智能化采集奠定了基礎(chǔ)。