引言 1
一 我的三个小孩的年龄有多大? 6
1 为何有些问题难以求解? 8
1.1 搜索空间的大小 8
1.2 给问题建模 12
1.3 随时间而变化 15
1.4 约束 16
1.5 证明问题 18
1.6 你辉煌成就的机会 19
1.7 小结 22
二 一个模型有多重要? 23
2 基本要件 26
2.1 表示方式 26
2.2 目标 27
2.3 评估函数 28
2.4 定义一个搜索问题 29
2.5 邻域和局部最优解 29
2.6 爬山法 31
2.7 你会落入这种圈套吗? 33
2.8 小结 35
三 7-11连锁店里的价格是多少? 37
3 传统方法——第一部分 41
3.1 穷举搜索 43
3.1.1 枚举SAT问题 44
3.1.2 枚举TSP问题 45
3.1.3 枚举NLP问题 47
3.2 局部搜索 48
3.2.1 局部搜索和SAT问题 49
3.2.2 局部搜索和TSP问题 50
3.2.3 局部搜索和NLP问题 52
3.3 线性规划:单纯形法 59
3.4 小结 62
四 这些数是什么? 63
4 传统方法——第二部分 66
4.1 贪婪算法 66
4.1.1 贪婪算法和SAT问题 66
4.1.2 贪婪算法和TSP问题 67
4.1.3 贪婪算法和NLP问题 68
4.2 分而治之法 69
4.3 动态规划法 71
4.4 分枝定界法 78
4.5 A算法 81
4.6 小结 84
五 熊是什么颜色? 85
5 跳离局部最优 88
5.1 模拟退火 90
5.2 禁忌搜索 96
5.3 小结 103
六 你的直觉如何? 104
6 演化方法 107
6.1 求解SAT的演化方法 109
6.2 求解TSP的演化方法 111
6.3 求解NLP的演化方法 114
6.4 小结 115
七 这些东西中有一个与众不同 120
7 演化算法的设计 123
7.1 表示 126
7.1.1 固定长的符号向量 127
7.1.2 排列 127
7.1.3 有穷状态机 128
7.1.4 符号表达式 128
7.2 评估函数 129
7.3.1 固定长的符号向量 131
7.3 变化算子 131
7.3.2 排列 132
7.3.3 有穷状态机 133
7.3.4 符号表达式 134
7.4 选择 136
7.5 初始化 138
7.6 小结 139
八 最短路径是什么? 140
8 旅行商问题 143
8.1 寻找好的变化算子 145
8.2 结合局部搜索方法 161
8.3 其他可能性 163
8.3.1 边组装杂交 164
8.3.2 反序-杂交算子 166
8.4 小结 169
九 斑马属谁? 171
9 约束处理技术 175
9.1 概述 176
9.1.1 evalf的设计 177
9.1.3 evalf和evalu之间的关系 179
9.1.2 evalu的设计 179
9.1.4 拒绝不可行解 180
9.1.5 修补不可行个体 181
9.1.6 用修补后个体替换原个体 181
9.1.7 惩罚不可行个体 182
9.1.8 通过使用专门的表示方式和变化算子保持一个可行的种群 182
9.1.9 使用译码器 183
9.1.10 个体与约束的分离 184
9.1.11 探索搜索空间的可行部分与不可行部分的边界 184
9.1.12 寻找可地解 185
9.2.1 基于保持解的可行性的方法 186
9.2 数值优化 186
9.2.2 基于罚函数的方法 189
9.2.3 基于搜索可行解的方法 195
9.2.4 基于译码器的方法 201
9.2.5 混合方法 202
9.3 小结 204
十 你能调整问题吗? 206
10 针对问题调整算法 211
10.1 演化算法中的参数控制 211
10.2 用一个NLP说明问题 214
10.3 控制技术的分类 216
10.4 参数控制方法 219
10.4.1 表示方式 219
10.4.2 评估函数 220
10.4.3 变异算子和变异率 220
10.4.4 杂交算子和杂交率 222
10.4.5 父体的选择 224
10.4.6 种群 224
10.5 参数控制的组合形式 225
10.6 小结 226
十一 你能两步制胜吗? 229
11 随时间变化的环境和噪声 232
11.1 动态变化的世界 232
11.2 现实世界是有噪声的 239
11.3 小结 246
十二 元旦是星期几? 251
12 神经网络 254
12.1 阈神经元与线性划分函数 254
12.2 前馈多层感知器的反传 259
12.3 训练与测试 262
12.4 递归网络及其扩展结构 263
12.4.2 Hopfield网络 264
12.4.1 标准递归网络 264
12.4.3 Boltzmann机 265
12.4.4 多交互程序的网络 266
12.5 采用竞争网络进行聚类 267
12.6 应用神经网络求解TSP 269
12.7 演化神经网络 270
12.8 小结 271
十三 这根绳子有多长? 273
13.1 模糊集 276
13 模糊系统 276
13.2 模糊集和概率测度 277
13.3 模糊集的运算 278
13.4 模糊关系 280
13.5 设计模糊控制器 282
13.6 模糊聚类 286
13.7 模糊神经网络 289
13.8 模糊TSP 291
13.9 演化模糊系统 292
13.10 小结 293
十四 你喜欢简单的解决办法吗? 294
14 混合系统 299
15 总结 308
附录A 概率与统计 317
A.1 概率的基本概念 317
A.2 随机变量 318
A.2.1 离散型随机变量 319
A.2.2 连续型随机变量 321
A.3 随机变量的描述性统计量 322
A.4 极限定理与极限不等式 324
A.5 随机变量的相加 325
A.6 在计算机中产生随机数 326
A.7 估计 327
A.8 统计的假设检验 329
A.9 线性回归 330
A.10 小结 331
附录B 问题与项目 333
B.1 尝试一些实际问题 334
B.2 报道采用启发式方法的计算实验 338
参考文献 340