人工智能语言的lisp和prolog

栏目:资讯发布:2023-10-26浏览:2收藏

人工智能语言的lisp和prolog,第1张

函数型语言LISP和逻辑型语言PROLOG都适合作符号处理,都适合于结构化程序设计(LISP提供了函数定义,prolog提供了谓词定义),都具有递归功能(prolog还具有自动回溯功能),都具有人机交互能力(prolog还特别适合于推理),也都具有把过程与说明式数据结构混合起来的能力以及辨别数据、确定控制的模式匹配机制(LISP将程序与数据均表示为表,因此可以把程序作为数据处理,也可将数据当作程序来执行。Prolog用一致的数据结构“项(term)”来构造数据和程序,事实、规则和询问的表现形式都为Horn子句,执行时作统一的操作匹配。LISP的匹配函数、prolog的合一运算自动匹配、自动搜索都具有很强的模式匹配机制。)因此可以说LISP和prolog是两种较为典型的人工智能语言。

LISP:是一门高级的语言,在人工智能中备受青睐,因为它具备垃圾收集、动态类型、数据函数、统一语法、交互式环境、可扩展性等特性,所以非常适合人工智能编程。

PROLOG:提供了针对关于逻辑相关问题的解决方案,或者说它的解决方案有着简洁的逻辑特征,主要缺点就是学习起来很难。

C/C++:主要用于对执行速度要求很高的时候,它主要用于简单程序,统计人工智能,如神经网络就是一个常见的例子。

JAVA:使用了LISP中的几个理念,最明显的就是垃圾收集,它的可移植性使它可以适用于任何程序,它还有一套内置类型,Java没有LISP和Prolog高级,又没有C那样快,但如果要求可移植性它是最好的。

Python:是一种用LISP和Java编译的语言,按照比较,这两种语言彼此非常相似,仅有一些细小的差别;还有JPython,提供了访问Java图像用户界面的途径,这是PeterNorvig选择用JPyhton翻译他人工智能书籍中程序的的原因,JPython可以让他使用可移植的GUI演示,和可移植的http/ftp/html库,所以它非常适合作为人工智能语言。

综合情况来讲,Python更适合人工智能编程,因为Python具有优质的文档、设计非常好、快速、坚固、可移植、可扩展等,这些对于人工智能而言都是非常重要的因素。

20世纪60年代末,出现了最早的面向对象的语言,如SIMULA语言。逻辑语言在20世纪70年代中期随着PROLOG语言的推出而变得广为人知;PROLOG语言是一种用于编写人工智能软件的语言。在20世纪70年代,过程语言继续发展,出现了ALGOL、BASIC、PASCAL、C和Ada等语言。SMALLTALK语言是一种具有高度影响力的面向对象的语言,它导致了面向对象的语言与过程语言在C++和更近期的JAVA语言中的结合。尽管纯粹的逻辑语言受欢迎的程度有所下降,但其变体以现代数据库所使用的关系语言——如结构化查询语言——的形式,变得至关重要。

人工智能语言的lisp和prolog

函数型语言LISP和逻辑型语言PROLOG都适合作符号处理,都适合于结构化程序设计(LISP提供了函数定义,prolog提供了谓词定义),都具有递归功能...
点击下载
热门文章
    确认删除?
    回到顶部