改进的ID3算法在机车检修作业流程中的应用

2010-05-08 08:44李建磊刘凤娟
铁路计算机应用 2010年10期
关键词:决策树机车增益

李建磊,刘凤娟

(1.兰州交通大学 机电技术研究所,兰州 730070;2.西安铁路职业技术学院 电气工程系,西安 710014)

随着铁路高速化、重载化、信息化的发展,机车检修的任务变得越来越重,如何从庞大的故障数据中提取出有价值的检修信息,显得格外重要。机车检修要严格按照铁道部机务局颁布的标准,如机统28、机统6等标准,这样才能够全面掌握机车检修作业情况。但是,面对繁重的检修任务,特别是针对一些频繁发生的故障,就要通过合理的方法进行分类,找到频繁检修路径,予以重点关注,进而提高检修效率。

在数据挖掘中,分类挖掘技术的方法很多,其中ID3算法是决策树方法中最常用的具体实现算法。最先由Quinlan[1]在1986年提出,后来许多研究者发现ID3算法具有“偏向于取值较多的属性,产生了大数据掩盖小数据的现象”的缺点,为了克服这一缺点, Konenko等人提出了“限制决策树为二叉树”的方法,曲开社等[2]提出了添加“用户兴趣度”的方法,这些都是对ID3算法的改进。文章结合机车检修计划中的“基本影响因子”和“检修评定因子”来改进ID3算法,对机车检修作业流程进行合理的优化,达到在短时间内获得有价值的机车检修作业内容的目的。

1 ID3算法

1.1 ID3算法的概述

ID3算法是决策树生成最常用的具体实现算法。其算法采用信息论中熵的概念,用信息增益(Information Gain)作为决策属性分类判别能力的度量,进行决策树节点属性的选择。在决策树的生成过程中选择具有最大信息增益的决策属性作为决策树的当前节点。通过这种方式选择节点属性可以保证决策树具有最小的分支数量,使得到的决策树冗余最小。但是,这种算法往往在树节点分支阶段趋向于取值较多的属性,许多学者怀疑其分类效果。例如,文献[2]中指出的“穿衣指数”是一个主观因素,相同的天气情况下,老、弱、幼相对于年轻、健壮的人群来说,可能会穿的多一些。虽然“穿衣指数”的取值较多,信息增益较大,而依据实情不能作为决策树的根节点。

在机车检修中,一般来说,存在繁多的检修内容,其取值最多,按照ID3算法,得到属性“检修内容”的信息增益最大, 以此作为决策树的根节点。实际机车检修作业流程步骤是:(1)找到哪些部件有故障;(2)把检修作业分配到相应的班组;(3)班组的工长再把具体的检修任务下达到每个小组中。总之,在调度人员下达任务后,检修作业流程是按照班组来具体施修的,而不是按照具体的施修内容来进行作业的。这是作业流程的具体步骤。

1.2 机车检修的影响因素

通常决策者可以根据经验知识来确定一些影响因素。而在机车检修计划的制定中,主要考虑:基本影响因子X、走行公里因素Y以及动态因素Z对机车检修规定的影响,即:检修评定因子W= F(X,Y,Z)。现假定一辆较好的机车运行在中等路况下,机车的基本影响因子是0.5。基本影响因子可查图1。根据基本影响因子、走行公里因素和动态因素等,再加上机务段实际的状况统计,得出检修评定因子。具体影响因素情况见表1。

表1 某机务段中修的影响因素

结合“基本影响因子”和“检修评定因子”,对ID3算法进行改进,目的是减少取值较多的属性对决策树形成的影响,进而更加符合实际的机车检修作业流程。

1.3 改进ID3算法的具体计算方法

设S是数据训练集,S中类别标识属性有n个不同取值,即定义了n个类Ci, i =1,2,...,n,Ri为数据集S中属于Ci类的子集,用ri表示子集Ri中元组中数量。

集合S中的类别表示属性的期望信息量:

式中,Pi是表示任意样本属于Ci类的概率。

假设属性A中共有m个不同的取值{a1,a2,...,am},则通过属性A的取值可将数据集S划分为m个子集,用sj表示数据集S中属性A的取值为aj的子集,j=1,2,...,m。

如果A被作为决策属性,则这些子集将对应点的不同分枝。用sij表示sj子集中属于Ci类元组的数量,则属性A对于分类Ci的熵:

式中,加入基本影响因子α,来增大机车检修中相关属性因素的权重,减小取值较多属性的影响。此为第1级的改进。

对于属性A每个取值对分类Ci期望信息量:

式中,Pij表示在sj子集中属于Ci类的比重。

通过上述可得到对属性A作为决策分类属性的信息增益:

式中,加入检修评定因子β,来对每一个属性进行机车检修的综合评定。此为第2级的改进。

通过两级改进,有效地避免ID3算法决策树节点偏向于取值较多的属性,从而能够得到与实际机车检修作业流程相符的较为合理的检修步骤。

表2 机车检修数据集

2 改进的ID3算法在机车检修中的实现

2.1 实现方法

(1)建立机车检修的数据集,将数据编排小组,也就是建模的过程;(2)对数据集分析,确定类别表示属性和决策属性集;(3)生成决策树,对决策树进行适当的剪枝。

2.2 具体应用

