Error while using fuzzy logic command-evalfis
Show older comments
On using the following command
FIS = readfis('fuzzy.fis');
FIS.input.range = pmax;
[Y,IRR,ORR,ARR]=evalfis(X,FIS);% X and Y are row matrices
The error looks like ??? Error using ==> evalfismex Calloc error in fisCreateMatrix!
Error in ==> evalfis at 84 [output,IRR,ORR,ARR] = evalfismex(input, fis, numofpoints);
What may be the possible reason of this error and how can I remove it?
3 Comments
siddhant soni
on 12 Aug 2014
"Calloc error" in fuzzy logic appears when fuzzy rules are not set or any of fis structure field is empty. Check the fuzzy fis structure none of its field should be empty. example:
name: 'fuzzy_ex'
type: 'mamdani'
andMethod: 'min'
orMethod: 'max'
defuzzMethod: 'centroid'
impMethod: 'min'
aggMethod: 'max'
input: [1x3 struct]
output: [1x1 struct]
rule: [1x27 struct]
yesm d
on 27 Apr 2016
I would like to evalute not only a variable but a fuzzy set ("observation") it is possible ?
Gagandeep Sahib
on 16 Feb 2017
one possibility of this error is that..... after defining rules matrix you have not added rules to the FIS.... which is done using
a=addrule(a,ruleList);
where a is any FIS ruleList is rule matrix
Answers (1)
Jan
on 24 Mar 2012
"Calloc error" appears only, if the memory is exhausted. Check this by:
feature memstats
Categories
Find more on Fuzzy Logic in Simulink in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!