Processing a list of inputs into a fuzzy logic system

5 Ansichten (letzte 30 Tage)
John
John am 2 Jul. 2012
Hello,
I have set up a Fuzzy logic system which takes 2 inputs and produces one output. To evaluate one set of inputs (1,2) you would use the code
Model = readfis ('tipper');
evalfis([1 2], Model)
My question is, say for example I had a .mat file with 100 pairs of inputs called input.mat. Would I use a function to pass all these inputs into the fuzzy model and produce an output file with the output? Would anybody be able to help with the function (point 3):
Would it be something like this:
1. I would load the fuzzy logic model
Model = readfis ('tipper');
2. Load the inputs - input.mat
3. Pass it into a function
function [input]
evalfis('input', Model);
Thank you
John

Akzeptierte Antwort

Arkadiy Turevskiy
Arkadiy Turevskiy am 2 Jul. 2012
Bearbeitet: Arkadiy Turevskiy am 2 Jul. 2012
Have you seen the doc page for evalfis, specifically this part:
evalfis has the following arguments:
  • Input: a number or a matrix specifying input values. If input is an M-by-N matrix, where N is number of input variables, then evalfis takes each row of input as an input vector and returns the M-by-L matrix to the variable, output, where each row is an output vector and L is the number of output variables.
As the doc says make your input argument a matrix of 100X2, and everything works.
For example:
Model = readfis ('tipper');
U=ones(100,2);
U(:,2)=10*rand(size(U(:,2)));
Y=evalfis(U, Model);
HTH.
Arkadiy

Weitere Antworten (0)

Kategorien

Mehr zu Fuzzy Logic in Simulink finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by