在线推理式模糊控制器实验指导书

在线推理式模糊控制器设计实验指导书
一、实验目的
利用Matlab软件实现模糊控制系统仿真实验,了解模糊控制的在线推理方法的基本原理及实现过程。

二、实验要求
以matlab模糊工具箱中提供的一个水位模糊控制系统仿真的实例,定义语言变量的语言值,设置隶属度函数,根据提供的规则建立模糊逻辑控制器。

最后启动仿真,观察水位变化曲线。

三、实验内容
1、模糊推理的五个步骤
1)输入变量的模糊化fuzzy inputs
这是模糊推理的第一步,是获取输入变量,并确定它们的隶属函数,从而确定属于每个模糊集合的隶属度。

2) 应用模糊算子Apply Fuzzy Operator
完成了输入模糊化,就知道了对于每个模糊规则,前提中每一个部分被满足的程度。

如果一个给定规则的前提有多个部分,则要应用模糊算子来获得一个数值,这个数值表示前提对于该规则的满足程度。

模糊算子有模糊交(AND)和模糊或(OR)算子。

3) 应用推理方法Apply Implication Method
推理的类型有mamdani和sugeno 推理。

Mamdani推理法是一种在模糊控制中普遍使用的方法,它本质上仍然是一种合成推理方法,只不过对模糊蕴涵关系取不同的形式而已。

Mamdani型推理,从每个规则的结果中得到的模糊集通过聚类运算后得到结果模糊集,被反模糊化后得到系统输出。

Sugeon型推理:其中
每个规则的结果是输入的线性组合,而输出是结果的加权线性组合。

4) 输出的聚类Aggregate All Outputs
由于决策是在对模糊推理系统中所有规则进行综合考虑的基础上做出的,因此必须以某种方式将规则结合起来以做出决策。

聚类就是这样一个过程,它将表示每个规则输出的模糊集结合成一个单独的模糊集。

聚类方法有max,probor(概率乘),sum。

其中,sum执行的是各规则输出集的简单相加。

5) 解模糊化Defuzzify
解模糊化过程也叫反模糊化过程,它的输入是一个模糊集,既上一步的聚类输出模糊集,其输出为一个单值。

模糊集的聚类中包含很多输出值,因此必须进行反模糊化,以从集合中解析出一个单输出值。

2、模糊逻辑工具箱的介绍
模糊逻辑工具箱提供的图形用户界面(GUI)工具有五个:模糊推理系统(FIS)编辑器;隶属函数编辑器;模糊规则编辑器;模糊规则观察器;输出曲面观察器。

1)FIS编辑器:
Matlab的FIS界面如图3所示。

在matlab的launch pad窗口中,用鼠标双击模糊逻辑系统工具箱(fuzzy logic toolbox)中的FIS Editor viewer项,打开模糊推理系统编辑器(FIS Editor),或者直接在matlab命令窗口中输入指令:fuzzy。

FIS处理系统有多少个输入变量,输出变量,名称是什么,模糊算子“与”(min,prod乘积,custom自定义),“或”(max大,probor 概率统计方法,custom),推理方法(min,prod,custom),聚类方法(max,probor,sum,custom),解模糊的方法(centroid质心法,bisector中位线法,middle of maximum,largest of maximum,smallest of maximum)。

图1 模糊推理系统(FIS)界面
2) 隶属函数编辑器:
确定各个变量的论域和显示范围(左下角编辑区内),如图4所示。

打开
方式:FIS Editor/edit/membership editor function。

定义每个变量的模糊集的名称(如负大、负中、负小、零、正小、正中、正大)和个数(Edit菜单中Add MFs),以及每个模糊变量的隶属函数类型和参数(点击变量的隶属函数曲线后在右下角编辑区内修改)。

隶属函数的类型有:trimf,trapmf,gbellmf,gaussmf,gauss2mf,
sigmf,dsigmf,psigmf,pimf,smf,zmf
图2 隶属函数编辑器
3) 模糊规则编辑器:
完成了对变量的命名,隶属函数也有了适当的形状和名字,就可以编辑模糊规则。

选择连接关系(and 或者or),权重,在编辑器左边选择一个输入变量,并选择它的语言值,然后在编辑器右边的输出变量中选择一个输出变量,并选中它的语言值,然后将这种联系添加到模糊规则中。

