顧亞雄,鄧皓天
(西南石油大學機電工程學院,成都 610500)
?
基于K-最近鄰算法的管道系統傳感器數據有效性分析研究
顧亞雄*,鄧皓天
(西南石油大學機電工程學院,成都 610500)
在管道運輸中傳感器的正常使用至關重要,為了防止因傳感器故障而導致的數據采集失效,造成誤報警和漏報警,對傳感器本身的故障診斷和失效分析已經成為當前研究的重要方向。通過對各傳感器采集數據進行組合分析,以各傳感器之間的數據關聯特性作為研究內容,運用K-最近鄰算法對管道上傳感器所采集數據進行相似性擬合,提出采用C4.5算法定義各傳感器所采集數據對目標傳感器的支持度以決定目標傳感器數據的有效性,對故障傳感器運行狀態進行分析與定位,進而判斷傳感器的數據可靠性和輸差出現位置。實驗結合西南某管道流量傳感器數據進行分析,結果表明,該算法能夠準確判斷目標傳感器數據的有效性和故障傳感器在時域中發生的位置。
多傳感器;數據有效性;關聯特性;K最近鄰;C4.5算法
管道運輸(Pipeline transport)是用管道作為運輸工具的一種長距離輸送液體和氣體物資的運輸方式,隨著我國石油和天然氣工業的快速發展,油氣管道建設突飛猛進[1]。而傳感器作為綜合運輸體系的重要組成部分,其技術的發展對于系統的正常運行尤為重要。管道運輸體系的龐大,其傳感器節點容易遭受環境 、源耗盡以及其他不可預知因素的影響導致數據采集產生故障,影響系統的可靠性,所以對管道運輸中的傳感器采集的數據進行合理的有效性分析,以及故障的排查定位顯得尤為重要[2-3]。
目前傳感器故障檢測方法,已提出分布式故障檢測DFD(Distribute-Fault-Detection)[4]、改進DFD[5]、分布式加權容錯檢[6]、協同診斷Collaboration Diagnosis[7]等故障檢測算法,其主要思想是通過分析鄰居節點間的相互投票機制,節點與鄰居節點的傳感器數據進行比較判斷實現故障檢測[8-11],也正因為如此,節點所在區域的傳感器故障比例對局部故障檢測精度有很大影響,造成以上方法都不可避免的會產生局部最優的情況,張健利用灰色空間模型對傳感器網絡進行故障檢測,取得較好的效果[12]。任克強在傳感器網絡故障檢測中通過對歐式距離誤差進行改進,提高了傳感器的定位精度[13]。徐向華等人采用多傳感器網絡中的分布式故障檢測算法[14],根據同一區域中不同性質傳感器的關聯特性對目標傳感器進行檢測分析,該方法對于小范圍傳感器有一定應用,但是不同傳感器需工作在同一環境條件下。王婉等人采用主元分析傳感器的方法[15]理論上給出了在不同的傳感器故障下,各統計量的變化規律,并討論了傳感器故障的可檢測性條件,黃曉微等人提出采用聚類算法尋找近鄰的傳感器節點[16],并應用于橋梁傳感器擾度實驗中,取得了一定的成果,但在權值分配問題上,容易導致累計誤差產生,特別在樣本不平衡的情況下,會出現目標傳感器依賴某一特定傳感器的現象。
本文通過K-最近鄰算法研究管道中各流量傳感器之間的關聯特性,對各流量傳感器的測量數據進行分析對比,尋找出與目標傳感器相互關聯的近鄰傳感器,從傳感器采集數據出發,對于影響傳感器所采集數據有效性的具體因素不做考慮,其關聯特性將不受地域范圍限定,只與各傳感器采集數據有關,隨后利用C4.5算法計算目標傳感器對各近鄰流量計的信任程度,進行權值分配,通過對目標流量傳感器采集數據進行分析,判斷其數據有效性和傳感器性能問題。再將算法應用在西南某輸運管道的實驗中,實驗結果表明該方法具有較高準確性,能準確識別出流量傳感器的性能變化以及所采集數據的可靠性。
1.1 流量傳感器關聯特性
管道運輸是一個龐大復雜的結構系統,包含有各類傳感器,管道中每一參數的變化,都會引起相應傳感器的不同反應。根據管道系統的整體性,以及運輸物質質量不變的特點,可以明確管道入口物質質量等于出口物質質量,各流量傳感器數據之間必然有著不同程度的關聯,根據以上原理,通過對歷史采集數據的挖掘,充分利用這些數據潛在的價值規律,分析各傳感器之間的數據特點,將目標傳感器與K個近鄰傳感器進行相似性關聯,關聯越是緊密的監測點,其傳感器采集的數據之間就越表現出趨于一致的變化規律。
假設某一管道系統共有N個流量監測點,其中u,v是不同地點的采樣傳感器監測點,xu(i),xv(i)是同一時刻i流量傳感器u,v的測量值,Xu與Xv分別是u與v在測量時間段T∈(ti|i=1,2,3…,m)T內所采集到的m個流量數據所構成的維向量,根據K-最近鄰算法確定監測點u,v所測數據向量之間的距離變化趨勢,就能得到傳感器監測點u,v數據的相似程度,二者相似度越高,傳感器u,v之間的關聯程度就越高。
1.2 K-最近鄰算法
K-最近鄰KNN(K-Nearest Neighbor)分類算法,是一個理論上比較成熟的方法,也是最簡單的機器學習算法之一,主要依據計算特征空間中不同樣本的歐幾里德距離,得出各樣本之間的相似性。兩個點或樣本空間X={1,x2,x3,x4…xm}和Y={y1,y2,y3,y4…ym}的歐氏距離定義如下:

