第1章 绪论 1
1.1 人工智能的定义和发展 2
1.1.1 人工智能的定义 2
1.1.2 人工智能的起源与发展 3
1.2 人工智能的各种认知观 7
1.2.1 人工智能的主要学派 7
1.2.2 对人工智能的争论 8
1.3 人类智能与人工智能 10
1.3.1 研究认知过程的任务 10
1.3.2 智能信息处理系统的假设 10
1.3.3 人类智能的计算机模拟 12
1.4 人工智能的研究目标和内容 12
1.4.1 人工智能的研究目标 12
1.4.2 人工智能研究的基本内容 13
1.5 人工智能的研究与计算方法 15
1.5.1 人工智能的研究方法 15
1.5.2 人工智能的计算方法 17
1.6 人工智能的研究和应用领域 18
1.7 人工智能对人类的影响 22
1.7.1 人工智能对经济的影响 22
1.7.2 人工智能对社会的影响 23
1.7.3 人工智能对文化的影响 24
1.8 对人工智能的展望 25
1.8.1 更新的理论框架 25
1.8.2 更好的技术集成 26
1.8.3 更成熟的应用方法 26
习题1 27
第2章 知识表示 29
2.1 知识及其表示概述 29
2.2 状态空间法 31
2.2.1 问题状态描述 32
2.2.2 状态图示法 33
2.2.3 状态空间表示举例 34
2.3 问题归约法 36
2.3.1 问题归约描述 36
2.3.2 与或图表示 38
2.3.3 问题归约机理 40
2.4 谓词逻辑法 43
2.4.1 谓词公式 43
2.4.2 谓词演算 44
2.4.3 置换与合一 46
2.5 产生式表示法 48
2.6 语义网络法 49
2.6.1 二元语义网络的表示 49
2.6.2 多元语义网络的表示 51
2.6.3 基于语义网络的知识推理 52
2.7 框架表示 57
2.7.1 框架理论及特点 57
2.7.2 框架的构成 58
2.7.3 框架的推理 61
2.8 面向对象表示 63
2.8.1 面向对象的概念 63
2.8.2 面向对象表示中的类继承 64
2.8.3 面向对象表示的推理实例 65
2.9 剧本表示 69
2.9.1 剧本的构成 69
2.9.2 剧本的推理 70
2.10 过程表示 71
习题2 73
第3章 搜索技术 75
3.1 盲目搜索 75
3.1.1 图搜索策略 75
3.1.2 宽度优先搜索 78
3.1.3 深度优先搜索 80
3.1.4 等代价搜索 82
3.2 启发式搜索 84
3.2.1 启发式搜索策略 84
3.2.2 有序搜索 84
3.2.3 A算法 87
3.3 博弈树搜索 90
3.3.1 博弈概述 90
3.3.2 极小极大分析法 90
3.3.3 α-β剪枝技术 91
3.4 遗传算法 93
3.4.1 遗传算法的基本原理 94
3.4.2 遗传算法的结构 96
3.4.3 遗传算法的性能 97
3.5 模拟退火算法 99
3.5.1 模拟退火算法的模型 99
3.5.2 模拟退火算法的简单应用 100
3.5.3 模拟退火算法的参数控制问题 102
3.6 免疫算法 102
3.6.1 免疫计算概述 102
3.6.2 免疫算法的基本原理 103
3.6.3 几种免疫算法 106
习题3 107
第4章 推理技术 109
4.1 消解原理 109
4.1.1 子句集的求取 109
4.1.2 消解推理规则 112
4.1.3 含有变量的消解式 113
4.1.4 消解反演求解过程 114
4.2 规则演绎系统 118
4.2.1 正向规则演绎系统 118
4.2.2 逆向规则演绎系统 123
4.2.3 双向规则演绎系统 126
4.3 产生式系统 128
4.3.1 产生式系统的结构 128
4.3.2 产生式系统的表示 130
4.3.3 产生式系统的推理 135
4.4 定性推理 137
4.4.1 定性推理概述 137
4.4.2 定性模型推理 138
4.5 不确定性推理 141
4.5.1 确定性与不确定性推理 141
4.5.2 概率推理 141
4.5.3 Bayes推理 145
4.5.4 模糊逻辑推理 146
4.6 非单调推理 148
4.6.1 默认推理 148
4.6.2 非单调推理系统 150
习题4 153
第5章 机器学习 155
5.1 机器学习概述 155
5.1.1 机器学习的定义和研究意义 155
5.1.2 机器学习的发展史 156
5.2 机器学习的主要策略与基本结构 157
5.3 常见的几种学习方法 158
5.3.1 机械学习 158
5.3.2 基于解释的学习 161
5.3.3 基于事例的学习 163
5.3.4 基于概念的学习 166
5.3.5 基于类比的学习 168
5.3.6 基于决策树的学习 169
5.3.7 强化学习 174
5.4 基于神经网络的学习 177
5.4.1 神经网络的组成与特性 177
5.4.2 基于BP网络的学习 179
5.4.3 基于Hopfield网络的学习 183
5.4.4 深度学习 186
5.4.5 基于神经网络的推理 191
习题5 195
第6章 专家系统 197
6.1 专家系统概述 197
6.1.1 专家系统的定义和一般特点 197
6.1.2 专家系统的结构与类型 198
6.1.3 专家系统的建造步骤 202
6.2 基于规则的专家系统 203
6.2.1 基于规则的专家系统的基本结构 204
6.2.2 基于规则的专家系统的特点 204
6.2.3 基于规则的专家系统举例 205
6.3 基于框架的专家系统 206
6.3.1 基于框架的专家系统的概念 206
6.3.2 基于框架的专家系统的继承、槽和方法 207
6.3.3 基于框架的专家系统举例 210
6.4 基于模型的专家系统 211
6.4.1 基于模型的专家系统的概念 211
6.4.2 基于模型的专家系统举例 212
6.5 专家系统的设计、评价与开发 213
6.5.1 专家系统的设计 213
6.5.2 专家系统的评价 214
6.5.3 专家系统开发工具 217
6.6 专家系统设计举例 221
6.6.1 专家知识的描述 221
6.6.2 知识的使用 226
6.6.3 决策的解释 228
6.6.4 MYCIN系统概述 229
6.7 新型专家系统 231
6.8 知识发现 232
6.8.1 知识发现的发展和定义 233
6.8.2 知识发现的处理过程 234
6.8.3 知识发现的方法 235
习题6 237
第7章 自动规划系统 239
7.1 自动规划概述 239
7.1.1 规划的概念和作用 239
7.1.2 规划的分类和问题分解途径 242
7.2 基于谓词逻辑的规划 244
7.2.1 规划世界模型的谓词逻辑表示 244
7.2.2 基于谓词逻辑规划的基本过程 246
7.3 STRIPS规划系统 247
7.3.1 积木世界的机器人规划 247
7.3.2 STRIPS规划系统 251
7.4 分层规划 255
7.4.1 长度优先搜索 255
7.4.2 NOAH规划系统 255
7.5 基于专家系统的机器人路径规划 258
7.6 轨迹规划简介 264
习题7 265
第8章 自然语言理解 267
8.1 语言及其理解的一般问题 267
8.1.1 语言和语言理解 267
8.1.2 自然语言理解研究的进展和发展趋势 269
8.1.3 自然语言理解过程的层次 272
8.2 词法分析 273
8.3 句法和语法的自动分析 275
8.3.1 句法模式匹配和转移网络 275
8.3.2 扩充转移网络 276
8.3.3 词汇功能语法 278
8.4 语义分析 281
8.5 句子理解 282
8.5.1 简单句的理解方法 283
8.5.2 复合句的理解方法 285
8.6 语料库语言学 287
8.7 机器翻译 289
8.8 语音识别 292
8.8.1 语音识别的发展历史 292
8.8.2 语音识别的基本原理 292
8.8.3 语音识别中的难点 293
8.8.4 语音识别的关键技术 294
8.9 应用举例 295
8.9.1 自然语言自动理解系统 295
8.9.2 自然语言问答系统 297
习题8 299
第9章 智能控制 301
9.1 智能控制概述 301
9.1.1 智能控制的产生和发展 301
9.1.2 智能控制的定义 304
9.2 智能控制的研究领域 304
9.3 智能控制的学科结构理论 308
9.3.1 二元结构理论 308
9.3.2 三元结构理论 309
9.3.3 四元结构理论 310
9.4 智能控制的特点与系统一般结构 312
9.4.1 智能控制的特点 312
9.4.2 智能控制系统的一般结构 313
9.5 智能控制系统 314
9.5.1 递阶智能控制系统 314
9.5.2 专家控制系统 317
9.5.3 模糊控制系统 320
9.5.4 学习控制系统 323
9.5.5 神经控制系统 326
9.6 其他智能控制系统 328
9.6.1 进化控制 329
9.6.2 免疫控制 330
9.6.3 基于Web的控制 332
习题9 334
第10章 人工智能程序设计 335
10.1 符号和逻辑处理编程语言 335
10.2 LISP语言 336
10.2.1 LISP的特点和数据结构 337
10.2.2 LISP的基本函数 339
10.2.3 递归和迭代 342
10.2.4 LISP编程举例 345
10.3 PROLOG语言 348
10.3.1 语法与数据结构 348
10.3.2 PROLOG程序设计原理 349
10.3.3 PROLOG编程举例 351
10.4 专用开发工具与人工智能机 352
习题10 353
参考文献 354