gabpfault.m
资源名称:GA-bp.rar [点击查看]
上传用户:szhysm888
上传日期:2008-07-11
资源大小:35k
文件大小:1k
源码类别:
人工智能/神经网络
开发平台:
Matlab
- tic, %开始计时
- % 首先进行遗传算法
- [P,T,R,S1,S2,S]=nninit;
- aa=ones(S,1)*[-1 1];
- popu=30;
- initPpp=initializega(popu,aa,'gabpEval');
- gen=80; % 遗传代数
- % 遗传计算
- [x endPop bPop trace]=ga(aa,'gabpEval',[],initPpp,[1e-6 1 1],'maxGenTerm',gen,... 'normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]); % x The best found
- % 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');
- % 下面进行BP算法
- figure(2)
- % 将遗传算法的结果分解为BP网络所对应的权值、阈值
- [W1 B1 W2 B2 P T A1 A2 SE val]=gadecod(x);
- % BP网络训练的参数设置
- disp_fqre=100; max_epoch=3000;err_goal=0.002;lr=0.01;
- TP=[disp_fqre max_epoch err_goal lr];
- [W1,B1,W2,B2,te,tr]=trainbp(W1,B1,'tansig',W2,B2,'purelin',P,T,TP);
- % 仿真结果
- TT=simuff(P,W1,B1,'tansig',W2,B2,'purelin')
- toc % 结束计时