Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2011-04-29, 16:55   #1
看天的男人
初级会员
 
看天的男人 的头像
 
注册日期: 2011-04-29
帖子: 2
声望力: 0
看天的男人 正向着好的方向发展
默认 减速器优化所得结果的错误问题

我建立的数学模型有六个变量,分别为x1-x6,
优化得到的结果一次为:
x= 2.0000
3.5000
19.1566
17.1106
6.4325
0.9900
favl=565.2628,
目标函数为:
y=(x(1)*x(3)*(1+x(5))+x(2)*x(4)*(1+31.5/x(5)))/(2*cos(x(6)));
现在问题来了,把上面所得x1-x6的优化结果带入目标函数,结果不等于fval所给的结果啊!!这是怎么回事??
另附我的程序
目标函数
function y=objfun(x)
y=(x(1)*x(3)*(1+x(5))+x(2)*x(4)*(1+31.5/x(5)))/(2*cos(x(6)))
约束条件
function [C,Ceq]=confun(x)
C(1)=-3.079*10^(-6)*x(1)^3*x(3)^3*x(5)+cos(x(6))^3;
C(2)=-1.701*10^(-4)*x(2)^3*x(4)^3+x(5)^2*cos(x(6))^2;
C(3)=-9.939*10^(-5)*(1+x(5))*x(1)^3*x(3)^3+cos(x(6))^2;
C(4)=-1.706*10^(-4)*(31.5+x(5))*x(2)^3*x(4)^2+x(5)^2*cos(x(6))^2;
C(5)=x(5)*(2*(x(1)+50)*cos(x(6))^2+x(1)*x(3)*x(5))-x(2)*x(4)*(31.5+x(5));
Ceq=0
主函数
A=[];b=[]; Aeq=[]; beq=[];
lb=[2;3.5;14;16;5.8;0.96];
x0=[3;5;19;17;6.3;0.96];
ub=[5;6;22;22;7;0.99];
options = optimset('LargeScale','on');
[x,fval,exitflag,output]=fmincon('objfun',x0,A,b,Aeq,beq,lb,ub,'confun',options);
x
fval
还有运行完程序,会出现以下警告
Local minimum found that satisfies the constraints.

Optimization completed because the objective function is non-decreasing in
feasible directions, to within the default value of the function tolerance,
and constraints were satisfied to within the default value of the constraint tolerance.

<stopping criteria details>
Optimization completed: The first-order optimality measure, 2.842171e-014, is less
than options.TolFun = 1.000000e-006, and the maximum constraint violation, 0.000000e+000,
is less than options.TolCon = 1.000000e-006.

Optimization Metric Options
first-order optimality = 2.84e-014 TolFun = 1e-006 (default)
max(constraint violation) = 0.00e+000 TolCon = 1e-006 (default)

知道的请告诉我,谢谢,!!在线求教

此帖于 2011-04-29 16:58 被 看天的男人 编辑。
看天的男人 当前离线   回复时引用此帖
旧 2011-04-30, 09:10   #2
anbcjys
高级会员
 
注册日期: 2008-09-14
年龄: 43
帖子: 351
声望力: 24
anbcjys 正向着好的方向发展
默认 回复: 减速器优化所得结果的错误问题

你的等式约束是什么 。
__________________
qq604443022
anbcjys 当前离线   回复时引用此帖
旧 2011-04-30, 09:27   #3
看天的男人
初级会员
 
看天的男人 的头像
 
注册日期: 2011-04-29
帖子: 2
声望力: 0
看天的男人 正向着好的方向发展
默认 回复: 减速器优化所得结果的错误问题

没有等式约束条件,所以是Ceq=[]
看天的男人 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 23:36


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.