Options/Format 下可以选择模糊规则不同的格式,默认的是verbose(模糊规
则的详细格式),还有symbolic(符号格式),indexed(高度压缩格式)
图3模糊规则编辑器
4) 模糊规则观察器
模糊规则观察器的功能是可以令用户观察模糊推理图,并观察模糊推理系统的行为是否与预期的一样。

可以观察到输入变量(默认色是黄色)和输出变量(默认色是蓝色)如何应用在模糊规则中;反模糊化的数值是多少。

5)输出曲面观测器
模糊规则观察器非常详细的显示了在某一个时刻的计算。

如果看到模糊推理系统的全部输出曲面,即与整个输入区间相对应的输出区间,就要打开输出曲面观测器。

View/view surface…
3、在线推理模糊控制器的设计步骤:
确定模糊规则:
① if(水位正好)then(阀门大小不变)
②if(水位低)then(阀门迅速打开)
③if(水位高)then(阀门迅速关闭)
④if(水位正好且变化率为正)then(阀门缓慢关闭)
⑤if(水位正好且变化率为负)then(阀门缓慢打开)
1)在matlab命令窗口输入:sltank,便可打开模型窗口如图4。

图4水位控制系统的simulink仿真模型图
2)在matlab的命令窗口中,输入指令:fuzzy,便打开了模糊推理系统编辑器(FIS Editor)。

(图1)
3)利用FIS Editor编辑器的Edit/Add variable/input菜单,添加一条输入语言变量,并将两个输入语言和一个输出语言变量的名称分别定义为:level;rate;valve。

其中,level代表水位(三个语言值:低,高,正好),rate代表变化率(三个语言值:正,不变,负),valve代表阀门(五个语言变量:不变,迅速打开,迅速关闭,缓慢打开,缓慢关闭)。

4)利用FIS Editor编辑器的Edit/membership function菜单,打开隶属度函数编辑器,将输入语言变量level的取值范围(range)和显示范围(display range)。

合集下载

在线推理法模糊控制器实验报告

在线推理法模糊控制器实验报告

在线推理式模糊逻辑控制器设计实验报告学院:电力学院专业:自动化学号:姓名:时间:2013年11月16日一、实验目的利用Matlab软件实现模糊控制系统仿真实验,了解模糊控制的在线推理方法的基本原理及实现过程。

二、实验要求以matlab模糊工具箱中提供的一个水位模糊控制系统仿真的实例,定义语言变量的语言值,设置隶属度函数,根据提供的规则建立模糊逻辑控制器。

最后启动仿真,观察水位变化曲线。

三、实验步骤叙述在线推理模糊控制的仿真的主要步骤。

1)在matlab命令窗口输入:sltank,打开水位控制系统的simulink仿真模型图,如图;2)在matlab的命令窗口中,输入指令:fuzzy,便打开了模糊推理系统编辑器(FIS Editor),如图;3)利用FIS Editor编辑器的Edit/Add variable/input菜单,添加一条输入语言变量,并将两个输入语言和一个输出语言变量的名称分别定义为:level;rate;valve。

其中,level代表水位(三个语言值:低,高,正好),rate代表变化率(三个语言值:正,不变,负),valve代表阀门(五个语言变量:不变,迅速打开,迅速关闭,缓慢打开,缓慢关闭);4)①利用FIS Editor编辑器的Edit/membership function菜单,打开隶属度函数编辑器,如下图,将输入语言变量level的取值范围(range)和显示范围(display range)设置为[-1,1],隶属度函数类型(type)设置为高斯型函数(gaussmf),而所包含的三条曲线的名称(name)和参数(parameters)([宽度中心点])分别设置为:high,[0.3 -1];okay [0.3 0];low [0.3 1]。

其中high 、okay、low分别代表水位高、正好、低;②将输入语言变量rate的取值范围(range)和显示范围(display range)设置为[-0.1,0.1],隶属度函数类型(type)设置为高斯型函数(gaussmf),而所包含的三条曲线的名称(name)和参数(parameters)([宽度中心点])分别设置为:negative,[0.03 -0.1];none [0.03 0];positive [0.03 0.1]。

模糊控制实验

模糊控制实验

