楊 獻,言 圣
(湖南中車時代通信信號有限公司,湖南 長沙 410100)
列車運行控制裝置(LKJ)為鐵路行車安全保障設備。雖然其記錄了豐富的列車運行數(shù)據(jù),同時設備的監(jiān)測、生產、返修、故障記錄數(shù)據(jù)都有相應的系統(tǒng)進行管理,但目前仍存在以下問題:現(xiàn)場LKJ 設備文件分析不全面且分析效率低,致使故障查找定位難;設備維護管理采用定期修和故障修兩種模式,設備故障易導致事故,且設備故障修影響列車運行效率;既有設備質量分析、生產管理、LKJ 設備運行監(jiān)測管理(LMD)等系統(tǒng)的數(shù)據(jù)獨立,未關聯(lián)融合,綜合數(shù)據(jù)的價值有待發(fā)掘。
大數(shù)據(jù)技術隨著第四次產業(yè)革命而發(fā)展,在產、供、銷、創(chuàng)新等環(huán)節(jié)發(fā)揮了重要作用[1],推動企業(yè)向精益生產和服務型制造業(yè)的快速轉型升級;工業(yè)大數(shù)據(jù)和人工智能技術的出現(xiàn)正是著眼于產品全生命周期內服務能力的提升,以全面提升產品和服務品質,實現(xiàn)降本增效,提高企業(yè)的核心競爭力。如何利用大數(shù)據(jù)技術實現(xiàn)LKJ設備的智能分析,提升產品可靠性,提高維修效率,降低維護成本,是當前亟待解決的問題。為此,本文通過研究分析大數(shù)據(jù)關鍵技術,提出一種基于大數(shù)據(jù)技術的LKJ 設備分析系統(tǒng)方案及其功能實現(xiàn)方法,并進行了實驗驗證。
大數(shù)據(jù)技術是信息化社會的代表技術之一,其應用范圍廣泛[2]。根據(jù)大數(shù)據(jù)的信息處理流程,基于大數(shù)據(jù)技術的LKJ 設備分析系統(tǒng)信息處理流程可分為數(shù)據(jù)采集、處理、存儲、挖掘分析和結果展示5 部分(圖1),其中數(shù)據(jù)采集、處理和挖掘分析是關鍵技術。下面主要介紹數(shù)據(jù)處理和挖掘分析技術。
圖1 信息處理流程Fig. 1 Information processing process
傳統(tǒng)的數(shù)據(jù)處理方法是以處理器為中心;而在大數(shù)據(jù)環(huán)境下,需要采取以數(shù)據(jù)為中心的模式,以減少數(shù)據(jù)移動帶來的開銷。大數(shù)據(jù)處理模式包括流處理和批處理,其中批處理模式采用先數(shù)據(jù)存儲后處理方式,流處理模式采用直接處理方式。根據(jù)大數(shù)據(jù)的數(shù)據(jù)特征和計算需求,數(shù)據(jù)處理方法還包括內存計算、圖計算和迭代計算等。
大數(shù)據(jù)的基本處理流程與傳統(tǒng)數(shù)據(jù)處理流程差別不大。由于大數(shù)據(jù)要處理大量非結構化的數(shù)據(jù),所以在各處理環(huán)節(jié)都采用Map Reduce 方式進行并行處理。Map Reduce 適合進行數(shù)據(jù)分析、日志分析、商業(yè)智能分析、客戶營銷、大規(guī)模索引等業(yè)務。Spark Streaming 是構建在Spark 上的處理Stream 數(shù)據(jù)的框架,其基本原理是將Stream 數(shù)據(jù)分成小的時間片段(幾秒鐘),以支持高吞吐量和容錯的實時數(shù)據(jù)流處理。
數(shù)據(jù)挖掘分析是大數(shù)據(jù)的核心。由于大數(shù)據(jù)具有海量、復雜多樣及變化快等特性[3],需要采用適應大數(shù)據(jù)特點的分析方法。常用分析方法有數(shù)據(jù)挖掘方法、概率統(tǒng)計法、相關系數(shù)法和機器學習方法。
(1)數(shù)據(jù)挖掘方法
數(shù)據(jù)挖掘方法[4]主要包括分類分析、關聯(lián)分析、聚類分析和異常檢測等4 種。分類分析包括模式識別、決策樹、貝葉斯分類及人工神經網(wǎng)絡等;關聯(lián)分析包括Apriori 算法、FP 增長算法及頻繁子圖挖掘等方法;聚類分析包括基于原型的聚類、基于密度的聚類以及基于圖的聚類等方法;異常檢測包括離群點檢測等。
(2)概率統(tǒng)計法
概率統(tǒng)計法又稱數(shù)理統(tǒng)計方法,是研究自然界中隨機現(xiàn)象統(tǒng)計規(guī)律的數(shù)學方法。概率統(tǒng)計法主要研究對象為隨機事件、變量和過程,采用概率理論研究大量隨機現(xiàn)象的規(guī)律性,通過一組樣本判定能否以相當大的概率來保證某一判斷的正確性,并可以控制出現(xiàn)錯誤的概率。概率統(tǒng)計中常用的異常檢測方法是利用高斯密度函數(shù),計算數(shù)據(jù)出現(xiàn)的概率,如果概率小于某個閾值的數(shù)據(jù),就認為該數(shù)據(jù)是異常的。
(3)相關系數(shù)法
相關系數(shù)是最早由統(tǒng)計學家卡爾·皮爾遜設計的統(tǒng)計指標,是研究變量之間線性相關程度的量,一般用字母r 表示。由于研究對象的不同,相關系數(shù)有多種定義方式,較為常用的是皮爾遜相關系數(shù)。皮爾遜相關系數(shù)是用以反映變量之間相關關系密切程度的統(tǒng)計指標,其按積差方法計算,同樣以兩變量與各自平均值的離差為基礎,通過兩個離差相乘來反映兩變量之間相關程度,一段著重研究線性的單相關系數(shù)。皮爾遜相關系數(shù)的定義為
式中:Cov(X, Y) ——X 與Y 的協(xié)方差;Var[X] ——X 的方差;Var[Y]——Y 的方差。
(4)機器學習法
機器學習的本質是使用實例數(shù)據(jù)或經驗訓練模型進行分析處理,其包括歸納學習、分析學習、類比學習、遺傳算法、聯(lián)結學習及增強學習等。機器學習是面向任務、基于經驗提煉模型以實現(xiàn)最優(yōu)解設計的計算機程序,其利用經驗學習規(guī)律,一般應用在缺少理論模型指導但存在經驗觀測的領域中。
根據(jù)上述大數(shù)據(jù)關鍵技術分析,本文提出一套基于大數(shù)據(jù)的LKJ 設備分析系統(tǒng)方案。該LKJ 設備分析系統(tǒng)通過與其他信息系統(tǒng)接口,獲取LKJ 設備的運行記錄、故障記錄、現(xiàn)場反饋記錄及檢修記錄等數(shù)據(jù),并對這些數(shù)據(jù)進行清洗融合、抽取轉換加載(extraction-transformation loading, ETL)和事件攔截分析;采用聚類分析、貝葉斯網(wǎng)絡[5]、復雜關系網(wǎng)絡、有向概率圖等模型算法,通過數(shù)值理論分析、數(shù)據(jù)挖掘等環(huán)節(jié),生成大數(shù)據(jù)模型與算法,建立故障規(guī)則和質量項點分析規(guī)則,通過趨勢、突變、關聯(lián)及因素分析,生成LKJ 設備的狀態(tài)圖或異常趨勢圖,形成故障或異常出現(xiàn)的規(guī)律,以便及早發(fā)現(xiàn)LKJ 產品潛在故障點或故障隱患,并及時提醒設備檢修。系統(tǒng)采用分層架構,主要包括數(shù)據(jù)源、數(shù)據(jù)清洗層、數(shù)據(jù)存儲層、數(shù)據(jù)分析層以及應用層(圖2)。
圖2 基于大數(shù)據(jù)的LKJ 設備分析系統(tǒng)總體框架 Fig. 2 Overall framework of the LKJ equipment analysis system based on big data
(1)數(shù)據(jù)源
主要包括LKJ 設備運行記錄、設備狀態(tài)、故障記錄、返修及設備管理等數(shù)據(jù)。
(2)數(shù)據(jù)清洗層
主要包含Sqoop2 和自語語言處理模型兩種工具。結構化的LKJ 運行數(shù)據(jù)采用Sqoop2 工具進行數(shù)據(jù)采集、清洗和轉換;非結構化的LKJ 設備故障記錄日志采用自然語言處理模型,用以識別出符合LKJ 設備的故障和故障表征詞庫。
(3)數(shù)據(jù)存儲層
用于存儲源數(shù)據(jù)、模型分析中間過程數(shù)據(jù)及分析結果。建立相應的數(shù)據(jù)庫和存儲目錄,以文件和數(shù)據(jù)庫形式存儲在大數(shù)據(jù)分析平臺:采用文件形式存儲LKJ設備運行記錄文件和故障數(shù)據(jù),采用Hive 數(shù)據(jù)倉庫和Mysql 數(shù)據(jù)庫存儲分析結果。
(4)數(shù)據(jù)分析層
采用數(shù)理統(tǒng)計、機器學習領域[6]的異常識別方法和異常離群點檢測法來識別LKJ 設備數(shù)據(jù)的異常情況;采用對比、同比、類比及分布等方法實現(xiàn)對設備狀態(tài)或故障不同維度的統(tǒng)計分析;采用滑動窗口找出速度、管壓、缸壓及轉速(電流)突變情況,并利用相關系數(shù)法進行相關性分析;采用聚類方法實現(xiàn)質量項點和異常事件趨勢分析;采用故障診斷有向概率圖模型實現(xiàn)設備故障關聯(lián)分析;采用復雜網(wǎng)絡模型實現(xiàn)故障因素分析,挖掘分析突變和趨勢閾值。
(5)應用層
采用折線圖、餅圖、散點圖及樹形關系等形式展示挖掘分析結果,對故障報警和預警進行及時提示。
基于大數(shù)據(jù)的LKJ 設備分析系統(tǒng)主要功能包括數(shù)據(jù)處理、異常攔截、趨勢分析、故障關聯(lián)分析、故障因素分析、故障預警及統(tǒng)計分析等。
與LMD 系統(tǒng)接口,獲取LKJ 設備運行記錄數(shù)據(jù)和實時狀態(tài)數(shù)據(jù);與其他系統(tǒng)接口,獲取故障記錄、反饋、檢修、設備管理等數(shù)據(jù);采用批處理模式對數(shù)據(jù)進行轉換處理并存儲在LKJ 設備數(shù)據(jù)處理服務器;定期通過ETL 工具Sqoop2 將LKJ 設備的轉換數(shù)據(jù)導入到大數(shù)據(jù)分析平臺[7];對某機車的在線運行數(shù)據(jù)進行異常診斷,將診斷結果保存到Hive 數(shù)據(jù)倉庫,同時,通過Sqoop2將診斷結果保存到Mysql 數(shù)據(jù)庫;基于某機車異常診斷結果和故障關聯(lián)庫,利用故障診斷模型,實現(xiàn)故障診斷,并更新故障診斷庫,供可視化系統(tǒng)展示。圖3 示出LKJ系統(tǒng)數(shù)據(jù)流圖。
圖3 數(shù)據(jù)流圖Fig. 3 Data flow diagram
異常點識別方法主要有Delphi 專家咨詢法、概率統(tǒng)計法、Isolation Forest 算法、FP-Growth 算法和Apriori算法。LKJ 設備記錄數(shù)據(jù)具有體量大、類型繁多及數(shù)據(jù)特征復雜等特點[8]。通過比較各種異常點識別方法的優(yōu)劣性,并結合LKJ 設備記錄數(shù)據(jù)特征和識別方法的數(shù)據(jù)要求,來選擇合適的異常點識別方法。
故障診斷的異常值攔截分為兩大步驟:一是利用LKJ 設備歷史數(shù)據(jù)建立異常值識別規(guī)則;二是根據(jù)已有規(guī)則對新的LKJ 設備數(shù)據(jù)實現(xiàn)異常值的實時診斷。根據(jù)LKJ 設備記錄數(shù)據(jù)的具體特征,采用不同的異常值識別方法,從LKJ 設備歷史數(shù)據(jù)中篩選可能的異常值,確定異常值并建立相應的規(guī)則庫。通過異常模式庫、通用模式庫、頻繁模式庫及波動范圍庫,匹配入庫事件,以判斷是否存在異常;若存在異常,則直接輸出異常,并將異常攔截分析結果存儲在Hive 數(shù)據(jù)庫中,用于數(shù)據(jù)挖掘分析。圖4 示出異常攔截流程。
圖4 異常攔截流程圖Fig. 4 Abnormal intercept diagram
采用離散序列的偏態(tài)分析,總結異常規(guī)律,形成故障數(shù)據(jù)的趨勢分析[9],實現(xiàn)設備狀態(tài)的預警提示。LKJ系統(tǒng)故障/異常趨勢分析時,按時間維度分析故障/異常發(fā)生的趨勢,生成某種故障/異常狀態(tài)趨勢圖并總結出相關規(guī)律,為LKJ 設備的檢修形成指導依據(jù)。在分析過程中,增加車型(機車型號、機車號)、地域、區(qū)間和時間等要素,以分析在特定條件下的趨勢規(guī)律;同時,針對不同分析維度添加預警線,也能幫助定位到極度異常事件。圖5 示出異常狀態(tài)趨勢分析結果展示界面。
圖5 異常狀態(tài)趨勢分析 Fig. 5 Abnormal state trend analysis
LKJ 設備的運行數(shù)據(jù)文件、故障反饋單等信息中含有故障檢修和故障關聯(lián)的相關信息。對于故障文本數(shù)據(jù),可以通過對其進行數(shù)據(jù)預處理,篩選出有關故障表征、故障原因的數(shù)據(jù),結合專家知識建立自然分詞庫和人工提詞庫,并通過機器語言算法和人工篩選分類建立故障表征和故障設備的關聯(lián)關系;基于故障特征建立故障關聯(lián)分析,其中提取故障特征是關鍵的分析環(huán)節(jié),其分析結果的好壞直接影響到故障之間關系的映射。針對故障文本特征的提取算法有Viterbi 算法、N-Gram 算法、TF-IDF 算法、基于信息熵的新詞發(fā)現(xiàn)等,通過上述算法實現(xiàn)最初的中文分詞,從不同的角度對分詞結果進行篩選和優(yōu)化,分類建立故障表征和故障設備的關聯(lián)關系;通過參數(shù)學習和結構學習,分類建立故障與異常之間關聯(lián)關系。
采用故障/異常之間關聯(lián)圖,展現(xiàn)故障和異常事件、異常事件和異常事件、故障和故障之間的關聯(lián)關系,以及關聯(lián)的精密度,為故障的預測和深度故障的挖掘[10]提供數(shù)據(jù)支撐。圖6 示出LKJ 設備故障關聯(lián)分析圖。
圖6 故障關聯(lián)分析圖Fig. 6 Fault association analysis chart
故障因素分析采用復雜網(wǎng)絡模型實現(xiàn)。復雜網(wǎng)絡模型主要研究事物的關聯(lián)性,基于異常變量的關系,探索故障關聯(lián)性;借鑒復雜網(wǎng)絡模型,構建故障關聯(lián)的復雜網(wǎng)絡模型,實現(xiàn)從大量運行記錄數(shù)據(jù)中挖掘分析與故障相關的關鍵要素。對接入大數(shù)據(jù)分析平臺的LKJ 設備文件實時進行挖掘模型分析,找出該文件出現(xiàn)故障或異常的關鍵要素,以便于故障定位,提高分析效率。故障因素分析主要包括單機運行、顯示器黑屏、輪對空轉、信號異常(綠燈轉白燈、滅燈、雙黃燈轉紅黃燈、紅黃燈轉紅燈、綠燈轉紅黃燈)等項點,其主要實現(xiàn)的功能如下:
(1)顯示挖掘分析的模型關鍵要素及當前運行記錄數(shù)據(jù)中該故障或異常出現(xiàn)的關鍵要素,進行故障定位分析(圖7);
(2)顯示該故障或異常的全程運行記錄數(shù)據(jù);
(3)顯示挖掘分析結論;
(4)顯示故障前置事件并進行排序;
(5)提供指導意見的編輯功能;
(6)顯示關鍵前置事件并進行排序;
(7)實現(xiàn)按時間、車型、車號查詢出現(xiàn)故障的因素分析。
圖7 故障因素分析界面 Fig. 7 Fault factor analysis interface
基于設備故障的經驗規(guī)則方面的研究,全面綜合地分析利用各類LKJ 設備數(shù)據(jù)和與設備相關的數(shù)據(jù),對大量歷史運行記錄數(shù)據(jù)文件進行檢索分析并對同一LKJ設備狀態(tài)或故障進行累計,按路局、電務段、時間、線路、故障類型等維度對設備故障或異常進行分析統(tǒng)計,對LKJ 設備使用里程、時間、按鍵次數(shù)、開關情況進行累計分析,實現(xiàn)設備維修預警和使用壽命管理,并及時提醒檢修和設備更換,以減少設備故障。
該系統(tǒng)已在實驗室進行部署并應用;通過在實驗室搭建大數(shù)據(jù)分析平臺,將大數(shù)據(jù)挖掘分析算法部署到大數(shù)據(jù)平臺,將近3 年LKJ 運行記錄數(shù)據(jù)和故障反饋數(shù)據(jù)導入大數(shù)據(jù)分析平臺,進行挖掘分析,并對分析結果進行展示。圖8 示出綜合分析結果數(shù)據(jù)的展示界面。
圖8 分析結果數(shù)據(jù)展示界面 Fig. 8 Data display of analysis results interface
通過該系統(tǒng)的實驗室應用,找出LKJ 設備運行過程中出現(xiàn)的速度、管壓、缸壓、轉速、電流的突變情況,發(fā)現(xiàn)轉速記錄異常、速度跳變等問題,并及時進行處理;建立設備故障趨勢統(tǒng)計指標,以可視化方式展示各LKJ設備狀態(tài)的歷史趨勢和設備故障的分布情況,用于針對性地指導維護策略的制定;形成現(xiàn)場各LKJ 設備的使用時長、使用里程、按鍵、開關等壽命管理數(shù)據(jù),為設備檢修和維護提供指導;得到LKJ 設備的單機運行、顯示器黑屏等典型故障的關鍵因素及支持度,為分析設備故障原因提供數(shù)據(jù)支撐。
本文給出基于大數(shù)據(jù)技術的LKJ 設備分析系統(tǒng)設計方案及其功能實現(xiàn)。通過部署與試用,所設計的系統(tǒng)可以從大量歷史運行記錄數(shù)據(jù)中找出設備運行記錄的異常情況,形成設備累積里程和使用時間,生成典型設備故障相關因素匯總、設備狀態(tài)歷史趨勢曲線、設備故障異常趨勢曲線以及故障指標統(tǒng)計,以輔助維護人員及時發(fā)現(xiàn)問題并及時處理,從而降低設備故障率,并為設備維護提供數(shù)據(jù)支撐和決策指導。
隨著LKJ 設備相關數(shù)據(jù)的不斷完善及異常故障數(shù)據(jù)的不斷歷史累積,后續(xù)將通過深入研究設備故障特征、故障因素及故障規(guī)律,挖掘分析模型,不斷更新智能化分析技術,以進一步提升設備的故障定位和故障預測的準確率。