遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼

遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼

ID:47538076

大?。?3.00 KB

頁數(shù):6頁

時間:2019-09-15

遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼_第1頁
遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼_第2頁
遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼_第3頁
遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼_第4頁
遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼_第5頁
資源描述:

《遺傳算法優(yōu)化BP神經網絡實現(xiàn)代碼》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。

1、%讀取數(shù)據(jù)data=xlsread('data.xls');%訓練預測數(shù)據(jù)data_train=data(1:113,:);data_test=data(118:123,:);input_train=data_train(:,1:9)';output_train=data_train(:,10)';input_test=data_test(:,1:9)';output_test=data_test(:,10)';%數(shù)據(jù)歸一化[inputn,mininput,maxinput,outputn,minoutput,maxoutpu

2、t]=premnmx(input_train,output_train);%對p和t進行字標準化預處理net=newff(minmax(inputn),[10,1],{'tansig','purelin'},'trainlm');net.trainParam.epochs=100;net.trainParam.lr=0.1;net.trainParam.goal=0.00001;%net.trainParam.show=NaN%網絡訓練net=train(net,inputn,outputn);%數(shù)據(jù)歸一化inputn_tes

3、t=tramnmx(input_test,mininput,maxinput);an=sim(net,inputn);test_simu=postmnmx(an,minoutput,maxoutput);error=test_simu-output_train;plot(error)k=error./output_trainfunctionret=Cross(pcross,lenchrom,chrom,sizepop,bound)%本函數(shù)完成交叉操作%pcorssinput:交叉概率%lenchrominput:染色體的長度%

4、chrominput:染色體群%sizepopinput:種群規(guī)模%retoutput:交叉后的染色體fori=1:sizepop%每一輪for循環(huán)中,可能會進行一次交叉操作,染色體是隨機選擇的,交叉位置也是隨機選擇的,%但該輪for循環(huán)中是否進行交叉操作則由交叉概率決定(continue控制)%隨機選擇兩個染色體進行交叉pick=rand(1,2);whileprod(pick)==0pick=rand(1,2);endindex=ceil(pick.*sizepop);%交叉概率決定是否進行交叉pick=rand;whil

5、epick==0pick=rand;endifpick>pcrosscontinue;endflag=0;whileflag==0%隨機選擇交叉位pick=rand;whilepick==0pick=rand;endpos=ceil(pick.*sum(lenchrom));%隨機選擇進行交叉的位置,即選擇第幾個變量進行交叉,注意:兩個染色體交叉的位置相同pick=rand;%交叉開始v1=chrom(index(1),pos);v2=chrom(index(2),pos);chrom(index(1),pos)=pick*v

6、2+(1-pick)*v1;chrom(index(2),pos)=pick*v1+(1-pick)*v2;%交叉結束flag1=test(lenchrom,bound,chrom(index(1),:));%檢驗染色體1的可行性flag2=test(lenchrom,bound,chrom(index(2),:));%檢驗染色體2的可行性ifflag1*flag2==0flag=0;elseflag=1;end%如果兩個染色體不是都可行,則重新交叉endendret=chrom;%清空環(huán)境變量clcclear%%%網絡結構建

7、立%讀取數(shù)據(jù)loaddatainputoutput%節(jié)點個數(shù)inputnum=2;hiddennum=5;outputnum=1;%訓練數(shù)據(jù)和預測數(shù)據(jù)input_train=input(1:1900,:)';input_test=input(1901:2000,:)';output_train=output(1:1900)';output_test=output(1901:2000)';%選連樣本輸入輸出數(shù)據(jù)歸一化[inputn,inputps]=mapminmax(input_train);[outputn,outputps

8、]=mapminmax(output_train);%構建網絡net=newff(inputn,outputn,hiddennum);%%遺傳算法參數(shù)初始化maxgen=10;%進化代數(shù),即迭代次數(shù)sizepop=10;%種群規(guī)模pcross=[0.3];%交叉概率選擇,0和

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。