I am trying to develop a neuro-fuzzy model for classifying two activity states from movement attributes.
I tried this earlier with Mamdani fuzzy where the rules look like as follows- "IF speed is less and change in acceleration is less and direction change is less THEN chance of being rest is high and chance of walking is less." and like this...there are some 12 rules.
As you can see this fuzzy rule has 3 antecedent variables and 2 consequent variables so we can call it a multiple-input multiple-output or MIMO structure.
I also developed another model in Neural network with these 3 inputs and 2 outputs in weka through multilayer perceptron. where I directly used the categorical values and the model worked perfect. so far so good.
Now the problem is I am trying to develop a neuro-fuzzy model (ANFIS in matlab) using the same three inputs and given outputs. However, as we know MATLAB ANFIS supports only one sugeno type zero order or 1st order output (class) for each record. Existing ANFIS allows mapping 'n' number of inputs to 1 output and that too with nominal or numerical value (no support for categorical data). If I use some nominal value for respective categorical data (say for rest 1 and walk 0) during learning phase the model is tuning the function parameters and on test data the output values are becoming too unreasonable (sometimes the values are floating, or beyond 0 ,1). Don't know how can I address this issue in Neuro-fuzzy. But it seems Matlab doesn't allow MIMO structure. So far all the neuro-fuzzy examples I found used a single output (defined on a continuous function and hence there is no problem with the float values). I want something like- "IF speed is less and change in acceleration is less and direction change is less THEN chance of being rest is 100 and chance of walking is 0." (see outputs are both constant and thus satisfy zero order Sugeno type) Is there any neuro-fuzzy tool which allows to model multiple outputs?