5.evalfis
功能:完成模糊推理计算。 格式:out= evalfis(input,fismat)
out= evalfis(input,fismat,numPts)
[output,IRR,ORR,ARR]= evalfis(input,fismat) [output,IRR,ORR,ARR]= evalfis(input,fismat, numPts) 说明:evalfis函数具有下列参数。
(1) input:指定输入的数值或矩阵。如果输入为m?n矩阵时(n为输入变量维数),则evalfis将输入的每一行看作输入变量,并在输出变量output中产生m?1矩阵,其中每一行为输出向量,1为输出变量数。
(2) fismat:要计算的FIS结构。
(3) numPts:计算输入和输出隶属度函数时采用的取样点数,如果缺省,则采用缺 省值101。
(4) output:evalfis函数的输出变量-m?1矩阵,其中m表示输入变量数,1表示输出变量数。
(5) IRR:输入值通过隶属度函数后的结果,这是numRules矩阵,其中numrules为规则数,n为输入变量数。
(6) ORR:输出值通过隶属度函数后的结果,这是numPts?numRules?1,其中numRules为规则数,1为输出变量数。这个矩阵的前numRules列对应于第1个输出,接下来的numRules列对应于第2个输出,如此等等。
(7) ARR:沿着每个输出的取值范围已numPts取样得到的numPts?1矩阵。 只有当输入变量为行向量时,evalfis才计算可选的输出变量值。当只有1个输出变量引用evalfis函数时,可计算出由结构fismat指定的FIS和由input指定的输出向量output。
6.evalmf
功能:普通隶属度函数的计算。 格式:y= evalmf(x,mfParams,?mfType?)
说明:evalmf函数可计算任意的隶属度函数,其中x为要计算的隶属度函数取值,mfType为工具箱中存在的一只能够隶属度函数,mfParams为该函数的相应参数。如果建立了自己的隶属度函数,evalmf函数也能很好的工作,这是因为evalmf只计算隶属度函数,并不对其名字进行识别。
7.gensurf
功能:产生FIS输出曲面。 格式:gensurf(fis)
11
gensurf(fis,input,output)
gensurf(fis,input,output,grids,refinput)
说明:gensurf(fis)函数针对给定FIS的前两个输入和第一个输出绘制出曲面。gensurf(fis,input,output)可在绘制输出曲面时用input和output指定的输入和输出。gensurf(fis,input,output,grids,refinput)中grids指定X和Y方向的栅格数,refinput指定系统不变的输入。
8.getfis
功能:获取模糊系统的特性。 格式:getfis(a) getfis(a,?fisprop?)
getfis(a,?varType?,varIndex ,?fisprop?) getfis(a,?varType?,varIndex ,?mf?,mfIndex) getfis(a,?varType?,varIndex ,?mf?,mfIndex,?mfProp?)
说明:这是C的基本访问函数,利用这一函数获取FIS的每个部分。Getfis函数的输入变量的含义说明如下。
(1) a:FIS结构的变量名。
(2) varType:变量类型的字符串,可取input或output。 (3) varIndex:变量序号。
(4) mf:要搜索的隶属度函数信息的字符串。 (5) mfIndex:要搜索信息的隶属度函数的序号。 9.mf2mf
功能:在隶属度函数之间进行参数交换。 格式:outParams=mf2mf(inParams,inType,outType)
说明:mf2mf函数可根据隶属度函数的参数集,将一种隶属度函数变换成另一种,原则上,mf2mf函数在新旧隶属度函数的对称点上进行匹配。这种变换偶尔也会导致信息的丢失,因此如果再将其变换回原来的隶属度函数类型时,则可能会与原隶属度函数不一致。
mf2mf的输入变量有:
(1) inParams:要变换的隶属度函数的参数。 (2) inType:要变换的隶属度函数的字符串。 (3) outType:要变换的隶属度函数类型的字符串。 示例: mfp1=[1 2 3];
mfp2=mf2mf (mfp1,?gbellmf?,?trimf?);
mfp1代表 gbellmf的参数,mfp2 代表变换为trimf后对应的参数。
12
10.newfis
功能:建立新的FIS。 格式:
a=newfis(fisName,fisType,andMethod,orMethod,impMethod,aggMethod,defuzzMethod) 说明:这一函数可建立新的FIS结构,newfis函数最多可有7个输入变量,其输出变量为FIS结构。
newfis函数7个输入变量为:
(1) fisName:FIS结构名,其后缀默认为.fis。 (2) fisType:FIS类型。
(3) andMethod,orMethod,impMethod,aggMethod,defuzzMethod分别表示与,或,蕴含,结集和反模糊化方法。
11.parsrule
功能:模糊规则解析。
格式:fis2=parsrule(fis,txtRuleList)
fis2=parsrule(fis,txtRuleList,ruleFormat) fis2=parsrule(fis,txtRuleList,ruleFormat,lang)
说明:这一函数可对MATLAB工作空间中FIS变量定义的规则进行解析,如果原来的FIS结构具有初始的规则,则它们将在新的结构中被取代,这里可通过ruleFormat指定3种格式:verbose,symbolic和indexd,其缺省格式为verbose。当对lang选项进行设定时,规则按verbose模式解析,lang可设定为English、Deutsh或Francais、English为默认设置。
12.plotfis
功能:绘图表示FIS。 格式:plotfis(fismat)
说明:plotfis函数可绘制出FIS结构的框图,图中包含输入及其隶属度函数(左边),规则处理器方框(中间),输出及其隶属度函数(右边)。
13.plotmf
功能:绘制出指定变量的所有隶属度函数。 格式:plotmf(fismat,?varTypt?,varIndex)
说明:plotmf函数可以绘制FIS结构种指定变量的所有隶属度函数,fismat表示指定的FIS结构,varTypt指定变量类型(input或output),varIndex指定变量的序号。
14.readfis
功能:从磁盘中装入FIS。 格式:fismat=readfis(?filename?)
说明:从磁盘.fis文件中读取模糊推理系统,并保存于工作空间中。fismat=readfis
13
将打开读取文件的对话框,以便输入文件名及其路径。
15.rmmf
功能:从FIS中删除隶属度函数。
格式:fis=rmmf(fis, ?varType?,varIndex,?mf?,mfIndex)
说明:rmmf可从FIS中删除指定的隶属度函数,其中fis指定FIS结构,varIndex指定变量序号,varType指定变量类型,mfIndex指定要删除的隶属度函数的序号,字符串mf指定要删除的隶属度函数。
16.rmvar
功能:从FIS中删除变量。
格式:[fis2,errorStr]=rmvar(fis,?varType?, varIndex) fis2= rmvar(fis,?varType?, varIndex)
说明:fis2= rmvar(fis,?varType?, varIndex)可从FIS中删除变量,其中fis指定FIS结构,varIndex指定要删除的变量序号,varType指定变量类型,[fis2,errorStr]=rmvar(fis,?varType?, varIndex)可在errorStr中得到错误信息。
17.setfis
功能:设置模糊推理系统的特性。 格式:a=setfis(a,?varPropname?,?newfisProp?)
a=setfis(a,?varType?,varIndex,?varPropname?,?newfisProp? a=setfis(a,?varType?,varIndex,?mf?,mfIndex,?varPropname?,?newfisProp?)
说明:根据要设置的FIS特性不同,setfis命令可有3个,5个或7个输入变量,下面给出了这些变量的含义说明。
(1) a:工作空间中的FIS变量。 (2) varType:变量类型。
(3) varIndex:输入,输出变量序号。 (4) mf:指定隶属函数。
(5) mfIndex:所选变量隶属度函数的序号。
(6) varPropname:表示要设置的FIS特性的字符串,这里可取Name、Type、andMethod、orMethod、impMethod、aggMethod、defuzzMethod。
(7)?newfisProp?:描述要设置的FIS特性或方法的字符串。 (8)?varPropname?:指定要设置的变量域名。可取Name或Range。
(9) ?newvarProp?:当变量域名为Name时,这一部分为要设置的变量名的字符串;变量域名为Range时,这一部分为改变变量范围的阵列。
(10) ?mfPropname?:要设置的隶属度函数域名的字符串,可取Name,Type或Params。 (11) ?newmfProp?:当隶属度函数域名为Name或Type时,这一部分为要设置的隶属度函数域名或类型;为Params时,这一部分为参数阵列。
14
18.showfis
功能:显示带注释的FIS。 格式:showfis(fismat)
说明:showfis(fismat)可显示出FIS结构fismat,从而更容易观察FIS结构各个域的重要性及内容。
19.showrule
功能:显示FIS规则。 格式:showrule(fis)
showrule(fis,indexList) showrule(fis,indexList,format) showrule(fis,indexList,format,lang)
说明:showrule可显示出FIS系统的规则,它可有1到4个输入变量:fis为FIS结构变量名;indexList为要显示的规则的序号向量;format用于指定规则显示的格式;lang用于指定显示规则的语言。当调用showrule4个变量都采用时,第3个变量format的设置必须是verbose。
20.writefis
功能:将FIS结构保存到磁盘文件中。 格式:writefis(fismat)
writefis(fismat,?filename?) writefis(fismat,?filename?,?dialog?)
说明:writefis可将MATLAB工作空间中的FIS结构变量fismat保存到磁盘文件中。writefis(fismat)可打开一个对话框,以输入变量的文件名及其路径。writefis(fismat,?filename?)可直接指定文件名filename.fis,这时不会出现对话框,文件保存在当前目录中。writefis(fismat,?filename?,?dialog?)可打开对话框,并且以filename.fis为文件名。
五.Simulink仿真模块函数 1.fuzblock
功能:模糊逻辑控制器仿真模块。 格式:fuzblock
说明:此命令将打开Simulink系统的模糊逻辑模块库,里面含有有关模糊逻辑器件的演示框图,它们分别为:
Fuzzy Logic Controller:模糊逻辑控制器;
Fuzzy Logic Controller With Rule Viewer:带有规则观测器的模糊逻辑控制器; MemberShip Functions:隶属度函数,里面包含有11种内定的隶属度函数。 2.sffis
15