第1章 谢菲尔德大学的MATLAB遗传算法工具箱 1
1.1理论基础 1
1.1.1遗传算法概述 1
1.1.2谢菲尔德遗传算法工具箱 1
1.2案例背景 3
1.2.1问题描述 3
1.2.2解题思路及步骤 3
1.3 MATLAB程序实现 3
1.3.1工具箱结构 3
1.3.2遗传算法常用函数 4
1.3.3遗传算法工具箱应用举例 12
1.4延伸阅读 16
参考文献 16
第2章 基于遗传算法和非线性规划的函数寻优算法 17
2.1理论基础 17
2.1.1非线性规划 17
2.1.2非线性规划函数 17
2.1.3遗传算法基本思想 17
2.1.4算法结合思想 18
2.2案例背景 18
2.2.1问题描述 18
2.2.2算法流程 18
2.2.3遗传算法实现 19
2.3 MATLAB程序实现 20
2.3.1适应度函数 20
2.3.2选择操作 20
2.3.3交叉操作 20
2.3.4变异操作 21
2.3.5算法主函数 22
2.3.6非线性寻优 24
2.3.7结果分析 24
2.4延伸阅读 25
2.4.1其他函数的优化 25
2.4.2其他优化算法 26
参考文献 26
第3章 基于遗传算法的BP神经网络优化算法 27
3.1理论基础 27
3.1.1 BP神经网络概述 27
3.1.2遗传算法的基本要素 27
3.2案例背景 27
3.2.1问题描述 27
3.2.2解题思路及步骤 29
3.3 MATLAB程序实现 31
3.3.1神经网络算法 31
3.3.2遗传算法主函数 32
3.3.3比较使用遗传算法前后的差别 34
3.3.4结果分析 35
3.4延伸阅读 36
参考文献 37
第4章 基于遗传算法的TSP算法 38
4.1理论基础 38
4.2案例背景 38
4.2.1问题描述 38
4.2.2解决思路及步骤 39
4.3 MATLAB程序实现 40
4.3.1种群初始化 40
4.3.2适应度函数 40
4.3.3选择操作 41
4.3.4交叉操作 41
4.3.5变异操作 43
4.3.6进化逆转操作 43
4.3.7画路线轨迹图 43
4.3.8遗传算法主函数 44
4.3.9结果分析 47
4.4延伸阅读 48
4.4.1应用扩展 48
4.4.2遗传算法的改进 49
4.4.3算法的局限性 49
参考文献 49
第5章 基于遗传算法的LQR控制器优化设计 50
5.1理论基础 50
5.1.1 LQR控制 50
5.1.2基于遗传算法设计LQR控制器 50
5.2案例背景 51
5.2.1问题描述 51
5.2.2解题思路及步骤 52
5.3 MATLAB程序实现 53
5.3.1模型实现 53
5.3.2遗传算法实现 54
5.3.3结果分析 56
参考文献 56
第6章 遗传算法工具箱详解及应用 57
6.1理论基础 57
6.1.1遗传算法的一些基本概念 57
6.1.2遗传算法与直接搜索工具箱 58
6.2案例背景 58
6.2.1问题描述 58
6.2.2解题思路及步骤 59
6.3 MATLAB程序实现 59
6.3.1 GADST各函数详解 59
6.3.2 GADST的使用简介 63
6.3.3使用GADST求解遗传算法相关问题 66
6.4延伸阅读 68
参考文献 68
第7章 多种群遗传算法的函数优化算法 69
7.1理论基础 69
7.1.1遗传算法早熟问题 69
7.1.2多种群遗传算法概述 69
7.2案例背景 70
7.2.1问题描述 70
7.2.2解题思路及步骤 71
7.3 MATLAB程序实现 71
7.3.1移民算子 72
7.3.2人工选择算子 72
7.3.3目标函数 73
7.3.4标准遗传算法主函数 73
7.3.5多种群遗传算法主函数 74
7.3.6结果分析 75
7.4延伸阅读 76
参考文献 77
第8章 基于量子遗传算法的函数寻优算法 78
8.1理论基础 78
8.1.1量子遗传算法概述 78
8.1.2量子比特编码 78
8.1.3量子门更新 79
8.2案例背景 79
8.2.1问题描述 79
8.2.2解题思路及步骤 80
8.3 MATLAB程序实现 82
8.3.1种群初始化 82
8.3.2测量函数 82
8.3.3量子旋转门函数 83
8.3.4适应度函数 84
8.3.5量子遗传算法主函数 85
8.3.6结果分析 87
8.4延伸阅读 87
参考文献 88
第9章 基于遗传算法的多目标优化算法 89
9.1理论基础 89
9.1.1多目标优化及Pareto最优解 89
9.1.2函数gamultiobj 89
9.1.3函数gamultiobj中的一些基本概念 90
9.2案例背景 90
9.2.1问题描述 90
9.2.2解题思路及步骤 90
9.3 MATLAB程序实现 91
9.3.1 gamultiobj组织结构 91
9.3.2函数stepgamultiobj分析 92
9.3.3使用函数gamultiobj求解多目标优化问题 99
9.3.4结果分析 100
参考文献 101
第10章 基于粒子群算法的多目标搜索算法 102
10.1理论基础 102
10.2案例背景 102
10.2.1问题描述 102
10.2.2算法流程 103
10.2.3适应度计算 103
10.2.4筛选非劣解集 103
10.2.5粒子速度和位置更新 103
10.2.6粒子最优 104
10.3 MATLAB程序实现 104
10.3.1种群初始化 104
10.3.2种群更新 104
10.3.3更新个体最优粒子 105
10.3.4非劣解筛选 105
10.3.5仿真结果 106
10.4延伸阅读 107
参考文献 107
第11章 基于多层编码遗传算法的车间调度算法 108
11.1理论基础 108
11.2案例背景 108
11.2.1问题描述 108
11.2.2模型建立 108
11.2.3算法实现 109
11.3 MATLAB程序实现 110
11.3.1主函数 110
11.3.2适应度值计算 111
11.3.3交叉函数 113
11.3.4变异函数 113
11.3.5仿真结果 114
11.4案例扩展 115
11.4.1模糊目标 115
11.4.2代码分析 116
11.4.3仿真结果 117
参考文献 117
第12章 免疫优化算法在物流配送中心选址中的应用 118
12.1理论基础 118
12.1.1物流中心选址问题 118
12.1.2免疫算法的基本思想 118
12.2案例背景 119
12.2.1问题描述 119
12.2.2解题思路及步骤 120
12.3 MATLAB程序实现 122
12.3.1免疫算法主函数 122
12.3.2多样性评价 123
12.3.3免疫操作 124
12.3.4仿真实验 127
12.4案例扩展 128
参考文献 129
第13章 粒子群算法的寻优算法 130
13.1理论基础 130
13.2案例背景 130
13.2.1问题描述 130
13.2.2解题思路及步骤 131
13.3 MATLAB程序实现 131
13.3.1 PSO算法参数设置 131
13.3.2种群初始化 132
13.3.3寻找初始极值 132
13.3.4迭代寻优 133
13.3.5结果分析 133
13.4延伸阅读 134
13.4.1惯性权重的选择 134
13.4.2ω变化的算法性能分析 135
参考文献 136
第14章 基于粒子群算法的PID控制器优化设计 137
14.1理论基础 137
14.2案例背景 137
14.2.1问题描述 137
14.2.2解题思路及步骤 138
14.3 MATLAB程序实现 139
14.3.1 Simulink部分的程序实现 139
14.3.2 PSO部分的程序实现 139
14.3.3结果分析 141
14.4延伸阅读 142
参考文献 143
第15章 基于混合粒子群算法的TSP搜索算法 144
15.1理论基础 144
15.2案例背景 144
15.2.1问题描述 144
15.2.2算法流程 144
15.2.3算法实现 144
15.3 MATLAB程序实现 145
15.3.1适应度函数 145
15.3.2粒子初始化 146
15.3.3交叉操作 146
15.3.4变异操作 147
15.3.5仿真结果 148
15.4延伸阅读 148
参考文献 149
第16章 基于动态粒子群算法的动态环境寻优算法 150
16.1理论基础 150
16.1.1动态粒子群算法 150
16.1.2动态环境 150
16.2案例背景 151
16.3 MATLAB程序实现 152
16.3.1动态环境函数 152
16.3.2种群初始化 153
16.3.3循环动态寻找 153
16.3.4仿真结果 154
16.4延伸阅读 155
16.4.1 APSO 155
16.4.2 EPSO 155
16.4.3 TDPSO 155
参考文献 156
第17章 基于PSO工具箱的函数寻优算法 157
17.1理论基础 157
17.1.1工具箱介绍 157
17.1.2工具箱函数解释 157
17.2案例背景 158
17.2.1问题描述 158
17.2.2工具箱设置 158
17.3 MATLAB程序实现 159
17.3.1适应度函数 159
17.3.2主函数 160
17.3.3仿真结果 160
17.4延伸阅读 161
参考文献 161
第18章 基于鱼群算法的函数寻优算法 162
18.1理论基础 162
18.1.1人工鱼群算法概述 162
18.1.2人工鱼群算法的主要行为 162
18.1.3问题的解决 163
18.2案例背景 163
18.2.1问题描述 163
18.2.2解题思路及步骤 164
18.3 MATLAB程序实现 167
18.3.1鱼群初始化函数 167
18.3.2觅食行为 167
18.3.3聚群行为 168
18.3.4追尾行为 170
18.3.5目标函数 171
18.3.6一元函数优化 171
18.3.7二元函数优化 173
18.4延伸阅读 176
18.4.1人工鱼群算法优点 176
18.4.2算法改进的几个方向 176
参考文献 177
第19章 基于模拟退火算法的TSP算法 178
19.1理论基础 178
19.1.1模拟退火算法基本原理 178
19.1.2 TSP问题介绍 179
19.2案例背景 179
19.2.1问题描述 179
19.2.2解题思路及步骤 179
19.3 MATLAB程序实现 180
19.3.1计算距离矩阵 180
19.3.2初始解 180
19.3.3生成新解 180
19.3.4 Metropolis准则函数 181
19.3.5画路线轨迹图 181
19.3.6输出路径函数 182
19.3.7可行解路线长度函数 182
19.3.8模拟退火算法主函数 183
19.3.9结果分析 185
19.4延伸阅读 187
19.4.1模拟退火算法的改进 187
19.4.2算法的局限性 187
参考文献 187
第20章 基于遗传模拟退火算法的聚类算法 188
20.1理论基础 188
20.1.1模糊聚类分析 188
20.1.2模拟退火算法 188
20.1.3遗传算法 188
20.1.4模拟退火算法与遗传算法结合 188
20.2案例背景 189
20.2.1问题描述 189
20.2.2解题思路及步骤 189
20.3 MATLAB程序实现 191
20.3.1 FCM聚类实现 191
20.3.2 SAGA优化初始聚类中心 192
20.4延伸阅读 196
参考文献 196
第21章 模拟退火算法工具箱及应用 197
21.1理论基础 197
21.1.1模拟退火算法工具箱 197
21.1.2模拟退火算法的一些基本概念 198
21.2案例背景 198
21.2.1问题描述 198
21.2.2解题思路及步骤 198
21.3 MATLAB程序实现 199
21.3.1函数sanewpoint 199
21.3.2函数saupdates 202
21.3.3应用SAT求函数Rastrigin的最小值 203
21.3.4结果分析 203
参考文献 204
第22章 蚁群算法的优化计算——旅行商问题(TSP)优化 205
22.1理论基础 205
22.1.1蚁群算法基本思想 205
22.1.2蚁群算法解决TSP问题基本原理 205
22.1.3蚁群算法解决TSP问题基本步骤 206
22.1.4蚁群算法的特点 207
22.2案例背景 207
22.2.1问题描述 207
22.2.2解题思路及步骤 207
22.3 MATLAB程序实现 209
22.3.1清空环境变量 209
22.3.2导入数据 209
22.3.3计算城市间相互距离 209
22.3.4初始化参数 209
22.3.5迭代寻找最佳路径 210
22.3.6结果显示 212
22.3.7绘图 212
22.4延伸阅读 213
22.4.1参数的影响及选择 213
22.4.2延伸阅读 215
参考文献 216
第23章 基于蚁群算法的二维路径规划算法 217
23.1理论基础 217
23.1.1路径规划算法 217
23.1.2 MAKLINK图论理论 217
23.1.3蚁群算法 218
23.1.4 dijkstra算法 219
23.2案例背景 219
23.2.1问题描述 219
23.2.2算法流程 219
23.2.3蚁群算法实现 219
23.3 MATLAB程序 221
23.3.1 dijkstra算法 221
23.3.2蚁群算法搜索 222
23.3.3结果分析 224
23.4延伸阅读 225
23.4.1蚁群算法改进 225
23.4.2程序实现 226
参考文献 227
第24章 基于蚁群算法的三维路径规划算法 229
24.1理论基础 229
24.1.1三维路径规划问题概述 229
24.1.2三维空间抽象建模 229
24.2案例背景 230
24.2.1问题描述 230
24.2.2算法流程 230
24.2.3信息素更新 230
24.2.4可视搜索空间 231
24.2.5蚁群搜索策略 231
24.3 MATLAB程序 232
24.3.1启发值计算函数 232
24.3.2适应度计算函数 233
24.3.3路径搜索 233
24.3.4主函数 234
24.3.5仿真结果 235
24.4延伸阅读 236
参考文献 236
第25章 有导师学习神经网络的回归拟合——基于近红外光谱的汽油辛烷值预测 237
25.1理论基础 237
25.1.1 BP神经网络概述 237
25.1.2 RBF神经网络概述 240
25.2案例背景 242
25.2.1问题描述 242
25.2.2解题思路及步骤 242
25.3 MATLAB程序实现 243
25.3.1清空环境变量 243
25.3.2产生训练集/测试集 243
25.3.3创建/训练BP神经网络及仿真测试 244
25.3.4创建RBF神经网络及仿真测试 244
25.3.5性能评价 244
25.3.6绘图 245
25.4延伸阅读 246
25.4.1网络参数的影响及选择 246
25.4.2案例延伸 246
参考文献 247
第26章 有导师学习神经网络的分类——鸢尾花种类识别 248
26.1理论基础 248
26.1.1广义回归神经网络(GRNN)概述 248
26.1.2概率神经网络(PNN)概述 250
26.2案例背景 251
26.2.1问题描述 251
26.2.2解题思路及步骤 252
26.3 MATLAB程序实现 253
26.3.1清空环境变量 253
26.3.2产生训练集/测试集 253
26.3.3建立模型 254
26.3.4性能评价 255
26.3.5绘图 255
26.3.6结果分析 256
26.4延伸阅读 257
参考文献 257
第27章 无导师学习神经网络的分类——矿井突水水源判别 259
27.1理论基础 259
27.1.1竞争神经网络概述 259
27.1.2 SOFM神经网络概述 261
27.2案例背景 262
27.2.1问题描述 262
27.2.2解题思路及步骤 262
27.3 MATLAB程序实现 263
27.3.1清空环境变量 263
27.3.2产生训练集/测试集 263
27.3.3创建/训练竞争神经网络及仿真测试 264
27.3.4创建SOFM神经网络及仿真测试 264
27.3.5性能评价 265
27.3.6结果分析 265
27.4延伸阅读 267
27.4.1竞争神经网络与SOFM神经网络性能对比 267
27.4.2案例延伸 268
参考文献 268
第28章 支持向量机的分类——基于乳腺组织电阻抗特性的乳腺癌诊断 269
28.1理论基础 269
28.1.1支持向量机分类原理 269
28.1.2 libsvm软件包简介 273
28.2案例背景 273
28.2.1问题描述 273
28.2.2解题思路及步骤 274
28.3 MATLAB程序实现 275
28.3.1清空环境变量 275
28.3.2产生训练集/测试集 275
28.3.3数据归一化 275
28.3.4创建/训练SVM(RBF核函数) 276
28.3.5 SVM仿真测试 277
28.3.6绘图 277
28.4延伸阅读 278
28.4.1性能对比 278
28.4.2案例延伸 279
参考文献 279
第29章 支持向量机的回归拟合——混凝土抗压强度预测 280
29.1理论基础 280
29.1.1 SVR基本思想 280
29.1.2支持向量机的训练算法 281
29.2案例背景 282
29.2.1问题描述 282
29.2.2解题思路及步骤 283
29.3 MATLAB程序实现 284
29.3.1清空环境变量 284
29.3.2产生训练集/测试集 284
29.3.3数据归一化 285
29.3.4创建/训练SVR模型 285
29.3.5 SVR仿真预测 286
29.3.6绘图 286
29.4延伸阅读 287
29.4.1核函数对模型性能的影响 287
29.4.2性能对比 287
29.4.3案例延伸 288
参考文献 289
第30章 极限学习机的回归拟合及分类——对比实验研究 290
30.1理论基础 290
30.1.1 ELM的基本思想 290
30.1.2 ELM的学习算法 292
30.1.3 ELM的MATLAB实现 293
30.2案例背景 296
30.2.1问题描述 296
30.2.2解题思路及步骤 296
30.3 MATLAB程序实现 296
30.3.1 ELM的回归拟合——基于近红外光谱的汽油辛烷值预测 297
30.3.2 ELM的分类——鸢尾花种类识别 299
30.4延伸阅读 301
30.4.1隐含层神经元个数的影响 301
30.4.2案例延伸 301
参考文献 301