劉喜梅,曲鵬程
(青島科技大學(xué)自動化與電子工程學(xué)院,山東 青島 266100)
故障預(yù)測歷來是設(shè)備安全保障中重要的一環(huán)。近年來,各種故障預(yù)測方法層出不窮,大致可歸為兩大類。一類是基于設(shè)備參數(shù)的在線監(jiān)測,憑借專家系統(tǒng)經(jīng)驗或技術(shù)人員現(xiàn)場維護實現(xiàn)故障類型的診斷預(yù)警。另一類則是通過數(shù)據(jù)驅(qū)動預(yù)測,應(yīng)用大數(shù)據(jù)技術(shù)對故障進行預(yù)警。
在設(shè)備參數(shù)監(jiān)測方面,國內(nèi)石化行業(yè)有著成熟的實踐經(jīng)驗。如:①實時監(jiān)測外輸泵機組的油溫、轉(zhuǎn)速以及振動等參數(shù),從而有效地對故障進行診斷[1];②利用振動趨勢、頻譜圖、時域波形圖等分析手段,對參數(shù)進行實時監(jiān)測,進而實現(xiàn)故障診斷預(yù)警[2];③采用Internet傳輸形式,通過分析常用內(nèi)燃機監(jiān)測技術(shù),最終實現(xiàn)內(nèi)燃機的性能監(jiān)測、故障診斷和油液在線分析[3]等。
在數(shù)據(jù)驅(qū)動預(yù)測方面,高帆等應(yīng)用機器學(xué)習(xí)算法對設(shè)備運行大數(shù)據(jù)進行數(shù)據(jù)挖掘,建立專家知識庫,獲得與故障有關(guān)的診斷規(guī)則,實現(xiàn)了設(shè)備故障在線預(yù)警[4]。另外,模糊C均值聚類分析算法[5]、長短期記憶(long short-term memory,LSTM)網(wǎng)絡(luò)[6]、支持向量機(support vector machine,SVM)[7]以及整合移動平均自回歸模型(auto regressive integrated moving average model,ARIMA)算法在故障預(yù)測方面都有著不錯的應(yīng)用效果。其中,ARIMA算法在時間序列數(shù)據(jù)預(yù)測上有著廣泛的應(yīng)用。
黎瑜春提出了一種基于ARIMA和反向傳播(back propagation,BP)神經(jīng)網(wǎng)絡(luò)的組合預(yù)測方法[8]。該組合預(yù)測算法分別對振動序列的線性相關(guān)部分和非線性相關(guān)部分進行預(yù)測,充分利用了各單一模型的優(yōu)點,提高了預(yù)測精度。李志軍等則結(jié)合核主成分分析(k principal components analysis,KPCA)方法,應(yīng)用ARIMA算法,以田納西-伊斯曼(tennessee eastman,TE)過程作為研究對象,得到了較為滿意的預(yù)測效果[9]。劉穎等根據(jù)汽輪機典型故障構(gòu)造模擬信號,建立其ARIMA預(yù)測模型,通過聚類分析得出標準信號及待測信號的特征向量,取得了很好的預(yù)測效果[10]。周建民等運用最小二乘法估計參數(shù)建立ARIMA模型,將軸承同工況與類工況下的數(shù)據(jù)輸入已建立的ARIMA模型中,對軸承故障進行預(yù)測分析,效果良好[11]。
本文選取中國石油青島石化廠P301A往復(fù)式壓縮機的氣缸振動數(shù)據(jù),通過ARIMA算法,對其機械性能故障中的振動故障進行預(yù)測預(yù)警。
ARIMA算法來自BOX和Jenkins的著作《時間序列分析、預(yù)測和控制》。隨著其在金融、證券、航空班次、設(shè)備故障預(yù)警方面的廣泛應(yīng)用,逐漸形成了一整套時間序列識別、估計、建模、預(yù)測及控制的理論和方法[12]。
ARIMA(p,d,q)算法基于時間序列數(shù)據(jù)進行預(yù)測,包括自回歸(auto regressive,AR)模型、移動平均(moving average,MA)模型、自回歸移動平均(auto regressive moving average,ARMA)模型、差分(integrated,I)運算。該算法的目的是將時間序列變?yōu)槠椒€(wěn)序列。在獲取到設(shè)備的振動數(shù)據(jù)后,對數(shù)據(jù)依次進行數(shù)據(jù)預(yù)處理、時間序列平穩(wěn),然后通過自相關(guān)函數(shù)(auto correlation function,ACF)與偏自相關(guān)函數(shù)(partial auto correlation function,PACF)尋找p、q最優(yōu)值,建立模型、檢驗?zāi)P?、模型預(yù)測。
ACF用來衡量yt與yt-k之間的相關(guān)性;PACF是在去除yt-1,yt-2,...,yt-k+1之后,衡量yt與yt-k之間的相關(guān)性。
ARIMA(p,d,q)模型包括序列的平穩(wěn)性處理與ARMA(p,q)模型預(yù)測。
①平穩(wěn)性處理。
ARIMA算法要求所預(yù)測的時間序列必須是平穩(wěn)序列。所謂平穩(wěn),就是要求經(jīng)過樣本時間序列得到的擬合曲線,在未來的一段時間內(nèi)仍能按照現(xiàn)有的形態(tài)“慣性”延續(xù)。在數(shù)學(xué)表達上,就是其均值和方差不發(fā)生明顯的變化。如果不平穩(wěn),則必須進行差分處理,使之變?yōu)槠椒€(wěn)序列。具體處理過程如下。
Δxt=xt-xt-1=xt-Lxt=(1-L)xt
(1)
Δ2xt=Δxt-Δxt-1=(1-L)xt-(1-L)xt-1=(1-L)2xt
(2)
Δdxt=(1-L)dxt
(3)
式中:xt為t時刻數(shù)據(jù);xt-1為t-1時刻數(shù)據(jù);L為常數(shù)滯后算子;d為差分次數(shù)。
令wt=(1-L)dxt,此時,wt變?yōu)槠椒€(wěn)序列。將變換后的時間序列wt代入ARMA模型中,即可進行預(yù)測。由于預(yù)測序列為差分變換后的序列,因此,在預(yù)測結(jié)束后要進行預(yù)測值還原。
②ARMA模型。
ARMA(p,q)模型可表述為:
(4)
式中:γi為自相關(guān)系數(shù);θi為移動平均系數(shù);p為自回歸階數(shù);q為移動平均階數(shù);wt為當(dāng)前值;μ為常數(shù)值;{εt}為白噪聲,即誤差值。
當(dāng)q=0時,ARMA模型變?yōu)锳R(p)模型。此時,模型表述為:
wt=γ1wt-1+…+γpwt-p+εt
(5)
當(dāng)p=0時,ARMA 模型變?yōu)镸A(q)模型,此時,模型表述為:
wt=-θ1εt-1-…-θqεt-q+εt
(6)
①時間序列可視化,進行平穩(wěn)性處理和白噪聲檢驗。
將時間序列以時間為橫軸,以預(yù)測數(shù)據(jù)為縱軸,繪制出擬合曲線,通過單位根檢驗法(augmented dickey fuller,ADF)判定序列平穩(wěn)性。ADF的原假設(shè)是存在單位根,也即序列不平穩(wěn)。只要Test Statistic統(tǒng)計值小于1%水平下的統(tǒng)計值,即可以極顯著地拒絕原假設(shè),從而認為時間序列平穩(wěn)。如果ADF檢驗值介于1%水平下的統(tǒng)計值與5%、10%水平下的統(tǒng)計值,并不能說明時間序列不平穩(wěn),需根據(jù)具體預(yù)測的序列屬性進行判斷,是否需要對序列進行差分處理。若ADF檢驗值大于10%水平下的統(tǒng)計值,則必須對序列進行差分處理,再將差分后的時間序列進行ADF檢驗。以此方法依次進行其他步驟,直到所處理的時間序列通過平穩(wěn)性檢驗,所進行差分處理的次數(shù)即為d值。
白噪聲檢驗是時間序列預(yù)處理過程中非常重要的步驟,它決定了經(jīng)平穩(wěn)性處理后的時間序列能否進行實際預(yù)測。白噪聲時間序列數(shù)據(jù),即一組隨機數(shù)據(jù),這種數(shù)據(jù)沒有研究意義。因此,一旦經(jīng)平穩(wěn)處理后的數(shù)據(jù)被檢驗為白噪聲數(shù)據(jù),就不能進行該組數(shù)據(jù)的數(shù)據(jù)預(yù)測工作。
對平穩(wěn)性處理后的數(shù)據(jù)的隨機性進行假設(shè)檢驗。其中,原假設(shè)H0是自相關(guān)系數(shù)ρ1=ρ2=...=ρk=0,而備擇假設(shè)H1至少有一個自相關(guān)系數(shù)ρi≠0。在默認情況下,返回一個p值。如果該值小于10-4,則拒絕原假設(shè),說明數(shù)據(jù)不是白噪聲序列,即可進行后續(xù)預(yù)測工作。
②確定p,q的值。
畫出平穩(wěn)后的時間序列的ACF圖與PACF圖,選擇合適的自相關(guān)階數(shù)p值與移動平均階數(shù)q值組合,然后對模型進行擬合,確定最佳p、q值組合。如果自相關(guān)系數(shù)呈指數(shù)形式衰減到0,則存在自回歸過程;如果偏自相關(guān)系數(shù)呈指數(shù)形式衰減到0,則存在移動平均過程。如果上述兩種情況都存在,則該序列符合自回歸移動平均模型。p,q值確定規(guī)則如表1所示。
表1 p,q值確定規(guī)則Tab.1 p,q value determination rules
通過觀察ACF圖與PACF圖,如果有多個p、q值符合要求,接下來依據(jù)貝葉斯信息準則(bayesian information criterion,BIC),從中選出最合適的參數(shù)組合。
③驗證預(yù)測。
在確定好最佳p、d、q值組合后,將數(shù)據(jù)分為訓(xùn)練組與對照組。訓(xùn)練組用于訓(xùn)練改進模型,對照組用來對數(shù)據(jù)進行準確率驗證。
④預(yù)測效果評定。
(7)
(8)
整理往復(fù)式壓縮機氣缸振動數(shù)據(jù),對其進行ARIMA時間序列預(yù)測算法建模。首先,對數(shù)據(jù)的日期進行標準化修正,對數(shù)據(jù)進行預(yù)處理。
所獲取的數(shù)據(jù)為2015年1月4日至2018年5月3日的812個數(shù)據(jù),往復(fù)式壓縮機氣缸振動數(shù)據(jù)并非每日采集,在日期上不能呈現(xiàn)連續(xù)性。因此,在進行預(yù)測前應(yīng)進行插值,得到1 182個在時間上連續(xù)的數(shù)據(jù)。石化設(shè)備的振動速度值在短期內(nèi)不會有太大的波動,一般鄰近日期的值不會相差太大。本文采用線性插值的方式,對數(shù)據(jù)進行插值填充。線性插值具有簡單、方便的特點,也符合石化設(shè)備運行過程的物理特性。表2為部分原始數(shù)據(jù),表3為部分經(jīng)過差值處理后的數(shù)據(jù)。
表2 部分原始數(shù)據(jù)Tab.2 Partial raw data
表3 部分處理后數(shù)據(jù)Tab.3 Partial processed data
由表3可以看出,經(jīng)過插值處理后的數(shù)據(jù)在時間上實現(xiàn)了日期的連續(xù)性。
接下來對數(shù)據(jù)進行可視化及平穩(wěn)性處理。根據(jù)1~4 h數(shù)據(jù)包含設(shè)備開機后的四組振動數(shù)據(jù),選取設(shè)備趨于穩(wěn)定后的第4 h的振動數(shù)據(jù)。數(shù)據(jù)可視化圖如圖1所示。
圖1 數(shù)據(jù)可視化圖Fig.1 Data visualization
首先,對序列進行移動平均、標準差求解,使用單位根檢驗法對數(shù)據(jù)進行平穩(wěn)性判斷,所得統(tǒng)計值結(jié)果為-7.434 663e×10-13,1%顯著水平下的統(tǒng)計值為-3.436 353e×10-13。由于統(tǒng)計值結(jié)果小于1%顯著水平下的統(tǒng)計值,因此可以極顯著拒絕原假設(shè),該時間序列平穩(wěn)。由此可知,原始時間序列數(shù)據(jù)無需進行差分處理,d值為0。
接著,進行白噪聲檢驗。將數(shù)據(jù)進行白噪聲假設(shè)檢驗處理,檢驗結(jié)果遠小于10-4,因此拒絕原假設(shè),認為數(shù)列為非白噪聲序列,可以進行后續(xù)預(yù)測工作。
ACF圖和PACF圖如圖2、圖3所示。
圖2 ACF圖Fig.2 ACF graph
圖3 PACF圖Fig.3 PACF graph
圖2、圖3中陰影部分為置信區(qū)間。從PACF圖可以看到,AR(p)模型在5階后自相關(guān)值均落于置信區(qū)間內(nèi),即p=5后偏自相關(guān)值均落于置信區(qū)間內(nèi);MA(q)模型在15階后均有截尾現(xiàn)象出現(xiàn)。結(jié)合積分次數(shù)d=0,故預(yù)測模型的(p,d,q)=(5,0,15)。
將插值填充后的1 182個數(shù)據(jù)分成三部分:前1 095個數(shù)據(jù)作為訓(xùn)練組,訓(xùn)練組之后的30個數(shù)據(jù)為預(yù)測組;剩余數(shù)據(jù)不作處理。
經(jīng)試驗數(shù)據(jù)分析,在本設(shè)備的振動故障預(yù)測上,基于ARIMA的時間序列算法有著不錯的效果,且所需信息量少,運行方便快捷,結(jié)合往復(fù)式壓縮機氣缸振動速度安全閾值,可以為現(xiàn)場技術(shù)人員提供更為精準的故障預(yù)警。
預(yù)測結(jié)果與實際數(shù)據(jù)對比圖如圖4所示。
圖4 預(yù)測結(jié)果與實際數(shù)據(jù)對比圖Fig.4 Comparison between predicted results and actual data
往復(fù)式壓縮機氣缸的振動頻率在故障診斷中是一個重要的指標。由于其數(shù)據(jù)呈現(xiàn)出時間序列的特性,因此本文使用ARIMA時間預(yù)測算法對其數(shù)據(jù)進行預(yù)測,進而對故障進行預(yù)警。
通過算法實際運行,取得了較為滿意的預(yù)測效果。結(jié)合其他參數(shù)的動態(tài)顯示(如溫度、壓強等),可以為現(xiàn)場技術(shù)人員提供較為準確的故障預(yù)警建議,基本可以取代傳統(tǒng)的人工巡檢,減少設(shè)備因突發(fā)故障而產(chǎn)生的損失。
隨著大數(shù)據(jù)科學(xué)的不斷發(fā)展,基于數(shù)據(jù)驅(qū)動的設(shè)備故障預(yù)測與診斷將會有越來越廣泛的應(yīng)用。