4.9 基于规则的演绎系统的几个问题

  1.正向系统和逆向系统特点对比
  该表总结了正向系统和逆向系统各自不同的特点,由于二者很相似,因此应该注意二者相同和不相同的部分,以免在使用时混淆。

 
正 向 系 统
逆 向 系 统
使用条件 (1)事实表达式是任意形式
(2)规则形式为
L→W
或L1∨L2→W
(L为单文字,W为任意形式)
(3)目标公式为文字析取形
(1)事实表达式是文字合取形式
(2)规则形式为
W→L
或W→L1∧L2
(L为单文字,W为任意形式)
(3)目标公式是任意形式
化简过程 (1)用Skolem函数消去事实表达式中的存在量词,化简的公式受全称量词的约束
(2)对规则的处理同(1)
(3)用Skolem函数(对偶形)消去目标公式中的全称量词,化简的公式受存在量词约束
(1)用Skolem函数(对偶形)消去目标公式中的全称量词,化简的公式受存在量词的约束
(2)对规则的处理同(3)
(3)用Skolem函数消去事实表达式中的存在量词,化简的公式受全称量词的约束
初始综合数据库 事实表达式的与或树
(∨对应为与关系,∧对应为或关系)
目标公式的与或树
(∨对应为或关系,∧对应为与关系)
推理过程 从事实出发,正向应用规则(变量改名,前项与事实文字匹配,后项代替前项),直至得到目标节点为结束条件的一致解图为止 从目标出发,逆向应用规则(变量改名,后项与子目标文字匹配,前项代替后项),直至得到事实节点为结束条件的一致解图为止
子句形式 文字的析取式 文字的合取式
子集形式 子句的合取式(合取范式) 子句的析取式(析取范式)

  虽然正向系统中的规则和目标公式以及逆向系统的事实公式和规则都加有限制,但它们仍然可以有许多情况适用。我们还可以把正向和逆向的推理结合在一起,建立基于规则的双向演绎系统,这样可减少使用的限制,但在处理结束条件以及F规则和B规则的选取策略方面比较复杂,这方面的问题可参阅有关参考文献。

  2.关于控制知识
  一般人工智能系统所用到的知识分为三种类型:陈述知识、过程知识和控制知识。对于基于规则的演绎系统来说,比较容易表达陈述知识和过程知识,因为用谓词形式和蕴涵形规则来表示领域的专业知识比较方便和自然。另一方面,为了提高系统的求解效率,仍然有必要提供足够的控制知识,因为有效的搜索策略要求有控制知识来引导搜索。演绎系统中有几种控制信息是比较有效的。例如如何在最好的推理方向上应用一条规则,因为有的问题可能在某个方向应用规则会导致低效率,一般推理方向应尽可能选在分枝选择数目较小的方向上。还有在某一条B规则的前项或F规则的后项,领域专家可能会规定其子表达式处理的优先顺序。再者,有时候对规则规定一些附加的应用条件来限制规则的使用也会提高效果,这都是一些重要的控制知识。至于使用这类控制知识问题,有一些可行的方法:如可把有关的控制知识直接嵌入到规则之中,这需要编程技巧;也可以把控制知识嵌入到搜索策略所使用的评价函数之中;再复杂一点就是建立一个产生式系统来求解搜索策略中的问题。总之关于控制知识问题,在实现具体系统时都需要做进一步的研究才能解决。