当前位置:  开发笔记 > 人工智能 > 正文

Prolog在技术上如何运作?引擎盖下有什么?

如何解决《Prolog在技术上如何运作?引擎盖下有什么?》经验,为你挑选了3个好方法。

我想了解更多有关Prolog内部的知识,并了解其工作原理.

我知道如何使用它.但不是内部如何运作.Prolog中使用的算法和概念的名称是什么?

可能它构建了某种树结构或有向对象图,然后在查询时,它使用复杂的算法遍历该图.可能是深度优先搜索.可能有一些源代码,但首先从高层次的角度来看它会很棒.

我真的很喜欢人工智能,理解Prolog似乎是一个很好的开始,imho.我的想法是尝试重建类似的东西并完全跳过解析器部分.我需要知道我必须做的研究工作的方向.



1> Fred Foo..:

Prolog中使用的算法和概念的名称是什么?

逻辑编程

深度优先,回溯搜索

统一

有关Prolog背后的理论,请参阅Sterling&Shapiro,Prolog的艺术(麻省理工学院出版社).

可能它构建了某种树结构或有向对象图,然后在查询时,它使用复杂的算法遍历该图.可能是深度优先搜索.

它没有明确地构建图形,即使对于无限的搜索空间也是如此.查看Russell&Norvig的第一章,了解状态空间搜索的概念.是的,它使用回溯进行深度优先搜索,但不是,这不是很复杂.这只是非常方便,编程替代搜索策略在Prolog中并不十分困难.

了解Prolog似乎是一个很好的开始,imho.

取决于你想做什么,但知道Prolog当然不会受到伤害.这是一种看待编程的非常不同的方式.知道Prolog帮助我很快理解函数式编程.

我的想法是尝试重建类似的东西并完全跳过解析器部分

你的意思是跳过Prolog语法?如果您恰好熟悉Scheme或Lisp,请查看Abelson和Sussman的4.4节,其中解释了如何在Scheme中实现Scheme的逻辑编程变体.



2> compostus..:

人工智能是一个广泛的领域,Prolog只涉及符号AI.至于Prolog,内部工作太复杂,无法在这里解释,但谷歌搜索将为您提供充足的资源.例如http://www.amzi.com/articles/prolog_under_the_hood.htm.

查看维基百科的文章,了解AI的其他领域.


关于prolog你可能想要寻找的一些关键词:回溯,统一,声明性编程,逻辑编程

3> Thanos Tinti..:

您可能还想阅读有关Warren抽象机的信息
,将prolog代码翻译为WAM指令,然后更有效地执行.

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有