(1)
式中:d(X,Y)越小,則樣本(X,Y)的相似度越高,d(X,Y)=0,表示X,Y完全相等。
在管道運輸系統中,由流量關聯原理可設S(X1,X2,X3…Xn)為其全部流量傳感器采集數據集合,在每一個測量時間段T內,各個傳感器均采集到個數據,對于流量傳感器v(v∈S,v≠u),在第j個時間段內的,其采集的數據與目標流量傳感器采集數據之間歐氏距離為:

(2)
KNN方法雖然從原理上也依賴于極限定理,但在類別決策時,只與極少量的相鄰樣本有關,為避免出現傳感器節點“瞬時故障”的問題,同時考慮到各流量傳感器在正常使用情況下,其采集數據會在一個合理的范圍內波動,可認為不同時間窗內的數據在其期望值附近做隨機波動,因此在進行K最近鄰屬性選擇上,本文選擇采用平均歐式距離作為最近鄰選擇依據,綜合考慮各點數據的貢獻,避免依賴個別數據所造成的決策失衡。
在L個時間段內,計算傳感器v與傳感器u數據之間的平均歐氏距離為:

(3)
由均值定義可知,在數據采樣時間L足夠長的情況下,樣本均值近似等于期望值。即d(xu,xv)≈E[d(xu,xv)],對每個流量傳感器使用以上方法計算出目標流量計與其他流量傳感器的歐氏距離,找出其平均歐氏距離最小的K個傳感器,作為與目標傳感器u關聯密切的近鄰傳感器。
西南某天然氣輸送管道全長793 km,采用先進的SCADA(Supervisory Control And Data Acquisition)數據采集與監視控制系統,以實現數據采集、設備控制、測量、參數調節以及各類信號報警等各項功能[17]全線管道使用各類傳感器上千,本文以其中某一段的流量傳感器作為實驗數據采樣部分,采樣段共設有傳感器60個,測量數據以2 h為間隔采樣,在系統投入的初期可近似認為各傳感器均能正常工作,能準確測量對應節點的流量,利用初期數據進行算法建模能夠準確反應出各傳感器的關聯特性,根據2013年10月20日到2014年1月20日的數據采集,除開人為檢修等個別因素,每個流量計共采集數據N=965個,設定時間窗長度T=24 h,則時間T內每個樣本數m=12。
K值的選擇會對算法的結果產生較大的影響,K值過小,容易出現過擬合現象,造成目標傳感器過度依賴某一近鄰傳感器的問題,K值過大,則容易增加算法的時間開銷,同時近似誤差增大,使得結果誤差率增加,使用交叉驗證方式對最優K值進行選取,將傳感器數據均分成K組,將每個組的傳感器數據分別做一次驗證集,其余的K-1組的傳感器數據作為訓練集,得到K個模型,用這K個模型最終的驗證集的平均誤差率作為確定K值的性能指標,通過對管道傳感器數據進行不同K值的實驗對比,其結果誤差平方和如圖1所示。

