版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用用MATLAB的模糊逻辑工具箱的模糊逻辑工具箱(Fuzzy toolbox)实现实现 lMatlab4.2以后的版本中推出的模糊工具箱(Fuzzy Toolbox),为仿真模糊控制系统提供了很大的方便。 l在Simulink环境下对PID控制系统进展建模是非常方便的,而模糊控制系统与PID控制系统的构造根本一样,仅仅是控制器不同。 l对模糊控制系统的建模关键是对模糊控制器的建模。Matlab软件提供了一个模糊推理系统FIS编辑器,只需在Matlab命令窗口键入Fuzzy就可进入模糊控制器编辑环境。 Matlab模糊逻辑工具箱仿真模糊逻辑工具箱仿真l模糊推理系统编辑器模糊推理系统编辑器Fuzz
2、yFuzzy l模糊推理系统编辑器用于设计和显示模糊推理模糊推理系统编辑器用于设计和显示模糊推理系统的一些根本信息,如推理系统的称号,输系统的一些根本信息,如推理系统的称号,输入、输出变量的个数与称号,模糊推理系统的入、输出变量的个数与称号,模糊推理系统的类型、解模糊方法等。其中模糊推理系统可以类型、解模糊方法等。其中模糊推理系统可以采用采用MandaniMandani或或SugeuoSugeuo两种类型,解模糊方法两种类型,解模糊方法有最大隶属度法、重心法、加权平均等。有最大隶属度法、重心法、加权平均等。l翻开模糊推理系统编辑器,在翻开模糊推理系统编辑器,在MATLABMATLAB的命令窗的
3、命令窗command windowcommand window内键入:内键入:fuzzy fuzzy 命令,弹命令,弹出模糊推理系统编辑器界面,如以下图所示。出模糊推理系统编辑器界面,如以下图所示。多个输入时,在多个输入时,在EditEdit菜单中,选菜单中,选Add variable -Add variable -input,input,参与新的输入参与新的输入input,input,如以下图所示如以下图所示 选择选择input(input(选中选中为红框为红框),),在在界面右边文界面右边文字输入处键字输入处键入相应的输入相应的输入称号,例入称号,例如如, ,温度输入温度输入用用 tmp-
4、tmp-input, input, 磁能磁能输入用输入用 mag-mag-inputinput,等。,等。l隶属度函数编辑器隶属度函数编辑器(Mfedit)(Mfedit)l该编辑器提供一个友好的人机图形交互环境,用该编辑器提供一个友好的人机图形交互环境,用来设计和修正模糊推理系中各言语变量对应的隶来设计和修正模糊推理系中各言语变量对应的隶属度函数的相关参数,如隶属度函数的外形、范属度函数的相关参数,如隶属度函数的外形、范围、论域大小等,系统提供的隶属度函数有三角、围、论域大小等,系统提供的隶属度函数有三角、梯形、高斯形、钟形等,也可用户自行定义。梯形、高斯形、钟形等,也可用户自行定义。l双击
5、所选双击所选inputinput,弹出一新界面,在左下,弹出一新界面,在左下RangeRange处处和和Display RangeDisplay Range处处, ,填入取只范围,例如填入取只范围,例如 0 0至至9 9 代表代表0 0至至9090。l在右边文字文字输入在右边文字文字输入NameName处,填写隶属函数的称处,填写隶属函数的称号,例如号,例如ltlt或或LT(LT(代表低温代表低温) )。l在在TypeType处选择处选择trimf(trimf(意为:三角形隶属函数曲线,意为:三角形隶属函数曲线,triangle member function),triangle member
6、 function),当然也可选其它外当然也可选其它外形。形。 在在Params(Params(参数参数) )处,选择三角形涵盖的区间,填写三个值,处,选择三角形涵盖的区间,填写三个值,分别为三角形底边的左端点、中点和右端点在横坐标上的分别为三角形底边的左端点、中点和右端点在横坐标上的值。这些值由设计者确定。值。这些值由设计者确定。用类似的方法设置输出用类似的方法设置输出outputoutput的参数。比如:共有的参数。比如:共有9 9个规个规那么,所以相应地有那么,所以相应地有9 9个输出隶属函数。默许个输出隶属函数。默许3 3个隶属函数,个隶属函数,剩下剩下6 6个由设计者参与。点击个由设
7、计者参与。点击EditEdit菜单,选菜单,选 Add Custom Add Custom MS-MS-继续填入相应参数即可。继续填入相应参数即可。l模糊推理规那么编辑器Ruleeditl经过隶属度函数编辑器来设计和修正“IF.THEN方式的模糊控制规那么。由该编辑器进展模糊控制规那么的设计非常方便,它将输入量各言语变量自动匹配,而设计者只需经过交互式的图形环境选择相应的输出言语变量,这大大简化了规那么的设计和修正。另外,还可为每条规那么选择权重,以便进展模糊规那么的优化。l选Edit菜单,选择Rules, 弹出一新界面Rule Editor. 在底部的选择框内,选择相应的 IFANDTHEN
8、 规那么,点击Add rule 键,上部框内将显示相应的规那么。本例中用9条左右的规那么,依次参与。如以下图所示: l上图表示当温度为45度、磁能为45瓦时,输出干度为约70个单位。左右拉动界面中的两支红线,拉到欲选的近似值,右边图顶显示相应的干度结果。l上图中选菜单View, 选择Surface,弹出一新界面Surface Viewer,弹出该课题结果的三维图。如以下图所示。留意将鼠标箭头放置图内,挪动鼠标可得到不同留意将鼠标箭头放置图内,挪动鼠标可得到不同角度的视图,如以下图所示。角度的视图,如以下图所示。Matlab模糊控制仿真演例如子模糊控制仿真演例如子l模型sltank.mdl 运用
9、模糊控制器对水箱水位进展控制。l假定水箱有一个进水口和一个出水口,可以经过控制一个阀门来控制流入的水量即水位高度,但是流出的速度取决于出水口的半径定值和水箱底部的压力随水箱中的水位高度变化。系统有许多非线性特性。l要求设计的目的是一个适宜的进水口阀门的控制器,可以根据水箱水位的实时丈量结果对进水阀门进展相应控制,使水位满足特定要求即特定输入信号。普通情况下,控制器以水位偏向理想水位和实践水位的差值及水位变化率作为输入,输出的控制结果是进水阀翻开或封锁的速度。l在Matlab中仿真,可以看到出现一个水箱模型的仿真动画窗口。该动画由一个S函数animtank.m实现。从动画中,可以察看到实践系统的
10、水位跟随殊荣的要求水位信号变化。l假设对S函数的实现感兴趣,可以键入命令open animtank或edit animtank来查看 animtank.m文件l在Simulink编辑窗口左边的模块阅读区可以看到在水箱仿真系统中包括水箱子模型、阀门子模型及 PID 控制子模型。直接在阅读区中点击或右键点击它们,并在弹出菜单中选择 look under mask 】 ,可以看到这些模块实现的细节构造,如图 所示。l这里暂时不讨论详细的系统模型的构造问题,我们可以先在这个曾经建立好的系统模型上进展修正,体验模糊逻辑与仿真环境结合运用的优势。l对于仿真模型系统中曾经建立的水箱模块、阀门模块以及动画仿真
11、显示模块可以直接运用,这里我们重点讨论与模糊推理系统设计问题相关的模糊系统变量 tank 即 MATLAB 的模糊逻辑推理系统。在 MATLAB 命令窗口中键入命令 fuzzy tank ,就可以开场对模糊系统 tank 进展编辑了。l为简单起见,我们直接利用系统里曾经编辑好的模糊推理系统,在它的根底上进展修正。这里我们采用与tank . fis中输入输出变量模糊集合完全一样的集合隶属度函数定义,只是对模糊规那么进展一些改动,来学习模糊工具箱与仿真工具的结合运用。对于这个问题,根据阅历和直觉很显然可以得到如下的模糊控制规那么: lIf 水位误差小then阀门大小不变权重 1 )lIf 水位低
12、then 阀门迅速翻开权重 1 ) lIf 水位高 then 阀门迅速封锁权重 1 )l这相当于在原有模糊系统模型上减少两条模糊规那么得到的新的模糊推理系统。l改动完成后进展仿真,察看示波器模块,可以得到系统水位变化,如下图。l从上图的仿真控制结果曲线中可以看出上述由三条模糊规那么组成的模糊控制系统的结果并不理想,因此可以再添加如下两条模糊控制规那么:lIf 水位误差小且变化率为负 then 阀门缓慢封锁权重 1 ) lIf 水位误差小且变化率为正 then 阀门缓慢翻开权重 1 ) l系统的输出变化曲线如以下图所示。l从上图可以看出,在添加了模糊控制规那么后,系统的动态特性得到较大改善,不但
13、具有较短的呼应时间,而且超调量也很小。可以用 Surfview tank 命令来显示模糊控制系统的输出曲面,如下图。l在这个例子中,还可以用传统的 PID 控制方法与模糊逻辑推理控制进展比较。在水箱仿真环境主界面中将控制方法选择开关中间的 const 模块的值由由-1 改为 1 ,这时系统将用传统的 PID 控制方法进展控制,如下图。其他例子其他例子l模型Shower.mdl淋浴温度调理模糊控制系统仿真; l模型slcp.mdl单级小车倒摆模糊控制系统仿真;l模型 slcp1.mdl变长度倒摆小车模糊控制系统仿真;l模型 slcpp1.mdl定长、变长二倒摆模糊控制系统仿真;l模型slbb.m
14、dl球棒模糊控制系统仿真;l模型sltbu.mdl卡车智能模糊控制倒车系统仿真;l模型sltank2.mdl 用子系统封装的水箱控制仿真。l学习 MATLAB 仿真工具的一个快速有效的方法就是学习例如模型,经过看懂这些模型和模块的功能以及搭建过程,可以很快熟习和掌握如何运用 MATLAB 仿真工具来设计和搭建本人独特的模型。l下面以模型Shower.mdl的构造作一个引见,方便读者更好地了解和学习这个例子。l模型Shower.mdl是一个淋浴温度及水量调理的模糊控制系统的仿真,该模糊控制器的输入变量分别是水流量和水温,输出变量分别是对热水阀和冷水阀的控制方式。该问题是一个典型的阅历查表法控制例
15、如,是 Mamdani型系统,其模糊控制矩阵存为磁盘文件shower.fis。l这个仿真模型的输出是用示波器来表示的,如下图。经过示波器上的图形我们可以清楚地看到温度和水流量跟踪目的要求的性能。水温示波器水温示波器水流示波器水流示波器水温偏向区间模糊划分及隶属度函数水温偏向区间模糊划分及隶属度函数水流量偏向区间模糊划分及隶属度函数水流量偏向区间模糊划分及隶属度函数输出对冷水阀控制战略的模糊化分及隶属度函数输出对冷水阀控制战略的模糊化分及隶属度函数输出对热水阀控制战略的模糊化分及隶属度函数输出对热水阀控制战略的模糊化分及隶属度函数其中输入变量水温与流速的偏向与输出热水阀、冷水阀的控制方法的阅历表
16、格如表1及表2所示。根据这两个输出控制表,可以产生九条模糊控制规那么,如下:系统的模糊推理运算相关定义如下:其他例子,请各位同窗自行翻开研讨学习。经过经过Maltab命令程序创建和命令程序创建和计算模糊逻辑系统计算模糊逻辑系统l前面引见过如何运用图形化工具建立模糊逻辑系统,我们也可以完全用命令行或程序段的方式来实现。l小费问题:l实践生活中有着许多模糊的概念和逻辑方式,“给小费问题就是一个可以用模糊逻辑来分析的经典的例子。以下图表示的是一个关于饭店的效力质量和顾客所给小费之间的关系图,左边表示饭店的效力质量,作为输入;右边表示顾客所给的小费,作为输出,两者是有一定逻辑关系的。l图中的黑箱表示一
17、种映射规那么,将效力质量映射到小费。这个黑箱就是这一逻辑关系的中心部分,它可以了解为各种不同的逻辑,例如模糊逻辑、线性逻辑、专家系统、神经网络、微分方程、多维表格查询或者随机选择器等。在上述问题中,模糊逻辑被证明是最正确的。l在国外饭店就餐后普通需求付给侍者小费,这是国外模糊系统的教材中一个非常经典的例子。下面我们经过小费问题来阐明模糊逻辑的作用。l“小费问题的中心就是:多少小费是“适宜的?我们先把问题简化,假定用从 0 10 的数字代表效力的质量10 表示非常好,0 表示非常差,小费应该给多少?这里还思索到问题的背景 在美国平均的小费是餐费15,但详细多少随效力质量而变。l首先思索最简单的情
18、况,顾客总是多给总账单的15作为小费:l用 MATLAB 语句绘图,如以下图所示。虽然是简单的线性关虽然是简单的线性关系,但这样的结果曾系,但这样的结果曾经根本可以反映效力经根本可以反映效力质量对小费的影响效质量对小费的影响效果了,假设思索到顾果了,假设思索到顾客所给的小费也该当客所给的小费也该当能反映食物的质量,能反映食物的质量,那么问题就在原来的那么问题就在原来的根底上扩展为:给定根底上扩展为:给定两个从两个从 0 到到 10 的数的数字分别代表效力和食字分别代表效力和食物的质量物的质量 10 表示表示非常好,非常好, 0 表示非常表示非常差,这时小费与它差,这时小费与它们之间的关系又该当
19、们之间的关系又该当如何反映呢?如何反映呢?假设是二元线性关系假设是二元线性关系用以下用以下 MATLAB 语句可绘出以下图语句可绘出以下图 。可以看到,假设不思索效力质量要素比食物质量要素对可以看到,假设不思索效力质量要素比食物质量要素对于小费的支付占有更大的比重,上面的关系图形曾经可于小费的支付占有更大的比重,上面的关系图形曾经可以反映一些实践的情况了。假设希望效力质量占小费的以反映一些实践的情况了。假设希望效力质量占小费的 80 % , 80 % , 而食物仅占而食物仅占 20 20 。这里可以设定权重因子:。这里可以设定权重因子:用以下用以下 MATLAB MATLAB 语句可绘出以下语
20、句可绘出以下图图这样的结果与实践情况还是有些不符。通常顾客都是给这样的结果与实践情况还是有些不符。通常顾客都是给1515的的小费,只需效力特别好或特别不好的时候才有改动,也就是说,小费,只需效力特别好或特别不好的时候才有改动,也就是说,希望在图形中间部分的呼应平坦些,而在两端效力好或坏希望在图形中间部分的呼应平坦些,而在两端效力好或坏有凸起或凹陷。这时效力与小费是分段线性的关系。例如,用有凸起或凹陷。这时效力与小费是分段线性的关系。例如,用下面下面 MATLAB MATLAB 语句绘出的以下图的情况。语句绘出的以下图的情况。上图没有思索食物质量的影响,我们参与这个要素后,上图没有思索食物质量的
21、影响,我们参与这个要素后,扩展为三维的,就有如下的结果:扩展为三维的,就有如下的结果:用以下用以下 MATLAB MATLAB 语句可绘出图语句可绘出图l如今的结果比较好了,可是函数看起来有点复杂,而且程序也越来越长,未来不便于修正和添加新的规那么及排除检查错误。对于不清楚设计过程的人来说,设计人员的思想是不容易被了解的。l模糊系统可以很好地结合人类的自然言语。对于小费问题,如今只思索关键要素,把问题简化,得出下面三条规那么:l 当效力很差的时候,小费比较少。l 当效力比较好的时候,小费中等。 l 当效力非常好的时候,小费比较高。l假设我们把食物对小费的影响思索进来,可以添加下面两条规那么:
22、l 当食物很差时,小费比较少。 l 当食物很好时,小费比较高。l上面五条规那么不分先后顺序,但是各条规那么的重要性可以是不同的,在没有特殊要求的情况下,可以以为这些规那么的重要性权重是一样的。l可以把效力和食物的质量综合起来,总结为如下三条规那么: l 当效力差或食物差的时候,小费少。 l 当效力好的时候,小费中等。l 当效力很好或食物好的时候,小费高。l当我们曾经得到上述三条模糊逻辑系统的推理规那么后,只需再给出其中的模糊变量例如“效力差、“效力好、“效力非常好等概念的定义和表示,就建立了该问题的一个完好的模糊推理系统的方案。这个系统的中心就是上述三条规那么以及相关模糊变量的定义。l运用Ma
23、tlab图形化工具,可以方便地建立起模糊控制系统。用命令行函数实现模糊逻辑系统用命令行函数实现模糊逻辑系统l前面主要引见了 MATLAB 图形化工具的运用, MATLAB 同样也提供了一些函数命令来实现模糊逻辑系统。l这些函数不仅能完全实现图形化方式所提供的功能,同时还可以实现图形化方式所难以实现的功能。l特别是对于那些比较复杂的模糊推理系统,在输入输出变量、隶属度函数、模糊规那么数目比较多的时候,假设要在图形化界面中人工输入,效率就很低。l假设经过命令行方式的编程,就可以让计算机完成许多反复性的输入任务,大大减少了任务量。l还有其他一些情况,如输入输出变量、隶属度函数、模糊规那么等是由程序计
24、算得到的,这时假设采用命令行的编程会更加简一方便。lMATLAB 模糊工具箱的图形化工具与命令行函数是一致的,我们可以将它们结合运用。l无论是命令行方式或是图形化方式创建的系统,其格式都是一样的。因此,假设根据需求同时运用两种方法来编辑一个模糊逻辑系统,往往会到达更好的效果。命令行函数运用例如入门命令行函数运用例如入门小费问题是模糊逻辑工具箱中提供的一个模糊推理系统的例如。在 MATLAB 中一个模糊逻辑推理系统被当作是一种 FIS 构造。例如,我们在命令行任务环境键入命令:结果:该命令加载小费问题模糊推理系统的数据文件到当前的任务空间中,并存为变量 a , a 是一种 FIS 构造的变量。在
25、上面的结果之列中,冒号左边的标号表示 MATLAB 的 FIS 构造中的与 tipper . fis 相关的构呵斥员变量名,可以经过“构造名成员名的方式来访问这些构呵斥员变量。例如键入命令:其真实 MATLAB 里,模糊推理系统是以特定的语法用文本方式来存储的。假设键入命令:type tipper.fis就可以看到这个用 ASCll 代码存储的模糊系统。函数 readfis 得到了这个数据文件中的一切属性,并把它们存入一个构造也可以看作是一个广义的矩阵。上面的例子中经过语句 a = readfis ( tipper . fis ) 变量 a 被赋予一个 FIS ( Fuzzy Inferenc
26、e system 构造变量矩阵。这个矩阵主要由 ASCll 代码构成,通常表现为数字的陈列,这样就不便于阅读,因此需求特定的函数来显示系统属性。函数 getfis ( a 前往结果是关于模糊推理系统的普通属性,比如说系统称号,输入、输出变量的称号等等。例如键入命令: getfis ( a 结果:从上面的结果我们可以看到,有些属性并不是构造变量 a 中所包含的。例如键入:系统前往如下错误信息:但是,假设键入:系统前往结果:getfis 函数还有假设干种运用方法,可以键入右边命令试一试,看看结果。前述功能同样可以经过“构造名成员名的方式来访问,只是详细的访问方式与成员的类型相关。例如,要得到上述
27、getfis ( a ,Inlabels 命令的结果,可以采用如下的方式:前往结果:setfis是和getfis相对应的函数,它允许改动一个 FIS系统的特性。假设想将上述系统的名字 tipper 改为 gratuity ,可以运转命令:前往结果:在结果中可以看到 name 变为 gratuity ,同样上面的操作也可以用命令“ a .name = gratuity ,来实现。假设想要知道更详细的内容,经过函数 showfis ( a 就可以得到这个 FIS 矩阵的详细属性。这个函数最主要是用来进展程序调试,但同时它也能分行显示一切记录在 FIS 矩阵的信息。在这里构造变量 a 代表一个小费问
28、题的模糊推理系统,前面提到的图形化编辑工具都可以用来对它进展相关操作。下面这些函数命令将翻开相应的小费系统图形化工具界面。假设 a 是一个 Sugeno 型的模糊系统,命令 anfisedit ( a 将翻开 ANFIS 模糊神经网络系统图形编辑界面。经过经过 MATLAB 命令程序创建命令程序创建和计算模糊逻辑系统和计算模糊逻辑系统l前面引见过如何用图形化工具建立模糊逻辑系统,这些也可以完全用命令行或程序段的方式实现。l依然运用小费问题的例子作为范例,在这个例子中将用到 newfis 、 addvar 、 addmf 、 addrde 等几个函数。l在用命令行建立模糊逻辑系统的过程中,往往最
29、令人迷惑的就是模糊规那么在系统中的简述表达方式。规那么是经过函数 addrule 来参与的,每一个输入或输出的变量都有一个索引 ( index 值,同样每一个隶属度函数也有一个 index 值,输入规那么的函数就是运用这些索引来创建相应的模糊规那么,在 MATLAB 中模糊规那么普通具有如下方式:模糊规那么按照下面的逻辑被转化成一种数据构造或矩阵的方式来表示:假设系统由 m 个输入、 n 个输出变量和 k 条模糊规那么组成,那么该规那么构造是一个 m + n + 2 , k 的矩阵。该矩阵的每个行向量代表一条模糊规那么,这个行向量的前 m 个数表示前 m 个输入变量对应的隶属度函数的索引值例如
30、,第一列表示第一个输入变量在各条规那么的相应的隶属度函数的索引,第二列表示第二个输入变量相应的隶属度函数的索引。接着的 n 列表示 n 个输出变量对应的隶属度函数的索引值。第 m + n + 1 列的数分别表示各条规那么的权重普通为 1 ) ,第 m + n + 2 列表示各条规那么之间的相互衔接方式 and = l , or = 2 。这样,上面这条规那么用MATLAB的构造表示为一个行向量。假设输入或是输出变量加了否认修饰词not的话,那么只需在相应的隶属度函数索引值前键入一个负号。例如,对于规那么:其对应的行向量变为:-1 3 2 0.5 2,依次解释如下:-1表示not MF1;3表示
31、MF3;2表示MF2;0.5表示weight=0.5;2表示or。下面是用“构造名成员名表达方式编写的创建小费模糊推理系统 tipper. fis的命令行程序例如。例 用命令行方式建立小费推理系统模糊模型。这样的程序相当繁琐,假设用前面所提到的规那么构造变量以及相应的一些 MATLAB函数来实现会简单得多,例如:运用模糊逻辑推理系统对于给定输入得到相应的输出结果才是实践运用中最终的目的,这个过程在 MATLAB 里可以经过函数 evalfis 来完成。例如,下面的命令行用来计算小费推理系统对于输入变量为 1 , 2 的输出结果:MATLAB 的的 FIS 构造和存储构造和存储l在 MATLAB
32、 中模糊推理系统是以一种 FIS 的构造类型来表示和存储的。无论是图形化的工具或是像 getfis 和 setfis 这样的函数,都可以对这种构造进展直接的操作,同样也可以用“构造名成员名 ( “ Structure . field 的语法方式来访问。l FIS 的构造组成很简单,是将 MATLAB 模糊逻辑的各个函数一致同来运用的根底。l FIS 构造可以看作是一种层次构造,如以下图所示。模糊推理系统模糊推理系统 FIS FIS 构造层次构造层次可以用 Showfis 函数来生成关于 FIS 构造变量的详细信息列表。例如键入除了图形化环境, MATLAB 的命令行方式提供了以下与 FIS 构
33、造的创建和编辑相关的函数: getfis 、 setfis 、 showfis 、 addvar 、 addmf 、 addrule 、 rmvar 及 rnmlf 。关于这些函数的运用方法将在后面的内容里引见。* . fis 文件格式及存储文件格式及存储l在 MATLAB 中模糊推理系统运用一种特定格式的文本文件来存储,通常以后缀 fis 命名。工具箱提供了 readfis 和 writefis 两个函数分别来读写这种文件。l FIS 文件是以文本方式存储,也可以不用图形工具或是相关函数而直接用文本编辑器来编辑它。但是这样往往比较复杂而且容易出错,由于改动了一个参数能够需求在文件的许多地方进
34、展思索和修正。l例如,假设删除了一条隶属度函数,那么一切与该隶属度函数相关的规那么就得删除,而且其他隶属度函数的序号也会发生改动,其他规那么也要做相应改动。l在 FIS 文件中,模糊规那么是以 index 方式表示的。直接用文本编辑器或是用命令 type tipper.fis 或 open tipper.fis, edit tipper.fis 都可以查看到小费问题模糊推理系统的文件 tipper . fis ,例如:前面提到的一些函数,例如 readfis 、 getfis 、 setfis 、 showfis 等,都是模糊工具箱提供的命令行函数,直接调用这些函数就可以实现对模糊推理系统进展
35、建立、修正以及存储等操作,下面将详细引见常用的命令行函数。阐明:在参数列表中, a 为模糊推理系统对应的矩阵变量名, varType 用于指定言语变量的类型为字符型如input 或 output ) ; varName 也为字符型变量,用于指定言语变量的名; varBoundS 用于指定言语变量的论域范围。对于添加到同一个模糊推理系统的言语变量,将按照添加的先后顺序自动编号,编号从 1 开场,逐渐递增。对于分属于输入与输出的不同言语变量那么独立地分别编号。阐明:当一个模糊言语变量正在被当前的模糊规那么集运用时,试图删除该变量会导致其他相关规那么被删除。系统出现讯问对话框,问能否确认删除命令。在
36、一个模糊言语变量被删除后,Matlab模糊逻辑工具箱将会自动地对模糊规那么集进展修正以保证一致性。从varType表示言语变量的类型,为字符型,如input 或 output ; varIndex表示言语变量的编号。阐明:隶属度函数只能为模糊推理系统中曾经存在的某一言语变量的言语值添加隶属度函数,而不能添加到一个尚不存在的言语变量中。对于每个言语变量的隶属度函数按照该函数被添加的顺序加以编号,第一个添加的隶属度函数被编为1号,以后依次递增编号。函数必需指定输入以下六个参数:例 参与三条高斯型隶属度函数,如下图。阐明:当一个隶属度函数正在被当前模糊推理规那么运用时,假设删除该隶属度函数将会删除涉
37、及它的模糊规那么,系统会出现要求确认音讯框,假设确认删除将自动删除相关的一些规那么。各参数的含义阐明如下:例 删除隶属度函数结果。例 删除被模糊规那么运用的隶属度函数。FIS 系统相关操作系统相关操作阐明:该函数用于创建并前往一个新的模糊推理系统,模糊推理系统的特性可由函数的参数指定,其参数个数可达 7 个。假设不指定相应参数那么取为缺省值。参数的含义及类型阐明如下:例 运用缺省参数的 newfis 函数创建 mamdani 和 sugeno 型模糊系统。阐明:翻开一个由 filename 指定的模糊推理系统的数据文件 . fis ) ,并将其加载到当前的任务空间 workspace 中的变量
38、 FISMAT 中。当未指定文件名时, MATLAB 将会翻开一个文件对话窗口,提示用户指定某一 fis 文件。阐明:运用该函数是获得模糊推理系统及其对应矩阵的一切属性的根本方法。也可以用“构造名成员名 ( Structure . field 的语法方式来替代这个函数。在参数列表中, a 为模糊推理系统构造在内存中对应的矩阵变量,必需曾经存在,这是必需指定的参数,后面的其他参数那么可以省略。仅有参数 a 时,函数将列出模糊推理系统的一切属性。阐明: fismat 为 MATLAB 任务环境内存中的模糊推理系统构造的矩阵变量。例 以分行的方式显示模糊推理系统 tipperfis 矩阵的一切属性。
39、阐明:该函数的参数个数可以有 3 、 5 、 7 三种情况。当参数个数为 3 时,用于设定模糊推理系统的全局属性,包括:当参数个数为 5 个时,用于设定模糊推理系统矩阵某一个言语变量的属性,包括: name 变量称号和 bounds 论域范围。当参数个数为 7 时,用于设定一个言语变量的某一隶属度函数的属性,包括 name 隶属度函数称号、 type 类型和 params 参数。系统图形显示函数系统图形显示函数l模糊逻辑工具箱中提供了三个函数: plotfis 、 plotmf 和 gensurf ,用于模糊推理系统的图形显示。下面详细引见这三个函数。模糊逻辑工具箱命令函数运用模糊逻辑工具箱命
40、令函数运用l前一节简要引见了用命令行方式来实现模糊逻辑推理。运用命令行方式任务需求掌握相应的一些工具函数的运用,下面就详细引见这些工具函数的运用。模糊逻辑工具根本函数分类表模糊逻辑工具根本函数分类表l模糊逻辑工具根本函数包括图形工具类函数、隶属度函数类函数、 FIS 构造的相关类操作函数、 Sugeno 型模糊系统运用函数、仿真模块库相关操作函数以及演示范例程序函数等。1 图形工具类函数图形工具类函数2 隶属度函数类函数隶属度函数类函数3 . FIS 构造的相关类操作函数构造的相关类操作函数4 仿真模块库相关操作函数仿真模块库相关操作函数5 演示范例程序函数演示范例程序函数MATLAB 工具箱
41、内置隶属度函数工具箱内置隶属度函数运用例解运用例解l在 MATLAB 模糊逻辑工具箱中支持的隶属度函数类型有如下几种:高斯型、三角形、梯形、钟型、 Sigmo 记型、 n 型以及 Z 型。l利用工具箱中提供的函数可以建立和计算上述各种类型隶属度函数。l还可以本人定义隶属度函数用于调用。l下面引见工具箱中内含的隶属度函数。阐明:参数 x 用于指定变量的论域范围,参数 a 、 b 和 c 指定三角形函数的外形,要求 a b c 。该函数在 b 点处取最大值 1 , a 、 c 点为 0 假设要获得顶点小于 1的三角形函数可以运用 trapmf,函数前往该隶属度函数对应于坐标矩阵 x 的函数值矩阵。
42、其表达式如下:例 建立三角形隶属度函数并绘制曲线,如下图例 改动参数曲线对比,如下图。阐明:参数 x 用于指定变量的论域范围,参数 a 、 b 、 c 和 d 用于指定梯形隶属度函数的外形,要求 a = b 且 c = c 函数退化为三角形。函数前往该隶属度函数对应于坐标矩阵 x 的函数值矩阵。其对应的表达式如下:例 建立并绘制梯形隶属度函数曲线,如下图。例 改动参的数曲线对比,如下图。阐明:高斯型函数的外形由两个参数决议: sig和 c ,其中 c 决议了函数的中心点, sig决议了函数曲线的宽度。参数 x 是用于指定变量论域的矩阵,函数前往该隶属度函数对应于坐标矩阵 x 的函数值矩阵。高斯函数的表达式如下:例 建立高斯型隶属度函数,如下图。例 不同参数对比,如下图。阐明:参数 x 是用于指定变量论域的矩阵,函数前往该隶属度函数对应于坐标矩阵 x 的函数值。矩阵双边高斯型函数的曲线由两个中心点一样的高斯型函数的左、右半边曲线组合而成,其左右两段表达式如下:参数 sig1、c1、sig2、c2分别对应左、右半边高斯函数的宽度与中心点,当 c1 = c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030全球定制基因合成行业调研及趋势分析报告
- 必杀04 第七单元 我们邻近的地区和国家(综合题20题)(解析版)
- 无偿借款合同范本简易模板
- 运输合同居间合同
- 聘用总经理劳动合同范本
- 典当借款合同典当借款合同范文
- 标准砖、烧结砖购销合同
- 门面房屋出售合同样本
- 影视拍摄合同范文
- 石方购销合同范本
- 2025年南京信息职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025-2030年中国硫酸钾行业深度调研及投资战略研究报告
- 课题申报参考:社会网络视角下村改居社区公共空间优化与“土客关系”重构研究
- 乡镇卫生院2025年工作计划
- 2024年山东省泰安市初中学业水平生物试题含答案
- 机械工程类基础知识单选题100道及答案解析
- 冠心病课件完整版本
- 2024年卫生资格(中初级)-中医外科学主治医师考试近5年真题集锦(频考类试题)带答案
- 中国大百科全书(第二版全32册)08
- 四川省宜宾市中学2025届九上数学期末统考模拟试题含解析
- 微生物组与胆汁性肝硬化
评论
0/150
提交评论