求助 非线性方程组最优解的matlab编程
问题是:目标函数:f=2*x+15*t;
s.t 66*x*y>=100;
y>=1;
(0.9^(y-2))*t>=1;
我用的是fmincon函数来求解,大家帮帮忙,看下哪里出了错,并帮着修改一下。
编写fop.m文件
function f=fop(x)
f=2*x(1)+15*x(3);
再编写nonlcon1.m
function =nonlcon1(x)
c=;
ce=[];
再编写testfmincon.m
clc;
x0=;
A=;
b=;
lb=;
option=optimset;option.LargeScale='off';option.Display='off';
=fmincon('fop',[],[],[],[],lb,[],'nonlcon1',option)
最后运行testfmincon,但是有错,没办法输出结果。
回复 楼主 的帖子
x应该就是你的结果吧没办法输出结果是什么
一直在运行? 有错误,无法运行
x0,A,b,option,lb都有错,
A,b都是[],lb是';x0是';
为什么lb后面要加'?
x0是什么意思?
最后是=fmincon('fop',x0,[],[],[],[],lb,[],'nonfun') 为什么不是=.....
nonfun.m是:
function =nonlcon1(x)
c(1)=100-66*x(1)*x(2);
c(2)=1-(0.9^(x(2)-2))*x(3)];
ce=[]; 最后是=fmincon('fop',x0,[],[],[],[],lb,[],'nonfun') :hug: 为什么不用加option?
:loveliness: 原帖由 shizao21 于 2008-8-5 20:23 发表 http://www.chinavib.com/forum/images/common/back.gif
有错误,无法运行
x0,A,b,option,lb都有错,
A,b都是[],lb是';x0是';
为什么lb后面要加'?
x0是什么意思?
最后是=fmincon('fop',x0,[],[],[],[],lb,[],'nonfun') 为什么不是= ...
x0,A,b,option,lb这些数不是你自己应该给的吗
=fmincon('fop',x0,[],[],[],[],lb,[],'nonfun') 为什么不是= ... 这个有什么关系,变量名不同而已
lz 还是先去看帮助文档吧
页:
[1]