网站大量收购独家精品文档,联系QQ:2885784924

201109公选课教案第十讲 MATLAB求极值和最值.doc

201109公选课教案第十讲 MATLAB求极值和最值.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
201109公选课教案第十讲 MATLAB求极值和最值

第十讲 matlab求极值和最值问题 在工程设计、经济管理和科学研究等诸多领域中,人们常常会遇到这样的问题:如何从一切可能的方案中选择最好、最优的方案,在数学上把这类问题称为最优化问题。这类问题很多,例如当设计一个机械零件时如何在保证强度的前提下使重量最轻或用量最省(当然偷工减料除外);如何确定参数,使其承载能力最高;在安排生产时,如何在现有的人力、设备的条件下,合理安排生产,使其产品的总产值最高;在确定库存时如何在保证销售量的前提下,使库存成本最小;在物资调配时,如何组织运输使运输费用最少。这些都属于最优化问题所研究的对象。 MATLAB的优化工具箱被放在toolbox目录下的optim子目录中,其中包括有若干个常用的求解函数最优化问题的程序。MATLAB的优化工具箱也在不断地完善。不同版本的MATLAB,其工具箱不完全相同。在MATLAB5.3版本中,对优化工具箱作了全面的改进。每个原有的常用程序都重新编制了一个新的程序。除fzero和fsolve外都重新起了名字。这些新程序使用一套新的控制算法的选项。与原有的程序相比,新程序的功能增强了。在MATLAB5.3和6.0版本中,原有的优化程序(除fzero和fsolve外)仍然保留并且可以使用,但是它们迟早会被撤消的。鉴于上述情况,本书将只介绍那些新的常用的几个优化程序。 7.3.1 线性规划问题 线性规划是最优化理论发展最成熟,应用最广泛的一个分支。在MATLAB的优化工具箱中用于求解下述线性规划的问题 (线性不等式约束) (线性等式约束) (有界约束) 的函数是linprog ,其主要格式为: [x, fval, exitflag, output, lambda]= linprog(c, A, b, A1, b1 , LB, UB, x0, options) 其中,linprog为函数名,中括号及小括号中所含的参数都是输入或输出变量,这些参数的主要用法及说明如下: (1)c, A和b是不可缺省的输入宗量;x是不可缺省的输出宗量,它是问题的解。 (2)当x无下界时,在LB处放置[ ]。当无上界时,在UB处放置[ ]。 如果x的某个分量无下界,则置LB(i)=-inf. 如果无上界,则置UB(i)=inf. 如果无线性不等式约束,则在A和b处都放置[ ]。 (3)x0是解的初始近似值。 (4)options是用来控制算法的选项参数向量。 (5)输出宗量fval是目标函数在解x处的值。 (6)输出宗量exitflag的值描述了程序的运行情况。如果exitflag的值大于0,则程序收敛于解x;如果exitflag的值等于0,则函数的计算达到了最大次数;如果exitflag的值小于0,则问题无可行解,或程序运行失败。 (7)输出宗量output输出程序运行的某些信息。 (8)输出宗量Lambda为在解x处的值 Lagrange乘子。 例:求解线性规划问题 min , , , , , , . 解:在命令窗口中键入 c=[-2,-1,1]; a=[1,4,-1; 2,-2,1]; b=[4; 12]; a1=[1,1,2]; b1=6; lb=[0; 0; -inf]; ub=[inf; inf; 5]; [x, z]=linprog(c,a,b,a1,b1,1b,ub) 运行后得到: x= 4.6667 0.0000 0.6667 z= -8.6667 7.3.2 非线性约束最优化 在MATLAB的优化工具箱中有一个求解下述非线性规划的问题 (线性不等式约束) (线性等式约束) (非线性不等式约束) (非线性等式约束) (有界约束) 的函数是fmincon ,其主要格式为: [x, fval, exitflag, output, lambda, grad, hessian]=fmincon(‘fun’, x0, A, b, A1, b1 , LB, UB, ‘nonlcon’, options, p1, p2,……) 其中,fmincon为函数名,参数的主要用法有的与线性规划中的相同,下面介绍几个非线性规划特有的: (1)‘fun’和x0是不可缺省的输入宗量。fun是给出目标函数的M文件的名字,x0是极小值点的初始近似值。x是不可缺省的输出宗量,它是问题的解。 (2)nonlcon 是给出非线性约束函数和的M文件的文件名。 (3)宗量p1,p2…是向目标函数传送的参数的值。 (4)输出宗量grad为目标函数在解x处的梯度。 (5)输出宗量hessian为目标函

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档