基于本体和规则的计算机故障诊断研究

2013-01-16 09:20濮逸佳杜宏伟
电子设计工程 2013年8期
关键词:散热片计算机硬件风扇

濮逸佳,杜宏伟

(江苏科技大学 计算机科学与工程学院,江苏 镇江 212003)

目前,计算机的普及率越来越高,应用范围也越来越广,但由于各种原因,在使用过程中,计算机故障也随之产生,给用户带来了极大不便。怎样有效地进行计算机故障诊断,快速准确地判断故障原因,找到故障排除方法,减少给生活和工作造成的影响,成为人们亟待解决的问题。文献[1]基于故障树实现计算机确定性故障诊断,基于BP神经网络实现不确定性故障诊断。文献[2]构建计算机维护本体,利用Jena推理,设计了一个计算机维护信息检索系统。文献[3]基于贝叶斯网络设计了一个电子设备故障诊断系统。文献[4]建立了一种基于案例推理技术的装备故障诊断系统等。通过分析发现,现有计算机故障诊断系统缺乏知识的共享和复用,以及自动语义推理和扩展功能,为解决这些问题,本文引入了基于语义的解决方案。

我们认为语义网语言及技术,尤其是本体和规则,能解决现有的语义鸿沟,其主要原因是:

1)本体和规则能明确和正式地表达领域知识,本体和规则又可用语义表达语言OWL,SWRL和RDF来形式化。本体,源于哲学,是探索存在的知识[5],有助于知识共享和重用。SWRL(Semantic Web Rule Language)是以语义的方式呈现规则的一种语言。SWRL语言集本体和规则于一体,能够提供更强的逻辑表达能力。目前SWRL已经成为W3C的规范之一[6]。这些语言的特点是高度的表达能力和建模能力,它们能用准确合理的方式,形式化一个复杂的模型。

2)OWL本体和SWRL规则能用逻辑推理机进行处理。利用SWRL规则对本体中的语义信息进一步推理和扩展,能满足使用者提高故障诊断系统智能化的需求。

综合以上分析,文中提出了一种基于本体和规则的计算机故障诊断系统。文中构建了计算机硬件的OWL本体以及相关的 SWRL(Semantic Web Rule Language)规则,并在此基础上运用Jess推理引擎实现了计算机故障诊断的应用模型。在智能化的计算机故障诊断系统辅助下,售后服务人员、计算机维修人员和用户诊断故障的效率和准确率将会大大提高,并且易于推广到其他设备的故障诊断中,具有重要的现实意义和应用价值。

1 基于本体和规则的计算机故障诊断系统框架

文中研究的系统用于诊断计算机故障,能根据计算机的故障现象,通过基于本体和规则的推理,快速判断故障原因,提供用户故障排除方法,系统框架如图1所示。

图1 计算机故障诊断系统框架图Fig.1 Framework of computer fault diagnosis system

1)计算机故障诊断领域本体是整个系统的概念基础,提供了本体的层次结构,也是构建规则的基础。

2)计算机故障诊断本体知识库用于支持本体的标准框架。用OWL DL构建本体,本体主要构成元素是概念,属性和实例。还包含了领域本体经过描述逻辑推理后的隐含信息。

3)使用基于描述逻辑的本体推理机——RACER[7]对本体进行推理,从而检验本体一致性,发现隐含信息,建立更好的层次关系,使OWL知识库中信息完整。

4)SWRL是基于本体的规则语言。结合本体的概念,属性和实例,构建起SWRL规则库。

5)调用SWRLJESS TAB插件将OWL知识库转换为Jess事实库,将SWRL规则库转换为Jess规则库。

6)运用Jess推理机,结合事实库和规则库,进行推理,得出新的事实。

7)更新和扩充本体知识库。调用SWRLJESSTAB插件将Jess推理出的结果进行格式转换并保存。

2 计算机故障诊断本体建模

本系统目的是能帮助人们快速判断故障原因,找到故障排除方法,保障各项工作顺利进行。本体研究的对象是计算机故障诊断知识。计算机故障诊断本体的目标用户是:计算机用户和计算机维护人员。系统的数据来源主要是电脑维修书籍,还从网络上收集补充了一些信息。由于计算机组成和诊断的复杂性和本文篇幅的局限性,本文构建的本体主要从计算机硬件入手。

