




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)控制模型仿真摘要:本文利用一種權(quán)值可以在線調(diào)整的動(dòng)態(tài)BP神經(jīng)網(wǎng)絡(luò)對(duì)模型預(yù)測(cè)誤差進(jìn)行擬合并與預(yù)測(cè)模型一起構(gòu)成動(dòng)態(tài)組合預(yù)測(cè)器,在此根底上形成對(duì)模型誤差具有動(dòng)態(tài)補(bǔ)償能力的預(yù)測(cè)控制算法。該算法顯著提高了預(yù)測(cè)精度,增強(qiáng)了預(yù)測(cè)控制算法的魯棒性。關(guān)鍵詞:預(yù)測(cè)控制神經(jīng)網(wǎng)絡(luò)動(dòng)態(tài)矩陣誤差補(bǔ)償1.引言動(dòng)態(tài)矩陣控制(DMC)是一種適用于漸近穩(wěn)定的線性或弱非線性對(duì)象的預(yù)測(cè)控制算法,目前已廣泛應(yīng)用于工業(yè)過程控制。它基于對(duì)象階躍響應(yīng)系數(shù)建立預(yù)測(cè)模型,因此建模簡(jiǎn)單,同時(shí)采用多步滾動(dòng)優(yōu)化與反應(yīng)校正相結(jié)合,能直接處理大時(shí)滯對(duì)象,并具有良好的跟蹤性能和較強(qiáng)的魯棒性。但是,DMC算法在實(shí)際控制中存在一系列問題,模型失配是其中普遍存在的一個(gè)問題,并會(huì)不同程度地影響系統(tǒng)性能。DMC在實(shí)際控制中產(chǎn)生模型失配的原因主要有2個(gè),一是諸如建模誤差、環(huán)境干擾等因素,它會(huì)在實(shí)際控制的全程范圍內(nèi)引起DMC的模型失配;二是實(shí)際系統(tǒng)的非線性特性,這一特性使得被控對(duì)象的模型發(fā)生變化,此時(shí)假設(shè)用一組固定的階躍響應(yīng)數(shù)據(jù)設(shè)計(jì)控制器進(jìn)行全程范圍的控制,必然會(huì)使實(shí)際控制在對(duì)象的非建模區(qū)段內(nèi)出現(xiàn)模型失配。針對(duì)DMC模型失配問題,已有學(xué)者進(jìn)行了大量的研究,并取得了豐富的研究成果,其中有基于DMC控制參數(shù)在線辨識(shí)的智能控制算法,基于模型在線辨識(shí)的自校正控制算法以及用神經(jīng)元網(wǎng)絡(luò)進(jìn)行模型辨識(shí)、在辨識(shí)的根底上再進(jìn)行動(dòng)態(tài)矩陣控制等。這些算法盡管進(jìn)行在線辨識(shí)修正對(duì)象模型參數(shù),仍對(duì)對(duì)象降階建模誤差(結(jié)構(gòu)性建模誤差)的魯棒性不好,并對(duì)隨機(jī)噪聲干擾較敏感。針對(duì)以上問題,出現(xiàn)了基于誤差校正的動(dòng)態(tài)矩陣控制算法。這些文獻(xiàn)用基于時(shí)間序列預(yù)測(cè)的數(shù)學(xué)模型誤差代替原模型誤差,得到對(duì)未來誤差的預(yù)測(cè)。有人還將這種誤差預(yù)測(cè)方法引入動(dòng)態(tài)矩陣控制,并應(yīng)用于實(shí)際。這種方法雖然使系統(tǒng)表現(xiàn)出良好的穩(wěn)定性,但建立精確的誤差數(shù)學(xué)模型還存在一定的困難。本文利用神經(jīng)網(wǎng)絡(luò)通過訓(xùn)練學(xué)習(xí)能逼近任意連續(xù)有界函數(shù)的特點(diǎn),建立了一種采用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)測(cè)誤差補(bǔ)償?shù)腄MC預(yù)測(cè)控制模型。其中神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)誤差描述了在預(yù)測(cè)模型中未能包含的一切不確定性信息,可以歸結(jié)為用BP神經(jīng)網(wǎng)絡(luò)基于一系列過去的誤差信息預(yù)測(cè)未來的誤差,它作為模型預(yù)測(cè)的重要補(bǔ)充,不僅降低建立數(shù)學(xué)模型的負(fù)擔(dān),而且還可以彌補(bǔ)在對(duì)象模型中已簡(jiǎn)化或無法加以考慮的一切其他因素。本文通過進(jìn)行仿真,驗(yàn)證了基于神經(jīng)網(wǎng)絡(luò)誤差補(bǔ)償?shù)念A(yù)測(cè)控制算法的有效性及優(yōu)越性,從而增強(qiáng)了動(dòng)態(tài)矩陣控制算法的魯棒性。2.BP神經(jīng)網(wǎng)絡(luò)模型BP神經(jīng)網(wǎng)絡(luò)模型處理信息的根本原理是:輸入信號(hào)Xi通過中間節(jié)點(diǎn)〔隱層點(diǎn)〕作用于輸出節(jié)點(diǎn),經(jīng)過非線形變換,產(chǎn)生輸出信號(hào)Yk,網(wǎng)絡(luò)訓(xùn)練的每個(gè)樣本包括輸入向量X和期望輸出量t,網(wǎng)絡(luò)輸出值Y與期望輸出值t之間的偏差,通過調(diào)整輸入節(jié)點(diǎn)與隱層節(jié)點(diǎn)的聯(lián)接強(qiáng)度取值Wij和隱層節(jié)點(diǎn)與輸出節(jié)點(diǎn)之間的聯(lián)接強(qiáng)度Tjk以及閾值,使誤差沿梯度方向下降,經(jīng)過反復(fù)學(xué)習(xí)訓(xùn)練,確定與最小誤差相對(duì)應(yīng)的網(wǎng)絡(luò)參數(shù)〔權(quán)值和閾值〕,訓(xùn)練即告停止。此時(shí)經(jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)即能對(duì)類似樣本的輸入信息,自行處理輸出誤差最小的經(jīng)過非線形轉(zhuǎn)換的信息。2.1BP模型建立BP網(wǎng)絡(luò)模型包括其輸入輸出模型、作用函數(shù)模型、誤差計(jì)算模型和自學(xué)習(xí)模型?!?〕節(jié)點(diǎn)輸出模型隱節(jié)點(diǎn)輸出模型:Oj=f(∑Wij×Xi-qj)(1)輸出節(jié)點(diǎn)輸出模型:Yk=f(∑Tjk×Oj-qk)(2)f-非線形作用函數(shù);q-神經(jīng)單元閾值。〔2〕作用函數(shù)模型作用函數(shù)是反映下層輸入對(duì)上層節(jié)點(diǎn)刺激脈沖強(qiáng)度的函數(shù),又稱刺激函數(shù),一般取為(0,1)內(nèi)連續(xù)取值Sigmoid函數(shù):f(x)=1/(1+e-x)〔3〕〔3〕誤差計(jì)算模型誤差計(jì)算模型是反映神經(jīng)網(wǎng)絡(luò)期望輸出與計(jì)算輸出之間誤差大小的函數(shù):Ep=1/2×∑(tpi-Opi)2tpi-i節(jié)點(diǎn)的期望輸出值;Opi-i節(jié)點(diǎn)計(jì)算輸出值。(4)〔4〕自學(xué)習(xí)模型神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過程,即連接下層節(jié)點(diǎn)和上層節(jié)點(diǎn)之間的權(quán)重拒陣Wij的設(shè)定和誤差修正過程。BP網(wǎng)絡(luò)有師學(xué)習(xí)方式-需要設(shè)定期望值和無師學(xué)習(xí)方式-只需輸入模式之分。自學(xué)習(xí)模型為△Wij(n+1)=h×Фi×Oj+a×△Wij(n)(5)h-學(xué)習(xí)因子;Фi-輸出節(jié)點(diǎn)i的計(jì)算誤差;Oj-輸出節(jié)點(diǎn)j的計(jì)算輸出;a-動(dòng)量因子。2.2BP網(wǎng)絡(luò)模型的缺陷分析及優(yōu)化策略〔1〕學(xué)習(xí)因子h的優(yōu)化采用變步長(zhǎng)法根據(jù)輸出誤差大小自動(dòng)調(diào)整學(xué)習(xí)因子,來減少迭代次數(shù)和加快收斂速度。h=h+a×(Ep(n)-Ep(n-1))/Ep(n)a為調(diào)整步長(zhǎng),0~1之間取值〔6〕〔2〕隱層節(jié)點(diǎn)數(shù)的優(yōu)化隱層節(jié)點(diǎn)數(shù)的多少對(duì)網(wǎng)絡(luò)性能的影響較大,當(dāng)隱節(jié)點(diǎn)數(shù)太多時(shí),會(huì)導(dǎo)致網(wǎng)絡(luò)學(xué)習(xí)時(shí)間過長(zhǎng),甚至不能收斂;而當(dāng)隱節(jié)點(diǎn)數(shù)過小時(shí),網(wǎng)絡(luò)的容錯(cuò)能力差。利用逐步回歸分析法并進(jìn)行參數(shù)的顯著性檢驗(yàn)來動(dòng)態(tài)刪除一些線形相關(guān)的隱節(jié)點(diǎn),節(jié)點(diǎn)刪除標(biāo)準(zhǔn):當(dāng)由該節(jié)點(diǎn)出發(fā)指向下一層節(jié)點(diǎn)的所有權(quán)值和閾值均落于死區(qū)〔通常取±0.1、±0.05等區(qū)間〕之中,那么該節(jié)點(diǎn)可刪除。最正確隱節(jié)點(diǎn)數(shù)L可參考下面公式計(jì)算:L=(m+n)1/2+c(7)m-輸入節(jié)點(diǎn)數(shù);n-輸出節(jié)點(diǎn)數(shù);c-介于1~10的常數(shù)?!?〕輸入和輸出神經(jīng)元確實(shí)定利用多元回歸分析法對(duì)神經(jīng)網(wǎng)絡(luò)的輸入?yún)?shù)進(jìn)行處理,刪除相關(guān)性強(qiáng)的輸入?yún)?shù),來減少輸入節(jié)點(diǎn)數(shù)?!?〕算法優(yōu)化由于BP算法采用的是剃度下降法,因而易陷于局部最小并且訓(xùn)練時(shí)間較長(zhǎng)。用基于生物免疫機(jī)制地既能全局搜索又能防止未成熟收斂的免疫遺傳算法IGA取代傳統(tǒng)BP算法來克服此缺點(diǎn)。2.3BP神經(jīng)網(wǎng)絡(luò)仿真假設(shè)備控對(duì)象的近似數(shù)學(xué)模型為:〔8〕式中,系統(tǒng)a〔k〕是慢時(shí)變的,。神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)選擇2-6-1,學(xué)習(xí)速度η=0.5和慣性系數(shù)α=0.05,輸入指令信號(hào)為:rin(k)=0.5*sin(6*л*t)。仿真程序:clearall;closeall;xite=0.50;alfa=0.05;w2=rand(6,1);w2_1=w2;w2_2=w2;w1=rand(2,6);w1_1=w1;w1_2=w1;dw1=0*w1;x=[0,0]';u_1=0;y_1=0;I=[0,0,0,0,0,0]';Iout=[0,0,0,0,0,0]';FI=[0,0,0,0,0,0]';ts=0.001;fork=1:1:1000time(k)=k*ts;u(k)=0.50*sin(3*2*pi*k*ts);a(k)=1.2*(1-0.8*exp(-0.1*k));y(k)=a(k)*y_1/(1+y_1^2)+u_1;forj=1:1:6I(j)=x'*w1(:,j);Iout(j)=1/(1+exp(-I(j)));endyn(k)=w2'*Iout;e(k)=y(k)-yn(k);w2=w2_1+(xite*e(k))*Iout+alfa*(w2_1-w2_2);forj=1:1:6FI(j)=exp(-I(j))/(1+exp(-I(j)))^2;endfori=1:1:2forj=1:1:6dw1(i,j)=e(k)*xite*FI(j)*w2(j)*x(i);endendw1=w1_1+dw1+alfa*(w1_1-w1_2);x(1)=u(k);x(2)=y(k);w1_2=w1_1;w1_1=w1;w2_2=w2_1;w2_1=w2;u_1=u(k);y_1=y(k);endsubplot(2,1,1);plot(time,y,'r',time,yn,'b');xlabel('times');ylabel('實(shí)際輸出和仿真輸出');gridonsubplot(2,1,2);plot(time,y-yn,'r');xlabel('times');ylabel('error');gridon圖2-1神經(jīng)網(wǎng)絡(luò)仿真圖3.動(dòng)態(tài)矩陣控制DMC算法分為三局部:預(yù)測(cè)模型、滾動(dòng)優(yōu)化和反應(yīng)校正。3.1預(yù)測(cè)模型在DMC算法中,首先需要測(cè)定對(duì)象單位階躍響應(yīng)的采樣值,i=1,2,……。其中,T為采樣周期。對(duì)于漸進(jìn)穩(wěn)定的對(duì)象,階躍響應(yīng)在某一,后將趨于平穩(wěn),以至(i>N)與的誤差和量化誤差及測(cè)量誤差有相同的數(shù)量級(jí),因而可認(rèn)為,已近似等于階躍響應(yīng)的穩(wěn)態(tài)值。這樣,對(duì)象的動(dòng)態(tài)信息就可以近似用有限集合加以描述。這個(gè)集合的參數(shù)構(gòu)成了DMC的模型參數(shù),向量a=稱為模型向量,N稱為模型時(shí)域長(zhǎng)度。雖然階躍響應(yīng)是一種非參數(shù)模型,但由于線性系統(tǒng)具有比例和疊加性質(zhì),故利用這組模型參數(shù),已足以預(yù)測(cè)在任意輸入作用下系統(tǒng)在未來時(shí)刻的輸出值。在t=kT時(shí)刻,假設(shè)控制量不再變化時(shí)系統(tǒng)在未來N個(gè)時(shí)刻的輸出值為,那么,在控制增量作用后系統(tǒng)的輸出可由〔3-1〕預(yù)測(cè),其中表示在t=kT時(shí)刻預(yù)測(cè)的尚無作用時(shí)未來N個(gè)時(shí)刻的系統(tǒng)輸出。表示在t=kT時(shí)刻預(yù)測(cè)的有控制增量作用時(shí)未來N個(gè)時(shí)刻的系統(tǒng)輸出。為階躍響應(yīng)模型向量,其元素為描述系統(tǒng)動(dòng)態(tài)特性的N個(gè)階躍響應(yīng)系數(shù)。式中,上標(biāo)~表示預(yù)測(cè),表示在t=kT時(shí)刻預(yù)測(cè)t=(k+i)T時(shí)刻。同樣,如果考慮到現(xiàn)在和未來M個(gè)時(shí)刻控制增量的變化,在t=kT時(shí)刻預(yù)測(cè)在控制增量,?,作用下系統(tǒng)在未來P個(gè)時(shí)刻的輸出為〔3-2〕式中為t=kT時(shí)刻預(yù)測(cè)的無控制增量時(shí)未來P個(gè)時(shí)刻的系統(tǒng)輸出。為t=kT時(shí)刻預(yù)測(cè)的有M個(gè)控制增量,……,時(shí)未來P個(gè)時(shí)刻的系統(tǒng)輸出。為從現(xiàn)在起M個(gè)時(shí)刻的控制增量。稱為動(dòng)態(tài)矩陣,其元素為描述系統(tǒng)動(dòng)態(tài)特性的階躍響應(yīng)系數(shù)。3.2滾動(dòng)優(yōu)化DMC是一種以優(yōu)化確定控制策略的算法。在采樣時(shí)刻t=kT的優(yōu)化性能指標(biāo)可取為+〔3-3〕即通過選擇該時(shí)刻起M個(gè)時(shí)刻的控制增量,?,,使系統(tǒng)在未來P〔〕個(gè)時(shí)刻的輸出值,…,盡可能接近其期望值,…。性能指標(biāo)中的第二項(xiàng)是對(duì)控制增量的約束,即不允許控制量的變化過于劇烈。式中,,為權(quán)系數(shù),P和M分別稱為優(yōu)化時(shí)域長(zhǎng)度和控制時(shí)域長(zhǎng)度。顯然,在不同時(shí)刻,優(yōu)化性能指標(biāo)是不同的,但其相對(duì)形式卻是一致的,都具有類似于(3-1)的形式,所謂“滾動(dòng)優(yōu)化〞,就是指優(yōu)化時(shí)域隨時(shí)間不斷地向前推移。引入向量和矩陣記號(hào),Q=diag(,…,),R=diag(,…,)那么優(yōu)化性能指標(biāo)式(2-1)可改寫為(3-4)式中,Q,R分別稱為誤差權(quán)矩陣和控制權(quán)矩陣。在不考慮輸入輸出約束的情況下,在t=kT時(shí)刻,,均為己知,使J(k)取最小的可通過極值必要條件求得(3-5)這就是t=kT時(shí)刻解得的最優(yōu)控制增量序列。由于這一最優(yōu)解完全是基于預(yù)測(cè)模型求得的因而是開環(huán)最優(yōu)解.3.3反應(yīng)校正由于模型誤差、弱非線性特性及其它在實(shí)際過程中存在的不確定因素,按預(yù)測(cè)模型式(3-2)得到的開環(huán)最優(yōu)控制規(guī)律式(3-5)不一定能導(dǎo)致系統(tǒng)輸出緊密地跟隨期望值,它也不能顧及對(duì)象受到的擾動(dòng)。為了糾正模型預(yù)測(cè)與實(shí)際的不一致,必須及時(shí)地利用過程的誤差信息對(duì)輸出預(yù)測(cè)值進(jìn)行修正,而不應(yīng)等到這M個(gè)控制增量都實(shí)施后再作校正。為此,在t=kT時(shí)刻首先實(shí)施中的第一個(gè)控制作用=(3-6)(3-7)其中(3-8)由于已作用于對(duì)象,對(duì)系統(tǒng)未來輸出的預(yù)測(cè)便要疊加上產(chǎn)生的影響,即由式(2-1)算出。到下一個(gè)采樣時(shí)刻t=(k+1)T,不是繼續(xù)實(shí)施最優(yōu)解中的第二個(gè)分量,而是檢測(cè)系統(tǒng)的實(shí)際輸出y(k+1),并與按模型預(yù)測(cè)算得的該時(shí)刻輸出,即中的第一個(gè)分量進(jìn)行比擬,構(gòu)成預(yù)測(cè)誤差。(3-9)這一誤差反映了模型中未包含的各種不確定因素,如模型失配、干擾等。由于預(yù)測(cè)誤差的存在,以后各時(shí)刻輸出值的預(yù)側(cè)也應(yīng)在模型預(yù)測(cè)的根底上加以校正,這些未來誤差的預(yù)測(cè),可通過對(duì)現(xiàn)時(shí)誤差e(k+1)加權(quán)系數(shù)h,(i=1,2,…,N)得到〔3-10〕式中為t=(k+1)T時(shí)刻經(jīng)誤差校正后所預(yù)測(cè)的系統(tǒng)在t=(k+i)T〔i=1,…,N〕時(shí)刻的輸出.為誤差校正向量,其中,=1。經(jīng)校正后的的各分量中。除第一項(xiàng)外.其余各項(xiàng)分別是t=(k+1)T時(shí)刻在尚無等未來控制增量作用時(shí)對(duì)輸出在t=(k+2)T,…,(k+N)T時(shí)刻的預(yù)測(cè)值,它們可作為t=(k+1)T時(shí)刻的前N一1個(gè)分量,即,i=1,…,N-1而中的最后一個(gè)分量。即t=(k+1)T時(shí)刻對(duì)i=(k+1+N)T輸出的預(yù)測(cè),可由來近似,即=,上述關(guān)系可用向量形式表示(3-11)其中為移位矩陣。在t=(k+1)T時(shí)刻,有了,就又可以像上面所述t=kT時(shí)刻那樣進(jìn)行新的預(yù)測(cè)優(yōu)化,整個(gè)控制就是在這樣推移的過程中滾動(dòng)進(jìn)行.由此可以看到,整個(gè)動(dòng)態(tài)矩陣控制算法是由預(yù)測(cè)、控制、校正三局部組成的,該算法結(jié)構(gòu)可用圖2-1加以描述。圖中粗箭頭表示向量流,細(xì)箭頭表示純量流。在每一個(gè)采樣時(shí)刻未來P個(gè)時(shí)刻的期望輸出與預(yù)測(cè)輸出所構(gòu)成的偏差向量按式(3-6)與動(dòng)態(tài)向量點(diǎn)乘。得到該時(shí)刻的控制增量。這一控制增量一方面通過數(shù)字積分(累加)運(yùn)算求出控制量u(k)作用于對(duì)象;另一方面與階躍響應(yīng)向量a相乘,并按式(3-1)計(jì)算出在其作用后所預(yù)測(cè)的系統(tǒng)輸出。到了下一個(gè)采樣時(shí)刻,首先測(cè)定系統(tǒng)的實(shí)際輸出y(k+1),并與原來預(yù)測(cè)的該時(shí)刻的值相比擬。按(3-9)算出預(yù)測(cè)誤差e(k+1)。這一誤差與校正向量h相乘后,再按式(3-10)校正預(yù)測(cè)的輸出值。由于時(shí)間的推移,經(jīng)校正的預(yù)測(cè)輸出將按式(3-11)移位,并置定為該時(shí)刻的預(yù)測(cè)初值.圖中的,表示時(shí)移算子,如果把新的時(shí)刻重新定義為k時(shí)刻,那么預(yù)測(cè)初值的前P個(gè)分量將與期望輸出一起,參與新時(shí)刻控制增量的計(jì)算。如此循環(huán),整個(gè)過程將反復(fù)在線進(jìn)行。DMC算法是一種增量算法??梢宰C明,不管有否模型誤差,它總能將系統(tǒng)輸出調(diào)節(jié)到期望值而不產(chǎn)生靜差。對(duì)于作用在對(duì)象輸入端的階躍形式的擾動(dòng),該算法也總能使系統(tǒng)輸出回復(fù)到原來的設(shè)定狀態(tài).3.4有約束多變量動(dòng)態(tài)矩陣控制及其線性化不失一般性,假設(shè)階躍響應(yīng)的截?cái)鄷r(shí)域長(zhǎng)度均為N,控制時(shí)域長(zhǎng)度均為M,預(yù)測(cè)時(shí)域長(zhǎng)度均為P?;陔A躍響應(yīng)的預(yù)測(cè)模型為(3-12)其中為k時(shí)刻第j個(gè)輸入對(duì)第i個(gè)輸出的奉獻(xiàn),為第i個(gè)輸出對(duì)第j個(gè)輸入的第s個(gè)階躍響應(yīng)系數(shù)。那么第i個(gè)模型輸出為〔3-13〕令,考慮到反應(yīng)校正作用,把控制量分解為當(dāng)前及將來未知局部和過去局部??傻胟時(shí)刻輸出的P步預(yù)測(cè)為:〔3-14〕其中,和分別為和階矩陣,其元素由決定,為維校正列向量,而將化成全量形式,有〔3-15〕,將式〔3-15〕代入〔3-14〕得〔3-16〕令,那么式〔2-16〕成為〔3-17〕設(shè)第i個(gè)過程的P步參數(shù)輸出為為跟蹤參考軌跡,應(yīng)使為使上式性能指標(biāo)線性化,將其改寫成〔3-18〕其中,和表示相應(yīng)維數(shù)的正、負(fù)偏差變量列向量,對(duì)此二向量求其最小指對(duì)其范數(shù)求最小。令結(jié)合式(2-18)和〔2-17〕可得:〔3-19〕對(duì)控制施加幅值約束,不失一般性,假設(shè)控制幅值的下限為零,即〔3-20〕其中,為第j個(gè)控制的最大幅值,。如果控制幅值的下限約束為負(fù),那么可通過坐標(biāo)或利用線性規(guī)劃變量非負(fù)化的方法使其為零,以滿足單純形法迭代尋優(yōu)的要求。對(duì)式〔3-20〕引入相應(yīng)維數(shù)的正、負(fù)偏差變量列向量,使不希望偏差最小化,那么式〔3-20〕為:〔3-21〕對(duì)控制變化速率施加上、下限約束,即〔3-22〕其中,,為第j個(gè)控制變化速率的上、下限。同理,引入相應(yīng)維數(shù)的正、負(fù)偏差變量列向量,最小化不希望偏差,那么式(2-22)可表示為〔3-23〕3.5動(dòng)態(tài)矩陣控制仿真設(shè)備控對(duì)象的近似數(shù)學(xué)模型為:式中,系統(tǒng)a〔k〕是慢時(shí)變的,,輸入指令信號(hào)為:rin(k)=10。仿真程序:clearall;
closeall;u_1=0;y_1=0;fork=1:1:1000u(k)=1;a(k)=1.2*(1-0.8*exp(-0.1*k));yg(k)=a(k)*y_1/(1+y_1^2)+u_1;y0(k)=yg(k);y_1=yg(k);u_1=u(k);endTs=5;
N=200;P=25;m=20;Sv=10;yg_1=0;A=zeros(P,m);a=zeros(N,1);
fori=1:N
a(i)=y0(i);
end
fori=1:P
forj=1:m
ifi-j+1>0
A(i,j)=a(i-j+1);
end
end
end
K=inv(A'*A+eye(m))*A';y=zeros(N,1);
u=zeros(N,1);
e=zeros(N,1);A0=zeros(P,N-1);
fori=1:P
forj=N-2:-1:1
ifN-j+1+i-1<=N
A0(i,j)=a(N-j+1+i-1)-a(N-j+i-1);
else
A0(i,j)=0;
end
end
A0(i,N-1)=a(i+1);
end
fork=2:N
Uk_1=zeros(N-1,1);
fori=1:N-1
ifk-N+i<=0
Uk_1(i)=0;
else
Uk_1(i)=u(k-N+i);
end
end
Y0=A0*Uk_1;a(k)=1.2*(1-0.8*exp(-0.1*k));yg(k)=a(k)*y_1/(1+y_1^2)+u_1;u_1=u(k);yg_1=yg(k);
e(k)=y(k)-yg(k);
Ysk=zeros(P,1);
fori=1:P
Ysk(i)=Sv;
end
Ek=zeros(P,1);
fori=1:P
Ek(i)=0.1*i*e(k);
end
dertu=K*(Ysk-Y0-Ek);
fori=1:m
ifk+i-1<=N
u(k+i-1)=u(k+i-1-1)+dertu(i);
end
end
temp=0;
forj=1:N-1
ifk-j<=0
temp;
else
ifk-j-1<=0
temp=temp+a(j)*u(k-j);
else
temp=temp+a(j)*(u(k-j)-u(k-j-1));
end
end
end
ifk-N<=0
y(k)=temp+e(N);
else
y(k)=temp+a(N)*u(k-N)+e(N);
end
end
t=Ts.*(1:N);
subplot(2,1,1);
plot(t,y,'r');
legend('輸出曲線y');
title('輸出曲線');
xlabel('Time')
ylabel('振幅')
gridon
subplot(2,1,2);
plot(t,u,'g');
legend('控制作用u')
title('控制作用');
xlabel('Time')
ylabel('振幅')
gridon
clc;圖3-1動(dòng)態(tài)矩陣控制效果圖4.BP網(wǎng)絡(luò)誤差補(bǔ)償預(yù)測(cè)模型仿真DMC是基于一個(gè)線性模型對(duì)過程的輸出進(jìn)行預(yù)測(cè)的,雖然對(duì)模型失配有較強(qiáng)的魯棒性,但對(duì)隨機(jī)突發(fā)干擾以及實(shí)際系統(tǒng)中的非線性,仍然存在著難以及時(shí)控制的缺乏,從而產(chǎn)生預(yù)測(cè)偏差,所以采用BP神經(jīng)網(wǎng)絡(luò)計(jì)算預(yù)測(cè)偏差,從而進(jìn)行補(bǔ)償假設(shè)備控對(duì)象的近似數(shù)學(xué)模型為:式中,系統(tǒng)a〔k〕是慢時(shí)變的,。選用第二章的BP神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)速度η=0.5和慣性系數(shù)α=0.5,輸入指令信號(hào)為:rin(k)=10。仿真程序:clearall;closeall;xite=0.50;alfa=0.05;w2=rand(6,1);w2_1=w2;w2_2=w2;w1=rand(2,6);w1_1=w1;w1_2=w1;dw1=0*w1;x=[0,0]';u_1=0;y_1=0;I=[0,0,0,0,0,0]';Iout=[0,0,0,0,0,0]';FI=[0,0,0,0,0,0]';ts=0.001;fork=1:1:1000time(k)=k*ts;u(k)=0.50*sin(3*2*pi*k*ts);a(k)=1.2*(1-0.8*exp(-0.1*k));y(k)=a(k)*y_1/(1+y_1^2)+u_1;forj=1:1:6I(j)=x'*w1(:,j);Iout(j)=1/(1+exp(-I(j)));endyn(k)=w2'*Iout;e(k)=y(k)-yn(k);w2=w2_1+(xite*e(k))*Iout+alfa*(w2_1-w2_2);forj=1:1:6FI(j)=exp(-I(j))/(1+exp(-I(j)))^2;endfori=1:1:2forj=1:1:6dw1(i,j)=e(k)*xite*FI(j)*w2(j)*x(i);endendw1=w1_1+dw1+alfa*(w1_1-w1_2);x(1)=u(k);x(2)=y(k);w1_2=w1_1;w1_1=w1;w2_2=w2_1;w2_1=w2;u_1=u(k);y_1=y(k);endfigure(1);plot(time,y,'r',time,yn,'b');xlabel('times');ylabel('yandyn');gridonts=0.1;fork=1:1:200time(k)=k*ts;u(k)=1;a(k)=1.2*(1-0.8*exp(-0.1*k));y(k)=a(k)*y_1/(1+y_1^2)+u_1;forj=1:1:6I(j)=x'*w1(:,j);Iout(j)=1/(1+exp(-I(j)));endyn(k)=w2'*Iout;e(k)=y(k)-yn(k);w2=w2_1+(xite*e(k))*Iout+alfa*(w2_1-w2_2);forj=1:1:6FI(j)=exp(-I(j))/(1+exp(-I(j)))^2;endfori=1:1:2forj=1:1:6dw1(i,j)=e(k)*xite*FI(j)*w2(j)*x(i);endendw1=w1_1+dw1+alfa*(w1_1-w1_2);x(1)=u(k);x(2)=y(k);w1_2=w1_1;w1_1=w1;w2_2=w2_1;w2_1=w2;u_1=u(k);y_1=y(k);y0(k)=yn(k);endTs=5;N=200;P=25;m=20;Sv=10;yg_1=0;A=zeros(P,m);a=zeros(N,1);fori=1:Na(i)=y0(i);endfori=1:Pforj=1:mifi-j+1>0A(i,j)=a(i-j+1);endendendK=inv(A'*A+eye(m))*A';y=zeros(N,1);u=zeros(N,1);e=zeros(N,1);A0=zeros(P,N-1);fori=1:Pforj=N-2:-1:1ifN-j+1+i-1<=NA0(i,j)=a(N-j+1+i-1)-a(N-j+i-1);elseA0(i,j)=0;endendA0(i,N-1)=a(i+1);endfork=2:NUk_1=zeros(N-1,1);fori=1:N-1ifk-N+i<=0Uk_1(i)=0;elseUk_1(i)=u(k-N+i);endendY0=A0*Uk_1;a(k)=1.2*(1-0.8*exp(-0.1*k));yg(k)=a(k)*y_1/(1+y_1^2)+u_1;u_1=u(k);yg_1=yg(k);e(k)=y(k)-yg(k);Ysk=zeros(P,1);fori=1:PYsk(i)=Sv;endEk=zeros(P,1);fori=1:PEk(i)=0.1*i*e(k);enddertu=K*(Ysk-Y0-Ek);fori=1:mifk+i-1<=Nu(k+i-1)=u(k+i-1-1)+dertu(i);endendtemp=0;forj=1:N-1ifk-j<=0temp;elseifk-j-1<=0temp=temp+a(j)*u(k-j);elsetemp=temp+a(j)*(u(k-j)-u(k-j-1));endendendifk-N<=0y(k)=temp+e(N);elsey(k)=temp+a(N)*u(k-N)+e(N);endendt=Ts.*(1:N);figure(3);subplot(2,1,1);plot(t,y,'b',t,yg,'r');legend('預(yù)測(cè)輸出曲線');title('輸出曲線');xlabel('Time')ylabel('振幅')gridonsubplot(2,1,2);plot(t,u,'g');legend('控制作用u')title('控制作用');xlabel('Time')ylabel('振幅')gridonxite=0.50;alfa=0.05;w2=rand(10,1);w2_1=w2;w2_2=w2;w1=rand(6,10);w1_1=w1;w1_2=w1;dw1=0*w1;u_1=0;y_1=0;I=zeros(10,1);Iout=zeros(10,1);FI=zeros(10,1);x=[0,0,0,0,0,0]';fork=3:Nx(1)=yg(k);x(2)=yg(k-1);x(3)=yg(k-2);x(4)=u(k);x(5)=u(k-1);x(6)=u(k-2);forj=1:1:10I(j)=x'*w1(:,j);Iout(j)=1/(1+exp(-I(j)));endes(k)=w2'*Iout;e1(k)=es(k)-e(k);w2=w2_1-(xite*0.1*e1(k))*Iout+alfa*(w2_1-w2_2);forj=1:1:10FI(j)=exp(-I(j))/(1+exp(-I(j)))^2;endfori=1:1:6forj=1:1:10dw1(i,j)=e1(k)*xite*FI(j)*w2(j)*x(i);endendw1=w1_1+dw1+alfa*(w1_1-w1_2);w1_2=w1_1;w1_1=w1;w2_2=w2_1;w2_1=w2;endt=Ts.*(1:N);figure(2);plot(t,es,'r',t,e,'b');xlabel('times');ylabel('esande');gridonfork=3:NUk_1=zeros(N-1,1);fori=1:N-1ifk-N+i<=0Uk_1(i)=0;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《酒店管理課件》專業(yè)培訓(xùn)資料
- 節(jié)后復(fù)工安全教育培訓(xùn)全攻略
- 公司食堂端午活動(dòng)策劃方案
- 楊莉 - 大物II 課件資料
- 《人工智能與智慧醫(yī)療》課件
- 《咖啡館經(jīng)營(yíng)管理》課件
- 《課程電子》課件
- 高校教師暑期崗前培訓(xùn)心得體會(huì)模版
- 《高精度位移測(cè)量技術(shù)》課件
- 2025年的讀童的心得體會(huì)模版
- 2024年湖南省長(zhǎng)沙市中考英語真題(原卷版)
- 2025年高三高考沖刺主題教育班會(huì):《高三考前心理調(diào)適指南:減壓賦能 輕松備考》-2024-2025學(xué)年高中主題班會(huì)課件
- 九一八事變課件
- 鄂爾多斯市水發(fā)燃?xì)庥邢薰菊衅腹P試真題2024
- 中學(xué)生法制教育課件
- 小學(xué)一年級(jí)數(shù)學(xué)20以內(nèi)進(jìn)位、退位加減法口算
- 2024年全國高中數(shù)學(xué)聯(lián)賽(浙江預(yù)賽)試題含參考答案
- MOOC 理解馬克思-南京大學(xué) 中國大學(xué)慕課答案
- GB/T 5169.5-2020電工電子產(chǎn)品著火危險(xiǎn)試驗(yàn)第5部分:試驗(yàn)火焰針焰試驗(yàn)方法裝置、確認(rèn)試驗(yàn)方法和導(dǎo)則
- 說明書hid500系列變頻調(diào)速器使用說明書s1.1(1)
- 硬筆書法興趣小組(社團(tuán))活動(dòng)計(jì)劃+教案
評(píng)論
0/150
提交評(píng)論