df(x) =
where the membership values are computed for each input x, and the parameters a and c denote the logistic growth rate and the x-coordinate of the sigmoid’s midpoint, respectively. Then, the slope of the sigmoid at the midpoint
is one-fourth of the logistic growth rate.
Proof: Let m denote the slope of the sigmoid at its midpoint, and let the logistic growth rate be given by
. The slope of the sigmoid at a given point corresponds to the first derivative of the function at that point. The derivative of the logistic sigmoid function (also referred to as the logistic distribution) is given by
syms x a c m
%% logistic sigmoid function
a = 4*m;
f(x) = 1/(1 + exp(-a*(x - c)));
%% 1st-order derivative
df = simplify(diff(f), 'steps', 100)
This expression represents the slope of the tangent to the logistic sigmoidal curve at any point x. Substituting
(the midpoint) into the derivative yields
%% the slope at the midpoint x = c
dfc = subs(df, x, c)
Hence, the slope of the sigmoid at the midpoint is m, and since
, it follows that the slope at the midpoint is one-fourth of the logistic growth rate.
∎
Demo:
fis = mamfis;
fis = addInput(fis, [-1 +1], 'Name', 'x');
a = 8; % logistic growth rate
c = 0; % sigmoid’s midpoint
fis = addMF(fis, 'x', 'sigmf', [-a c], 'Name', 'N');
fis = addMF(fis, 'x', 'sigmf', [ a c], 'Name', 'P');
npt = 2001;
plotmf(fis, 'input', 1, npt), hold on
x = linspace(-1, 1, npt);
L1 = -a/4*x + 0.5; % Line 1: m·x + intercept_at_y_axis
L2 = a/4*x + 0.5; % Line 2
plot(x, [L1; L2]), grid on, hold off
text(-0.4-0.04, 1.05, 'L1')
text( 0.4-0.04, 1.05, 'L2')
ylim([-0.2, 1.2])
title('Logistic Sigmoidal Membership Functions')
