收藏 分享(赏)

《精通MATLAB最优化计算》一书的课件+第5.ppt

上传人:w89153 文档编号:5430706 上传时间:2019-03-02 格式:PPT 页数:26 大小:1.17MB
下载 相关 举报
《精通MATLAB最优化计算》一书的课件+第5.ppt_第1页
第1页 / 共26页
《精通MATLAB最优化计算》一书的课件+第5.ppt_第2页
第2页 / 共26页
《精通MATLAB最优化计算》一书的课件+第5.ppt_第3页
第3页 / 共26页
《精通MATLAB最优化计算》一书的课件+第5.ppt_第4页
第4页 / 共26页
《精通MATLAB最优化计算》一书的课件+第5.ppt_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、单击此处编辑母版标题样式单击此处编辑母版副标题样式* 1精通 MATLAB最优化计算清华大学 龚纯 2009.4, ISBN: 978-7-121-08251-1 l 本书的主要内容是应用 MATLAB来解决最优化问题,通过将 “最优化问题 ”、 “MATLAB优化工具箱 ”和“MATLAB编程 ”这三方面有机结合进行讲述,即一方面是使用工具箱来快速解决最优化问题,另一方面是通过算法编程深入解决最优化问题。l 本书侧重于最优化算法的 MATLAB实现,同时精选了大量的最优化问题实例,通过实例的求解,生动地教会读者掌握 MATLAB在最优化问题方面的应用。l 通过本书,读者不仅能掌握使用 MAT

2、LAB最优化工具箱来快速解决实际问题,而且能学会分析优化算法和采用 MATLAB编程解决最优化问题,从而提高分析和解决问题的能力。l 本书可作为信息、数学、经济、金融、管理、运筹、统计、计算机以及有关理工科专业的本科生、研究生作为教材、实验或教学参考书,也可供相关工程技术与管理人员、数学建模爱好者参考。 内容简介本书导读图本书使用指南给读者的建议 本书主要特色l 1内容由浅入深、层次性强l 2紧密围绕 MATLAB,系统性强l 3算法程序及实例丰富,实用性强l 4算法编程实现,指导性强l 5语言简洁精炼,可读性强l 5.1 工具箱概述l 5.1.1 工具箱的功能l 5.1.2 工具箱的新特色l

3、 5.1.3 工具箱的结构l 5.2 工具箱函数l 5.3 GUI优化工具l 5.3.1 GUI优化工具的启动l 5.3.2 GUI优化工具的界面l 5.3.3 GUI优化工具使用步骤l 5.3.4 GUI优化工具应用实例l 5.4 小结第 5章 MATLAB优化工具箱5.1.1 工具箱的功能优化工具箱主要可以用于解决以下问题:l ( 1)求解无约束条件非线性极小值;l ( 2)求解约束条件下非线性极小值,包括目标逼近问题、极大 -极小值问题以及半无限极小值问题;l ( 3)求解二次规划和线性规划问题;l ( 4)非线性最小二乘逼近和曲线拟合;l ( 5)非线性系统的方程求解;l ( 6)约束

4、条件下的线性最小二乘优化;l ( 7)求解复杂结构的大规模优化问题。 5.1.2 工具箱的新特色MATLAB R2008b提供的优化工具箱是 4.1版本, 4.1版本较之以前的 3.x版本,主要增加了以下新的特色。l ( 1)函数 fmincon、 fminimax和 fgoalattain中引入了并行机制,加快了梯度的计算速度;l ( 2)函数 gatool和 psearchtool 整合到优化工具箱 GUI中;l ( 3)函数 fmincon的求解器中新增内点算法;l ( 4)提供了 KNITRO优化库的接口;l ( 5)函数 lsqcurvefit、 lsqnonlin和 fsolve的

5、优化选项参数PrecondBandWidth默认值由 0变为 inf;l ( 6)优化选项参数 TolConSQP的默认值修改为 1e6;l ( 7)输出结构中引入了参数 constrviolation。 5.1.3 工具箱的结构5.2 工具箱函数函数输入参数函数输出参数 模型输入时需要注意的问题 l ( 1)目标函数最小化l 优化函数 fminbnd、 fminsearch、 fminunc、 fmincon、fgoalattain、 fminmax和 lsqnonlin都要求目标函数最小化。l ( 2)约束非正l 优化工具箱要求非线性不等式约束的形式为 Ci(x)0,通过对不等式取负可以达

6、到使大于零的约束形式变为小于零的不等式约束形式的目的。l ( 3)避免使用全局变量 ce Model.vi”等 VI来实现。5.3 GUI优化工具优化工具( optimtool)是 2006年 9月在 MATLAB 7.2版本优化工具箱 3.1版本中推出的,它是执行下列常见优化任务的图形用户界面。l 选择求解器并定义优化问题;l 设置和检查优化选项;l 运行问题并将结果可视化;l 在 MATLAB工作空间和优化工具之间导入和导出问题定义、算法选项和结果;l 自动生成 M文件代码,以获取工作并自动执行任务; l 带有图形选项,用来显示对求解器执行期间进度的预定义或自定义测量标准。 5.3.1 G

