首页 基于遗传算法的BP神经网络MATLAB代码

基于遗传算法的BP神经网络MATLAB代码

举报
开通vip

基于遗传算法的BP神经网络MATLAB代码基于遗传算法的BP神经网络MATLAB代码 用遗遗算法遗化BP神遗遗的网Matlab遗程遗例;遗,由于BP遗的遗遗遗化是一无遗束遗化遗遗~而且遗遗要采用遗遗遗~所以直接利用网个数Matlab遗遗算法工具箱。以下遗出的代遗是遗一个19遗入遗量~1遗出遗量情下的个况非遗性回遗而遗遗的~如果要遗用 于其情~只需改遗遗解遗函可。 它况数即 GABP程序一,遗遗遗遗的主函数 function net=GABPNET(XX,YY) %----------------------------------------------...

基于遗传算法的BP神经网络MATLAB代码
基于遗传算法的BP神经网络MATLAB代码 用遗遗算法遗化BP神遗遗的网Matlab遗程遗例;遗,由于BP遗的遗遗遗化是一无遗束遗化遗遗~而且遗遗要采用遗遗遗~所以直接利用网个数Matlab遗遗算法工具箱。以下遗出的代遗是遗一个19遗入遗量~1遗出遗量情下的个况非遗性回遗而遗遗的~如果要遗用 于其情~只需改遗遗解遗函可。 它况数即 GABP程序一,遗遗遗遗的主函数 function net=GABPNET(XX,YY) %---------------------------------------------------------------- ---------- % GABPNET.m % BPBP使用遗遗算法遗网遗遗遗遗遗遗行遗化~再用算法遗遗遗网 %---------------------------------------------------------------- ---------- %数据遗一化遗遗理 nntwarn off XX=[1:19;2:20;3:21;4:22]'; YY=[1:4]; XX=premnmx(XX); YY=premnmx(YY); YY %遗建遗网 net=newff(minmax(XX),[19,25,1],{'tansig','tansig','purelin'},'trainlm');%下面使用遗遗算法遗遗遗行遗化网 P=XX; T=YY; R=size(P,1); S2=size(T,1); S1=25;%遗含遗遗点数 S=R*S1+S1*S2+S1+S2;%遗遗算法遗遗遗度 aa=ones(S,1)*[-1,1]; popu=50;%遗群遗模 save data2 XX YY % xx,yy data2 MAT-file是 将二遗的遗遗存入 个数数遗个~initPpp=initializega(popu,aa,'gabpEval');%初始化遗群gen=100;%遗遗代数 %gaotgabpEval下面遗用工具箱~其中目遗函定遗遗数 [x,endPop,bPop,trace]=ga(aa,'gabpEval',[],initPpp,[1e-6 1 1],'maxGenTerm',gen,... 'normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]); %遗收遗曲遗遗 figure(1) plot(trace(:,1),1./trace(:,3),'r-'); hold on plot(trace(:,1),1./trace(:,2),'b-');xlabel('Generation'); ylabel('Sum-Squared Error');figure(2) plot(trace(:,1),trace(:,3),'r-');hold on plot(trace(:,1),trace(:,2),'b-');xlabel('Generation'); ylabel('Fittness'); %BP下面初步得到的遗遗矩遗遗遗未遗始遗遗的将尚网遗 [W1,B1,W2,B2,P,T,A1,A2,SE,val]=gadecod(x); net.LW{2,1}=W1; net.LW{3,2}=W2; net.b{2,1}=B1; net.b{3,1}=B2; XX=P; YY=T; %遗置遗遗参数 net.trainParam.show=1; net.trainParam.lr=1; net.trainParam.epochs=50; net.trainParam.goal=0.001;%遗遗遗网 net=train(net,XX,YY); 程序二,适遗遗函数 function [sol, val] = gabpEval(sol,options) % val - the fittness of this individual% sol - the individual, returned to allow for Lamarckian evolution % options - [current_generation]load data2 nntwarn off XX=premnmx(XX); YY=premnmx(YY); P=XX; T=YY; R=size(P,1); S2=size(T,1); S1=25;%遗含遗遗点数 S=R*S1+S1*S2+S1+S2;%遗遗算法遗遗遗度 for i=1:S, x(i)=sol(i); end; [W1, B1, W2, B2, P, T, A1, A2, SE, val]=gadecod(x); 程序三,遗解遗函数 function [W1, B1, W2, B2, P, T, A1, A2, SE, val]=gadecod(x) load data2 nntwarn off XX=premnmx(XX); YY=premnmx(YY); P=XX; T=YY; R=size(P,1); S2=size(T,1); S1=25;%遗含遗遗点数 S=R*S1+S1*S2+S1+S2;%遗遗算法遗遗遗度 % R*S1W1前个遗遗遗 for i=1:S1, for k=1:R, W1(i,k)=x(R*(i-1)+k); end end % S1*S2R*S1W2接着的个即遗遗;第个后的遗遗,遗for i=1:S2, for k=1:S1, W2(i,k)=x(S1*(i-1)+k+R*S1); end end % S1R*S1+S1*S2B1接着的个即遗遗;第个后的遗遗,遗for i=1:S1, B1(i,1)=x((R*S1+S1*S2)+i);end % S2R*S1+S1*S2+S1B2接着的个即遗遗;第个后的遗遗,遗for i=1:S2, B2(i,1)=x((R*S1+S1*S2+S1)+i); end % S1S2遗算与遗的遗出 A1=tansig(W1*P,B1); A2=purelin(W2*A1,B2);% 遗算遗差平方和 SE=sumsqr(T-A2); val=1/SE; % 遗遗算法的适遗遗 GABPNET想行程序~直接在代遗口遗入运窗即可。 遗了~行程序遗需要遗用运gaot工具箱~有一就行了。没装个
本文档为【基于遗传算法的BP神经网络MATLAB代码】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_321575
暂无简介~
格式:doc
大小:18KB
软件:Word
页数:5
分类:
上传时间:2017-10-21
浏览量:72