2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、<p><b>  附錄程序源代碼</b></p><p>  以“永財”號為例,提供鐵金屬含量預測程序源代碼</p><p><b>  x=1:1:18</b></p><p>  %鐵元素含量18組歷史數(shù)據(jù)</p><p>  y=[5 4.4 5.8 6.4 3.1 1.8

2、 5.9 2.9 8.9 8.8 5.9 2.6 1.7 6.1 3.2 0.7 2.4 2.2 ]</p><p>  x1=linspace(1,18,100) </p><p>  y1=spline(x,y,x1)</p><p>  plot(x,y,'*',x1,y1,'b')</p>

3、<p>  xlabel(‘取樣次數(shù)’)</p><p>  ylabel(‘鐵元素含量’)</p><p><b>  %% 聲明全局變量</b></p><p>  global p % 訓練集輸入數(shù)據(jù)</p><p>  global t % 訓練集輸出數(shù)據(jù)</p><p>

4、  global R % 輸入神經(jīng)元個數(shù)</p><p>  global S2 % 輸出神經(jīng)元個數(shù)</p><p>  global S1 % 隱層神經(jīng)元個數(shù)</p><p>  global S % 編碼長度</p><p><b>  %% 導入數(shù)據(jù)</b></p><p><

5、;b>  S1=10</b></p><p><b>  % 輸入和輸出樣本</b></p><p>  for i=1:75</p><p>  p(i,1:10)=y1(i:i+9)</p><p><b>  end</b></p><p>  t=p

6、(2:75,10)</p><p><b>  % 數(shù)據(jù)歸一化</b></p><p>  [pn,minp,maxp,tn,mint,maxt] = premnmx(p',t');</p><p><b>  % 測試數(shù)據(jù)</b></p><p>  for j=1:15</

7、p><p>  k(j,1:10)=y1(j+75:j+84)</p><p><b>  end</b></p><p><b>  % 數(shù)據(jù)歸一化</b></p><p>  [kn,mink,maxk,en,mine,maxe]=premnmx(k',e');</p>

8、<p><b>  %% BP神經(jīng)網(wǎng)絡</b></p><p><b>  % 網(wǎng)絡創(chuàng)建</b></p><p>  net=newff(minmax(pn),[10,1], {'tansig','purelin' },'trainlm');</p><p>  

9、net.layers { 1}.initFcn='initwb';</p><p>  net.layers {2 } .initFcn='initwb';</p><p>  net.inputWeights { 1,1 }.initFcn=’rands’;</p><p>  net.layerWeights {2,1}.init

10、Fcn='rands';</p><p>  net.biases { 1,1}.initFcn='rands’;</p><p>  net.biases { 2,1}.initFcn='rands';</p><p><b>  % 設置訓練參數(shù)</b></p><p>  n

11、et.trainParam.show=100;</p><p>  net.trainParam.lr=0.1;</p><p>  net.trainParam.mc=0.9;</p><p>  net.trainParam.epochs=10000;</p><p>  net.trainParam. goal=1e-3;</p&

12、gt;<p><b>  % 網(wǎng)絡訓練</b></p><p>  net=init(net);</p><p>  net=train(net,pn,tn)</p><p><b>  %仿真測試</b></p><p>  s_bp=sim(net,kn)</p>&

13、lt;p>  Out1=postmnmx(s_bp,mine,maxe) % BP神經(jīng)網(wǎng)絡的仿真結(jié)果</p><p>  %bp算法 預測值和真實值的比較</p><p><b>  figure(1)</b></p><p><b>  x=1:1:15</b></p><p><

14、b>  y=[1.1678</b></p><p><b>  0.8617</b></p><p><b>  0.7122</b></p><p><b>  0.7339</b></p><p><b>  0.9089</b>&l

15、t;/p><p><b>  1.1972</b></p><p><b>  1.5581</b></p><p><b>  1.9512</b></p><p><b>  2.3360</b></p><p><b>

16、  2.6719</b></p><p><b>  2.9184</b></p><p><b>  3.0350</b></p><p><b>  2.9811</b></p><p><b>  2.7163</b></p>

17、<p><b>  2.2000;]</b></p><p>  x1=linspace(1,15,100)</p><p>  y1=spline(x,y,x1)</p><p>  y2=spline(x,out1,x1)</p><p>  plot(x,y,'*',x1,y1,

18、9;k',x,out1,'p',x1,y2,'r')</p><p><b>  grid</b></p><p>  title('bp算法預測值與實際值比較’)</p><p>  xlabel('測試次數(shù)’)</p><p>  ylabel(‘鐵元素含量/p

19、pm’)</p><p>  legend(‘實際值’,'line1',’預測值’,'line2')</p><p>  %計算bp算法的相對誤差以及未來預測值</p><p>  a=abs(out1-e')</p><p>  for i=1:15</p><p>  a1(

20、i, 1)=a(1,i)/e(i, 1)</p><p><b>  end</b></p><p>  a2=sum(a1)/15</p><p>  q=[1.1972 1.5581 1.9512 2.3360 2.6719 2.9184 3.0350 2.9811 2.7163 2.2000;]</p>&

