matlab的fuzzy工具箱实现模糊控制_第1页
matlab的fuzzy工具箱实现模糊控制_第2页
matlab的fuzzy工具箱实现模糊控制_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Matlab 的 Fuzzy 工具箱实现模糊控制(rulelist的确定)用 Matlab 的 Fuzzy 工具箱实现模糊控制- -用 Matlab 中的 Fuzzy 工具箱做一个简单的模糊控制,流程如下:1、创建一个 FIS (Fuzzy Inference System ) 对象,a = newfis(fisName,fisType,andMethod,orMethod,impMethod, aggMethod,defuzzMethod)一般只用提供第一个参数即可,后面均用默认值。2、增加模糊语言变量a = addvar(a,varType,varName,varBounds)模糊变量有两

2、类:input 和 output。在每增加模糊变量,都会按顺序分配一个 index,后面要通过该 index 来使用该变量。3、增加模糊语言名称,即模糊集合。a = addmf(a,varType,varIndex,mfName,mfType,mfParams)每个模糊语言名称从属于一个模糊语言。Fuzzy 工具箱中没有找到离散模糊集合的隶属度表示方法,暂且用插值后的连续函数代替。参数 mfType 即隶属度函数(Membership Functions),它可以是 Gaussmf、trimf、trapmf等,也可以是自定义的函数。每一个语言名称也会有一个 index,按加入的先后顺序得到,从

3、 1 开始。4、增加控制规则,即模糊推理的规则。a = addrule(a,ruleList)其中 ruleList 是一个矩阵,每一行为一条规则,他们之间是 ALSO 的关系。假定该 FIS 有 N 个输入和 M 个输出,则每行有 N+M+2 个元素,前 N 个数分别表示 N 个输入变量的某一个语言名称的 index,没有的话用 0 表示,后面的 M 个数也类似,最后两个分别表示该条规则的权重和个条件的关系,1 表示 AND,2 表示 OR。例如,当“输入1” 为“名称1” 和 “输入2” 为“名称3” 时,输出为 “ 输出1” 的“状态2”,则写为:1 3 2 1 15、给定输入,得到输出

4、,即进行模糊推理。output = evalfis(input,fismat)其中 fismat 为前面建立的那个 FIS 对象。一个完整的例子如下:clear all;a = newfis(myfis); a = addvar(a,input,E,0 7);a = addmf(a,input,1,small,trimf,0 1 );a = addmf(a,input,1,big,trimf, 6 7); a = addvar(a,output,U,0 7);a = addmf(a,output,1,small,trimf,0 1 );a = addmf(a,output,1,big,trimf, 6 7); rulelist = 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论