日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Matlab 利用M文件产生模糊控制器

發布時間:2025/3/21 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Matlab 利用M文件产生模糊控制器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Matlab 利用M文件產生模糊控制器

有位朋友咨詢了一個問題,想要通過粒子群優化模糊控制的論域范圍,在這種情況下,就無法直接通過matlab的fuzzy工具箱來自動生成fis模糊文件,需要通過M文件生成模糊控制器,并寫成函數方便調用,

前期模糊控制和粒子群傳送門:

matlab模糊控制工具箱使用和模糊控制pid實例參考(一)

matlab模糊控制工具箱使用和模糊控制pid實例參考(二)

粒子群優化算法(PSO)

粒子群優化算法-Python版本和Matlab函數調用

給出一個樣例如下:

?

%%clcclose allclearFIS = newfis('FIS','sugeno');%%% 定義輸入E:FIS = addvar(FIS,'input','E',[-10 10]); FIS = addmf(FIS,'input',1,'Negative','gaussmf',[7 -10]); FIS = addmf(FIS,'input',1,'Positive','gaussmf',[7 10]); %%% 定義輸入CE: FIS = addvar(FIS,'input','CE',[-10 10]); FIS = addmf(FIS,'input',2,'Negative','gaussmf',[7 -10]); FIS = addmf(FIS,'input',2,'Positive','gaussmf',[7 10]); %%% 定義輸出u: FIS = addvar(FIS,'output','u',[-20 20]); FIS = addmf(FIS,'output',1,'Min','constant',-20); FIS = addmf(FIS,'output',1,'Zero','constant',0); FIS = addmf(FIS,'output',1,'Max','constant',20); %%% 定義規則:% 格式:輸入1~ 輸入2~ 輸出~ 權重(默認為:1)邏輯關系(1=and;2=or)ruleList = [1 1 1 1 1;... % Rule 1 1 2 2 1 1;... % Rule 2 2 1 2 1 1;... % Rule 3 2 2 3 1 1]; ?????FIS?=?addrule(FIS,ruleList);?

總結

以上是生活随笔為你收集整理的Matlab 利用M文件产生模糊控制器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。