21、lt;p>  [qn,minq,maxq]=premnmx(q’);</p><p>  w=sim(net,qn)</p><p>  w_bp=postmnmx(w,mine,maxe)</p><p>  %% GA-BP神經(jīng)網(wǎng)絡</p><p>  R=size(p’,1);</p><p>  S2=s

22、ize(t', 1);</p><p>  S=R*S1+S1*S2+S1+S2;</p><p>  aa=ones(S,1)*[-1,1];</p><p>  popu=100; % 種群規(guī)模</p><p>  initPpp=initiaIizega(popu,aa,`gabpEval');%初始化種群</p&

23、gt;<p>  gen=100;%遺傳代數(shù)</p><p>  %調(diào)用GAOT工具箱,其中目標函數(shù)定義為gabpEval</p><p>  [x,endPop,bPop,trace]=ga(aa,'gabpEval', [],initPpp, [ 1e-6 1 1 ],'maxGenTerm',gen,...</p><

24、p>  'normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]);</p><p>  %繪均方誤差變化曲線</p><p><b>  figure(2)</b></p><p>  plot(trace

25、(:,1), 1 ./trace(:,3 ),'r-');</p><p><b>  hold on</b></p><p>  plot(trace(:,1),1./trace(:,2),'b-');</p><p>  xlabel('Generation');</p><

26、;p>  ylabel('Sum-Squared Error');</p><p>  %繪制適應度函數(shù)變化</p><p><b>  figure(3)</b></p><p>  plot(trace(:,1),trace(:,3),'r-');</p><p><b&g

27、t;  hold on</b></p><p>  plot(trace(:,1),trace(:,2),'b-');</p><p>  xlabel('Generation');</p><p>  ylabel('Fittness');</p><p>  %計算最優(yōu)的權(quán)值和闌

28、值</p><p>  [W1,B1,W2,B2,val]=gadecod(x);</p><p>  net.IW{1,1}=W1;</p><p>  net.LW { 2,1} =W2;</p><p>  net.b{ 1 }=B1;</p><p>  net.b { 2}=B2;</p>&l

29、t;p>  %利用新的權(quán)值和閉值進行訓練</p><p>  net=train(net,pn,tn);</p><p><b>  %仿真測試</b></p><p>  s-ga=sim(net,kn);</p><p>  out2=postmnmx(s_ga,mine,maxe)</p>&l

30、t;p>  %遺傳優(yōu)化后的仿真結(jié)果</p><p>  %ga算法預測值和真實值的比較</p><p><b>  figure(4)</b></p><p><b>  x=1:1:15</b></p><p><b>  y=[1.1678</b></p>

31、<p><b>  0.8617</b></p><p><b>  0.7122</b></p><p><b>  0.7339</b></p><p><b>  0.9089</b></p><p><b>  1 .197

32、2</b></p><p><b>  1.5581</b></p><p><b>  1.9512</b></p><p><b>  2.3360</b></p><p><b>  2.6719</b></p><p

33、><b>  2.9184</b></p><p><b>  3.0350</b></p><p><b>  2.9811</b></p><p><b>  2.7163</b></p><p><b>  2.2000;]</

