评价模糊推理系统
加载金融中间人。
fis = readfis (“蒂珀”);
指定输入组合以使用每个输入组合的一行数进行评估。
输入= [2 1;4 5;7 8];
计算指定输入组合的FIS。
输入输出= evalfis (fis)
输出=3×17.0169 14.4585 20.3414
每一排输出
解模糊的输出值是否为对应的行输入
.
加载金融中间人。
fis = readfis (“蒂珀”);
创建一个evalfisOptions.
选项集,指定输出模糊集中的样本数。
选择= evalfisOptions (“NumSamplePoints”,50);
使用此选项集评估FIS。
输出= evalfis(FIS,[2 1],选项);
创建一对Mamdani模糊推理系统。
fis1 = mamfis (“名字”,'fis1',“NumInputs”2,'numoutputs'1);fis2 = mamfis (“名字”,'fis2',“NumInputs”2,'numoutputs'1);
定义两者之间的连接。
反对= [“fis1 / output1”“fis2 / input1”];
创建一个模糊推理系统树。
if ([fis1, fis2]) = firee ([fi1, fi2]);
创建一个evalfisOptions.
选项集,指定输出模糊集中的样本数。
选择= evalfisOptions (“NumSamplePoints”,50);
评估fistree
对象,使用指定的输入组合和此选项集。
y = evalfis(树,[0.5 0.2 0.7],选项)
y = 0.1553
加载金融中间人。
fis = readfis (“蒂珀”);
评估FIS,并返回中间推断结果。
[output,fuzzifiedIn,ruleOut,aggregatedOut,ruleFiring] = evalfis(fis,[2 1]);
您可以检查中间结果,以理解或可视化模糊推理过程。例如,查看聚合输出模糊集,即evalfis
去模糊以找到输出值。同时,绘制解模糊的输出值。
fis.output.range outputRange = linspace (fis.output.range(1),(2),长度(aggregatedOut)) ';plot(outputRange,aggregatedOut,[output output],[0 1]) xlabel()'小费')ylabel('产出成员资格')传说(聚合输出模糊集,“Defuzzified输出”)
的长度aggregatedOutput
对应用于离散化输出模糊集的采样点个数。
创建类型2 Mamdani模糊推理系统。
fis = mamfistype2 (“NumInputs”2,'numoutputs'1);
当第一个输入为时,计算FIS0.4
第二个输入是0.72
.
输出= evalfis(fis,[0.4 0.72])
输出= 0.1509.
type-2 FIS的输出是一个清晰的值。
当您为二类FIS获得中间模糊推理结果时,您将获得使用上、下MF值生成的中间结果。例如,获取中间模糊化输入值。
[output,fuzzifiedInput] = evalfis(fis,[0.5 0.75]);
查看模糊的输入值。
fuzzifiedInpul.
fuzzifiedInput =9×40 0 0 0 1.0000 0 1.0000 0 0 0 0 0 0 0 0 0 0 0.0 0 0 0.0 0.20 0.2500 1.0000 0.4000 1.0000 0.2500 0 0.4000 0 0.2500 0 0.4000 0 0.2500 1.0000 0.4000 1.0000 0.2500 0 0.4000 0 0.2500 0 0.4000 0 0.2500 0 0.4000 0 0.2500
前两列包含基于每个输入的上MF的第一个和第二个输入的模糊值。第二列包含每个输入基于较低MF的模糊值。
金融中间人
- - - - - -模糊推理系统mamfis
对象|Sugfis.
对象|Mamfistype2.
对象|sugfistype2
对象|fistree
对象待评估的模糊推理系统,指定为下列之一:
mamfis
对象 - Mamdani模糊推理系统
Sugfis.
对象- Sugeno模糊推理系统
Mamfistype2.
对象 - Type-2 Mamdani模糊推理系统
sugfistype2
对象 - 2型Sugeno模糊推理系统
fistree
互连模糊推理系统的对象树
输入
- - - - - -输入值输入值,指定为一个米——- - - - - -NU阵列,其中NU是输入变量的数量金融中间人
和米是评估的输入组合数量。
evalfis
金宝app支持双精度或单精度输入值。
选项
- - - - - -评估选择evalfisOptions.
对象参数指定的evalfisOptions.
对象。
fuzzifiedIn
—输入值模糊化模糊的输入值,以数组形式返回。
当金融中间人
是一类模糊推理系统,fuzzifiedIn
是一个NR——- - - - - -NU阵列,其中NR规则的数量在吗金融中间人
.元素(我,j) 的fuzzifiedIn
的输入成员函数的值是j输入的输入我规则。
当金融中间人
是一个2型模糊推理系统,fuzzifiedIn
是一个NR- (2 *NU)数组。第一个NU列包含每个规则的上成员函数的模糊值,以及最后一个NU列包含来自较低成员函数的模糊值。
如果输入
指定多个输入组合,然后指定fuzzifiedIn
对应于最后一行中的组合输入
.
有关采用模糊输入值的更多信息,请参阅Fuzzify输入.
不支持此输出参数金宝app金融中间人
是一个fistree
对象。
消除
- 规则输出规则输出,作为数组返回。要获取每个规则的输出,evalfis
使用中指定的含义方法将规则前件的触发强度应用到输出隶属度函数金融中间人
.
当金融中间人
是1型Mamdani系统,消除
是一个N年代————(NRNY)数组,NR是规则的数量,NY是输出的数量,和N年代用于计算输出变量范围的样本点的数量。每一列的消除
包含一个规则的输出模糊集。第一个NR列包含第一个输出变量的规则输出,下一个输出变量NR列对应于第二输出变量等。
当金融中间人
是一个类型的mamdani系统,消除
是一个N年代- (2 *NR*NY)数组。第一个NR*NY列包含使用上层成员函数和最后一个成员函数生成的规则输出NR*NY列包含使用较低的成员关系函数生成的规则输出。
当金融中间人
是一个类型-1 sugeno系统,每个规则输出是标量值。在这种情况下,消除
是一个NR——- - - - - -NY大批。元素(j,k) 的消除
是值的价值kTH输出变量j规则。
当金融中间人
是2型Sugeno系统消除
是一个NR- (3 *NY)数组。第一个NY列包含规则输出级别。下一个NY列包含使用上隶属函数生成的相应规则触发强度。最后NY列包含使用较低成员资格函数生成的规则激发强度。例如,在一个三输出系统中,第4列和第7列包含第1列输出级别的激发强度。
如果输入
指定多个输入组合,然后指定消除
对应于最后一行中的组合输入
.
有关模糊蕴涵的更多信息,请参见应用含义方法.
不支持此输出参数金宝app金融中间人
是一个fistree
对象。
aggregatedOut
——聚合输出每个输出变量的聚合输出,返回为数组。
N年代——- - - - - -NY数组或一个长度的行向量NY.对于每个输出变量,evalfis
中指定的聚合方法组合所有规则的对应输出金融中间人
.
对于1型Mamdani系统,每个输出变量的综合结果是一个模糊集。在这种情况下,aggregatedOut
是作为一个N年代——- - - - - -NY阵列,其中NY输出的数量是多少N年代用于计算输出变量范围的样本点的数量。每一列的aggregatedOut
包含一个输出变量的聚合模糊集。
对于2型Mamdani系统,每个输出变量的综合结果是一个模糊集。在这种情况下,aggregatedOut
是作为一个N年代- (2 *NY)数组。第一个NY列包含使用上层成员函数和最后一个成员函数生成的聚合输出NY列包含使用较低的成员关系函数生成的聚合输出。
当金融中间人
是1型Sugeno系统,每个输出变量的聚合结果是标量值。在这种情况下,aggregatedOut
是长度的行向量吗NY,元素k规则输出的和是kth输出变量。
当金融中间人
是2型Sugeno系统aggregatedOut
是一个NR- (3 *NY)数组。aggregatedOut
包含相同的数据消除
根据输出级别对列进行排序。例如,在一个三输出系统中,当第1列的输出级别被排序时,第4列和第7列中相应的激发强度被相应地调整。
如果输入
指定多个输入组合,然后指定aggregatedOut
对应于最后一行中的组合输入
.
有关模糊聚合的更多信息,请参见聚合所有输出.
不支持此输出参数金宝app金融中间人
是一个fistree
对象。
ruleFiring
- 规则发射优势您可以使用该类型评估1型模糊推理系统规则查看器在模糊逻辑设计应用程序。
方法可以评估模糊推理系统模糊逻辑控制器块。的参数映射的更多信息evalfis
到了模糊逻辑控制器块,看在Simulink中仿真模糊推理系统金宝app.
evalfis
输入参数订单已更改R2018b中行为改变
输入参数的顺序evalfis
已更改,需要更新代码。
之前,为了评估一个模糊推理系统,金融中间人
,您指定了输入变量值,输入
,作为第一个输入参数。例如:
输出= evalfis(输入,FIS);输出= evalfis(输入,FIS,选项);
更新您的代码以将模糊推理系统指定为第一个输入参数。例如:
输入输出= evalfis (fis);输出= evalfis (fis、输入、选择);
evalfisOptions.
对象R2018a中行为改变
为了指定输出模糊集的样本点的数量,你现在我们evalfisOptions.
对象,需要更新代码。
以前,要指定采样点的数量,numpls.
,用于评价模糊推理系统的输出模糊集金融中间人
,您使用了输入参数。例如:
输出= evalfis(输入、fis numPts);
属性更新代码以指定样例点的数量evalfisOptions.
对象。例如:
opt = evalfisOptions(“NumSamplePoints”, numPts);输出= evalfis(输入、fis选择);
evalfis
诊断消息行为已更改R2018a中行为改变
的诊断消息行为evalfis
功能已经改变了。在此之前,evalfis
功能有以下行为进行诊断条件。
诊断条件 | 先前的行为 |
---|---|
在指定的变量范围之外输入值 | MATLAB®警告 |
没有针对当前输入值的给定输出触发规则 | MATLAB命令窗口消息 |
空输出模糊集 | MATLAB命令窗口消息 |
从R2018A开始,默认情况下,这些诊断条件报告为Matlab警告。您可以通过指定相应的选项来更改此行为evalfisOptions.
对象。
要禁用默认警告消息,请更新代码以使用evalfisOptions.
对象,并指定诊断消息选项。例如,禁用空输出模糊集消息。
opt = evalfisOptions('extentoutputfuzzysetmessage',“没有任何”);输出= evalfis(输入、fis选择);
R2018a中行为改变
使用以下语法评估Sugeno系统时,中间模糊推理结果现在类似于Mamdani系统的中间结果。
[输出,fuzzifiedInputs,RuleDutputs,GreggegatedOutput] = Evalfis(输入,FIS);
对于Sugeno系统:
rulatoutpuls.
现在返回一个数组,其中包含每个规则的标量输出值;也就是说,规则触发强度和规则输出级别的乘积。
aggregatedOutput
现在返回每个输出变量的所有规则输出值的和。
以前,对于Sugeno模糊系统:
rulatoutpuls.
返回一个包含每个规则输出级别的数组。
aggregatedOutput
返回包含每个规则的触发强度的数组。
从R2018A开始,如果您的代码在评估Sugeno系统时返回中间模糊推断结果evalfis
,修改您的代码以使用新的rulatoutpuls.
和aggregatedOutput
结果。
用法说明和限制:
全部evalfis
代码生成支持语法。金宝app然而,mamfis
,Sugfis.
, 和fistree
不支持对象。金宝app使用evalfis
对于代码生成,您必须使用FIS对象将您的FIS对象转换为同类结构getFISCodeGenerationData
.
不像模糊逻辑控制器块,evalfis
不支持用于模拟或代金宝app码生成的定点数据。
在Simulink中评估模糊推理系统时金宝app®,建议不使用evalfis
或者evalfisOptions.
在A中Matlab功能块。相反,使用模糊逻辑控制器块。
您点击了一个对应于这个MATLAB命令的链接:
通过在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您还可以从以下列表中选择一个网站:
请选择表现最佳的中国网站(中文或英文)。MathWorks的其他国家网站并没有针对您所在位置的访问进行优化。