24/12/251•PartI人工智能语言•PartII专家系统24/12/252PartI人工智能语言•由于人工智能研究的问题的特点和解决问题的方法的特殊性,为了能方便而有效地建立人工智能系统,需要发展专门的人工智能语言
24/12/253人工智能语言一般来说,人工智能语言应具备如下特点:•要有符号处理能力(即非数值处理能力);•适合于结构化程序设计,编程容易;•要有递归功能和回溯功能;•要有人机交互能力;•适合于推理;•要有把过程与说明式数据结构混合起来的能力,又要有辨别数据、确定控制的模式匹配机制
24/12/254人工智能语言•在人工智能手册中介绍了七种人工智能语言:LISP,PLANNER,CINNIVER,QLISP,POP2,SAIL,FUZZY
近百种人工智能语言中,只有LISP和后起之秀Prolog是人工智能研究和应用中占重要地位的两种人工智能程序设计语言
虽然国内外对这两种AI语言曾有争议,褒贬不一,但LISP和PROLOG的重要性是都不可否认的
24/12/255人工智能语言•函数型语言LISP和逻辑型语言PROLOG都适合作符号处理,都适合于结构化程序设计(LISP提供了函数定义,prolog提供了谓词定义),都具有递归功能(prolog还具有自动回溯功能),都具有人机交互能力(prolog还特别适合于推理),也都具有把过程与说明式数据结构混合起来的能力以及辨别数据、确定控制的模式匹配机制(LISP将程序与数据均表示为表,因此可以把程序作为数据处理,也可将数据当作程序来执行
Prolog用一致的数据结构“项(term)”来构造数据和程序,事实、规则和询问的表现形式都为Horn子句,执行时作统一的操作匹配
LISP的匹配函数、prolog的合一运算自动匹配、自动搜索都具有很强的模式匹配机制
)因此可以说LISP和prolog是两种较为典型的人工智能语言