Why is the output u always 0.166instead of 0 when my input e and es are both 0

S
Sam Chak · Apr 28, 2023 · 1.9K views
Question
Why is the output not 0
Expert Answer
Profile picture of Prashant Kumar
Prashant Kumar PhD Expert
Answered Nov 20, 2025

The output value of 0.166 is derived using the Center of Area (CoA) defuzzification method. In the initial design stage, if the output range is [0, 1], it is natural to consider the leftmost magnitude as 0 and the rightmost as 1. When applying centroid defuzzification, the Mamdani Fuzzy Inference System (FIS) is unable to drive the output signal to the extremes of the range due to the design constraints. This is one inherent disadvantage of using the Mamdani fuzzy system. However, there is a workaround for Mamdani designers.

Example:

For instance, if the desired output range is [–2, 2], two solutions can be considered.

Solution 1: Switch to a Sugeno Fuzzy System and Use Singletons

This approach is straightforward and effective for driving the output signal to the range extremes. The singleton for the leftmost value is –2, and the singleton for the rightmost value is 2.

Solution 2: Adjust Output Range and Membership Functions

To remain with the Mamdani system, stretch the output range slightly (e.g., to [-2.17, +2.17]). Reshape the leftmost and rightmost membership functions by adjusting their parameters until the desired output is achieved. For fewer parameters to tune, consider using gaussMF (2 parameters), triMF (3 parameters), or trapMF (4 parameters).

Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!