鄒黃剛,趙景順,李彬
(上海理工大學機械工程學院,上海 200093)
汽車是由上萬塊零部件所組成,因具備零件數(shù)量多、測試難、耗時多等特點[1],很難做到全方位檢測;并且大多數(shù)司機缺乏專業(yè)知識,對汽車的故障很難做出準確的判斷。所以,對于檢測人員或司機而言,都急需一套快速而有效的檢測方案,指導其檢修具有重要的意義。
本文以奔馳汽車為對象,首先確定基于ID3 決策樹算法[2]的汽車故障檢修方案;其次進行數(shù)據(jù)相關(guān)的采集,這里數(shù)據(jù)信息采集首先確定好研究對象和目標,選擇合適的模型完成數(shù)據(jù)信息采集;然后利用ID3 算法的相關(guān)原理來對數(shù)據(jù)分析做出預處理以便實施選擇的數(shù)據(jù)挖掘算法[3],最后對結(jié)果加以分析[4],其流程圖如圖1 所示。
圖1 數(shù)據(jù)處理流程
①鑒定故障:通過故障信息,判斷出汽車何種故障。②初步確定好故障類別后,通過詢問車主或查看汽車來進一步收集故障信息。③收集完信息后,進一步評估故障的危害有多大。④查明故障后,按照一般的邏輯順序進一步試驗。⑤校正故障,逐個排除故障原因。⑥重新逐個檢測系統(tǒng)是否正常。如圖2 所示,這六步檢測[5]雖然能做到對汽車故障的全方位排查,但無疑會增加檢修人員工作量,耗費大量的時間與成本,并且也不會給日常檢修提供任何參考。
圖2 汽車故障檢修方案流程
采用ID3 決策樹算法的汽車故障檢測方案設(shè)計過程,如圖3 所示,第一層是視圖層,即用于人機交互使用。第二層是業(yè)務層,即實現(xiàn)邏輯控制。第三層是Model 層,負責有關(guān)軟件功能與數(shù)據(jù)庫系統(tǒng)和文件相互之間的數(shù)據(jù)訪問。使用系統(tǒng)的用戶包含司機和檢修人員。
ID3 算法用于預測分析,通過建立決策樹,得出相關(guān)的檢修方案。構(gòu)造好的決策樹關(guān)鍵在于選擇好劃分屬性。決策樹預測精度取決于所構(gòu)建決策樹的規(guī)模,一般而言,規(guī)模越小的,則其預測精度就越高。但想要構(gòu)造出合理且精度高的決策樹,關(guān)鍵在于選擇恰當?shù)臏y試屬性,而測試屬性的選擇關(guān)鍵在于子集的不純度度量方法查找,即所求的信息增益。
假設(shè)某個信息源集[6],標記為Si,i 取0~n;其自信息量為I(Si),則樣本中的信息熵可以(1)可得,如(1)式所示:'
式中,n 為所有的信息源,p(Si)為Si 的概率。
由前面得出目標信息熵后,再根據(jù)信息增益得出最優(yōu)的測試屬性a,通過信息增益的大小來確定決策樹節(jié)點,依次構(gòu)建決策樹。樣本各屬性的信息增益運算公式如式(2)所示:
式中,a 為樣本X 的屬性;H(X)為信息熵;Ci 是訓練實例;aj 是第j 個屬性的概率。
目前汽車常見故障主要包括:發(fā)動機總成故障、傳動系故障、轉(zhuǎn)向系故障、制動系故障、行走系故障、車身常見故障、電氣系故障等。引起以上故障的主要原因有:①自身存在著易損零件;②零件本身質(zhì)量差異;③汽車消耗品質(zhì)量差異;④汽車使用環(huán)境影響;⑤駕駛技術(shù)和駕駛方法的影響 ;⑥汽車故障診斷技術(shù)和維修技術(shù)的影響 。由此可見,車輛故障現(xiàn)象普遍地產(chǎn)生于車輛的生產(chǎn)、使用、養(yǎng)護和檢修工作的整個過程,對每一個環(huán)節(jié)都應十分注意,才能使車輛在運用工作過程中避免發(fā)生交通事故。屬性A 表示自身是否存在著易損零部件;屬性B 表示零件自身質(zhì)量差異;屬性C 表示汽車消耗品質(zhì)量差異;屬性D 表示駕駛技術(shù)和駕駛方法的因素;屬性E 表示車輛診斷技能和修理技能的影響;屬性F 表示汽車使用環(huán)境。表中“1” 表示“是”,“0”表示“否”。
由于汽車的型號特別多,每種車發(fā)生故障的形式也不同。本文以奔馳車為例,通過向大眾發(fā)送詢問調(diào)查報告的方式來統(tǒng)計出現(xiàn)以上七種故障的奔馳汽車,從而估計一般奔馳車會出現(xiàn)何種故障或者影響其出現(xiàn)故障的主要因素。投出去60 份調(diào)查報告,實際參與人數(shù)返回報告54 份,選取其中符合條件的調(diào)查報告30 份來作為統(tǒng)計數(shù)據(jù),進一步說明ID3 算法是如何進行的。
汽車在使用過程中的故障有很多,現(xiàn)以汽車總成故障為訓練集。數(shù)據(jù)樣本是30 條,故障的有20 條,沒有故障的10 條。所以,根據(jù)(1)式,得故障信息熵是:
然后根據(jù)式(1)、式(2)分別計算各屬性的信息熵和信息增益。同理可得影響因素初始時刻信息熵為:
再根據(jù)式(1)、式(2)分別計算各個影響因素的信息熵和信息增益。
從后期數(shù)據(jù)處理中可以看出,其"制動系故障"屬性信息增益最大,所以該屬性作為決策樹上層的第一個節(jié)點,隨后各屬性增益依次作為下一層節(jié)點。由此可知汽車在使用過程中最常出現(xiàn)的是制動系故障。影響因素表中,其"汽車消耗品質(zhì)量差異"屬性信息增益最大,所以該屬性作為決策樹上層的第一個節(jié)點,由此可知影響制動性故障最大的因素是汽車消耗品質(zhì)量差異。同時考慮各屬性之間的聯(lián)系,再通過分支得到相應節(jié)點,最后得出"車輛故障"最常發(fā)生的是"制動系故障",而“汽車消耗品質(zhì)量差異”是此故障發(fā)生最大影響因素。
由上述訓練樣本結(jié)論可知,面對汽車中的各類故障問題,通過統(tǒng)計相應的信息增益,得到樣本中增益最大的屬性,即能夠得到區(qū)分度較大的特征屬性及其屬性值,從而明確汽車常發(fā)故障及其影響因素。ID3 決策樹算法在以信息增益最高的那個屬性視為一個節(jié)點的開始,隨后進行節(jié)點的分割。每新建一個節(jié)點就會其延長一節(jié),長此以往,一棵完整且合理的決策樹就構(gòu)建完成。而往往那些視為開始節(jié)點的屬性也正是某些反常或故障現(xiàn)象的出現(xiàn)原因。當汽車設(shè)備異?;蚬收习l(fā)生時,經(jīng)過調(diào)ID3 決策樹算法,可得到產(chǎn)生影響該非正?;蚬收习l(fā)生的主要原因,而后技術(shù)人員先對該原因加以檢測。如是由該原因引起的,則對其提供相應保修;反之,對其他因素加以檢測。該方案設(shè)計與對全部原因逐個加以檢測的傳統(tǒng)方法比較,更具科學化、優(yōu)化和快速性,在相當程度上防止了某種非正常發(fā)展成故障現(xiàn)象,進而減少對牽引供電系統(tǒng)運行的負面影響。
本文所提及的ID3 算法旨在簡化汽車檢修模式,從而以最快的方式幫助司機或檢修人員做出檢修方案,避免不必要的浪費。利用ID3 決策樹設(shè)計的決策樹,通過決策樹上的節(jié)點找出汽車上的哪類故障以及出現(xiàn)此類故障的原因,進而幫助司機或檢修人員快速做出較為合理的檢修方案。以汽車各總成故障的數(shù)據(jù)作為訓練集,對ID3 決策樹算法建立決策樹流程加以分析計算,從而知曉其運作機理。