第一部分 MATLAB应用基础 3
第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 数组、矩阵、向量和标量 9
1.1.6 字符型数据 10
1.1.7 运算符 11
1.1.8 复数 14
1.1.9 无穷量和非数值量 14
1.2 向量 15
1.2.1 向量的生成 15
1.2.2 向量的加减和数乘运算 17
1.2.3 向量的点、叉积运算 18
1.3 数组 20
1.3.1 数组的创建和操作 20
1.3.2 数组的常见运算 24
1.4 矩阵 29
1.4.1 矩阵生成 29
1.4.2 向量的生成 34
1.4.3 矩阵加减运算 36
1.4.4 矩阵乘法运算 37
1.4.5 矩阵的除法运算 38
1.4.6 矩阵的分解运算 39
1.5 字符串 40
1.5.1 字符串变量与一维字符数组 40
1.5.2 对字符串的多项操作 41
1.5.3 二维字符数组 43
1.6 符号 44
1.6.1 符号表达式的生成 44
1.6.2 符号矩阵 45
1.6.3 常用符号运算 46
1.7 关系运算和逻辑运算 48
1.7.1 关系运算 48
1.7.2 逻辑运算 49
1.7.3 常用函数 51
1.8 复数 52
1.8.1 复数和复矩阵的生成 53
1.8.2 复数的运算 55
1.9 数据类型间的转换 55
本章小结 57
第2章 MATLAB编程 58
2.1 MATLAB编程概述 58
2.2 MATLAB编程原则 60
2.3 分支结构 60
2.3.1 if分支结构 61
2.3.2 switch分支结构 62
2.4 循环结构 63
2.4.1 while循环结构 63
2.4.2 for循环结构 64
2.5 其他控制程序命令 66
2.6 程序调试 70
2.6.1 程序调试命令 70
2.6.2 常见程序错误 71
2.6.3 内存优化 77
2.7 经典案例 82
本章小结 91
第3章 MATLAB绘图 92
3.1 数据图像绘制简介 92
3.1.1 离散数据可视化 92
3.1.2 连续函数可视化 95
3.2 二维绘图 98
3.2.1 二维图形基本绘图命令plot 98
3.2.2 二维图形的修饰 100
3.2.3 子图绘制法 108
3.2.4 二维绘图的经典应用 111
3.3 三维绘制 115
3.3.1 三维绘图基本命令 116
3.3.2 网格曲面隐藏线的显示和关闭 120
3.3.3 三维绘图的实际应用 120
3.4 特殊图形的绘制 122
3.4.1 特殊二维图形的绘制 122
3.4.2 特殊三维图形 123
本章小结 127
第4章 GUI应用 128
4.1 GUI基础概念 128
4.1.1 GUI开发方法 128
4.1.2 GUI基本元素 129
4.1.3 GUI的层次 130
4.2 菜单 131
4.2.1 建立菜单和子菜单 132
4.2.2 菜单对象常用属性 136
4.2.3 快捷菜单 137
4.3 GUIDE的使用 138
4.4 使用M文件创建GUI对象 139
本章小结 142
第二部分 MATLAB常规优化算法 145
第5章 MATLAB线性规划 145
5.1 线性规划的概念 145
5.2 线性规划的标准形式 146
5.3 线性规划的MATLAB函数 147
5.4 线性规划问题求解方法 150
5.4.1 单纯形线性规划问题求解 150
5.4.2 多目标线性规划问题求解 153
5.5 线性规划实例 157
5.5.1 生产决策问题 157
5.5.2 工作人员计划安排问题 158
5.5.3 投资问题 160
5.5.4 工件加工任务分配问题 161
5.5.5 厂址选择问题 163
5.5.6 确定职工编制问题 164
5.5.7 生产计划的最优化问题 165
本章小结 167
第6章 MATLAB非线性规划 168
6.1 非线性规划基础 168
6.1.1 非线性规划标准形式 168
6.1.2 非线性规划MATLAB函数 169
6.2 无约束非线性规划 171
6.2.1 基本数学原理 171
6.2.2 无约束非线性规划函数 172
6.2.3 无约束非线性规划问题的应用 176
6.3 求解非线性规划 177
6.3.1 一维最优化方法 177
6.3.2 无约束最优化方法 177
6.3.3 约束最优化方法 178
6.4 非线性规划实例 178
6.4.1 遗传算法求解非线性规划 178
6.4.2 资金调用问题 186
6.4.3 经营最佳安排问题 189
本章小结 190
第7章 无约束一维极值 191
7.1 无约束算法基础 191
7.2 进退法 192
7.3 黄金分割法 195
7.4 斐波那契法 200
7.5 牛顿型法 202
7.5.1 牛顿法 202
7.5.2 阻尼牛顿法 204
7.6 割线法 206
7.7 抛物线法 208
7.8 三次插值法 210
7.9 坐标轮换法 212
本章小结 215
第8章 无约束多维极值 216
8.1 直接法 216
8.1.1 模式搜索法 216
8.1.2 单纯形搜索法 219
8.1.3 Powell法 223
8.2 使用导数计算的间接法 227
8.2.1 最速下降法 227
8.2.2 共轭梯度法 229
8.3 拟牛顿法 232
本章小结 234
第9章 约束优化方法 236
9.1 约束优化方法简介 236
9.2 随机方向法 237
9.3 复合形法 238
9.4 可行方向法 241
9.5 惩罚函数法 245
本章小结 247
第10章 二次规划 248
10.1 基本概念 248
10.2 拉格朗日法 250
10.3 起作用集算法 252
本章小结 255
第11章 多目标函数的优化方法 256
11.1 概述 256
11.2 理想点法 260
11.3 线性加权和法 262
11.4 最大最小法 264
11.5 目标规划法 265
本章小结 267
第三部分 MATLAB智能优化算法 271
第12章 免疫优化算法及其实现 271
12.1 基本概念 271
12.2 人工免疫系统 273
12.3 免疫遗传算法 279
12.4 免疫算法MATLAB应用实例 286
12.4.1 最短路径规划 286
12.4.2 旅行商问题 289
12.4.3 故障检测问题 295
本章小结 302
第13章 粒子群优化算法的实现 303
13.1 算法的基本概念 303
13.2 算法的MATLAB实现 305
13.2.1 算法的基本程序 305
13.2.2 适应度函数 307
13.2.3 免疫粒子群算法的MATLAB应用 311
13.3 粒子群算法的权重控制 315
13.3.1 线性递减法 315
13.3.2 自适应法 318
13.4 混合粒子群算法 321
13.4.1 模拟退火免疫算法 321
13.4.2 基于杂交的算法 324
本章小结 327
第14章 遗传优化算法的实现 328
14.1 遗传算法概述 328
14.2 基本遗传算法 329
14.3 MATLAB遗传算法工具箱及其应用 335
14.4 自适应遗传算法 340
14.5 遗传算法的典型应用 345
14.5.1 求解函数极值 345
14.5.2 函数优化求解 350
本章小结 352
第15章 小波变换的实现 353
15.1 小波变换原理 353
15.2 小波算法的MATLAB函数 354
15.3 图像的分解和量化 365
15.3.1 一维小波变换 365
15.3.2 二维变换体系 366
15.4 小波变换经典案例 371
15.4.1 去噪 371
15.4.2 压缩 373
本章小结 376
第16章 神经网络的实现 377
16.1 人工神经网络基本概念 377
16.2 MATLAB神经网络工具箱 378
16.2.1 常用神经元激活函数 379
16.2.2 神经网络通用函数 382
16.2.3 神经网络的MATLAB实现 385
16.3 神经网络的经典应用 401
16.3.1 PID神经网络控制 401
16.3.2 模糊神经网络在函数逼近中的应用 408
本章小结 417
第四部分 MATLAB综合应用 421
第17章 分形维数应用与实现 421
17.1 分形维数概述 421
17.2 二维分形维数的MATLAB应用 425
17.3 分形插值算法的MATLAB应用 433
本章小结 439
第18章 经济金融最优化应用 440
18.1 期权定价分析 440
18.2 收益、风险和有效前沿的计算 445
18.3 投资组合绩效分析 450
18.4 固定收益证券的久期和凸度计算 455
本章小结 462
附录MATLAB基本命令 463
参考文献 467