黃 碩,李淑玉
(1.華中師范大學(xué) 信息技術(shù)系,湖北 武漢430079;2.武漢理工大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,湖北 武漢 430070;3.信陽職業(yè)技術(shù)學(xué)院 數(shù)學(xué)與計算機科學(xué)學(xué)院, 河南 信陽 464000)
如今,控制系統(tǒng)越來越多地應(yīng)用于人們的生活和工作中,如何對控制系統(tǒng)進行有效的控制是一門逐步發(fā)展的經(jīng)典學(xué)科[1].常見的控制系統(tǒng)包括人工控制、動態(tài)變換模型控制、混沌模型控制和融合控制等[2].上述大部分控制系統(tǒng)都需要借助外力進行有效控制來提升到較高的控制水平,在外力或者外部控制消失后,控制系統(tǒng)的性能將會極大減弱.為了針對當(dāng)前控制系統(tǒng)需要較多外部參數(shù)和外力控制等諸多不便,設(shè)計一種基于自適應(yīng)方式,通過誤差反饋自動調(diào)節(jié)控制系統(tǒng)的方案,將會在沒有外力控制和外部參數(shù)的情況下,自適應(yīng)地通過迭代調(diào)節(jié)控制系統(tǒng),以期達到自適應(yīng)控制系統(tǒng)的目的.
目前,符合自適應(yīng)、通過迭代不斷調(diào)節(jié)誤差的模型當(dāng)屬于Hopfield神經(jīng)網(wǎng)絡(luò).Hopfield神經(jīng)網(wǎng)絡(luò)出現(xiàn)于1982年[3],分為離散型Hopfield神經(jīng)網(wǎng)絡(luò)模型和連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò).其中,連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)擁有逐步收斂到穩(wěn)定狀態(tài)的特性,當(dāng)一個連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)工作時,該神經(jīng)網(wǎng)絡(luò)中所有相互連接的神經(jīng)元結(jié)構(gòu)保持不變,整個神經(jīng)網(wǎng)絡(luò)的能量由輸入神經(jīng)元的狀態(tài)影響,通過不斷改變輸入神經(jīng)元的狀態(tài),優(yōu)化神經(jīng)元之間聯(lián)結(jié)的權(quán)值,最終當(dāng)網(wǎng)絡(luò)輸入與輸出的能量差達到最小時,整個連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)處于平衡狀態(tài).因此,連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)有自動全局搜索最優(yōu)化解的能力.通過連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的自動尋優(yōu)能力設(shè)計的控制系統(tǒng),可以利用連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的自適應(yīng)控制能力實現(xiàn)控制設(shè)備自動控制目標(biāo).
連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)包括一個單層的非線性神經(jīng)網(wǎng)絡(luò),通過一系列的神經(jīng)元進行反饋.每個節(jié)點的輸出對應(yīng)一個節(jié)點的輸入,通過輸入與輸出的誤差在神經(jīng)網(wǎng)絡(luò)中進行自反饋達到優(yōu)化的目的.神經(jīng)網(wǎng)絡(luò)反饋過程中所有的神經(jīng)元可以并行進行,所以在信息處理過程中與生物學(xué)中的神經(jīng)網(wǎng)絡(luò)反饋過程相似,有較強的并行性、關(guān)聯(lián)性、實時性和兼容性.連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)可以通過模擬電路的描述給出[4],如圖1所示.在該電路表示神經(jīng)網(wǎng)絡(luò)中,un表示神經(jīng)網(wǎng)絡(luò)輸入值,n為神經(jīng)元輸入狀態(tài)個數(shù),Rn0和Cn分別表示輸入的電阻和電容,In表示輸入電流,win表示神經(jīng)元之間的連接權(quán)值,vn表示神經(jīng)網(wǎng)絡(luò)輸出值,φ(n)為一個非線性激勵函數(shù),用于激勵輸入un的值,讓其發(fā)生非線性變化,形成整個神經(jīng)網(wǎng)絡(luò)的非線性特性,非線性特性有利于神經(jīng)網(wǎng)絡(luò)的快速收斂.
圖1 連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)模型圖Fig. 1 Continuous Hopfield Neural Network Model Graph
求解連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的最優(yōu)解,一般采用電路原理[5]中的常見做法,即求解輸入值與輸出值的微分方程,如式(1)所示.
連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的最優(yōu)化求解過程一個誤差逼近到0的過程,隨機選擇神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元i,并通過神經(jīng)元之間的連接權(quán)值計算出輸入值ui,將輸入值ui通過非線性系統(tǒng)計算出輸出值vi,之后計算輸出值vi與目標(biāo)函數(shù)實際值之間的誤差,然后利用誤差不斷調(diào)整輸出及權(quán)值,使得輸出值vi逐步逼近目標(biāo)函數(shù)的實際值,即誤差最小化.
隨著連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的持續(xù)運行,該網(wǎng)絡(luò)將朝著最優(yōu)化能量函數(shù)的方向發(fā)展,只要神經(jīng)網(wǎng)絡(luò)的運行時間足夠,該網(wǎng)絡(luò)的輸出將會達到一個平衡點,該平衡點對應(yīng)的輸出也就是能量函數(shù)E最小化對應(yīng)的值.在控制系統(tǒng)中采用Hopfield神經(jīng)網(wǎng)絡(luò)將會自適應(yīng)求解出最優(yōu)化值,達到控制目標(biāo)的目的.
連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)有較強的自適應(yīng)尋優(yōu)能力,如果一個連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的輸出目標(biāo)為參考模型,那么該神經(jīng)網(wǎng)絡(luò)的輸出可以很好地優(yōu)化目標(biāo)函數(shù),例如在控制系統(tǒng)中,若將控制參考模型作為Hopfield神經(jīng)網(wǎng)絡(luò)的輸出,那么通過不斷地迭代神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)可以完成對控制系統(tǒng)的優(yōu)化,其輸出就能夠最優(yōu)化的控制設(shè)備[6].假設(shè)參考模型的目標(biāo)函數(shù)輸出為yp,實際情況下,控制設(shè)備的輸出為y,參考控制與實際控制的誤差為e(y)=yp-y,通過誤差定義能力函數(shù)如式(2)所示:
假設(shè)控制設(shè)備的運動模型可以由式(3)表示:
u=kp(yp-y)+kfy+kda,
(4)
其中:kp,kf,kd為該控制系統(tǒng)的控制參數(shù);y,a分別表示控制系統(tǒng)的速度與加速度.聯(lián)立式(3)與(4),可以求解速度y與各個控制參數(shù)之間的關(guān)系式(5):
y=-kpy+(kp+kf)yp+(kd+1)a.
(5)
為了簡化計算,假設(shè)kp=v1,kp+kf=v2,kd+1=v3,將上式改寫為:
y=-v1y+v2yp+v3a.
(6)
將式(6)代入損失函數(shù)(2)可得到控制設(shè)備的參數(shù)與損失函數(shù)的相關(guān)關(guān)系:
假設(shè)輸入Hopfield神經(jīng)網(wǎng)絡(luò)的電阻是無窮大,即不考慮電阻對控制系統(tǒng)的影響,那么神經(jīng)網(wǎng)絡(luò)的損失函數(shù)可以寫為標(biāo)準(zhǔn)形式,如式(8)所示:
其中:wij表示第i和第j個神經(jīng)元之間的權(quán)值,vi和vj分別表示神經(jīng)元i和神經(jīng)元j的實際輸出值,Ii表示神經(jīng)元輸入值.
為了計算能夠推導(dǎo)出能量函數(shù)的優(yōu)化過程,因為E中通過三個控制系統(tǒng)的參數(shù)給出了三個輸出結(jié)果,所以假設(shè)n=3并推導(dǎo)出對應(yīng)的能量函數(shù)E3優(yōu)化過程:
v1I1-v2I2-v3I3.
(9)
當(dāng)Hopfield神經(jīng)網(wǎng)絡(luò)出現(xiàn)不穩(wěn)定狀態(tài)時,該神經(jīng)網(wǎng)絡(luò)的能量函數(shù)會朝著不斷極小化的方向進行變化,當(dāng)參考模型能量函數(shù)和神經(jīng)網(wǎng)絡(luò)能量函數(shù)對輸出的導(dǎo)數(shù)為0,即輸出不再影響能力函數(shù)的時候,該神經(jīng)網(wǎng)絡(luò)將會出現(xiàn)最穩(wěn)當(dāng)?shù)臓顟B(tài),該狀態(tài)下的神經(jīng)網(wǎng)絡(luò)將會輸出最穩(wěn)定的極小值[8],用式(10)可以表示該穩(wěn)態(tài):
將式(10)展開為對每個神經(jīng)元的參考模型輸出以及神經(jīng)網(wǎng)絡(luò)輸出,可以表示為:
聯(lián)立式(11)中一一對應(yīng)的等式,并令它們等于0,可以變換為一個矩陣形式的線性方程組,并可以通過求解該線性方程組,求出能量函數(shù)的最優(yōu)值.
通過求解線性方程組,得出最優(yōu)化情況下的W和I的相關(guān)值,利用這些權(quán)值和輸出中間值,就可以最優(yōu)化地求解式(1)中用電路原理建立的最優(yōu)化Hopfield控制系統(tǒng)方式.將優(yōu)化值W和I代入式(1)中,并且保證系統(tǒng)的電阻足夠大,不考慮電路中有電阻的作用,電容Ci=1,可以得到:
通過式(13)與式(14),建立了實際輸出vi與穩(wěn)定狀態(tài)下的優(yōu)化系數(shù)權(quán)重W和輸入值I的對應(yīng)關(guān)系,通過求解微分方程組,即可求解出Hopfield神經(jīng)網(wǎng)絡(luò)的最優(yōu)化輸出.
為了更為直觀地建立連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)與控制系統(tǒng)之間的關(guān)系,根據(jù)上述原則建立了基于Hopfield神經(jīng)網(wǎng)絡(luò)的控制系統(tǒng),如圖2所示.
圖2 基于連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的控制系統(tǒng)Fig. 2 Control system based on continuous hopfield neural network
由于Hopfield神經(jīng)網(wǎng)絡(luò)的權(quán)重與實際控制系統(tǒng)之間的控制參數(shù)建立了一一對應(yīng)的關(guān)系,所以利用Hopfield神經(jīng)網(wǎng)絡(luò)優(yōu)化后的神經(jīng)網(wǎng)絡(luò)權(quán)重即可用于控制系統(tǒng)的控制,即該控制系統(tǒng)是建立在Hopfield神經(jīng)網(wǎng)絡(luò)之下的.通過Hopfield神經(jīng)網(wǎng)絡(luò)的權(quán)重,令神經(jīng)網(wǎng)絡(luò)的輸出為vi,再使用vi控制設(shè)備,并利用設(shè)備的反饋不斷優(yōu)化Hopfield神經(jīng)網(wǎng)絡(luò)的權(quán)重,使其輸出最優(yōu)化結(jié)果.根據(jù)上述流程,通過不斷的反饋調(diào)整,該控制系統(tǒng)通過一段時間的運行,即可獲得最優(yōu)化的控制.
為了驗證設(shè)計的基于連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)控制系統(tǒng)的可行性和有效性,采用MATLAB編程仿真基于Hopfield神經(jīng)網(wǎng)絡(luò)控制系統(tǒng),采用Hopfield神經(jīng)網(wǎng)絡(luò)的輸出作為調(diào)節(jié)控制系統(tǒng)的輸入,并對仿真設(shè)備進行控制,再用控制結(jié)果不斷優(yōu)化神經(jīng)網(wǎng)絡(luò),使其輸出能夠最優(yōu)化的控制設(shè)備[9].為了簡化起見,將參考模型的輸出設(shè)置為最容易辨認的方波,讓其與Hopfield神經(jīng)網(wǎng)絡(luò)的輸出作橫向比較,比較神經(jīng)網(wǎng)絡(luò)的輸出與方波之間的區(qū)別.若區(qū)別較小,說明該神經(jīng)網(wǎng)絡(luò)精度高,可以用于自適應(yīng)控制系統(tǒng)中完成對設(shè)備的自適應(yīng)設(shè)備控制;反之,則說明該神經(jīng)網(wǎng)絡(luò)的精度較差,不能用于控制系統(tǒng).
為了保持與上述算法相同,仿真過程采用三個方波作為輸入,即文中的v1、v2、v3,波形圖如圖3所示.
v1波形圖 v2波形圖 v3波形圖
仿真實驗的過程就是利用v1、v2、v3對方波進行仿真,仿真過程如下:
(1)通過公式給出v1、v2、v3三個控制信號,并顯示波形.
(2)建立一個包含三個神經(jīng)節(jié)點元的連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò),通過隨機數(shù)的方式建立節(jié)點之間的權(quán)重,并將神經(jīng)網(wǎng)絡(luò)的輸出與三個控制信號相連.
(3)通過控制系統(tǒng)的輸入給出輸出,將控制系統(tǒng)實際輸出與參考模型輸出方波相減,獲得神經(jīng)網(wǎng)絡(luò)的誤差.
(4)根據(jù)第2節(jié)內(nèi)容,將誤差反饋輸入到Hopfield神經(jīng)網(wǎng)絡(luò)中,并通過誤差調(diào)整神經(jīng)網(wǎng)絡(luò)中的各個權(quán)重.
(5)重復(fù)(3)、(4)直到誤差不再改變,并輸出此時神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果與實際參考模型方波之間的比較,給出比較波形.
經(jīng)過150次迭代,直到神經(jīng)網(wǎng)絡(luò)收斂到誤差不再改變,并給出了此時的神經(jīng)網(wǎng)絡(luò)輸出與參考方波輸出結(jié)果比較,如圖4所示.
通過比較結(jié)果可以看出,經(jīng)過神經(jīng)網(wǎng)絡(luò)迭代之后,其實際的輸出值與參考理論值已經(jīng)比較接近了,可以很好地完成控制系統(tǒng)控制設(shè)備的任務(wù).由于基于Hopfield的神經(jīng)網(wǎng)絡(luò)的輸出信號是通過自適應(yīng)的方式,自動計算并調(diào)整神經(jīng)網(wǎng)絡(luò)的內(nèi)部權(quán)值得到的,完全不需要外部人工介入,可以極大地減少工作量.另外,文中仿真的150次迭代完成以后,該神經(jīng)網(wǎng)絡(luò)就可以成為該控制系統(tǒng)專用的神經(jīng)網(wǎng)絡(luò),不再需要多次迭代改變權(quán)重.一旦控制系統(tǒng)的要求發(fā)生了改變,改變誤差可以再次反饋到Hopfield神經(jīng)網(wǎng)絡(luò)中,經(jīng)過迭代后,
神經(jīng)網(wǎng)絡(luò)的權(quán)重發(fā)生了一系列改變,利用新的權(quán)重,又可以控制新的控制設(shè)備.所以,該神經(jīng)網(wǎng)絡(luò)有較強的自適應(yīng)能力,能夠根據(jù)控制設(shè)備的不斷變化,改變自身的權(quán)重,以達到自適應(yīng)控制的目的.
圖4 神經(jīng)網(wǎng)絡(luò)控制輸出與參考控制輸出比較Fig. 4 Comparison between Neural network control output and reference
為了改善傳統(tǒng)控制系統(tǒng)需要外力參與協(xié)助控制以及外部參數(shù)介入,造成的大量資源浪費,建立一個基于連續(xù)型Hopfield神經(jīng)網(wǎng)絡(luò)的自適應(yīng)控制系統(tǒng).該控制系統(tǒng)通過結(jié)果誤差不斷反饋到神經(jīng)網(wǎng)絡(luò)的輸出,通過多次迭代完成對神經(jīng)網(wǎng)絡(luò)權(quán)重的更新,以達到自適應(yīng)地對設(shè)備進行控制.為了驗證連續(xù)Hopfield神經(jīng)網(wǎng)絡(luò)在控制系統(tǒng)中的有效性,基于MATLAB平臺設(shè)計了仿真實驗,仿真結(jié)果表明該系統(tǒng)的控制性能良好,可以完成自適應(yīng)控制,具有較強的便捷性和可行性