模糊控制m文件
(2013-08-14 22:18:08)分类: 学 |
b=newfis('upfc1');
%建立新的FIS系统%
writefis(b,'upfc2');
%将名为fis的模糊控制系统保存到磁盘%
b=readfis('upfc2');
%从磁盘中读取名为fis的模糊控制系统%
b=addvar(b,'input','w',[-1 1]);
%给FIS添加新的输入变量e%
b=addvar(b,'input','w1',[-1 1]);
%给FIS添加新的输入变量ec%
b=addvar(b,'output','k',[0 50]);
%给FIS添加新的输入变量u%
b=addmf(b,'input',1,'NB','gaussmf',[0.2 -1]);
%将隶属度函数PL添加到FIS%
b=addmf(b,'input',1,'NS','gaussmf',[0.2 -0.3333]);
%将隶属度函数PM添加到FIS%
b=addmf(b,'input',1,'PS','gaussmf',[0.2 0.3333]);
%将隶属度函数PS添加到FIS%
b=addmf(b,'input',1,'PB','gaussmf',[0.2 1]);
%将隶属度函数P0添加到FIS%
b=addmf(b,'input',2,'NB','gaussmf',[0.2 -1]);
%将第二个输入的隶属度函数PL添加到FIS%
b=addmf(b,'input',2,'NS','gaussmf',[0.2 -0.5]);
%将第二个输入的隶属度函数PM添加到FIS%
b=addmf(b,'input',2,'0','gaussmf',[0.05 0]);
%将第二个输入的隶属度函数PS添加到FIS%
b=addmf(b,'input',2,'PS','gaussmf',[0.2 0.5]);
%将第二个输入的隶属度函数0添加到FIS%
b=addmf(b,'input',2,'PB','gaussmf',[0.2 1]);
%将第二个输入的隶属度函数NS添加到FIS%
b=addmf(b,'output',1,'S','gaussmf',[7 0]);
%将输出的隶属度函数PL添加到FIS%
b=addmf(b,'output',1,'M','gaussmf',[6 25]);
%将输出的隶属度函数PM添加到FIS%
b=addmf(b,'output',1,'B','gaussmf',[7 50]);
%将输出的隶属度函数PS添加到FIS%
rulelist=[1 1 3 1 1;1 2 3 1 1;1 3 2 1 1;1 4 2 1 1;1 5 1 1
1;
b=addrule(b,rulelist);
%在FIS中添加规则%
writefis(b,'upfc2');
%将名为fis的模糊控制系统保存到磁盘%
b=setfis(b,'defuzzmethod','mom');
%采用mom(极大平均法)进行反模糊化
% showfis(b);