鄭良駿,楊金鑫,王志明
(南京理工大學機械工程學院,江蘇南京 210000)
同質(zhì)傳感器數(shù)據(jù)融合應用廣泛,如環(huán)境監(jiān)測[1]和農(nóng)業(yè)生產(chǎn)[2]、工業(yè)生產(chǎn)[3]。采用數(shù)據(jù)融合,能減小被測對象的不確定性,從而提高檢測及監(jiān)控的準確度和可靠性。因此許多學者對同質(zhì)傳感器數(shù)據(jù)融合算法進行了深入研究。丁浩晗等使用最小二乘法濾波,再使用改進權(quán)值動態(tài)分配算法提高了船舶的動力定位精度[4];許可等使用BP神經(jīng)網(wǎng)絡(luò)進行缺失數(shù)據(jù)補全,再使用分批估計的自適應加權(quán)算法進行數(shù)據(jù)融合,避免了樣本量過大產(chǎn)生的方差值僵化問題[5];曹守啟等使用隸屬函數(shù)剔除粗大誤差,再使用分批估計和自適應加權(quán)融合算法采集環(huán)境溫度[6];朱聰通過設(shè)計的空間和時間一致性指標剔除異常數(shù)據(jù),采用區(qū)域殤捕獲特征數(shù)據(jù),再根據(jù)特征位置和傳感器空間關(guān)系定義約束條件,得出可信度,以可信度為權(quán)值融合數(shù)據(jù)[7];李紅等綜合自適應加權(quán)融合算法和基于B型關(guān)聯(lián)度的加權(quán)融合算法,對兩種算法各自得到的加權(quán)因子再次分配權(quán)值度,進行融合[8]。
以上算法都屬于二級融合算法,先對單一傳感器采集的數(shù)據(jù)進行預處理,再使用加權(quán)融合算法對數(shù)據(jù)進行融合。但是其算法復雜,效率不高,針對此問題對數(shù)據(jù)預處理算法進行改進,并與傳統(tǒng)與處理算法比較,結(jié)果表明,改進算法對粗大誤差的剔除更準確,效率更高,可使數(shù)據(jù)融合結(jié)果的標準差更小。
在實際的傳感器測量中,往往會在短時間內(nèi)用同一傳感器對同一物理量進行重復測量,得到多個原始數(shù)據(jù)以供處理,避免測量的偶然性。然而,由于傳感器自身特性、電路問題、環(huán)境干擾及其他因素的影響,導致單一傳感器測量到的原始數(shù)據(jù)對于真實值有較大偏差。因此需要對原始數(shù)據(jù)進行預處理,主要是剔除粗大誤差。數(shù)據(jù)量較少時,常用格拉布斯準則和狄克遜準則。
狄克遜準則的做法如下:首先將得到的一組測量數(shù)據(jù)從小到大依次排列得到數(shù)組x1,x2,…,xn,其中xn為最大值,x1為最小值,然后根據(jù)n的大小來進行不同的計算,得到統(tǒng)計量β和β′。
n=3~7時:
(1)
n=8~10時:
(2)
n=11~13時:
(3)
規(guī)定D(n,α)為狄克遜判定準則臨界值,其中n為測量次數(shù),α為顯著水平,α可以取0.01或0.05,表1為摘取的部分n和α對應的D值。
表1 狄克遜判定準則臨界值
判斷準則為:當β>β′且β>D(n,α)時,則認為xn為異常值,當β<β′且β>D(n,α)時,認為x1為異常值。判斷并剔除了一個異常值后,對剩余的數(shù)組重新計算統(tǒng)計量并進行下一次判斷。
最優(yōu)加權(quán)融合算法,無需傳感器測量數(shù)據(jù)的任何先驗知識,即可融合出方差的最小數(shù)據(jù)融合值。
(4)
總均方誤差為
(5)
由式(5)可知,當總均方誤差最小時,對應的權(quán)值為
(6)
此時對應最小的總均方誤差為
(7)
由式(7)可知,最優(yōu)權(quán)值與各傳感器的方差有關(guān)。
如果使用最優(yōu)加權(quán)融合算法來對同質(zhì)傳感器的數(shù)據(jù)進行融合,為了使得最終融合結(jié)果的總均方誤差最小,需要降低各組數(shù)據(jù)的方差,因此可以對數(shù)據(jù)預處理部分的算法進行改進,使其可準確剔除粗大誤差,減小各組數(shù)據(jù)方差。
改進算法原理:傳感器測量的數(shù)據(jù)=真實值+噪聲。噪聲符合期望為零的正態(tài)分布,當對同一物理量有足夠多的測量數(shù)據(jù)時,數(shù)據(jù)的分布應該近似于正態(tài)分布,其均值=期望,期望≈數(shù)據(jù)的中值。但由于測量數(shù)據(jù)有時不足,根據(jù)公式求得的期望與方差會被粗大誤差影響。因此使用中值代替均值,使用估計標準差代替實際標準差,根據(jù)3sigma準則來剔除粗大誤差。
改進算法具體步驟如下:測量得到一組數(shù)據(jù),從小到大排列為x1,x2,…,xn-1,xn,設(shè)為集合U,其中xn為集合最大值,x1為集合最小值,設(shè)數(shù)組中值為xmed。其中:
(8)
取xmed及其左側(cè)數(shù)據(jù)為集合A,取xmed及其右側(cè)數(shù)據(jù)為集合B,再取集合A的中值xAmed與集合B的中值xBmed。
假設(shè)后續(xù)數(shù)據(jù)測量值均勻分布在x1與xn之間。以集合A為例,則某一測量數(shù)據(jù)xj落在xmed與xAmed之間的概率為25%。有下式:
(9)
(10)
(11)
(12)
式中:X~N(0,1);σA為估計標準差;μ為期望;φ(x)為標準正態(tài)分布的分布函數(shù)。
查取標準正態(tài)分布分位數(shù)表,可得:φ-1(3/4)=0.674 489,則根據(jù)式(12)得σA=|xAmed-xmed|×1.482 6,剔除集合U中小于xmed-3σA的值。對于集合B,求取集合B的估計標準差σB,剔除集合U中大于xmed+3σB的值。算出預處理后集合U的平均值和標準差,代入最優(yōu)加權(quán)算法進行數(shù)據(jù)融合。
為了對比各算法對粗大誤差剔除的效率和準確度,使用多個一氧化碳傳感器與相關(guān)實驗設(shè)備測得數(shù)組某時段一氧化碳濃度數(shù)據(jù)。對待處理數(shù)據(jù)進行處理,進而實現(xiàn)各算法的驗證與比較,測得一氧化碳原始數(shù)據(jù)見表2(1 ppm=10-6)。
表2 某時段待融合一氧化碳數(shù)據(jù) ppm
該組數(shù)據(jù)中有5組數(shù)據(jù),將其從大至小排列后,分別引入不同類型的粗大誤差,A1數(shù)據(jù)引入1個極大粗大誤差,A2數(shù)據(jù)引入2個極大粗大誤差,A3數(shù)據(jù)引入2個極大粗大誤差與1個極小粗大誤差,A4數(shù)據(jù)引入1個極小粗大誤差與極大粗大誤差,A5組數(shù)據(jù)保持不變。其中極大極小粗大誤差分別在原有最大或最小數(shù)據(jù)上增加或減少5%,處理后數(shù)據(jù)見表3。
表3 引入粗大誤差的待處理一氧化碳數(shù)據(jù) ppm
以標準差σ作為評價標準,分別使用格拉布斯準則、狄克遜準則和文獻[9]粗大誤差剔除方法來比較。其中N為各方法剔除粗大誤差的循環(huán)迭代次數(shù),W為傳感器對應的權(quán)值。
表4 未剔除粗大誤差
表5 格拉布斯準則處理結(jié)果
表6 狄克遜準則處理結(jié)果
表7 文獻[9]方法處理結(jié)果
表8 改進方法處理結(jié)果
從各方法的數(shù)據(jù)處理結(jié)果可以看出:格拉布斯準則可剔除單側(cè)粗大誤差,但對于同側(cè)粗大誤差會發(fā)生同側(cè)異常值屏蔽效應。狄克遜準則可準確剔除粗大誤差,但其迭代計算次數(shù)N等于粗大誤差的數(shù)量,每次計算都需查表,算法效率低。文獻[9]方法僅能剔除單側(cè)粗大誤差,且會錯誤剔除正常值。以數(shù)據(jù)處理后的標準差和計算迭代次數(shù)N為評價標準,可知改進數(shù)據(jù)預處理算法要優(yōu)于狄克遜準則、文獻[9]方法、格拉布斯準則。
對于無線傳感器,需要綜合考慮內(nèi)存容量、計算量,數(shù)據(jù)處理的及時性,編程復雜度等方面。數(shù)據(jù)臨界值表與計算迭代次數(shù),會對無線傳感器的內(nèi)存、計算量提出較高的要求。改進算法可減少算法對內(nèi)存空間和計算量的需求。
提出了一種改進的最優(yōu)加權(quán)融合算法,主要對數(shù)據(jù)預處理階段進行改進,使得各組自適應加權(quán)融合后的數(shù)據(jù)更接近真實值。從分析結(jié)果可以看出:
(1)粗大誤差的剔除效率更高,僅需計算1次就可剔除多個粗大誤差,減小處理器計算量。
(2)粗大誤差的剔除更準確,可剔除單側(cè)粗大誤差、雙側(cè)粗大誤差、同側(cè)粗大誤差。
(3)無需查詢數(shù)據(jù)臨界值表,節(jié)省處理器內(nèi)存空間。