第1章 绪论 1
1.1 人工智能的定义与概况 1
1.2 人类智能与人工智能 5
1.2.1 智能信息处理系统的假设 6
1.2.2 人类智能的计算机模拟 7
1.2.3 弱人工智能和强人工智能 10
1.3 人工智能各学派的认知观 10
1.4 人工智能的研究与应用领域 12
1.4.1 智能感知 13
1.4.2 智能推理 15
1.4.3 智能学习 19
1.4.4 智能行动 24
1.5 人工智能发展展望 29
1.5.1 新一轮人工智能的发展特征 29
1.5.2 未来40年的人工智能问题 31
1.5.3 人工智能鲁棒性和伦理 34
1.5.4 新一代人工智能发展规划 35
习题 37
第2章 知识表示和推理 39
2.1 概述 39
2.1.1 知识和知识表示 39
2.1.2 知识-策略-智能 41
2.1.3 人工智能对知识表示方法的要求 42
2.1.4 知识的分类 42
2.1.5 知识表示语言问题 43
2.1.6 现代逻辑学的基本研究方法 44
2.2 命题逻辑 46
2.2.1 语法 47
2.2.2 语义 47
2.2.3 命题演算形式系统PC 49
2.3 谓词逻辑 50
2.3.1 语法 51
2.3.2 语义 52
2.3.3 谓词逻辑形式系统FC 55
2.3.4 一阶谓词逻辑的应用 57
2.4 归结推理 58
2.4.1 命题演算中的归结推理 58
2.4.2 谓词演算中的归结推理 61
2.4.3 谓词演算归结反演的合理性和完备性 70
2.4.4 案例:一个基于逻辑的财务顾问 74
2.5 产生式系统 76
2.5.1 产生式系统的表示 77
2.5.2 案例:九宫图游戏 78
2.5.3 案例:传教士和野人问题 79
2.5.4 产生式系统的控制策略 82
2.6 语义网络 84
2.6.1 基本命题的语义网络表示 84
2.6.2 连接词在语义网络中的表示 86
2.6.3 语义网络的推理 88
2.6.4 语义网络表示的特点 90
2.7 框架 90
2.7.1 框架的构成 90
2.7.2 框架系统的推理 92
2.7.3 框架表示的特点 93
2.8 脚本 93
2.8.1 脚本概念 94
2.8.2 案例:饭店脚本 94
2.9 知识图谱 96
2.9.1 知识图谱及其表示 97
2.9.2 百度知识图谱技术方案 98
2.9.3 案例:知识图谱在互联网金融行业中的应用 101
2.10 基于知识的系统 103
2.10.1 知识获取 103
2.10.2 知识组织 105
2.10.3 知识应用 106
2.10.4 常识知识和大规模知识处理 108
2.10.5 常识推理 108
2.10.6 案例:知识图谱应用 110
2.11 小结 112
习题 112
第3章 搜索技术 123
3.1 概述 123
3.2 盲目搜索方法 128
3.3 启发式搜索 129
3.3.1 启发性信息和评估函数 130
3.3.2 最好优先搜索算法 131
3.3.3 贪婪最好优先搜索算法 132
3.3.4 A算法和A*算法 132
3.3.5 迭代加深A*算法 136
3.4 问题归约和AND-OR图启发式搜索 136
3.4.1 问题归约的描述 137
3.4.2 问题的AND-OR图表示 138
3.4.3 AO*算法 139
3.5 博弈 143
3.5.1 极大极小过程 144
3.5.2 α—β过程 146
3.5.3 效用值估计方法 149
3.6 案例分析 149
3.6.1 八皇后问题 149
3.6.2 洞穴探宝 151
3.6.3 五子棋 153
习题 158
第4章 高级搜索 161
4.1 爬山法搜索 161
4.2 模拟退火搜索 164
4.2.1 模拟退火搜索的基本思想 164
4.2.2 模拟退火算法 165
4.2.3 模拟退火算法关键参数和操作的设计 167
4.3 遗传算法 168
4.3.1 遗传算法的基本思想 169
4.3.2 遗传算法的基本操作 170
4.4 案例分析 175
4.4.1 爬山算法求解旅行商问题 175
4.4.2 模拟退火算法求解旅行商问题 176
4.4.3 遗传算法求解旅行商问题 177
习题 178
第5章 不确定知识表示和推理 180
5.1 概述 180
5.1.1 什么是不确定推理 181
5.1.2 不确定推理要解决的基本问题 181
5.1.3 不确定性推理方法分类 183
5.2 非单调逻辑 184
5.2.1 非单调逻辑的产生 185
5.2.2 缺省推理逻辑 186
5.2.3 非单调逻辑系统 188
5.2.4 非单调规则 190
5.2.5 案例:有经纪人的交易 191
5.3 主观Bayes方法 194
5.3.1 全概率公式和Bayes公式 194
5.3.2 主观Bayes方法 196
5.4 确定性理论 201
5.4.1 建造医学专家系统时的问题 201
5.4.2 C-F模型 202
5.4.3 案例:帆船分类专家系统 207
5.5 证据理论 212
5.5.1 假设的不确定性 212
5.5.2 证据的不确定性与证据组合 215
5.5.3 规则的不确定性 216
5.5.4 不确定性的传递与组合 216
5.5.5 证据理论案例 217
5.6 模糊逻辑和模糊推理 219
5.6.1 模糊集合及其运算 219
5.6.2 模糊关系 220
5.6.3 语言变量 221
5.6.4 模糊逻辑和模糊推理 222
5.6.5 案例:抵押申请评估决策支持系统 226
5.7 小结 232
习题 233
第6章 Agent 238
6.1 概述 238
6.2 Agent及其结构 240
6.2.1 Agent的定义 240
6.2.2 Agent要素及特性 241
6.2.3 Agent的结构特点 243
6.2.4 Agent的结构分类 244
6.3 Agent应用案例 246
6.4 Agent通信 250
6.4.1 通信方式 250
6.4.2 Agent通信语言ACL 251
6.5 协调与协作 256
6.5.1 引言 256
6.5.2 合同网 258
6.5.3 协作规划 260
6.6 移动Agent 263
6.6.1 移动Agent产生的背景 264
6.6.2 定义和系统组成 266
6.6.3 实现技术 267
6.6.4 移动Agent系统 275
6.6.5 移动Agent技术的应用场景 276
6.7 多Agent系统开发框架JADE 278
6.7.1 程序模型 280
6.7.2 可重用开发包 281
6.7.3 开发和运行的支持工具 283
6.8 案例:火星探矿机器人 284
6.8.1 需求分析 284
6.8.2 设计与实现 286
6.9 小结 291
习题 292
第7章 机器学习 299
7.1 机器学习概述 299
7.1.1 学习中的元素 300
7.1.2 目标函数的表示 301
7.1.3 学习任务的类型 303
7.1.4 机器学习的定义和发展史 304
7.1.5 机器学习的主要策略 306
7.1.6 机器学习系统的基本结构 307
7.2 基于符号的机器学习 308
7.2.1 归纳学习 308
7.2.2 决策树学习 312
7.2.3 基于范例的学习 318
7.2.4 解释学习 323
7.2.5 案例:通过EBG学习概念cup 324
7.2.6 强化学习 325
7.3 基于神经网络的机器学习 327
7.3.1 神经网络概述 327
7.3.2 基于反向传播网络的学习 332
7.3.3 案例:基于反向传播网络拟合曲线 341
7.3.4 深度学习 348
7.3.5 案例:深度学习在计算机视觉中的应用 353
7.3.6 竞争网络 358
7.3.7 案例:学习向量量化解决分类问题 368
7.4 基于统计的机器学习 369
7.4.1 支持向量机 369
7.4.2 案例:XOR问题 378
7.4.3 统计关系学习 380
7.5 小结 382
习题 384
第8章 自然语言处理技术 393
8.1 自然语言理解的一般问题 393
8.1.1 自然语言理解的概念及意义 393
8.1.2 自然语言理解研究的发展 395
8.1.3 自然语言理解的层次 396
8.2 词法分析 399
8.3 句法分析 402
8.3.1 短语结构文法和Chomsky文法体系 402
8.3.2 句法分析树 404
8.3.3 转移网络 405
8.4 语义分析 406
8.4.1 语义文法 406
8.4.2 格文法 407
8.5 大规模真实文本的处理 408
8.5.1 语料库语言学及其特点 408
8.5.2 统计学方法的应用及所面临的问题 410
8.5.3 汉语语料库加工的基本方法 411
8.5.4 语义资源建设 414
8.6 信息搜索 416
8.6.1 信息搜索概述 416
8.6.2 搜索引擎 418
8.6.3 智能搜索引擎 423
8.6.4 搜索引擎的发展趋势 429
8.7 机器翻译 433
8.7.1 机器翻译系统概述 433
8.7.2 机器翻译的基本模式和方法 436
8.7.3 统计机器翻译 439
8.7.4 利用深度学习改进统计机器翻译 441
8.7.5 端到端神经机器翻译 442
8.7.6 未来展望 443
8.8 语音识别 444
8.8.1 智能语音技术概述 444
8.8.2 组成单词读音的基本单元 445
8.8.3 信号处理 446
8.8.4 单个单词的识别 449
8.8.5 隐马尔可夫模型 450
8.8.6 深度学习在语音识别中的应用 451
8.9 机器阅读理解 453
8.9.1 机器阅读理解评测数据集 453
8.9.2 机器阅读理解的一般方法 453
8.9.3 机器阅读理解研究展望 455
8.10 机器写作 456
8.10.1 机器原创稿件 457
8.10.2 机器二次创作 457
8.10.3 机器写作展望 459
8.11 聊天机器人 459
8.11.1 聊天机器人应用场景 460
8.11.2 聊天机器人系统的组成结构及关键技术 461
8.11.3 聊天机器人研究存在的挑战 465
8.12 小结 465
习题 467
第9章 智能规划 470
9.1 规划问题 470
9.2 状态空间搜索规划 474
9.3 偏序规划 477
9.4 命题逻辑规划 481
9.5 分层任务网络规划 484
9.6 非确定性规划 486
9.7 时态规划 488
9.8 多Agent规划 491
9.9 案例分析 495
9.9.1 规划问题的建模与规划系统的求解过程 495
9.9.2 Shakey世界 497
9.10 小结 499
习题 499
第10章 机器人学 502
10.1 概述 502
10.1.1 机器人的分类 503
10.1.2 机器人的特性 504
10.1.3 机器人学的研究领域 504
10.2 机器人系统 505
10.2.1 机器人系统的组成 505
10.2.2 机器人的工作空间 507
10.2.3 机器人的性能指标 509
10.3 机器人的编程模式与语言 510
10.4 机器人的应用与展望 511
10.4.1 机器人应用 512
10.4.2 机器人发展展望 515
10.5 案例分析:仿真机器人运动控制算法 519
10.5.1 仿真平台使用介绍 519
10.5.2 仿真平台与策略程序的关系 522
10.5.3 策略程序的结构 522
10.5.4 动作函数及说明 526
10.5.5 策略 527
10.5.6 各种定位球状态的判断方法 530
10.5.7 比赛规则 531
10.6 小结 533
习题 533
第11章 互联网智能 535
11.1 概述 535
11.2 语义网与本体 538
11.2.1 语义网的层次模型 538
11.2.2 本体的基本概念 540
11.2.3 本体描述语言 542
11.2.4 本体知识管理框架 542
11.2.5 本体知识管理系统Protégé 543
11.2.6 本体知识管理系统KAON 544
11.3 Web技术的演化 545
11.3.1 Web 1.0 546
11.3.2 Web 2.0 547
11.3.3 Web 3.0 549
11.3.4 互联的社会 550
11.4 Web挖掘 551
11.4.1 Web内容挖掘 553
11.4.2 Web结构挖掘 554
11.4.3 Web使用挖掘 555
11.4.4 互联网信息可信度问题 556
11.4.5 案例:反恐作战数据挖掘 556
11.4.6 案例:微博博主特征行为数据挖掘 557
11.5 集体智能 559
11.5.1 社群智能 560
11.5.2 集体智能系统 561
11.5.3 全球脑 562
11.5.4 互联网大脑(云脑) 563
11.5.5 智联网 566
11.5.6 案例:智能网联汽车 568
11.5.7 案例:城市计算 569
11.6 小结 571
习题 572
附录A 人工智能编程语言Python 577
A.1 人工智能编程语言概述 577
A.2 Python语言优势 580
A.3 Python人工智能相关库 580
A.4 Python语法简介 582
附录B 手写体识别案例 585
B.1 MNIST数据集 586
B.2 Softmax回归模型 587
B.3 Softmax回归的程序实现 589
B.4 模型的训练 590
B.5 模型的评价 591
B.6 完整代码及运行结果 592
参考文献 594