2.1 本体概念的定义

计算机运行中,经常会由于某些硬件故障或软件故障无法运行,严重影响计算机的正常使用。计算机硬件故障是指计算机中的板卡不见及外部设备等硬件发生接触不良、性能下降、电路元件损坏或机械方面的问题引起的故障[8]。本体的类通常也被称为概念,计算机硬件是指计算机的物理部件,在定义计算机本体概念时,从其主要部件组成出发,采用由顶向下法建立概念层次。硬件系统通常由CPU(中央处理器)、存储器(包括内存、硬盘等)、输入设备(键盘、鼠标等)、输出设备(显示器、打印机、音箱等)、接口设备(主板、显卡、网卡、声卡、光驱)等组成。针对以上特点,本研究构建本体主要包括:计算机硬件、诊断维修工具和状态,计算机硬件又分为CPU及其散热风扇、存储器、输入设备、输出设备、接口设备、电源这6个类。具体的分类如图2所示。

图2 计算机硬件类分类层次Fig.2 Classification level of computer hardware

2.2 本体属性的建立

计算机硬件故障通常导致无法开机,系统无法启动、某个设备无法正常运行、死机、蓝屏等故障现象,严重时常常伴着发烫、鸣响、电火花等现象。因此,计算机本体的属性主要是为了描述计算机可能涉及的以上各种故障现象如:死机、蓝屏、发烫、鸣响等。一个诊断规则的body部分属性关系以A(x,y)的谓词形式定义,其中A代表一个故障现象的谓词,x和y则是变量,OWL 实例或数据值。 例如:isSilent(x,y)表示无声现象;表示有噪声现象。

诊断规则的head部分属性以 C(x,y)的形式定义,其中C代表了一个排除故障的动作或操作的谓词,x和y也是变量,OWL实例或数据值。例如Replace(x,y)表示更换操作属性,Clean(x,y)表示清理操作属性,Adjust(x,y)表示调整操作属性。建立属性时,还要限定定义域和值域的范围。

实例是本体中用于描述具体语义概念的原语[9]。建好本体的概念和属性后,继续完成实例的创建。创建实例的过程是:首先确定一个类,然后输入实例名,最后选择或填写相关属性的值。

3 基于SWRL的计算机故障诊断规则构建

3.1SWRL 规则构建

在语义网中,用SWRL规则支持规则系统互操作性。SWRL允许用户编写Horn-like规则,以本体为基础,利用本体实例和属性建立Atom子句,这些子句再组成Imp中的head和body,最后组成推理式[10]。规则能用于从现存的OWL知识库中推断出新的知识。

SWRL规则推理OWL实例,主要依据OWL类和属性。例如,一个SWRL规则表达了:a person with a male sibling has a brother, 要求在 OWL 中捕获概念 ‘person’, ‘male’,‘sibling’ 和‘brother’。 直观地,person 和 male 概念能用一个OWL类来记录,这个OWL类叫Person,有一个子类Man;sibling和brother关系可用OWL属性hasSibling和has Brother来表达,它们附属于Person。在SWRL中的规则是:

Person (?x1) hasSibling (?x1,?x2) Man (?x2) →hasBrother(?x1,?x2)

以上关系在OWL中则不能实现。可以看出,本体和规则的结合,克服了OWL DL在推理上的缺陷,提供了更强大的知识表示和推理能力。

3.2 计算机故障诊断规则构建

在已经建立的计算机故障诊断本体的基础上,构建诊断规则。下面根据具体的计算机故障诊断规则的建立过程,进行说明。对《电脑软硬件维修从入门到精通》一书进行知识抽取,CPU散热类故障中出现的CPU温度过高,电脑死机,或黑屏等现象,主要原因有两个:(1)CPU散热风扇的问题,可以通过更换散热风扇或重新安装散热风扇解决;(2)CPU散热片问题,散热片和CPU接触不良,可重新安装CPU散热片,并在散热片上涂上硅胶。

