精華區beta MATLAB 關於我們 聯絡資訊
這是他所出現的錯誤訊息 ??? Attempted to access e(2,1); index out of bounds because size(e)=[1,1]. Error in ==> fnn7simu at 39 O21=exp(-(e(i,j)-m21)*(e(i,j)-m21)/(d21*d21)); 以下是我的程式碼: 我會把他說說的地方用箭頭表示出來! clear all; close all; WindSpeed=[ 5.8, 6.04, 6.28, 6.52, 6.76, 7, 7.12, 7.24, 7.36, 7.48, 7.6, 7.68, 7.76, 7.84, 7.92, 8, 8.2, 8.4, 8.6, 8.8, 9.36, 9.72, 10.08, 10.44, 10.8, 10.98, 11.16, 11.34, 11.52, 11.7]; fdata=[ 0.21, 0.21, 0.21, 0.24, 0.25, 0.26, 0.26, 0.26, 0.27, 0.27, 0.27, 0.28, 0.28, 0.28, 0.29, 0.29, 0.3, 0.3, 0.32, 0.33, 0.34, 0.35, 0.36, 0.37, 0.38, 0.39, 0.39, 0.39, 0.4, 0.4, 0.41]; % initial value m11=5.0; m12=15.0; m21=-1.0; m22=1.0; d11=3.5; d12=3.5; d21=0.8; d22=0.8; Training_Threshold=0.005; fpredict=0.0; eta=0.7; for i=1 for j=1 e(i,j)=0; w1(i,j)=1; w2(i,j)=1; end end %Progrm training for j=1:1000 for i=1:31 %layer1 O11=exp(-(WindSpeed(i)-m11)*(WindSpeed(i)-m11)/(d11*d11)); O12=exp(-(WindSpeed(i)-m12)*(WindSpeed(i)-m12)/(d12*d12)); O21=exp(-(e(i,j)-m21)*(e(i,j)-m21)/(d21*d21)); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^就是這裡! O22=exp(-(e(i,j)-m22)*(e(i,j)-m22)/(d22*d22)); %layer2 phi1=O11*O21; phi2=O12*O22; %layer3 fpredict=w1(i,j)*phi1+w2(i,j)*phi2; %get new e e(i,j)=fpredict-fdata(i); dw1=eta*e(i,j)*phi1; dw2=eta*e(i,j)*phi2; w1(i+1,j)=w1(i,j)-dw1; w2(i+1,j)=w2(i,j)-dw2; end end 勞煩了各位先進! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.135.12.39