从数据中生成模糊推理系统对象
使用给定输入和输出数据的网格分区返回单输出Sugeno模糊推理系统(FIS)。金融中间人
= genfis(输入数据
,outputData
)
返回使用指定的输入/输出数据和生成的FIS金融中间人
= genfis(输入数据
,outputData
,选项
)选项
.可以使用网格划分、减法聚类或模糊c均值(FCM)聚类生成模糊系统。
定义培训数据。
inputData = [rand(10,1) 10*rand(10,1)-5];outputData =兰德(10,1);
生成一个模糊推理系统。
FIS = Genfis(InputData,OutputData);
生成的系统,金融中间人
,使用默认选项的网格分区创建。
定义培训数据。
inputData = [rand(10,1) 10*rand(10,1)-5];outputData =兰德(10,1);
创建一个默认的genfisOptions
选项设置用于网格分区。
选择= genfisoptions('gridpartition');
为生成的FIS指定以下输入成员函数:
3.
第一个输入变量的高斯隶属函数
5
第二个输入变量的三角形成员函数
opt.nummbershipfunctions = [3 5];Opt.InputmembershipFunctionType = [“Gaussmf”“trimf”];
生成金融中间人。
FIS = Genfis(InputData,OutputData,OPT);
绘制输入隶属函数。每个输入变量都具有指定的数字和类型的输入成员函数,均匀分布在其输入范围内。
[x,mf] = plotmf(fis,“输入”1);次要情节(2,1,1)情节(x, mf)包含(“输入1 (gaussmf)”)[x,mf] = plotmf(fis,“输入”2);次要情节(2,1,2)情节(x, mf)包含(“输入2 (trimf)”)
获取输入和输出培训数据。
负载clusterdemo.dat.inputData = clusterdemo (:, 1:2);outputData = clusterdemo (: 3);
创建一个genfisOptions
选项设置并指定每个数据维度的影响范围。指定0.5
和0.25
作为第一和第二输入变量的影响范围。指定0.3
作为输出数据的影响范围。
选择= genfisoptions(“SubtractiveClustering”,...'clusterinfluencerange'[0.5 0.25 0.3]);
生成金融中间人。
FIS = Genfis(InputData,OutputData,OPT);
生成的FIS为每个集群包含一条规则。
Showrule(FIS)
ANS =.3x83 char array.“1。If (in1 is in1cluster1 and (in2 is in2cluster1) then (out1 is out1cluster1)(1)' '2。If (in1 is in1cluster2) and (in2 is in2cluster2) then (out1 is out1cluster2) (1)' 'If (in1 is in1cluster3 and (in2 is in2cluster3) then (out1 is out1cluster3) (1)'
获取输入输出数据。
负载clusterdemo.dat.inputData = clusterdemo (:, 1:2);outputData = clusterdemo (: 3);
创建一个genfisOptions
选项设置为FCM集群,指定Mamdani FIS类型。
选择= genfisoptions('fcmclmerting','瘘管','mamdani');
指定群集数。
opt.numclusters = 3;
抑制到命令窗口的迭代信息的显示。
opt.verbose = 0;
生成金融中间人。
FIS = Genfis(InputData,OutputData,OPT);
生成的FIS为每个集群包含一条规则。
Showrule(FIS)
ANS =.3x83 char array.“1。If (in1 is in1cluster1 and (in2 is in2cluster1) then (out1 is out1cluster1)(1)' '2。If (in1 is in1cluster2) and (in2 is in2cluster2) then (out1 is out1cluster2) (1)' 'If (in1 is in1cluster3 and (in2 is in2cluster3) then (out1 is out1cluster3) (1)'
绘制输入和输出隶属函数。
[x,mf] = plotmf(fis,“输入”1);次要情节(1,1)情节(x, mf)包含('输入1'的会员函数)[x,mf] = plotmf(fis,“输入”2);子图(3,1,2)绘图(x,mf)xlabel('输入2'的会员函数)[x,mf] = plotmf(fis,“输出”1);次要情节(3、1,3)情节(x, mf)包含('输出的成员函数')
要从输入/输出数据创建Type-2 FIS,您必须首先使用Type-1 FIS使用Genfis.
.
负载训练数据并使用减数聚类生成FIS。
负载clusterdemo.dat.inputData = clusterdemo (:, 1:2);outputData = clusterdemo (: 3);选择= genfisoptions(“SubtractiveClustering”,...'clusterinfluencerange'[0.5 0.25 0.3]);fisT1 = genfis (inputData outputData,选择);fisT1。输出
ANS = FISVAR具有属性:名称:“OUT1”范围:[-0.1274 1.1458]隶属度功能:[1x3 Fismf]
将生成的FIS转换为类型2 FIS。
fisT2 = convertToType2 (fisT1);
由于初始类型-1 FIS是Sugeno系统,因此仅将输入MFS转换为Type-2 MFS。
输入数据
- - - - - -输入数据输入数据,指定为一个N列的数组,N为FIS输入的个数。
输入数据
和outputData
必须有相同的行数。
outputData
- - - - - -输出数据输出数据,指定为米列的数组,米是FIS输出的数量。
使用网格分区时,outputData
必须有一列。如果为网格分区指定多个列,Genfis.
使用第一列作为输出数据。
输入数据
和outputData
必须有相同的行数。
选项
- - - - - -FIS代选择genfisOptions
选项设置FIS生成选项,指定为agenfisOptions
选项集。如果您未指定选项
,Genfis.
使用默认的网格分区选项集。
您可以使用以下方法之一生成模糊系统,您可以在创建选项集时指定:
网格划分——通过统一划分输入变量范围,生成输入隶属函数,并创建一个单输出Sugeno模糊系统。对于每个输入隶属函数组合,模糊规则库包含一条规则。
选择= genfisOptions ('gridpartition');
减数集群 - 使用隶属函数和使用从输入和输出数据的减法聚类找到的数据集群导出的规则生成Sugeno模糊系统。有关减去集群的更多信息,请参阅subclust
.
选择= genfisOptions (“SubtractiveClustering”);
FCM聚类-使用隶属函数和规则生成一个模糊系统,这些隶属函数和规则来源于使用FCM聚类的输入和输出数据的数据聚类。有关FCM集群的更多信息,请参见FCM.
.
选择= genfisOptions ('fcmclmerting');
金融中间人
-模糊推理系统Mamfis.
对象|Sugfis.
对象模糊推理系统,作为一个返回Mamfis.
或Sugfis.
对象。的属性金融中间人
取决于使用的集群类型和相应的选项
.
聚类类型 | 模糊系统类型 | 输入隶属度函数 | 模糊规则 | 输出隶属度函数 |
---|---|---|---|---|
网格划分 | Sugeno | 每个输入变量具有均匀分布的输入成员函数。使用使用的成员函数数量选择 .指定隶属函数类型使用选项。InputMembershipFunctionType . |
每个输入成员函数组合有一条规则。每个规则的结果对应于一个不同的输出成员函数。 | 每个模糊规则的一个输出成员函数。指定隶属函数类型使用选项。OutputMembershipFunctionType . |
减数集群 | Sugeno | 每个输入变量都有一个'Gaussmf' 输入每个模糊聚类的隶属函数。 |
每个模糊群集的一个规则 | 每个输出变量都有一个“线性” 每个模糊群集的输出隶属函数。 |
FCM集群 | Mamdani或Sugeno. | 每个输入变量都有一个'Gaussmf' 输入每个模糊聚类的隶属函数。 |
每个模糊群集的一个规则 | 对于每个模糊聚类,每个输出变量都有一个输出隶属函数。成员函数类型为'Gaussmf' 对于mamdani系统和“线性” Sugeno系统。 |
如果金融中间人
是一个单输出Sugeno系统,您可以使用ANFIS.
函数。
不支持生成type-2 FIS金宝appGenfis.
.相反,生成1型FIS并使用该类型的FIS转换convertTotype2.
函数。
警告从R2019B开始
金宝app在未来的版本中,将不再支持将模糊推理系统表示为结构。使用Mamfis.
和Sugfis.
反对者。这些表示之间需要更新的代码之间存在差异。这些差异包括:
对象属性名称与相应的结构字段不同。
对象将文本数据存储为字符串而不是作为字符向量。
此外,所有作为结构接受或返回模糊推理系统的Fuzzy Logic Toolbox™函数现在接受并返回任意一个Mamfis.
或Sugfis.
对象。
要将现有的模糊推理系统结构转换为对象,请使用convertfis
函数。
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。