Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2011-03-07, 10:27   #1
weifengfeifeng
初级会员
 
注册日期: 2011-03-07
年龄: 37
帖子: 1
声望力: 0
weifengfeifeng 正向着好的方向发展
默认 MATLAB中,在得到神经网络函数后,如何用遗传算法求得该函数的最小值?

MATLAB2009a命令流:
ST=[5.22 4.02 11.88 1350.00 412.31
5.80 7.96 38.07 3602.00 376.83
0.81 8.31 17.73 1476.00 830.06
5.85 5.27 41.19 444.00 975.70
4.05 1.58 43.32 3122.00 1493.32
0.62 6.54 46.86 1558.00 745.65
1.78 4.58 28.98 966.00 751.00
3.50 7.47 6.96 1616.00 343.51
6.13 3.25 15.69 386.00 1000.00
6.18 7.22 56.76 528.00 935.95
1.01 5.21 11.07 3770.00 591.61
6.21 3.67 51.51 3826.00 2137.76
6.13 2.13 34.26 2300.00 849.12
3.11 1.58 61.74 238.00 1144.55
5.12 4.88 6.63 938.00 611.56
0.91 8.15 28.50 1412.00 777.82
2.70 8.07 8.34 3286.00 624.50
5.86 7.20 59.67 60.00 1300.00
5.07 2.53 2.22 172.00 1216.55
6.14 7.23 48.45 676.00 822.19
4.20 2.74 51.00 2596.00 937.55
0.23 7.31 54.09 2928.00 550.45
5.44 1.82 6.99 2592.00 987.93
5.98 6.46 25.92 1804.00 170.00
4.35 7.69 17.55 2188.00 245.76 ];
for m = 1:25
STAR(m,1:5)=ST(m,1:5);
end
%%对25组数据进行RBF拟合
p1=STAR(:,1:4);%训练样本的输入单元
t1=STAR(:,5);%训练样本的输出单元
P=p1';T=t1';%转置
[p,pp] = mapminmax(P);%数据归一化
[t,tt] = mapminmax(T);%数据归一化
spread=1;
goal=1e-5;
df=1;
mn=40;
net=newrb(p,t,goal,spread,mn,df);
%%%%%%%%%%%%%%%%%遗传算法
fit = @(x) sim(net,x);
options = gaoptimset('Generations',100,'PopulationSize',20,...
'CrossoverFraction', 0.8, 'ParetoFraction', 0.5);
[x fval] = ga(fit,4, [], [], [], [], [-1;-1;-1;-1], [1;1;1;1]);
x;
在最后遗传算法时总是说:
??? Error using ==> network.sim at 178
Inputs are incorrectly sized for network.
Matrix must have 4 rows.
以及一大堆错误了
求大侠们帮帮忙
weifengfeifeng 当前离线   回复时引用此帖
回复


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

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



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


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