I am working with a fuzzy logic problem and if I do automf with arguments(3,5,7) then the graph made is weird and it causes "AssertionError: Total area is zero in defuzzification!" error. So, I thought maybe I am making a wrong membership function and decided to make a custom MF. But I can't make a good one, is there any rule to make such custom functions? The one I am making gives mixed and haphazard lines. This is the custom part that I am doing:-
T22['cold']=fuzz.trimf(PP.universe, [20, 26, 34])
T22['warm']=fuzz.trimf(PP.universe, [22, 27, 31])
T22['hot']=fuzz.trimf(PP.universe, [0, 25, 34])
I want the graph to be like this:-
Can anyone please by looking at the given graph tell me the right values to put in the above given code? Any help will be highly appreciated.