1)CPU散热风扇问题,更换散热风扇解决方案:

CPU (y) ∧hasPart (x,y) ∧isCrash (x,True) ∧hasTemperature(y,high)∧hasPart(y,z)→isAbnormal(y,z) (1)

isCrash (x,True) ∧siAbnormal (y,z) →Replace (z,Screwdriver_1) (2)

计算机为 x,CPU为 y,high状态用于描述温度过高。isCrash属性表示电脑死机,hasTemperature属性表示CPU温度过高,hasPart属性连接y与z,表示y有散热风扇z,最后推出isAbnormal属性所表示的z不正常现象。而故障排除方法即为Replace属性表示的,用螺丝刀更换散热风扇z。其中,螺丝刀直接用实例Screwdriver_1表示,作为属性Replace的一个参数,这样可以提高推理的效率。

重新安装散热风扇解决方案:

CPU (y) ∧hasPart (x,y) ∧isCrash (x,True) ∧hasTemperature (y,high)∧hasPart (y,z)∧isNormal (y,z)→isNotInstallInPlace(y,z)(3)

isCrash(x,True)∧isNotInstallInplace(y,z)→Reinstall(z,Screwdriver_1)(4)

此规则表示散热风扇运转正常,可能是散热风扇安装不到位,故障排除方法为重新安装散热风扇,使用工具为螺丝刀。

2)CPU散热片问题,散热片和CPU接触不良:

CPU (y) ∧hasPart (x,y) ∧isCrash (x,True) ∧hasTemperature (y,high)∧hasPart (y,z)∧isNormal (y,z)∧isInstallInPlace(y,z)→isPoorContacted(y,Heat_sink_1) (5)

isCrash (x,True) ∧isPoorContacted (y,Heat_sink_1) →Reinstall(Heat_sink_1,Screwdriver_1) (6)

Reinstall (Heat_sink_1,Scrwdriver_1) →Coat(Heat_sink_1,Silica_gel_1) (7)

这3条规则描述了原因二,检查散热片和CPU是否接触良好,如果接触不良,要重新安装CPU散热片,并在散热片上涂上硅胶。isPoorContacted属性用于表示接触不良,此处描述了CPU和散热片接触不良。Coat属性表示操作涂抹,此处是描述在散热片上涂抹硅胶。Coat属性中的两个参数Heat_sink_1(散热片),Silica_gel_1(硅胶)均以实例的形式写入规则。

根据以上规则建立的原理和标准,建立了计算机硬件故障诊断规则,如图3所示。

图3 计算机故障诊断规则(部分)Fig.3 SWRL rules of computer fault diagnosis(portion)

4 基于SWRL的计算机故障推理实现

4.1 推理引擎Jess

大量规则引擎用Java工作,并且许多是可用的开放资源软件。目前并没有专门针对SWRL的推理机,常用的推理引擎有JESS、Prolog、CLIPS等。我们选择Jess做SWRL的推理引擎,因为它与Java无缝工作,有广泛的用户基础,有很多文档,容易使用和配置,并且Jess小巧、灵活,与CLIPS兼容,是已知规则引擎中最快的。Jess系统由一个规则库,一个事实库和一个推理机组成[11]。推理机匹配事实库中的事实与规则库中的规则。这些规则能断言新的事实,并把它们放入事实库或者执行Java功能。

4.2 计算机故障推理过程

文中的计算机本体和规则是在本体创建软件 Protégé 3.4.7和插件SWRL Editor的基础上构建起来的。SWRL Editor整合了JESS规则引擎。一旦相关的OWL概念和SWRL规则在Jess里被表示,Jess规则引擎就能执行推理。随着规则激活,新的Jess事实被插入到事实库。这些事实在未来的推理中用到。当推理过程结束,这些事实就被转变为OWL知识。

在SWRL编辑器和Jess规则引擎间的互动是用户驱动的。OWL知识和SWRL规则转化为Jess,用这些知识和规则执行推理,和作为结果的Jess事实再转化回OWL知识形式的 Protégé-OWL,都是用户在控制。

