matlab优化工具箱的使用

matlab优化工具箱的使用

ID:20124353

大小:158.50 KB

页数:15页

时间:2018-10-09

matlab优化工具箱的使用_第1页
matlab优化工具箱的使用_第2页
matlab优化工具箱的使用_第3页
matlab优化工具箱的使用_第4页
matlab优化工具箱的使用_第5页
资源描述:

《matlab优化工具箱的使用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、优化工具箱的使用MATLAB的优化工具箱提供了各种优化函数,这些优化函数可以通过在命令行输入相应的函数名加以调用;此外为了使用方便,MATLAB还提供了图形界面的优化工具(GUIOptimizationtool)。1GUI优化工具1.1GUI优化工具的启动有两种启动方法:(1)在命令行输入optimtool;(2)在MATLAB主界面单击左下角的“Start”按钮,然后依次选择“Toolboxes→Optimization→Optimizationtool”1.2GUI优化工具的界面界面分为三大块:左边(ProblemSetupandResults)为优化问题的描述及

2、计算结果显示;中间(Options)为优化选项的设置;右边(QuickReference)为帮助。为了界面的简洁,可以单击右上角“<<”、“>>”的按钮将帮助隐藏或显示。1、优化问题的描述及计算结果显示此板块主要包括选择求解器、目标函数描述、约束条件描述等部分。选择合适的求解器以及恰当的优化算法,是进行优化问题求解的首要工作。²Solver:选择优化问题的种类,每类优化问题对应不同的求解函数。²Algorithm:选择算法,对于不同的求解函数,可用的算法也不同。Problem框组用于描述优化问题,包括以下内容:²Objectivefunction:输入目标函数。²De

3、rivatives:选择目标函数微分(或梯度)的计算方式。²Startpoint:初始点。Constraints框组用于描述约束条件,包括以下内容:²Linearinequalities:线性不等式约束,其中A为约束系数矩阵,b代表约束向量。²Linearequalities:线性等式约束,其中Aeq为约束系数矩阵,beq代表约束向量。²Bounds:自变量上下界约束。²NonlinearConstraintsfunction;非线性约束函数。²Derivatives:非线性约束函数的微分(或梯度)的计算方式。Runsolverandviewresults框组用于显示

4、求解过程和结果。(对于不同的优化问题类型,此板块可能会不同,这是因为各个求解函数需要的参数个数不一样,如Fminunc函数就没有Constraints框组。)2、优化选项(Options)²Stoppingcriteria:停止准则。15²Functionvaluecheck:函数值检查。²User-suppliedderivatives:用户自定义微分(或梯度)。²Approximatedderivatives:自适应微分(或梯度)。²Algorithmsettings:算法设置。²Inneriterationstoppingcriteria:内迭代停止准则。²Pl

5、otfunction:用户自定义绘图函数。²Outputfunction:用户自定义输出函数。²Displaytocommandwindow:输出到命令行窗口。对于不同的优化问题类型,此板块也会不同,3、帮助(QuickReference)每选择一个函数求解器,帮助部分都有对这个函数的功能说明,同时还会给出相应的各个输入项说明。1.3GUI优化工具的使用步骤(1)选择求解器Solver和优化算法。(2)选定目标函数。(3)设定目标函数的相关参数。(4)设置优化选项。(5)单击“Start”按钮,运行求解。(6)查看求解器的状态和求解结果。(7)将目标函数、选项和结果导

6、入/导出。(在菜单文件中寻找)1.4GUI优化工具的应用实例1、无约束优化(fminunc求解器)fminunc求解器可用的算法有两种:ØLargescale(大规模算法)ØMediumscale(中等规模算法)对于一般问题,采用中等规模算法即可。例1:用优化工具求的极小值,初始点取x=0。解:首先在当前MATLAB的工作目录下建立目标函数文件Fununc1.m文件:functiony=FunUnc1(x)%function必须为小写,如果F为大写则不行15y=x^2+4*x-6;%平方符号输入时用键盘上数字6上的符合,否则错误然后启动优化工具:²在Solver下拉选

7、框中选择fminunc;²Algorithm下拉选框中选择Mediumscale;²目标函数栏输入@FunUnc1;%运算时输入函数不知什么原因老有错误,直接输入目标函数却没有错误²初始点输入0,其余参数默认;²单击“Start”按钮运行。从求解结果可以看出,函数的极小值为-10,且在x=-2时取到,而且从Currentiteration框可以看出迭代的步数。对于函数形式比较简单的情况,可以直接输入目标函数,而不用建立目标函数文件,在目标函数栏中直接输入@(x)x^2+4*x-6,也可求出结果。此题能否用进退法和黄金分割法(或二次插值法)求解吗?不能

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。