一種基于數(shù)據(jù)挖掘的車輛故障診斷方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種基于數(shù)據(jù)挖掘的車輛故障診斷方法及系統(tǒng),屬于車輛故障診斷技術(shù)領(lǐng)域。本發(fā)明從獲取的大量車輛故障數(shù)據(jù)中,挖掘出各個數(shù)據(jù)參數(shù)值之間及參數(shù)屬性值與故障類之間的隱藏關(guān)系,能夠及時并有效地確定車輛發(fā)生故障的零部件,確定故障類型及故障原因,防止故障惡化而產(chǎn)生重大事故。同時,本發(fā)明采用組合分類的方法對車輛故障數(shù)據(jù)進行診斷,通過構(gòu)建k個故障診斷模型對車輛故障進行診斷,與使用單個故障診斷模型相比,顯著提高了故障診斷準確率。
【專利說明】
-種基于數(shù)據(jù)挖掘的車輛故障診斷方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及一種基于數(shù)據(jù)挖掘的車輛故障診斷方法及系統(tǒng),屬于車輛故障診斷技 術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 隨著新能源客車上增加的電子設(shè)備越來越多,新能源客車出現(xiàn)的故障類型也隨之 增多。新能源客車的故障主要有發(fā)電機故障、動力電池故障、轉(zhuǎn)向故障、空壓機故障等。另 夕h發(fā)電機故障又包括電機過壓、電機欠壓、電機過溫等,動力電池故障又包括電池過壓故 障、電池過溫故障、絕緣電阻過低等故障??梢?,新能源客車故障種類繁多,又由于其復雜的 非線性性,故障發(fā)生時,難W判斷發(fā)生故障的部位及確定故障的原因。然而現(xiàn)有的監(jiān)控系 統(tǒng),不論是集中式還是基于云計算框架的,都僅僅通過人工定義的統(tǒng)計條件去分析故障產(chǎn) 生的規(guī)律和原因,為新能源客車系統(tǒng)的改進和故障的預(yù)測只能提供有限的信息。一些隱藏 在海量數(shù)據(jù)之中有價值的信息不能被挖掘出來,運些信息可能是有著意想不到的制約關(guān)系 或規(guī)律,會對新能源客車系統(tǒng)的改進提供非常大的幫助。所W,提出一種基于數(shù)據(jù)挖掘的新 能源汽車故障診斷方法尤為重要。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的是提供一種基于數(shù)據(jù)挖掘的車輛故障診斷方法及系統(tǒng),W提高對車 輛故障診斷的準確性。
[0004] 本發(fā)明為解決上述技術(shù)問題而提供一種基于數(shù)據(jù)挖掘的車輛故障診斷方法,該診 斷方法包括W下步驟:
[0005] 步驟1.采集車輛故障數(shù)據(jù),包括車輛發(fā)生故障時各零部件的相關(guān)參數(shù)數(shù)據(jù),得到 具有故障類標記的車輛故障數(shù)據(jù)集D,D中包含n個車輛故障數(shù)據(jù)樣本{si,S2,S3,…Sn};
[0006] 步驟2.構(gòu)建故障診斷模型:
[0007] 2.1.初始化每個數(shù)據(jù)樣本的權(quán)重為1/n;
[0008] 2.2.根據(jù)數(shù)據(jù)樣本的權(quán)重從D中有放回抽樣,得到包含n個車輛故障數(shù)據(jù)樣本的車 輛故障數(shù)據(jù)集化;
[0009] 2.3.在每個車輛故障數(shù)據(jù)集化上構(gòu)建一個車輛故障診斷模型Mi Q = I,2,…,k),并 計算Mi的錯誤率error (Mi)
[0010]
[0011]其中,err山)是數(shù)據(jù)樣本S說誤分類誤差,如果S燕誤分類,則err(Sj)為1,否則 它為0,Wi為數(shù)據(jù)樣本Sj在第i次迭代的權(quán)重;
[0012] 2.4.當error(Mi)大于設(shè)定值時,則轉(zhuǎn)到步驟2.2重新構(gòu)建車輛故障診斷模型;
[0013] 2.5.當error(Mi)小于設(shè)定值,則對化中每個被正確分類的車輛故障數(shù)據(jù)樣本的權(quán) 重乘We;r;ro;r(Mi)/(I-Giror(Mi));
[0014] 2.6.重復步驟2.2-2.化次,W得至化個車輛故障診斷模型Mi(i = I,2,…,k);
[0015] 步驟3.利用所構(gòu)建的k個故障診斷模型對實時采集到的車輛故障數(shù)據(jù)采用組合投 票的方法進行故障診斷。
[0016] 所述步驟2.3采用決策樹算法在每個車輛故障數(shù)據(jù)集Di上構(gòu)建一個車輛故障診斷 模型MiQ = I ,2,…,k),過程如下:
[0017] A.倉幡節(jié)點S;
[0018] B.如果DiQ = I,2,…,k)中所有數(shù)據(jù)樣本都屬于同一車輛故障類A,則返回S作為 葉節(jié)點,并標記為故障類型A;
[0019] C.否則,選擇所有參數(shù)中具有最大增益率的參數(shù)t,將參數(shù)t做為節(jié)點S的測試參 數(shù);
[0020] D.對測試參數(shù)t的每個區(qū)間劃分創(chuàng)建一個分支,并據(jù)此劃分樣本;
[0021] E.在每一個劃分樣本上,重復步驟A-D,遞歸地構(gòu)建車輛故障診斷模型,直至給定 節(jié)點的所有數(shù)據(jù)樣本屬于同一故障類型,或者沒有剩余車輛零部件參數(shù)可W用來進一步劃 分樣本,或者給定的分支沒有數(shù)據(jù)樣本。
[0022] 所述步驟C中最大增益率參數(shù)t指的是對故障數(shù)據(jù)樣本^1,32,33,一3。}具有增大 增益率的參數(shù),參數(shù)t的增益率為:
[0023] GainRate(t) =Gain(t)/SpliInf Ot(Di)
[0024] 其中GainRate(t)為參數(shù)t的增益率,Gain(t)為參數(shù)t的信息增益,SpliInfot(Di) 為參數(shù)t的分裂信息。
[0025] 對于構(gòu)建好的車輛故障診斷模型還需采用后剪枝方法進行處理,W消除數(shù)據(jù)中的 噪聲和孤立點帶來的訓練異常。
[0026] 所述步驟3)中組合投票故障診斷包括W下步驟:
[0027] a.將每個車輛故障診斷模型Mi的權(quán)重初始化為0;
[0028] b.計算每個車輛故障診斷模型Mi的權(quán)重Wi,
[0029] Wi = log(error(Mi)/(1-error(Mi)));
[0030] c.如果車輛故障診斷模型Ml對車輛故障數(shù)據(jù)樣本Si診斷為故障類型Cl,車輛故障 數(shù)據(jù)樣本Si屬于故障類型Cl的權(quán)重就為Wi;
[0031] d. k個車輛故障診斷模型Mi都對車輛故障數(shù)據(jù)樣本Si進行故障診斷,即組合投票, 最后返回具有最大權(quán)重和的故障類。
[0032] 步驟1還包括對采集到的車輛故障數(shù)據(jù)進行預(yù)處理的過程,包括使用數(shù)據(jù)清理方 法消除故障數(shù)據(jù)噪聲和處理空缺值;使用數(shù)據(jù)歸約方法對車輛故障數(shù)據(jù)進行維歸約,W減 少隨機變量和屬性的個數(shù)。
[0033] 本發(fā)明還提供了一種基于數(shù)據(jù)挖掘的車輛故障診斷系統(tǒng),該故障診斷系統(tǒng)包括數(shù) 據(jù)采集處理模塊、故障診斷模型構(gòu)建模塊和評估預(yù)測模塊,
[0034] 所述數(shù)據(jù)采集處理模塊用于采集車輛故障數(shù)據(jù),包括車輛發(fā)生故障時各零部件的 相關(guān)參數(shù)數(shù)據(jù),W得到具有故障類標記的車輛故障數(shù)據(jù)集D,D中包含n個車輛故障數(shù)據(jù)樣本 {si,S2,S3,-"Snl ;
[0035] 所述故障診斷模型構(gòu)建模塊用于構(gòu)建故障診斷模型,其構(gòu)建過程如下:
[0036] A).初始化每個數(shù)據(jù)樣本的權(quán)重為1/n;
[0037] B).根據(jù)數(shù)據(jù)樣本的權(quán)重從D中有放回抽樣,得到包含n個車輛故障數(shù)據(jù)樣本的車 輛故障數(shù)據(jù)集化;
[0038] C).在每個車輛故障數(shù)據(jù)集化上構(gòu)建一個車輛故障診斷模型Mi(i = 1,2,…,k),并 計算Mi的錯誤率error (Mi)
[0039]
[0040] 其中,err佔)是數(shù)據(jù)樣本S撕誤分類誤差:如果S鼎誤分類,則err山)為1;否則 它為0 ; Wi為數(shù)據(jù)樣本Sj在第i次迭代的權(quán)重;
[0041] D).當error(Mi)大于設(shè)定值時,則轉(zhuǎn)到步驟2.2重新構(gòu)建車輛故障診斷模型;
[0042] E).當error(Mi)小于設(shè)定值,則對化中每個被正確分類的車輛故障數(shù)據(jù)樣本的權(quán) 重乘We;r;ro;r(Mi)/(I-Giror(Mi));
[0043] F).重復步驟A)-E)k次,W得到k個車輛故障診斷模型Mi(i = l,2,…,k);
[0044] 所述的評估預(yù)測模塊用于根據(jù)所構(gòu)建的k個故障診斷模型對實時采集到的車輛故 障數(shù)據(jù)采用組合投票的方法進行故障診斷。
[0045] 所述的故障診斷模型構(gòu)建模塊采用決策樹算法在每個車輛故障數(shù)據(jù)集Di上構(gòu)建 一個車輛故障診斷模型Mi(i = 1,2,…,k),過程如下:
[0046] A.創(chuàng)建節(jié)點S;
[0047] B.如果DiQ = I,2,…,k)中所有數(shù)據(jù)樣本都屬于同一車輛故障類A,則返回S作為 葉節(jié)點,并標記為故障類型A;
[004引 C.否則,選擇所有參數(shù)中具有最大增益率的參數(shù)t,參數(shù)t成為節(jié)點S的"測試"參 數(shù);
[0049] D.對測試參數(shù)t的每個區(qū)間劃分創(chuàng)建一個分支,并據(jù)此劃分樣本;
[0050] E.在每一個劃分樣本上,重復步驟A-D,遞歸地構(gòu)建車輛故障診斷模型,直至給定 節(jié)點的所有數(shù)據(jù)樣本屬于同一故障類型,或者沒有剩余車輛零部件參數(shù)可W用來進一步劃 分樣本,或者給定的分支沒有數(shù)據(jù)樣本。
[0051 ]所述評估檢測模塊采用組合投票進行故障診斷的過程如下:
[0052] a.將每個車輛故障診斷模型Mi的權(quán)重初始化為0;
[0053] b.計算每個每個車輛故障診斷模型Mi的權(quán)重Wi,
[0054] Wi = log(error(Mi)/(l-error(Mi)));
[0055] c.如果車輛故障診斷模型Ml對車輛故障數(shù)據(jù)樣本Si診斷為故障類型Cl,那么車輛 故障數(shù)據(jù)樣本Si屬于故障類型Cl的權(quán)重就為Wi;
[0056] d.k個車輛故障診斷模型Mi都對車輛故障數(shù)據(jù)樣本Si進行故障診斷,即組合投票, 最后返回具有最大權(quán)重和的故障類。
[0057] 所述采集處理模塊還用于對采集到的車輛故障數(shù)據(jù)進行預(yù)處理,包括使用數(shù)據(jù)清 理方法消除故障數(shù)據(jù)噪聲和處理空缺值;使用數(shù)據(jù)歸約方法對車輛故障數(shù)據(jù)進行維歸約, W減少隨機變量和屬性的個數(shù)。
[005引本發(fā)明的有益效果是:本發(fā)明從獲取的大量車輛故障數(shù)據(jù)中,挖掘出各個數(shù)據(jù)參 數(shù)值之間及參數(shù)屬性值與故障類之間的隱藏關(guān)系,能夠及時并有效地確定車輛發(fā)生故障的 零部件,確定故障類型及故障原因,防止故障惡化而產(chǎn)生重大事故。同時,本發(fā)明采用組合 分類的方法對車輛故障數(shù)據(jù)進行診斷,通過構(gòu)建k個故障診斷模型對車輛故障進行診斷,與 使用單個故障診斷模型相比,顯著提高了故障診斷準確率。
【附圖說明】
[0059] 圖1是本發(fā)明車輛故障診斷的流程圖;
[0060] 圖2是本發(fā)明所采用的組合分類方法示意圖;
[0061] 圖3-a是車輛故障數(shù)據(jù)樣本為離散值的故障診斷數(shù)示意圖;
[0062] 圖3-b是車輛故障數(shù)據(jù)樣本為連續(xù)值的故障診斷樹示意圖;
[0063] 圖4是車輛信息采集終端結(jié)構(gòu)示意圖。
【具體實施方式】
[0064] 下面結(jié)合附圖對本發(fā)明的【具體實施方式】做進一步的說明。
[0065] 本發(fā)明的一種基于數(shù)據(jù)挖掘的車輛故障診斷方法的實施例
[0066] 針對現(xiàn)有的車輛故障診斷系統(tǒng)不能較好地完成汽車上各個零部件故障診斷的任 務(wù),本發(fā)明采用數(shù)據(jù)挖掘的方法,對汽車的實時監(jiān)測數(shù)據(jù)進行數(shù)據(jù)分析,判斷汽車是否處于 安全運行狀態(tài),對發(fā)生故障的汽車定位故障發(fā)生的部位,給出故障原因并報警,防止故障惡 化。該方法的流程如圖1所示,該方法的具體實施過程如下:
[0067] 步驟1.采集新能源車輛故障數(shù)據(jù),對采集到的新能源車輛故障數(shù)據(jù)進行數(shù)據(jù)預(yù)處 理,得到具有故障類標記的車輛故障數(shù)據(jù)集D,D中包含n個車輛故障數(shù)據(jù)樣本{si,S2,S3r-- Sn}。
[0068] 車輛故障數(shù)據(jù)包括車輛發(fā)生故障時各零部件的相關(guān)參數(shù)數(shù)據(jù)。如當發(fā)生動力電池 過溫故障時,動力電池、發(fā)動機、發(fā)電機、轉(zhuǎn)向器等所有零部件的相關(guān)參數(shù)的數(shù)據(jù)集合。本實 施例中的采集到的車輛故障數(shù)據(jù)來源于車輛信息采集終端,如圖4所示,本實施例的車輛信 息采集終端包括遠程升級模塊、信息處理模塊W及分別與該信息處理模塊相連的CAN總線 通信模塊、供電模塊、信息顯示模塊、數(shù)據(jù)存儲模塊、USB模塊;信息處理模塊還連接有無線 通信模塊和模擬信號處理模塊和GPS模塊;CAN總線通訊模塊通過CAN總線分別用于與發(fā)動 機ECU、主電機控制器、ISG控制器、超級電容管理系統(tǒng)、電池管理系統(tǒng)、DC-DC管理系統(tǒng)、轉(zhuǎn)向 控制器、整車控制器、變速箱控制器、空調(diào)管理系統(tǒng)、ABS管理模塊和儀表模塊相連。該終端 通過CAN總線與其他設(shè)備相連,遵循SAEJ1939CAN總線協(xié)議,實時采集CAN總線上傳輸?shù)臄?shù) 據(jù)。SAEJ1939標準是美國汽車工程師協(xié)會發(fā)布的WCAN總線為核屯、的車輛網(wǎng)絡(luò)串行通訊和 控制協(xié)議,SAEJ1939協(xié)議WCAN2.0協(xié)議為基礎(chǔ),通訊速率最高可達250Kb/s。它對汽車內(nèi)部 ECU的地址配置。命名、通訊方式及報文發(fā)送優(yōu)先級都給出明確規(guī)定,并且詳細說明了汽車 內(nèi)部各個供體的ECU通訊。
[0069] 為了使所購建的故障診斷模型更加準確,本發(fā)明還對采集到的車輛故障數(shù)據(jù)進行 預(yù)處理,包括使用數(shù)據(jù)清理方法消除數(shù)據(jù)噪聲和處理空缺值;使用數(shù)據(jù)歸約方法中的小波 變換、主成分分析PCA技術(shù)對原始數(shù)據(jù)進行維歸約,W減少隨機變量和屬性的個數(shù),從而達 到W較少的變量個數(shù)獲得較多的信息量的目的。
[0070] 步驟2.對經(jīng)過數(shù)據(jù)預(yù)處理的車輛故障數(shù)據(jù)采用數(shù)據(jù)挖掘技術(shù)中的組合分類方法 構(gòu)建故障診斷模型。
[0071] 2.1.初始化每個數(shù)據(jù)樣本的權(quán)重為1/n;
[0072] 2.2.根據(jù)數(shù)據(jù)樣本的權(quán)重從D中有放回抽樣,得到包含n個車輛故障數(shù)據(jù)樣本的車 輛故障數(shù)據(jù)集化;
[0073] 2.3.在每個車輛故障數(shù)據(jù)集化上構(gòu)建一個車輛故障診斷模型Mi Q = I,2,…,k),并 計算Mi的錯誤率error (Mi);
[0074] 2.4.如果error (Mi )〉0.5 (注:0.5為最佳值,非必選),轉(zhuǎn)步驟2重新構(gòu)建車輛故障 診斷模型;
[0075] 2.5.否則,對化中每個被正確分類的車輛故障數(shù)據(jù)樣本的權(quán)重乘^6祥〇^11)/(1- error(Mi));
[0076] 2.6.重復2、3、4、5,k次,得到k個車輛故障診斷模型Mi(i = l,2,…,k)。
[0077]
[007引共T,err、Sj;巧飄服干年SjH、」誤分類誤差:如果Sj被誤分類,則err(Sj)為1;否則 它為0;Wi為數(shù)據(jù)樣本Sj在第i次迭代的權(quán)重。
[0079] 步驟2.3中車輛故障診斷模型的構(gòu)建可采用決策樹算法、貝葉斯算法來實現(xiàn),本實 施例采用決策時算法來構(gòu)建,具體的構(gòu)建過程如下:
[0080] 1、創(chuàng)建節(jié)點S;
[0081] 2、如果DiQ = I,2,…,k)中所有數(shù)據(jù)樣本都屬于同一車輛故障類A,則返回S作為 葉節(jié)點,并標記為故障類型A;
[0082] 3、否則,選擇所有參數(shù)中具有最大增益率的參數(shù)t,參數(shù)t成為節(jié)點S的測試參數(shù);
[0083] 4、對測試參數(shù)t的每個區(qū)間劃分創(chuàng)建一個分支,并據(jù)此劃分樣本;
[0084] 5、在每一個劃分樣本上,重復1,2,3,4,遞歸地構(gòu)建車輛故障診斷模型;
[0085] 6、遞歸構(gòu)建車輛故障診斷模型僅當下列條件之一成立時停止:a給定節(jié)點的所有 數(shù)據(jù)樣本屬于同一故障類型;b沒有剩余車輛零部件參數(shù)可W用來進一步劃分樣本;C給定 的分支沒有數(shù)據(jù)樣本。
[0086] 7、對于創(chuàng)建好的車輛故障診斷模型,采用后剪枝方法W消除數(shù)據(jù)中的噪聲和孤立 點帶來的訓練異常。
[0087] 其中決策樹算法中選擇所有參數(shù)中具有最大增益率的參數(shù)t方法如下:
[008引設(shè)數(shù)據(jù)樣本集合共有n個,分別為{ Sl,S2,S3,…Sn},故障類型共m種,分別為Cl,C2, C3,…Cm,屬于不同故障類型的樣本數(shù)據(jù)分別為^,92,93,-'9",且滿足乙91 = 11。
[0089] 其中,自助樣本Di是訓練元組和它相應(yīng)類標號的集合,即(SI, Cl), (S2,C2),(S3, Cs )......( Sm, Cm) O
[0090] 假定,對于數(shù)據(jù)樣本集合中的任一參數(shù)R的信息增益用Gain(R)表示;增益率用 GainRate(R)表示;自助樣本Di上,參數(shù)R的分裂信息用SpliInfOR(Di)表示,則參數(shù)R的增益 率:
[0091 ] GainRate(R) =Gain(R)/SpliInfOR(Di);
[0092] 其中,Gain(R) = Info(Di)-InfOR化i);
[0093] Info(Di) = -Epilog2(pi) = -E (qi/n)log2(qi/n);
[0094] 對數(shù)據(jù)樣本集合{sl,S2,S3,…Sn}的參數(shù)R,當R是離散值:設(shè)R包含V個不同值,時尋化 劃分成V個子集{Dii,Di2,Di3, '''Divl。
[0095] 分別統(tǒng)計屬于{Dii ,Di2,Di3,???Div}樣本中各故障類型的總數(shù),分別記為rii ,;ri2, ri3 , ? , rim ; T21, T22 , T23 , ? , TSm ; TSl , T32 , T33 , , TSm ;......Tvl, ;Tv2,1\3 ,…,Tvm;
[0096] 分別統(tǒng)計屬于{Dil,化2,化3,…化V}樣本中對應(yīng)的數(shù)據(jù)樣本的總數(shù),分別記為Xl,X2, X3 , ... ,Xv;
[0097] 對R的劃分計算子集的期望信息:
[009引 InfOR(^Di) = E ((xi/n)*(-E (;Tij/xi)*log2(:rij/xi)));
[0099] 對R的劃分計算子集的分裂信息:
[0100] SpliInfOR(Di) = -E (xi/n)*log2(xi/n);
[0101] 遍歷所有參數(shù),獲得對集合{ SI,S2,S3,…Sn}具有最大增益率的參數(shù)t。
[0102] 對數(shù)據(jù)樣本集合^1,32,33,一3。}的參數(shù)1?,當1?是連續(xù)值:構(gòu)造集合1?:{>1,^, r3,...,ri},其中 1 蘭n;
[010;3]用r*= (;Ti+;ri+i)/2對集合作一個劃分:Ri= {ri ,r2,r3,…ri},R2= {ri+i,ri+2, ri+3,,,,,ri},使化中的元素均小于:t*,R2中的元素大于等于r*;
[0104] 分別統(tǒng)計屬于Ri、R2的樣本中各故障類型的總數(shù),分別記為rii,ri2,ri3,…,rim;r2i, T22,r23,…,r2m;
[0105] 分別統(tǒng)計屬于Rl、R2的樣本中對應(yīng)的數(shù)據(jù)樣本的總數(shù),分別記為XII,X12,X13,…, Xli;X21 ,X22 ,X23 ,-- - ,X21 ;
[0106] 對勺劃分計算子集的期望信息:
[0107] 似)) = (Xiii,/|.i)*(-X(n.i,''x!)i)*!〇g2(n.i/xm))+(x 心如^ roi = E rii,r〇2 = E r2i,XOi = E Xii,X02 = E X2i;
[0108] 對r*的劃分計算子集的分裂信息:
[0109] S!觸.姐(V'(Di)= -(Xo 如)刊雌2(攝如)-(誠/〇)-1〇呂-如(.?;?;其中 XOi= Exii,x〇2= Ex2i;
[0110] 遍歷r*= (ri+ri+i)/2,i = 1,2,3,, 1-1.記使劃分子集GainRate(T)最大的r*為r W,此時,對用參數(shù)R的對集合{31,32,33,一38}進行劃分,具有最大的增益率;
[0111] 遍歷所有參數(shù),獲得對集合{31,32,33,一38}具有最大增益率的參數(shù)*和劃分點*^。
[0112] 為了更清晰地說明車輛故障診斷模型的構(gòu)建過程,現(xiàn)結(jié)合附圖3-a和圖3-b做進一 步解釋:
[0113] 假設(shè)車輛故障數(shù)據(jù)樣本中D包含參數(shù)A、B、C、E…….;
[0114] 如果參數(shù)的屬性值是離散值,請參閱附圖3-a,首先計算出各個參數(shù)的增益率,選 擇具有最大增益率的參數(shù)作為決策樹的根結(jié)點。假定參數(shù)A的增益率最大,那么A作為決策 樹的根結(jié)點開始劃分,設(shè)A有V個屬性值{al,a2,a3,…av},對A的每個已知值a追幡一個分支, 在每一個分支上,由a如示記的所有的車輛故障數(shù)據(jù)樣本町都具有相同的A值,所W在下一步 劃分中不需要考慮參數(shù)A,只需在町上繼續(xù)計算除參數(shù)A外其他參數(shù)的增益率,再從中選擇 具有最大增益率的參數(shù)B作為下一個劃分結(jié)點,依次按照同樣的方法繼續(xù)劃分,直至化中所 有車輛故障數(shù)據(jù)樣本都屬于同一故障類時停止。
[0115] 如果參數(shù)的屬性值是連續(xù)值,如圖3-b所示,首先遍歷所有參數(shù),獲得對車輛故障 數(shù)據(jù)樣本集合D具有最大增益率的參數(shù)t和劃分點tM段定所有參數(shù)中,參數(shù)A在劃分點別勺 增益率最大,那么A為決策樹的根結(jié)點,A《a勺日A>a^3參數(shù)A的兩個分支,兩個分支分別對應(yīng) 的車輛故障數(shù)據(jù)樣本為化和化。再在化和化中按照同樣的方法依次劃分,直至化和化中所有 車輛故障數(shù)據(jù)樣本都屬于同一故障類時停止。
[0116] 步驟3:評估預(yù)測
[0117] 對實時采集到的新能源汽車車輛故障數(shù)據(jù),重復步驟1,對處理后的數(shù)據(jù)利用步驟 2創(chuàng)建的k個車輛故障模型Ml,使用組合投票的方法進行故障診斷:
[0118] 1、初始化每個車輛故障診斷模型Mi的權(quán)重為0;
[0119] 2、計算每個車輛故障診斷模型Mi的權(quán)重為Wi = log(e;r;ro;r(Mi)/(I-Giror(Mi)));
[0120] 3、如果車輛故障診斷模型Mi對車輛故障數(shù)據(jù)樣本Si診斷為故障類型Cl,那么車輛 故障數(shù)據(jù)樣本Si屬于故障類型Cl的權(quán)重就為Wi;
[0121] 4、k個車輛故障診斷模型Mi都對車輛故障數(shù)據(jù)樣本Si進行故障診斷,即組合投票, 最后返回具有最大權(quán)重和的故障類。
[0122] 最后通過人機交互界面將采集到的某條車輛故障數(shù)據(jù)及其對應(yīng)的故障類顯示出 現(xiàn),技術(shù)人員根據(jù)運些數(shù)據(jù)可W判定哪臺車哪個零部件已經(jīng)發(fā)生故障或者即將發(fā)生故障, 對于已經(jīng)發(fā)生故障的車輛可W幫助售后人員定位故障位置;對于即將發(fā)生故障的車輛可W 及時通知售后人員盡早處理,防止故障惡化而產(chǎn)生重大事故。從而保證了車輛的安全運營。 例如,當采集到一條車輛故障數(shù)據(jù),經(jīng)過處理中屯、處理后,在人機交互界面上顯示其被預(yù)測 為電池過溫故障,運時現(xiàn)場售后人員就可W及時檢查下電池接線是否有問題,冷卻系統(tǒng)是 否有問題,避免了因問題未被及時發(fā)現(xiàn)而電池又持續(xù)過溫工作導致電池著火、甚至車輛著 火等安全事故的發(fā)生。
[0123] 本發(fā)明的一種基于數(shù)據(jù)挖掘的車輛故障診斷系統(tǒng)的實施例
[0124] 本實施例中故障診斷系統(tǒng)包括數(shù)據(jù)采集處理模塊、故障診斷模型構(gòu)建模塊和評估 預(yù)測模塊,數(shù)據(jù)采集處理模塊用于采集車輛故障數(shù)據(jù),包括車輛發(fā)生故障時各零部件的相 關(guān)參數(shù)數(shù)據(jù),W得到具有故障類標記的車輛故障數(shù)據(jù)集D,D中包含n個車輛故障數(shù)據(jù)樣本 {31,32,33^-3。};故障診斷模型構(gòu)建模塊用于構(gòu)建故障診斷模型;評估預(yù)測模塊用于根據(jù) 所構(gòu)建的k個故障診斷模型對實時采集到的車輛故障數(shù)據(jù)采用組合投票的方法進行故障診 斷。其中故障診斷模型構(gòu)建模塊的構(gòu)建過程如下:
[0125] A).初始化每個數(shù)據(jù)樣本的權(quán)重為1/n;
[0126] B).根據(jù)數(shù)據(jù)樣本的權(quán)重從D中有放回抽樣,得到包含n個車輛故障數(shù)據(jù)樣本的車 輛故障數(shù)據(jù)集化;
[0127] C).在每個車輛故障數(shù)據(jù)集化上構(gòu)建一個車輛故障診斷模型Mi(i = 1,2,…,k),并 計算Mi的錯誤率error (Mi)
[012 引
[0129] 其中,err佔)是數(shù)據(jù)樣本S撕誤分類誤差:如果S鼎誤分類,則err山)為1;否則 它為0; Wi為數(shù)據(jù)樣本Sj在第i次迭代的權(quán)重;
[0130] D).當error(Mi)大于設(shè)定值時,則轉(zhuǎn)到步驟2.2重新構(gòu)建車輛故障診斷模型;
[0131] E).當error(Mi)小于設(shè)定值,則對化中每個被正確分類的車輛故障數(shù)據(jù)樣本的權(quán) 重乘 W error (Mi) / (1-error (Mi));
[0132] F).重復步驟A)-E)k次,W得到k個車輛故障診斷模型Mi(i = l,2r-,k);
[0133]上述各模塊的【具體實施方式】已在方法的實施例中進行了詳細說明,運里不再寶 述。
【主權(quán)項】
1. 一種基于數(shù)據(jù)挖掘的車輛故障診斷方法,其特征在于,該診斷方法包括以下步驟: 步驟1.采集車輛故障數(shù)據(jù),包括車輛發(fā)生故障時各零部件的相關(guān)參數(shù)數(shù)據(jù),得到具有 故障類標記的車輛故障數(shù)據(jù)集D,D中包含η個車輛故障數(shù)據(jù)樣本{si,S2,S3,…Sn}; 步驟2.構(gòu)建故障診斷模型: 2.1. 初始化每個車輛故障數(shù)據(jù)樣本的權(quán)重為1/n; 2.2. 根據(jù)數(shù)據(jù)樣本的權(quán)重從D中有放回抽樣,得到包含η個車輛故障數(shù)據(jù)樣本的車輛故 障數(shù)據(jù)集Di; 2.3. 在每個車輛故障數(shù)據(jù)集〇1上構(gòu)建一個車輛故障診斷模型1(1 = 1,2,一,1〇,并計算 Mi的錯誤率error (Mi)其中,err(Sj)是數(shù)據(jù)樣本~的誤分類誤差,如果~被誤分類,則errh)為1,否則它為0, Wi為數(shù)據(jù)樣本~在第i次迭代的權(quán)重; 2.4. 當error (Mi)大于設(shè)定值時,則轉(zhuǎn)到步驟2.2重新構(gòu)建車輛故障診斷模型; 2.5. 當error (Mi)小于設(shè)定值,則對Di中每個被正確分類的車輛故障數(shù)據(jù)樣本的權(quán)重乘 以erro;r(Mi)/(l-erro;r(Mi)); 2.6. 重復步驟2.2-2.5k次,以得到k個車輛故障診斷模型Mi (i = 1,2,…,k); 步驟3.利用所構(gòu)建的k個故障診斷模型對實時采集到的車輛故障數(shù)據(jù)采用組合投票的 方法進行故障診斷。2. 根據(jù)權(quán)利要求1所述的基于數(shù)據(jù)挖掘的車輛故障診斷方法,其特征在于,所述步驟 2.3采用決策樹算法在每個車輛故障數(shù)據(jù)集m上構(gòu)建一個車輛故障診斷模型姐(i = 1,2,…, k),過程如下: A. 創(chuàng)建節(jié)點S; B. 如果01(1 = 1,2,一,1〇中所有數(shù)據(jù)樣本都屬于同一車輛故障類4,則返回5作為葉節(jié) 點,并標記為故障類型A; C. 否則,選擇所有參數(shù)中具有最大增益率的參數(shù)t,將參數(shù)t做為節(jié)點S的測試參數(shù); D. 對測試參數(shù)t的每個區(qū)間劃分創(chuàng)建一個分支,并據(jù)此劃分樣本; E. 在每一個劃分樣本上,重復步驟A-D,遞歸地構(gòu)建車輛故障診斷模型,直至給定節(jié)點 的所有數(shù)據(jù)樣本屬于同一故障類型,或者沒有剩余車輛零部件參數(shù)可以用來進一步劃分樣 本,或者給定的分支沒有數(shù)據(jù)樣本。3. 根據(jù)權(quán)利要求2所述的基于數(shù)據(jù)挖掘的車輛故障診斷方法,其特征在于,所述步驟C 中最大增益率參數(shù)t指的是對故障數(shù)據(jù)樣本{81,82,83,一&}具有增大增益率的參數(shù),參數(shù)七 的增益率為: GainRate(t) = Gain(t)/SpliInf〇t(Di) 其中GainRate(t)為參數(shù)t的增益率,Gain(t)為參數(shù)t的信息增益,Splilnfot(Di)為參 數(shù)t的分裂信息。4. 根據(jù)權(quán)利要求3所述的基于數(shù)據(jù)挖掘的車輛故障診斷方法,其特征在于,對于構(gòu)建好 的車輛故障診斷模型還需采用后剪枝方法進行處理,以消除數(shù)據(jù)中的噪聲和孤立點帶來的 訓練異常。5. 根據(jù)權(quán)利要求1所述的基于數(shù)據(jù)挖掘的車輛故障診斷方法,其特征在于,所述步驟3) 中組合投票故障診斷包括以下步驟: a. 將每個車輛故障診斷模型Mi的權(quán)重初始化為0; b. 計算每個車輛故障診斷模型Mi的權(quán)重Wi, ffi=log(error(Mi)/(l-error(Mi))); c .如果車輛故障診斷模型1對車輛故障數(shù)據(jù)樣本Sl診斷為故障類型(^,車輛故障數(shù)據(jù) 樣本Si屬于故障類型Ci的權(quán)重就為Wi; d. k個車輛故障診斷模型I都對車輛故障數(shù)據(jù)樣本81進行故障診斷,即組合投票,最后 返回具有最大權(quán)重和的故障類。6. 根據(jù)權(quán)利要求1所述的基于數(shù)據(jù)挖掘的車輛故障診斷方法,其特征在于,步驟1還包 括對采集到的車輛故障數(shù)據(jù)進行預(yù)處理的過程,包括使用數(shù)據(jù)清理方法消除故障數(shù)據(jù)噪聲 和處理空缺值;使用數(shù)據(jù)歸約方法對車輛故障數(shù)據(jù)進行維歸約,以減少隨機變量和屬性的 個數(shù)。7. -種基于數(shù)據(jù)挖掘的車輛故障診斷系統(tǒng),其特征在于,該故障診斷系統(tǒng)包括數(shù)據(jù)采 集處理模塊、故障診斷模型構(gòu)建模塊和評估預(yù)測模塊, 所述數(shù)據(jù)采集處理模塊用于采集車輛故障數(shù)據(jù),包括車輛發(fā)生故障時各零部件的相關(guān) 參數(shù)數(shù)據(jù),以得到具有故障類標記的車輛故障數(shù)據(jù)集D,D中包含η個車輛故障數(shù)據(jù)樣本{S1, S2,S3,-"Sn}; 所述故障診斷模型構(gòu)建模塊用于構(gòu)建故障診斷模型,其構(gòu)建過程如下: A) .初始化每個數(shù)據(jù)樣本的權(quán)重為1/n; B) .根據(jù)數(shù)據(jù)樣本的權(quán)重從D中有放回抽樣,得到包含η個車輛故障數(shù)據(jù)樣本的車輛故 障數(shù)據(jù)集Di; C) .在每個車輛故障數(shù)據(jù)集Di上構(gòu)建一個車輛故障診斷模型Mi(i = l,2,…,k),并計算 Mi的錯誤率error (Mi)其中,err(Sj)是數(shù)據(jù)樣本~的誤分類誤差,如果~被誤分類,則errh)為1;否則它為0, Wi為數(shù)據(jù)樣本~在第i次迭代的權(quán)重; 0).當61'1'〇1'(1^)大于設(shè)定值時,則轉(zhuǎn)到步驟2.2重新構(gòu)建車輛故障診斷模型; E) .當error(Mi)小于設(shè)定值,則對Di中每個被正確分類的車輛故障數(shù)據(jù)樣本的權(quán)重乘 以erro;r(Mi)/(l-erro;r(Mi)); F) .重復步驟A)-E)k次,以得到k個車輛故障診斷模型姐(i = 1,2,…,k); 所述的評估預(yù)測模塊用于根據(jù)所構(gòu)建的k個故障診斷模型對實時采集到的車輛故障數(shù) 據(jù)采用組合投票的方法進行故障診斷。8. 根據(jù)權(quán)利要求7所述的基于數(shù)據(jù)挖掘的車輛故障診斷系統(tǒng),其特征在于,所述的故障 診斷模型構(gòu)建模塊采用決策樹算法在每個車輛故障數(shù)據(jù)集 〇1上構(gòu)建一個車輛故障診斷模 型Mi(i = l,2,…,k),過程如下: A. 創(chuàng)建節(jié)點S; B. 如果01(1 = 1,2,一,1〇中所有數(shù)據(jù)樣本都屬于同一車輛故障類4,則返回5作為葉節(jié) 點,并標記為故障類型A; C. 否則,選擇所有參數(shù)中具有最大增益率的參數(shù)t,參數(shù)t成為節(jié)點S的"測試"參數(shù); D. 對測試參數(shù)t的每個區(qū)間劃分創(chuàng)建一個分支,并據(jù)此劃分樣本; E. 在每一個劃分樣本上,重復步驟A-D,遞歸地構(gòu)建車輛故障診斷模型,直至給定節(jié)點 的所有數(shù)據(jù)樣本屬于同一故障類型,或者沒有剩余車輛零部件參數(shù)可以用來進一步劃分樣 本,或者給定的分支沒有數(shù)據(jù)樣本。9. 根據(jù)權(quán)利要求7所述的基于數(shù)據(jù)挖掘的車輛故障診斷系統(tǒng),其特征在于,所述評估檢 測模塊采用組合投票進行故障診斷的過程如下: a. 將每個車輛故障診斷模型Mi的權(quán)重初始化為0; b. 計算每個每個車輛故障診斷模型Mi的權(quán)重Wi, ffi=log(error(Mi)/(l-error(Mi))); c. 如果車輛故障診斷模型1對車輛故障數(shù)據(jù)樣本Sl診斷為故障類型匕,那么車輛故障 數(shù)據(jù)樣本81屬于故障類型G的權(quán)重就為I; d. k個車輛故障診斷模型I都對車輛故障數(shù)據(jù)樣本81進行故障診斷,即組合投票,最后 返回具有最大權(quán)重和的故障類。10. 根據(jù)權(quán)利要求7所述的基于數(shù)據(jù)挖掘的車輛故障診斷系統(tǒng),其特征在于,所述采集 處理模塊還用于對采集到的車輛故障數(shù)據(jù)進行預(yù)處理,包括使用數(shù)據(jù)清理方法消除故障數(shù) 據(jù)噪聲和處理空缺值;使用數(shù)據(jù)歸約方法對車輛故障數(shù)據(jù)進行維歸約,以減少隨機變量和 屬性的個數(shù)。
【文檔編號】G06F17/30GK105955233SQ201610279367
【公開日】2016年9月21日
【申請日】2016年4月28日
【發(fā)明人】王亞松, 彭能嶺, 李振山, 趙亞濤, 徐陽, 趙清, 陳爽, 張永瑞
【申請人】鄭州宇通客車股份有限公司