跳转到内容

专家系统/议程

来自维基教科书,开放的书籍,开放的世界

议程是一个队列,包含所有条件已经满足并且能够触发的规则。推理引擎将检查议程上的规则,并确定哪些规则将被执行。

当议程上存在两个或多个规则时,即当多个规则的条件已经满足并且准备被触发时,就会发生冲突。在这些情况下,推理引擎需要决定触发哪些规则以及按照什么顺序触发它们。

规则顺序

[编辑 | 编辑源代码]

推理引擎可以采用多种不同的方式来决定触发议程上的哪些规则以及按照什么顺序触发它们。

先进先出

[编辑 | 编辑源代码]

先进先出 (FIFO) 表示规则按照它们在知识库中出现的顺序添加到议程中,推理引擎按照规则在议程中出现的相同顺序触发它们。

优先级

[编辑 | 编辑源代码]

在优先级系统中,每个规则都会被赋予一个优先级值,优先级更高的规则会被优先触发。这些系统的问题是,程序员可能会倾向于以一种复制程序程序的方式分配优先级值。

手动编写规则触发的确切顺序通常是一个不好的主意。当知识工程师收集在任何顺序触发都为真的规则时,专家系统会更加健壮。

先行项数量

[编辑 | 编辑源代码]

具有更多先行项的规则,因此具有更多要求,可能更准确,也更有可能快速导致目标。这种逻辑导致了基于先行项数量来触发规则的系统。

华夏公益教科书