I'm using MATLAB ANFIS to train a FIS generated by FCM (using genfis3). The problem is that the resulting FISs (both the trained and validated ones) have all membership function parameters =0 (gaussian MF with centers and sigma's set to 0). This only happens with a specific data set I use. The FIS generated using genfis3 has normal (nonzero) MF parameters. Why does this happen? Is there a way to avoid it (like adjusting some ANFIS parameters or options)?
Edit: Here is the code, it is simple
Gfismat = genfis3(TrnDataIn, TrnDataOut, 'sugeno', 2);
[fis,error,stepsize,chkFis,chkErr] = anfis([TrnDataIn TrnDataOut] ,Gfismat,[],[],[ValDataIn ValDataOut]);
When evaluating fis or chkFis I get the error:
Error using evalfismex
Illegal parameters in fisGaussianMF() --> sigma = 0
Inspecting fis and chkFis:
fis.input(1).mf.params
ans =
0 0
ans =
0 0
However, the fis generated using genfis3 has the following MF values:
Gfismat.input(1).mf.params
ans =
0.1542 0.3622
ans =
0.1111 0.3130