matlab函数的极值与优化.ppt
《matlab函数的极值与优化.ppt》由会员分享,可在线阅读,更多相关《matlab函数的极值与优化.ppt(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 高等数学高等数学 上机教学(四)上机教学(四)函数的极值与优化函数的极值与优化上机目的上机目的上机内容上机内容MATLAB2、会使用、会使用Matlab解决无约束最优化问题解决无约束最优化问题.上机软件上机软件1、会使用、会使用Matlab求函数的极值;求函数的极值;1、Matlab中函数的输入与调用;中函数的输入与调用;2、函数极值的求法;、函数极值的求法;3、无约束最优化问题、无约束最优化问题.在在Matlab中,函数是采用中,函数是采用M文件的方式存储的。文件的方式存储的。具体步骤如下:具体步骤如下:1、新建一个、新建一个M文件:文件:通过点击主窗口左上的新建按钮。通过点击主窗口左上的
2、新建按钮。2、输入函数内容:、输入函数内容:例:函数例:函数 f(x1,x2)=exp(X12+X2)应在应在M文件文件中输入如下:中输入如下:一、自变量为数量形式的函数的输入一、自变量为数量形式的函数的输入第一节第一节 Matlab中函数的输入与调用中函数的输入与调用注意:注意:(1)、函数标识关键字:)、函数标识关键字:function(2)、函数名:)、函数名:f1=f1 自变量自变量:(x1,x2)(3)、函数表达式:)、函数表达式:a=exp(x12+x2)函数表达式可以由多个式子组成。函数表达式可以由多个式子组成。(4)、给函数结果赋值:)、给函数结果赋值:f1=a 3、存储函数:
3、、存储函数:点击编辑窗口的保存按钮。点击编辑窗口的保存按钮。注意注意:不要改变保存路径,文件名称必须和函数名称一致。不要改变保存路径,文件名称必须和函数名称一致。4、函数的调用:、函数的调用:函数保存后,在命令窗口中即可调用该函数。函数保存后,在命令窗口中即可调用该函数。如求上述函数在如求上述函数在x1=1,x2=2处的函数值,即可在命令处的函数值,即可在命令窗口中输入:窗口中输入:f1(1,2)其中其中 f1 为刚才所输入的函数名。为刚才所输入的函数名。二、自变量为向量形式函数的输入二、自变量为向量形式函数的输入例:函数例:函数f(x)=exp(x(1)2+x(2).其中其中x=(x(1),
4、x(2),即即x为一个二维向量。为一个二维向量。此时的输入与调用方式与数量时不同此时的输入与调用方式与数量时不同。1、输入:、输入:2、调用:、调用:此时自变量为向量,调用格式为:此时自变量为向量,调用格式为:f2(1,2)或或 x=1 2;f2(x)即,自变量需采用向量形式输入。即,自变量需采用向量形式输入。3、实际运行结果如下:、实际运行结果如下:f2(1,2)ans=x=1,2;f2(x)ans=Matlab中,求一元函数极值的函数为中,求一元函数极值的函数为 fminbnd 1、此函数最简输入格式为:、此函数最简输入格式为:x=fminbnd(f,a,b)含义为:含义为:求函数求函数f
5、在区间在区间a,b上的最小值点上的最小值点(自变量值自变量值).2、对于最大值问题,需转化为最小值问题来处理。、对于最大值问题,需转化为最小值问题来处理。(-f(x)在区间在区间a,b上的最小值就是上的最小值就是f(x)在在a,b的最的最大值)大值)第二节第二节 函数极值的求法函数极值的求法一、一元函数极值的求法一、一元函数极值的求法3、常用格式、常用格式x,fval=fminbnd(f,a,b).结果中,结果中,fval为最小值,为最小值,x为取到最小值的点。为取到最小值的点。例:例:Matlab命令:命令:x,fval=fminbnd(x.2+3*x+1,-2,3)含义是:含义是:求函数求
6、函数f(x)=x2+3*x+1在在-2,3内的最小值。内的最小值。结果为结果为x=-1.5000 fval注注:此时函数很简单,故没有使用:此时函数很简单,故没有使用M文件。文件。多元函数的最小值问题,在多元函数的最小值问题,在Matlab中有中有2个经常个经常使用的函数:使用的函数:1、fminsearch 2、fminunc 注意注意:(1)、在使用这两个函数时,必须首先用)、在使用这两个函数时,必须首先用M文文件的形式存储待求最值的函数,并且需以向量函数件的形式存储待求最值的函数,并且需以向量函数的形式表达;的形式表达;(2)、最大值问题需转化为最小值问题。)、最大值问题需转化为最小值问
7、题。二、多元函数极值的求法二、多元函数极值的求法(1)、此函数使用单纯型法搜索最值;)、此函数使用单纯型法搜索最值;(2)、使用格式:)、使用格式:x,fval=fminsearch(f,x0)其中其中f为待求最值的向量函数,为待求最值的向量函数,x0为搜索过程为搜索过程开始时自变量的初始值。开始时自变量的初始值。例:例:fminsearch(f,1,2)含义为:在含义为:在x=1,2附近搜附近搜寻函数寻函数f的最小值。的最小值。1、fminsearch 例:例:求函数求函数f(x,y)=-(x+y)+(x2+y2+1)在在x=1,y=2 附近的最小值点。附近的最小值点。解决步骤:解决步骤:1
8、、建立、建立M文件,保存函数文件,保存函数f;M文件内容为:文件内容为:function f1=f1(x)a=-(x(1)+x(2);b=(x(1)2+x(2)2+1);f1=a+b;2、调用、调用fminsearch函数求最值函数求最值.在命令窗口中,输入:在命令窗口中,输入:x0=1,2;x,fval=fminsearch(f1,x0)3、输出结果为:、输出结果为:X=0.5000 fval(1)、此函数与)、此函数与fminsearch不同的地方在于使用的不同的地方在于使用的搜索方法不同,它使用牛顿法搜索最值,在效率上搜索方法不同,它使用牛顿法搜索最值,在效率上有所提高;有所提高;(2)
9、、使用格式与)、使用格式与fminsearch类似:类似:x,fval=fminunc(f,x0)其中其中f为待求最值的向量函数,为待求最值的向量函数,x0为搜索过程开为搜索过程开始时自变量的初始值。始时自变量的初始值。例例:fminunc(f,1,2)含义为:在含义为:在x=1,2附近搜寻附近搜寻函数函数f的最小值。的最小值。2、fminunc 第三节第三节 无约束最优化问题无约束最优化问题求解无约束最优化问题的的基本思想求解无约束最优化问题的的基本思想*Matlab优化工具箱简介优化工具箱简介标准形式:标准形式:一、求解无约束最优化问题的基本思想一、求解无约束最优化问题的基本思想求解的基本
10、思想求解的基本思想 (以二元函数为例)531连续可微多局部极小 唯一极小(全局极小)搜索过程搜索过程最优点 (1 1)初始点 (-1 1)-111E-41E-51E-8二、用二、用Matlab解无约束优化问题(举例说明)解无约束优化问题(举例说明)其中(3)、(4)、(5)的等式右边可选用(1)或(2)的等式右边。函数fminbnd的算法基于黄金分割法和二次插值法,它要求目标函数必须是连续函数,并可能只给出局部最优解。常用格式如下:常用格式如下:(1)x=fminbnd(fun,x1,x2)(2)x=fminbnd(fun,x1,x2,options)(3)x,fval=fminbnd(.)(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 函数 极值 优化
限制150内