第一章 遗传算法概述 1
1.1 遗传算法的概念 1
1.2 遗传算法的特点 3
1.2.1 遗传算法的优点 3
1.2.2 遗传算法的不足之处 4
1.3 遗传算法与传统方法的比较 4
1.4 遗传算法的基本用语 6
1.5 遗传算法的研究方向 7
1.6 基于遗传算法的应用 8
第二章 基本遗传算法及改进 11
2.1 遗传算法的运行过程 11
2.1.1 完整的遗传算法运算流程 11
2.1.2 遗传算法的基本操作 13
2.2 基本遗传算法 14
2.2.1 基本遗传算法的数学模型 14
2.2.2 基本遗传算法的步骤 14
2.2.3 遗传算法的具体例证 16
2.3 改进的遗传算法 22
2.3.1 改进的遗传算法一 23
2.3.2 改进的遗传算法二 24
2.3.3 改进的遗传算法三 25
2.3.4 改进的遗传算法四 27
2.4 多目标优化中的遗传算法 29
2.4.1 多目标优化的概念 30
2.4.2 多目标优化问题的遗传算法 31
第三章 遗传算法的理论基础 33
3.1 模式定理 33
3.2 积木块假设 35
3.3 欺骗问题 36
3.4 遗传算法的未成熟收敛问题及其防止 38
3.4.1 遗传算法的未成熟收敛问题 38
3.4.2 未成熟收敛的防止 39
3.5 性能评估 40
3.6 小生境技术和共享函数 42
第四章 遗传算法的基本原理与方法 43
4.1 编码 43
4.1.1 编码方法 44
4.1.2 编码评估策略 46
4.2 选择 46
4.3 交叉 50
4.4 变异 53
4.5 适应度函数 55
4.5.1 适应度函数的作用 55
4.5.2 适应度函数的设计主要满足的条件 56
4.5.3 适应度函数的种类 56
4.5.4 适应度尺度的变换 57
4.6 控制参数的选择 58
4.7 约束条件的处理 59
第五章 遗传算法工具箱函数 60
5.1 工具箱结构 60
5.1.1 种群表示和初始化 61
5.1.2 适应度计算 61
5.1.3 选择函数 61
5.1.4 变异算子 62
5.1.5 交叉算子 62
5.1.6 多子群支持 62
5.2 遗传算法中的通用函数 62
5.2.1 函数bs2rv 62
5.2.2 函数crtbase 64
5.2.3 函数crtbp 64
5.2.4 函数crtrp 65
5.2.5 函数migrate 66
5.2.6 函数mut 67
5.2.7 函数mutate 69
5.2.8 函数mutbga 70
5.2.9 函数ranking 72
5.2.10 函数recdis 74
5.2.11 函数recint 75
5.2.12 函数reclin 76
5.2.13 函数recmut 77
5.2.14 函数recombin 79
5.2.15 函数reins 80
5.2.16 函数rep 82
5.2.17 函数rws 82
5.2.18 函数scaling 83
5.2.19 函数select 84
5.2.20 函数sus 86
5.2.21 函数xovdp 86
5.2.22 函数xovdprs 87
5.2.23 函数xovmp 88
5.2.24 函数xovsh 89
5.2.25 函数xovshrs 90
5.2.26 函数xovsp 91
5.2.27 函数xovsprs 92
第六章 遗传算法工具箱的介绍 93
6.1 安装 93
6.2 种群的表示和初始化 93
6.3 目标函数和适应度函数 94
6.4 选择 95
6.5 交叉 97
6.6 变异 98
6.7 重插入 99
6.8 遗传算法的终止 100
6.9 数据结构 100
6.10 多种群支持 101
6.11 示范脚本 103
第七章 遗传算法应用举例 104
7.1 简单一元函数优化实例 104
7.2 多元单峰函数的优化实例 108
7.3 多元多峰函数的优化实例 112
7.4 收获系统最优控制 115
7.5 装载系统的最优问题 119
7.6 离散二次线性系统最优控制问题 122
7.7 目标分配问题 125
7.8 双积分的优化问题 127
7.9 雷达目标识别问题 128
7.10 图像增强问题 131
7.11 一些测试函数对应的优化问题 133
7.11.1 轴并行超球体的最小值问题 133
7.11.2 旋转超球体的最小值问题 134
7.11.3 Rosenbrock's Valley最小值问题 135
7.11.4 Rastrigin函数的最小值问题 136
7.11.5 Schwefel函数的最小值问题 137
7.11.6 Griewangk函数的最小值问题 138
7.11.7 不同权的总和最小值问题 139
7.12 多目标优化问题 139
第八章 使用MATLAB遗传算法工具 143
8.1 遗传算法与直接搜索工具箱概述 143
8.1.1 工具箱的特点 143
8.1.2 编写待优化函数的M文件 145
8.2 使用遗传算法工具初步 146
8.2.1 遗传算法使用规则 147
8.2.2 遗传算法使用方式 147
8.2.3 举例:Rastrigin函数 149
8.2.4 遗传算法的一些术语 154
8.2.5 遗传算法如何工作 155
8.3 使用遗传算法工具求解问题 158
8.3.1 使用遗传算法工具GUI 158
8.3.2 从命令行使用遗传算法 170
8.3.3 遗传算法举例 177
8.3.4 混合整数优化 196
8.3.5 用遗传算法求解混合整数工程设计问题 201
8.4 遗传算法参数和函数 207
8.4.1 遗传算法参数 207
8.4.2 遗传算法函数 217
8.4.3 标准算法选项 223
第九章 使用MATLAB直接搜索工具 224
9.1 直接搜索工具概述 224
9.2 直接搜索算法 225
9.2.1 直接搜索 225
9.2.2 执行模式搜索 225
9.2.3 寻找函数最小值 227
9.2.4 模式搜索术语 229
9.2.5 模式搜索如何工作 230
9.3 使用直接搜索工具 235
9.3.1 浏览模式搜索工具 235
9.3.2 从命令行运行模式搜索 245
9.3.3 模式搜索算法举例 248
9.3.4 参数化函数 267
9.3.5 用户绘图函数 269
9.3.6 向量化目标函数和约束函数 272
9.3.7 并行优化ODE问题 274
9.4 模式搜索参数和函数 281
9.4.1 模式搜索参数 282
9.4.2 模式搜索函数 294
9.5 搜索和表决 300
9.5.1 搜索的定义 300
9.5.2 搜索方法 301
9.5.3 搜索类型 301
9.5.4 搜索时机 301
9.6 非线性约束求解算法 302
第十章 遗传算法在图像处理中的应用 303
10.1 基于GA的图像分割方法 303
10.1.1 基于简单GA的图像分割阈值法 303
10.1.2 基于改进GA的图像分割方法 309
10.2 最大类间方差法与GA相结合的图像分割方法 317
10.3 最佳直方图熵法与GA相结合的图像分割方法 319
10.4 最佳直方图熵法与改进GA相结合的图像分割方法 322
10.5 二维最佳直方图熵法及改进GA分割图像方法 325
10.6 基于GA的植物病害叶片中的病斑提取方法 332
10.7 基于遗传神经网络的图像分割方法 333
10.8 基于GA的文字提取方法 336
参考文献 340