第1章 绪论 1
1.1 图灵测试与人工智能 1
1.1.1 图灵测试 1
1.1.2 人工智能的不同学派 2
1.2 知识工程 5
1.2.1 问题的提出 5
1.2.2 知识 6
1.2.3 知识工程的基础、原理 7
1.2.4 知识模型中的构件 8
1.2.5 人的因素:知识工程中人的角色 9
1.2.6 知识工程的发展 11
1.3 习题 12
第2章 智能体 13
2.1 智能体和环境 13
2.2 理性 14
2.3 任务环境PEAS属性 16
2.4 智能体结构 17
2.4.1 反应式智能体 17
2.4.2 慎思式智能体 18
2.4.3 混合式智能体 19
2.5 小结 20
2.6 习题 21
第3章 目标智能体 22
3.1 目标智能体结构 22
3.2 问题形式化 23
3.3 不完全可观察环境的搜索 25
3.4 利用启发式知识的目标搜索 26
3.4.1 贪婪最佳优先搜索算法 26
3.4.2 A*搜索算法 28
3.4.3 爬山搜索算法 29
3.4.4 模拟退火搜索算法 31
3.4.5 遗传算法 32
3.5 目标测试标准化 33
3.5.1 约束满足问题 33
3.5.2 CSP问题的回溯搜索 35
3.5.3 通过约束传播信息 35
3.5.4 CSP问题的最小冲突搜索 37
3.6 小结 37
3.7 习题 37
第4章 逻辑智能体 39
4.1 逻辑智能体结构 39
4.2 wumpus世界 40
4.3 逻辑与知识库 42
4.3.1 命题逻辑 43
4.3.2 一个简单的知识库 44
4.3.3 真值表推理 45
4.4 命题逻辑智能体 45
4.5 一阶逻辑智能体 47
4.5.1 一阶逻辑 47
4.5.2 一阶逻辑知识表示 48
4.6 逻辑智能体的推理 51
4.7 小结 53
4.8 习题 53
第5章 本体论 55
5.1 本体概念 55
5.1.1 本体特征 55
5.1.2 本体与一般术语的区别 56
5.1.3 本体分类 58
5.2 本体的形式化定义 61
5.2.1 OWA形式化定义 61
5.2.2 Guarino形式化定义 61
5.2.3 KAON形式化定义 63
5.3 本体建模 65
5.3.1 本体建模基元 65
5.3.2 建立本体的一般方法 67
5.4 领域本体知识库 69
5.4.1 领域本体知识库概念 69
5.4.2 领域本体知识库的构建 71
5.4.3 领域本体的建模 74
5.4.4 领域本体的复用 75
5.4.5 领域本体的应用 77
5.5 本体编辑工具 78
5.5.1 本体编辑工具概述 78
5.5.2 Protegé开发过程 81
5.5.3 推理机Racer 90
5.6 本体描述语言 96
5.6.1 本体语言概述 96
5.6.2 HTML扩展 96
5.6.3 本体标记语言OML 97
5.6.4 基于XML的文本交换语言XOL 97
5.6.5 XML 97
5.6.6 RDF 99
5.6.7 本体交互语言OIL 102
5.6.8 DAML+OIL语言 103
5.6.9 子语言 103
5.6.10 描述逻辑 105
5.7 小结 107
5.8 习题 108
第6章 常识 109
6.1 常识的概念 109
6.1.1 常识的例子 109
6.1.2 常识推理的特点 109
6.1.3 常识的重要性 110
6.1.4 常识的表示 111
6.2 常识推理 115
6.2.1 缺省推理 115
6.2.2 真值维护系统 118
6.3 小结 119
6.4 习题 120
第7章 效用智能体 121
7.1 效用智能体结构 121
7.2 不确定性 122
7.2.1 不确定环境下智能体的行动 122
7.2.2 不确定知识的处理 123
7.2.3 不确定性与理性决策 125
7.3 信念网推理 126
7.3.1 全联合分布推理 126
7.3.2 信念网推理 130
7.3.3 信念网的数值语义 132
7.3.4 信念网拓扑语义 135
7.3.5 信念网的精确推理 135
7.4 定性推理 140
7.4.1 定性推理概述 140
7.4.2 定性推理的基本方法 142
7.4.3 ENVISION方法 143
7.4.4 空间定性推理概述 147
7.5 集对分析 149
7.5.1 集对分析基本原理 149
7.5.2 联系数 152
7.5.3 集对势 152
7.5.4 基于集对分析的不确定性理论 153
7.5.5 集对分析在人工智能中的应用 154
7.6 小结 162
7.7 习题 162
第8章 学习智能体 164
8.1 学习智能体结构 164
8.2 机器学习概述 165
8.2.1 基本概念 166
8.2.2 机器学习的发展史 167
8.3 从观察中学习 168
8.3.1 假设及假设空间 168
8.3.2 决策树CLS算法 169
8.4 统计机器学习 171
8.4.1 贝叶斯决策 171
8.4.2 最大似然参数估计 172
8.4.3 无监督聚类 173
8.5 PAC学习 176
8.5.1 泛化问题 176
8.5.2 SVM 177
8.5.3 表示问题 179
8.6 集成机器学习 180
8.6.1 弱可学习定理 180
8.6.2 集成机器学习方法 181
8.6.3 经验性研究问题 182
8.7 强化学习 183
8.7.1 完全可观察的MDP问题 183
8.7.2 部分可观察的MDP问题 186
8.7.3 强化学习的组成部分 186
8.7.4 强化学习原理 187
8.8 小结 189
8.9 习题 189
第9章 知识处理环境Prolog 191
9.1 Prolog的特点 191
9.1.1 事实和规则的描述 191
9.1.2 Prolog程序结构 192
9.2 一个简单的Prolog程序 193
9.2.1 表达事实 193
9.2.2 事实查询 195
9.2.3 规则表达 197
9.2.4 规则查询 197
9.2.5 规则使用 198
9.3 运算 200
9.3.1 算术运算 200
9.3.2 逻辑运算 201
9.3.3 数据管理 201
9.3.4 递归 203
9.3.5 表 205
9.3.6 截断 208
9.3.7 循环 210
9.4 Visual Prolog编程入门 211
9.4.1 创建项目 211
9.4.2 编写简单的应用程序 216
9.4.3 创建窗口 217
9.4.4 给窗口添加控件 222
9.4.5 画鼠标掠影 224
9.5 小结 227
9.6 习题 227
第10章 知识系统案例 229
10.1 案例1——简单的医疗诊断系统 229
10.1.1 规则库的构造 229
10.1.2 源程序 231
10.1.3 功能扩展 232
10.1.4 程序运行 235
10.2 案例2——汽车故障检修咨询系统 237
10.2.1 知识库 237
10.2.2 编程实现 238
10.2.3 运行结果 243
10.3 习题 244
第11章 多智能体 245
11.1 多智能体 245
11.1.1 效用和偏好 245
11.1.2 多智能体交互 246
11.1.3 优势策略和Nash平衡 248
11.1.4 竞争与零和交互 250
11.2 智能体之间的通信 253
11.2.1 交谈 253
11.2.2 理解语言字符串 255
11.2.3 有效通信 262
参考文献 267