基于运维数据挖掘的高速列车配置设计技术研究
2023-11-01魏永杰马术文张海柱
魏永杰, 马术文, 张海柱, 黎 荣, 何 旭
(西南交通大学 机械工程学院,成都 610031,E-mail: zhanghaizhu@swjtu.edu.cn)
高速列车是一个按订单设计(Engineering-To-Order,ETO)的复杂产品系统,并且面临着复杂的服役环境和运行工况。产品配置设计是实现高速列车这一典型复杂ETO产品定制设计的关键技术之一,通过对预定义组件及相关设计知识建模与重用来实现产品定制[1]。然而,在高速列车产品配置设计时需考虑不同运行工况对产品功能、性能的影响,进行合理的差异化定制,否则会使得产品难以适应不同的运行工况,导致产品设计预期性能与实际运行性能间出现较大的差异。但目前配置设计方法很少考虑到实际产品上线运行后所面临的多样化运行工况对配置设计的影响。那么,随着高速列车在多工况下运行和维修数据的不断积累,如何从中有效地挖掘出多运行工况与产品配置设计相关的知识,是实现高速列车配置设计的关键问题。
目前,围绕产品运维数据的挖掘和使用多以产品故障诊断和预测为目的[2],如周斌等人[3]利用FP-Growth算法挖掘动车组历史运维数据,获取故障诊断知识,从而指导列车后续的维修维护;叶永伟等人[4]利用Apriori算法获取卸船机关联规则组,建立故障预测模型,并根据关联规则状态的改变来进行故障预测。相比之下,将产品在运维阶段产生的大量数据反馈至产品设计阶段中,通过迭代生命周期后期数据来提高设计质量的研究还处于起步阶段,如Zhang等人[5]根据装载机在典型工况下的作业数据,进行变速箱的多目标优化设计,在保证动力性前提下获得具有最佳燃油经济性的优化方案;Ni等人[6]提出了QFD与Apriori相结合的零部件供应商选择方法,挖掘了客户信息、环境因素和零部件故障模式间的关联规则,从而有针对性的进行供应商选择决策;李金萍等人[7]分析了元故障-故障原因-设计质量特性间的关联关系并构建了扩展关联模型,从而得到关键质量特性的重要度排序,提高产品的设计质量。
针对上述问题与现状,本文提出一种基于运维数据挖掘的高速列车配置设计技术,利用FP-Growth算法从海量运维数据中提取产品配置实例与运行工况间的关联规则,并借助产生式表示法形成实例配置规则;在此基础上提出基于置信度的配置规则冲突消解与更新策略,进而建立配置规则库并嵌入到高速列车产品设计平台中,辅助设计人员进行高速列车产品配置设计。
1 高速列车配置设计技术框架
在现有基于实例推理的高速列车配置设计流程中,所配置的零部件实例的特征主要包含性能、结构特征[8],而较少关注列车相关零部件实际运行表现与运行工况间的关联性。因此本文采用关联规则挖掘技术,从高速列车运维数据中挖掘出与产品实际运行性能有关的设计知识,提高配置设计效率与设计质量,总体技术框架如图1所示,分为三个阶段:①运维数据预处理,对获取的高速列车运维数据进行清洗、特征选择等,作为后续关联规则集获取的数据基础;②关联规则集获取,构建关联规则约束并基于提升度获取最优算法参数,从而在海量列车运维数据中挖掘并形成配置实例-运行工况关联规则集;③配置规则库构建,利用产生式知识表示法实现关联规则到配置规则的转换,并基于置信度完成配置规则的冲突消解与更新,最终形成配置规则库,嵌入到高速列车产品设计平台中,辅助设计人员完成配置设计任务。
图1 基于运维数据挖掘的高速列车配置设计技术框架
2 基于FP-Growth的关联规则集获取
2.1 关联规则挖掘基本理论
关联规则挖掘作为数据挖掘中重要的研究方法之一,起初是为了分析顾客的购物偏好,目前在交通运输[9]、制造业[10]等领域也得到了广泛应用。借助关联规则挖掘算法可以从由高速列车运维事务组成的数据集D中,挖掘出满足最小支持度MinSup与最小置信度Mincon的配置实例-运行工况关联规则。可用形如A=>B的蕴含式进行表达,意味着A的发生可能会导致B的发生,一般采用支持度与置信度对规则进行度量,相关定义如下。
(1) 支持度:支持度Sup可以表征关联规则的普遍性,定义为包含项集A、B的事务数与数据集D事务总数之比,计算式如下。
(1)
(2) 置信度:置信度Con可以衡量关联规则的可信程度,定义为包含项集A、B的事务数与包含项集A的事务数之比,计算式如下。
(2)
(3) 强关联规则:关联规则挖掘的目的是从数据集中获取强关联规则,若规则A=>B满足Sup(A=>B) ≥Minsup、Con(A=>B) ≥Mincon,则称其为强关联规则,否则为弱关联规则。
根据挖掘策略的不同,关联规则挖掘算法可分为广度优先算法、深度优先算法、增量式更新算法等[11]。在深度优先算法的研究中,Han等人提出了FP-Growth算法[12],该算法的思想是将原始数据映射到FP-tree中,形成一个高度压缩的数据结构,将挖掘频繁项集的任务转化为FP-tree的构建与搜索,整个过程中仅需扫描原始数据库两次,相较于传统Apriori算法而言效率更高。
同时,在高速列车的运维数据中存在相同零部件出现在不同的运维数据中,即同一项目被包含在不同的事务里,因此在构建FP-tree的过程中它们的路径会出现重叠。对于FP-Growth算法而言,生成频繁项集需要依赖于FP-tree的根节点到其子节点所对应的路径,因此项目的重叠路径越多,FP-tree的压缩效果越好,算法的时间与空间复杂度也将有所降低,因此本文选择FP-Growth作为高速列车配置实例-运行工况关联规则挖掘方法。
2.2 关联规则约束构建
对高速列车不同零部件配置实例运行表现与运行工况间展开关联分析,可以看作是在特定约束条件下进行关联规则挖掘,而挖掘所得的配置实例-运行工况关联规则形如:R:{
Input:高速列车运维事务集D,最小支持度Minsup,最小置信度Mincon。
Step1:第一次扫描事务集D,计算各项的支持度并根据支持度排序,去除支持度小于Minsup的非频繁项,获取频繁1-项集并建立项目头表L。
Step2:第二次扫描事务集D,按照表L对各事务中的项目进行排序,获得排序后的事务集D′,构建FP-tree根节点,并将事务集D′中的事务逐个添加到FP-tree中。
Step3:从FP-tree中提取出各频繁项的条件模式基并构造各频繁项的子FP-tree,基于此挖掘出包含该项且支持度不小于Minsup的频繁项集。
Step4:设置关联规则约束,基于频繁项集生成符合约束条件的关联规则,提取出置信度不小于Mincon的强关联规则。
Output:高速列车配置实例-运行工况关联规则。
2.3 挖掘参数设置
由FP-Growth算法的原理可知,Minsup与Mincon是其主要参数,不同的参数组合对挖掘过程中FP-tree的大小、频繁项集与关联规则的数量和质量有显著的影响[13],因此设置合适的参数将有助于挖掘出高价值的信息。而在现有的关联规则挖掘研究中,其参数的选择多是根据经验而定,没有设置参数阈值的标准。为了降低参数选择的主观性,本文利用关联规则的平均提升度作为参数设置优劣的评价指标,以获取最佳的参数组合。其中提升度L作为综合支持度与置信度的指标,能够体现关联规则前后项间的相关性,计算式如下。
(3)
当提升度L(A=>B)>1时,表示规则前后项间具有正相关性,提升度越大相关性越强,意味着在当前参数设置下,所挖掘的规则具有较高的参考价值。
3 高速列车配置规则库构建
高速列车配置设计的主要任务是选择合适的零部件实例并进行组合[14],以获得满足设计标准与客户需求的定制化产品。现有的产品设计平台在配置实例求解的过程中需要依赖于配置知识库[15],而配置规则作为其中主要的配置知识,包括变量配置规则、产品装配约束规则与版本有效性规则[16]。其中变量配置规则的作用是在配置产品时,根据配置变量的取值来实例化产品模型中的零部件,后两者则是用于确定零部件的装配关系以及具体的实例版本。为了保证配置规则易于表达和使用,一般采用产生式表示法对其进行描述,其定义为:
3.1 配置规则构建
本文借助FP-Growth算法可以获得大量零部件配置实例与运行工况间的关联规则,可作为变量配置规则辅助设计人员在不同工况下选择合适的零部件配置实例。而为了便于规则理解与使用,需借助产生式表示法对其进行处理,并使用置信度来进行度量,处理策略如图2所示。
图2 配置规则构建算法
3.2 配置规则冲突消解
由于所得配置规则数量较多,其中会存在一些相互冲突或冗余的规则,如规则后项一致而前项不同,因此有必要进行冲突消解,从冲突规则中选取一条规则作为首选配置规则,以便于设计人员的使用。冲突消解常用的方法是给规则进行排序,并依次取出。排序的方法需根据具体问题而定,本文选择配置规则的置信度CF作为排序的依据,即若配置规则间存在冲突,则CF高的将作为首选配置规则,冲突消解策略如图3所示。
图3 配置规则冲突消解算法
3.3 配置规则库更新
随着数据的不断积累,所获得的配置规则也将发生变化,因此需要对配置规则库进行更新,去除失效规则,更新策略如图4所示。
图4 配置规则库更新算法
4 实例研究
4.1 数据预处理
本文的数据集为某主机厂提供的2009年~2013年间高速列车故障及维修汇总表,每条数据由故障设备、故障原因、维修措施等29项特征组成,部分数据如表1所示(由于保密性要求,隐去部分信息)。由于数据主要由维修人员手动上传,其中存在部分冗余值、缺失值等异常数据问题。同时为了满足算法的数据要求,需要对原始数据进行预处理,主要包括数据清洗、特征选择与数据离散。
表1 原始故障数据示例
(1) 数据清洗
数据清洗是关联规则挖掘的第一步,目的为检查和验证数据[17],提高数据质量,最常用的方法是删除异常数据或用适当的值对缺失数据进行填充。本文的数据清洗过程主要分为异常值检查、缺失数据处理与重复数据删除,其中针对存在缺失值等其他异常数据问题,若异常字段对于关联规则挖掘具有重要的影响如运行线路、故障设备等,采用直接删除此条记录的方法,否则采用空白字符进行填充处理。
(2) 特征选择
高速列车运维数据特征较多,为了降低算法的搜索空间,需要选择有价值的特征进行挖掘。本文的目的是获取多工况下与产品零部件设计相关的知识,因此选择车型、故障现象、故障设备、故障原因、故障等级、故障时间、运行里程、运行线路八个特征项组成数据集作为关联规则挖掘的对象。
(3) 数据离散
高速列车运维数据中包含有部分数值特征项,如故障发生时间、运行里程,这些特征项不能直接使用FP-Growth算法进行挖掘,需要先对其进行离散处理,离散化后的结果如表2所示,其中运行里程是根据高速列车的检修周期而定[18]。
表2 数据离散化表
将原始数据进行预处理后,共得到运维数据记录7 086条,基于此形成高速列车运维事务集,其中包含轴箱、轮对、齿轮箱、空气弹簧等列车关键零部件运维信息,部分高速列车运维事务如表3所示。
表3 高速列车运维事务集示例
4.2 关联规则挖掘与配置规则构建
(1) 关联规则约束构建
为了获取高速列车配置实例与运行工况间的关联规则,需要建立不同类别的规则约束形式,从而指导关联规则挖掘,结合本文的预期挖掘目标以及对高速列车运维数据的特征分析,建立的规则约束如表4所示。
表4 关联规则约束示例
(2) FP-Growth参数优化
为了获取最佳的算法参数,本文选择关联规则的平均提升度作为参数组合优劣的评价标准,测试结果如图5所示,可得最佳的参数设置为:Minsup=0.01、Mincon=0.6。
图5 参数寻优结果
(3) 关联规则挖掘与配置规则构建
在Python3.9的环境下,利用FP-Growth算法挖掘处理后的高速列车运维事务集,共获得配置实例-运行工况关联规则384条。为了便于关联规则的入库与使用,利用产生式表示法对所获取的关联规则进行处理,形成最初的配置规则库;之后基于本文所提出的冲突消解策略对配置规则进行处理并剔除无效规则,从而形成无冲突的配置规则库,按照不同的规则类别进行分类,部分规则如表5所示。
表5 规则处理示例
4.3 高速列车齿轮箱设计实例验证
将处理后的配置规则库导入到高速列车产品设计平台中,规则查看与管理界面如图6所示。在以往的产品设计平台中高速列车配置设计的主要方法是基于实例属性相似度进行产品模块实例匹配。以齿轮箱为例,主要考虑许用功率、传动比与中心距等参数与技术指标间的匹配程度,从而确定最优实例选择,在求解过程中未考虑实际运行工况对产品配置实例的影响。而本文通过处理高速列车运维数据,获取零部件实际性能表现与运行工况间的关系,形成模块实例配置规则库,辅助设计人员完成配置设计任务。
图6 配置规则管理与应用
如图6所示,在基于传统的相似度匹配算法获得备选的齿轮箱实例后,系统通过识别目前工作流中的设计对象、实例参数以及对应的设计指标,形成查询条件如<齿轮箱>
5 结论
针对高速列车配置设计缺乏考虑多运行工况的影响,本文提出了一种基于运维数据挖掘的高速列车配置设计技术。首先,建立了高速列车配置设计总体技术架构;然后,基于FP-Growth算法挖掘了高速列车零部件实例与不同运行工况间的关联规则集并形成配置规则,构建零部件实例配置规则库并嵌入到高速列车设计平台;最后,以高速列车齿轮箱设计为应用验证实例,表明了本文所提方法能够将现有的高速列车运维数据中所蕴含的设计信息反馈到配置设计阶段,辅助设计人员做出有针对性的研发决策。未来随着高速列车运维数据的不断增加,将进一步修正和完善关联规则提取的算法,不断更新配置规则库,提高配置设计的合理性。