- 积分
- 0
- 注册时间
- 2011-5-4
- 仿真币
-
- 最后登录
- 1970-1-1
|
小弟最近想学习利用遗传算法求取mdl模块中的参数最佳值,在网上看了几个例子,自我练习,遇见良以下错误,想请各位高手指点一下,谢谢。
适应度函数:function y=obj1(x)
assignin('base','z1',x(1));
assignin('base','p1',x(2));
assignin('base','z2',x(3));
assignin('base','p2',x(4));
assignin('base','k',x(5));
[t,xx,yy]=sim('opt',4);
y=yy(end,1);
if max(yy(:,2))>1.03
y=1.2*y;
end
调用语言:
x0=[1 2 3 4 5];
bounds=ones(5,1)*[0.01 50];
[x,endpop]=ga(bounds,'obj1');
matlab提示错误:
??? Error using ==> gads\private\validate>validNumberofVariables
Number of variables (NVARS) must be a positive number.
Error in ==> gads\private\validate at 43
validNumberofVariables(o.GenomeLength);
Error in ==> ga at 153
[GenomeLength,FitnessFcn,options] = validate(GenomeLength,FitnessFcn,options);
Error in ==> Untitled5 at 3
[x,endpop]=ga(bounds,'obj1');
我在网上看了一下似乎有人也遇到类似错误,却无人回答,有高手吗?模型见附件。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|