陈宁春
在饲料工艺与设备专家系统中,系统要实现四个主要功能,即饲料机械故障诊断、饲料机械主要技术参数查询、饲料设备查询以及饲料标准查询等。根据领域知识的特点,系统采用了被动型获取知识的方式实现知识的获取,运用了基于框架结构的产生式知识表示法将系统知识形成规则装入知识库,并选用关系型数据库管理系统Microsoft Access 2003实现了知识库。选择基于冲突消解的以正向推理为主,反向推理为辅的混合推理控制策略,运用Microsoft Active Server Pages实现了系统的推理机并创建了友好的人机界面。
饲料工艺与设备专家系统的核心部件主要指两个部分:其一是由饲料工艺与设备的专业知识经过分类组织所形成的知识库,其二为运用知识进行推理时所要遵循的推理机制,简称为推理机。推理是指根据一定的原则(公理或规则)从已知的事实(或判断)推出新的事实(或另外的判断)的思维过程,其中推理所依据的事实叫做前提,由前提所推出的新的事实叫做结论,基于知识推理的计算机实现就构成了专家系统的推理机[1]。对于饲料工艺与设备专家系统而言,推理是以系统中知识库所包含的专业领域知识为前提的,依据一定的规则推导出求解问题的结论的过程。
饲料工艺与设备专家系统性能的高低不仅由知识库中所包含的专业领域知识决定,同时还要受到系统对专业知识的选择和运用能力的制约。推理机之所以成为专家系统核心部件之一,是因为推理机控制着基于知识推理的两个关键性问题,一是系统在求解问题时如何运用推理控制策略来选择知识,二是系统如何通过推理方式实现对知识的应用,具体的机制如图1所示。饲料工艺与设备专家系统采用的是基于框架结构的产生式知识表示法,所以系统采用的推理方式既有基于框架的推理,又有基于规则的推理,是一种混合的推理方式。而系统的推理控制策略主要解决的问题是控制系统在求解问题的过程中对知识的选择所要遵守的规则,也就是要确定推理工作的先后顺序,并根据问题求解的过程中出现的异常情况确定处理的方法,所以选择合适的推理控制策略对系统推理机的实现尤为重要。
图1 推理机的基本工作机制
饲料工艺与设备专家系统有一整套完备而严密的推理机制,其推理的方式已经根据系统采用的知识表示方式确定为基于框架和规则的混合推理方式,对于系统推理控制策略的选择,则主要依据专业领域知识的特性、系统选用的知识表示方法、人类专家对专业领域问题求解的一般思路来决定,下面就系统推理控制策略的选择进行论述。
目前应用于专家系统中的推理控制策略主要有冲突消解策略、正向推理控制策略、反向推理控制策略、混合推理策略、双向推理策略等。
(1)冲突消解策略主要解决如何从多条可用的知识中选出一条合理的知识的问题,简单的冲突消解策略是将多条知识按一定的规则进行优先级排序,排序规则大致有专一性排序、数据排序、就近排序、分块组织、数据冗余限制等几类。冲突消解策略是一种基本的推理控制策略,运用其他的推理控制策略时往往都会涉及到冲突消解策略。
(2)正向推理又称为前向推理、数据驱动控制、自底向上控制等,这种控制策略是根据用户所提供的已知数据通过冲突消解从知识库中选取知识,通过执行选取的知识改变求解的状态,逐步地达到求解问题的目的。正向推理控制策略的优势在于用户可以通过系统主动地提供与求解问题相关的信息,系统可以依据用户所提供的数据能做出快速的反应,但正向推理具有一定的盲目性,在推理时可能进行了很多无助于解决问题的工作,其推理效率较为低下。
(3)反向推理也称为后向推理、目标驱动控制、从顶向下控制等,该控制策略首先设定一个结论,然后调用知识库中有该结论的知识,分别检查这些知识的前提条件是否符合用户的条件,若符合则设定的结论正确,否则继续寻找。反向推理控制策略的优点是方向性强,缺点是初始的结论选择也具有较强的盲目性,对于符合设定目标的知识数目较多的系统就无法快速的得到结论了。
(4)混合推理控制策略是综合运用正向推理和反向推理的控制策略,它首先用正向推理选择初始目标,再用反向推理求解该目标,求解的过程可以反复使用正向推理-反向推理这一过程,利用两头逼近的方法直至问题求解为止。混合推理控制策略的基本算法如下:
这种方法充分的发挥了正向推理和反向推理的优势,有效地回避了正向推理和反向推理的缺陷,加快了推理的速度,提高了推理的效率,是一种较为有效的控制策略。
(5)双向推理控制策略是同时进行正向推理和反向推理,以达到一个中间结果的“接合”。由于双向推理控制策略实现起来比较困难,所以目前还比较少见运用这种推理控制策略的专家系统。
根据各种推理控制策略的优缺点,结合饲料工艺与设备专家系统知识的特点、知识的表示方法以及人类专家解决相关问题的一般思路等诸多因素,系统采用了基于冲突消解的以正向推理为主,反向推理为辅的混合推理控制策略,选择的依据具体如下。
由于饲料工艺与设备专家系统要实现的主要功能为饲料机械故障诊断、饲料机械主要技术参数查询、饲料设备查询以及饲料标准查询,其中的三个查询模块的推理流程相对比较简单,基本上属于精确推理,结合系统采用了产生式知识表示法,系统推理机主要采用了正向推理的控制策略,这样可以充分发挥正向推理控制策略的优势。但在饲料机械故障诊断模块中,由于涉及的设备类型比较多,系统知识库中相关的数据比较繁杂。如在饲料机械故障诊断子模块中,涉及可能出现故障的设备种类有9大类,有68种常见的机械故障,共208种产生机械故障的原因。具体的,粉碎机常见的机械故障归纳起来共有8种故障现象,其中可能造成粉碎机剧烈振动这一故障现象的原因就有10种之多,具体如图2所示;又如图3所示,生产线上出现饲料生产量显著下降,达不到要求的现象时,可能会涉及粉碎机、制粒机、膨胀器、分级筛等四种机械,可能产生这种故障现象的原因多达17种,而且故障的现象有可能是单一机械单一因素导致的结果,也有可能是几种机械多种因素共同作用的结果,这时的故障原因推理属于典型的不精确推理。这时如果系统还只是机械地、简单地运用正向推理进行问题求解,知识启用与执行将会显得比较盲目,系统运行时有可能会执行许多与问题求解无关的操作,这将会耗费大量的时间,导致推理效率低下,直接影响系统的整体性能,因此有必要在正向推理的基础上添加一些新的控制策略,以改善系统推理机的工作效能。
进行饲料机械故障诊断推理时,应该尽可能地模仿人类专家在求解这方面问题时的常规思维方式,人类专家一般会依据经验先核查那些导致故障几率较大的因素,然后依次排查出现相同故障几率较少的因素,这样才能有效地提高故障诊断的效率。因此,系统推理机要解决的问题有两个,一是对导致同一故障现象的所有原因依据经验按照出现几率大小进行排序,二是在排查故障原因时,要按照发生几率从大到小的顺序进行推理。
图2 粉碎机常见故障及原因(部分)
图3 可能造成生产量显著下降所涉及的机械
为了解决第一个问题,系统借助了生产式知识表示法中的可信度因子,在饲料机械故障诊断模块中,产生式知识表示法的表达式如下:
IF<故障原因>,THEN<故障现象><可信度因子>
其中可信度因子(即CF值)表示由故障原因导致故障现象的准确程度。当可信度因子的值比较大时,则表示由该故障原因导致故障现象的几率是比较高的,反之则比较低。将表示导致同一故障现象的所有原因的规则按照可信度因子的大小进行排序也就解决了第一个问题。在进行故障原因诊断的不精确推理时,要解决推理的先后顺序按照各规则可信度因子的值由大到小的顺序进行,就要在正向推理的基础上添加了冲突消解策略,冲突消解的排序策略采用数据排序,按照规则的可信度因子由大到小依次进行选择。通过在正向推理控制策略的基础之上辅助使用了冲突消解控制策略,弥补了正向推理方向性不强的弱点,使系统的推理机得到了进一步的完善。
同时系统在机械故障原因推理这个环节还尝试引入了反向推理控制策略,用户在系统的提示下选择了故障现象后,系统会逐一假设出导致故障现象的多种可能的原因,这一系列的原因已经按照可信度因子由大到小进行了排序,此时用户需要依次逐条地进行排查,直至找出具体的原因,完成“假设-测试”的策略,即反向推理策略。系统采用了基于冲突消解的正向推理为主、反向推理为辅的推理控制策略,综合发挥了三种推理控制策略的优势,极大地改善了推理机的性能。
在饲料工艺与设备专家系统中,因为各个模块的知识会按照各自的框架结构储存于知识库中,知识多采用了产生式知识表示方法,运用的是关系型数据库的二维表进行组织和表述,因此模块中的知识具有很强的层次性和因果关系,这样的方式更接近人类对知识的认识和理解,所以推理的过程基本上采用的是正向推理控制策略。在饲料机械故障诊断模块中,进行故障原因排查时,不仅辅助使用了冲突消解的控制策略,同时还尝试引用了反向推理策略,较好地解决了正向推理盲目性的问题。系统推理的具体过程如图4所示。
在饲料工艺与设备专家系统中采用了基于冲突消解控制策略的以正向推理为主、反向推理为辅的混合推理控制策略。下面以饲料机械故障诊断模块中诊断粉碎机进料口反喷这一故障原因为例说明系统推理控制策略的实现。
在系统主页中选择进入饲料机械故障诊断模块后,首先按照页面提示选择设备名称为粉碎机,确认后在故障现象排查页中选择“进料口反喷”,确认后进入故障原因排查页,其中列举了产生“进料口反喷”这一故障的可能的五种原因,这些原因按照规则的可信度从大到小进行了排列,此时用户需要依据系统假设的五种原因结合生产实际情况可以依次逐条地进行排查,在这个环节系统采用了反向推理控制策略,目的在于通过与用户的交互提高推理的速度和效率,最后系统将会根据用户的选择在诊断结果页中显示推理的过程及系统诊断的排除故障的应对措施。具体的推理过程如图5所示。
图4 饲料工艺与设备专家系统推理流程
图5 粉碎机进料口反喷故障诊断推理过程
饲料工艺与设备专家系统依据专业知识的特点、系统知识表示的方式、人类专家解决相关问题的一般思路、系统所要实现的主要功能,系统采取了以正向推理为主的推理控制策略,由于考虑到饲料机械故障诊断模块属于典型的不精确推理系统,在运用正向推理控制策略时同时导入了冲突消解的控制策略,同时在机械故障原因推理环节还运用了反向推理控制策略,综合运用这三种推理控制策略,有利于改善正向推理目的性不强、效率过低的弱点,充分发挥了正、反向推理各自的优点,完善系统的推理控制策略,提升了系统推理机的性能。