神經(jīng)網(wǎng)絡(luò)非線性系統(tǒng)辨識與模型參考自適應(yīng)控制器設(shè)計(jì)_第1頁
神經(jīng)網(wǎng)絡(luò)非線性系統(tǒng)辨識與模型參考自適應(yīng)控制器設(shè)計(jì)_第2頁
神經(jīng)網(wǎng)絡(luò)非線性系統(tǒng)辨識與模型參考自適應(yīng)控制器設(shè)計(jì)_第3頁
神經(jīng)網(wǎng)絡(luò)非線性系統(tǒng)辨識與模型參考自適應(yīng)控制器設(shè)計(jì)_第4頁
神經(jīng)網(wǎng)絡(luò)非線性系統(tǒng)辨識與模型參考自適應(yīng)控制器設(shè)計(jì)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、試論述神經(jīng)網(wǎng)絡(luò)系統(tǒng)建模的幾種基本方法。利用BP網(wǎng)絡(luò)對以下非線性系統(tǒng) 進(jìn)行辨識。 非線性系統(tǒng) y 伙+ 1)=吧(2y(i + l)+ 譏) 1 + .V2 伙)+ b 伙 一1) 1) 首先利用 u(k) =sin(2*pi*k/3)+1 /3*sin(2*pi*k/6),產(chǎn)生樣本點(diǎn) 500, 輸入到上述系統(tǒng),產(chǎn)生y(k),用于訓(xùn)練BP網(wǎng)絡(luò); 2) 網(wǎng)絡(luò)測試,利用 u(k) =sin(2*pi*k/4) + l/5*sin(2*pi*k/7),產(chǎn)生測試 點(diǎn)200,輸入到上述系統(tǒng),產(chǎn)生y(k),檢驗(yàn)BP/RBF網(wǎng)絡(luò)建模效果。 3) 利用模型參考自適應(yīng)方法,設(shè)計(jì)NNMARC控制器,并對周期為50,

2、幅值 為+/-的方波給定,進(jìn)行閉環(huán)系統(tǒng)跟蹤控制仿真,檢驗(yàn)控制效果(要求超調(diào) 5%),要求給出源程序和神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖,計(jì)算結(jié)果(權(quán)值矩陣),動(dòng)態(tài)過 程仿真圖。 1、系統(tǒng)辨識 題目中的非線性系統(tǒng)可以寫成下式: y 伙 + !) = /() + “伙);/()= y 伙)(2y 伙-1) + 1) 1 +尸伙)+尸伙1) 使用BP網(wǎng)絡(luò)對非線性部分/()進(jìn)行辨識,網(wǎng)絡(luò)結(jié)構(gòu)如圖所示,各層神經(jīng) 元個(gè)數(shù)分別為2-8-U輸入數(shù)據(jù)為y(k-l)和y(k-2),輸出數(shù)據(jù)為y(k) 圖辨識非線性系統(tǒng)的BP網(wǎng)絡(luò)結(jié)構(gòu) 50 使用500組樣本進(jìn)行訓(xùn)練,最終達(dá)到設(shè)定的的誤差,訓(xùn)練過程如圖所示 Epoch: 0 6 it

3、erations Time: 0:00:01 Performance; 0597 2B7c-06 Gradie nt: 2.13 0.00234 Mu: 0.00100 1.00e-06 Validation Checks: 0 0 400 0.000100 1 .OOe-07 1.00e-10 圖網(wǎng)絡(luò)訓(xùn)練過程 使用200個(gè)新的測試點(diǎn)進(jìn)行測試,得到測試網(wǎng)絡(luò)輸出和誤差結(jié)果分別如下 圖,所示。從圖中可以看出,相對訓(xùn)練數(shù)據(jù)而言,測試數(shù)據(jù)的辨識誤差稍微變 大,在0.06范圍內(nèi),擬合效果還算不錯(cuò)。 圖使用BP網(wǎng)絡(luò)辨識的測試誤差情況 clear all; close all; %產(chǎn)生訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù) U

