模糊控制实验报告.doc

上传人:b****9 文档编号:140788 上传时间:2022-10-04 格式:DOC 页数:9 大小:473.50KB
下载 相关 举报
模糊控制实验报告.doc_第1页
第1页 / 共9页
模糊控制实验报告.doc_第2页
第2页 / 共9页
模糊控制实验报告.doc_第3页
第3页 / 共9页
模糊控制实验报告.doc_第4页
第4页 / 共9页
模糊控制实验报告.doc_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

模糊控制实验报告.doc

《模糊控制实验报告.doc》由会员分享,可在线阅读,更多相关《模糊控制实验报告.doc(9页珍藏版)》请在冰豆网上搜索。

模糊控制实验报告.doc

实验报告

课程名称模糊控制

专业班级自动化1041

姓名赵伟

学号1004421112

电气与信息学院

和谐勤奋求是创新

实验题目

隶属度函数仿真

实验室

一教机房

实验时间

2013年03月25日

实验类别

验证

同组人数

成绩

一、实验目的

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'的范围为[010],且分为'poor','good','excellent'三个模糊集,3个模糊集均采用'gaussmf'型隶属函数,区间分别为[1.50],[1.55],[1.510];input

(2)即'food'的范围为[010],且分为'rancid','delicious'2个模糊集,2个模糊集均采用'trapmf'型隶属函数,区间分别为[-2013],[791012];output

(1)即'tip''的范围为[030],且分为'cheap','average','generous'三个模糊集,3个模糊集均采用'trimf'型隶属函数,区间分别为[0510],[101520],[202530]

④求解输入分别为[12]和[35;27]时系统的输出

2.Gaussian型隶属度函数σ=2,c=5

3.gbellmf隶属度函数a=2,b=4,c=6

4.Sigmoidal隶属度函数a1=2,c1=4;a2=2,c2=4;

5.trapezoid隶属度函数a=1,b=5,c=7,d=8

6.triangle隶属度函数a=3,b=6,c=8

7.Z形隶属度函数a=3,b=7

8.根据给定参数,设计自定义隶属函数的Matlab仿真程序

①以年龄为论域,取x=[0,150],设计模糊集“年轻”的隶属函数的Matlab仿真程序

②设计一个三角形隶属函数,按[-6,6]范围分为七个等级,建立一个模糊系统,用来表示

{负大,负中,负小,零,正小,正中,正大}。

五、程序及仿真图形

1“tipper”模糊推理系统

程序如下:

a=newfis('tipper');

a=addvar(a,'input','service',[010]);

a=addmf(a,'input',1,'poor','gaussmf',[1.50]);

a=addmf(a,'input',1,'good','gaussmf',[1.55]);

a=addmf(a,'input',1,'excellent','gaussmf',[1.510]);

a=addvar(a,'input','food',[010]);

a=addmf(a,'input',1,'rancid','trapmf',[-2013]);

a=addmf(a,'input',1,'delicious','trapmf',[791012]);

a=addvar(a,'output','tip',[030]);

a=addmf(a,'output',1,'cheap','trimf',[0510]);

a=addmf(a,'output',1,'average','trimf',[101520]);

a=addmf(a,'output',1,'generous','trimf',[202530]);

a2=readfis('tipper');

figure

(1);

plotfis(a2);

figure

(2);

plotmf(a,'input',1);

figure(3);

plotmf(a,'output',1);

④求解输入分别为[12]和[35;27]时系统的输出

1)当输入为[12]时系统的输出:

程序如下:

a=newfis('tipper');

a=addvar(a,'input','service',[010]);

a=addmf(a,'input',1,'poor','gaussmf',[1.50]);

a=addmf(a,'input',1,'good','gaussmf',[1.55]);

a=addmf(a,'input',1,'excellent','gaussmf',[1.510]);

a=addvar(a,'input','food',[010]);

a=addmf(a,'input',1,'rancid','trapmf',[-2013]);

a=addmf(a,'input',1,'delicious','trapmf',[791012]);

a=addvar(a,'output','tip',[030]);

a=addmf(a,'output',1,'cheap','trimf',[0510]);

a=addmf(a,'output',1,'average','trimf',[101520]);

a=addmf(a,'output',1,'generous','trimf',[202530]);

fismat=readfis('tipper');

out=evalfis([12],fismat)

a2=readfis('tipper');

figure

(1);

plotfis(a2);

figure

(2);

plotmf(a,'input',1);

figure(3);

plotmf(a,'output',1);

2)当输入为[35;27]时系统的输出:

程序如下:

a=newfis('tipper');

a=addvar(a,'input','service',[010]);

a=addmf(a,'input',1,'poor','gaussmf',[1.50]);

a=addmf(a,'input',1,'good','gaussmf',[1.55]);

a=addmf(a,'input',1,'excellent','gaussmf',[1.510]);

a=addvar(a,'input','food',[010]);

a=addmf(a,'input',1,'rancid','trapmf',[-2013]);

a=addmf(a,'input',1,'delicious','trapmf',[791012]);

a=addvar(a,'output','tip',[030]);

a=addmf(a,'output',1,'cheap','trimf',[0510]);

a=addmf(a,'output',1,'average','trimf',[101520]);

a=addmf(a,'output',1,'generous','trimf',[202530]);

fismat=readfis('tipper');

out=evalfis([35;27],fismat)

a2=readfis('tipper');

figure

(1);

plotfis(a2);

figure

(2);

plotmf(a,'input',1);

figure(3);

plotmf(a,'output',1);

2.Gaussian型隶属度函数σ=2,c=5

程序如下:

x=0:

0.1:

10;

y=gaussmf(x,[25])

plot(x,y);

xlabel('x');ylabel('y');

3.gbellmf隶属度函数a=2,b=4,c=6

程序如下:

x=0:

0.1:

10;

y=gbellmf(x,[246])

plot(x,y);

xlabel('x');ylabel('y');

4.Sigmoidal隶属度函数a1=2,c1=4;a2=2,c2=4;

程序如下:

x=0:

0.1:

10;

y=sigmf(x,[2424])

plot(x,y);

xlabel('x');ylabel('y');

5.trapezoid隶属度函数a=1,b=5,c=7,d=8

程序如下:

x=0:

0.1:

10;

y=trapmf(x,[1578])

plot(x,y);

xlabel('x');ylabel('y');

6.triangle隶属度函数a=3,b=6,c=8

程序如下:

x=0:

0.1:

10;

y=trimf(x,[368]);

plot(x,y);

xlabel('x');ylabel('y');

7.Z形隶属度函数a=3,b=7

程序如下:

x=0:

0.1:

10;

y=zmf(x,[37]);

plot(x,y);

xlabel('x');ylabel('y');

8.根据给定参数,设计自定义隶属函数的Matlab仿真程序

①以年龄为论域,取x=[0,150],设计模糊集“年轻”的隶属函数的Matlab仿真程序

程序如下:

%MembershipfunctionforYoungPeople

clearall;

closeall;

fork=1:

1:

1501

x(k)=(k-1)*0.10;

ifx(k)>=0&x(k)<=35

y(k)=1.0;

else

y(k)=1/(1+((x(k)-35)/5)^2);

end

end

plot(x,y,'k');

xlabel('xyears');ylabel('Degreeofmembership');

②设计一个三角形隶属函数,按[-6,6]范围分为七个等级,建立一个模糊系统,用来表示

程序如下:

a=newfis('t');

a=addvar(a,'input','e',[-6,6]);

a=addmf

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1