Дефазз с методом биссектриса, возвращающий неверный биссектрису - PullRequest
0 голосов
/ 22 декабря 2018

Я пытаюсь вычислить биссектрису данной области с помощью Matlab's Fuzzy Logic Toolbox, но, похоже, она не вычисляет правильную биссектрису.

x = 6:1:10;

res = trapmf(x,[6 7 7 8]);
mf2 = trapmf(x,[8 9 10 10]);
mf1 = max(0.25+0.25*res,0.25+0.25*mf2);

figure('Tag','defuzz');
plot(x,mf1,'LineWidth',3);
h_gca = gca;
h_gca.YTick = [0 .25 0.5] ;
ylim([0 0.75]);

x2 =  defuzz(x,mf1,'bisector');

gray = 0.7*[1 1 1];
h2 = line([x2 x2],[-0.4 1.2],'Color','k'); 
t2 = text(x2,-0.4,' bisector','FontWeight','bold');  

Это результат, который я получаю:

Вертикальная линия представляет биссектрису.

Кажется, это не биссектриса, или, по-видимому, я не знаю, что такое биссектриса.Я даже пытался изменить первую трапецию (биссектриса должна быть другой, потому что область изменилась), но линия просто не двигается.

...