4、=0; Y=0; T=0; u_l(l)=O; y_l(l)=O; y_2(l)=0; for k=l: 1:500%使用500個(gè)樣本點(diǎn)訓(xùn)練數(shù)據(jù) U(k)=sin(2*pi/3*k) + l/3*sin(2*pi/6*k); T(k)= y_l (k) * (2*y_2(k) + 1) / (1+ y_l (k廠2 + y_2(k)2);%對應(yīng) 目標(biāo)值 Y(k) = u_l (k) + T(k);%非線性系統(tǒng)輸出,用于更新y_l if k500 u_l(k+l) = U(k);y_2 (k+1) = y_l (k); y_l(k+l) = Y(k); end end y_l (1)=; y_l

5、 (2)=0; y_2(l)=0;y_2(2)=;y_2(3)=0; %為避免組合后出現(xiàn)零向量,加上一個(gè)很小 廳數(shù) X=y_l;y_2; save(traindata,X,T); clearvars -except X T ;%清除其余變量 U=0; Y=0; Tc=0; u_l(l)=0; y_l(l)=0; y_2(l)=0; for k=l: 1:200%使用500個(gè)樣本點(diǎn)訓(xùn)練數(shù)據(jù) U(k)=sin(2*pi/4*k) + l/5*sin(2*pi/7*k) ;%新的測試函數(shù) Y(k) = u l(k) + y_l (k) * (2*y_2(k) + 1) / (1+ y_l(k)2 +

6、 y_2(k)2); if k save(aaa, net);%將訓(xùn)練好的網(wǎng)絡(luò)保存下來 %網(wǎng)絡(luò)測試 A=sim(net,X): %測試網(wǎng)絡(luò) E=T-A; %測試誤差 error = sumsqr (E)/(S*Q) %測試結(jié)果的的 MSE Al=sim(net,Xc) ; %測試網(wǎng)絡(luò) Yc= Al + Uc; El=Tc-Yc; %測試誤差 error c = sumsqr (El)/(Sc*Qc) %測試結(jié)果的的 MSE figure(l); plot(Tc,r); hold on; plot(Yc,b); legend(exp, act); xlabel(r test smaple1):

7、ylabel(output) figure (2); plot(El); xlabel(r test sample); ylabel(error) 2、MRAC控制器 被控對象為非線性系統(tǒng): y伙 +1) = /()+“伙);/()= ),伙)(2),伙-1)+1) i + b 伙)+b 伙一 1) 由第一部分對/()的辨識結(jié)果,可知該非線性系統(tǒng)的辨識模型為: yp(k + l) = My 伙),y 伙l)+u 伙) 可知u(k)可以表示為片伙+ 1)和y伙),y伙-1)的函數(shù),因此可使用系統(tǒng)的逆 模型進(jìn)行控制器設(shè)計(jì)。選取參考模型為低階線性模型: 九伙+1) = 0.3凡伙)+ 0.2兒伙一

8、1) + r(k);因此神經(jīng)網(wǎng)絡(luò)控制器為: 伙)=-N,y伙),y(k - 1)J + 0.3y伙)+ 0.2y伙-1) + 廣伙) 根據(jù)上述原理,設(shè)計(jì)控制器相應(yīng)程序如下: % MRAC控制器 load(f-mat/ ,aaa); vl =; v2 =; ym_2=0; ym_l=0; y_2=0; y_l=0; u_l=0;r_l=0;%系統(tǒng)初始輸入輸出 for k=l:1:500 time(k)=k; rin(k) = *sign(sin(2*pi*k/50) ;%周期 50,幅值的階躍信號 ym(k) = v 1 *ym 1 + v2*ym_2 + r_l ;%參考系統(tǒng)模型,根據(jù)要求的性

9、能 指標(biāo)進(jìn)行選擇 yout(k) = u_+ y_l * (2*y2 + 1) / (1+ y_l“2 + y_2“2); %非線性系 統(tǒng) e_c (k) = ym_i - yout (k) ; %當(dāng)前誤差,這里ym和yout差了 一步,故應(yīng) 用ym_l減去 ym 2=ym_ 1 ; ym_l=ym(k); y_2=y_l; y_l二yout(k); X=y_l;y_2; fn=sim(net,X): %網(wǎng)絡(luò)對非線性部分的預(yù)測輸出 u(k) = -fn + vl*y_l + v2*y 2 + r_ 1; u _l=u(k) ; r l=rin(k); end figure(l); plot(time,rin,r gr,time,ym,*.time,yout,b); xlabel (r time(s) ):ylabel Cyni,y); figure (2); plot(timetu); xlabel(r time(s) ):ylabel(Control input1); figure(3); plot(time,e_c,r); xlabel(f time(s):ylabel(ferror1); 對于周期為50,幅值為+/-的方波給定,仿

溫馨提示

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

評論

0/150

提交評論