MatLab数值计算优化.doc

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

PAGE  PAGE 15 MatLab 数学建模 授课: 唐 静 波 (九江学院理学院) 第五讲 数值计算(二) 线性优化 用命令x=lp(C,A,b,vlb,vub)。 [例] 最小值线性优化 f(x)=-5x1-4x2-6x3 x1-x2+x3≦20 3x1+2x2+4x3≦42 3x1+2x2≦30 (0≦x1, 0≦x2,0≦x3) First, enter the coefficients: f = [-5; -4; -6] A = [1 -1 1 3 2 4 3 2 0]; b = [20; 42; 30]; lb = [0,0,0]; % x的最小值 [0,0,0] ub = [inf,inf,inf]; Next, call a linear programming routine: x= lp(f,A,b,lb,ub); Entering x x = 0.0000 15.0000 3.0000 实际此命令改为: x = linprog(f,A,b,Aeq,beq) x = linprog(f,A,b,Aeq,beq,lb,ub) 对以上的问题可做如下的操作: First, enter the coefficients: f = [-5; -4; -6]; A = [1 -1 1 3 2 4 3 2 0]; b = [20; 42; 30]; lb = zeros(3,1); Next, call a linear programming routine: [x,fval,exitflag,output,lambda] = linprog(f,A,b,[],[],lb); x = 0.0000 15.0000 3.0000 fval = -78.0000 exitflag = 1 output = iterations: 6 cgiterations: 0 algorithm: lipsol lambda = ineqlin: [3x1 double] eqlin: [0x1 double] upper: [3x1 double] lower: [3x1 double] [例] 线性优化 Min -400x1-1000x2-300x3+200x4 -2x2 + x3 + x4=0 2x1 +3x2 =16 3x1 +4x2 =24 x1, x2, x3, x4=0; x3=5 c=[-400,-1000,-300,200]; %目标函数系数 A=[0 -2 1 1; 2 3 0 0; 3 4 0 0]; %约束条件系数 b=[0; 16; 24]; xLB=[0,0,0,0]; % x取值范围的最小值 xUB=[inf,inf,5,inf]; % x取值范围的最大值 x0=[0,0,0,0]; % x取迭代初始值 nEq=1; % 约束条件中只有一个 = 号,其余为= x=lp(c,A,b,xLB,xUB,x0,nEq) disp([最优值为: ,num2str(c*x)]) 结果: x = 3.4483 3.0345 5.0000 1.0690 最优值为 -5700 非线性优化 用命令x=constr(f ,x0)。 [例] 最小值非线性优化 Min f(x)=-x1x2x3, -x1-2x2-2x3≤0, x1+2x2+2x3≤72, 初值: x = [10; 10; 10] 第一步:编写M文件 myfun.m function [f,g]=myfun(x) f=-x(1)*x(2)*x(3); g(1)=-x(1)-2*x(2)-2*x(3); g(2)=x(1)+2*x(2)+2*x(3)-72; 第二步:求解 在MATLAB工作窗中键入 x0=[10,10,10]; x=constr(myfun,x0)即可. x = 24.0000 12.0000 12.0000 [例] 非线性优化 Min f(x)=-x1x2 (x1+ x2)x3=0; x1, x2=0; x3=2; 第一步:编写M文件

文档评论(0)

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

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

1亿VIP精品文档

相关文档