基于案例推理的车辆故障诊断系统

时间:2022-08-31 03:40:30

基于案例推理的车辆故障诊断系统

摘要:基于案例推理(CBR)应用时关键的问题是案例的组织及案例之间的相似度比较。故障诊断是我们生产生活中常遇到的问题,通常解决方法是通过我们的经验分析产生结果的种种可能原因,从中得到产生故障的可能性,进而解决问题。该文采用基于案例推理的方法来解决故障诊断问题,并使用TROLLCREEK(Tore Brede, Frode Sormo,2004)系统来解决实际的汽车故障定位问题。

关键词:基于案例推理;故障诊断

中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)13-3495-02

The Fault Diagnosis System with Case-based Reasoning

XU Jin-guo, CHENG Guo-jian

(School of Computer Science, Xi'an Shiyou University, Xi'an 710061, China)

Abstract: The essential questions of the applications of case-based reasoning (CBR) are the case organization and the similarity comparison between the cases. The fault diagnosis is often encountered in our production and daily life, the usual solution is analyzes all of possible reasons through ours experience, get the possible reasons of the failure, thus solving the problem. This paper introduced the using of fault diagnosis problem based on the case-based reasoning, and uses the TROLLCREEK system to solve the actual problems of the car start problem.

Key words: case-based reasoning; fault diagnosis

故障是指产生障碍或事故而停止运作。这是工作、生活中常见的问题,如电器故障、汽车故障、电脑故障等等,处理这类问题时我们主要是通过实际经验来定位故障发生的位置、可能的情况,进而一步步的进行排除,最终发现问题所在,排除故障。

本文提出一种基于案例推理的故障诊断方法。首先建立一个所要诊断系统的模型,为系统中各个要素之间建立关系,进而生成一个因果关系网,使得系统可以进行因果关系推理,然后输入若干已经解决的案例,生成较全面的案例库,出现新案例的时候系统可以通过对比的方法在案例库中找到最相似的几个案例,从而给出解决的方法。

使用的程序是TROLLCREEK系统。首先对系统进行建模,建立各个要素之间的关系,建立案例库,然后输入故障案例,依据其与已有案例的相似性给出建议解,从而实现自动故障诊断。主要讨论在故障诊断过程中,如何使用基于案例推理(CBR)的方法进行分析、构造模型、解决问题。

1 基于案例推理

现实世界有些问题往往较为复杂,致使我们不能使用数学模拟的方法来解决。一些简单的限制条件在我们建模的时候也许变得很难实现。此时我们的另一个方案就是使用基于案例推理的方法。它是通过搜寻过去解决相似问题的经验而得到解决新问题的方法和线索。通过这种方法可以帮助我们解决许多问题。

基于案例推理是人工智能中发展比较成熟的一个分支,它是在特定的领域里提取推理的关键特征,存储过去已解决的案例,对新的案例和已解决的案例进行相似度比较得到结果的推理方法。一个典型的CBR系统如图1所示。

一个基于案例推理系统的关键部分为因果关系模型的建立、相似度算法的实现、案例库的存储和检索。

因果关系模型是在专业领域知识的基础上建立的,将专业领域中所涉及到的知识存储到模型中,对知识进行分类并且互相联系起来形成一个分析链,进而可以进行推理和匹配。首先需要提取重要的知识特征,即所有可能产生故障的因素,也是出现故障时需要用户提供的参数,然后依据专业领域的知识定义因果关系并且为每一个因果关系定义强度(位于0和1之间),最终形成一个可以推理的因果关系模型。

比较新案例和已有案例之间的相似度,从中选出最相似的案例,进而得到解决方法。相似度算法的描述如下:

设案例集合:C={C1,C2,…,Ci},第i个案例的属性集为{C1i,C2i,…,Cni},目标案例Ci和案例库中已有案例Cr之间的相似度,其中:n为案例属性的个数,wj∈[0,1] 为第i个属性的权值,属性相似度sim(Cji,Cjr)∈[0,1],p为直接匹配(即两个案例的特征属性值相同),q为间接匹配(即两个案例的某些特征属性通过关系模型可达到同一结果)。