7、UI优化工具的启动图 5-2 优化工具图形界面的菜单启动方式 图 5-3 优化工具图形界面 l 启动 GUI Optimization tool有以下两种方法。l ( 1)在命令行上输入 optimtool;l ( 2)在 MATLAB主界面单击左下角的 “Start”按钮,然后依次选择“ToolboxesOptimizationOptimization tool(optimtool)。 5.3.2 GUI优化工具的界面l GUI优化工具的界面主要分为三大块:l 左边为优化问题的描述及计算结果显示(Problem Setup and Results);l 中间为优化选项的设置( Options

8、);l 右边为帮助( Quick Reference)。l 为了界面的简洁,可以单击右上角的 “”按钮将帮助隐藏起来。 l 2优化选项l GUI优化工具的优化选项包括 9大类。l Stopping criteria:停止准则;l Function value check:函数值检查;l User-supplied derivatives:用户自定义微分(或梯度)函数;l Approximated derivatives:自适应微分(或梯度);l Algorithm settings:算法设置;l Inner iteration stopping criteria:内迭代停止准则;l Plot

9、functions:用户自定义绘图函数;l Output functions:用户自定义输出函数;l Display to command window:输出到命令行窗口。5.3.3 GUI优化工具使用步骤l GUI优化工具的基本使用步骤如下。l 1、选择求解器 solver和优化算法;l 2、选定目标函数; l 3、设定目标函数的相关参数;l 4、设置优化选项;l 5、单击 “Start”按钮,运行求解;l 6、查看求解器的状态和求解结果;l 7、将目标函数、选项和结果导入 /导出。5.3.4 GUI优化工具应用实例l 例 5-1 fminunc求解器应用实例。l 例 5-2 fminsea

10、rch求解器应用实例。l 例 5-3 fmincon求解器应用实例。l 例 5-4 lsqnonlin求解器应用实例。l 例 5-5 linprog求解器应用实例。l 例 5-6 ga求解器应用实例。无约束优化( fminunc求解器) 建立目标函数文件 FunUnc.m文件:l function y = FunUnc(x)l y = x2 + 4*x -6;l 然后启动优化工具 :l 在 Solver下拉选框中选择fminunc;l Algorithm下拉选框中选择Medium scale;l 目标函数栏输入 FunUnc;l 初始点输入 0,其余参数默认;l 单击 Start按钮运行。 图

11、 5-5 无约束优化实例 无约束优化( fminsearch求解器) l 启动优化工具:l 然后在 Solver下拉选框中选择fminsearch;l 目标函数栏输入 (x)abs(x2-3*x+2);l 初始点输入 -7,其余参数默认;l 单 击 Start按钮运行。l 运行就可得到极小值和对应的值 图 5-7 用 fminsearch求解非光滑优化问题 约束优化( fmincon求解器) l 约束优化采用的求解器为 fmincon,可用的算法有三种: Trust region reflective(信赖域反射算法)、Active set(有效集算法)、Interior point(内点算法

12、)。 l 启动优化工具:l 在 Solver下拉选框中选择 fmincon;l Algorithm下拉选框中选择 Active set;l 目标函数栏输入 FunCon;l 初始点输入 10;10;10;l 在约束条件的 Linear inequalities输入框中输入 A为 -1 -2 -2;1 2 2, b为 0;72,其余参数默认;l 单 击 Start按钮运行。非线性最小二乘优化( lsqnonlin求解器) l 启动优化工具:l 在 Solver下拉选框中选择 lsqnonlin;l 算 法采用 L-M算法;l 目标函数栏输入 (x)x2+x-1;2*x2-3;l 初始点输入 5,

13、 其余参数默认;l 单击 Start按钮运行。l 运行 就可得到极小值和对应的 值 线性规划( linprog求解器) l 线性规划采用的求解器为 linprog,可用的算法有三种: Large scale(大规模算法)、 Medium scale-simplex(中等规模 -单纯形算法)和 Medium scale-Active set(中等规模 -有效集算法),当 Medium scale-Active set算法时,还要提供初始点。 l 启动优化工具:l 在 Solver下拉选框中选择 linprog;l 算法采用 Medium scale-simplex算法;l 问题描述组框中的 f输

14、入 -4;-1;l 约束组框中的 A输入 -1 2;2 3;1 -1, b输入 4;12;3,其余参数默认;l 单击 Start按钮运行。智能优化算法( ga求解器) l 优化工具箱中的智能优化算法包括遗传算法( ga)和模拟退火算法(simulannealbnd), MATLAB中的 ga求解器功能非常强大,既能求解无约束优化问题,也能求解约束优化问题,而且约束条件可以是非线性的,但是 simulannealbnd求解器只能求解无约束优化问题。l 在 Solver下拉选框中选择 ga;l 在适应函数栏输入 (x)x4-3*x3+x2-2;l 变量个数输入 1,其余参数默认;l 单 击 Start按钮运行。5.4 小结l 本章 全面介绍了优化工具箱函数的功能、语法,以及 GUI优化工具的使用及实例, GUI优化工具是进行 MATLAB最优化计算的最简洁、最容易掌握的工具,后面的章节还会对常用的工具箱的函数进行详细讲述,并辅以实例。l 通过本章读者不仅对 MATLAB优化工具箱函数的强大功能有一个初步了解,还为后面更具体的介绍及应用打下基础。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 职业教育

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报