基于BP神經(jīng)網(wǎng)絡(luò )的PID控制器及仿真
1.引言
PID(比例-積分-微分)控制器作為最早實(shí)用化的控制器已有50多年歷史,因其具有算法簡(jiǎn)單、魯棒性好、可靠性高、直觀(guān)性好等優(yōu)點(diǎn)被廣泛的應用于工業(yè)過(guò)程控制及運動(dòng)控制中[1]。常規PID控制效果的優(yōu)劣,不僅僅取決于控制系統模型的精確程度,還必須調整好三個(gè)參數的關(guān)系,而這種關(guān)系不一定是簡(jiǎn)單的線(xiàn)性組合。實(shí)際的工業(yè)過(guò)程及運動(dòng)過(guò)程往往具有時(shí)變性、變參數、變結構等不確定性及很強的非線(xiàn)性,精確的數學(xué)模型難以建立,此外,常規PID還有實(shí)現在線(xiàn)調整困難,參數間相互影響,參數整定時(shí)間長(cháng)等缺點(diǎn),難以取得理想的控制效果。
隨著(zhù)控制理論的發(fā)展,將應用廣泛的PID控制器與智能控制理論相結合[2]成為智能控制研究的新方向,神經(jīng)網(wǎng)絡(luò )算法具有逼近任意非線(xiàn)性表達能力,很強的自學(xué)習能力和概括推廣能力,在解決高度非線(xiàn)性和不確定系統方面有很大的的潛能,應用神經(jīng)網(wǎng)絡(luò ),可以從復雜的PID三個(gè)參數組合中尋求最佳的線(xiàn)性組合,使神經(jīng)網(wǎng)絡(luò )和PID本質(zhì)結合。從而使得控制器具有較好的自適應性,實(shí)現參數的自動(dòng)實(shí)時(shí)調節,適應過(guò)程的變化,提高系統了的魯棒性和可靠性。
2.BP神經(jīng)網(wǎng)絡(luò )
2.1BP神經(jīng)網(wǎng)絡(luò )的構成及設計[3]
BP神經(jīng)網(wǎng)絡(luò )是一種具有三層或三層以上的神經(jīng)網(wǎng)絡(luò ),包括輸入層、隱含層、輸出層,上下層之間實(shí)現全連接,而每層神經(jīng)元之間無(wú)連接。當一對學(xué)習樣本提供給網(wǎng)絡(luò )后,神經(jīng)元的激活值從輸入層經(jīng)各中間層向輸出層傳播,在輸出層的各神經(jīng)元獲得網(wǎng)絡(luò )的輸入響應。接下來(lái),按照減少目標輸出與實(shí)際誤差的方向,從輸出層經(jīng)過(guò)各中間層逐層修正各連接權值,最后回到輸入層,這種算法即BP算法。隨著(zhù)這種誤差逆的傳播修正不斷進(jìn)行,網(wǎng)絡(luò )對輸入模式響應的正確率也不斷上升。
(1)輸入輸出層的設計
輸入層的設計可以根據需要求解的問(wèn)題和數據表示方式確定,若輸入信號為模擬波形,那么輸入層可以根據波形的采樣點(diǎn)數目撅腚輸入單元的維數,也可以用一個(gè)單元輸入,這是輸入樣本為采樣的時(shí)間序列。輸出層的維數可以根據使用者的要求確定。如果BP網(wǎng)絡(luò )用作分類(lèi)器,類(lèi)別模式一共有m個(gè),那么輸出層神經(jīng)元的個(gè)數為m或者。
(2)隱層的設計
隱層單元的數目與問(wèn)題的要求、輸入/輸出單元的數目都有直接的關(guān)系,隱單元的數目太多會(huì )導致學(xué)習時(shí)間過(guò)長(cháng)、誤差不一定最佳,也會(huì )導致容錯性差、不能識別以前沒(méi)有的樣本等等,因此,一定存在一個(gè)最佳的隱單元數,通常用以下三個(gè)公式來(lái)選擇最佳隱單元數:
1),其中k為樣本數,n為輸入單元數。
2),其中m為輸出神經(jīng)元數,n為輸入單元數,a為[1,10]之間的常數。
3),其中n為輸入單元數。
2.2 典型神經(jīng)網(wǎng)絡(luò )結構
一個(gè)典型的三層神經(jīng)網(wǎng)絡(luò )結構如下圖所示:
圖1 BP神經(jīng)網(wǎng)絡(luò )結構圖
其中: 、 、…、 為 BP網(wǎng)絡(luò )的輸入; 、 、…、 為 BP網(wǎng)絡(luò )的輸出,對應PID控制器的三個(gè)參數;為輸層到隱含層的連接權值;
為隱含層到輸出層的連接權值。通過(guò)神經(jīng)網(wǎng)絡(luò )的自學(xué)習、加權系數的調整,使神經(jīng)網(wǎng)絡(luò )輸出對應于某種最優(yōu)控制規律下的PID控制器參數。
圖一中各參數之間的關(guān)系[4]如下:
輸入層:
隱含層:
輸出層:
取性能指標為:,按照梯度下降法修正網(wǎng)絡(luò )的權值,使
最小,修正方法如下:
隱含層:
輸出層:
pid控制器相關(guān)文章:pid控制器原理
評論