2、MATLAB优化工具箱(Optimization Toolbox)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
机械优化设计
机械优化设计
3.4 GUI优化工具应用实例
例1 z 例2 z 例3 z 例4 z 例5 z 例6
z
fminunc求解器应用实例。 fminsearch求解器应用实例。 fmincon求解器应用实例。 lsqnonlin求解器应用实例。 linprog求解器应用实例。 ga求解器应用实例。
MATLAB优化工具箱
机械优化设计
MATLAB优化工具箱
z z z z z z z z z z z
1 工具箱概述 1.1 工具箱的功能 1.2 工具箱的新特色 1.3 工具箱的结构 2 工具箱函数 3 GUI优化工具 3.1 GUI优化工具的启动 3.2 GUI优化工具的界面 3.3 GUI优化工具使用步骤 3.4 GUI优化工具应用实例 4 小结
用fminsearch求解非光滑优化问题
机械优化设计
机械优化设计
例3 约束优化(fmincon求解器)
z
约束优化采用的求解器为fmincon,可用的算法有三种:Trust region reflective(信赖域反射算法)、Active set(有效集算法)、Interior point (内点算法)。 启动优化工具: 在Solver下拉选框中选择fmincon; Algorithm下拉选框中选择Active set; 目标函数栏输入@FunCon; 初始点输入[10;10;10]; 在约束条件的Linear inequalities输入框中输入A为[-1 -2 -2;1 2 2],b为[0;72], 其余参数默认; 机械优化设计 单击Start按钮运行。
机械优化设计
机械优化设计
例5
线性规划(linprog求解器)
z
线性规划采用的求解器为linprog,可用的算法有三种:Large scale(大规模算 法)、Medium scale-simplex(中等规模-单纯形算法)和Medium scale-Active set(中等规模-有效集算法),当Medium scale-Active set算法时,还要提供初 始点。 启动优化工具: 在Solver下拉选框中选择linprog; 算法采用Medium scale-simplex算法; 问题描述组框中的f输入[-4;-1]; 约束组框中的A输入[-1 2;2 3;1 -1],b输入[4;12;3],其余参数默认; 单击Start按钮运行。
机械优化设计
3.3 GUI优化工具使用步骤
z z z z z z z z
GUI优化工具的基本使用步 骤如下。 1、选择求解器solver和优化 算法; 2、选定目标函数; 3、设定目标函数的相关参 数; 4、设置优化选项; 5、单击“Start”按钮,运行 求解; 6、查看求解器的状态和求 解结果; 7、将目标函数、选项和结 果导入/导出。
z z z z z z z
机械优化设计
例4非线性最小二乘优化(lsqnonlin求解器)
z z z z z z z
启动优化工具: 在Solver下拉选框中选择lsqnonlin; 算法采用L-M算法; 目标函数栏输入@(x)[x^2+x-1;2*x^2-3]; 初始点输入5,其余参数默认; 单击Start按钮运行。 运行就可得到极小值和对应的值
机械优化设计
Βιβλιοθήκη Baidu
例1无约束优化(fminunc求解器)
建立目标函数文件FunUnc.m文件: z function y = FunUnc(x) z y = x^2 + 4*x -6; z 然后启动优化工具: z 在Solver下拉选框中选择fminunc; z Algorithm下拉选框中选择Medium scale; z 目标函数栏输入@FunUnc; z 初始点输入0,其余参数默认; z 单击Start按钮运行。
机械优化设计
1.1 工具箱的功能
优化工具箱主要可以用于解决以下问题: z (1)求解无约束条件非线性极小值; z (2)求解约束条件下非线性极小值,包 括目标逼近问题、极大-极小值问题以及半 无限极小值问题; z (3)求解二次规划和线性规划问题; z (4)非线性最小二乘逼近和曲线拟合; z (5)非线性系统的方程求解; z (6)约束条件下的线性最小二乘优化; z (7)求解复杂结构的大规模优化问题。
机械优化设计
z z z z
ga
机械优化设计
simulannealbnd
机械优化设计
4 小结
z
z
介绍了优化工具箱函数的功能、语法,以及GUI 优化工具的使用及实例,GUI优化工具是进行 MATLAB最优化计算的最简洁、最容易掌握的工 具,后面的章节还会对常用的工具箱的函数进行 详细讲述,并辅以实例。 对MATLAB优化工具箱函数的强大功能有一个初 步了解,还为后面更具体的介绍及应用打下基础。
机械优化设计
3.1 GUI优化工具的启动
启动GUI Optimization tool有 以下两种方法。 z (1)在命令行上 输入optimtool; z (2)在MATLAB 主界面单击左下角 的“Start”按钮, 然后依次选择 “Toolboxes→Opti mization→Optimiza tion tool(optimtool)。
机械优化设计
z z z z z z
机械优化设计
智能优化算法
z
优化工具箱中的智能优化算法包括遗传算法(ga)和 模拟退火算法(simulannealbnd),MATLAB中的ga 求解器功能非常强大,既能求解无约束优化问题,也 能求解约束优化问题,而且约束条件可以是非线性的, 但是simulannealbnd求解器只能求解无约束优化问题。 在Solver下拉选框中选择ga; 在适应函数栏输入@(x)x^4-3*x^3+x^2-2; 变量个数输入1,其余参数默认; 单击Start按钮运行。
z
机械优化设计
2.优化选项
z z z z z z z z z z
GUI优化工具的优化选项包括9大类。 Stopping criteria:停止准则; Function value check:函数值检查; User-supplied derivatives:用户自定义微分(或梯度) 函数; Approximated derivatives:自适应微分(或梯度); Algorithm settings:算法设置; Inner iteration stopping criteria:内迭代停止准则; Plot functions:用户自定义绘图函数; Output functions:用户自定义输出函数; Display to command window:输出到命令行窗口。
机械优化设计
无约束优化实例
机械优化设计
机械优化设计
例2无约束优化(fminsearch求解器)
z z z z z z
启动优化工具: 然后在Solver下拉选框中选择 fminsearch; 目标函数栏输入@(x)abs(x^23*x+2); 初始点输入-7,其余参数默认; 单击Start按钮运行。 运行就可得到极小值和对应的 值
机械优化设计
1.2 工具箱的新特色
MATLAB R2008b提供的优化工具箱是4.1版本,4.1版本较 之以前的3.x版本,主要增加了以下新的特色。 z (1)函数fmincon、fminimax和fgoalattain中引入了并行 机制,加快了梯度的计算速度; z (2)函数gatool和psearchtool 整合到优化工具箱GUI中; z (3)函数fmincon的求解器中新增内点算法; z (4)提供了KNITRO优化库的接口; z (5)函数lsqcurvefit、lsqnonlin和fsolve的优化选项参数 PrecondBandWidth默认值由0变为inf; z (6)优化选项参数TolConSQP的默认值修改为1e–6; z (7)输出结构中引入了参数constrviolation。
机械优化设计
3 GUI优化工具
优化工具(optimtool)是2006年9月在MATLAB 7.2版本 优化工具箱3.1版本中推出的,它是执行下列常见优化 任务的图形用户界面。 z 选择求解器并定义优化问题; z 设置和检查优化选项; z 运行问题并将结果可视化; z 在MATLAB工作空间和优化工具之间导入和导出问题 定义、算法选项和结果; z 自动生成M文件代码,以获取工作并自动执行任务; z 带有图形选项,用来显示对求解器执行期间进度的预 定义或自定义测量标准。
机械优化设计
1.3 工具箱的结构
机械优化设计
工 具 箱 函 数
机械优化设计
函数输入参数
机械优化设计
函数输出参数
机械优化设计
模型输入时需要注意的问题
z z z z
z
(1)目标函数最小化 优化函数fminbnd、fminsearch、fminunc、fmincon、 fgoalattain、fminmax和lsqnonlin都要求目标函数最小化。 (2)约束非正 优化工具箱要求非线性不等式约束的形式为Ci(x)≤0,通过 对不等式取负可以达到使大于零的约束形式变为小于零的 不等式约束形式的目的。 (3)避免使用全局变量ce Model.vi”等VI来实现。
z
优化工具图形界面的菜单启动方式 机械优化设计
优化工具图形界面
机械优化设计
3.2 GUI优化工具的界面
GUI优化工具的界面主要分为三大块: z 左边为优化问题的描述及计算结果显示 (Problem Setup and Results); z 中间为优化选项的设置(Options); z 右边为帮助(Quick Reference)。 z 为了界面的简洁,可以单击右上角的“<<” 按钮将帮助隐藏起来。
相关文档
最新文档