摘要:本文针对汽车故障诊断专家系统中知识库的特点,设计了一种基于Windows 平台的知识库管理系统(Knowledgebase Management System 以下简称KBMS),该系统充分利用了数据库技术,实现了对知识库中知识的存储、增加、删除、修改和查询,以及对知识进行一致性和完整性校验。为汽车故障诊断专家系统的开发和运用奠定了重要基础。
关键词:故障诊断 专家系统 知识库 知识库管理系统
Research on Knowledgebase Management Systemin the Vehicle Fault Diagnose
Chen Zhaoyang, Wang Yongkuan, Zhang Daisheng
Hefei University of Technology
[Abstract] According to the characteristic of knowledgebase in the vehicle fault diagnose expert system,we designed a knowledgebase management system. the system makes fully use of database technology to realize knowledge store、add、delete、modify and seek. Besides, it can also check the consistency and integrality of knowledge .in a word the system establishes a important base of the whole vehicle fault diagnose expert system.
Key words:fault diagnose expert system knowledgebase knowledge base management.
目前,SQL Server 这种基于客户机/服务器模式的关系数据库在各行各业得到了广泛的应用,它在易用性、可伸缩性、可靠性以及数据仓库等方面都有非常明显的优势和特点。基于此以及汽车故障诊断这一特定领域知识的特点,我们选取SQL Server 为汽车故障诊断知识库的构造工具,保证了系统知识库部分的数据量和安全性不断发展的需要,以及知识库管理维护的方便性和知识库、数据库易于移植性的需要,使系统知识库能轻易的和其他数据库系统(如Oracle、Sybase、Excess)进行数据共享。另外,专家系统中的知识库管理系统充分利用了SQL Server 自身强大的知识库管理与维护功能,保证了知识库的数据完整性、一致性及安全性。
表1 中的字段“状态”是指该条记录是否处于激活状态(只有激活的记录才是可用的记录)。如果值为1 表示该条记录处于激活状态,相反,如果其值为0,则表示该条记录有错误,暂时处于静止状态。规则则是表达由一定的前提推出确定的结论的知识,故障诊断中的规则一般都是领域专家从长期的实践经验中得出的规律性的结论。规则的一般形式是:If X Then Y ,这里X 表示前提,Y 表示结论。和实例库一样,规则库也分为发动机、底盘和电器3 部分。每一部分又划分为若干块,每一块对应一个规则表。规则采用表2 的形式记录:
表2 汽车故障诊断规则的存储
知识库中存储的领域专家知识可以由蕴含关系的规则来表达:If X Then (Y,CON),含义为“如果X 成立则有置信度为CON 的结论Y”,上式笛卡尔乘积的形式表示为:。当然故障诊断知识库中的实例库和规则库并不相互独立,相反它们是有密切联系的。运用专家系统中的知识挖掘机制对实例库中的实例进行研究,挖掘出“准”规则,将这些准规则存放到一个临时库中,然后请领域专家对这些规则进行逐一检查,合格的存放到规则库中,不合格的抛弃。整个汽车故障诊断知识库的结构如图1 所示。
图1 汽车故障诊断知识库结构图
3 故障诊断知识库管理系统的总体结构
本文的汽车故障诊断知识库管理系统(KBMS)是以Delphi 5.0 为开发工具,采用SQL Server 为后台数据库而开发的.其总体结构可分为三层,如图2 所示。
汽车故障诊断这一特定领域的特点,决定了故障诊断知识库要管理的知识具有多样性、复杂性以及模糊性等特点。另外,要管理的知识量是庞大的,而且故障诊断的每一步都离不开知识库的支持。因此,知识库中知识的调用、检索和查询效率,知识的一致性维护和完整性检查等都成为知识库管理系统建造的是否成功的关键。本文的知识库管理系统(KBMS)充分利用了关系数据库SQL Server 的知识,实现了对知识的输入、查询、浏览、删除、修改等基本管理;提供知识的一致性、完整性以及亢余检查;实现了数据库形式的知识存储模式。