目录 第一部分 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 18 MATLAB优化算法(第2版) 19 目 录