计算智能--模糊控制器

一、模糊控制器概述

在确定性控制系统中,根据控制器输出的个数,可分为单变量控制系统和多变量控制系统。在模糊控制系统中也可类似地划分为单变量模糊控制和多变量模糊控制。

二、模糊控制器的设计步骤

1、确定模糊控制器的结构
2、定义输入输出模糊集、隶属函数
3、建立模糊控制规则
4、模糊推理
5、反模糊化

三、模糊控制器设计举例及matlab代码实现

1、确定模糊控制器的结构(两个输入e和ec,一个输出u),即多变量模糊控制器。
在这里插入图片描述
2、定义输入输出模糊集、隶属函数
输入e的模糊集定义及隶属函数(e的输入范围为-9到9,有NB、NM、NS、Z、PS、PM、PB七个隶属函数)。
在这里插入图片描述
输入eu的模糊集定义及隶属函数(eu的输入范围为-9到9,有NB、NM、NS、Z、PS、PM、PB七个隶属函数)。
在这里插入图片描述
输出u的模糊集定义及隶属函数(u有NB、NM、NS、Z、PS、PM、PB七个隶属函数)。
在这里插入图片描述
3、建立模糊控制规则
对输入(e、eu)、输出(u)的隶属函数建立模糊规则。
模糊规则解释(本文中定义了36条模糊规则):
2.If (e is NB) and (ec is NM) then (u is NB) (1)
如果输入e属于隶属函数NB,输入ec属于隶属函数NM,则输出u属于隶属函数NB。
10.If (e is NM) and (ec is PB) then (u is PS) (1)
如果输入e属于隶属函数NM,输入ec属于隶属函数PB,则输出u属于隶属函数PS。
在这里插入图片描述
在这里插入图片描述
4、模糊推理
通过模糊推理算法和模糊控制规则进行推理,得到最终的控制量。
在这里插入图片描述
5、反模糊化
将模糊推理结果转化为精确值。常用的反模糊化方法有三种,最大隶属度法、重心法、加权平均法,本例采用的是重心法。
在这里插入图片描述

四、运行结果及源代码

输入e和输入ec,经过模糊推理计算得到输出u:
在这里插入图片描述
输入e的7个隶属度函数图像:
在这里插入图片描述
输入ec的7个隶属度函数图像:
在这里插入图片描述
输出u的7个隶属度函数图像:
在这里插入图片描述
经过模糊推理得到的模糊矩阵:
在这里插入图片描述
源代码:

%模糊控制器设计
a=newfis('fuzzf');                   %创建新的模糊推理系统

%输入1
f1=1; 
a=addvar(a,'input','e',[-9*f1,9*f1]);                   
 %添加 e 的模糊语言变量
a=addmf(a,'input',1,'NB','zmf',[-2*f1,3*f1]);          
 %添加 e 的模糊语言变量的隶属度函数(z型)
a=addmf(a,'input',1,'NM','trimf',[-4*f1,-1*f1,5*f1]);      
  %隶属度函数为三角形
a=addmf(a,'input',1,'NS','trimf',[-
  • 3
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值