Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-09-05, 13:44   #1
fllzx_2004
初级会员
 
注册日期: 2008-09-05
年龄: 49
帖子: 2
声望力: 0
fllzx_2004 正向着好的方向发展
默认 [求助]关于MATLAB中fmincon函数的使用

请教一下各位英雄:
我写了一个关于优化问题的东西,M文件opt25_3o.m为:
function f=myfun(x)
f=0.192457*10^(-4)*(x(2)+2)*x(1)^2*x(3)
M文件opt25_3c.m为:
function [c,ceq]=mycon(x)
c(1)=350-163*x(1)^(-2.86)*x(3)^(0.86);
c(2)=10-0.4*0.01*x(1)^(-4)*x(2)*x(3)^3;
c(3)=(x(2)+1.5)*x(1)+0.44*0.01*x(1)^(-4)*x(2)*x(3)^3-3.7*x(3);
c(4)=375-0.356*10^6*x(1)*x(2)^(-1)*x(3)^(-2);
c(5)=4-x(3)/x(1);
然后在命令窗口写的为:
A=[-1 0 0;1 0 0;0 -1 0;0 1 0;0 0 -1;0 0 1];
>> b=[-1;4;-4.5;50;;-10;30];
>> x0=[2.0; 5.0; 25.0];
>> lb=zeros(3,1);
>> [x,fval,exitflag,output,lambda]=fmincon(@opt25_3o,x0,A,b,[],[],lb,[],@opt25_3c)
可是结果有问题,显示为:
Warning: Large-scale (trust region) method does not currently solve this type of problem,
switching to medium-scale (line search).
> In fmincon at 274

f =

0.0135

??? Error using ==> fmincon
FMINCON cannot continue because user supplied nonlinear constraint function
failed with the following error:
Output argument "ceq" (and maybe others) not assigned during call to "D:\matlab\work\opt25_3c.m (opt25_3c)".

这是怎么回事啊?应该怎么解决呢?
谢谢
fllzx_2004 当前离线   回复时引用此帖
旧 2008-09-06, 10:14   #2
liujinhua
初级会员
 
注册日期: 2008-01-17
年龄: 41
帖子: 6
声望力: 0
liujinhua 正向着好的方向发展
默认 回复: [求助]关于MATLAB中fmincon函数的使用

你先在matlab的help里面查一下此函数的用法,那上面有使用说明
好像你的非线性函数调出变量时有问题
__________________
大家好新手上路请多多关照。:confused:
liujinhua 当前离线   回复时引用此帖
旧 2008-09-08, 17:13   #3
未注册
游客
 
帖子: n/a
默认 回复: [求助]关于MATLAB中fmincon函数的使用

谢谢您的帮助
  回复时引用此帖
回复

主题工具
显示模式

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

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


相似的主题
主题 主题作者 版面 回复 最后发表
[分享]用MATLAB实现遗传算法程序 guofeng0108 MATLAB论坛 31 2010-11-15 23:06
[求助]图像像素间的相关性? hippo613 MATLAB论坛 1 2009-01-09 08:36
菜鸟问题,为什么我用MATLAB7.01不支持符号运算 cyf0596 MATLAB论坛 2 2008-11-25 08:41
[分享]计算方法matlab程序 guofeng0108 MATLAB论坛 2 2008-11-18 03:43
关于采样 tomasso MATLAB论坛 0 2008-11-13 10:04


所有时间均为北京时间。现在的时间是 14:27


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