智能控制实验报告 - 范文中心

智能控制实验报告

05/27

实验一 模糊控制器设计

一、 目的和要求

1. 目的

(1) 通过本次实验,进一步了解模糊控制的基本原理、模糊模型的建立和模糊控制器的设计过程。

(2) 掌握MATLAB模糊逻辑工具箱的图形用户界面设计模糊控制器的过程。

(3) 提高控制系统的仿真能力

(4) 熟悉MATLAB在模糊控制系统仿真中的应用。

2. 要求

(1)充分理解实验内容,并独立完成实验报告。

(2)实验题目、实验具体内容及实验功能、结果分析、收获或不足、程序清单。

二、 实验内容

完成对给定的对象的模糊控制器设计:

某一工业过程要根据测量的温度和压力来确定阀门开启的角度。假设输入温度∈[0,30]模糊化成两级:冷和热。压力∈[0,3]模糊化成两级:高和正常。输出阀门开启角度的增量∈[-10,10],模糊化成三级:正、负和零。模糊控制规则为:

IF 温度 is 冷 and 压力 is 高 THEN 阀门角度增量 is 正

IF 温度 is 热 and 压力 is 高 THEN 阀门角度增量 is 负

IF 压力 is 正常 THEN 阀门角度增量 is 零

适当选择隶属函数后,设计一基于Mamdani 模型的模糊推理系统,计算温度和压力分布为5 和 1.5 , 11和2, 以及论域范围内的另外一组输入(课任意选择)时的阀门开启的角度增量,并绘制输入和输出曲面图。

方法有三种:

1.在MATLAB COMMAND 界面直接编制程序实现(选作实验);

2.在MATLAB COMMAND 界面利用系统提供个模糊控制指令编制程序实现;

3.利用MATLAB利用matlab中的模糊逻辑工具箱提供的图形用户界面(GUI)工具设计模糊控制器。

三.实验步骤

1.在COMMAND界面利用以下MATLAB程序,进行实验验证。

2.利用MATLAB利用matlab中的模糊逻辑工具箱提供的图形用户界面(GUI)工具设计模糊控制器。

四. 实验结果及分析

五.体会与总结

模糊控制直接依据人类专家的控制经验进行设计,不依赖被控对象的模型,可以有效地实现对复杂、非线性、大滞后、不确定性严重的对象的控制。本次实验是利用MATLAB完成对给定的对象的模糊控制器设计。

通过这次实验,我对模糊控制有了深入的了解,熟悉了模糊控制的基本思想和原理,了解了模糊控制器的结构设计,以及模糊控制的应用领域。同时我也学会了使用MATLAB模糊逻辑工具箱的图形用户界面设计简单的模糊控制器,了解了模糊控制器各个参数的意义,以及模糊控制器的功能,对MATLAB

软件的功能有了进一步的了解。

实验二 神经网络控制器设计

一、实验目的

(1)熟悉MATLAB 工作环境,熟悉神经网络命令窗口;

(2)进一步了解神经网络控制的基本原理、神经网络模型的建立和神经网络控制器的设计过程;

(3)掌握BP神经网络算法的基本设计实现并拟合函数;

(4)熟练掌握误差反馈对网络权重修正的机理;

(5)熟悉BP网络隐含层节点个数,频率参数及训练算法对输出结果的影响。

二、 实验内容

BP网络由很强的映射能力,主要用于模式识别分类、函数逼近、函数压缩等。下面将通过实例来说明BP网络在函数逼近方面的应用。

要求设计一个BP网络,逼近函数:g(x)=1+sin(k*pi/4*x),实现对该非线性函数的逼近。其中,分别令k=1,2,4进行仿真,通过调节参数(如隐藏层节点个数等)得出信号的频率与隐层节点之间,隐层节点与函数逼近能力之间的关系。

(1)网络设计,包括输入层、隐含层、输出层节点个数的设计。

(2)算法步骤

(3)编程,注意原始数据的通用化,数据输入的随机性。

(4)网络训练,注意训练数据与验证数据分开。

(5)网络验证

(6)结果分析,修改隐含层节点个数,修改频率参数,修改训练算法,分别对结果的影响。

三、实验步骤

(1)基于BP神经网络逼近函数

步骤1:假设频率参数k=1,绘制要逼近的非线性函数的曲线。

k=1;

p=[-1:.05:8];

t=1+sin(k*pi/4*p);

plot(p,t,'-');

title('要逼近的非线性函数');

xlabel('时间');

ylabel('非线性函数');

步骤2:网络的建立

