newfis.m

Package [view]: fuzzy.rar
Upload User: hnchenxi
Upload Date: 2008-11-02
Package Size: 1083k
Code Size: 1k
Category: AI-NN-PR
Development Platform: Matlab
  1. function out=newfis(fisName,fisType,andMethod,orMethod,impMethod,aggMethod,defuzzMethod)
  2. %NEWFIS Create new FIS.
  3. %   FIS=NEWFIS(FISNAME) creates a new Mamdani-style FIS structure
  4. %
  5. %   FIS=NEWFIS(FISNAME, FISTYPE) creates a FIS structure for a Mamdani or 
  6. %   Sugeno-style system with the name FISNAME.
  7. %
  8. %   FIS=NEWFIS(FISNAME, FISTYPE, andMethod, orMethod, impMethod, ...
  9. %              aggMethod, defuzzMethod)
  10. %   specifies the methods for AND, OR, implication, aggregation, and 
  11. %   defuzzification, respectively.
  12. %
  13. %   See Also
  14. %       readfis, writefis
  15. %
  16. %   Kelly Liu 4-5-96 
  17. %   Copyright 1994-2002 The MathWorks, Inc. 
  18. %   $Revision: 1.18 $  $Date: 2002/04/02 21:25:12 $
  19. if (nargin>=1), name=fisName; end
  20. if (nargin<2), fisType='mamdani'; else, fisType = fisType; end
  21. if strcmp(fisType,'mamdani'),
  22.     if (nargin<3), andMethod='min'; end
  23.     if (nargin<4), orMethod='max'; end
  24.     if (nargin<7), defuzzMethod='centroid'; end
  25. end
  26. if (nargin<5), impMethod='min'; end
  27. if (nargin<6), aggMethod='max'; end
  28. if strcmp(fisType,'sugeno'),
  29.     if (nargin<3), andMethod='prod'; end
  30.     if (nargin<4), orMethod='probor'; end
  31.     if (nargin<7), defuzzMethod='wtaver'; end
  32. end
  33. out.name=name;
  34. out.type=fisType;
  35. out.andMethod=andMethod;
  36. out.orMethod=orMethod;
  37. out.defuzzMethod=defuzzMethod;
  38. out.impMethod=impMethod;
  39. out.aggMethod=aggMethod;
  40. % Create default values for the FIS structure input output and rule
  41. out.input=[];
  42. out.output=[];
  43. out.rule=[];