关于Neuro-Fuzzy Designer的使用

       在学习智能控制的过程中,发现对于matalab的Neuro-Fuzzy Designer使用方法的介绍不是很多,所以个人把自己在实践过程中的一些经验记录下来。

       要求使用2014b及后面的matlab版本。

       首先在matlab命令行中help anfis,可以看到genfis1和anfis的使用例程。

关于Neuro-Fuzzy Designer的使用_第1张图片

       此程序中生成了fis,并利用数据对fis进行训练,程序很简单,在此不再详细解释。Designer的好处是不需要代码能很直观看出训练效果。

  下面开始记录我的经历。

我的数据程序,大部分是无用的,只是为了保证例程的完整性,所以未删除。只需用到生成的trnData和checkData两个dat文件。

clear;
X1=(0:.2:20);
R1 = normrnd(0,0.01,1,101);
x1=X1+R1;
y1=sin(2*x1)./exp(x1/10);
nummfs=5;
trnData=[x1',y1'];

X2=(0:.1:10);
x2=X2+R1;
y2=sin(2*x2)./exp(x2/10);
checkData=[x2',y2'];
epoch_n=100;
save('test1.dat','x1','y1','-ascii');
save('check1.dat','x2','y2','-ascii');
in_fis=genfis1(trnData,nummfs,'gaussmf');
out_fis=anfis(trnData,in_fis,epoch_n);
plot(x1,y1,'o',x1,evalfis(x1',out_fis),'k');
legend('Trainning Data','ANFIS Output');

程序运行之后,可以看到工作区的数据。

关于Neuro-Fuzzy Designer的使用_第2张图片

在命令行执行anfisedit或者 neuroFuzzyDesigner,效果相同,均可调出Designer,因为matlab的文档里有说明,在R2014b之后的版本变化。

 

R2014b

New Features, Bug Fixes

collapse all

Commands to open Fuzzy Logic Designer and Neuro-Fuzzy Designer renamed

fuzzy is renamed to fuzzyLogicDesigner. Use this command to open the Fuzzy Logic Designer app.

anfisedit is renamed to neuroFuzzyDesigner. Use this command to open the Neuro-Fuzzy Designer app.

调出Designer之后,分别从工作空间加载训练和测试数据

之后生成FIS,在此选择隶属度函数类型和个数

然后,可从左上角工具栏edit-Membership functions查看生成的隶属度函数

然后修改误差范围和训练次数,可以看到误差变化。

最后可利用test,查看模型与输入数据的对比效果。

 

本次只记录Designer各个模块的功能,功能很强,继续探索,继续完善。

 

 

 

 

 

你可能感兴趣的:(fuzzy)