基于逻辑的人工智能和基于规则的人工智能有什么区别?

人工智能 比较 文件 逻辑 知识表示 基于规则的系统
2021-10-25 00:46:57

我一直认为基于规则是基于逻辑的人工智能的代名词。逻辑具有公理和推理规则,而基于规则的 AI 具有知识库(本质上是公理)和 if-then 规则来创建新知识(本质上是推理规则)。

但是在他们的著名文章什么是知识表示?、Davis、Shrobe 和 Szolovits 似乎暗示他们不是:

逻辑、规则、框架等等,体现了对世界上重要事物种类的看法。例如,逻辑涉及一个(相当少的)承诺,即根据个体实体和它们之间的关系来看待世界。基于规则的系统根据属性-对象-值三元组以及连接它们的合理推理规则来看待世界,而框架让我们根据原型对象进行思考。

这是否只是说基于规则是命题,而基于逻辑通常意味着谓词逻辑?或者还有比这更多的吗?

1个回答

基于规则的系统涵盖了广泛的系统。有些使用布尔 if/then/else 规则,有些可能使用加权甚至概率推理。一些对框架进行操作,一些对 java 对象进行操作,一些对可以在谓词逻辑中表述的命题进行操作。流行的规则系统的一个例子是Drools

一些规则系统可以表示为谓词逻辑的子集。例如,SWRL是一种 W3C 标准规则语言,它使用喇叭规则扩展了 OWL 描述逻辑 (DL)。OWL-DL 和SWRL都可以在一阶谓词逻辑中表达。然而,并不是所有的规则语言都可以以这种方式直接表达,因为规则语言包含了这样一个语义范围。即使在像Prolog这样的情况下,也有一些微妙之处。纯 Prolog 是 FOL 的一个子集,但实际现有的 Prolog 实现不是 FOL 子集(例如,优先顺序很重要)。

W3C 规则交换格式 (RIF) 工作组做了大量工作,试图统一这些不同的观点。我不确定开始查看摘要的最佳位置,但您可以在团体章程页面上看到一些有用的材料。