应用newff()函数建立BP网络结构。隐层神经元数目n可以改变,暂设为n=3,输出层有一个神经元。选择隐层和输出层神经元传递函数分别为tansig函数和purelin函数,网络训练的算法采用Levenberg–Marquardt算法trainlm。

步骤3:网络训练

应用train()函数对网络进行训练之前,需要预先设置网络训练参数。将训练时间设置为50,训练精度设置为0.01,其余参数使用缺省值。保存训练后得到的误差变化过程曲线。

步骤4: 网络测试

对于训练好的网络进行仿真,绘制网络输出曲线,并与原始非线性函数曲线以及未训练网络的输出结果曲线相比较,保存比较出来的结果。

(2)不同频率下的逼近效果

(1)频率参数设为k=1,当隐层神经元数目取n=3时

(2)频率参数设为k=2,当隐层神经元数目分别取n=3、n=6时

(3)频率参数设为k=4,当隐层神经元数目分别取n=6、n=8时

分别观察并保存以上设置参数训练后的网络输出结果。分析网络输出结果。

(3)各种BP学习算法MATLAB仿真

根据上面对BP神经网络的MATLAB设计,可以得出下面的通用的MATLAB程序段,由于各种BP学习算法采用了不同的学习函数,所以只需要更改学习函数即可。设定好学习函数之后,运行并分别保存仿真误差曲线及仿真效果图。

MATLAB程序段如下:

x=-4:0.01:4;

y1=sin((1/2)*pi*x)+sin(pi*x);

%trainlm函数可以选择替换

net=newff(minmax(x),[1,15,1],{'tansig','tansig','purelin'},'trainlm');

net.trainparam.epochs=2000;

net.trainparam.goal=0.00001;

net=train(net,x,y1);

y2=sim(net,x);

err=y2-y1;

res=norm(err);

Pause%暂停,按任意键继续

%绘图,原图(蓝色光滑线)和仿真效果图(红色+号点线)

plot(x,y1);

hold on

plot(x,y2,'r+');

表1各种BP学习算法MATLAB仿真结果比较

记录并分析仿真结果,思考并分析下面问题:

四. 实验结果及分析

(1)基于BP神经网络逼近函数

要逼近的非线性函数

未训练网络的输出结果仿真输出--原函数-

时间非线性函数

时间 图1.1 要逼近的非线性函数 图1.2 未训练网络的输出结果

由图1.1和图1.2可以看出,未训练网络的输出结果与要逼近的非线性函数相差很大,因为使用newff()函数建立网络时,权值和阈值的初始化是随机的,所以网络输出结果很差,达不到函数逼近的目的。

训练后网络的输出结果

时间仿真输出图1.3 训练后网络的输出结果

由图1.3和图1.1可以看出,训练后网络的输出结果和要逼近的非线性函数很接近。BP神经网络有着

很强的学习能力和自适应能力,经过训练后,BP网络对非线性函数的逼近效果相当好。

(2)不同频率下的逼近效果

训练后网络的输出结果训练后网络的输出结果

仿真输出 仿真输出

时间

时间图2.1 k=1,n=3时训练后网络的输出结果

训练后网络的输出结果

图2.2 k=2,n=3时训练后网络的输出结果 训练后网络的输出结果 仿真输出仿真输出

时间时间图2.3 k=2,n=6时训练后网络的输出结果

训练后网络的输出结果图2.4 k=4,n=6 时训练后网络的输出结果 时间仿真输出

图2.5 k=4,n=8时训练后网络的输出结果

由图2.1至图2.5可以看出,k=1,n=3;k=2,n=3;k=2,n=6;k=4,n=8这四组参数对函数的逼近效果相对较好。对比五组参数的输出结果可以看出,非线性函数的频率值k越大,则BP神经网络对非线性函数的逼近效果越来越差。隐含层神经元个数n越大,则BP神经网络对非线性函数的逼近效果越好。

(3)各种BP学习算法MATLAB仿真

图 3.1 traingd

函数网络训练结果曲线

图 3.3 traingdm函数网络训练结果曲线

图3.5 trainrp函数网络训练结果曲线

图3.2 traingd函数网络训练仿真结果 图3.4 traingdm函数网络训练仿真结果 图3.6 trainrp函数网络训练仿真结果

3.7 traingdx

函数网络训练结果曲线

图3.9 traincgf函数网络训练结果曲线

图3.11 trainlm函数网络训练结果曲线 图3.8 traingdx函数网络训练仿真结果 图3.10 traincgf函数网络训练仿真结果 图3.12 trainlm函数网络训练仿真结果

