人工智能语言是一种适用于人工智能和知识工程领域的计算机程序设计语言,具有符号处理和逻辑推理能力。以下是边肖精心整理的关于人工智能编程的资料。希望对你有帮助!
人工智能编程语言
典型的人工智能语言有LISP、Prolog、Smalltalk、C等。
一般来说,人工智能语言应该具有以下特征:
具有符号处理能力(即非数值处理能力);
适合结构化编程和易编程;
它具有递归功能和回溯功能;
具备人机交互能力;
适合推理;
它不仅具有将过程与描述性数据结构混合的能力,还具有识别数据和确定控制的模式匹配机制。
人工编程的两种语言
函数式语言LISP和逻辑语言prolog都适用于符号处理,适用于结构化程序设计(LISP提供函数定义,prolog提供谓词定义),适用于递归函数(prolog也有自动回溯功能),适用于人机交互(PROLOG特别适用于推理)。它们还具有将进程与描述性数据结构混合的能力,以及识别数据和确定控制的模式匹配机制(LISP将程序和数据表示为表格,因此程序可以被视为数据或作为程序执行。Prolog使用一致的数据结构“术语”来构造数据和程序。事实、规则和查询都用Horn子句表示,在执行过程中通过统一的操作进行匹配。LISP的匹配功能,prolog的all-in-one操作,自动匹配,自动搜索都有很强的模式匹配机制。所以LISP和prolog是两种典型的人工智能语言。
人工智能的主要编程
在agent时代,出现了具有人工智能特征的面向对象程序设计,称为面向Agent程序设计。给一个对象增加更多的智能,让它能够根据环境的变化来推理和规划自己的行为,进而得到Agent。主体的概念符合明斯基“观念社会”的认知模型,特别适用于分布式环境。经典的面向对象编程语言是Smalltalk,现在已经有一些面向对象编程语言,比如OZ,但是还没有被认可和广泛采用。还有基于PDP(并行分布式处理)的神经网络语言。第三个来源是知识工程的实际需求。例如,人工智能语言,如Loops和TUILI,这些语言旨在开发各个领域的专家系统,包含不精确推理或不确定推理功能,甚至包含许多不同的推理机制。更有甚者,看到一个专家系统成功了,就干脆拿走它的领域知识,留下它的表示,这也变成了一种语言,俗称专家系统外壳。比如提取医学专家系统MYSIN的领域知识,得到一个外壳语言Emycin。
看到《人工智能的编程是什么》的人也看到了: