RBF神經網絡逼近在線自適應控制(MATLAB實現之S函數模塊分析)

上次用了參考模型的方法用RBF神經網絡試了一下放到自適應控制模型上,其實跟蹤效果還可以,放大了有點不舒服就是了,差了一點點,然後看了看書的第四章,知道採用梯度下降法調整神經網絡權值,會容易陷入局部最優的情況,還不能保證閉環系統的穩定性,然後提出了用李雅普諾夫穩定判據分析的在線自適應神經網絡控制可以解決。

李雅普諾夫穩定判據是在本科現代控制理論有提到,運用構造的函數已經正定矩陣做判決判斷系統穩定性。

然後根據第四章公式推導,先是提出了一種在線自適應RBF控制器,具體源碼在這裏

有一個總體系統框圖
在這裏插入圖片描述在分析模型的時候先看到chap4_1ctrl模塊,裏面加入了一個.m文件,是一個S函數模塊
S函數模塊
模塊函數的輸入上看有4個量,t是採樣時間,x是狀態變量,u是輸入(是simulink模塊的輸入),flag是仿真過程中的狀態標誌

t:系統時間,在總模塊的左下方可以設定
x:系統狀態變量,這個狀態向量是系統的狀態向量,在函數中進行初始化和改變
u:模塊輸入,模塊前向的輸入向量參數,以上面的系統爲例,這裏輸入的是二維向量
flag:這是我最不能理解的地方,前面都好說,都可以找到源頭,flag是調用函數的標誌,但是是由simulink調用後自動取值,不用管

還有一個點,S函數的flag取值問題,在matlab自帶的系統函數sfuntmpl模塊(用edit sfuntmpl.m命令查看)有解釋,flag的取值只能取12349,所以在上面可以看到設定值意義。

具體RBF網絡以及系統構造細節在上面附上的源碼已經做好了註釋。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章