Этот пример показывает, как отобразить 11 функций принадлежности, поддержанных в Нечеткой логике Toolbox�.
Задайте функции принадлежности.
mf = [... fismf('trapmf',[-19 -17 -12 -7]) ... fismf('gbellmf',[3 4 -8]) ... fismf('trimf',[-9 -1 2]) ... fismf('gaussmf',[3 5]) ... fismf('gauss2mf',[3 10 5 13]) ... fismf('smf',[11 17]) ... fismf('zmf',[-18 -10]) ... fismf('psigmf',[2 -11 -5 -4]) ... fismf('dsigmf',[5 -3 1 5]) ... fismf('pimf',[0 7 11 15]) ... fismf('sigmf',[2 15]) ... ];
Для получения дополнительной информации о различных функциях принадлежности и их параметрах, смотрите их соответствующие страницы ссылки на функцию.
Оцените функции принадлежности.
x = linspace(-20,20,201); y = evalmf(mf,x);
Постройте оцененные функции принадлежности с метками.
subplot(2,1,1); plot(x,y(1:6,:)'); axis([min(x) max(x) 0 1.2]); text((mf(1).Parameters(2)+mf(1).Parameters(3))/2,1.1,mf(1).Type,... 'horizon','center'); text(mf(2).Parameters(3),1.1,mf(2).Type,... 'horizon','center'); text(mf(3).Parameters(2),1.1,mf(3).Type,... 'horizon','center'); text(mf(4).Parameters(2),1.1,mf(4).Type,... 'horizon','center'); text((mf(5).Parameters(2)+mf(5).Parameters(4))/2,1.1,mf(5).Type,... 'horizon','center'); text(mf(6).Parameters(2), 1.1,mf(6).Type,... 'horizon','center'); h_gca = gca; h_gca.XTick = []; subplot(2,1,2); plot(x,y(7:11,:)'); axis([min(x) max(x) 0 1.2]); text(mf(7).Parameters(1),1.1,mf(7).Type,... 'horizon','center'); text((mf(8).Parameters(2)+mf(8).Parameters(4))/2,1.1,mf(8).Type,... 'horizon','center'); text((mf(9).Parameters(2)+mf(9).Parameters(4))/2,1.1,mf(9).Type,... 'horizon','center'); text((mf(10).Parameters(2)+mf(10).Parameters(3))/2,1.1,mf(10).Type,... 'horizon','center'); text(mf(11).Parameters(2),1.1,mf(11).Type,... 'horizon','center'); h_gca = gca; h_gca.XTick = [];