按下OWL+SWRL—>Jess按钮,启动事实和规则转换。图4为运行结果,已将OWL知识和SWRL规则转化为Jess,转换规则为32条,转换概念为48个,转换实例为25个,转换公理为128个。

接着利用Run Jess按钮执行推理,推理结果如图5显示。推理出35个公理,如图6所示。

图4 转换结果Fig.4 Results of transfering

图5 推理结果Fig.5 Results of reasoning

图6 推出的公理Fig.6 Inferred axioms

5 结 论

文中提出了一种基于本体和规则的计算机故障诊断系统,构建了计算机硬件的OWL本体,便于知识的共享和复用。构建了相关的SWRL规则,解决了现有计算机故障诊断系统缺乏自动语义推理和扩展功能的问题。 并在此基础上运用Jess推理引擎实现了计算机故障推理诊断。试验表明,该方法能根据计算机故障现象判断故障原因,提供排除故障方法,基本达到了故障诊断的要求。但计算机故障诊断是个非常复杂的过程,涉及的元素也很复杂,本文仅是根据最基本的元素,实现了相对简单的规则推理,故障诊断。因此,下一步的工作主要是:完善计算机故障诊断本体库和SWRL规则知识库,提高故障诊断的准确性;利用本体的共享和通用性,将计算机故障诊断规则推广到通用设备故障诊断中,以适应社会和科学的发展需要。

[1]赵建伟.计算机故障诊断专家系统[D].河北:河北大学,2010.

[2]张洁.基于本体的信息检索系统建模与实现[D].扬州:扬州大学,2009.

[3]樊宁,高凤岐.基于贝叶斯网络的电子设备故障诊断技术研究[J].仪表技术,2010(9):51-52.FAN Ning,GAO Feng-qi.Research of electron devices based on bayesian network fault diagnosis technology[J].Instrumentation Technology,2010(9):51-52.

[4]吴建军,郭坚毅,廖捷.一种基于案例推理的装备故障诊断技术 [J].解放军理工大学学报:自然科学版,2009,10(z1):43-45.WU Jian-jun,GUO Jian-yi,LIAO Jie.Faultdiagnosis technique for equipment based on cased-based reasoning[J].Journal of PLA University of Science and Technology:Natural Science Edition,2009,10(z1):43-45.

[5]Kuan M.Using SWRL and OWL DL to develop an inference system for courses scheduling[D].Department of Information Management of Chung Yuan Christian University,2004.

[6]Horrocks I,Patel-Schneider P F,Boley H.SWRL:a semantic web rule language combining OWL and RuleML[EB/OL].[2010-10-10].http://www.w3.org/Submission/SWRL.

[7]Volker H, Ralf M, Michael W.RACER.User’S guide and reference manual version 1.7.19[M].Concordia University Computer Science Department,2004:20-23.

[8]熊巧玲.电脑软硬件维修从入门到精通[M].北京:科学出版社,2010.

[9]Chi Y L.Ontology-based curriculum content sequencing system with semantic rules[J]. Expert System with Applications,2009,36(4):7838-7847.

[10]柴艳妹,夏天,朱建明,等.本体推理在智能照片管理系统中的应用[J].计算机工程,2011,37(12):2.CHAI Yan-mei,XIA Tian,ZHU Jian-min,et al.Application of ontology inference in intelligent photo management system[J].Computer Engineering,2011,37(12):2.

[11]Busquet A R,Brewka L J,Soler J,et al.OWL ontologies and SWRL rules applied to energy management[C]//2011 UKSim 13th International Conference on Modelling and Simulation.Denmark:Technical University of Denmark,2011:449.

猜你喜欢
散热片计算机硬件风扇
基于Unity的计算机硬件组装仿真教学系统设计
买NVMe M.2要注意散热
浅析基于医院特点的计算机硬件维护研究
计算机硬件设备驱动程序分析
改性塑料棒材挤出机上用的冷却装置
中职计算机硬件课程教学策略探讨
散热片热水管路安装连接方式问题及改进建议
散热片在电子产品中的设计分析与研究
电风扇
基于智能手机控制风扇运行的实现