Matlab目标优化入门.ppt_第1页
Matlab目标优化入门.ppt_第2页
Matlab目标优化入门.ppt_第3页
Matlab目标优化入门.ppt_第4页
Matlab目标优化入门.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,2 .两阶段方法,这种方法很多,最简单的称为Newton-Raphson方法,Quasi-Newton方法最常用。Quasi-Newton方法:use an approximation of the inverse hessian . form of approximation differs among methods,newton-raftson方法4,5,不受约束的编程问题,x,fval,exitflag,Output=fminsearch(fun,x0),6,例如函数f=8x-4y x 2 330 确定初始点的方法:x,y=mesh grid(-103360.5336910);f=

2、8 * x-4 * y x . 2 3 * y . 2;选取Surf(x,y,f)初始点:x0=(0,0) x0=0,0;x,fval,exit flag=FMI nunc ( f,x0)可以从中获取此示例MATLAB代码example_1。7,fminsearch和fminunc作为无约束非线性优化问题的MATLAB的两个函数求解函数的最小值。Fminsearch()和fminunc()适用于处理度数低但有很多离散点的函数,而后者对高阶连续函数更有效。根据各自的实现原理,两个函数都易受局部优化的影响(其中前者使用单纯形方法的原理,后者使用拟牛顿方法的原理),结果的正确性取决于初始值点x0的选

3、择。8,优化约束线性,x,fval,exit flag,output,lambda,=linprog (f,a,b,aeq,beq,linprog)约束g(x)0使g(x)0。9,实例:生产计划问题假设某工厂计划生产a和b两种产品,目前库存的主要材料为a级3600千克,b级2000千克,c级3000千克。每个a产品需要a级9公斤、b级4公斤、c级3公斤。每个b产品需要4公斤材料a级,5公斤b级,10公斤c级。甲单位产品的利润为70元,乙单位产品的利润为120元。如何安排生产,这个工厂获得的利润最大。创建数学模型。将x1、x2设定为分别生产a和b产品的零件数。f工厂获得的总执行。max f=70

4、 * x(1)120 * x(2)s . t 9 * x(1)4 * x(2)8800 x4 * x(1)5 * x(2)4 5;3 10B=3600;2000;3000Aeq=;beq=lb=0;Ub=INF x0=1代码:可以从example _ 2下载,linprog (f,a,b,aeq,beq,lb,Ub,)如果不希望显示输出,请选择“off”。选取iter以显示每个步骤重复程序的输出。选择“Final”以显示最终结果。通过MaxFunEvals函数计算的最大允许次数Maxiter最大允许迭代数TolX x的结束容差x,fval=linprog(.)左端的fval从解决方案x返回目标

5、函数值。x,fval,exitflag,output,lambda=linprog (f,a,b,aeq,beq,lb,ub,x0)的输出部分如果为正数,则目标函数收敛到解决方案x。负值表示目标函数不收敛。值为0表示达到了函数求值或迭代的最大次数。Output返回优化信息。output.iterations表示迭代数。Output.algorithm表示使用的算法。Outprt.funcCount表示函数的计算次数。Lambda返回x的拉格朗日乘数。具有与lambda lower-lambda下限相同的属性。Lambda.upper-lambda的上限;Lambda.ineqlin-lambd

