本书聚焦遗传编程算法这一能够自动发现知识与优化模型结构的研究领域,由浅入深地带领读者从基础原理迈向工程前沿。首先,系统回顾遗传编程算法的发展历史和研究现状,并介绍基本的遗传编程算法及其变种。其次,深入探讨遗传编程算法在应对符号回归、组合优化与分类的实战任务中的表现,同时,关注遗传编程的可解释性的度量机制与多目标优化技术,并探讨了遗传编程算法的改进机制。最后,总结当前遗传编程研究的核心热点与瓶颈挑战,并对未来发展趋势进行深度前瞻。
样章试读
目录
- 目录
前言
第1章 绪论 1
1.1 遗传编程算法概述 1
1.2 遗传编程算法的研究现状 2
1.2.1 编码机制 4
1.2.2 常数优化机制 5
1.2.3 解的可解释性改进机制 5
1.2.4 学习辅助的进化机制 7
1.2.5 基于语义的进化机制 7
1.2.6 并行进化机制 8
1.2.7 常用应用领域 9
1.3 遗传编程算法的开源资源 13
1.4 本章小结 14
1.5 问题探讨 14
参考文献 15
第2章 基本的遗传编程算法及其变种 20
2.1 标准遗传编程算法 20
2.1.1 编码机制 21
2.1.2 算法流程 21
2.1.3 初始化 23
2.1.4 适应度评估 23
2.1.5 选择操作 24
2.1.6 交叉操作 24
2.2 线性遗传编程算法 25
2.2.1 编码机制 26
2.2.2 算法流程 27
2.2.3 初始化 29
2.2.4 适应度评估 29
2.2.5 选择、交叉与变异操作 31
2.3 基因表达式编程算法 32
2.3.1 染色体编码与算法流程 32
2.3.2 初始化与适应度评估 35
2.3.3 选择重组与变异操作 37
2.3.4 迁移操作 38
2.3.5 交叉操作 41
2.4 笛卡儿遗传编程算法 42
2.4.1 染色体编码 43
2.4.2 算法流程 47
2.4.3 变异 50
2.5 文法演化算法 52
2.5.1 巴克斯-诺尔范式 53
2.5.2 映射 55
2.5.3 复制与剪切 57
2.6 本章小结 61
2.7 问题探讨 62
参考文献 62
第3章 遗传编程算法求解符号回归 64
3.1 符号回归技术 64
3.2 常用的符号回归测试集 65
3.2.1 经典基准测试集 65
3.2.2 基于实际应用的测试集 68
3.2.3 基于物理实验数据的测试集 68
3.3 提高精度的策略 72
3.3.1 引入常数技术 72
3.3.2 嵌入线性回归技术 73
3.3.3 基于语义的优化技术 75
3.4 基于构建块线性组合的遗传编程算法 79
3.4.1 染色体编码 79
3.4.2 进化过程 81
3.4.3 实验对比 90
3.4.4 精度比较 91
3.4.5 复杂度比较 92
3.5 本章小结 93
3.6 问题探讨 94
参考文献 94
第4章 遗传编程算法求解隐式符号回归 96
4.1 隐式符号回归问题 96
4.2 基于导数的评估策略 97
4.3 免求导的评估策略 98
4.4 带最小二乘法的基因表达式编程算法求解隐函数发现问题 102
4.4.1 算法整体流程 102
4.4.2 染色体编码机制 103
4.4.3 进化过程 103
4.4.4 实验比较 110
4.5 本章小结 113
4.6 问题探讨 113
参考文献 114
第5章 遗传编程算法的可解释性 115
5.1 可解释性的度量机制 115
5.1.1 复杂度 116
5.1.2 量纲一致性 121
5.1.3 系数 125
5.2 提升解的可解释性技术 125
5.2.1 膨胀控制 125
5.2.2 简约压力策略 126
5.2.3 多目标优化 127
5.2.4 简化操作 127
5.2.5 特征工程 129
5.3 提高遗传编程算法可解释性的实践案例 131
5.3.1 问题描述 131
5.3.2 算法框架流程 132
5.3.3 实验结果 152
5.4 本章小结 154
5.5 问题探讨 155
参考文献 155
第6章 遗传编程算法求解组合优化问题 159
6.1 面向组合优化的通用求解框架 159
6.2 遗传编程算法在典型组合优化问题的应用情况 161
6.2.1 生产调度 161
6.2.2 路径规划 162
6.2.3 切割与包装 162
6.3 工作流调度优化案例 163
6.3.1 问题定义 163
6.3.2 算法框架与实现 165
6.3.3 实验比较 176
6.4 本章小结 178
6.5 问题探讨 179
参考文献 179
第7章 遗传编程算法求解分类问题 183
7.1 分类问题背景知识及常用数据集 183
7.2 遗传编程算法求解分类问题的基本思路 187
7.2.1 遗传编程算法求解分类问题的简介 187
7.2.2 遗传编程算法求解分类问题的思路介绍 187
7.2.3 遗传编程算法求解分类问题的研究现状 189
7.3 遗传编程算法求解分类问题实践案例 190
7.3.1 算法具体实现 190
7.3.2 结果分析 197
7.4 本章小结 198
7.5 问题探讨 199
参考文献 199
第8章 深度学习辅助的遗传编程算法 201
8.1 引言 201
8.2 研究现状 202
8.2.1 图神经网络辅助的遗传编程算法 202
8.2.2 循环神经网络辅助的遗传编程算法 203
8.2.3 Transformer辅助的遗传编程算法 205
8.3 实践案例:预训练模型引导的遗传编程 207
8.3.1 算法概述 207
8.3.2 算法流程与核心代码分析 207
8.3.3 实验结果分析 213
8.4 本章小结 214
8.5 问题探讨 215
参考文献 216
第9章 并行遗传编程算法 218
9.1 研究现状概述 218
9.1.1 并行遗传编程 218
9.1.2 基于不同计算平台的遗传编程 219
9.2 基于OpenMP的并行遗传编程算法 220
9.2.1 OpenMP基本介绍 220
9.2.2 基于OpenMP的遗传编程 222
9.2.3 实验结果 224
9.3 基于MPI的并行遗传编程算法 225
9.3.1 MPI基本介绍 225
9.3.2 基于MPI的遗传编程 227
9.3.3 实验结果 231
9.4 基于GPU的并行遗传编程算法 232
9.4.1 GPU计算 232
9.4.2 基础的算法整体流程 233
9.4.3 基于GPU的GP优化方法 237
9.4.4 实验结果 239
9.5 本章小结 239
9.6 问题探讨 240
参考文献 240
第10章 遗传编程算法未来展望 242
10.1 引言 242
10.2 遗传编程算法的挑战 243
10.3 遗传编程算法的发展方向 245
10.4 本章小结 248
10.5 问题探讨 248
参考文献 249