如何使用Swi-Prolog为专家系统创建元规则和/或元解释器

时间:2010-11-12 14:36:36

标签: prolog meta

我想用SWI-Prolog创建一个带元解释器的专家系统...什么是最好和更容易的方法?制作它的程序是什么?

1 个答案:

答案 0 :(得分:2)

许多专家系统的元解释器都是基于 所谓的香草翻译。这是一个翻译 Prolog没有剪切,没有内置插件。它的内容如下:

solve(true) :- !.
solve((A,B)) :- !, solve(A), solve(B).
solve(H) :- clause(H,B), solve(B).

您可以随时使用它来解决以下知识库 和查询。在一些Prolog系统中,ISO兼容性越多,您需要将谓词标记为动态,以便子句/ 2可以找到它们:

pet(dog):- size(medium), noise(woof).
pet(cat):- size(medium), noise(meow).
pet(mouse):- size(small), noise(squeak).
size(medium).
noise(meow).

?- solve(pet(X)).
X=cat

从香草翻译开始,你可以添加各种 专家系统喜欢的功能:

  • 知识获取
  • 说明
  • 确定性因素
  • 转发链接
  • 框架表示
  • 等等...

再见

P.S。:以下书籍介绍了如何: http://www.amzi.com/ExpertSystemsInProlog/

(c)2010年,Jan Burse,8004Zürich