金林駿,方建安,潘磊寧
(東華大學(xué)信息科學(xué)與技術(shù)學(xué)院,上海201620)
多輸入多輸出(MIMO)控制裝置由于其復(fù)雜的耦合效應(yīng),總是很難設(shè)計(jì)出一個(gè)適當(dāng)?shù)目刂破?。因此,多輸入多輸出系統(tǒng)的控制策略已經(jīng)在工程和學(xué)術(shù)兩個(gè)領(lǐng)域作為重點(diǎn)被研究多年。所有耦合回路之間的交互影響對(duì)保持良好控制系統(tǒng)的整體性能帶來(lái)了很大的難度[1],如何以最佳方式協(xié)調(diào)所有回路的耦合作用是一項(xiàng)重要的研究工作。
解耦和協(xié)調(diào)MIMO控制裝置有許多多變量的控制方法,這些方法根據(jù)控制系統(tǒng)的工作方式不同分為多回路設(shè)計(jì)和多變量設(shè)計(jì)兩大類。前者的方法是把每個(gè)變量看作為一個(gè)獨(dú)立的控制對(duì)象,把變量之間的相互作用看作是擾動(dòng),通過(guò)依次迭代設(shè)定每個(gè)閉環(huán)對(duì)于其他回路的影響因子。多回路設(shè)計(jì)方法可以單獨(dú)地設(shè)計(jì)閉環(huán)控制器,并且當(dāng)故障發(fā)生時(shí)方便切換回單回路控制器。然而,這些方法只適用于弱耦合系統(tǒng),并且難以保證其控制性能。多變量的設(shè)計(jì)方法是將多變量系統(tǒng)分成多個(gè)獨(dú)立地單變量的子系統(tǒng),然后再獨(dú)立地設(shè)計(jì)各子系統(tǒng)的閉環(huán)控制器。然而,通過(guò)傳統(tǒng)的多變量的設(shè)計(jì)方法(如前饋、反饋和對(duì)角矩陣解耦控制等),很難獲得最實(shí)用的工業(yè)生產(chǎn)過(guò)程控制中對(duì)象精確的數(shù)學(xué)模型[2],雖然可能有一些近似模型,但這些不準(zhǔn)確模型對(duì)設(shè)計(jì)方案會(huì)產(chǎn)生很大的不確定性。此外,MIMO對(duì)象自身包含大量的非對(duì)稱變量,也導(dǎo)致將這些方法應(yīng)用到實(shí)際中存在許多困難。
隨著人工神經(jīng)網(wǎng)絡(luò)(ANN)技術(shù)的發(fā)展,神經(jīng)網(wǎng)絡(luò)控制器可以對(duì)上述方法的缺點(diǎn)進(jìn)行彌補(bǔ)[3]。作為一個(gè)通用的非線性逼近工具,神經(jīng)網(wǎng)絡(luò)能夠適用于任何復(fù)雜的控制對(duì)象。它還具有一些特殊的優(yōu)點(diǎn),如自組織,自學(xué)習(xí)與自適應(yīng)等[4]。這些特性使得神經(jīng)網(wǎng)絡(luò)控制技術(shù)成為智能控制的一個(gè)重要分支理論。無(wú)論本身或周圍的環(huán)境怎樣變化,人工神經(jīng)網(wǎng)絡(luò)都能一定程度地適應(yīng)這種變化,所以神經(jīng)網(wǎng)絡(luò)控制器不需要依賴任何對(duì)象模型。它們可以抵抗所有的耦合關(guān)系,并且通過(guò)一個(gè)黑盒子的方法來(lái)對(duì)未知模型進(jìn)行實(shí)時(shí)逼近以消除模型的不確定性。這樣研究者不僅可以克服一個(gè)復(fù)雜對(duì)象建模的難度,而且可以用一種全局最優(yōu)化方法實(shí)現(xiàn)系統(tǒng)的控制性能。因此,引入神經(jīng)網(wǎng)絡(luò)解耦控制器對(duì)于提高多變量控制技術(shù)是一個(gè)很好的選擇。
在實(shí)際的工程應(yīng)用中,著名的比例積分微分(PID)控制器仍然是一種很有用的控制器[5]。實(shí)踐證明,PID控制器幾乎適用于任何復(fù)雜工業(yè)過(guò)程。因此,把PID控制器和神經(jīng)網(wǎng)絡(luò)的結(jié)合到一起是一個(gè)合理的創(chuàng)新。一些研究者結(jié)合神經(jīng)網(wǎng)絡(luò)與PID控制器來(lái)處理一些復(fù)雜的過(guò)程。在文獻(xiàn)[6]中,一種用神經(jīng)網(wǎng)絡(luò)控制器來(lái)線性補(bǔ)償工業(yè)PID控制器的神經(jīng)PID控制策略被提出并應(yīng)用在機(jī)器人上。在文獻(xiàn)[7]的飛行控制系統(tǒng)中,神經(jīng)網(wǎng)絡(luò)控制器與PID 相結(jié)合的控制技術(shù)用于解耦。在文獻(xiàn)[8]中,除了結(jié)合神經(jīng)網(wǎng)絡(luò)和PID 控制器,一種改進(jìn)的人工魚(yú)群算法也被應(yīng)用于控制器參數(shù)的優(yōu)化。
本研究對(duì)神經(jīng)網(wǎng)絡(luò)PID控制器以及PID控制理論物理機(jī)制之間的相互作用進(jìn)行研究。
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)控制器往往缺乏高效的收斂速度和豐富的動(dòng)態(tài)特性[9-10]。收斂速度慢主要是由于初始權(quán)值的隨機(jī)選擇;動(dòng)態(tài)特性的缺失是由于在網(wǎng)絡(luò)中缺乏物理意義,這將導(dǎo)致一旦網(wǎng)絡(luò)以一個(gè)隨機(jī)的方式收斂,出現(xiàn)過(guò)早收斂的可能性變高。這個(gè)網(wǎng)絡(luò)需要被反復(fù)激勵(lì)以達(dá)到更好的效果。為了豐富動(dòng)態(tài)特性,本研究將常見(jiàn)的工業(yè)PID 控制理論引進(jìn)神經(jīng)網(wǎng)絡(luò)控制器,并提出了神經(jīng)網(wǎng)絡(luò)PID控制器,其隱藏神經(jīng)元由比例、積分和微分單元構(gòu)成。通過(guò)采用PID的物理機(jī)制,神經(jīng)網(wǎng)絡(luò)PID控制器能保證避免它的收斂過(guò)程陷入局部極小,并且使它的權(quán)值都有邏輯和物理意義。
神經(jīng)網(wǎng)絡(luò)PID控制器的結(jié)構(gòu)圖如圖1所示。神經(jīng)PID 控制器具有s個(gè)輸入神經(jīng)元,輸入系統(tǒng)的控制誤差為ej,j=1,2…s,3s個(gè)作為比例、積分和微分的功能單元的隱層神經(jīng)元,以及s個(gè)控制對(duì)象輸入信號(hào)的輸出神經(jīng)元??刂茖?duì)象的s個(gè)輸出y1,y2,...,y s再反饋給輸入層,以計(jì)算控制誤差。
圖1 神經(jīng)網(wǎng)絡(luò)PID控制器的結(jié)構(gòu)圖
隱層的3s個(gè)神經(jīng)元分別由s個(gè)比例(P)神經(jīng)元,s個(gè)積分(I)神經(jīng)元和s個(gè)微分(D)神經(jīng)元構(gòu)成。P神經(jīng)元是用來(lái)從相應(yīng)的神經(jīng)元輸入轉(zhuǎn)移成放大的電流誤差控制;I 神經(jīng)元是積累當(dāng)前的下一個(gè)輸入來(lái)對(duì)先前的控制誤差求和;D神經(jīng)元可以記錄自己以前的狀態(tài),并且通過(guò)減去先前狀態(tài)的電流輸入得到控制誤差的差異。每個(gè)輸入層神經(jīng)元都與3個(gè)隱層神經(jīng)元相連,3個(gè)隱層神經(jīng)元分別是P神經(jīng)元、I神經(jīng)元、D神經(jīng)元,其連接權(quán)重分別為w3n-2、w3n-1和w3n(n=1,2,…,s)。每個(gè)隱層神經(jīng)元連接所有的輸出層神經(jīng)元,P 神經(jīng)元的連接權(quán)值為wm(3n-2),I 神經(jīng)元的連接權(quán)值為wm(3n-1),D神經(jīng)元的連接權(quán)值為wm(3n),其中:m=1,2,…,s,
n=1,2,…,s。
輸入神經(jīng)元和輸出神經(jīng)元都以線性函數(shù)作為神經(jīng)元的激勵(lì)函數(shù),隱層神經(jīng)元?jiǎng)t用下面的Sigmoid 函數(shù)作為激勵(lì)函數(shù):
式中:x—隱層神經(jīng)元輸入,y—隱層神經(jīng)元輸出。
所有3層的輸入、輸出采樣時(shí)間均為k,可以用以下公式計(jì)算。
1.2.1 輸入層
在輸入層有s個(gè)相同的神經(jīng)元,它們的輸入、輸出關(guān)系是:
1.2.2 隱層
隱層3種不同的神經(jīng)元有不同的輸入和輸出值。nthP神經(jīng)元的輸入、輸出為:
nthI神經(jīng)元的輸入、輸出為:
nthD神經(jīng)元的輸入、輸出為:
1.2.3 輸出層
輸出層也有s個(gè)神經(jīng)元,對(duì)s個(gè)變量控制裝置提供了s個(gè)控制信號(hào),所以的隱層神經(jīng)元對(duì)每一個(gè)輸出層神經(jīng)元的輸出值都有影響。因此,輸出層神經(jīng)元的輸出可以被計(jì)算如下:
神經(jīng)PID 控制器仍然是一個(gè)神經(jīng)網(wǎng)絡(luò),運(yùn)行在操作對(duì)象上,并以通過(guò)持續(xù)的調(diào)整它的連接權(quán)值來(lái)達(dá)到減少控制誤差的目的,這個(gè)修改方向的學(xué)習(xí)算法主要是基于梯度下降法。為了保證控制系統(tǒng)的穩(wěn)定性,學(xué)習(xí)步長(zhǎng)的約束條件按照李雅普諾夫穩(wěn)定性理論來(lái)設(shè)定。
在所提出的神經(jīng)網(wǎng)絡(luò)PID 控制器中,輸入層和隱層之間的連接權(quán)重只負(fù)責(zé)數(shù)據(jù)從輸入層傳向隱層,它們不會(huì)對(duì)控制器的最終性能造成很多影響。隱層和輸出層之間的連接權(quán)重是控制工作性能的主要影響因素,這些權(quán)重主要是來(lái)消除控制對(duì)象的耦合效應(yīng),他們的值可以通過(guò)控制器來(lái)決定。因此,連接權(quán)值wm(3n-2)、wm(3n-1)和wm(3n)(m=1,2,…,s,n=1,2,…,s)是可以被修改的。首先,用下面的矢量描述系統(tǒng)的控制誤差:
式中:ri,yi—控制系統(tǒng)的輸入和輸出,i=1,2,…,s。
然后定義以下矩陣:
式中:Q—一個(gè)對(duì)角單位矩陣,k1=k2=...=ks=1。
然后定義一個(gè)李雅普諾夫函數(shù),如下:
根據(jù)梯度下降法,這個(gè)調(diào)整應(yīng)為:
其中:m=1,2,…,s;h=3n-2,3n-1,3n;n=1,2,…,s;η(k)—在采樣時(shí)間k時(shí)的學(xué)習(xí)步長(zhǎng)。
把式(17)代入式(15),并假設(shè)ΔV(k)<0,則可以得到下式:
當(dāng)學(xué)習(xí)步長(zhǎng)滿足式(18),該系統(tǒng)可以滿足李雅普諾夫穩(wěn)定性。為編程方便,本研究設(shè)置可變學(xué)習(xí)步長(zhǎng)η(k),按照下列的式(18)約束為一固定值η:
雖然PID 機(jī)制給了連接權(quán)值邏輯和物理意義,但是連接權(quán)值的最初設(shè)定值仍然對(duì)收斂速度有很大的影響。權(quán)重的隨機(jī)初始化會(huì)給控制器帶來(lái)很多不確定的因素,使控制器難以達(dá)到其最佳性能。為了加速收斂過(guò)程,該優(yōu)化算法用最小化控制誤差的方法來(lái)獲得合適的初始權(quán)值。
所有的優(yōu)化算法中,粒子群優(yōu)化(PSO)算法由于它的高速收斂性,是目前最流行的一種優(yōu)化算法。它是由肯尼迪和艾伯哈特在1955年提出來(lái)的[11]。其想法來(lái)源于進(jìn)化計(jì)算的理論,該算法模擬鳥(niǎo)群覓食的行為,通過(guò)每個(gè)鳥(niǎo)群之間的合作找到食物源。不同于無(wú)規(guī)則的演變過(guò)程,PSO算法可以使進(jìn)化變得有規(guī)律,并且通過(guò)各單位之間的信息共享機(jī)制,來(lái)獲得最佳的解決方案。
在q空間中p的一組粒子,粒子ith(1 ≤i≤p)有一個(gè)速度和方位在cth的迭代搜索,定義最優(yōu)解為粒子i直到當(dāng)前迭代為,對(duì)于所有粒子直到當(dāng)前迭代的最優(yōu)解決方案為,則i粒子在下一次迭代的位置和速度使用下列公式進(jìn)行更新:
式中:w—慣性權(quán)重;μ1,μ2—學(xué)習(xí)因子;r1,r2—[0,1]之間的一隨機(jī)數(shù);β—一個(gè)速度約束因子,i=1,2,…,p,c=1,2…G(G是最大迭代)。速度的區(qū)間表示為,位置的區(qū)間表示為,如果更新值的速度或位置是超過(guò)設(shè)定的區(qū)間,則取區(qū)間的相應(yīng)邊界值。
然而,傳統(tǒng)PSO 算法不收斂的風(fēng)險(xiǎn)仍然存在,這對(duì)控制系統(tǒng)來(lái)說(shuō)很可能是一個(gè)潛在的危險(xiǎn)。因此,本研究提出了一種改進(jìn)的方法,可以實(shí)現(xiàn)種群的多樣性之間的平衡,并且在速度更新公式中通過(guò)加入收縮因子來(lái)加快收斂速度。對(duì)速度進(jìn)行進(jìn)一步限制的改進(jìn)的粒子群優(yōu)化算法(IPSO),已被證明是一種有效的數(shù)學(xué)理論?,F(xiàn)在速度的更新公式如下:
目標(biāo)函數(shù)確定后,詳細(xì)的IPSO算法的優(yōu)化步驟如下:
(2)所有粒子的更新的速度和位置根據(jù)等式(22,21),把它們限制在區(qū)間范圍內(nèi)。
(3)對(duì)于每個(gè)粒子,目標(biāo)函數(shù)用位置更新的方法去計(jì)算新的適合度值。如果新的位置比原先的位置對(duì)個(gè)體優(yōu)化更好,那么就用新的值取代個(gè)體優(yōu)化值,否則,則優(yōu)化值不變。
(4)用個(gè)體的最優(yōu)確定全局最優(yōu)的新值。
(5)如果滿足終止條件,則算法停止。否則則返回步驟(2)。
由于快速收斂速度,該IPSO 算法易于實(shí)現(xiàn),只有幾個(gè)參數(shù)需要調(diào)整,這些特性使他可以應(yīng)用到如系統(tǒng)控制、模式識(shí)別和通信工程等許多不同的領(lǐng)域。
由于隱層和輸出層之間的權(quán)值是需要調(diào)整的。優(yōu)化過(guò)程中還針對(duì)這些權(quán)重。首先,把權(quán)重編碼到多維向量,如下:
設(shè)定目標(biāo)函數(shù)絕對(duì)誤差積分(IAE)指標(biāo):
式中:L—給定的采樣長(zhǎng)度;α1,…,αs—每個(gè)控制誤差的影響因子,然后粒子的訓(xùn)練可以以目標(biāo)函數(shù)的倒數(shù)來(lái)進(jìn)行計(jì)算:
以最小化IAE指標(biāo)綜合的目的,IPSO算法可以決定神經(jīng)PID控制器的最優(yōu)初始連接權(quán)值。優(yōu)化過(guò)程的流程圖如圖2所示。
圖2 優(yōu)化流程圖
這個(gè)過(guò)程將在神經(jīng)網(wǎng)絡(luò)PID控制器的初始化過(guò)程中運(yùn)行。在那之后,神經(jīng)網(wǎng)絡(luò)PID 控制器用第3 章介紹學(xué)習(xí)算法下調(diào)整它的權(quán)重。
在優(yōu)化過(guò)程中,神經(jīng)PID 控制器對(duì)于MIMO 控制裝置更加可靠。整個(gè)控制系統(tǒng)的結(jié)構(gòu)圖如圖3所示。
圖3 控制系統(tǒng)的結(jié)構(gòu)圖
其操作步驟證明如下:
步驟1:把控制對(duì)象輸入到控制器中;
步驟2:IPSO 算法的神經(jīng)網(wǎng)絡(luò)PID 控制器權(quán)值初始化,在這期間,學(xué)習(xí)算法不工作在控制器中;
步驟3:用神經(jīng)網(wǎng)絡(luò)PID控制器控制MIMO對(duì)象;
步驟4:將控制系統(tǒng)的輸出反饋到神經(jīng)PID 控制器;
步驟5:通過(guò)給出的學(xué)習(xí)算法調(diào)整神經(jīng)網(wǎng)絡(luò)PID控制器的連接權(quán)值。
步驟6:如果控制系統(tǒng)達(dá)到穩(wěn)態(tài),意味著的控制誤差已經(jīng)足夠小,此時(shí)終止學(xué)習(xí)算法。否則,不斷調(diào)整學(xué)習(xí)算法的權(quán)值。
為了驗(yàn)證所提出的神經(jīng)網(wǎng)絡(luò)PID控制器以及改進(jìn)算法的有效性,本研究選擇了一個(gè)復(fù)雜的非線性有3個(gè)變量的控制對(duì)象,并且該對(duì)象具有較強(qiáng)的耦合效應(yīng):
神經(jīng)網(wǎng)絡(luò)PID控制器的說(shuō)明圖1是用來(lái)控制上述對(duì)象的。仿真實(shí)驗(yàn)是在有優(yōu)化及沒(méi)有優(yōu)化兩種情況下所做的,以測(cè)試IPSO算法的有效性。這兩種情況下設(shè)置控制目標(biāo)為[0.7,0.4,0.6],控制信號(hào)的初始值設(shè)定為[0,0,0],設(shè)定學(xué)習(xí)步長(zhǎng)η=0.5,采樣時(shí)間為0.001 s,在沒(méi)有優(yōu)化的情況下,權(quán)重隨機(jī)初始化。
仿真結(jié)果如圖4~6所示,證明未經(jīng)優(yōu)化的神經(jīng)網(wǎng)絡(luò)PID控制器在一定程度上可以維持控制系統(tǒng)的穩(wěn)定性,但其準(zhǔn)確性不夠好。而經(jīng)過(guò)優(yōu)化的神經(jīng)網(wǎng)絡(luò)PID控制器不僅可以確保系統(tǒng)的穩(wěn)定性,并且提高了系統(tǒng)的精確性及快速響應(yīng)性。這說(shuō)明了所提出的IPSO 優(yōu)化算法神經(jīng)網(wǎng)絡(luò)PID控制器在MIMO控制對(duì)象中可以實(shí)現(xiàn)良好的性能。
圖4 響應(yīng)曲線的比較
圖5 目標(biāo)函數(shù)曲線的比較
圖6 控制信號(hào)的比較
本研究通過(guò)將PID控制機(jī)制和神經(jīng)網(wǎng)絡(luò)控制技術(shù)相結(jié)合,可以使這兩種方案的優(yōu)勢(shì)充分展現(xiàn)出來(lái)。神經(jīng)PID控制器被證明可以有效地處理多輸入多輸出過(guò)程,再加上IPSO 優(yōu)化算法,神經(jīng)網(wǎng)絡(luò)PID 控制器便可以具有更優(yōu)良的控制性能。
因此,本研究所提出的神經(jīng)網(wǎng)絡(luò)PID 控制器IPSO優(yōu)化算法對(duì)于有較強(qiáng)耦合效應(yīng)的MIMO控制對(duì)象是一個(gè)很好的選擇。
(References):
[1]李付軍,雒寶瑩,曾軍高,等.3 軸電動(dòng)轉(zhuǎn)臺(tái)動(dòng)力耦合分析及抑制策略[J].上海交通大學(xué)學(xué)報(bào),2011(2):202-207.
[2]XU Shun-gang,WANG Jin-ping,XU Jian-ping.A current decoupling parallel control strategy of sing-phase inverter with voltage and current dual closed-loop feedback[J].IEEE Transactions on Industrial Electronics,2013(4):1306-1313.
[3]DONG Xiu-cheng,ZHAO Yun-yuan,XU Yun-yun,et al.Design of PSO fuzzy neural network control for ball and plate system[J].International Journal of Innovative Computing,Information and Control,2011,12(7):7091-7103.
[4]徐 文,王大忠,周澤存,等.結(jié)合遺傳算法的人工神經(jīng)網(wǎng)絡(luò)在電力變壓器故障診斷中的應(yīng)用[J].中國(guó)電機(jī)工程學(xué)報(bào),1997(3):109-112.
[5]SHA Li-zheng,GAO Jun,WANG Jian-hua.Pulp Concen?tration Control by PID with BP Neural Network in the Pro?duction of Light Weight Cardboard[C]//2010 IEEE 11th In?ternational Conference on Computer-Aided Industrial De?sign & Conceptual Design(CAIDCD).Yiwu:[s.n.],2010:1217-1220.
[6]YU Wen,ROSEN J.Neural PID control of robot manipula?tors with application to an upper limb exoskeleton[J].IEEE Transactions on cybernetics,2013,43(2):673-684.
[7]程 波,何貴波,李 天.PID神經(jīng)網(wǎng)絡(luò)在飛控解耦中的仿真研究[J].電光與控制,2012(6):41-44.
[8]馮冬青,馬超陽(yáng),劉艷紅.基于人工魚(yú)群的PID神經(jīng)網(wǎng)絡(luò)非線性系統(tǒng)控制[J].計(jì)算機(jī)仿真,2012(9):247-250.
[9]王衍平.單神經(jīng)元PID 算法在包裝機(jī)溫控系統(tǒng)中的應(yīng)用[J].包裝與食品機(jī)械,2013(3):69-72.
[10]李 明,楊 承,舒 宇.一種全局收斂的神經(jīng)網(wǎng)絡(luò)PSO訓(xùn)練算法[C]//2007′儀表,自動(dòng)化及先進(jìn)集成技術(shù)大會(huì)論文集(二).重慶:重慶大學(xué),2007:533-537.
[11]紀(jì)雪玲.改進(jìn)粒子群優(yōu)化算法及其在人工神經(jīng)網(wǎng)絡(luò)中的應(yīng)用研究[D].昆明:西南林業(yè)大學(xué)機(jī)械與交通學(xué)院,2012.