取表2(数据集进行了预整理)作为训练集,进行决策树的建立,将“无故障”视为正例集,“有故障”视为反例集。选取“故障状态”为类别表示属性,进行ID3算法的改进,探讨机车检修中频繁发生的故障信息,找到重点关注的机车检修路径。

2.2.1 第1级改进

通过计算得到每一属性的信息增益为:

“部件”的信息增益:

IG(部件)=I(r1, r2)-E(部件)=0.0303

“班组”的信息增益:

IG(班组)=I(r1, r2)-E(班组)=0.0477

“小组”的信息增益:

IG(小组)=I(r1, r2)-E(小组)=0.1954

“检修内容”的信息增益:

IG(检修内容)=I(r1, r2)-E(检修内容)=0.9710

对机车检修中的相关属性,且取值较多的属性进行改进,属性“小组”相对于“部件”“班组”的取值较多,在“小组”熵值公式中加入基本影响因子α=0.5。

这样就减小了取值较多属性对于生成目标决策树的影响,避免了大数据掩盖小数据的现象。通过第1级的改进,避免了 ID3算法偏向于取值较多的属性。

2.2.2 第2级改进

属性“检修内容”的信息增益最大,根据机车检修作业流程的具体状况,需要加以改进,符合实际情况。检修评定因子,对每一个属性的影响是不一样的。“部件”、“班组”、“小组”都对检修作业有直接的影响,而“检修内容”是检修的结果,对作业流程来说,不会产生影响。定义“检修内容”的检修评定因子β=-∞,得到“检修内容”的信息增益:通过第2级改进,对属性不能够影响作业流程的环节,从定义检修评定因子上合理进行筛选,提高了有效属性对于机车检修作业流程的重要度。

2.2.3 机车检修决策树

因为属性“班组”的信息增益最大,所以以此作为根节点,建立决策树。得到机车检修决策树,如图2。

图2 机车检修决策树

2.2.4 频繁故障的提取规则

if( 部件为“牵引电动机”、班组为“大电机”、小组为“组装组” )then检修内容;

if( 部件为“转向架”、班组为“台车”、小组为“分解组装组” )then检修内容;

if( 部件为“转向架”、班组为“台车”、小组为“辅件组” )then检修内容;

if( 部件为“柴油机”、班组为“柴组装”、小组为“左侧组” )then检修内容;

if( 部件为“柴油机”、班组为“柴组装”、小组为“右侧组” )then检修内容;

if( 部件为“柴油机”、班组为“柴组装”、小组为“底部组” )then检修内容;

if( 部件为“柴油机”、班组为“柴组装”、小组为“中部组” )then检修内容;

if( 部件为“柴油机”、班组为“柴分解”、小组为“左侧组” )then检修内容;

if( 部件为“柴油机”、班组为“柴分解”、小组为“前后端” )then检修内容。

2.2.5 频繁的机车检修路径

设定频繁系数为0.2,进行剪枝后,从提取规则中得出符合条件的频繁机车检修路径:

a.大电机→牵引电动机→组装组→检修内容;

b.台车→转向架→组装分解组→检修内容;

c.柴组装→柴油机→左侧组→检修内容;

d.柴组装→柴油机→底部组→检修内容;

e.柴分解→柴油机→前后端→检修内容。

文章中所选的数据集中,这5条路径是比较繁忙,是机车检修作业流程中重点作业路径,在有限的作业情况下,可以重点关注。

3 结束语

建立机车检修数据集,找出频繁发生的故障信息,达到“早预测、早报警、早检修”的目的,使机车检修便捷,提高铁路运输的安全。本来可以通过查找历史数据来人工或计算机统计处理,但没有一个相对合理的理论解释,通过数据挖掘的方法进行合理分类,提供了一个理论性的支撑。

文章在检修历史数据中,针对繁重的机车检修任务,从数据挖掘的角度考虑,找出繁忙路径,特别是在时间紧张情况下,迅速调集人力、物力来完成检修作业。这对机车检修作业是一种新的探究。

[1]Quinlan J R. Induction of decision tree[J].Machine Learning,Springer,1986,1(1):81-106.

[2]曲开社,成文丽,王俊红. ID3算法的一种改进算法[J]. 计算机工程与应用,2003(25):104-107.

[3]武 森,高学东,M .巴斯蒂安.数据仓库与数据挖掘[M].北京:冶金工业出版社,2003.

[4]王锐锋,赵俊霞,齐金平,等. 铁路机车检修计划生成系统的研究[J]. 计算机应用与软件,2009,26(2):175-177.

[5]李贤鹏,何松华,赵孝敏,等. 改进的ID3算法在客户流失预测中的应用[J].计算机工程与应用,2009,45(10):242-244.

[6]朱 明. 数据挖掘[M]. 2版 合肥:中国科学技术大学出版社,2008,11.

猜你喜欢
决策树机车增益
大连机车
基于增益调度与光滑切换的倾转旋翼机最优控制
基于单片机的程控增益放大器设计
一种针对不均衡数据集的SVM决策树算法
基于CTC3.0系统机车摘挂功能的实现
基于Multisim10和AD603的程控增益放大器仿真研究
决策树和随机森林方法在管理决策中的应用
一种机车联接箱工艺开发
程控增益射频宽带放大器
基于决策树的出租车乘客出行目的识别