34、b></p><p>  x1=linspace(1,15,100)</p><p>  y1=spline(x,y,x1)</p><p>  y2=spline(x,out2,x1)</p><p>  plot(x,y,'*',x1,y1,'b',x,out2,'p',x1,y2,&

35、#39;r')</p><p><b>  grid</b></p><p>  title('gabp算法預測值與實際值比較’)</p><p>  xlabel('測試次數(shù)’)</p><p>  ylabel(‘鐵元素含量/PPm’)</p><p>  legend

36、(‘實際值’,'line 1',’預測值’,'line2')</p><p>  %計算gabp算法的相對誤差以及未來預測值</p><p>  b=abs(out2-e')</p><p>  for i=1:15</p><p>  b1 (i,1)=b(1,i)/e(i,1)</p>

37、<p><b>  end</b></p><p>  b2=sum(b1)/ 15</p><p>  q=[1.1972 1.5581 1.9512 2.3360 2.6719 2.9184 2.9811 2.7163 2.2000;]</p><p>  [qn,minq,maxq]=premnmx(q'

38、;);</p><p>  w=sim(net,qn)</p><p>  w_ga=postmnmx(w,mine,maxe)</p><p>  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@</p><p>  附錄程序源代碼(備份)</p><p>  以“永財”號為例,提供鐵金屬含量預測

39、程序源代碼</p><p><b>  x=1:1:18</b></p><p>  %鐵元素含量18組歷史數(shù)據(jù)</p><p>  y=[5 4.4 5.8 6.4 3.1 1.8 5.9 2.9 8.9 8.8 5.9 2.6 1.7 6.1 3.2 0.7 2.4 2.2 ]</p><p

40、>  x1=linspace(1,18,100)</p><p>  y1=spline(x,y,x1)</p><p>  plot(x,y,'*',x1,y1 ,'b')</p><p>  xlabel(‘取樣次數(shù)’)</p><p>  ylabel(‘鐵元素含量’)</p><

41、;p><b>  %% 聲明全局變量</b></p><p>  global p % 訓練集輸入數(shù)據(jù)</p><p>  global t % 訓練集輸出數(shù)據(jù)</p><p>  global R % 輸入神經(jīng)元個數(shù)</p><p>  global S2 % 輸出神經(jīng)元個數(shù)</p><

42、;p>  global S1 % 隱層神經(jīng)元個數(shù)</p><p>  global S % 編碼長度</p><p><b>  %% 導入數(shù)據(jù)</b></p><p><b>  S1=10</b></p><p><b>  % 輸入和輸出樣本</b></

43、p><p>  for i=1:75</p><p>  p(i,1:10)=y1(i:i+9)</p><p><b>  end</b></p><p>  t=p(2:75,10) %原為t=p(2:75,10)</p><p><b>  % 數(shù)據(jù)歸一化</b><

44、/p><p>  [pn,minp,maxp,tn,mint,maxt] = premnmx(p',t');</p><p><b>  % 測試數(shù)據(jù)</b></p><p>  for j=1:15</p><p>  k(j,1:10)=y1(j+75:j+84)</p><p>

45、<b>  end</b></p><p>  e=k(2:15,10) % 我個人添加的,未知正確與否。</p><p><b>  % 數(shù)據(jù)歸一化</b></p><p>  [kn,mink,maxk,en,mine,maxe]=premnmx(k',e');</p><p>

46、;<b>  %% BP神經(jīng)網(wǎng)絡</b></p><p><b>  % 網(wǎng)絡創(chuàng)建</b></p><p>  net=newff(minmax(pn),[10,1], {'tansig','purelin' },'trainlm');</p><p>  net.layer

47、s { 1}.initFcn='initwb';</p><p>  net.layers {2 } .initFcn='initwb';</p><p>  net.inputWeights { 1,1 }.initFcn=’rands’;</p><p>  net.layerWeights {2,1}.initFcn='

48、rands';</p><p>  net.biases { 1,1}.initFcn='rands’;</p><p>  net.biases { 2,1}.initFcn='rands';</p><p><b>  % 設置訓練參數(shù)</b></p><p>  net.trainP

49、aram.show=100;</p><p>  net.trainParam.lr=0.1;</p><p>  net.trainParam.mc=0.9;</p><p>  net.trainParam.epochs=10000;</p><p>  net.trainParam. goal=1e-3;</p><

50、p><b>  % 網(wǎng)絡訓練</b></p><p>  net=init(net);</p><p>  net=train(net,pn,tn)</p><p><b>  %仿真測試</b></p><p>  s_bp=sim(net,kn)</p><p> 

51、 Out1=postmnmx(s_bp,mine,maxe) % BP神經(jīng)網(wǎng)絡的仿真結(jié)果</p><p>  %bp算法 預測值和真實值的比較</p><p><b>  figure(1)</b></p><p><b>  x=1:1:15</b></p><p><b>  y=

52、[1.1678</b></p><p><b>  0.8617</b></p><p><b>  0.7122</b></p><p><b>  0.7339</b></p><p><b>  0.9089</b></p>

53、<p><b>  1.1972</b></p><p><b>  1.5581</b></p><p><b>  1.9512</b></p><p><b>  2.3360</b></p><p><b>  2.6719&

54、lt;/b></p><p><b>  2.9184</b></p><p><b>  3.0350</b></p><p><b>  2.9811</b></p><p><b>  2.7163</b></p><p&g

55、t;<b>  2.2000;]</b></p><p>  x1=linspace(1,15,100)</p><p>  y1=spline(x,y,x1)</p><p>  y2=spline(x,out1,x1)</p><p>  plot(x,y,'*',x1,y1,'k',

56、x,out1,'p',x1,y2,'r')</p><p><b>  grid</b></p><p>  title('bp算法預測值與實際值比較’)</p><p>  xlabel('測試次數(shù)’)</p><p>  ylabel(‘鐵元素含量/ppm’)</

57、p><p>  legend(‘實際值’,'line1',’預測值’,'line2')</p><p>  %計算bp算法的相對誤差以及未來預測值</p><p>  a=abs(out1-e')</p><p>  for i=1:15</p><p>  a1(i, 1)=a(1

58、,i)/e(i, 1)</p><p><b>  end</b></p><p>  a2=sum(a1)/15</p><p>  q=[1.1972 1.5581 1.9512 2.3360 2.6719 2.9184 3.0350 2.9811 2.7163 2.2000;]</p><p> 

59、 [qn,minq,maxq]=premnmx(q’);</p><p>  w=sim(net,qn)</p><p>  w_bp=postmnmx(w,mine,maxe)</p><p>  %% GA-BP神經(jīng)網(wǎng)絡</p><p>  R=size(p’,1);</p><p>  S2=size(t'

60、;, 1);</p><p>  S=R*S1+S1*S2+S1+S2;</p><p>  aa=ones(S,1)*[-1,1];</p><p>  popu=100; % 種群規(guī)模</p><p>  initPpp=initiaIizega(popu,aa,`gabpEval');%初始化種群</p><

61、p>  gen=100;%遺傳代數(shù)</p><p>  %調(diào)用GAOT工具箱,其中目標函數(shù)定義為gabpEval</p><p>  [x,endPop,bPop,trace]=ga(aa,'gabpEval', [],initPpp, [ 1e-6 1 1 ],'maxGenTerm',gen,...</p><p>  &#

62、39;normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]);</p><p>  %繪均方誤差變化曲線</p><p><b>  figure(2)</b></p><p>  plot(trace(:,1), 1

63、./trace(:,3 ),'r-');</p><p><b>  hold on</b></p><p>  plot(trace(:,1),1./trace(:,2),'b-');</p><p>  xlabel('Generation');</p><p>  y

64、label('Sum-Squared Error');</p><p>  %繪制適應度函數(shù)變化</p><p><b>  figure(3)</b></p><p>  plot(trace(:,1),trace(:,3),'r-');</p><p><b>  hold

65、on</b></p><p>  plot(trace(:,1),trace(:,2),'b-');</p><p>  xlabel('Generation');</p><p>  ylabel('Fittness');</p><p>  %計算最優(yōu)的權(quán)值和闌值</p&g

66、t;<p>  [W1,B1,W2,B2,val]=gadecod(x);</p><p>  net.IW{1,1}=W1;</p><p>  net.LW { 2,1} =W2;</p><p>  net.b{ 1 }=B1;</p><p>  net.b { 2}=B2;</p><p>  

67、%利用新的權(quán)值和閉值進行訓練</p><p>  net=train(net,pn,tn);</p><p><b>  %仿真測試</b></p><p>  s-ga=sim(net,kn);</p><p>  out2=postmnmx(s_ga,mine,maxe)</p><p>  

68、%遺傳優(yōu)化后的仿真結(jié)果</p><p>  %ga算法預測值和真實值的比較</p><p><b>  figure(4)</b></p><p><b>  x=1:1:15</b></p><p><b>  y=[1.1678</b></p><p&g

69、t;<b>  0.8617</b></p><p><b>  0.7122</b></p><p><b>  0.7339</b></p><p><b>  0.9089</b></p><p><b>  1 .1972</b&g

70、t;</p><p><b>  1.5581</b></p><p><b>  1.9512</b></p><p><b>  2.3360</b></p><p><b>  2.6719</b></p><p><b

71、>  2.9184</b></p><p><b>  3.0350</b></p><p><b>  2.9811</b></p><p><b>  2.7163</b></p><p><b>  2.2000;]</b><

72、/p><p>  x1=linspace(1,15,100)</p><p>  y1=spline(x,y,x1)</p><p>  y2=spline(x,out2,x1)</p><p>  plot(x,y,'*',x1,y1,'b',x,out2,'p',x1,y2,'r'

73、;)</p><p><b>  grid</b></p><p>  title('gabp算法預測值與實際值比較’)</p><p>  xlabel('測試次數(shù)’)</p><p>  ylabel(‘鐵元素含量/PPm’)</p><p>  legend(‘實際值’,&#

74、39;line 1',’預測值’,'line2')</p><p>  %計算gabp算法的相對誤差以及未來預測值</p><p>  b=abs(out2-e')</p><p>  for i=1:15</p><p>  b1 (i,1)=b(1,i)/e(i,1)</p><p>

75、;<b>  end</b></p><p>  b2=sum(b1)/ 15</p><p>  q=[1.1972 1.5581 1.9512 2.3360 2.6719 2.9184 2.9811 2.7163 2.2000;]</p><p>  [qn,minq,maxq]=premnmx(q');</p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論