matlab中模糊工具箱的使用
关于模糊控制查了一些资料,觉得下面的例子简单又易于理解,甚好,现转载如下,以备日后查阅及与大家分享
用 Matlab 的 Fuzzy 工具箱实现模糊控制
转自http://blog.daviesliu.net/2005/03/28/153616/davies
用 Matlab 中的 Fuzzy 工具箱做一个简单的模糊控制,流程如下:
1、创建一个 FIS (Fuzzy Inference System ) 对象,
a = newfis(fisName,fisType,andMethod,orMethod,impMethod, aggMethod,defuzzMethod)
一般只用提供第一个参数即可,后面均用默认值。
2、增加模糊语言变量
a = addvar(a,'varType','varName',varBounds)
模糊变量有两类:input 和 output。在每增加模糊变量,都会按顺序分配一个 index,后面要通过该 index 来使用该变量。
3、增加模糊语言名称,即模糊集合。
a = addmf(a,'varType',varIndex,'mfName','mfType',mfParams)
每个模糊语言名称从属于一个模糊语言。Fuzzy 工具箱中没有找到离散模糊集合的隶属度表示方法,暂且用插值后的连续函数代替。
参数 mfType 即隶属度函数(Membership Functions),它可以是 Gaussmf、trimf、trapmf等,也可以是自定义的函数。
每一个语言名称也会有一个 index,按加入的先后顺序得到,从 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 1]
5、给定输入,得到输出,即进行模糊推理。
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 4.333]);
a = addmf(a,'input',1,'big','trimf',[1.6667 6 7]);
a = addvar(a,'output','U',[0 7]);
a = addmf(a,'output',1,'small','trimf',[0 1 4.333]);
a = addmf(a,'output',1,'big','trimf',[1.6667 6 7]);
rulelist = [1 1 1 1;
2 2 1 1];
a = addrule(a,rulelist);
u = evalfis(4,a)
其结果为:
u = 4.221
matlab中模糊工具箱的使用相关推荐
- matlab画图模糊,[转载]matlab中模糊工具箱的使用
用 Matlab 中的 Fuzzy 工具箱做一个简单的模糊控制,流程如下: 1.创建一个 FIS (Fuzzy Inference System ) 对象, a = newfis(fisName,fi ...
- matlab模糊工具箱使用,MATLAB中模糊神经网络工具箱的使用 - 全文
前些天把玩了一下MATLAB中神经网络工具箱的使用,忽有"扪参历井仰胁息"之感.别的倒是没什么,只是神经网络的数据组织结构有些"怪异",要是不小心就会导致工具箱 ...
- Matlab中EMD工具箱的下载安装和使用
Matlab中EMD工具箱的下载安装和使用 Matlab中EMD工具箱的下载安装和使用 电脑环境 下载指南 安装步骤 使用示例 Matlab中EMD工具箱的下载安装和使用 电脑环境 笔者的电脑环境为( ...
- MATLAB中模糊神经网络工具箱的使用
前些天小师妹(好吧,我向政府和人民坦白,小师妹是我虚构的)向我请教MATLAB里模糊神经网络工具箱的使用方法,说是没有搜索到好的教程.正所谓'勿以善小而不为',' 我不入地狱谁爱入谁入','天下兴亡匹 ...
- matlab中m_map工具箱绘制大圆航线
m_map工具箱需要从外部下载导入进matlab.m-map工具箱中常用的函数有:m_proj('proj name','property',value,-) 投影方式,投影区域大小····· m_c ...
- 在matlab中添加工具箱
1.如工具包spasm,解压够里面有好多个.m文件,把spasm文件夹放到matlab的安装目录下的toolbox中,如D:\Mathlab2009a\toolbox 2.在matlab中写命令 ad ...
- matlab ts模糊工具箱,通过算例熟悉MATLAB模糊控制工具箱
通过算例熟悉MATLAB模糊控制工具箱 设计一个二维模糊控制器控制一个一阶被控对象 1 () 1 G s Ts = + ,然后改变控制对象参 数的大小,观察模糊控制的鲁棒性. 1.模糊推理的五个步骤 ...
- matlab中PDE工具箱如何使用,使用PDE工具箱求解偏微分方程
在科学技术各领域中,有很多问题都可以归结为偏微分方程问题.在物理专业的力学.热学.电学.光学.近代物理课程中都可遇见偏微分方程. 偏微分方程,再加上边界条件.初始条件构成的数学模型,只有在很特殊情况下 ...
- matlab中统计工具箱函数名大全
MATLAB统计工具箱包括概率分布.方差分析.假设检验.分布检验.非参数检验.回归分析.判别分析.主成分分析.因子分析.系统聚类分析.K均值聚类分析.试验设计.决策树.多元方差分析.统计过程控制和统计 ...
最新文章
- MySQL与MongoDB之SQL语法对比
- http默认超时时间_Bof 是一个HTTP客户端,旨在尽可能方便用户使用
- 《推荐系统实践》样章:如何利用用户标签数据
- 英特尔预计5年内将成智能手机芯片大厂
- 【热烈祝贺】我刊主编郑纬民教授荣获中国存储终身成就奖!
- 2017.10.18 开店 失败总结
- [C++]动态规划系列之币值最大化
- dbscan js 实现_DBSCAN在PySpark上的实现
- android 布局覆盖 超出一部分_Android 开发者峰会 2019 常见问题解答
- java socket 全双工客户端_Java Websocket实例【服务端与客户端实现全双工通讯】
- linux fcntl函数,fcntl函数的使用详解
- sd卡写保护解除工具_U盘格式化工具怎么用
- CDISC SDTM AE domain学习笔记 - 2
- VNC远程控制软件,VNC远程控制软件如何实现批量管理服务器
- 无人机运动规划4:ego-swarm无人机群运动规划
- 侯晓迪:全身心的投入,吃住都在实验室
- PMP-7. 项目经理及其影响力
- python手机壁纸_【python日常学习】爬取各种图片(电脑、手机壁纸,美女、明星图片,头像等等)...
- 纪念三毛辞世20周年——《三毛经典语录》
- vue中处理后台返回的 html 特殊标签(‘\lt; p style=“xxx“ \gt;‘)或(\<p>)的三种情况及传给后端数据的解决方案
热门文章
- 方块填数 “数独”是当下炙手可热的智力游戏。一般认为它的起源是“拉丁方块”,是大数学家欧拉于1783年发明的。 如图[1.jpg]所示:6x6的小格被分为6个部分(图中用不同的颜色区分),每个部
- 基于浏览器的Linux
- 【005】Nginx学习笔记-Nginx真实IP
- js小技巧:根据身份证号,获取身份信息。如性别、生日、年龄
- 线性代数常用基本知识整理
- GDOI 2016 总结
- 201771010137 赵栋《面向对象程序设计(java)》第十八周学习总结
- python成语接龙到为所欲为_为所欲为是第一个成语开头的成语接龙游戏
- 企业级开发平台的演进
- android Check the JVM arguments defined for the gradle process in: