规则推理引擎简介
规则推理引擎也叫产生式系统,是由基于规则的专家系统发展而来。基于规则的专家系统是人工智能领域中专家系统的
一个分支,它模拟人类的推理方式,使用试探性的方法进行推理,并使用人类能理解的术语解释和证明它的推理结论。
基于规则的专家系统,使用的知识包括:
- 事实: 事实是用来表示已知的数据或信息。
- 规则: 即产生式规则,用来表示系统推理的有关知识。 规则由条件和动作组成,格式一般为:
IF 条件
Then 动作
基于规则的专家系统主要包括以下三个部分:
- 规则库(Rule Base): 一个用规则来表达的知识集,包括执行推理所需要的知识。
- 工作区(Working Memory): 一个事实的集合,包含执行推理所需要的数据。
- 推理引擎(Inference Engine): 完成推理的过程,找出当前周期中哪条规则需要激活。
结构图如下:
推理引擎主要包含三个部分:
模式匹配器(Pattern Matcher)、议程(Agenda)和执行引擎(Execution Engine)。
推理引擎工作过程的三个阶段:
- 将事实输入到Working Memory中。
- 使用Pattern Matcher比较规则库中的规则和工作区中的事实,判断能够和事实匹配的规则,即激活规则。
- 如果执行规则存在冲突,即同时激活了多个规则,将冲突的规则放入冲突集合。
- 解决冲突,将激活的规则按顺序放入Agenda。
- 使用推理引擎执行Agenda中的规则。重复步骤2至5,直到执行完所有Agenda中的规则。
推理引擎工作过程如下: