版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、clcclear all%一、初始化部分%1.1預處理樣本數(shù)據(jù)%選取訓練樣本(x,y)for i=1:126x=0+0.0251*(i-1);y(i)=(si n(x)+(x.A2/9+x/3)*exp(-0.5)*(x.A2)/2;% 待逼近函數(shù)endAllSami n=0:0.0251:pi;% 訓練樣本輸入AIISamOut=y;%訓練樣本輸出%選取測試樣本for i=1:125x=0.0125+0.0251*(i-1);% 測試樣本輸入ytest(i)=(si n(x)+(x.A2/9+x/3)*exp(-0.5)*(x.A2)/2;% 測試樣本輸出endAlltesti n=0.01
2、25:0.0251:(pi-0.0125);AlltestOut=ytest;%歸一化訓練樣本,測試樣本Alltesti nn ,mi nAlltestl n,maxAlltest in ,AlltestOut n,min AlltestOut,maxAlltestOut=premnm x(Alltesti n, AlltestOut);% 測試樣本AllSami nn, mi nAIISaml n, maxAIISaml n,AIISamOut n,mi nAIISamOut,maxAIISamOut=premnm x(AIISami n,AIISamOut); % 訓練樣本testi n=
3、Alltesti nn;testOut=AIItestOut n;global Ptra in;Ptrain = AllSami nn;global Ttrai n;Ttrain = AIISamOut n;%1.2設置神經網(wǎng)絡參數(shù)global in dim;%輸入層神經元個數(shù)in dim=1;global hiddennum; %隱藏層神經元個數(shù)hidde nnum=3;global outdim;%輸出層神經元個數(shù)outdim=1;global Gpos;%1.3設置微粒群參數(shù)vmax=0.5;% 速度上限minerr=1e-7;% 目標誤差wmax=0.95;wmi n=0.25;glo
4、bal itmax; %最大迭代次數(shù)itmax=200;c1=1.5;c2=1.5;%權值隨迭代次數(shù)線性遞減以保證收斂for iter=1:itmaxW(iter)=wmax-(wmax-wmi n)/itmax)*iter;enda=-1;b=1;m=-1;n=1;global N; %微粒個數(shù)N=30;global D; %每個微粒的維數(shù)D=(i ndim+1)*hidde nn um+(hidde nn um+1)*outdim;% 所有權值和閾值%初始化微粒位置ran d('state',sum(100*clock);%產生和時間相關的隨機數(shù)global X;X=a+(
5、b-a)*rand(N,D,1); %X 的值在 a 和 b 之間%初始化微粒速度V=m+(n-m)*rand(N,D,1);%V 的值在 m 和 n 之間%二、微粒群更新迭代部分%global net;n et=n ewff(mi nm ax(Ptrai n),hidde nnum ,outdim,'ta nsig','pureli n'); global gbest; %全局最優(yōu)位置global pbest; %局部最優(yōu)位置%2.1第一次迭代fitn ess=fitcal(X,i ndim,hidde nnum ,outdim,D,Ptra in, Ttra
6、 in); %計算適應值C,l=mi n(fit ness(:,1,1);%第一代,返回微粒群中最小適應值給C,該微粒的序號給IL(:,1,1)=fit ness(:,1,1);%第一代,每個微粒的適應值B(1,1,1)=C;%第一代,全局最優(yōu)適應值(B存儲當前代最優(yōu)適應值)bestminimum(1)=C;% bestminimum存儲所有代中的全局最小適應值gbest(1,:,1)=X(I,:,1);%第一代,全局最優(yōu)的微粒位置for p=1:NG(p,:,1)=gbest(1,:,1);%G便于速度更新運算(函數(shù)格式統(tǒng)一)endGpos=gbest(1,:,1);endfor i=1:N
7、;pbest(i,:,1)=X(i,:,1);%因為是第一代,當前位置即為歷史最優(yōu)位置endV(:,:,2)=W(1)*V(:,:,1)+c1*rand*(pbest(:,:,1)-X(:,:,1)+c2*rand*(G(:,:,1)-X(:,:,1);% 更新速度%判斷速度是否越界for ni=1:Nfor di=1:Dif V(n i,di,2)>vmaxV( ni,di,2)=vma x;else if V(n i,di,2)<-vmaxV(n i,di,2)=-vma x;elseV(ni ,di,2)=V( ni ,di,2);endendendX(:,:,2)=X(:,
8、:,1)+V(:,:,2);% 更新位置%disp('執(zhí)行到這里')%2.2第2次到最后一次迭代for j=2:itmaxh=j;disp('迭代次數(shù),當前代全局最佳適應值,本代以前所有代中的全局最佳適應值')disp(j-1)disp(B(1,1,j-1)%j-1代全局最優(yōu)適應值disp(bestmi nimum(j-1)%j-1代以前所有代中的全局最優(yōu)適應值disp(' *')fitn ess=fitcal(X,i ndim,hidde nnum ,outdim,D,Ptrai n,Ttrai n);C,l=min(fitness(:,1,j
9、);%第j代的最優(yōu)適應值和最優(yōu)微粒序號L(:,1,j)=fitness(:,1,j);%第j代每個微粒的適應值B(1,1,j)=C;%第j代全局最優(yōu)適應值gbest(1,:,j)=X(I,:,j);%第j代全局最優(yōu)微粒的位置GC,GI=min(B(1,1,:);%所有代的全局最優(yōu)適應值賦給GC,代數(shù)賦給GIbestminimum(j)=GC;%所有代的最優(yōu)適應值賦給j代的bestminimum%判斷是否符合條件if GC<=mi nerrGpos=gbest(1,:,GI);%若滿足均方誤差條件,記錄最優(yōu)位置,停止迭代breakendif j>=itmax%超過最大迭代次數(shù)時,退出
10、break%計算歷史全局最優(yōu)位置if B(1,1,j)<GCgbest(1,:,j)=gbest(1,:,j);elsegbest(1,:,j)=gbest(1,:,GI);endfor p=1:NG(p,:,j)=gbest(1,:,j);end%計算各微粒歷史最優(yōu)位置for i=1:N;C,l=min(L(i,1,:);%計算每個微粒的歷史最優(yōu)適應值,賦給C,代數(shù)賦給Iif L(i,1,j)<=Cpbest(i,:,j)=X(i,:,j);elsepbest(i,:,j)=X(i,:,I);endendV(:,:,j+1)=W(j)*V(:,:,j)+c1*ra nd*(pbe
11、st(:,:,j)-X(:,:,j)+c2*ra nd*(G(:,:,j)-X(:,:,j);for ni=1:Nfor di=1:Dif V(n i,di,j+1)>vmaxV(n i,di,j+1)=vma x;else if V(n i,di,j+1)<-vmaxV(n i,di,j+1)=-vmax;elseV(n i,di,j+1)=V( ni,di,j+1);endendendX(:,:,j+1)=X(:,:,j)+V(:,:,j+1);%2.3將最優(yōu)微粒(即最優(yōu)權值和閾值)賦給神經網(wǎng)絡if j=itmaxGpos=gbest(1,:,GI);enddisp('
12、要顯示 Gpos的值')disp(Gpos)wi=Gpos(1:hiddennum);%輸入層-隱藏層權值wl=Gpos(hiddennum+1:2*hiddennum);%隱藏層-輸出層權值b1=Gpos(2*hiddennum+1:3*hiddennum);%輸入層-隱藏層閾值b2=Gpos(3*hiddennum+1:3*hiddennum+outdim);%隱藏層-輸出層閾值end%三、神經網(wǎng)絡訓練部分Q%*w,v=size(testln);%w 返回行數(shù),v返回列數(shù)for k=1:v% v是測試樣本的個數(shù)for t=1:hidde nn um%計算隱藏層每個神經元的輸入,輸出
13、hidi nput=0;hidi nput=wi(t)*testl n(k)-b1(t);hidoutput(t)=ta nsig(hidi nput);endout in put=0; %used to calculate the value of output in outlayerfor t=1:hidde nnumouti nput=outi nput+wl(t)*hidoutput(t);%輸出層只有一個神經元時的情況endoutVal(k)=pureli n(outi nput-b2);% 輸出層的輸出值endsubplot(2,1,1) %/ 調用窗口句柄%反歸一化Alltest
14、I n, AlltestOut=postm nm x(testI n,mi nAlltest In ,maxAlltestl n,testOut,mi nAlltestOut,maxAlltestOut); ResVal=post mnm x(outVal,mi nAlltestOut,maxAlltestOut);trai nError=abs(ResVal-AlltestOut);% 測試誤差for k=1:vSquareE(k)=(trainError(k)*trainError(k)/2;%v 個樣本的誤差數(shù)組endplot(AlltestI n, SquareE)ylabel(
15、9;Error')subplot(2,1,2)j=1:1:h;plot(j,bestmi nim um(j)set(gca,'XLim',1 100000);set(gca,'XMi no rTick','o n');set(gca,'XTick',1 10 100 1000 10000 100000);set(gca,'YLim',0.000001 1);set(gca,'YMi no rTick','o n');set(gca,'YTick',0.0000
16、01 0.00001 0.0001 0.001 0.01 0.1 1); set(gca,'yscale','log','xscale','log')ylabel('tra ining error')xlabel('Iterati on Number')hold on%適應度函數(shù)部分fun ctio n fitval = fitcal(X,i ndim,hidde nnu m,outdim,D,Ptrai n,Ttrai n)%三維矩陣:x微粒數(shù)(X的行數(shù));y微粒維數(shù)(X的列數(shù));z代數(shù)(X的層數(shù)
17、)x,y,z=size(X);w,v=size(Ptrain);%二維矩陣:w訓練樣本維數(shù),這里為1; v訓練樣本個數(shù)for i=1:x%x代表粒子數(shù)量,z代表代數(shù)wi=X(i,1:hidde nnu m,z);wl=X(i,1*hidde nn um+1:2*hidde nn um,z);b仁 X(i,2*hidde nn um+1:3*hidde nn um,z);b2=X(i,3*hidde nnu m+1:3*hidde nnu m+outdim,z);error=0;for k=1:v%訓練樣本總數(shù)for t=1:hidde nnumhid in put=0;hidi nput=wi(t)*Ptrai n( k)-b1(t);hidoutpu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度公路建設廉政承諾及交通安全管理合同3篇
- 二零二五年度帶物業(yè)費結算與社區(qū)配套的二手房屋個人買賣合同3篇
- 二零二五年度智能家居生活體驗個人住房租賃服務協(xié)議3篇
- 遠程監(jiān)控技術課程設計
- 應用文啟事課程設計
- 二零二五年度市場營銷戰(zhàn)略合同3篇
- 二零二五年度公路運輸物流信息化平臺建設合同3篇
- 英國文物修復課程設計
- 2025年度生豬養(yǎng)殖與電子商務平臺合作合同3篇
- 二零二五年度新型城鎮(zhèn)化項目配套基礎設施建設國有土地租賃合同3篇
- 農業(yè)機械培訓課件
- 河南省鄭州市2023-2024學年高二上學期期末考試英語試題 附答案
- 2023年年北京市各區(qū)初三語文一模分類試題匯編 - 作文
- 2024年度心理輔導合作協(xié)議模板版
- GB/T 22723-2024天然氣能量的測定
- 能源崗位招聘筆試題與參考答案(某大型國企)2024年
- 航空與航天學習通超星期末考試答案章節(jié)答案2024年
- 麻醉蘇醒期躁動患者護理
- 英語雅思8000詞匯表
- 2024年《13464電腦動畫》自考復習題庫(含答案)
- 2025年遼寧中考語文復習專項訓練:文言文閱讀(含解析)
評論
0/150
提交評論