圖1 不同K值平方誤差和
由圖1可知,隨著K值增加,誤差平方和有逐漸增大趨勢。當K=2時,取誤差平方和最小,綜合考慮,為避免出現過擬合現象,本文選擇K=3,計算得到每個目標監測點關聯最緊密的3監測點,如表1所示。

表1 目標傳感器的最近鄰
從表1結果還可以發現,相互關聯的傳感器之間其實并不需要在地理位置上相鄰,例如目標傳感器22#的3個近鄰傳感器39#、59#與6#。其中通過實地考察可知,傳感器22#與傳感器59#相距20 km。進行相關性分析可以發現,39#、59#、6#傳感器與目標傳感器22#的Pearson相關系數分別高達0.954、0.921、0.909,而與其他傳感器56#(K=4時所得近鄰傳感器)的相關系數只有0.832。
圖2分別展現了近鄰傳感器39#、59#、6#與目標傳感器22#采集數據之間的相似性,同時與非關聯傳感器45#進行對比分析,可以較直觀看出近鄰傳感器與目標傳感器之間的相似性。

圖2 監測點22#、39#、59#、6#與非關聯檢測點45#數據曲線
2.1 傳感器支持度表示
通過前面的分析計算,得出目標傳感器與近鄰傳感器在流量數據上的的關聯關系,簡單的關聯關系只能說明各關聯傳感器所測數據的變化趨勢的一致性,要得到目標傳感器的準確運行狀態和所測數據的有效性,還需要對各關聯傳感器進行支持度分析。所謂支持度,是指某段時間T內目標傳感器測得數據被其鄰近傳感器所測數據支持的程度。
由前面相似關聯性分析可知,在測量系統穩定的情況下,各目標傳感器與其中任意關聯傳感器在任意時間窗內的歐式距離服從正態分布[16],根據正態分布3σ準則特點,樣本值離期望值越近,出現概率越大,可認為測量數據在與均值期望值的誤差在3σ之內時,樣本數據可被接受[18],即當近鄰傳感器與目標傳感器數據之間向量距離與該時段均值距離|d(xu,xv)-E[d(xu,xv)]|≤3σ時,可認為目標傳感器受到鄰近傳感器的支持。
以近鄰流量傳感器與目標流量傳感器數據向量之間的歐式距離與該時段兩者平均歐式距離之差Zi作為支持度函數變量:
zi=|d(x_u,x_v)-E[d(x_u,x_v)]|
(4)
當zi越小,表明該近鄰傳感器對于目標傳感器支持度越高,設定支持度函數表達式:
δi(i)=f(zi)
(5)
其中滿足
(6)式中:δl為設定的支持度置信閾值,即在歐式距離|d(xu,xv)-E(d(xu,xv))|>3σ時,認為傳感器的有效性不受到該傳感器支持。為使式子滿足表達式(5)與(6)的要求,可令函數具體形式如式(7)所示

(7)

2.2 近鄰傳感器權值分配


表2 C4.5算法符號說明
Step 1 在流量傳感器正常使用,流量穩定階段,統計目標傳感器的最佳采樣基準點個數Nui與普通采樣點Nuj,其中滿足i+j=N,依據x(vi|ui)與x(vj|ui)統計近鄰傳感器最佳采樣基準點數目Nvi和普通采樣基準點數目Nvj。
Step 2 將目標傳感器中最佳采樣基準點占全部采集數據比例pi=Nui/N與pj=Nui/N應用于C4.5算法,計算信息熵:
info(Nu)=-pilog2(pi)-pilog2(pi)
(8)
Step 3 求解近鄰傳感器的期望熵:

(9)
Step 4 計算目標傳感器與近鄰傳感器的信息增益,并計算出近鄰傳感器相對目標傳感器的信息增益率:
GainK(U)=Info(Nu)-InfoK(Nu)
(10)

