本书以详尽和丰富的资料,从理性智能体的角度,全面阐述了人工智能领域的核心内容,并深入介绍了各个主要的研究方向,是一本难得的综合性教材。全书分为八大部分:第一部分“人工智能”,第二部分“问题求解”,第三部分“知识与推理”,第四部分“规划”,第五部分“不确定知识与推理”,第六部分“学习”,第七部分“通讯、感知与行动”,第八部分“结论”。
本书既详细介绍了大量的基本概念、思想和算法,也描述了各研究方向最前沿的进展,同时收集整理了详实的历史文献与事件。因此本书适合于不同层次和领域的研究人员及学生,可以作为信息领域和相关领域的高等院校本科生和研究生的教科书或教学辅导书目,也可以作为相关领域的科研与工程技术人员的参考书。
第一章 绪 论
1.1 什么是人工智能?
1.1.1 类人行为:图灵测试方法
1.1.2 类人思考:认知模型方法
1.1.3 理性地思考:“思维法则”方法
1.1.4 理性地行动:理性智能体方法
1.2 人工智能的基础
1.2.1 哲学(公元前428年—现在)
1.2.2 数学(约800年—现在)
1.2.3 经济学(1776年—现在)
1.2.4 神经科学(1861年—现在)
1.2.5 心理学(1879年—现在)
1.2.6 计算机工程(1940年—现在)
1.2.7 控制论(1948年—现在)
1.2.8 语言学(1957年—现在)
1.3 人工智能的历史
1.3.1 人工智能的孕育期(1943年—1955年)
1.3.2 人工智能的诞生(1956年)
1.3.3 早期的热情,巨大的期望(1952年—1969年)
1.3.4 现实的困难(1966年—1973年)
1.3.5 基于知识的系统:力量的钥匙?(1969年—1979年)
1.3.6 AI成为工业(1980年—现在)
1.3.7 神经元网络的回归(1986年—现在)
1.3.8 AI成为科学(1987年—现在)
1.3.9 智能化智能体的出现(1995年—现在)
1.4 目前发展水平
1.5 小结
参考文献与历史的注释
习题
第二章 智能化智能体
2.1 智能体和环境
2.2 好的行为表现:理性的概念
2.2.1 性能度量
2.2.2 理性
2.2.3 全知者,学习和自主性
2.3 环境的本质
2.3.1 详细说明任务环境
2.3.2 任务环境的属性
2.4 智能体的结构
2.4.1 智能体程序
2.4.2 简单反射型智能体
2.4.3 基于模型的反射型智能体
2.4.4 基于目标的智能体
2.4.5 基于效用的智能体
2.4.6 学习智能体
2.5 小结
参考文献与历史的注释
习题
第三章 用搜索法对问题求解
3.1 问题求解智能体
3.1.1 定义明确的问题及解
3.1.2 把问题形式化
3.2 问题实例
3.2.1 玩具问题
3.2.2 现实世界问题
3.3 对解的搜索
3.3.1 度量问题求解的性能
3.4 无信息的搜索策略
3.4.1 广度优先搜索
3.4.2 代价一致搜索
3.4.3 深度优先搜索
3.4.4 深度有限搜索
3.4.5 迭代深入深度优先搜索
3.4.6 双向搜索
3.4.7 无信息搜索策略的比较
3.5 避免重复状态
3.6 使用不完全信息的搜索
3.6.1 无传感问题
3.6.2 偶发性问题
3.7 小结
参考文献与历史的注释
习题
第四章 有信息的搜索和探索
4.1 有信息的(启发式的)搜索策略
4.1.1 贪婪最佳优先搜索
4.1.2 A*搜索:最小化总的估计解耗散
4.1.3 存储限制的启发式搜索
4.1.4 为了更好地搜索而学习
4.2 启发函数
4.2.1 启发函数的精确度对性能的影响
4.2.2 设计可采纳的启发函数
4.2.3 从经验里学习启发函数
4.3 局部搜索算法和最优化问题
4.3.1 爬山法搜索
4.3.2 模拟退火搜索
4.3.3 局部剪枝搜索
4.3.4 遗传算法
4.4 连续空间的局部搜索
4.5 联机搜索智能体和未知环境
4.5.1 联机搜索问题
4.5.2 联机搜索智能体
4.5.3 联机局部搜索
4.5.4 联机搜索的学习
4.6 小结
参考文献与历史的注释
习题
第五章 约束满足问题
5.1 约束满足问题
5.2 CSP问题的回溯搜索
5.2.1 变量和取值顺序
5.2.2 通过约束传播信息
前向检验
约束传播
处理特殊约束
智能回溯:向后看
5.3 约束满足问题的局部搜索
5.4 问题的结构
5.5 小结
参考文献与历史的注释
习题
第六章 对抗搜索
6.1 搏弈
6.2 博弈中的优化决策
6.2.1 最优策略
6.2.2 极小极大值算法
6.2.3 多人游戏中的最优决策
6.3 a-b剪枝
6.4 不完整的实时决策
6.4.1 评价函数
6.4.2 截断搜索
6.5 包含几率因素的游戏
6.5.1 有几率节点的游戏中的局面评价
6.5.2 期望极小极大值的复杂度
6.6 博弈程序的当前发展水平
6.7 讨论
6.8 小结
参考文献与历史的注释
习题
第七章 逻辑智能体
7.1 基于知识的智能体
7.2 WUMPUS世界
7.3 逻辑
7.4 命题逻辑:一种非常简单的逻辑
7.4.1 语法
7.4.2 语义
7.4.3 一个简单的知识库
7.4.4 推理
7.4.5 等价、合法性和可满足性
7.5 命题逻辑的推理模式
7.5.1 归结
7.5.2 合取范式
7.5.3 归结算法
7.5.4 归结的完备性
7.5.5 前向和反向链接
7.6 有效的命题推理
7.6.1 一个完备的回溯搜索
7.6.2 局部搜索算法
7.6.3 困难的满足性问题
7.7 基于命题逻辑的智能体
7.7.1 用逻辑推理寻找陷阱和wumpus
7.7.2 记录位置和方向
7.7.3 基于电路的智能体
7.7.4 比较
7.8 小结
参考文献与历史的注释
习题
第八章 一阶逻辑
8.1 表示方法的回顾
8.2 一阶逻辑的语法和语义
8.2.1 一阶逻辑的模型
8.2.2 符号和解释
8.2.3 项
8.2.4 原子语句
8.2.5 复合语句
8.2.6 量词
全称量词(")
存在量词($)
嵌套量词
"和$之间的连接符
8.2.7 等式
8.3 使用一阶逻辑
8.3.1 一阶逻辑的断言和查询
8.3.2 亲属关系域
8.3.3 数、集合和列表
8.3.4 wumpus世界
8.4 一阶逻辑中的知识工程
8.4.1 知识工程的过程
8.4.2 电路领域
确定任务
搜集相关知识
确定词汇表
对域的通用知识进行编码
对特定问题的实例进行编码
把查询提交给推理过程
调试知识库
8.5 小结
参考文献与历史的注释
习题
第九章 一阶逻辑中的推理
9.1 命题 对比 一阶推理
9.1.1 量词的推理规则
9.1.2 简化到命题推理
9.2 合一和提升
9.2.1 一阶推理规则
9.2.2 合一
9.2.3 存储和检索
9.3 前向链接
9.3.1 一阶确定子句
9.3.2 一个简单的前向链接算法
9.3.3 高效的前向链接
9.4 反向链接
9.4.1 反向链接算法
9.4.2 逻辑程序设计
9.4.3 逻辑程序的高效实现
9.4.4 冗余推理和无限循环
9.4.5 约束逻辑程序设计
9.5 归结
9.5.1 一阶逻辑的合取范式
9.5.2 归结推理规则
9.5.3 证明的实例
9.5.4 归结的完备性
9.5.5 处理等式
9.5.6 归结策略
9.5.7 定理证明机
9.6 小结
参考文献与历史的注释
习题
第十章 知识表示
10.1 本体论工程
10.2 类别和对象
10.2.1 物质成份
10.2.2 度量
10.2.3 物质和对象
10.3 行动,情景和事件
10.3.1 情景演算本体论
10.3.2 描述情景演算中的行动
10.3.3 解决表示框架问题
10.3.4 解决推理框架问题
10.3.5 时间和事件演算
10.3.6 一般化事件
10.3.7 过程
10.3.8 区间
10.3.9 流和对象
10.4 精神事件和精神对象
10.4.1 关于信度的形式理论
10.4.2 知识和信度
10.4.3 知识、时间和行动
10.5 互联网购物世界
10.5.1 对供应进行比较
10.6 类别的推理系统
10.6.1 语义网络
10.6.2 描述逻辑
10.7 缺省信息推理
10.7.1 开放世界和封闭世界
10.7.2 失败否定式和稳定模型语义
10.7.3 界限和缺省逻辑
10.8 真值维护系统
10.9 小结
参考文献与历史的注释
习题
第十一章 规 划
11.1 规划问题
11.1.1 规划问题语言
11.1.2 表达能力和延伸
11.1.3 例:航空货物运输
11.1.4 例:备用轮胎问题
11.1.5 例:积木世界
11.2 状态空间搜索规划
11.2.1 前向状态空间搜索
11.2.2 后向状态空间搜索
11.2.3 状态空间搜索的启发式
11.3 偏序规划
11.3.1 一个偏序规划的例子
11.3.2 无约束变量的偏序规划
11.3.3 偏序规划启发式
11.4 规划图
11.4.1 规划图的启发式估计
11.4.2 GRAPHPLAN算法
11.4.3 GRAPHPLAN的终止
11.5 命题逻辑规划
11.5.1 用命题逻辑描述规划问题
11.5.2 命题编码的复杂度
11.6 规划方法分析
11.7 小结
参考文献与历史的注释
习题
第十二章 现实世界的规划与行动
12.1 时间、调度表和资源
12.1.1 具有资源约束的调度安排
12.2 分层任务网络规划
12.2.1 表示行动分解
12.2.2 为分解修改规划器
12.2.3 讨论
12.3 在非确定性领域中进行规划和行动
12.4 条件规划
12.4.1 完全可观察环境中的条件规划
12.4.2 部分可观察环境中的条件规划
12.5 执行监控和重新规划
12.6 持续规划
12.7 多智能体规划
12.7.1 合作:联合目标和规划
12.7.2 多体规划
12.7.3 协调机制
12.7.4 竞争
12.8 小结
参考文献与历史的注释
习题
第十三章 不确定性
13.1 不确定环境下的行动
13.1.1 处理不确定知识
13.1.2 不确定性与理性决策
13.1.3 决策理论智能体的设计
13.2 基本概率符号表示
13.2.1 命题
13.2.2 原子事件
13.2.3 先验概率
13.2.4 条件概率
13.3 概率公理
13.3.1 使用概率公理
13.3.2 为什么概率公理是合理的
13.4 使用全联合分布进行推理
13.5 独立性
13.6 贝叶斯法则及其应用
13.6.1 应用贝叶斯法则:一个简单例子
13.6.2 使用贝叶斯法则:合并证据
13.7 重游wumpus世界
13.8 小结
参考文献与历史的注释
习题
第十四章 概率推理
14.1 不确定域中的知识表示
14.2 贝叶斯网络的语义
14.2.1 表示全联合概率分布
14.2.2 贝叶斯网络中的条件独立关系
14.3 条件分布的有效表达
14.4 贝叶斯网络中的精确推理
14.4.1 通过枚举进行推理
14.4.2 变量消元算法
14.4.3 精确推理的复杂度
14.4.4 团算法
14.5 贝叶斯网络的近似推理
14.5.1 直接采样算法
14.5.2 马尔可夫链仿真推理
14.6 把概率扩展到一阶表示
14.7 不确定推理的其他方法
14.7.1 基于规则的不确定推理方法
14.7.2 表示无知性:Dempster-Shafer理论
14.7.3 表示模糊性:模糊集与模糊逻辑
14.8 小结
参考文献与历史的注释
习题
第十五章 关于时间的概率推理
15.1 时间与不确定性
15.1.1 状态与观察
15.1.2 稳态过程与马尔可夫假设
15.2 时序模型中的推理
15.2.1 滤波和预测
15.2.2 平滑
15.2.3 寻找最可能序列
15.3 隐马尔可夫模型
15.3.1 简化的矩阵算法
15.4 卡尔曼滤波器
15.4.1 更新高斯分布
15.4.2 一个简单的一维例子
15.4.3 一般情况
15.4.4 卡尔曼滤波器的适用性
15.5 动态贝叶斯网络
15.5.1 构造动态贝叶斯网络
15.5.2 动态贝叶斯网络中的精确推理
15.5.3 动态贝叶斯网络中的近似推理
15.6 语音识别
15.6.1 语音
15.6.2 词语(word)
15.6.3 语句
15.6.4 搭建语音识别器
15.7 小结
参考文献与历史的注释
习题
第十六章 制定简单决策
16.1 在不确定性环境下结合信度与愿望
16.2 效用理论基础
16.2.1 理性偏好的约束
16.2.2 然后就有了效用
16.3 效用函数
16.3.1 金钱的效用
16.3.2 效用范围和效用评估
16.4 多属性效用函数
16.4.1 优势
16.4.2 偏好结构和多属性效用
16.5 决策网络
16.5.1 使用决策网络表示决策问题
16.5.2 评价决策网络
16.6 信息价值
16.6.1 一个简单例子
16.6.2 一个通用公式
16.6.3 信息价值的属性
16.6.4 实现信息收集智能体
16.7 决策理论的专家系统
16.8 小结
参考文献与历史的注释
习题
第十七章 制定复杂决策
17.1 延续式决策问题
17.1.1 一个例子
17.1.2 延续式决策问题中的最优化
17.2 价值迭代
17.2.1 状态效用值
17.2.2 价值迭代算法
17.2.3 价值迭代的收敛
17.3 策略迭代
17.4 部分可观察的MDP
17.5 决策理论智能体
17.6 多智能体的决策:博弈论
17.7 机制设计
17.8 小结
参考文献与历史的注释
习题
第十八章 从观察中学习
18.1 学习的形式
18.2 归纳学习
18.3 学习决策树
18.3.1 作为执行元件的决策树
18.3.2 决策树的表达能力
18.3.3 从实例中归纳决策树
18.3.4 选择属性测试
18.3.5 评估学习算法的性能
18.3.6 噪声和过拟合
18.3.7 扩展决策树的适用性
18.4 集体学习
18.5 为什么学习是可行的:计算学习理论
18.5.1 需要多少个实例?
18.5.2 决策表学习
18.5.3 讨论
18.6 小结
参考文献与历史的注释
习题
第十九章 学习中的知识
19.1 学习的逻辑公式
19.1.1 实例和假设
19.1.2 当前最佳假设搜索
19.1.3 最少约定搜索
19.2 学习中的知识
19.2.1 一些简单的例子
19.2.2 一些一般方案
19.3 基于解释的学习
19.3.1 从实例中抽取一般规则
19.3.2 提高效率
19.4 使用相关信息进行学习
19.4.1 决定假设空间
19.4.2 学习和使用相关性信息
19.5 归纳逻辑程序设计
19.5.1 一个例子
19.5.2 自顶向下的归纳学习方法
19.5.3 使用逆向演绎的归纳学习
19.5.4 通过归纳逻辑程序设计进行发现
19.6 小结
参考文献与历史的注释
习题
第二十章 统计学习方法
20.1 统计学习
20.2 完整数据下的学习
20.2.1 最大似然参数学习:离散模型
20.2.2 朴素贝叶斯模型
20.2.3 最大似然参数学习:连续模型
20.2.4 贝叶斯参数学习
20.2.5 学习贝叶斯网络的结构
20.3 隐变量学习:EM算法
20.3.1 无监督聚类:学习混合高斯分布
20.3.2 学习含有隐变量的贝叶斯网络
20.3.3 学习隐马尔可夫模型
20.3.4 EM算法的一般形式
20.3.5 学习含有隐变量的贝叶斯网络结构
20.4 基于实例的学习
20.4.1 最近邻模型
20.4.2 核模型
20.5 神经元网络
20.5.1 神经元网络中的单元
20.5.2 网络结构
20.5.3 单层前馈神经元网络(感知器)
20.5.4 多层前馈神经元网络
20.5.5 对神经元网络结构进行学习
20.6 核心机
20.7 案例分析:手写体数字识别
20.8 小结
参考文献与历史的注释
习题
第二十一章 强化学习
21.1 介绍
21.2 被动强化学习
21.2.1 直接效用估计
21.2.2 自适应动态规划
21.2.3 时序差分学习
21.3 主动强化学习
21.3.1 探索
21.3.2 学习行动-价值函数
21.4 强化学习中的一般化
21.4.1 博弈中的应用
21.4.2 机器人控制中的应用
21.5 策略搜索
21.6 小结
参考书目与历史的注释
习题
第二十二章 通讯
22.1 作为行动的通讯
22.1.1 语言的基本原理
22.1.2 通讯的组成步骤
22.2 部分英语的形式语法
22.2.1 E0的词典
22.2.2 E0的语法
22.3 句法分析(Parsing)
22.3.1 高效的句法分析
22.4 增强语法
22.4.1 动词的次范畴化
22.4.2 增强语法的生成能力
22.5 语义解释
22.5.1 部分英语的语义
22.5.2 时间和时态
22.5.3 量词限定
22.5.4 语用解释
22.5.5 利用DCG生成语言
22.6 歧义和排歧
22.6.1 排歧
22.7 篇章理解
22.7.1 指代消解
22.7.2 连贯的篇章结构
22.8 语法归纳
22.9 小结
参考文献与历史的注释
习题
第二十三章 概率语言处理
23.1 概率语言模型
23.1.1 概率的上下文无关语法
23.1.2 学习PCFG的概率
23.1.3 学习PCFG的规则结构
23.2 信息检索
23.2.2 评价IR系统
23.2.3 IR的改进方法
23.2.4 结果集合的表示
23.2.5 IR系统的实现
23.3 信息抽取
23.4 机器翻译
23.4.1 机器翻译系统
23.4.2 统计机器翻译
23.4.3 机器翻译的概率学习
23.5 小结
参考文献与历史的注释
习题
第二十四章 感知
24.1 介绍
24.2 图像生成
24.2.1 无透镜成像——针孔照相机
24.2.2 透镜系统
24.2.3 光线:成像过程中的光度学特性
24.2.4 色彩:成像中的分光谱光度学
24.3 初级图像处理运算
24.3.1 边缘检测
24.3.2 图像分割
24.4 提取三维信息
24.4.1 运动
24.4.2 双目立体视觉
24.4.3 纹理梯度
24.4.4 明暗
24.4.5 轮廓
24.5 物体识别
24.5.1 基于亮度的识别
24.5.2 基于特征的识别
24.5.3 姿态估计
24.6 利用视觉实现操纵和导航
24.7 小结
参考文献与历史的注释
习题
第二十五章 机器人学
25.1 介绍
25.2 机器人硬件
25.2.1 传感器
25.2.2 效应器
25.3 机器人的感知
25.3.1 定位
25.3.2 绘制地图
25.3.3 其他类型的感知
25.4 运动规划
25.4.1 构型空间
25.4.2 单元分解方法
25.4.3 抽骨架方法
25.5 规划不确定的运动
25.5.1 鲁棒性方法
25.6 运动
25.6.1 动力学和控制
25.6.2 势场控制
25.6.3 反应式控制
25.7 机器人软件体系结构
25.7.1 包容体系结构
25.7.2 三层体系结构
25.7.3 机器人程序设计语言
25.8 应用领域
25.9 小结
参考文献与历史的注释
习题
第二十六章 哲学基础
26.1 弱人工智能:机器能够智能地行动吗?
26.1.1 能力缺陷方面的论点
26.1.2 数学异议
26.1.3 非形式化的论点
26.2 强人工智能:机器能够真正思考吗?
26.2.1 精神-肉体问题
26.2.2 “钵中之脑”实验
26.2.3 大脑置换实验
26.2.4 中文屋子
26.3 发展人工智能的道德规范与风险
26.4 小结
参考文献与历史的注释
习题
第二十七章 人工智能:现状与未来
27.1 智能体的组成部分
27.2 智能体体系结构
27.3 我们在沿着正确的方向前进吗?
27.4 如果人工智能成功了会怎样?
斯图尔特·罗素(Stuart Russell),1962年生于英国朴次茅斯(Portsmouth)。他于1982年以优异成绩在牛津大学获得物理学硕士学位,并于1986年在斯坦福大学获得计算机科学的博士学位。之后他加入加州大学伯克利分校,任计算机科学系教授,智能系统中心主任,以及Smith-Zadeh工程学讲座教授(Smith-Zadeh Chair of Engineering)头衔的持有者。1990年他获得国家科学基金的“总统青年研究者”(Presidential Young Investigator)奖,1995年他是“计算机与思维”(Computer and Thought)奖的获得者之一。他是加州大学1996年的一名Miller教授(Miller Professor),并于2000年被指定为首席讲座教授(Chancellor’s Professorship)。1998年他在斯坦福大学做过Forsythe纪念演讲(Forsythe Memorial Lecture)。他是美国人工智能学会的成员和前执行委员会委员。他已经发表过100多篇论文,内容涉及人工智能领域的广泛课题。
人工智能(Artificial Intelligence, AI)是一个庞大的领域,而这也是一本庞大的书。我们试图全方位探索这个领域,包括逻辑,概率和连续数学;感知,推理,学习和行动;以及从微电子设备到机器人行星探测器等一切巨细。这本书之所以庞大还因为我们在给出结果时达到了一定的深度,虽然我们努力做到在每一章中只包含主要部分的中心思想。在每章末尾的文献注释中我们提供了进一步结果的要点。
本书的小标题是“一种现代方法”。这个相当空洞的短语希望表达的含义是,我们试图将我们现在所知道的内容综合到一个共同的框架中,而不是试图在各自的历史环境下解释人工智能的各个子领域。对于那些自己的研究领域因此没有得到足够重视的读者,我们表示歉意。
本书主要的统一主题是智能化智能体的思想。我们将人工智能定义为对从环境中接收感知信息并执行行动的智能体的研究。每个这样的智能体都实现了一个把感知序列映射到行动的函数。我们讨论了表达这些函数的各种不同方法,诸如产生式系统,反应式智能体,实时条件规划器,神经元网络,以及决策理论系统等。我们把学习所扮演的角色解释为把设计者能接触的范围扩展到未知环境中,并且我们说明了这个角色是如何约束智能体设计,形成明确的知识表示和推理的。我们并不把机器人学和视觉当作各自独立定义的问题对待,而是出现在为实现目标而服务的过程中。我们强调在确定合适的智能体设计的过程中任务环境的重要性。
我们的首要目标是要传达过去五十年间的人工智能研究和过去两千年的相关工作中所涌现出来的思想。在表达这些思想的过程中,我们在保持精确的同时尽力避免过分的形式化。在任何适当的地方本书都加入了伪代码算法以使这些思想更具体;我们所使用的伪代码在附录B中有简要描述。这些算法的几种程序设计语言的具体实现可以从本书的网站aima.cs.berkeley.edu获得。
本书主要是用作本科的课程或者系列课程的教科书。也可以用于研究生水平的课程(可能需要附加在本书各章参考文献注释中所建议的一些主要资料)。由于本书覆盖范围非常全面,同时还包括了大量的详细算法,对于希望对自己的研究子领域之外有所了解的研究生或者专业人士而言,本书也可以用作基本的参考书。唯一的前提是需要对计算机科学中的一些基本概念(算法,数据结构,复杂性)的熟悉程度达到大学二年级以上。大学一年级的微积分学对细致理解神经元网络和统计学习是有用的。在附录A中提供了一部分所需数学背景。
本书概览
本书分成八个部分。第一部分,人工智能,在围绕智能化智能体的概念——即能够决定要做什么然后执行行动的系统——的基础上提供了对人工智能事业的一个概观。第二部分,问题求解,集中讨论了当需要提前思考若干步骤时决定要做什么的方法——例如在穿过一个国家的导航过程中,或者在国际象棋比赛中。第三部分,知识与推理,讨论了关于世界的知识——世界如何运转,它当前是什么样子,以及智能体的行为可能产生的影响——的表示方式,以及如何使用这些知识进行逻辑推理。第四部分,规划,继续讨论了如何利用这些推理方法来决策要做什么,特别是通过构造规划的方法。第五部分,不确定知识与推理,可以与第三部分和第四部分进行类比,不过它集中讨论当世界中存在不确定因素时的推理与决策,例如医学诊断和治疗系统可能面对的。
总的来说,第二部分到第五部分描述了智能化智能体中负责制定决策的部分。第六章,学习,描述了为这些决策元件生成所需知识的方法。第七部分,通讯、感知与行动,描述了智能化智能体能够感知其环境的方式,以便了解正在进展的各种情况,无论通过视觉、触觉、听觉还是语言理解,以及能够将它的规划转换为真实行动(可以是机器人的动作,也可以是自然语言的话语)的方法。最后是第八部分,结论,分析了人工智能的过去与未来,以及人工智能的哲学与伦理含义。
相对于第一版的变化
自从本书第一版于1995年出版以来,人工智能领域发生了很多变化,本书内容也做了很多改变。本书的每一章都显著地重写了,以反映领域中的最新工作,用一种与新发现更贴近的方式重新解释了过去的工作,并且改进了这些思想的教学流程。和1995年相比,当前的技术更加实用,人工智能的追随者们应该为此感到振奋;例如在第一版中给出的规划算法只能生成数十步的规划,而在这一版中的算法则能扩展到上万步。在概率推理、语言处理以及其它子领域中可以看到类似的数量级的提高。下列是本书最显著的变化:
在第一部分中,我们承认了控制论、博弈论、经济学、神经科学等的历史贡献。这有助于为后续章节中关于这些想法的更完整讨论定下基调。
在第二部分中,我们讨论了联机搜索算法,并增加了新的一章讨论约束可满足问题。后者提供了与逻辑学材料的自然联系。
在第三部分,第一版中作为通向一阶逻辑垫脚石的命题逻辑,现在作为一种有用的表示语言凭其自身的价值而提出,连同快速的推理算法以及基于电路的智能体设计。关于一阶逻辑的章节已经被公认能够更加清晰地表示这些材料,并且我们还增加了一个互联网购物域的例子。
在第四部分中,我们包括了更新的规划算法,比如GRAPHPLAN和基于可满足性的规划,并且我们加强了对调度,条件规划,分层规划和多智能体规划的讨论。
在第五部分中,我们用一些新算法扩充了贝叶斯网络方面的材料,比如变量消元方法和马尔可夫链蒙特卡洛方法,并且创建了新的一章讨论不确定时序推理问题,涵盖了隐马尔可夫模型,卡尔曼滤波器以及动态贝叶斯网络。关于马尔可夫决策过程的讨论更加深入,我们还增加了关于博弈论和机制设计的一些节。
在第六部分中,我们将统计学习、符号学习和神经学习等方面的工作紧密联系在一起,并增加了关于boosting算法,期望最大化(EM)算法,基于实例的学习以及核方法(支持向量机)的一些节。
在第七部分中,关于语言处理的部分增加了讨论篇章处理和语法归纳的一些节,还增加了一章讨论概率语言模型及其在信息检索和机器翻译中的应用。关于机器人学的内容强调了不确定传感器数据的集成,而关于视觉的那一章则更新了关于物体识别方面的材料。
在第八部分中,我们增加了一节篇幅介绍人工智能的伦理含义。
关于本书的使用
本书共有27章,每一章都要求大约相当于一周的课程量,因此,通学本书的全部内容需要两学期的系列课程。或者,课程也可以被裁减以适应教师和学生的兴趣。由于覆盖面广泛,本书可以用于支撑无论是短期介绍性的本科课程还是关于高级话题的专业研究生课程。位于网站aima.cs.berkeley.edu上显示了来自超过600所采用本书第一版的大学和学院的教学大纲样本,以及帮助找到你所需要的一系列合适的读物的建议。
本书包括385道习题。我们用“键盘图标”标明了需要重视程序设计的习题,这些习题最好借助aima.cs.berkeley.edu的代码库加以解决。部分习题足够庞大,可以当作学期项目来完成。一些习题要求对文献进行某种调研;这些习题用“书籍图标”标记。
使用网站
在网站aima.cs.berkeley.edu上你能够找到:
本书中的算法用各种程序设计语言完成的实现,
超过600所已经在使用本书的学校的列表,很多还包括联机课程材料的链接,
超过800个含有有用人工智能内容的网站链接列表,以及相关注释,
关于补充材料和链接的逐章的列表,
关于如何加入本书讨论组的说明,
关于如何联系作者,提出问题和建议的说明,
关于如何报告书中的错误(很可能存在某些错误)的说明,以及
本书插图,连同为教师准备的幻灯片及其它材料的副本。
致谢
Jitendra Malik撰写了第二十四章(关于视觉)的大部分。而第二十五章(关于机器人学)的大部分内容,第二版由Sebastian Thrun完成,第一版由John Canny完成。Doug Edwards考察了第一版中的历史注释。Tim Huang,Mark Paskin以及Cynthia Bruyns帮助整理了图表和算法格式。Prentice Hall的Alan Apt,Sondra Chavez,Toni Holm,Jake Warde,Irwin Zucker以及Camille Trentacoste等人倾尽全力帮助我们保持进度,并且对本书的设计和内容提出了很多非常有益的建议。
斯图尔特(Stuart——本书作者之一,斯图尔特·罗素——译者注)感谢他的父母不断的支持和鼓励,感谢他的妻子Loy Sheflott的无尽耐心和无穷智慧。他希望Gordon和Lucy能够很快读到本书。RUGS(Russell's Unusual Group of Students,罗素的非常学生小组)提供了非同寻常的帮助。
彼得(Peter——本书作者之一,彼得·诺维格——译者注)感谢他的父母(Torsten和Gerda)帮助他迈出的第一步,感谢他的妻子(Kris),孩子,以及所有在他长时间的写作与更长时间的改写过程中鼓励和宽容他的朋友们。
感谢伯克利(Berkeley)、斯坦福(Stanford)、MIT以及NASA等图书馆的工作人员,以及CiteSeer和Google的开发人员,是他们为我们带来了搜索方式的彻底变革。
我们无法感谢到所有使用过本书并为本书提出过建议的读者,不过我们在此还是要感谢来自下面这些读者的特别有益的意见:Eyal Amir,Krzysztof Apt,Ellery Aziel,Jeff Van Baalen,Brian Baker,Don Barker,Tony Barrett,James Newton Bass,Don Beal,Howard Beck,Wolfgang Bibel,John Binder,Larry Bookamn,David R. Boxall,Gerhard Brewka,Selmer Bringsjord,Carla Brodley,Chirs Brown,Wilhelm Burger,Lauren Burka,Joao Cachopo,Murray Campbell,Norman Carver,Emmanuel Castro,Anil Chakravarthy,Dan Chisarick,Roberto Cipolla,David Cohen,James Coleman,Julie Ann Comparini,Gary Cottrell,Ernest Davis,Rina Dechter,Tom Dietterich,Chuck Dyer,Barbara Engelhardt,Doug Edwards,Kutluhan Erol,Oren Etzioni,Hana Filip,Douglas Fisher,Jeffrey forbes,Key Ford,John Fosler,Alex Franz,Bob Futrelle,marek Galecki,Stefan Gerberding,Stuat Gill,Sabine Glessner,Seth Golub,Gosta Grahne,russ Greiner,eric Grimson,Barbara Grosz,Larry Hall,Steve Hanks,Othar Hansson,Ernst Heinz,Jim Hendler,Christoph Herrmann,Vasant Honavar,Tim Huang,Seth Hutchinson,Joost Jacob,Mangus Johansson,Dan Jurasfky,Leslie Kaelbling,Keiji Kanazawa,Surekha Kasibhatla,Simon Kasif,Henry Kautz,Gernot Kerschbaumer,Richard Kirby,Kevin Knight,Sven Koenig,Daphne Koller,rich Korf,James Kurien,John Lafferty,Gus Larsson,John Lazzaro,Jon LeBlanc,Jason Leatherman,Frank Lee,Edward Lim,Pierre Louveaux,Don Loveland,Srihhar Mahadevan,Jim Martin,Andy Mayer,David McGrane,jay mendelsohn,Brian Milch,Steve Minton,Vibhu Mittal,Leora Morgenstern,Stephen Muggleton,Kevin Murphy,Ron Musick,sung Myaeng,Lee Naish,Paudu nayak,Bernhard Nebel,Stuart Nelson,XuanLong Nguyen,Illah Nourbakhsh,steve Omohundro,David Page,David Palmer,David Parkes,Ron Parr,Mark Paskin,Tony Passera,Michael Pazzani,wim Pijls,Ira Pohl,Martha Pollack,Philip Resnik,Francesca rossi,Jonathan Schaeffer,Richard Scherl,Lars Schuster,soheil Shams,Stuart Shapiro,Jude Shavlik,Satinder Singh,Daniel Sleator,David Smith,Bryan So,Robert Sproull,Lynn Stein,Larry Stephens,Andreas Stolcke,Paul Stradling,Devika Subramannian,Rich Stutton,Jonathan Tash,Austin Tate,Michael Thieschler,William Thompson,Sebastian Thrun,Eirc Tiedemann,Mark Torrance,Randall Upham,Paul Utgoff,Peter van Beek,hal Varian,Sunil Vemuri,Jim Waldo,Boenie Webber,Dan Weld,Michael Wellman,Michael Dean White,Kamin whitehouse,Brian Williams,David wolfe,bill woods,alden Wright,Richard Yen,weixiong zhang,Shlomo Zil,berstein,以及Prentice Hall提供的一些不知名的评论家们。
关于封面(英文原版)
封面图案由本书作者设计,并由Lisa Marie Sardengna和Maryann Simmons使用SGI Inventor TM 和Adobe Photoshop TM 制作实现。封面图案描绘了人工智能历史中的下列内容:
《动物的运动》(De Motu Animalium)中亚里士多德(Aristotle)提出的规划算法(约公元前400年)。
《大艺术》(Ars Magna)中Ramon Lull的概念生成器(约公元1300年)。
查尔斯·巴贝奇(Charles Babbage)的差分机,第一台通用计算机的原型(1848)。
刘易斯·卡洛尔(Lewis Carroll)的逻辑推理图(1886)。
休沃·赖特(Sewall Wright)的概率网络符号(1921)。
阿兰·图灵(Alan Turing,1912-1954)。
机器人Shakey(1969-1973)。
一个现代诊断专家系统(1993)。