Fuzzy Logic is a way of dealing with uncertainties using a degree of truth. Conventional logic helps us to denote if a certain premise X is either true or false. While the latter has been used successfully for logical conditioning in computer systems, it is not suitable for real world scenarios. Let’s say we have a water tap, with hot and cold knobs.

In the traditional way of describing the water, it can either be hot (1) or cold (0). However, this information does not represent the true nature of how hot or cold the water really is. Using fuzzy logic, we can denote with a degree of truth the temperature of water, which might be warm or comfortable, depending on the individual. In order to deal with the different degrees of truth, fuzzy logic uses membership functions. The different states will be represented in fuzzy set form.

As can be observed from the fuzzy representation, there are certain areas that overlap with each other meaning that for temperate X Celsius in the overlap between cold and warm, the water is cold however slowly transitioning to warm. It can also be noted that at the overlap region, a decision needs to be taken when to consider the water to be warm, or hot. This is where expert fuzzy systems are introduced, as someone with knowledge and experience on an area domain can establish these limiters. The range of temperature is known as the universe of discourse  for the system.

This information is then passed to the inference engine, and based on the rule base, a certain outcome is presented in the form of fuzzy sets. In order to make sense from the output, a defuzzifier translates the numerical value to something that the system can understand.  The most common approach for defuzzification is using a centre of gravity for the output of the membership functions. The result is crisp values that a specific system can act on.