专家系统VSOWL/RDFontology

Expert system VS OWL/RDF ontology

构建基于规则的专家系统,应该选择哪些工具?这两个好像是构建专家系统的老工具了:

* Clip: http://www.clipsrules.net/
* Jess in Java

下面这三个是不是和上面两个一样,也是为了构建专家系统?

* Manchester OWL
* Protege OWL
* Jena API

似乎传统的'expert system'已经过时了,它们被语义web/ontology技术所取代。我可以说 OWL 和 Jena API 可以实现与传统专家系统相同的功能吗?

简答:没有。

OWL 是一种知识表示语言(以及一组适用的推理规则)——它是一个 W3C 标准,可在此处获得:https://www.w3.org/TR/owl2-overview/

Jena API 支持 RDF(这是另一个 W3C 标准,与 OWL 有密切关系)和 OWL 1(当前 OWL 版本是 2);它还通过规则推理器支持非标准扩展。它可以用来实现专家系统,但它本身并不能替代 Jess 或 CLIPS。

旁注:Manchester OWL 和 Protege OWL 并不存在。 Protege 是用于创建 OWL 本体的工具,支持多种 OWL 序列化格式(RDF/XML、OWL/XML、Turtle、曼彻斯特语法、函数语法等); Protege OWL 是旧版 Protege 的插件 - 当前 Protege (5.1) 没有 'OWL plugin' - OWL 集成在工具本身中。 曼彻斯特 OWL 有时用于指代 OWL 的曼彻斯特语法 - 这只是格式的名称,并不表示表达能力有任何差异。

在我看来,旧的 "Expert Systems" 已被吸收到不同的 applications/contexts - 实际机制(前向链接、后向链接、Rete Algorithm 等)正在重新调整用途.

A Semantic Reasoner is an expert system where the inference rules are expressed in terms of an ontology. Pellet 是 Jena 的语义推理器。

另一个领域是 BPMN 和 business rules engines,如果我们忽略 "workflow" 组件,我们将得到一个可识别的专家系统。

所以您可以使用 Jena 作为专家系统的基础 - 根据@Ignazio 的回答,但这实际上取决于您要解决的问题。丰富的 ontology 本身就有价值,您可以通过示例进行查询(交叉),但是这种表示的 generation/curation 成本可能令人望而却步。