(11)

(12)
Step 5 根據決策樹分配權重,將K個近鄰傳感器的C4.5信息熵增益率進行歸一化處理,根據各自所占比例進行權重分配。

(13)
Step 6 在規定時間窗內,結合近鄰傳感器對目標傳感器的支持度δi(i)加權計算目標傳感器的數據有效性μu:
(14)

圖4 67#傳感器測試數據有效度曲線
管道系統作為整體性較強的體系,其進出口流量變化是統一的,出口統計流量與進口流量統計密切關聯,將以上理論應用到西南某管道運輸中時,在進行大量傳感器實驗數據分析與故障檢修日志對比研究后,依據數理統計制定得到適合當前系統的傳感器故障診斷方案:即當有效度μ=0.90以上,則認為傳感器工作正常,采集數據有效。當目標傳感器有效度μ在0.7~0.9則認為傳感器可能出現了一定程度的性能衰減,需對傳感器進行現場重新標定檢修。對于有效度μ小于0.7,則可認為傳感器出現故障,需要進行更換。選擇管道初期傳感器數據進行算法分析,得出目標傳感器的K=3個近鄰傳感器,以及3個近鄰傳感器對于目標傳感器的有效度權值分配。
圖3根據2014年6月流量數據日志所制作的100號傳感器平均有效度分布。可以發現,樣本中平均有效度主要分布主要在0.7~0.9之間,占到樣本總數63%,平均有效度在0.9以上占樣本總數30%,平均有效度在0.7以下占7%。

圖3 傳感器平均有效度分布
在后期傳感器采樣數據測試中,得到以下3種典型有效度圖例。
圖4表示67#傳感器在測試數據階段,有效度μ一直在0.9以上波動,表明了目標傳感器工作正常,采集數據可信度較高,傳感器性能良好。
圖5表示23#傳感器在測試數據階段,有效度μ在0.8左右波動,可以發現目標傳感器初期投入使用時,波動較小,采集數據可靠性較高,隨著傳感器使用時間增加,后續有效度波動較大,需要派遣人員實地考察,進行傳感器的修正。
圖6表示33#傳感器在測試數據階段,有效度已經低于設定閾值0.7,查詢系統報修日志,發現在2014年1月19日,傳感器所在位置受到極端天氣影響,采集數據能力減弱,管理部門在發現問題后,經過近一周排查,定位到故障傳感器,并于2014年1月25日派遣人員進行傳感器更換,更換后的傳感器使用正常。

圖5 23#傳感器測試數據有效度曲線

