书籍详情
MATLAB优化算法(第2版)
作者:张岩
出版社:清华大学出版社
出版时间:2023-04-01
ISBN:9787302603139
定价:¥118.00
购买这本书可以去
内容简介
本书基于MATLAB 2020a软件,根据常用优化算法进行编写,包含多种优化算法的MATLAB实现方法,可以帮助读者掌握MATLAB在优化算法中的应用。全书分为4部分,包括MATLAB基础知识、常规优化算法、智能优化算法和拓展应用。第一部分从初识MATLAB开始详细介绍MATLAB基础、程序设计、图形绘制等内容;第二部分介绍线性规划、非线性规划、无约束一维极值、无约束多维极值、约束优化方法、二次规划、多目标优化方法的MATLAB实现;第三部分介绍遗传算法、免疫算法、粒子群优化算法、小波变换、神经网络等在MATLAB中的实现;第四部分介绍MATLAB在分形维数和经济金融优化中的应用。本书以MATLAB优化实现为主线,结合各种优化算法函数的说明、优化模型案例的讲解,使读者易看懂、会应用。本书讲解翔实,深入浅出,既可作为高等院校数学建模和数学实验的参考教材,也可作为广大科研、工程技术人员的参考用书。
作者简介
张岩毕业于北京航空航天大学,博士。精通MATLAB、Mathematica、Lingo等工程仿真计算软件。熟练掌握利用MATLAB解决数学建模、科学计算、算法优化等工程应用问题。在国内外期刊发表SCI、EI检索学术论文多篇,获得授权专利多项,获得国家及省部级科技奖各一项,出版多部畅销科技图书。
目录
第一部分 MATLAB基础知识
第1章 初识MATLAB 3
1.1 工作环境 3
1.1.1 操作界面简介 3
1.1.2 命令行窗口 4
1.1.3 “命令历史记录”窗口 6
1.1.4 “当前文件夹”窗口和路径管理 8
1.1.5 搜索路径 8
1.1.6 “工作区”窗口和数组编辑器 10
1.1.7 变量的编辑命令 11
1.1.8 存取数据文件 12
1.2 帮助系统 13
1.2.1 纯文本帮助 13
1.2.2 帮助导航 13
1.2.3 示例帮助 14
1.3 本章小结 15
第2章 MATLAB基础 16
2.1 基本概念 16
2.1.1 数据类型概述 16
2.1.2 整数类型 17
2.1.3 浮点数类型 19
2.1.4 常量与变量 20
2.1.5 标量、向量、矩阵与数组 21
2.1.6 字符型 22
2.1.7 运算符 23
2.1.8 复数 25
2.1.9 无穷量和非数值量 26
2.2 向量 26
2.2.1 向量的生成 26
2.2.2 向量的加、减和乘、除运算 28
2.2.3 向量的点、叉积运算 29
2.3 数组 30
2.3.1 数组的创建和操作 31
2.3.2 数组的常见运算 34
2.4 矩阵 37
2.4.1 矩阵的生成 37
2.4.2 向量的赋值 40
2.4.3 矩阵的加、减运算 41
2.4.4 矩阵的乘法运算 42
2.4.5 矩阵的除法运算 43
2.4.6 矩阵的分解运算 43
2.5 字符串 44
2.5.1 字符串变量与一维字符数组 44
2.5.2 对字符串的多项操作 45
2.5.3 二维字符数组 46
2.6 符号 47
2.6.1 符号表达式的生成 47
2.6.2 符号矩阵 48
2.6.3 常用符号运算 49
2.7 关系运算和逻辑运算 50
2.7.1 关系运算 50
2.7.2 逻辑运算 51
2.7.3 常用函数 53
2.8 复数 54
2.8.1 复数和复矩阵的生成 54
2.8.2 复数的运算 55
2.9 数据类型间的转换 56
2.10 本章小结 57
第3章 程序设计 58
3.1 MATLAB编程概述 58
3.1.1 “编辑器”窗口 58
3.1.2 编程原则 59
3.2 M文件和函数 61
3.2.1 M文件 61
3.2.2 匿名函数 63
3.2.3 主函数与子函数 63
3.2.4 重载函数 65
3.2.5 eval、feval函数 65
3.2.6 内联函数 67
3.2.7 向量化和预分配 69
3.2.8 函数参数传递 70
3.3 程序控制 72
3.3.1 分支控制语句 72
3.3.2 循环控制语句 74
3.3.3 其他控制语句 76
3.4 程序调试和优化 80
3.4.1 程序调试命令 80
3.4.2 常见错误类型 81
3.4.3 效率优化 84
3.4.4 内存优化 85
3.5 经典案例 90
3.6 本章小结 97
第4章 图形绘制 98
4.1 数据图像绘制简介 98
4.1.1 离散数据可视化 98
4.1.2 连续函数可视化 100
4.2 二维绘图 102
4.2.1 二维绘图命令 102
4.2.2 二维图形的修饰 104
4.2.3 子图绘制法 110
4.2.4 二维绘图的经典应用 112
4.3 三维绘制 116
4.3.1 三维绘图基本命令 116
4.3.2 隐藏线的显示和关闭 119
4.3.3 三维绘图的实际应用 119
4.4 特殊图形的绘制 120
4.4.1 特殊二维图形的绘制 121
4.4.2 特殊三维图形的绘制 122
4.5 本章小结 124
第二部分 常规优化算法
第5章 线性规划 127
5.1 线性规划基本理论 127
5.1.1 线性规划问题的一般形式 127
5.1.2 线性规划问题的标准形式 128
5.1.3 线性规划问题的向量标准形式 128
5.1.4 非标准形式的标准化 129
5.1.5 线性规划模型的求解 130
5.2 优化选项参数设置 131
5.2.1 创建或编辑优化选项参数 131
5.2.2 获取优化参数 133
5.3 线性规划函数 134
5.3.1 调用格式 134
5.3.2 参数含义 135
5.3.3 命令详解 137
5.3.4 算例求解 138
5.4 线性规划应用 141
5.4.1 生产决策问题 141
5.4.2 工作人员计划安排问题 142
5.4.3 投资问题 143
5.4.4 工件加工任务分配问题 144
5.4.5 厂址选择问题 145
5.4.6 确定职工编制问题 147
5.4.7 生产计划的最优化问题 148
5.5 本章小结 149
第6章 非线性规划 150
6.1 非线性规划基础 150
6.1.1 非线性规划标准形式 150
6.1.2 最优解 151
6.1.3 求解方法概述 151
6.2 有约束非线性规划函数 153
6.2.1 调用格式 153
6.2.2 参数含义 154
6.2.3 命令详解 160
6.2.4 算例求解 161
6.3 一维搜索优化函数 163
6.3.1 调用格式 163
6.3.2 参数含义 164
6.3.3 算例求解 166
6.4 多维无约束优化函数 167
6.4.1 调用格式 168
6.4.2 参数含义 168
6.4.3 算例求解 170
6.5 多维无约束搜索函数 172
6.5.1 调用格式 172
6.5.2 参数含义 173
6.5.3 算例求解 174
6.6 多维非线性最小二乘函数 176
6.6.1 调用格式 176
6.6.2 参数含义 177
6.6.3 算例求解 180
6.7 非线性规划实例 182
6.7.1 资金调用问题 182
6.7.2 经营最佳安排问题 184
6.7.3 广告最佳投入问题 184
6.8 本章小结 186
第7章 无约束一维极值 187
7.1 无约束算法概述 187
7.2 常用算法 188
7.2.1 进退法 188
7.2.2 黄金分割法 191
7.2.3 斐波那契法 194
7.2.4 牛顿型法 196
7.2.5 割线法 199
7.2.6 抛物线法 200
7.2.7 坐标轮换法 201
7.3 本章小结 204
第8章 无约束多维极值 205
8.1 直接法 205
8.1.1 模式搜索法 206
8.1.2 单纯形法 207
8.1.3 Powell法 210
8.2 间接法 214
8.2.1 最速下降法 214
8.2.2 共轭梯度法 216
8.2.3 拟牛顿法 218
8.3 本章小结 220
第9章 约束优化方法 221
9.1 约束优化方法简介 221
9.2 常用算法 222
9.2.1 随机方向法 222
9.2.2 复合形法 223
9.2.3 可行方向法 225
9.2.4 惩罚函数法 228
9.3 本章小结 230
第10章 二次规划 231
10.1 数学模型 231
10.2 常用算法 231
10.2.1 拉格朗日法 231
10.2.2 有效集法 233
10.3 二次规划函数 236
10.3.1 调用格式 236
10.3.2 参数含义 237
10.3.3 算例求解 240
10.4 本章小结 242
第11章 多目标优化方法 243
11.1 数学模型 243
11.2 多目标线性优化问题求解 244
11.2.1 理想点法 245
11.2.2 线性加权和法 247
11.2.3 最大最小法 249
11.3 目标规划法 251
11.4 多目标优化函数 251
11.4.1 调用格式 252
11.4.2 参数含义 252
11.4.3 算例求解 257
11.5 本章小结 258
第三部分 智能优化算法
第12章 遗传算法 261
12.1 遗传算法基础 261
12.1.1 遗传算法基本运算 261
12.1.2 遗传算法的特点 262
12.1.3 遗传算法中的术语 262
12.1.4 遗传算法的应用领域 263
12.2 遗传算法的原理 263
12.2.1 遗传算法运算过程 263
12.2.2 遗传算法编码 266
12.2.3 适应度及初始群体选取 266
12.2.4 遗传算法参数设计原则 267
12.2.5 适应度函数的调整 267
12.2.6 程序设计 268
12.3 遗传算法工具箱 272
12.3.1 命令调用 272
12.3.2 遗传算法工具箱的调用 276
12.3.3 遗传算法的优化 279
12.4 遗传算法的典型应用 285
12.4.1 求函数极值 285
12.4.2 旅行商问题 297
12.4.3 非线性规划问题 302
12.4.4 多目标优化问题 309
12.5 本章小结 310
第13章 免疫算法 311
13.1 基本概念 311
13.1.1 免疫算法基本原理 311
13.1.2 免疫算法步骤和流程 312
13.1.3 免疫系统模型和免疫算法 313
13.1.4 免疫算法特点 314
13.2 免疫遗传算法 314
13.2.1 免疫遗传算法步骤和流程 314
13.2.2 免疫遗传算法实现 315
13.3 免疫算法应用 321
13.3.1 克隆选择应用 321
13.3.2 最短路径规划问题 325
13.3.3 旅行商问题 327
13.3.4 故障检测问题 333
13.4 本章小结 339
第14章 粒子群优化算法 340
14.1 算法的基本概念 340
14.1.1 算法构成要素 341
14.1.2 算法参数设置 342
14.1.3 算法的基本流程 342
14.1.4 算法的MATLAB实现 343
14.1.5 适应度函数 345
14.2 粒子群优化算法的权重控制 348
14.2.1 自适应权重法 348
14.2.2 随机权重法 351
14.2.3 线性递减权重法 353
14.3 混合粒子群优化算法 355
14.3.1 基于杂交的粒子群优化算法 355
14.3.2 基于自然选择的粒子群优化算法 358
14.3.3 基于免疫的粒子群优化算法 360
14.3.4 基于模拟退火的粒子群优化算法 364
14.4 本章小结 366
第15章 小波变换 367
15.1 傅里叶变换到小波分析 367
15.1.1 傅里叶变换 367
15.1.2 小波分析 369
15.2 小波分析的常用函数 371
15.2.1 查询小波函数的基本信息 371
15.2.2 小波滤波器函数 377
15.2.3 单层一维小波分解函数 378
15.2.4 多尺度一维小波分解函数 379
15.2.5 一维小波系数的单支重构函数 379
15.3 图像的分解和量化 380
15.3.1 一维小波变换 380
15.3.2 二维变换体系 382
15.4 小波变换经典案例 385
15.4.1 去噪 385
15.4.2 压缩 387
15.5 本章小结 389
第16章 神经网络 390
16.1 神经网络基本概念 390
16.1.1 神经网络结构 390
16.1.2 神经网络学习 391
16.2 神经网络工具函数 392
16.2.1 常用神经元激活函数 392
16.2.2 神经网络通用函数 395
16.2.3 感知器函数 397
16.2.4 线性神经网络函数 398
16.2.5 BP神经网络函数 400
16.2.6 径向基神经网络函数 403
16.2.7 自组织特征映射神经网络函数 407
16.3 神经网络的MATLAB实现 410
16.3.1 BP神经网络在函数逼近中的应用 410
16.3.2 RBF神经网络在函数曲线拟合中的应用 414
16.3.3 Hopfield神经网络在稳定平衡点中的应用 416
16.3.4 自组织特征映射神经网络在数据分类中的应用 417
16.3.5 模糊神经网络在函数逼近中的应用 420
16.4 本章小结 422
第四部分 拓 展 应 用
第17章 分形维数应用 425
17.1 分形维数概述 425
17.2 二维分形维数的MATLAB应用 428
17.3 分形插值算法的应用 434
17.4 本章小结 438
第18章 经济金融优化应用 439
18.1 期权定价分析 439
18.2 收益、风险和有效前沿的计算 443
18.3 投资组合绩效分析 447
18.4 固定收益证券的久期和凸度计算 451
18.5 本章小结 457
参考文献 458
第1章 初识MATLAB 3
1.1 工作环境 3
1.1.1 操作界面简介 3
1.1.2 命令行窗口 4
1.1.3 “命令历史记录”窗口 6
1.1.4 “当前文件夹”窗口和路径管理 8
1.1.5 搜索路径 8
1.1.6 “工作区”窗口和数组编辑器 10
1.1.7 变量的编辑命令 11
1.1.8 存取数据文件 12
1.2 帮助系统 13
1.2.1 纯文本帮助 13
1.2.2 帮助导航 13
1.2.3 示例帮助 14
1.3 本章小结 15
第2章 MATLAB基础 16
2.1 基本概念 16
2.1.1 数据类型概述 16
2.1.2 整数类型 17
2.1.3 浮点数类型 19
2.1.4 常量与变量 20
2.1.5 标量、向量、矩阵与数组 21
2.1.6 字符型 22
2.1.7 运算符 23
2.1.8 复数 25
2.1.9 无穷量和非数值量 26
2.2 向量 26
2.2.1 向量的生成 26
2.2.2 向量的加、减和乘、除运算 28
2.2.3 向量的点、叉积运算 29
2.3 数组 30
2.3.1 数组的创建和操作 31
2.3.2 数组的常见运算 34
2.4 矩阵 37
2.4.1 矩阵的生成 37
2.4.2 向量的赋值 40
2.4.3 矩阵的加、减运算 41
2.4.4 矩阵的乘法运算 42
2.4.5 矩阵的除法运算 43
2.4.6 矩阵的分解运算 43
2.5 字符串 44
2.5.1 字符串变量与一维字符数组 44
2.5.2 对字符串的多项操作 45
2.5.3 二维字符数组 46
2.6 符号 47
2.6.1 符号表达式的生成 47
2.6.2 符号矩阵 48
2.6.3 常用符号运算 49
2.7 关系运算和逻辑运算 50
2.7.1 关系运算 50
2.7.2 逻辑运算 51
2.7.3 常用函数 53
2.8 复数 54
2.8.1 复数和复矩阵的生成 54
2.8.2 复数的运算 55
2.9 数据类型间的转换 56
2.10 本章小结 57
第3章 程序设计 58
3.1 MATLAB编程概述 58
3.1.1 “编辑器”窗口 58
3.1.2 编程原则 59
3.2 M文件和函数 61
3.2.1 M文件 61
3.2.2 匿名函数 63
3.2.3 主函数与子函数 63
3.2.4 重载函数 65
3.2.5 eval、feval函数 65
3.2.6 内联函数 67
3.2.7 向量化和预分配 69
3.2.8 函数参数传递 70
3.3 程序控制 72
3.3.1 分支控制语句 72
3.3.2 循环控制语句 74
3.3.3 其他控制语句 76
3.4 程序调试和优化 80
3.4.1 程序调试命令 80
3.4.2 常见错误类型 81
3.4.3 效率优化 84
3.4.4 内存优化 85
3.5 经典案例 90
3.6 本章小结 97
第4章 图形绘制 98
4.1 数据图像绘制简介 98
4.1.1 离散数据可视化 98
4.1.2 连续函数可视化 100
4.2 二维绘图 102
4.2.1 二维绘图命令 102
4.2.2 二维图形的修饰 104
4.2.3 子图绘制法 110
4.2.4 二维绘图的经典应用 112
4.3 三维绘制 116
4.3.1 三维绘图基本命令 116
4.3.2 隐藏线的显示和关闭 119
4.3.3 三维绘图的实际应用 119
4.4 特殊图形的绘制 120
4.4.1 特殊二维图形的绘制 121
4.4.2 特殊三维图形的绘制 122
4.5 本章小结 124
第二部分 常规优化算法
第5章 线性规划 127
5.1 线性规划基本理论 127
5.1.1 线性规划问题的一般形式 127
5.1.2 线性规划问题的标准形式 128
5.1.3 线性规划问题的向量标准形式 128
5.1.4 非标准形式的标准化 129
5.1.5 线性规划模型的求解 130
5.2 优化选项参数设置 131
5.2.1 创建或编辑优化选项参数 131
5.2.2 获取优化参数 133
5.3 线性规划函数 134
5.3.1 调用格式 134
5.3.2 参数含义 135
5.3.3 命令详解 137
5.3.4 算例求解 138
5.4 线性规划应用 141
5.4.1 生产决策问题 141
5.4.2 工作人员计划安排问题 142
5.4.3 投资问题 143
5.4.4 工件加工任务分配问题 144
5.4.5 厂址选择问题 145
5.4.6 确定职工编制问题 147
5.4.7 生产计划的最优化问题 148
5.5 本章小结 149
第6章 非线性规划 150
6.1 非线性规划基础 150
6.1.1 非线性规划标准形式 150
6.1.2 最优解 151
6.1.3 求解方法概述 151
6.2 有约束非线性规划函数 153
6.2.1 调用格式 153
6.2.2 参数含义 154
6.2.3 命令详解 160
6.2.4 算例求解 161
6.3 一维搜索优化函数 163
6.3.1 调用格式 163
6.3.2 参数含义 164
6.3.3 算例求解 166
6.4 多维无约束优化函数 167
6.4.1 调用格式 168
6.4.2 参数含义 168
6.4.3 算例求解 170
6.5 多维无约束搜索函数 172
6.5.1 调用格式 172
6.5.2 参数含义 173
6.5.3 算例求解 174
6.6 多维非线性最小二乘函数 176
6.6.1 调用格式 176
6.6.2 参数含义 177
6.6.3 算例求解 180
6.7 非线性规划实例 182
6.7.1 资金调用问题 182
6.7.2 经营最佳安排问题 184
6.7.3 广告最佳投入问题 184
6.8 本章小结 186
第7章 无约束一维极值 187
7.1 无约束算法概述 187
7.2 常用算法 188
7.2.1 进退法 188
7.2.2 黄金分割法 191
7.2.3 斐波那契法 194
7.2.4 牛顿型法 196
7.2.5 割线法 199
7.2.6 抛物线法 200
7.2.7 坐标轮换法 201
7.3 本章小结 204
第8章 无约束多维极值 205
8.1 直接法 205
8.1.1 模式搜索法 206
8.1.2 单纯形法 207
8.1.3 Powell法 210
8.2 间接法 214
8.2.1 最速下降法 214
8.2.2 共轭梯度法 216
8.2.3 拟牛顿法 218
8.3 本章小结 220
第9章 约束优化方法 221
9.1 约束优化方法简介 221
9.2 常用算法 222
9.2.1 随机方向法 222
9.2.2 复合形法 223
9.2.3 可行方向法 225
9.2.4 惩罚函数法 228
9.3 本章小结 230
第10章 二次规划 231
10.1 数学模型 231
10.2 常用算法 231
10.2.1 拉格朗日法 231
10.2.2 有效集法 233
10.3 二次规划函数 236
10.3.1 调用格式 236
10.3.2 参数含义 237
10.3.3 算例求解 240
10.4 本章小结 242
第11章 多目标优化方法 243
11.1 数学模型 243
11.2 多目标线性优化问题求解 244
11.2.1 理想点法 245
11.2.2 线性加权和法 247
11.2.3 最大最小法 249
11.3 目标规划法 251
11.4 多目标优化函数 251
11.4.1 调用格式 252
11.4.2 参数含义 252
11.4.3 算例求解 257
11.5 本章小结 258
第三部分 智能优化算法
第12章 遗传算法 261
12.1 遗传算法基础 261
12.1.1 遗传算法基本运算 261
12.1.2 遗传算法的特点 262
12.1.3 遗传算法中的术语 262
12.1.4 遗传算法的应用领域 263
12.2 遗传算法的原理 263
12.2.1 遗传算法运算过程 263
12.2.2 遗传算法编码 266
12.2.3 适应度及初始群体选取 266
12.2.4 遗传算法参数设计原则 267
12.2.5 适应度函数的调整 267
12.2.6 程序设计 268
12.3 遗传算法工具箱 272
12.3.1 命令调用 272
12.3.2 遗传算法工具箱的调用 276
12.3.3 遗传算法的优化 279
12.4 遗传算法的典型应用 285
12.4.1 求函数极值 285
12.4.2 旅行商问题 297
12.4.3 非线性规划问题 302
12.4.4 多目标优化问题 309
12.5 本章小结 310
第13章 免疫算法 311
13.1 基本概念 311
13.1.1 免疫算法基本原理 311
13.1.2 免疫算法步骤和流程 312
13.1.3 免疫系统模型和免疫算法 313
13.1.4 免疫算法特点 314
13.2 免疫遗传算法 314
13.2.1 免疫遗传算法步骤和流程 314
13.2.2 免疫遗传算法实现 315
13.3 免疫算法应用 321
13.3.1 克隆选择应用 321
13.3.2 最短路径规划问题 325
13.3.3 旅行商问题 327
13.3.4 故障检测问题 333
13.4 本章小结 339
第14章 粒子群优化算法 340
14.1 算法的基本概念 340
14.1.1 算法构成要素 341
14.1.2 算法参数设置 342
14.1.3 算法的基本流程 342
14.1.4 算法的MATLAB实现 343
14.1.5 适应度函数 345
14.2 粒子群优化算法的权重控制 348
14.2.1 自适应权重法 348
14.2.2 随机权重法 351
14.2.3 线性递减权重法 353
14.3 混合粒子群优化算法 355
14.3.1 基于杂交的粒子群优化算法 355
14.3.2 基于自然选择的粒子群优化算法 358
14.3.3 基于免疫的粒子群优化算法 360
14.3.4 基于模拟退火的粒子群优化算法 364
14.4 本章小结 366
第15章 小波变换 367
15.1 傅里叶变换到小波分析 367
15.1.1 傅里叶变换 367
15.1.2 小波分析 369
15.2 小波分析的常用函数 371
15.2.1 查询小波函数的基本信息 371
15.2.2 小波滤波器函数 377
15.2.3 单层一维小波分解函数 378
15.2.4 多尺度一维小波分解函数 379
15.2.5 一维小波系数的单支重构函数 379
15.3 图像的分解和量化 380
15.3.1 一维小波变换 380
15.3.2 二维变换体系 382
15.4 小波变换经典案例 385
15.4.1 去噪 385
15.4.2 压缩 387
15.5 本章小结 389
第16章 神经网络 390
16.1 神经网络基本概念 390
16.1.1 神经网络结构 390
16.1.2 神经网络学习 391
16.2 神经网络工具函数 392
16.2.1 常用神经元激活函数 392
16.2.2 神经网络通用函数 395
16.2.3 感知器函数 397
16.2.4 线性神经网络函数 398
16.2.5 BP神经网络函数 400
16.2.6 径向基神经网络函数 403
16.2.7 自组织特征映射神经网络函数 407
16.3 神经网络的MATLAB实现 410
16.3.1 BP神经网络在函数逼近中的应用 410
16.3.2 RBF神经网络在函数曲线拟合中的应用 414
16.3.3 Hopfield神经网络在稳定平衡点中的应用 416
16.3.4 自组织特征映射神经网络在数据分类中的应用 417
16.3.5 模糊神经网络在函数逼近中的应用 420
16.4 本章小结 422
第四部分 拓 展 应 用
第17章 分形维数应用 425
17.1 分形维数概述 425
17.2 二维分形维数的MATLAB应用 428
17.3 分形插值算法的应用 434
17.4 本章小结 438
第18章 经济金融优化应用 439
18.1 期权定价分析 439
18.2 收益、风险和有效前沿的计算 443
18.3 投资组合绩效分析 447
18.4 固定收益证券的久期和凸度计算 451
18.5 本章小结 457
参考文献 458
猜您喜欢