- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
优化程序
1,
建立的函数的M文件:
function f=myfun1(x);
f=-x(1)*x(2)*x(3)
主程序:
clear
clc
x0=[0;0;0]
A=[1,2,2;-1,-2,-2];
b=[27;0];
Aeq=[];
beq=[];
VLB=[];
VUB=[];
[x,fval,exitflag]=fmincon(@myfun1,x0,A,b,Aeq,beq,VLB,VUB)
Optimization terminated: first-order optimality measure less
than options.TolFun and maximum constraint violation is less
than options.TolCon.
Active inequalities (to within options.TolCon = 1e-006):
lower upper ineqlin ineqnonlin
2
x =
0
0
0
fval =
0
exitflag =
1
2,
建立函数的M文件:
function f=myfun2(x);
f=exp(x(1))*(3*x(1)^2+2*x(2)^2+3*x(1)*x(2)+2*x(2)+1)
建立非线性约束函数:
function [c,ceq]=mycon2(x);
c=[1.5-x(1)-x(2)+x(1)*x(2);x(1)*x(2)-10]
ceq=[]
主程序:
clear
clc
x0=[0;0];
A=[];
b=[];
Aeq=[];
beq=[];
VLB=[];
VUB=[];
[x,fval,exitflag]=fmincon(@myfun2,x0,A,b,Aeq,beq,VLB,VUB,@mycon2)
运行结果:
Optimization terminated: first-order optimality measure less
than options.TolFun and maximum constraint violation is less
than options.TolCon.
Active inequalities (to within options.TolCon = 1e-006):
lower upper ineqlin ineqnonlin
1
x =
1.2012
-1.4853
fval =
4.7128
exitflag =
1
clear
clc
为防止局部极小值成为优化结果,重新取定初值进行优化:
x0=[1;2];
A=[];
b=[];
Aeq=[];
beq=[];
VLB=[];
VUB=[];
[x,fval,exitflag]=fmincon(@myfun2,x0,A,b,Aeq,beq,VLB,VUB,@mycon2)
Optimization terminated: magnitude of directional derivative in search
direction less than 2*options.TolFun and maximum constraint violation
is less than options.TolCon.
No active inequalities.
x =
-20.2617
4.0672
fval =
1.6288e-006
exitflag =
5
clear
clc
x0=[2;4];
A=[];
b=[];
Aeq=[];
beq=[];
VLB=[];
VUB=[];
[x,fval,exitflag]=fmincon(@myfun2,x0,A,b,Aeq,beq,VLB,VUB,@mycon2)
Optimization terminated: magnitude of directional derivative in search
direction less than 2*options.TolFun and maximum constraint violation
is less than options.TolCon.
No active inequalities.
x =
-20.5081
39.4157
fval =
2.5097e-006
ex
文档评论(0)