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

Illustration
Sam Chak - 2023-04-28T12:09:53+00:00
Question: Why is the output u always 0.166instead of 0 when my input e and es are both 0

Why is the output not 0

Expert Answer

Profile picture of Prashant Kumar Prashant Kumar answered . 2025-11-20

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).


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!