6、a的线性不等式;Lambda.eqlin-lambda的线性等式。Options=optim set (display , ITER , tolx ,1e-8);12,受限非线性编程,=fmin con (fun,x0,a,b,aeq,beq,lb,ub,nonlcon,options),x,Function c,g=confun(x)c(1)=x(1)* x(2)-x(1)-x(2)1;c(2)=-2 * x(1)* x(2)-5;g=;然后可以输入AE=1 2,工作区中的程序。BE=0;X0=1,1;Nonlcon= confun x,fval=fmincon ( objfun,x0,15

7、,多用途编程,多用途编程在约束集下定义,用于优化设计,作为多种不同的目的函数。主要目标法的基本思想是在多目标问题上,根据问题的实际情况,选择一个目标为主,其馀目标为次,根据经验选择一定的边界值。这样可以将二次目标视为约束,从而将原多目标问题转换为新约束下的单目标优化问题。线性权重和法的基本思想是多目标fi (x) (I=1,2,m)的重要性,权重系数 j (j=1,2,m)乘以集,然后将其添加为目标函数,从而构成单目的编程问题。16,如:一家钢铁厂计划将5000万美元用于2个项目a、b的技术革新投资。X1和x2分别表示分配给项目a和b的投资。据专家预先估计,投资项目a、b的年收入分别为70%和

8、66%。与此同时,总投资后总风险损失随着总投资和个人投资的增加而增加。已知的总风险损失为0.02 x1 2 0.01 x2 2 0.04(x1 x2)2(x1x 2)2。在最大化预期收益的同时,问如何分配资金,以最小化风险损失。数学模型:max f1(x)=70x 166 x2 min F2(x)=0.02 x1 2 0.01 x2 2 0.04(x1x 2)2s . t x1x 25000x1,0X0=1000,1000a=1;B=5000Lb=zeros(2,1);x,fval,exit flag=fmin con ( f,x0,a,b,lb,)代码example_4对于具有最小最大目标函

9、数值的多个目标计划,我们会尽可能小,对于每个x/r,我们先求出目标函数值fi(x)的最大值,然后求出这些最大值中的最小值。x、fval、max fval、exit flag、output、lambda=f minmax (fun、x0、a、b、aeq、beq、lb).),19,(4)解决这些问题的目标到达方法,20,fgoalattain函数。数学模型的形式为min F(x)-weightgoal c(x)0 CEQ(x)=0 a xb Aeq x=beq lbxub其中x,由于条件限制,工厂生产产品a和b的最大能力为每月5吨和6吨,市场上这两种产品的总量每月7吨以上。工厂如何做好生产计划,满

10、足市场的要求,同时将设备投资和污染损失降至最低。该厂认为,在这两个目标中,应优先考虑环境污染,设备投资的目标值为20万元,公共损失的目标为12万元。,建立数学模型:建立工厂每月生产产品a为x1吨,b为x2吨,设备投资费为f(x1),公害损失率为f(x2),问题是多用途优化问题:min f1 (x)=2x1 5 x2min F2 (x)=x26;x1 x27;X1,x20,22,Matlab实现:function f=ff12(x)f(1)=2 * x(1)5 * x(2);f(2)=4 * x(1)x(2);按照给定目标:goal=20,12;Weight=20,12;X0=2,2A=1 0;

11、0 1;-1-1;b=5 6-7;Lb=zeros(2,1);x,fval,attain factor,exit flag=fgioalatain ( ff12,x0,goal,weight,a,b,25,单纯形解法线性编程,单纯形法的基本思想是首先在可执行域中找到基本可行解,确定是否是最优解,如果是,则停止计算。否则,寻找和试验更好的基本可行解,寻找最佳解,或重复,直到确定无限(即没有有限最佳解)。26,一些常用优化方法,泰勒扩展:V(x)=V(xk)(x-xk)V (xk)1/2(x-xk)2V (xx).x为3N变量时,v (xk)成为3Nx1的矢量,v (xk)成为3Nx3N的矩阵,求

12、解矩阵元素(例如,Hessian,非线性方程),它是求解代数方程和超越方程的有效方法之一,27,第一阶段图解a. steel pest descendant,sk=-GK/| GK |,direction,gradient,知道方向,如何确定步骤?最常用的是先选择任意阶段l,然后在计算中调整,使用系统的能量作为外部测量,随着能量的增加,逐渐减小阶段大小。robust,but slow,最陡降法,28,最陡降法(SD),如何查找项目的最后一个数值极值极值3360总是仅在最近的邻居中寻找极值,并逐级重复,直到收敛为止。也有缺点,最终可能找不到全球优化,但只是部分优化。而且收敛速度很慢;的优点是非常简单。29,b . Conjugate Gradient(CG)Conju

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论