Error with evalfis function
4 views (last 30 days)
Show older comments
When I run evalfis, I get the following error "Error using evalfismex Illegal parameters in fisTrapezoidMf() --> b > c". Can you please help?
3 Comments
Answers (1)
Walter Roberson
on 5 Feb 2018
It sounds as if you are calling fisTrapezoidMf with three parameters in which the second parameter is greater than the third parameter, but that routine needs the third parameter to be greater than the second parameter.
8 Comments
Walter Roberson
on 16 Feb 2018
None of those values matter in themselves for this purpose. What matters is that you need a linear constraint to prevent the third parameter from being less than the second parameter. In terms of A, b linear inequalities, that would look like
A = [1 -1 0 0;
0 1 -1 0;
0 0 1 -1]
b = [0; 0; 0]
The above permits the values to be exactly equal. Getting a strict inequality is tricky because of round-off error, but you could often approximate by setting b to -eps in each location instead of 0
See Also
Categories
Find more on Fuzzy Inference System Tuning in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!