案例库要存储已解决的案例。一个案例必须包含问题描述和解决方法,问题描述是各特征属性的值,解决方法是某个确定状态。

故障诊断是我们生产生活中经常碰到的问题,如汽车故障诊断,电器故障诊断,医学的疾病诊断等等,通常需要专业领域的专家,通过实践经验的积累,观察和分析故障的特征和数据,进而得出问题的所在位置和解决的方法。由于需要具有丰富经验的专家进行诊断,限制了对问题的解决时间和地点,不利于及时排除故障,通过智能化的故障诊断系统可以克服以上弊端,一旦建立好系统后,通过不断的自学习,可以使得诊断趋于准确。

2 实验系统的建立

TrollCreek(Tore Brede, Frode Sormo,2004)是一个有智能推理能力的基于案例推理的系统知识编辑器。使用它创建一个故障诊断系统的步骤为:完善一个因果关系推理模型,加入已解决案例,输入新案例进行分析和推理,得到结果,确认结果。

编辑因果关系推理模型是整个系统的基础和主要部分,分为增加节点,建立层次结构,建立因果关系模型。首先从准备创建的领域中抽取重要的特征项,将它们作为节点加入到系统,然后将各特征项的相关状态添加到系统中,接下来完善所有节点的层次结构,形成一个分类的层次结构(例如图2所示的一个模型),进一步将系统故障的各种状态作为节点加入到因果关系中,将它和层次结构征项的状态节点使用因果关系强度联系起来建立因果关系模型,最终形成一个层次化的因果关系推理模型。

加入已解决的案例是将已有的案例的各状态和结论添加到系统中,形成案例库。现有的已解决案例越多,后期系统的推理结果越准确。

输入新案例进行推理是对新输入的未解决案例和已解决的所有案例进行相似度比较,按相似度的大小进行排序,列出最接近的10个案例。

确认结果是将此推理出的结果进行实际验证,如果相符则将其标记为已解决状态,将其添加到案例库中。

3 测试与分析

我们建立一个汽车启动故障诊断的因果关系推理模型,包括两个部分,首先建立层次结构,其次建立因果关系。

建立层次结构是指整个汽车启动过程中的所有相关的特征项作为节点加入到层次结构图中。和汽车启动有关的几个条件:发动机状态、电池状态、供电系统状态、燃油状态、燃油系统状态。对应于每个状态有许多可能,例如对于发动机状态有:正常,不运转,不打火,转动缓慢等,将所有的特征项加入完后形成图2这样的层次结构。

建立因果关系是根据实际的因果关系将各个有因果关系的状态使用强度联系起来形成因果关系模型。如电池电量低可能引起灯光不亮,马达不转,通常会引起马达转动缓慢等等。将所有的因果关系通过节点状态连接起来,最终便形成了完善的因果关系推理模型。

将已求解过的案例加入案例库。

输入新的待解决案例,使用系统进行自动匹配,得出结果。如图3。

如上所示,系统和已经解决的三个案例进行相似度比较,按照相似度大小顺序列出和已有案例的分析比较结果。随着解决案例的增加,可比较的案例及相似度更高的案例就会出现,给我们提供的分析结果就更加准确。

4 总结

基于案例推理原理比较简单,但是实现起来有较大难度,如知识的获取方法,案例的表示方法,相似度的全面比较方法等等。而使用以上的系统可以在很多领域中比较简单和清晰的建立一个推理系统。经过实践可以取得较准确的结果。

参考文献:

[1] 史忠植.高级人工智能[M].2版.北京:科学出版社,2006.

[2] 周涵.基于范例学习的内燃机产品设计系统[D].北京:石油大学,1993.

[3] 赵钢.基于范例推理技术及其在降水过程预测中的应用[D].北京:中国科学院计算技术研究所,1995.

[4] Trollcreek, Brede T, Sormo F, et al. Seksjon for Intelligente Systemer[EB/OL].dionysus.idi.ntnu.no/creeekdistro.

上一篇:基于FPGA的图像字符叠加器设计 下一篇:Hspice软件在时钟产生电路设计中的应用