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