資源描述:
《基于bp神經(jīng)網(wǎng)絡自整定pid控制仿真》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、可編輯版基于BP神經(jīng)網(wǎng)絡的自整定PID控制仿真一、目的????1.熟悉神經(jīng)網(wǎng)絡的特征、結(jié)構(gòu)以及學習算法????2.掌握神經(jīng)網(wǎng)絡自整定PID的工作原理????3.了解神經(jīng)網(wǎng)絡的結(jié)構(gòu)對控制效果的影響????4.掌握用MATLAB實現(xiàn)神經(jīng)網(wǎng)絡控制系統(tǒng)仿真的方法。二、設備及條件????計算機系統(tǒng)????Matlab仿真軟件三、問題背景????在工業(yè)控制中,PID控制是工業(yè)控制中最常用的方法。這是因為PID控制器結(jié)構(gòu)簡單、實現(xiàn)簡單,控制效果良好,已得到廣泛應用。但是,PID具有一定的局限性:被控制對象參數(shù)隨時間變化時,控制器的參數(shù)難以自動調(diào)整以適應
2、外界環(huán)境的變化。為了使控制器具有較好的自適應性,實現(xiàn)控制器參數(shù)的自動調(diào)整,可以采用神經(jīng)網(wǎng)絡控制的方法。利用人工神經(jīng)網(wǎng)絡的自學習這一特性,并結(jié)合傳統(tǒng)的PID控制理論,構(gòu)造神經(jīng)網(wǎng)絡PID控制器,實現(xiàn)控制器參數(shù)的自動調(diào)整。????基于BP神經(jīng)網(wǎng)絡的PID控制器結(jié)構(gòu)如圖1所示??刂破饔蓛刹糠纸M成:一是常規(guī)PID控制器,用以直接對對象進行閉環(huán)控制,且三個參數(shù)在線整定;二是神經(jīng)網(wǎng)絡NN,根據(jù)系統(tǒng)的運行狀態(tài),學習調(diào)整權(quán)系數(shù),從而調(diào)整PID參數(shù),達到某種性能指標的最優(yōu)化。圖1基于神經(jīng)網(wǎng)絡的PID控制器結(jié)構(gòu)四、基于BP神經(jīng)網(wǎng)絡的PID設計1設計原理??神經(jīng)
3、網(wǎng)絡采用結(jié)構(gòu)為4-5-3型的BP網(wǎng)絡,如圖2。Word完美格式可編輯版圖2BP網(wǎng)絡結(jié)構(gòu)其中,輸出層激勵函數(shù)取非負的Sigmoid函數(shù),隱層取正負對稱的Sigmoid函數(shù)。被控對象為一時變非線性對象,數(shù)學模型可表示為:????????式中,系數(shù)a(k)是慢時變的,。為保證控制器有一定的動態(tài)跟蹤能力,選定神經(jīng)網(wǎng)絡的輸入層輸入為網(wǎng)絡的學習過程由正向和反向傳播兩部分組成。如果輸出層不能得到期望輸出,那么轉(zhuǎn)入反向傳播過程,通過修改各層神經(jīng)元的權(quán)值,使得輸出誤差信號最小。????輸出層節(jié)點分別對應三個可調(diào)參數(shù)????取性能指標函數(shù)為:設其中若PID控
4、制器采用采用增量式數(shù)字PID控制算法,則有2.網(wǎng)絡權(quán)系數(shù)調(diào)整Word完美格式可編輯版網(wǎng)絡權(quán)系數(shù)的修正采用梯度下降法。根據(jù)相關數(shù)學知識,針對指定因變量的梯度代表了使因變量增速最大的自變量變化方向,故而其反方向代表了因變量下降最快的自變量變化方向,如果我們選取性能指標為因變量,網(wǎng)絡各層權(quán)系數(shù)為自變量,則對應梯度的負方向就是權(quán)系數(shù)調(diào)整的最佳方向,因此,實際上構(gòu)成了一個有目標的搜索算法,對最終結(jié)果的收斂性提供了有力的保證。對應于本題采用的4-5-3型的BP網(wǎng)絡,梯度負方向的計算:(1)隱含層-輸出層:其中:為指標函數(shù)為隱含層-輸出層權(quán)系數(shù)矩陣元素
5、為被控對象輸出為PID控制器輸出為輸出層輸出為輸出層輸入根據(jù)所選用神經(jīng)網(wǎng)絡的數(shù)學模型,易知:其中:為隱含層輸出,Word完美格式可編輯版,為輸出層激勵函數(shù),為其偏導數(shù)。另外,直接的數(shù)學表達不容易獲得,但我們可以使用它的符號函數(shù)來近似,仍可以保證參數(shù)修正方向的正確性,而由此造成其模的誤差只影響參數(shù)調(diào)整的速度,它可以通過調(diào)整學習速率來得以補償。故而最終有:(1)輸入層-隱含層:其中:,為輸出層激勵函數(shù),為其偏導數(shù)。故而最終有:(2)網(wǎng)絡權(quán)值修正量梯度的負方向給出了網(wǎng)絡權(quán)值修正的方向,乘以系數(shù),即為權(quán)值修正量。其中代表了算法每次在梯度負方向搜索
6、的步長,稱為網(wǎng)絡的學習速率,另外,如果考慮上次權(quán)值對本次權(quán)值變化的影響,需要加入動量(平滑)因子,此時新的權(quán)值為:Word完美格式可編輯版3.程序流程步驟1:設定初始狀態(tài)和參數(shù)初始值,包括隨機產(chǎn)生初始BP神經(jīng)網(wǎng)絡權(quán)值系數(shù),設定初始輸入輸出值為零,設定學習速率和慣性系數(shù),計數(shù)器設為k=1,并設定計數(shù)上限等。步驟2:計算產(chǎn)生BP神經(jīng)網(wǎng)絡隱含層輸入。本程序為采樣獲得e(k),并結(jié)合儲存的e(k-1),e(k-2),及常數(shù)1作為隱含層輸入。前兩次的e(k-1),e(k-2)并未真實產(chǎn)生直接取0.步驟3:前向傳播計算。包括:(1)BP神經(jīng)網(wǎng)絡前向傳
7、播計算,得到輸出層輸出,,.;(2)增量式PID控制器計算控制器輸出;(3)被控對象模型計算輸出值步驟4:反向傳播計算。包括:(1)修正輸出層的權(quán)系數(shù);(2)修正隱含層的權(quán)系數(shù);步驟5:參數(shù)更新步驟6:如果k達到設定的次數(shù)上限,則結(jié)束;否則,k=k+1,并返回步驟2.總的程序流程圖如下:Word完美格式可編輯版圖3程序流程圖五、運行結(jié)果及分析1.運行結(jié)果取學習速率,慣性系數(shù),隱層節(jié)點數(shù)位5,各層加權(quán)系數(shù)的初值取區(qū)間[-0.5,0.5]上的隨機數(shù)進行仿真實驗,由于初始值隨機,各次仿真結(jié)果不完全相同,但基本都能夠快速收斂至理想結(jié)果,取其中具有
8、普遍代表性的兩幅圖:Word完美格式可編輯版圖4隨機結(jié)果1圖5隨機結(jié)果2圖中紅線表示輸入階躍信號,藍線表示被控對象輸出2.改變參數(shù)對運行結(jié)果的影響及分析為了便于結(jié)果的對比,使每次的初始網(wǎng)絡權(quán)系