模糊控制的MATLAB实现具体过程(强势吐血推荐).ppt

上传人:tian****1990 文档编号:7707108 上传时间:2020-03-23 格式:PPT 页数:62 大小:1.12MB
返回 下载 相关 举报
模糊控制的MATLAB实现具体过程(强势吐血推荐).ppt_第1页
第1页 / 共62页
模糊控制的MATLAB实现具体过程(强势吐血推荐).ppt_第2页
第2页 / 共62页
模糊控制的MATLAB实现具体过程(强势吐血推荐).ppt_第3页
第3页 / 共62页
点击查看更多>>
资源描述
MATLAB模糊逻辑工具箱 工具 命令行函数 以 m文件存放 图形交互工具 GUI GraphicalUserInterface 图形用户界面 接口仿真逻辑模块 Simulink环境 图形交互工具箱提供的图形化工具有五类 模糊推理系统编辑器Fuzzy 隶属度函数编辑器Mfedit Membershipfunction 模糊规则编辑器Ruleedit 模糊规则观察器Ruleview 模糊推理输入输出曲面视图Surfview Surface 模糊推理系统编辑器Fuzzy 处理最顶层构建问题 例如输入输出变量的数目 变量名等 激活 进入 方法 命令窗口 commandwindow 执行Fuzzy命令 激活模糊推理系统系统编辑器 组成 输入模糊变量图形框 模糊规则图形框 输出模糊变量图形框 基本属性包括 模糊集合合成运算 连接词的运算 and min 最小法 prod 乘积法 or max 最大法 prober 概率法 prober a b a b ab 2 蕴涵计算 Implication min prod 乘积法 3 输出的合成计算Aggregation 模糊规则综合采用的方法 Aggregation max prober 概率法 sum 求和法 prober a b a b ab 4 逆模糊化计算 Defuzzification centroid 重心法 mom 平均最大隶属度法 som 最大隶属度函数中的取最小值法 bisector 面积平分法 lom 最大隶属度函数中的取最大值法 在命令窗口键入mfedit可激活隶属度函数编辑器 MATLAB的FIS结构和存储 1 FIS 模糊推理系统 结构 模糊推理系统是以一种FIS的结构来表示和存储的 访问方法 GUI工具 函数 结构名 成员名 2 存储 fis文件 访问 readfis 读 writefis 写 命令函数 1 隶属度函数 函数trimf 表示triangularmembershipfunction 格式 y trimf x abc 其中 参数x指定变量论域范围 参数a b和c指定三角形函数的形状 该函数在b点处取最大值1 a c点为0 例 建立三角形隶属度函数并绘制曲线 x 0 0 1 10 y trimf x 368 plot x y xlable trimf P 368 功能 建立三角形隶属度函数 函数trapmf trap表示trapezium梯形 格式 y trapmf x abcd 其中 参数x指定变量论域范围 参数a b c和d指定梯形隶属度函数的形状 该函数在b c点处取最大值1 a d点为0 功能 建立梯形隶属度函数 例 x 0 0 1 10 y trapmf x 1578 plot x y xlable trapmf P 1578 函数gaussmf 格式 y gaussmf x sigc 功能 建立高斯型隶属度函数 其中 参数x指定变量论域范围 参数c决定了函数的中心点 sig决定了函数曲线的宽度 高斯函数的表达式为 例 x 0 0 1 10 y gaussmf x 25 plot x y xlable gaussmf P 25 函数zmf 格式 y zmf x ab 功能 建立Z型隶属度函数 说明 曲线在 a b 之间是光滑的样条曲线 在a左段为1 b右段为0 跳跃点是 a b 2 参数x指定变量论域范围 例 x 0 0 1 10 y zmf x 28 plot x y xlable zmf P 28 函数smf 格式 y smf x ab 功能 建立S型隶属度函数 说明 曲线在 a b 之间是光滑的样条曲线 在a左段为0 b右段为1 跳跃点是 a b 2 参数x指定变量论域范围 例 x 0 0 1 10 y smf x 28 plot x y xlable smf P 28 2 模糊逻辑系统输入输出变量及隶属度函数的添加 函数addvar 功能 向模糊推理系统中添加语言变量 格式 a addvar a varType varName varBounds 说明 参数列表中 a为模糊推理系统对应的矩阵变量名 varType用于指定语言变量的类型为字符型 如 input 或 output varName用于指定语言变量的名 varBounds用于指定语言变量的论域范围 注意 对于添加到同一个模糊推理系统的语言变量 按先后顺序自动编号 编号从1开始 逐渐递增 对于分属于输入与输出的不同语言变量则独立地分别编号 例 a newfis tipper 创建并返回一个新的FIS系统a addvar a input service 010 getfis a input 1 取得FIS的部分或全部属性 函数addmf 功能 向模糊推理系统的语言变量添加隶属度函数 格式 a addmf a varType varIndex mfName mfType mfParams 说明 隶属度函数只能为模糊推理系统中已经存在的某一语言变量的语言值添加隶属度函数 参数列表中 a为模糊推理系统对应的矩阵变量名 varType指定语言变量类型的字符串 如 input 或 output varIndex指定语言变量编号的数字 mfName指定隶属度函数名称 mfType指定隶属度函数类型 mfParams指定隶属度函数的参数 注意 对于每个语言变量的隶属度函数按该函数被添加的顺序编号 编号从1开始 依次递增 例 a newfis tipper a addvar a input service 010 a addmf a input 1 poor guassmf 1 50 a addmf a input 1 good guassmf 1 55 a addmf a input 1 excellent guassmf 1 510 plot a input 1 3 FIS系统相关操作 函数newfis 功能 创建并返回一个新的模糊推理系统 格式 a newfis fisName 函数readfis 功能 从磁盘中读出并返回模糊推理系统结构变量 格式 Fismat readfis filename 例 fismat readfis tipper tipper fis已经存在 说明 打开一个由filename指定的数据文件 fis 并将其加载到当前的工作空间 Workspace 中的变量Fismat中 函数getfis 功能 取得模糊推理系统的部分或全部属性 格式 getfis a 显示系统所有属性getfis a fisprop 显示系统某一属性getfis a vartype varindex varprop 例 a readfis tipper getfis a 输出结果 Name tipperType mamdaniNumInputs 2 例 getfis a input 1 注 属性为 input 或 output 时 后面的第三个参数指定某一个输入或输出语言变量 输出结果 Name serviceNumMFs 3MFLabels poorgoodexcellentRange 010 例 getfis a input 1 name 输出结果 service 函数showfis 功能 以分行的形式显示模糊推理系统矩阵的所有属性 格式 showfis fismat 函数writefis 功能 将以矩阵形式保存在内存中的模糊推理系统的数据写入磁盘文件中 格式 writefis fismat filename 例 writefis a my file typemy file fis 函数setfis 功能 设置 改变模糊推理系统的属性 格式 FIS2 setfis fis1 fispropname newPropValue 说明 参数fis1指明模糊推理系统的名称 fispropname指明模糊推理系统的全局属性 newPropValue指明此属性的新值 例 a readfis tipper a2 setfis a DefuzzMethod mom Defuzzification centroid 重心法 系统默认 mom 平均最大隶属度法 som 最大隶属度函数中的取最小值法 bisector 面积平分法 lom 最大隶属度函数中的取最大值法 4 系统图形显示函数 函数plotfis 功能 绘制模糊推理系统的推理过程结构框图 例 plotfis tipper 函数plotmf 功能 绘制语言变量所有语言值的隶属度函数曲线 格式 plotmf fismat varType varIndex 说明 参数fismat指明模糊推理系统的对应矩阵变量名称 varType指明变量类型 input 或 output varIndex指明输入或输出语言变量的编号 例 plotmf a input 2 5 模糊规则建立 函数addrule 功能 向模糊推理系统添加模糊规则 格式 a addrule a rulelist 说明 参数a为模糊推理系统对应的矩阵变量名称 rulelist以向量的形式给出需要添加的模糊规则 如果模糊推理系统有m个输入语言变量和n个输出语言变量 则向量rulelist的列数必须为m n 2 而行数等于需要添加的规则数目 在rulelist的每一行中 前m个数字表示各输入语言变量的语言值 隶属度函数的编号 随后的n个数字表示输出语言变量的语言值 第n m 1个数字是该规则的权重 权重的值在0到1之间 一般设定为1 第n m 2个数字为0或1两者之一 为1表示模糊规则各输入语言变量之间是and关系 为0则表示是or关系 函数showrule 格式 showrule fis showrule fis indexlist showrule fis indexlist format 说明 fis为模糊推理系统矩阵变量的名称 indexlist为规则编号 可以以向量形式指定显示多条规则 format为显示方式 有三种显示方式 即语句方式 verbose 符号方式 symbolic 和索引方式 indexed 例 showrule a 1 2 indexed 输出结果 11 1 1 112 2 1 1 6 计算模糊推理输出结果函数evalfis 格式 y evalfis U FIS 说明 参数U是输入数据 FIS是模糊推理矩阵 U的每一行是一个特定的输入向量 Y的每一行是一个特定的输出向量 如果输入U是M N矩阵 则系统是N输入的 返回的Y是M L矩阵 L是系统的输出的数目 例 fis readfis tipper out evalfis 21 49 fis 输出结果 out 7 016919 6810 MATLAB模糊控制系统设计实例1 一 设计目的 了解用MATLAB模糊工具箱的图形界面可视化工具实现模糊控制系统的方法 二 系统设计要求 1 输入变量 偏差e 偏差变化率de 输出变量 u相应隶属度函数为 2 规则要求 3 反模糊化方法 平均最大隶属度函数法mom 三 设计步骤 1 进入MATLAB系统 在MATLAB命令窗口执行fuzzy命令即可激活基本模糊推理系统编辑器 首先增加一个输入变量 2 在图形界面中通过鼠标双击就能激活隶属度函数编辑器和模糊规则编辑器等相应的编辑窗口 在窗口中进行相应属性设置即可 再在模糊推理系统编辑器中设置反模糊化方法 3 进入Ruleview观察器 观察模糊推理系统的输出情况 四 设计结果要求1 记录模糊规则编辑器Ruleedit中索引indexed方式显示的规则 2 记录Ruleview观察器中模糊推理系统的输出情况 当e 2 de 1时u为多少 当e 1 de 2时u为多少 激活模糊推理系统编辑器 增加一个输入变量 双击进入Mfedit 修改每个变量的论域和隶属度函数 trimf三角形 triangularmembershipfunction trapmf trapezium 梯形 Gaussmf 高斯型 zmf Z型 smf S型 NB选哪种Type 增加隶属度函数个数 PB选哪种Type trapmf trapezium 梯形 Gaussmf 高斯型 zmf Z型 smf S型 添加规则 语句表示的规则 规则显示方式 Verbose 语句 Symbolic 符号 Indexed 索引 索引indexed方式显示的规则 第一条规则11 5 1 1是啥意思 符号symbolic方式显示的规则 在FISEditor中设置反模糊化的方法 进入Ruleview观察器 观察模糊推理系统的输出情况 1 2 9指的是啥 当e 2 de 1时u为多少 当e 1 de 2时u为多少 保存此FIS系统后 双击1 fis后的命令行函数
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!