中南大学模糊控制课程实验报告学生姓名:彭雄威_____________ 指导教师: ________________ m _______ 学院:信息科学与工程学院学号:114611167 ______________实验一:本系统设计基于MATLAB图形模糊推理系统,设计步骤如下:打开MATLAB,输入指令fuzzy,打开模糊逻辑工具箱的图形用户界面窗口,新建一个Mamdani模糊推理系统。

(1) 增加一个输入变量,将输入变量命名为E、Ec,将输出变量命名U。

这样就建立了一个两输入单输出的模糊推理系统。

如图1.1所示。

图1.1增加一个输入变量(2) 设计模糊化模块:设计隶属度函数论域范围图3.2设计水位误差E模块3.3设计水位误差EC模块图3.4设计水位输出U模块(4)模糊控制器的规则设计le Editor: fuzzf(5)通过观察器观察规则情况在菜单view中的rules和surface选项分别对应得是规则观测器和曲而观测器。

123 4567891011121314151617181920212223242526272829”Input: 20】Plot points: ioi Move: [ left 11 rg ] |down] ( up ]Opened system tuzzf, 49 rules| 5 Close |图3.7规则观测器图3.6曲面观测器(6)保存编辑好的FIS文件实验二利用MATLAB软件的M文件编辑器和实验一所生成的fuzzf.FIS文件,在M 文件编辑器中输入:a=readfis('fuzzf');evalfis([・0.5广0.07;-0.5,0;・0.5,0.07; 0,・0.07;0,0;0,0.07;0.5广0.07;0.5,0;0.5,0.07],a)便可得fuzzf.FIS文件的模糊控制査询表,其中的数据在水位误差E的论域为[・ 1 1], 误差变化EC的论域为[.0.1 0.1]内可以任意取值。

模糊控制实验报告

模糊控制实验报告

模糊控制实验报告本实验通过使用模糊控制器来控制直流电机的转速。

模糊控制是一种基于模糊推理的控制方法,该方法可以处理一些无法准确数学建模的系统控制。

模糊控制的输入和输出都是模糊变量,这样可以考虑到系统存在的不确定性和模糊性。

实验装置包括模糊控制器、直流电机、转速测量装置、实验板等。

模糊控制器由模糊推理机、偏差和变化率输入模糊化模块、输出反模糊化模块、规则库组成。

实验板可通过控制开关选择转速和方向。

在实验中,通过设置转速值和方向,记录电机的真实转速和输出控制信号,来验证模糊控制器的控制效果。

通过不同的控制变量和规则库来对比不同的控制方案。

实验结果表明,模糊控制器对于直流电机转速的控制具有较好的效果。

当控制变量为偏差和变化率时,规则库中的设定合理,输出控制信号的变化平稳,电机转速较为稳定。

当增加控制变量或修改规则库时,控制效果也发生了变化。

同时,实验还验证了模糊控制的重要性和优越性,可以解决一些无法准确建模的系统控制问题。

在实验中,还需要注意一些实验细节,例如校准直流电机转速传感器的准确度,保证实验板电路的正常工作和实验数据的准确性,减少误差的影响。

总之,本实验通过实际操作验证了模糊控制器在直流电机转速控制中的应用,对于学习模糊控制的控制方法和实验操作具有很好的参考意义。

同时,本实验也展示了模糊控制对于处理模糊问题的效果。

在直流电机转速控制中,存在许多因素的影响导致控制过程不确定和模糊,例如负载的变化、外部干扰的存在等等。

而模糊控制可以将这些不确定因素转化为模糊变量进行处理,从而提高控制精度和鲁棒性。

此外,本实验也强调了规则库的重要性。

规则库是模糊控制中很关键的一部分,其中包含了专家经验和数学模型的映射关系。

规则库中的设定需要充分考虑被控对象的特性,才能够保证模糊控制器的控制效果。

而实验中不同的规则库设计对于控制效果的影响也展现了模糊控制的灵活性和可定制性。

最后,本实验的数据记录和实验结果分析也为后续工程实际应用提供了很好的参考。

922252-人工智能导论第4版试验参考程序-2模糊推理系统实验要求

922252-人工智能导论第4版试验参考程序-2模糊推理系统实验要求

实验二 模糊推理系统实验一、实验目的:理解模糊逻辑推理的原理及特点,熟练应用模糊推理,了解可能性理论。

二、实验原理模糊推理所处理的事物自身是模糊的,概念本身没有明确的外延,一个对象是否符合这个概念难以明确地确定模糊推理是对这种不确定性,即模糊性的表示与处理。

模糊逻辑推理是基于模糊性知识(模糊规则)的一种近似推理,一般采用Zadeh 提出的语言变量、语言值、模糊集和模糊关系合成的方法进行推理。

三、实验条件:Matlab 7.0 的Fuzzy Logic Tool 。

四、实验内容:1.设计洗衣机洗涤时间的模糊控制。

已知人的操作经验为:“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”。

要求:(1)设计相应的模糊控制器,给出输入、输出语言变量的隶属函数图,模糊控制规则表和推论结果立体图。

(2)假定当前传感器测得的信息为00(60,70x y ==污泥)(油脂),采用面积重心法反模糊化,给出模糊推理结果,并观察模糊控制的动态仿真环境,给出模糊控制器的动态仿真环境图。

提示:模糊控制规则如图4-1。

其中SD (污泥少)、MD (污泥中)、LD (污泥多)、NG (油脂少)、MG (油脂中)、LG (油脂多)、VS (洗涤时间很短)、S (洗涤时间短)、M (洗涤时间中等)、L (洗涤时间长)、VL (洗涤时间很长)。

2.假设两汽车均为理想状态,即2Y()4U()20.724s s s s =+⨯⨯+,Y 为速度,U 为油门控制输入。

(1)设计模糊控制器控制汽车由静止启动,追赶200m 外时速90km 的汽车并与其保持30m 的距离。

(2)在25时刻前车速度改为时速110km 时,仍与其保持30m 距离。

(3)在35时刻前车速度改为时速70km 时,仍与其保持30m 距离。

要求:(1)设计两输入一输出的模糊控制器,给出输入、输出语言变量的隶属函数图,模糊控制规则表,推论结果立体图。

模糊控制基本实验

模糊控制基本实验

1假设一个双输入/单输出系统,输入X∈[-5,5]和Y ∈[-10,10]模糊化成三级:负、零、正,输出Z ∈[-5,5]模糊化成五级:负大、负小、零、正小、正大。

模糊规则表如下所示。

适当选择隶属度函数后,设计一个基于Mamdani模型的模糊推理系统,绘制出输入/输出曲线,并计算当X和Y分别为-3和5以及-2和-7时输出Z的大小。

图1:输入变量X范围及隶属度函数曲线
图2:输入变量Y范围及隶属度函数曲线
图3:输出变量Z范围及隶属度函数曲线
图4:输入输出变量三维曲面图
图5:输入变量X=-3,Y=5时输出变量Z值
图6:输入变量X=-5,Y=-9时输出变量Z 值
2.查找相关文献,设计能跟踪给定输入的模糊控制器,假设系统模型如下:
其中K=30, T1=10, T2=40, Td=2。

