基于案例推理的流动式起重机故障诊断系统设计
2017-03-31陈洁
陈洁
摘 要:该文研究了基于案例推理的专家诊断模型中的关键技术——故障案例库的建立、故障案例检索、故障案例的重用,研究探讨了案例检索机制中字符串相似度的计算方法,建立了故障检索机制的模型。结合实际工作的需要,设计实现了一个基于案例推理(CBR)的流动式起重机故障诊断系统,系统以基于案例推理的诊断技术为基础,采用关系型数据库存储数据,实现了流动式起重机械的故障诊断。
关键词:案例推理 流动式起重机 故障诊断
中图分类号:TP277 文献标识码:A 文章编号:1672-3791(2016)11(b)-0054-03
流动式起重机是臂架类起重机械中无轨运行的起重设备。随着国家经济建设的高速发展以及投资主体多元化、设备租赁市场的迅速发展,流动式起重机数量激增。流动式起重机械所产生故障的原因很多并且原因间相互交织、影响,因此对流动式起重机进行故障诊断较为困难。
基于案例推理是人工智能领域的一个重要的基于知识的问题求解和学习方法,利用已有的经验和案例去解决新问题,大大简化知识获取;在新问题与历史案例之间不完全匹配时可以给出相似解。因此,在流动式起重机械故障诊断中采用案例推理技术成为较好的解决方案。该文采用基于案例推理技术,对流动式起重机械进行故障诊断,建立基于案例推理的故障诊断系统,解决了流动式起重机故障诊断存在的种种问题。
1 基于案例推理的故障诊断系统设计
1.1 系统功能
将流动式起重机作为研究对象,采用基于案例推理的故障诊断方法,将以往维修和检验中流动式起重机所存在和处理过的故障,描述成由故障的特征集和解决方案组成的故障案例,存储在所建立故障案例库中;然后在故障案例库中搜索与新故障最相似的案例,把系统的建议解应用于新故障,如果建议解不能解决故障时则必须对建议解进行修正,得到新故障的解决方案,并充实到故障案例库中,实现案例推理的自学习过程。通过基于案例推理技术,实现了流动式起重机械故障诊断的便捷性和实用性。程序功能框图如图1所示。
1.2 系統功能模块
该系统按照程序的功能,划分为起重机故障案例管理模块、案例推理模块和参数配置模块,如图2所示。在起重机故障案例管理模块中,通过Access数据库,采用SQL语言,实现案例库的读取、显示、修改、添加和删除功能。案例推理模块同样从案例库中读取案例,然后采用加权编辑距离方法,实现案例推理;然后根据案例重用的策略,决定是否将新匹配的案例添加到案例库(见图3)。在参数配置模块中,可以设置案例匹配的权值,以及案例配置的相似度值,并管理案例库的位置以及案例库的关键词及项目。
2 基于案例推理的故障诊断系统关键技术
2.1 故障案例库的设计
案例的结构和内容对案例推理起至关重要的作用。案例的表达要遵循一定的规则,形成规范的结构,以便于以后的检索和匹配。一个案例可以由多个属性构成,用集合表示为以表示案例内容的特征集合,其中属性又可以根据需要进一步细分为。按照这种属性结构,一个案例由多个层次的属性构成,整个案例库则由不同属性层次上的案例关联构成。
案例的表达通常包括案例描述和解决方案等。流动式起重机故障案例表示的主要目标是通过案例表示使检验和维护人员得到相应的故障信息(包括故障现象、发生位置、原因等)。因此流动式起重机故障案例应包括:(1)故障的基本特征信息,如,故障现象、发生状态、发生位置等。(2)解决方案信息,主要包括故障说明、解决故障方法。案例库由所收集的案例组成,具有良好的组织方式和索引方法,是有效推理的关键。关系数据库在案例表示中广泛应用,是通过案例的主要属性进行数据存储。流动式起重机故障案例结构为:案例编号,序列号,故障环境信息,故障信息描述。其中,故障环境信息是指流动式起重机故障出现的状态、部位等信息,如,流动式起重机在回转时,回转不到位。故障信息描述是指流动式起重机故障发生后,所观察到的故障信息及解决故障的方法。利用关系数据库结合上述分析来建立案例库,具体见表1和表2。
2.2 故障案例的检索技术
案例的检索就是从案例库中按照相应的检索机制检索出与实际案例相似的案例。两级相似匹配是目前应用较为广泛的相似性检索策略,该文的案例检索就是采用该策略。两级相似匹配方法:第一,对流动式起重机械的故障特征进行相似匹配;第二,对案例的整体进行相似匹配;第三,生成相似匹配的案例集,对将新生成的案例存储到案例库中,实现案例的重用。经过两级相似匹配得出的相似案例在数量上得到相应的减少,但在相似案例诊断结果的正确性上有很大的提高。案例的匹配执行流程见图4。
2.2.1 案例匹配输入参数
案例匹配有3个关键输入参数:故障类型、故障位置和故障描述。其中,故障类型是选择项目,一共有机械系统、液压系统和电气系统3种。在流动式起重机发生故障时,故障的类型容易定位和分类,只要按照故障的形式选择相应的类型即可。另外两个参数(故障位置和故障描述),可根据故障发生的位置及故障的具体内容输入关键现象的描述即可。
以流动式起重机吊钩产生裂纹为例说明案例匹配的过程。首先,吊钩属于机械系统,先在故障类型中选择“机械系统”,然后在故障位置编辑框中输入“吊钩”,接着在故障描述编辑框中输入“裂纹”。在进行案例匹配时,系统自动导入案例库,启动案例匹配引擎,进行案例匹配计算。
2.2.2 案例匹配计算
案例匹配计算的核心算法是Levenshtein距离匹配算法。Levenshtein距离匹配算法是计算两个字符串之间的最小编辑距离的算法,所谓的最小编辑距离就是把字符串A通过添加、删除、替换字符的方式转变成B所需要的最少步骤。这种Levenshtein距离匹配算法在实际应用中有个问题,就是当两个字符串长度相差较大的时候,得出来的结果会比较长,且两个字符串的相似度会较低。以故障描述字符串“裂纹”为例,系统将逐个读取系统案例库中所有的案例,并提取案例的故障描述字符段,以读取到案例中含有“表面有裂纹”为例,如果直接按照Levenshtein距离匹配算法,其相似度计算结果为0.4,显然在实际匹配的过程中,“裂纹”的字符串应该是被包含在“表面有裂纹”的字符串中,显然这样的匹配并不准确。算法改进如下:
式中:SL为Levenshtein距离匹配算法得到的相似度;为字符串长度最大值。这样新计算出来的相似度为0.92,改进后的算法能够显著改善字符串包含情况下的匹配的准确度。
一个故障包含了多个关键字段,多个字段与案例库中的案例进行逐一匹配,每个字段都得到相应的相似度值,在进行最终的案例匹配时,需要对多个字符串的相似度进行综合。为了提高计算精度,降低计算的复杂性,相似度综合采用了加权平均算法。算法如下:
式中:为故障位置与案例库中的某个案例的相似度值;为故障描述与该案例的相似度值;、分别为故障位置和故障描述的权重。软件中主要匹配两个字符串:故障位置和故障描述。首先对匹配进行归一化处理,再乘上相应的权重和(其中,由用户进行设置,默认情况下,两个权重均为0.5);然后将实际案例与案例库中的某个案例的相似度与相似度的阈值(用户设置,默认值为0.6)进行比较,如果相似度大于阈值,则认为匹配成功,反之,则表明案例库中的该案例与实际输入的案例不匹配。
3 结语
该文研究了流动式起重机械故障案例库的建立、故障案例检索、故障案例的重用等基于案例推理的故障诊断关键技术,研究探讨了案例检索机制中字符串相似度的计算方法,建立了流动式起重机械故障检索机制的模型。结合实际工作的需要,设计实现了一个基于案例推理(CBR)的流动式起重机故障诊断系统,系统以基于案例推理的诊断技术为基础,采用关系型数据库存储数据,实现了流动式起重机械的故障诊断。
参考文献
[1]王丽,娄建安,赵维霞.基于案例的智能维修训练系统[J].测试技术,2006,25(2):73-74.
[2]何庆飞,王汉功,陈小虎.故障树分析法在汽车起重机液压系统故障诊断中的应用[J].机床与液压,2008,36(2):196-198.
[3]罗天洪,杨彩霞,孙冬梅.基于故障树的汽车起重机液压故障诊断专家系统[J].机械科学与技术,2013(4):538-544.