不同的学习算法的收敛速度不相同,标准BP算法、增加动量法、弹性BP算法、动量及自适应学习速率法的收敛速度不如共轭梯度法和Levenberg-Marquardt法收敛速度快,Levenberg-Marquardt法的收敛速度最快。

从仿真结果和均方误差综合来看,只有Levenberg-Marquardt法达到了目标误差要求。

从仿真效果图来看,Levenberg-Marquardt法的效果最好,吻合程度最高且无震荡。其次是共轭梯度法和弹性BP算法。

五.体会与总结

这次实验,是神经网络控制器的设计,根据实验步骤,我依次完成了各项实验,熟悉了MATLAB神经网络工具箱,体会到了MATLAB软件的应用范围之广,在以后的学习中,应该多多学习使用MATLAB软件。

通过此次实验,我进一步的了解了神经网络控制的基本原理及神经网络模型的建立和神经网络控制器的设计过程,熟悉了BP神经网络算法的基本设计实现并拟合函数,加深了对神经网络的认识和理解,巩固了在课堂上学习的知识,收获了很多。


相关内容

  • 医学实验室质量管理要求
    第一节 医学实验室质量管理要求 一.基本概念 1.临床实验室 临床实验室又称"医学实验室".对从人体获得的各种标本进行生物学的微生物学的免疫学的化学的免疫血液学的血液学的生物物理学的细胞学的病理学的检验,或其他的检验,为 ...
  • 市政工程资料盒标签参考记录
    市政工程资料盒标签参考记录 A类:开工文件 B类:监理规划.实施细则.监理会议纪要.合同总监办总控制计划.人员配置通知书.监理通知及回复.工作联系单.监理工作日志.进度计划控制及报审表.安全.质量控制.工程延期审批.施工放样报验单.施工设备 ...
  • 麻疹实验室监测与质量控制分析
    麻疹实验室监测与质量控制分析 [摘要] 目的 分析贵州省麻疹实验室的监测与质量控制状况,为制定消除麻疹策略和措施提供依据.方法 收集贵州省2011年麻疹监测信息报告管理系统及麻疹实验室的监测数据,综合评价实验室各项监测指标.结果 2011年 ...
  • 电工学实验答案
    哈哈.b两端电压测量的准确性. 电流表的内阻越小越好,以减小其上的电压,以保证a.b支路电流测量的准确性. 实验4 RLC串联交流电路的研究 七.实验报告要求及思考题 2 列表整理实验数据,通过实验总结串联交流电路的特点. 答:当XL X ...
  • 实验室人员职责
    中心部门和人员的职责 一. 中心主任 负责内部机构的设置及相关人员的确认:负责实验室必要的.符合要求的仪器设备.检测场地及办公设施.人力资源等基础资源的配备:负责对外部服务和供应品的采购申请.方案进行审批:负责对检测合同的签订:负责组织管理 ...
  • 微机原理实验步骤学生
    实验要求及步骤 一.遵守"微机原理实验室实验守则",严格执行各个要求. 二.实验前准备的内容:a .完成前次实验报告,b .本次实验的预习报告,c .实验用到的电路图.流程图.程序. 三.实验内容 1.软件实验步骤: D ...
  • 实验室组织机构图
    实验室组织架构图(草案) 4.1.4实验室关键岗位的质量职责 4.1.4.1. 实验室主任(由法定代表人或由其授权XXX 担任) -----负责建立实验室管理体系,制定质量方针.质量目标,批准发布质量手册和程序文件: -----确定组织结构 ...
  • 生产系统仿真实验实验指导书
    生产系统仿真实验 实验指导书 江思定 编写 浙江科技学院经济管理学院管理科学与工程系 2008年7月 生产系统仿真实验指导书 Instruction of production system emulation experiment 一.实 ...
  • 教育研究方法归类
    一.简答题:(每题10分,共40分) 1.什么是研究假设?举例说明. 研究假设(reaeach hypothesis)是研究者根据经验事实和科学理论对所研究的问题预先赋予的某种答案,是对研究结果的预测,是对课题涉及的主要变量之间相互关系的设 ...
  • 质量控制风险评估报告
    附件: 质量控制风险评估 1.概述 2.风险评估的目的.原则和范围3.风险评估小组成员及职责 4.风险评估 4.1.风险的识别 4.2.风险分析 4.3.风险识别的结果 4.4.风险的分析和评价结果 5.风险控制 6.培训 目录 1.概述 ...