(用simulink 搭建系统,对系统进行仿真,给
出系统的阶跃响应曲线)
图7:模糊控制经验规则
)
1)(1()(21s T s T Ke s G s
T d ++=
-
图8:E和EC的范围及隶属度函数曲线
图9:输出变量u的范围及隶属度函数
图10:模糊控制规则
图10:模糊控制规则观察表
图11:输入输出变量三维曲面图
图12:simulink仿真电路图
其中,经过多次试探,当K1=2.4,K2=0.65,K3=1.15时,仿真效果较好。

图13:系统单位阶跃响应输出曲线图。

智能控制--模糊控制实验报告

智能控制--模糊控制实验报告

clear all;close all;T=0; %ʱ¼ä³£Êýa=newfis('fuzz_temperatrue');a=addvar(a,'input','e',[-3,3]); %Parameter e a=addmf(a,'input',1,'NB','zmf',[-3,-1]);a=addmf(a,'input',1,'NM','trimf',[-3,-2,0]);a=addmf(a,'input',1,'NS','trimf',[-3,-1,1]);a=addmf(a,'input',1,'Z','trimf',[-2,0,2]);a=addmf(a,'input',1,'PS','trimf',[-1,1,3]);a=addmf(a,'input',1,'PM','trimf',[0,2,3]);a=addmf(a,'input',1,'PB','smf',[1,3]);a=addvar(a,'output','u',[72,78]); %Parameter u a=addmf(a,'output',1,'NB','zmf',[72,74]);a=addmf(a,'output',1,'NM','trimf',[72,73,75]);a=addmf(a,'output',1,'NS','trimf',[73,74,75]);a=addmf(a,'output',1,'Z','trimf',[74,75,76]);a=addmf(a,'output',1,'PS','trimf',[75,76,77]);a=addmf(a,'output',1,'PM','trimf',[75,77,78]);a=addmf(a,'output',1,'PB','smf',[76,78]);rulelist=[1 1 1 1; %Edit rule base2 2 1 1;3 3 1 1;4 4 1 1;5 5 1 1;6 6 1 1;7 7 1 1];a=addrule(a,rulelist);a1=setfis(a,'DefuzzMethod','mom'); %Defuzzywritefis(a1,'temperatrue'); %Save to fuzzy file "tank.fis" a2=readfis('temperatrue');figure(1);plotfis(a2);figure(2);plotmf(a,'input',1);figure(3);plotmf(a,'output',1);flag=1;if flag==1showrule(a) %Show fuzzy rule baseruleview('temperatrue'); %Dynamic Simulationenddisp('-------------------------------------------------------');disp(' fuzzy controller table:e=[-3,+3],u=[-4,+4] ');disp('-------------------------------------------------------');for i=1:1:7e(i)=i-4;Ulist(i)=evalfis([e(i)],a2);endUlist=round(Ulist)e=-3; % Erroru=evalfis([e],a2) %Using fuzzy inference四、Simulink仿真模型五、实验结果令T=0;1、模糊控制器为一维控制器,输入输出变量的量化等级为7级,取5个模糊集。

模糊控制基础实验

模糊控制基础实验一、实验目的1.通过实验熟悉并掌握各类模糊控制系统工具箱函数的用法2.通过实验熟悉并掌握典型隶属度函数的Matlab仿真3.通过实验熟悉并掌握Matlab软件的利用方式二、实验内容1.按照给定参数编制模糊推理系统数据结构管理功能函数及整个“tipper”模糊推理系统的Matlab仿真程序。

2. 运行所编制的程序,取得各功能函数的仿真结果,完成FIS的求解。

3. 按照给定参数编制取得各类典型隶属度函数的Matlab仿真程序。

4. 运行所编制的程序,取得隶属度函数仿真曲线,并研究参数转变对曲线特性的影响,完成典型隶属度函数的仿真研究。

三、实验步骤1. 针对“tipper”模糊推理系统,编制相应的数据结构管理功能函数的Matlab仿真程序。

2. 运行所编制的程序,取得各功能函数的仿真结果。

3.按照给定参数编制整个“tipper”模糊推理系统的仿真程序,并求解在给定作用下FIS 的输出。

4. 熟悉Matlab软件,编制取得各类典型隶属度函数的Matlab仿真程序。

5. 运行所编制的程序,取得典型隶属度函数的仿真曲线。

6.改变隶属度函数的参数,观测参数的转变对仿真曲线的影响。

7.分析实验结果,完成实验报告。

四、实验参数要求1.在tipper模糊系统中,'input'1即'service'的范围为[0 10],且分为'poor','good','excellent'三个模糊集,3个模糊集均采用'gaussmf'型隶属函数,区间别离为[ 0],[ 5],[ 10];input(2)即'food '的范围为[0 10],且分为'rancid ','delicious '2个模糊集,2个模糊集均采用'trapmf'型隶属函数,区间别离为[-2 0 1 3],[7 9 10 12];output(1)即'tip''的范围为[0 30],且分为' cheap ',' average ',' generous '三个模糊集,3个模糊集均采用' trimf '型隶属函数,区间别离为[0 5 10],[10 15 20],[20 25 30];4.求解输入别离为[1 2]和[3 5;2 7]时系统的输出a=newfis('tipper');(1).name='service';(1).range=[0 10];(1).mf(1).name='poor';(1).mf(1).type='gaussmf';(1).mf(1).params=[ 0];(1).mf(2).name='good';(1).mf(2).type='gaussmf';(1).mf(2).params=[ 5];(1).mf(3).name='excellent';(1).mf(3).type='gaussmf';(1).mf(3).params=[ 10];(2).name='food';(2).range=[0 10];(2).mf(1).name='rancid';(2).mf(1).type='trapmf';(2).mf(1).params=[-2 0 1 3];(2).mf(2).name='delicious';(2).mf(2).type='trapmf';(2).mf(2).params=[7 9 10 12]; (1).name='tip';(1).range=[0 30];(1).mf(1).name='cheap';(1).mf(1).type='trimf';(1).mf(1).params=[0 5 10];(1).mf(2).name='average';(1).mf(2).type='trimf';(1).mf(2).params=[10 15 20];(1).mf(3).name='generous';(1).mf(3).type='trimf';(1).mf(3).params=[20 25 30];a=readfis('tipper');当输入为[1 2]时evalfis([1 2],a)ans =当输入为[2 4;6 8]时evalfis([2 4;6 8],a)ans =2.Gaussian型隶属度函数σ=3,c=4 x=0::10;y=gaussmf(x,[2 5]);plot(x,y)xlabel('gaussmf,P=[2,5]')3. gbellmf隶属度函数 a=3, b=4,c=7x=0::10;y=gbellmf(x,[3,4,7]);plot(x,y)xlabel('x');ylabel('y');4. Sigmoidal隶属度函数 a1=3, c1=4; a2=-3, c2=4; x=0::10;y=sigmf(x,[3 4]);plot(x,y)xlabel('x');ylabel('y');y=sigmf(x,[-3 4]);5. trapezoid隶属度函数a=, b=5, c=6, d=9 x=0::10;y=trapmf(x,[ 5 6 9]);plot(x,y)xlabel('x');ylabel('y');6. triangle隶属度函数 a=2, b=5, c=7x=0::10;y=trimf(x,[2 5 7]);plot(x,y)xlabel('x');ylabel('y');7. Z 形隶属度函数 a=2, b=6x=0::10;y=zmf(x,[2 6]);plot(x,y)xlabel('x ');ylabel('y ');8.按照给定参数,设计自概念隶属函数的Matlab 仿真程序①以年龄为论域,取x=[0,150],设计模糊集“年轻”的隶属函数的Matlab 仿真程序②设计一个三角形隶属函数,按[-6,6]范围分为七个品级,成立一个模糊系统,用来表示 {负大,负中,负小,零,正小,正中,正大}。

第七章 模糊控制技术第五节模糊推理

2.模糊逻辑和模糊推理
• 对于实际的一个命题(事件),可以用“真”或“假”进行 判断。如果该命题非真即假,我们说这是精确命题(事件), 采用二值逻辑推理。如果命题不是绝对的“真”或“假”,而 是反映其以多大程度隶属于“真”,也就是带有模糊性,则该 命题为模糊命题,必须采用不确定性推理方法进行推理。
如果命题A、B为模糊命题,则需要采用不确定性推理方法。 不确定推理情况下的假言推理具有如下逻辑结构:
Hale Waihona Puke 五、模糊推理1.语言变量
设:H4代表“极”或者“非常非常”,其意义是对描述的 模糊值求4次方;
H2代表“很”或者“非常”,其意义是对描述的模糊值 求2次方;
H1/2代表“较”或者“相当”,其意义是对描述的模糊 值求1/2次方;
H1/4代表“稍”或者“略微”,其意义是对描述的模糊 值求1/4次方。
这样,集中化算子的幂乘运算的幂次大于1,幂次越高,语 气的强化程度越大;松散化算子的幂乘运算的幂次小于1, 幂次越高,语气的弱化程度越大。
关系生成规则:设A是X上的模糊集合,B是Y上的模糊集 合,是X到Y的模糊关系R(x,y)。则存在一种方法,也就是 关系生成规则,由A和B得到:
推理合成规则:即由模糊关系R(x,y)和小前提A′中的得 到Y上的模糊集B′的规则,即:
➢ 其中,算符“o”代表合成运算,通过解模糊关系程序获 得推理结果B′,这就是模糊推理过程。
五、模糊推理
2.模糊逻辑和模糊推理
一个单输入单输出模糊系统的模糊推理的模型如图所示:
更一般的模糊推理模型包含有多个大条件,构成多条规则模 糊推理模型,具有如下的逻辑结构:
其关系生成规则:根据Aij(i≤n,i≤m)和生成模糊关系R,R 就是X=X1×X2×…Xm×Y上的模糊关系。而推论合成规则

模糊逻辑控制实验指导书学习研究资料

模糊逻辑控制MATLAB 实验指导书一、实验目的1、本实验要求在学生掌握模糊控制器基本工作原理和设计方法基础上,熟悉MALAB 中的模糊控制工具箱,能针对实际问题设计模糊控制器,建立模糊控制系统,训练学生综合运用计算机来解决一些实际问题的能力。

2、通过仿真分析模糊控制器的信息的变化(主要讨论控制器解模方法和量化因子的变化)对系统性能的影响。

3、在控制器信息一定的情况下改变被控对象的信息,分析对象信息变化时fuzzy controller 的适应能力。

二、实验设备微型计算机一台 MATLAB 软件三、实验要求设计一个二维模糊控制器控制一个二一阶被控对象21()21G s s s =++,分别改变控制器和控制对象信息的大小,观察模糊控制的鲁棒性。

四、实验分析完成以上要求分两步:一是在fuzzy logic 工具箱中建立模糊推理系统(FIS ),二是在simulink 中建立完整的模糊控制系统并进行仿真分析。

(一)、模糊控制器的设计模糊控制器的设计方法为:1、选取控制器的输入输出:选取误差e 及误差变化量ec 为输入, u 作为输出用于控制对象,这样模糊控制器具有二输入一输出的结构。

2、模糊集及论域的定义:● 输入e 的模糊子集为{NB NM NS NO PO PS PM PB} ● 输入ec 和输出u 的模糊子集均为{NB NM NS ZO PS PM PB} ● e 的论域为{-6 -5 -4 -3 -2 -1 -0 +0 1 2 3 4 5 6 } ● ec 的论域为{-6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 } ● u 的论域为{-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 } 我们选取三角形作为隶属度函数的形状,图1-1 e的隶属度函数图1-2 ec的隶属度函数图1-3 u 的隶属度函数3、确定模糊控制规则,模糊规则表如下:NBNMNSZOPSPMPBNB NB NB NB NB NM ZO ZO NM NB NB NB NB NM ZO ZO NS NM NM NM NM ZO PS PS NO NM NM NS ZO PS PM PM PO NM NM NS ZO PS PM PM PS NS NS ZO PM PM PM PM PM ZO ZO PM PB PB PB PB PBZOZOPMPBPBPBPB4、选取输入输出变量的量化因子:这里暂时选定输入输出的量化因子Ke =Kc =Ku =1,接下来的仿真过程还可以调整。

(完整word版)模糊推理系统编辑器实验

实验二一、实验目的1、熟悉MATLAB中模糊系统工具箱的使用方法2、掌握模糊推理系统编辑器的使用3、掌握模糊规则以及模糊隶属度函数的意义和编辑器的使用方法二、实验内容1、模糊推理系统编辑器1)命令窗口中键入命令:fuzzy,激活基本模糊推理系统编辑器,选择菜单“File→Export→to workspace…”,以“wuyunhe233080108”为文件名保存到工作空间,如图1所示:图1 基本模糊推理系统编辑器2)选择菜单“Edit→add Variable…→Input”添加输入变量,使系统成为双输入,然后为变量命名:input1→service(服务),input2→food(食物),output1→tip,如图2所示:图2 双输入模糊控制系统2、隶属度函数编辑器在命令窗口输入mfedit或者用菜单选项“Edit→Membership Function”都可以打开隶属度函数编辑器。

对于变量service,加入三个模糊隶属度函数分别如下:Name=’service’Range=[0 10]MumMfs=3MF1=’poor’:’gaussmf’,[1.5 0]MF2=’good’:’gaussmf’,[1.5 0]MF3=’excellent’:’gaussmf’,[1.5 0]对于变量service,加入三条隶属度函数分别如下: Name=‘service’Range=[0 10]MumMfs=3MF1=‘poor’’: ‘gaussmf’,[1.5 0]MF2=‘good’: ‘gaussmf’,[1.5 5]MF3=‘excellent’: ‘gaussmf’,[1.5 10]对于变量food,加入两条隶属函数:Name=‘food’Range=[0 10]MumMfs=2MF1=‘rancid’: ‘trapmf’,[0 0 1 3]MF2=‘delicious’: ‘trapmf’,[7 9 10 10]对于变量tip,加入三条隶属函数:Name=‘tip’Range=[0 30]MumMfs=3MF1=‘cheap’: ‘trimf’,[0 5 10]MF2=‘average’: ‘trimf’,[10 15 20]MF3=‘generous’: ‘trimf’,[20 25 30]完成上述的隶属度函数编辑后,保存文件到workspace,可以得到图3,图4和图5的界面。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档