2008年11月20日星期四

人工智能程序设计lisp和prolog

人工智能程序设计lisp和prolog
非命令式编程语言,lisp和prolog是非冯结构的代表。它们的程序执行顺序不是基于结构流程,而是面向结果的求值过程。在语言的表现形式上程序与数据相互统一(汇编也是)。递归性同时体现在数据结构和流程控制上,运行流程依赖于数据结构的描述。这种结构下,语句更加贴近于对问题的抽象和描述,把执行过程通过求值或者匹配回溯交给系统完成,使编程过程能够专注到所需解决的问题方案设计上。
这种思想在与命令式语言相互结合中,发挥了极大的作用。(如面向对象不仅是对程序代码和数据结构的抽象,也是一种直观高效的设计理念)


目录:
《人工智能程序设计lisp和prolog》
lisp程序设计
引言
lisp语言的历史及其重要性
lisp语言的特性

lisp的数据结构-s表达式
原子
s表达式的定义
s表达式的表表示法

基本函数
基本函数
赋值函数和你eval函数
其他表处理函数
算术运算函数
逻辑运算函数

条件函数,定义函数
条件函数cond
定义函数define
cond使define定义更多的函数

迭代与递归
递归
迭代

lisp程序设计的例子
lisp程序结构和用的lisp语言解题
符号积分
中缀表示转换成前缀表示
梵(hanoi)塔问题
皇后问题
lisp元语言-m表达式

性质表和a表
性质表
a表,assoc函数和pairlis函数
数组及其函数
s表达式的存贮形式
破坏原子值的函数

lambda定义,label定义
lambda定义无名函数
label表达式
a表在实现中的作用

lisp的输入输出
read函数
print函数
其他特殊输入输出函数
输入输出例子
磁盘操作函数

函数的类型
fexpr函数
macro型函数

lisp在人工智能中的应用
广度优先和深度优先的搜索策略
修道士与野人过河问题
积木世界
符号模式匹配
基于归结原理的简单定理证明
自然语言句子结构分析
框架和框架函数


prolog程序设计
引言
prolog语言的发展和应用
prolog语言的特点
prolog的三个基本语句
简单实例
事实
规则
询问

prolog的数据结构和递归

表和它的递归性
prolog的算术运算
prolog的比较运算
程序的递归性及其例子
prolog语法与horn子句

prolog的搜索方法
关于prolog的就控制
prolog的搜索和回溯
cut

内部谓词
引言
输入输出
分类项
结构成分的建立和取接
控制回溯及其他
程序的增删改
说明运算符

prolog程序设计例子
梵(hanoi)塔问题
数学函数
表处理
集合处理
prolog在数据库中的应用
符号微分
排序
皇后问题

一些人工智能的例子
深度优先和广度优先搜索策略
修道士和野人过河问题
量水问题
自然语言句子结构分析
基于归结原理的简单定理证明

lisp和prolog的比较


附录
lisp的内部谓词
prolog的内部谓词
l-lisp
用lisp写一个portable prolog解释程序
中英名词对照表

没有评论: