300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Matlab 利用M文件产生模糊控制器

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

时间:2020-09-18 14:25:35

相关推荐

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 11 2 2 1 1;... % Rule 22 1 2 1 1;... % Rule 32 2 3 1 1];FIS=addrule(FIS,ruleList);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。