📄 gafault.m
字号:
% 用GA训练BP网络的权值、阈值
tic, % 开始计时
[P,T,R,S1,S2,S]=nninit; % BP网络初始化
aa=ones(S,1)*[-1 1];
popu=60; % 初始种群个数
initPpp=initializega(popu,aa,'gabpEval');
gen=700; % 遗传代数
[x endPop bPop trace]=ga(aa,'gabpEval',[],initPpp,[1e-6 1 1],'maxGenTerm',gen,...
'normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]);
%%Lets take a look at the performance of the ga during the run
subplot(2,1,1)
plot(trace(:,1),1./trace(:,3),'r-')
hold on
plot(trace(:,1),1./trace(:,2),'b-')
xlabel('Generation');
ylabel('Sum-Squared Error');
subplot(2,1,2)
plot(trace(:,1),trace(:,3),'r-')
hold on
plot(trace(:,1),trace(:,2),'b-')
xlabel('Generation');
ylabel('Fittness');
% 从编码x中解码出BP网络所对应的权值、阈值
[W1 B1 W2 B2]=gadecod(x);
% 仿真结果
TT=simuff(P,W1,B1,'tansig',W2,B2,'purelin')
toc % 结束计时
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -