推理机 (Inference Engine) 是专家系统中实现基于知识推理的核心模块之一。 推理机主要包括推理和控制二个方面, 是知识系统中不可缺少的重要组成部分。 其工作效率的高低直接影响到专家系统的性能。
推理方法推理是根据一定的原则公理或者规则从已知的事实或者判断推出新的事实或者另外的判断的思维过程,其中推理所依据的事实叫做前提或者条件,由前提所推出的新的事实叫做结论。
推理按推理的范围可分为演绎推理和归纳推理;按精确程度分为精确推理与不精确推理;按单调性分为单调推理与非单调推理。
(1)演绎推理和归纳推理
演绎推理是从一般性较大的前提推理出一般性较小的结论的推理方式,它是从具有一般性的原理或原则中推理出关于个别事物的结论,其思维过程是由一般到个别。这种推理方式的结论和前提的联系是必然的,只要前提真实且推理形式正确,则结论一定可靠,但是演绎推理不能增加新知识。
与演绎推理相反,归纳推理是从一般性较小的前提推理出一般性较大的结论的推理方式,其思维方式是从个别到一般。归纳推理的前提是个别的、特殊的知识,和经验、实验直接相关,所以前提、结论的关系在很多情况下不是必然的,其结论的性质有的确实可靠,有的却带有可能性,但归纳推理一般能诞生出新知识。此外,归纳推理还包括完全归纳推理、简单枚举法、科学归纳法、类比法和统计推理等。
总的来说,归纳和演绎是相互联系、相互补充并且密不可分的。演绎离不开归纳,在演绎推理中,作为推理的大前提就是归纳的产物;同样,归纳也离不开演绎,要研究客观对象间的因果关系,分析个别中的一般,总是遵循一般性原理。
(2)精确推理和不精确推理
精确推理是指前提与结论之间有确定的因果关系,并且事实与结论都是确定。演绎推理是以数学逻辑为基础,它所求解的事实与结论之间有明确的因果关系,所以演绎推理是精确推理。但在人类的知识中,有很大一部分都是由主观判断所得出的,是不精确的和含糊的,所以这就要用到不精确的推理。不精确推理是一种基于不精确知识进行推理而得出结论的推理方式,不精确推理一般包括两部分:一个是得出结论,即推理;另一个是计算结论的可信度,即可信度算法。
(3)单调推理和非单调推理
建立在谓词逻辑基础上的推理所得的结果是单调的,也就是说,由推理而得出的真命题数目随着推理时间而严格增加的。但是,人类思维并不是单调的,人们对世界中各种事物的认识、观点处于不断变化和调整之中的。人类在获取新知识的过程中,可能会需要对原有知识加以修改,甚至抛弃,这种推理就是非单调推理。非单调推理的特点是:当公理增加时,公理系统中定理的数目并不一定随之增加,也有可能减少。它的推理方式主要有两种:默认推理和约束推理。1
反向推理策略反向推理也称自顶向下控制、目标驱动控制、后向推理等。反向推理控制策略的基本思想是:在推理过程中首先从目标出发,不断地找出能够满足目标的所有情况、条件,反向地向着最初的情况、条件逼近,重复完成此项工作,直至达到或符合最初的或最原始的情况条件。同正向推理一样,要实现反向推理也需要具备数据库、知识库和推理机三个部分。
反向推理的工作程序为:先假设一个目标,之后在知识库中找出结论部分导致这个目标的知识集合,再检查每条知识的条件部分,如果某条知识的所有条件都能得到满足,或得到内容的匹配,则把当前知识的结论加入当前数据库中,从而该目标被证明;否则把该条知识的条件作为新的子目标,递归上述过程,直至各“与”关系子目标全部、“或”关系子目标有一个出现在数据库,目标得以证明;或者子目标无法进一步分解且数据库无法实现匹配,这个假设目标为假。1
搜索策略专家系统推理机在进行规则匹配操作时,会有以下可能的结果。
(1)有一条规则匹配成功;
(2)没有规则匹配成功;
(3)有两条以上的规则匹配成功。
在推理过程中,如果需要对推理结果做出解释,那么可以建立专家系统解释机构,这将从某种程度上提高了专家系统的性能。根据诊断的知识表示,诊断推理的过程本质上是在网络上以某种搜索策略进行搜索的过程。诊断过程实际就是搜索匹配的过程,专家系统根据输入或选择的值及症状用判断规则引导搜索深入,直到找到一个规则。
搜索策略分为两类:盲目搜索和启发式搜索。盲目搜索不需要前后相关的或有关问题域的专门信息。启发式搜索需要分析问题域的专门信息,即启发式知识,并缩小了搜索空间,从而提高搜索的效率。2