Lecture非线性规划及Matlab实现教程分析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用MATLAB软件求解,其输入格式如下: 1.x quadprog H,C,A,b ; 2.x quadprog H,C,A,b,Aeq,beq ; 3.x quadprog H,C,A,b,Aeq,beq,VLB,VUB ; 4.x quadprog H,C,A,b, Aeq,beq ,VLB,VUB,X0 ; 5.x quadprog H,C,A,b,Aeq,beq,VLB,VUB,X0,options ; 6.[x,fval] quaprog … ; 7.[x,fval,exitflag] quaprog … ; 8.[x,fval,exitflag,output] quaprog … ; 1.二次规划 如何转化为二次型标准型 参考“Lecture 4 Mathematical Preliminaries” 0.1.4 Quadratic Forms 一节 例1 min f x1,x2 -2x1-6x2+x12-2x1x2+2x22 s.t. x1+x2≤2 -x1+2x2≤2 x1≥0, x2≥0 MATLAB(youh1) 1.写成标准形式: 2.输入命令: H [2 -2; -2 4]; c [-2 ;-6];A [1 1; -1 2];b [2;2]; Aeq [];beq []; VLB [0;0];VUB []; [x,z] quadprog H,c,A,b,Aeq,beq,VLB,VUB 3.运算结果为: x 4/5 6/5 z -36/5 s.t. 1. 首先建立M文件fun.m,用来定义目标函数F(X): function f fun X ; f F X ; 2.一般非线性规划 其中X为n维变元向量,G X 与Ceq X 均为非线性函数组成的向量,其他变量的含义与线性规划、二次规划中相同.用MATLAB求解上述问题,基本步骤分三步: 3. 建立主程序.求解非线性规划的函数是fmincon,命令的基本格式如下: 1 x fmincon ‘fun’,X0,A,b 2 x fmincon ‘fun’,X0,A,b,Aeq,beq 3 x fmincon ‘fun’,X0,A,b, Aeq,beq,VLB,VUB 4 x fmincon ‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’ 5 x fmincon ‘fun’,X0,A,b,Aeq,beq,VLB,VUB,’nonlcon’,options 6 [x,fval] fmincon … 7 [x,fval,exitflag] fmincon … 8 [x,fval,exitflag,output] fmincon … 输出极值点 M文件 迭代的初值 参数说明 变量上下限 注意: [1] fmincon函数提供了大型优化算法和中型优化算法.默认时: 若在fun函数中提供了梯度(options参数的GradObj设置为’on’),并且只有上下界存在或只有等式约束,fmincon函数将选择大型算法.当既有等式约束又有梯度约束时,使用中型算法. [2] fmincon函数的中型算法使用的是序列二次规划法.在每一步迭代中求解二次规划子问题,并用BFGS法更新拉格朗日Hesse矩阵. [3] fmincon函数可能会给出局部最优解,这与初值X0的选取有关. 1.写成标准形式: s.t. 2x1+3x2 6 s.t. x1+4x2 5 x1,x2 0 例2 2.先建立M-文件 fun3.m: function f fun3 x ; f -x 1 -2*x 2 + 1/2 *x 1 ^2+ 1/2 *x 2 ^2 MATLAB youh2 3.再建立主程序youh2.m: x0 [1;1]; A [2 3 ;1 4]; b [6;5]; Aeq [];beq []; VLB [0;0]; VUB []; [x,fval] fmincon fun3,x0,A,b,Aeq,beq,VLB,VUB 4.运算结果为: x 0.7647 1.0588 fval -2.0294 1.先建立M文件fun4.m定义目标函数: function f fun4 x ; f exp x 1 * 4*x 1 ^2+2*x 2 ^2+4*x 1 *x 2 +2*x 2 +1 ; x1+x2 0 s.t. 1.5+x1x2 - x1 - x2 0 -x1x2 –10 0 例3 2.再建立M文件mycon.m定义非线性约束: function [g,ceq] mycon x g [x 1

文档评论(0)

美洲行 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档