圖6 33#傳感器測試數據有效度曲線
利用不同地點傳感器所采集數據之間的關聯特性分析目標傳感器所測數據的有效度,進而得出傳感器的運行狀態,可以不受地域限制,特別適合管道運輸這種整體性較強的體系,運用C4.5算法分析計算各近鄰傳感器對目標傳感器的有效性權值大小,避免傳統的僅根據向量距離進行權值設定所導致的局部最優,解決了K最近鄰算法在樣本失衡情況下誤差增大的缺點,通過融合不同近鄰傳感器對目標傳感器的支持力度,能夠直觀的得到所測量數據的評價和測量傳感器性能變化,同時對目標傳感器在時域上進行故障定位,方便了管理人員對于系統維護進行判斷。
在權值分配中采用的時域時間窗對各傳感器數據進行分析,所以在算法模型建立的時間窗內,傳感器數據的初期數據有效性越好,對于后面的測試數據算法就越精準。
[1] 戚愛華.“十二五”我國油氣管道運輸發展趨勢分析[J]. 綜合運輸,2011(4):15-18.
[2] 肖嵩,林銘榮,王彥馨,等. 天然氣輸差控制與管理的探討[J]. 煤氣與熱力,2009,29(7):32-36.
[3] 高剛剛. 輸油管道泄漏檢測定位研究[D]. 西安:西安石油大學,2015.
[4] OuldAhmedVall,Riley. A Distributed Fault-Tolerant Algorithm for Event Detection Using Heterogeneous Wireless Sensor Networks[J]. IEEE Transactions on Mobile Computing,2006,11(12):3634-3639.
[5] 蔣鵬. 一種改進的DFD無線傳感器網絡節點故障診斷算法研究[J]. 傳感技術學報,2008,21(8):1417-1421.
[6] 李宏,謝政,陳建二,等. 一種無線傳感器網絡分布式加權容錯檢測算法[J]. 系統仿真學報,2008,20(14):3750-3755.
[7] Tan R,Xing G,Wang J,et al. Exploiting Reactive Mobility for Collaborative Target Detection in Wireless Sensor Networks[J]. IEEE Transactions on Mobile Computing,2010,9(3):317-332.
[8] 何永強,張文欣,李可. 基于貝葉斯理論的傳感器網絡節點故障檢測方法[J]. 河南工程學院學報(自然科學版),2014(4):65-68.
[9] Lee S,Younis M. Optimized Relay Placement to Federate Segments in Wireless Sensor Networks[J]. IEEE Journal on Selected Areas in Communications,2010,28(5):742-752.
[10] Tao L Q,Yu F Q. Low-Jitter Slot Assignment Algorithm for Deadline-Aware Packet Transmission in Wireless Video Surveillance Sensor Networks[J]. International Journal of Communication Systems,2011,24(6):810-827.
[11] Khil S K E,Jlassi I,Estima J O,et al. Current Sensor Fault Detection and Isolation Method for PMSM Drives,Using Average Normalised Currents[J]. Electronics Letters,2016,52(17):1434-1436.
[12] 張健. 基于灰色預測的分布式傳感器網絡故障檢測方法[J]. 傳感技術學報,2015,28(8):1188-1193.
[13] 任克強,莊放望. 最短路徑距離矩陣修正的多維標度定位算法[J]. 傳感技術學報,2016,29(1):129-135.
[14] 徐向華,周彪,萬健. 多傳感器網絡中的分布式故障檢測算法[J]. 傳感技術學報,2010,23(4):595-601.
[15] 王婉. 基于PCA的空調水系統的傳感器故障檢測與診斷研究[D]. 湖南:湖南大學,2014.
[16] 黃曉微,陳偉民,章鵬,等. 基于K-最近鄰算法的撓度傳感器有效度研究[J]. 儀器儀表學報,2012,33(5):1090-1095.
[17] 張震,張勇. SCADA系統在中緬天然氣管道調控運行中的應用[J]. 石油化工自動化,2015,51(3):25-28.
[18] 孫振綺,丁效華. 概率論與數理統計[M]. 北京:機械工業出版社,1995:53-56.

顧亞雄(1962-)男,教授,工學博士,碩士生導師,主要從事光電檢測技術與無損檢測技術等方面的教學與研究,835261911@qq.com;

鄧皓天(1993-)男,2015年就讀于西南石油大學機電工程學院,攻讀儀器科學與技術碩士學位,主要研究方向為傳感器測量,數據采集,神經網絡等,201521000526@stu.swpu.edu.cn。
Fault Analysis of Pipeline System Sensor Based onK-Nearest Neighbor Algorithm
GU Yaxiong*,DENG Haotian
(School of mechanical and electrical engineering,Southwest Petroleum University,Chengdu 610500,China)
The normal use of the sensor in the pipeline transportation is very important. In order to prevent the data acquisition failure which caused by the sensor fault. The fault diagnosis and failure analysis of the sensor has become an important direction of the current research. Through the combination analysis of the data collected by the sensors,the data association characteristics between the sensors are used as the research content. TheK-nearest neighbor algorithm is used to fit the data that collected by the sensors of the pipeline. The C4.5 algorithm is proposed to define the support degree of each sensor to determine the target sensor data. To analyze and locate the fault sensor’s running state,and then to determine the data reliability and determine the location of the sensor. The experiment analysis the data of the pipeline flow sensors. The results show that the algorithm can accurately determine the effectiveness of the target sensor and the location of the fault sensor in the time domain.
multi sensors;data validity;association characteristics;KNN;C4.5 algorithm
2016-09-07 修改日期:2017-03-14
TP393
A
1004-1699(2017)07-1076-07
C:6150P
10.3969/j.issn.1004-1699.2017.07.018