一種應用於無線傳感器網絡的輕量級數據壓縮方法與流程
2023-05-06 14:15:11 1
本發明是一種應用於無線傳感器網絡中的輕量級數據壓縮方法。主要用於解決無線傳感器之間傳輸數據的冗餘性問題,屬於無線傳感器網絡技術領域。
背景技術:
隨著無線傳感網絡技術的快速發展,無線傳感網中在生活中應用也越來越廣泛,無線傳感器網絡是面向應用的,貼近客觀物理世界的網絡系統,其產生和發展一直都與應用相聯繫。多年來經過不同領域研究人員的演繹,WSN(Wireless Sensor Network)技術在軍事領域、精細農業、安全監控、環保監測、建築領域、醫療監護、工業監控、智能交通、物流管理、自由空間探索、智能家居等領域的應用得到了充分的肯定和展示。隨著無線傳感器網絡的大力發展,無線傳感器絡中數據傳輸量越來越大,其中包含了大量的冗餘數據,傳輸這些冗餘數據會消耗節點大量的能量,縮短節點壽命,影響網絡性能。
無線傳感器網絡中數據傳輸的數據壓縮方法能夠有效降低冗餘數據的傳輸,節省網絡帶寬。在採集節點端對環境數據在時間上的相關性進行數據壓縮,在匯聚節點端對簇內採集節點上傳的數據進行融合壓縮,減少冗餘數據。
該方法有3個目的:
(1)通過環境數據在時間上的相關性,利用CLDCA(Changeable Length Data Compression Algorithm)算法對感知數據進行壓縮,減少採集節點對冗餘數據的上傳,節省節點能耗,延遲使用壽命;
(2)通過WDAA(Weighting Data Aggression Algorithm)算法對匯聚節點對簇內採集節點上傳的感知數據進行融合,能夠保證數據的準確性,減少冗餘數據;
(3)通過減少無線傳感器網絡中冗餘數據的傳輸量,能提高無線傳感器網絡帶寬利用率;
本發明方法針對無線傳感器網絡中傳輸大量的冗餘數據問題,該方法能夠在採集節點端和匯聚節點端有效地減少冗餘數據的傳輸量,節省節點能耗,提高網絡性能。
技術實現要素:
技術問題:本發明的目的是提供一種應用於無線傳感器網絡的輕量級數據壓縮方法,該方法能夠在採集節點端和匯聚節點端對冗餘數據進行壓縮,減少節點冗餘數據傳輸,節省節點能耗。
技術方案:本發明的方法是在採集節點端使用變長數據壓縮算法CLDCA對採集節點獲取的感知數據進行壓縮,這些感知數據在時間上存在相關性,使用CLDCA能夠有效壓縮同於數據,較少冗餘數據的發送量,節省節點能耗。在匯聚節點端使用數據權重係數的數據融合算法WDAA對簇內採集節點上傳的感知數據進行融合,該算法能夠保證融合後數據的準確性,同時能減少冗餘數據的發送量,從而能節省節點能耗。
體系結構
該方法是將簇內的採集節點與匯聚節點組成一個數據採集與傳輸的體系結構,簇內的採集節點主要負責數據的採集,再對採集的數據進行壓縮處理,減少冗餘數據,然後再進行上傳壓縮後的感知數據。匯聚節點主要負責接收簇內採集節點上傳的感知數據,同時對簇內採集節點上傳的數據進行融合,減少上傳的冗餘數據量,節省節點能耗。
方法流程
在整個設計方法中,主要分為兩部分:採集節點端、匯聚節點端。採集節點主要負責數據的採集,對採集的數據進行壓縮,再對壓縮過後的數據進行上傳。匯聚節點主要負責對簇內採集節點上傳的感知數據進行融合,再對融合後數據進行上傳。採集節點變長數據壓縮算法CLDCA執行流程(如圖1):
本發明的輕量級數據壓縮方法在採集節點端使用變長數據壓縮算法CLDCA對採用數據進行壓縮,消除冗餘數據;在匯聚節點端,使用數據權重係數的數據融合算法WDAA對匯聚節點端進行數據融合壓縮。所述的採集節點數據壓縮具體如下:
步驟1.1).採集節點對環境數據進行採樣,採樣數據個數加1;
步驟1.2).判斷採樣數據個數是否超出設定值,沒有超出執行步驟1.3),超出執行步驟1.6);
步驟1.3).與期望值進行比較,判斷採樣數據是否需要上傳,需要上傳數據則執行步驟1.4),不需要上傳則執行步驟1.1);
步驟1.4).將要上傳數據傳輸到發送模塊,設置標記位值為1,表明有數據上傳給匯聚節點;
步驟1.5).發送模塊將數據上傳給匯聚節點,轉步驟1.1);
步驟1.6).判斷標記位,如果標記位值為1,將標記位值設為0,將採樣數據的統計數也設為0,執行步驟1.1),如果標記位值為0,執行步驟1.7);
步驟1.7).採集節點強制上傳一次採樣數據,計數清0。
所述的使用數據權重係數的數據融合算法WDAA對匯聚節點端進行數據融合壓縮具體如下:
步驟2.1).接收採集節點上傳的感知數據;
步驟2.2).計算感知數據的期望值E,計算每個感知數據與期望值的差值的絕對值,如果差值的絕對值超出閾值,就將其刪除,實現優化採集節點上傳的感知數據;
步驟2.3).計算出優化後的感知數據的標準差|σ|,將感知數據值分別以﹙-∞,E-2*|σ|]、﹙E-2*|σ|,E-|σ|]、﹙E-|σ|,E+|σ|]、﹙E+|σ|,E+2*|σ|]、﹙E+2*|σ|,+∞﹚標準分為5個層次,以步驟2.2)中計算的期望值作為中心,標準差決定了被優化後感知數據分布的幅度;
步驟2.4).計算出每個層次中感知數據的平均值;
步驟2.5).求出各層次中感知數據的和值Si,再計算出所有層次中感知數據的總和Sum,再計算各層次中感知數據的權重係數Si/Sum;
步驟2.6).根據各層次中感知數據的平均值和權重係數的乘積可計算出各層次的權重值,將各層次的權重值進行求和,和值是所求的融合值;
步驟2.7).將融合後數據進行上傳,再執行步驟2.1)。
有益效果:本發明方法提出了無線傳感器網絡中的一種輕量級數據壓縮方法,該方法在採集節點端和匯聚節點端分別對數據進行壓縮。在採集節點端採用變長數據壓縮算法CLDCA對感知數據進行壓縮,該算法能夠根據環境數據的變換改變計算期望值的序列長度,能不斷適應環境不斷變化的需求,在採集節點端對數據進行壓縮可以較少匯聚節點端對冗餘數據的接收量,這樣能較少匯聚節點的接收能耗。在匯聚節點端使用權重係數的數據融合算法WDAA能夠針對採集節點上傳的數據特性來進行數據融合,保證融合數據的準確性,同時能大大較少冗餘數據的上傳量。
混合性:在本發明中,將採集節點與匯聚節點組成一個體系結構,從採集端開始對冗餘數據進行壓縮,同時,在數據傳輸到匯聚節點時也對冗餘數據進行壓縮,在兩端減少冗餘數據。
高效性:本發明能夠有效較少無線傳感器網絡中冗餘數據的傳輸量,節省節點能源,延長節點使用壽命,提高網絡帶寬利用利率。
附圖說明
圖1是本發明方法變長數據壓縮算法CLDCA執行流程示意圖。
圖2是本發明方法權重係數的數據融合算法WDAA執行流程示意圖。
圖3是本發明方法的CLDCA中消除冗餘數據流程示意圖。
圖4是本發明方法的匯聚節點優化感知數據流程示意圖。
圖5是本發明方法的WDAA中計算各狀態級數據和Sumi,數據個數mi流程示意圖。
圖6是本發明方法的WDAA中計算權重係數pi和各狀態級中數據的平均值wi流程示意圖。
圖7是本發明方法實現示意圖。
具體實施方式
為了方便描述,我們假定有如下應用實例:
定義:無線傳感器網絡中節點採集的數據集S,S為採集節點存儲的一個周期內的感知數據集,S={di}(i∈[1,n]),di為採集節點的感知數據。
主要變量及其定義
變量名含義
Tp 採集節點上傳數據周期
Di 採集的感知數據
xi 匯聚節點端接收到的數據
λ 用戶可以接受的誤差閾值
n n為節點採集的數據序列的長度
E 長度為n感知數據的期望值
μ 誤差值μ=|E-d'|
pi 權重係數
Flag 採集節點上傳數據標記位,Flag==1,表示有數據上傳;Flag==0,表示無數據上傳
NTp 採集節點在周期Tp內採集感知數據序列的最大長度NTp
Sum 計數變量,用於判斷是否超過NTp
一、部署在環境中的採集節點
採集節點獲取環境數據,同時對環境數據進行壓縮,較少冗餘數據,並上傳給匯聚節點。
採集節點壓縮數據具體流程如下:
第一步:採集節點對環境進行採樣,初始化感知數據序列S={di}(i∈[1,n]):
1:初始化感知數據長度n;
2:採集節點對環境進行採樣,存儲長度為n的感知數據。
第二步:計算期望值:
計算感知數據的期望值;
第三步:進行消除冗餘數據(如圖3);
CLDCA算法中感知數據序列長度的最小值為1,最大值為TP時間周期內感知數據長度的值。感知數據長度可隨環境變化而自適應進行調整,不斷滿足環境的改變。
CLDCA算法將感知數據序列長度最小值設置為1主要是應對環境數據波動相當劇烈的情況,採集節點每一次採集到的數據可能與前一次採集的數據存在懸殊,為了保證數據的有效性,需要對數據進行實時上傳。
二、匯聚節點進行數據融合
匯聚節點接收簇內採集節點上傳的感知數據,在數據進行融合前要對數據進行優化,處理「噪音點」,「噪音點」即為異常數據,優化數據是為了提高融合數據的精確度。WDAA執行流程如下:
步驟一:優化感知數據:
1:匯聚節點存儲感知數據,統計數據個數N;
2:計算感知數據的期望值;
3:處理「噪音點」(如圖4):
步驟二:計算相關參數:
1:計算平均值和數據總和:
2:計算標準差:
3:計算各狀態級數據和Sumi,數據個數mi(如圖5);
步驟三:計算權重係數pi和各狀態級中數據的平均值wi(如圖6);
步驟四:計算融合數據:
w=;
步驟五:上融合後的數據;
w是匯聚節點對採集節點上傳的感知數據進行融合的結果,WDAA算法能夠針對數據在數據集中佔有的比重進行數據融合,這樣能夠提高數據的精確性。同時匯聚節點能夠減少上傳冗餘數據,提高網絡帶寬利用率,節省能耗。