智能控制试验指导书_第1页
智能控制试验指导书_第2页
智能控制试验指导书_第3页
智能控制试验指导书_第4页
智能控制试验指导书_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《智能控制》实验指导书

江西师范大学物理与通信电子学院

电子系

2018年3月

江西师范大学物理与通信电子学院

目录

实验一基于MATLAB的模糊控制器设计.......................1

实验二BP神经网络设计....................................9

实验三基于RBF神经网络的系统故障诊断与性能预测.........12

实验四基于离散Hopfield神经网络的数字识别.............16

实验五模拟退火算法与MATLAB优化工具箱..................20

实验六基于遗传算法的PID控制器优化没计.................25

实验七用粒子群算法求解函数最优化问题..................31

实验八基于蚁群算法的旅行商问题(TSP;优化计算...........34

2

匚西师范大学物理与通信电子学院

实验一基于MATLAB的新控制器设计

一、实验目的

1、掌握Matlab模糊工具箱的应用:

2、熟悉Simulink模糊控制系统仿真步骤:

3、了解控制系统的模糊控制器设计方法。

二、实验设备

1、PC机

2、Matlab软件

三、实验原理与内容

♦MATLAB模糊工具箱应用简介

MATLAB的SimulinkLibraryBrowser(仿真模块库)中,设有专用的模糊逻辑工具箱

(FuzzyLogicToolbox),它提供了模糊逻辑系统的命令语言和图形用户界面(GUI)两种

仿真方式。模糊推理系统的GUI是进行模糊系统仿真的重要工具,尤其是设计、建立、方真

和分析模糊控制器,用它显得特别简捷、直观和经济。其设计方法如下:

第一部分:设置模糊推理系统编辑器

第一步:打开模糊推理系统编辑器

步骤:在CommondWindow键入fuzzy回车,打开如下窗口,既模糊推理系统编辑器:

江西师范大学物理与通信电子学院

第二步:使用模糊推理系统编辑器

默认系统是一个输人,一个输出。添加一个输入,步骤:

然后在FIS的GUI界面分别单击三个变量,在右下角的CurrentVariable中将输入变量的名

称改为E、EC,输出变量的名称改为U,并设置其量化论域。

第三步:使用隶属函数编辑器

该编辑器提供了一个友好的人机图形交互环境,用来设计和修改模糊推理系中各语言变

量对应的隶属度函数的相关参数,如隶属度函数的形状、范围、论域大小等,系统提供的隶

属度函数有三角、梯形、高斯形、钟形等,也可用户自行定义。步骤:

1.打开任何一个输入量或输出量隶属度函数编辑器。在隶属函数编辑器的Edil下拉菜单中

选择"RemoveallMFs”——"AddMFs……”,弹出相应的对话框。

2

江西师范大学物理与通信电子学院

♦将MFtype设置为irimf(三角形隶属度函数曲线,也可以其他类型)

♦将NumberofMFs设置为7点击OK按钮

2选中任何一个隶属度函数(选中为红色),在Name中键入名称,在Type中选择形状,

在Params中键入范围,在“CurrentVariable”框的"Range”文本框和"Display”中设

置范围和显示范围。然后回车如下图:

3.按照相同的方法和步骤,添加并设置输入氏和输出U的隶属函数。

第四步:使用规则编辑器

通过规则编辑器来设计和修改力F...THEN”形式的模糊控制规则。由该编辑器进行模糊

控制规则的设计非常方便,它将输入量各语言变量自动匹配,而设计者只要通过交互式的图

形环境选择相应的输出语言变量,这大大简化了规则的设计和修改。另外,还可为每条规则

选择权重,以便进行模糊规则的优化。

步骤,

江西师范大学物理与通信电子学院

1、打开规则编辑器

点击Edil菜单,选Rules...

tor:Untitled

UndoCtrl+Z

AddVariable.….

RemoveSelectedVariabteCtrl+X

MembershipFunctions...Ctrl+2Un,rtek

Rules.Ctrl+3namdai

打开以下对话框:

2、点击Addrule添加规则。

第五步;保存并查看结果

步骤:

1、取名保存,例如取名为Test.fis。

选择其中的“Exportworkspace”,将其保存到MATLABfl<J工作区中。

江西师范大学物理与通信电子学院

2、View->Rules打开RuleViewer,可杳看模糊推理示意图:

iI

Lw

n/

-*

L

I-

?ir

■;*

B

r—r

ku

-

K-

LF

c

<■

3、View->Surface打开SurfaceViewer,可杳看输入、输出关系曲面:

第二部分:将模糊逻辑添加到Simulink中

第一步:创建一个Simulink文件

步骤:

1、打开Simulink

2、点击新建按钮建立一个新的.mdl文件

5

江西师范大学物理与通信电子学院

第二步:添加模糊

步骤:

1、在SimulinkLibraryBrower的搜索框内键入FuzzyLogicConiroller找至ijFuzzyLogic

Controller,并将其拖拽到新建的mdl文件中

2、双击FuzzyLogicConlroller,打开如下对话框,输入前面保存到MATLAB工作区中的

模糊推理系统的名称,例如键入前面保存的模糊系统名称Test

3、关闭对话框

第三步:添加其他模块

添加具他模块,例如下图:

第四步:保存并运行

四、实验步骤

1、通过模糊系统编辑器建立一个模糊推理系统。要求:

6

江西师范大学物理与通信电子学院

•输入变量的名称改为E、EC,输出变量的名称改为U

•三个变量的隶属函数的个数都为7

•各隶属函数命名为NL,NM,NS,ZO,PS,PM,PL

•将变量E、EC、U范围及其显示的范围均设置为[-6,6]

•在模糊规则编辑器窗口中输入这49条控制规则:

EC

U

NLNMNSZOPSPMPL

NLNLNL迎NMZOZO

NLNLNLNLNMZOZO

NMNMNMNMZOPSPS

NMNMNSZOPSPMPM

NSNSZOPMPMPMPM

zoZOPMPLPLPLPL

zoZOPMPLPLPLPL

2、在Simulink中建立模糊控制系统,仿真在阶跃信号作用下的输出响应。系统仿真

结构图如图1.1所示:

图1.1仿真结构图

3、被控对象的传递函数中加入一延迟环节,即:

重新观测控制效果。

7

江西师范大学物理与通信电子学院

五、实验报告要求

表1.1实验数据测试表

rj验结果

参数jjj-一

o%阶跃响应曲线

ts

对象

kik2k?

出)=15一

V♦0.犯♦100

.―;-----------------

/100

六、思考题

1、如果输入变量离散论域分为5个等级,对控制效果有什么影响?

2、如何选择合适的模糊规则来建立规则表?

8

江西师范大学物理与通信电子学院

实验二BP神经网络设计

一、实验目的

1、熟悉BP神经网络的特征、结构以及学习算法;

2、掌握用MATLAB实现神经网络控制系统仿真的方法。

二、实验设备

1、PC机

2、Matlab软件

三、实验原理与内容

人工神经网络ANN(AitificialNeuralNetwork)系统由于具有信息的分布存储、并行处理

以及自学习能力等优点,已经在信息处理、模式识别、智能控制及系统建模等领域得到越来

越广泛的应用。尤其是基于误差反向传播(BackPropagation)算法的多层前馈网络

(Muhiple-LayerFeedfbrwardNetwork),即BP网络,可以以任意精度逼近任意连续函数,所

以广泛地应用于非线性建模、函数逼近和模式分类等方面。

I、BP网络算法理论

BP算法是一种有导师的学习算法。其主要思想是:对于M个输人学习样本,已知与

其对应的输出样本,学习的目的是用网络的实际输出与目标矢量之间的误差来修改其权值,

使实际与期望尽可能地接近,即使网络输出层的误差平方和达到最小。它是通过连续不断地

在相对于误差函数斜率下降的方向上计算网络权值和偏差的变化而逐渐逼近目标的。每一次

权值和偏差的变化都与网络误差的影响成正比,并以反向传播的方式传递到每一层。

2.命令行方式实现BP神经网络算法

在MATLAB神经网络工具箱中.对于BP网络的实现.其提供了三个基本函数:newff,

trnin和sim.它们分别对应四个基本步骤,即新建、训练和仿真。

•生成一个前向网络newff:

net=newff(PR,[S1~S2...SN],{TF1_TF2...TFN},BTF,BLF,PF)

PR:一个RX2矩阵,由R维输入向量的每维最小值和最大值组成

Si:第i层的神经元个数

TFi:第i层的激励函数,默认为lansig

BTF:训练函数,默认为train1m

BLF:学习函数,默认为Icarngdm

PF:性能函数,默认为mse

例如:net=newff([0,10;-1,2],[5,1],{tansig','purelin'},'trainlm');

%生成一个两层BP网络,隐层和输出层神经的个数为5和1,激励函数分别为tansig

和purelin,训练函数为trainlm,其他默认

江西师范大学物理与通信电子学院

・网络的训练train:

利用已知的“输入一目标”样本向量数据对网络进行训练,采用train函数来完成。训练

之前,对训练参数进行设置。

训练参数参数含义默认值

net.trainParam.epochs最大迭代次数100

net.trainParam.show显示训练结果的间隔步数25

net.trainParam.goa训练目标误差0

net.trainParam.time训练允许时间INf

net.trainParam.Ir学习率0.01

例如:训练函数的参数设置如下:

net.trainParam.show=10:

net.trainParam.epochs=100;

net.trainParam.goal=0.0001:

net.trainParam.Ir=0.01:

网络的训练函数如下:

net=train(net,P,t);

P,t为“输入一目标”训练样本

•仿真sim

对网络进行仿真。利用此函数,可以用经过训练的网络对于不是样本集的输入,计算出

相应的输出。

a=sini(net,p)■网络仿真

a表示训练好的BP慨络的实际输出:p为新的输入数据

四、实验步骤

1、用MATLAB相关命令设计一个BP网络,用于逼近一个函数。该函数输入为

P=[-2:0.5:2J,输出为T=sinhpi*P)+0.2*randn(size(P))。绘制原函数的曲线和BP神经网络拟

合的曲线。改变隐层神经元数量,分析比较不同隐层神经元数量下网络训练效率及最终训练

结果。

2、表2.1所示为某药品的月度销售情况,利用BP神经网络对药品的销售进行预测,预

测采用滚动预测方式,即用前3个月的销售量来预测第4个月的销售量。如用1、2、3月的

销量为输入,预测第4个月的销售量;用2、3、4月的销量为输入,预测第5个月的销售量。

反复迭代,直至满足预测精度要求。

10

江西师范大学物理与通信电子学院

表2.1某药品月度销售表

月份123456

销量205623952600229816341600

月份789101112

销量187314781900150020461556

构建一个3层BP神经网络,要求:训练数据需归一化处理:输入层结点数为3个,输

入层的激励函数为tansig:隐含层结点数为5,隐含层的激励函数为tansig;输出层结点数为

1个,输出层的激励函数为logsig;采用traingdx训练函数训练BP网络,目标误差为0.0001,

学习率为0.05,最大迭代次数为1000。

五、实验报告要求

1、记录实验步骤1中编写的程序和结果曲线。

2、记录实验步骤2中编写的程序和结果,并绘制药品销售实际值和预测值对比曲线。

六、思考题

1、BP神经网络的学习速度和什么因素有关?

2、BP神经网络的收敛结果是否全局最优?

附:MATLAB二维绘图命令

plot(y)当y为向量时,是以y的分量为纵坐标,以元素序号为横坐标,用直线依次连接

数据点,绘制曲线。若y为实矩阵,则按列绘制每列对应的曲线。

plot(x,y,)若y和x为同维向量,则以x为横坐标,y为纵坐标绘制连线图。

plot(x1,y1,x2,y2,........)在此格式中,每对x.y必须符合plm(x,y)中的要求,不同对之间

没有影响,命令将对每一对x,y绘制曲线。

plot(x,y,Jr:)'中定义曲线颜色和线型

标识符颜色标识符线型标识符线型

yYellow黄点S正方形标记

mMagenta品红0圆圈D菱形标记

cCyan青XX号A朝上三角形

rRed红-t-+号V朝下三角形

Green绿实线>朝右三角形

g

bBlue蓝♦星号<朝左三角形

wWhite白:虚号P五角星

kBlack黑—点划线H六角星

虚线none无符号标记

1!

江西师范大学物理与通信电子学院

实验三基于RBF神经网络的系统故障诊断与性能预测

一、实验目的

1、掌握RBF神经网络的基本原理;

2、了解基于神经网络的故障诊断原理。

二、实验设备

1、PC机

2、Matlab软件

三、实验原理与内容

径向基函数(RBF)神经网络是一种局部逼近的神经网络。众所周知,BP网络用于函

数逼近时,权值的调节采用的是负梯度下降法,这种调节权值的方法有它的局限性,即存在

着收敛速度慢和局部极小等缺点,而RBF神经网络无论在逼近能力、分类能力和学习速度

等方面均优于BP网络。径向基函数网络比BP网络需要更多的神经元。RBF网络的应用主

要是函数逼近,从理论上而言,RBF网络和BP网络一样可近似任何的连续非线性函数。

在MATLAB命令窗口犍入"helpradbasis",便可得到与径向基神经网络相关的函数。

•设计精确径向基网络newrbeO

net=ncwrbc(P,T,sprcad)

式中,P为输入向量;T为目标向量:spgd为径向基函数的分布系数(宽度),默认为1;

net为生成的网络。

spread:分布常数(分散度参数),默认值为1。一般而言,spread的值越大,函数的

拟合就越平滑。然而,过大的spread值将需要非常多的神经元以适应函数的快速变化;反

之,若spread值太小,则意味着需要许多的神经元来适应函数的缓慢变化,从而导致网络

性能不好。

四、实验步骤

1.齿轮箱故障诊断

齿轮箱是用来改变转速和传递动力的常用机械设备,由于齿轮箱的工作环境较为恶劣,

结构和运行条件的复杂性,故容易受到损害而出现故障。据有关数据统计齿轮箱60W的故

障是由齿轮引起的,并且齿轮箱的局部故障占90%。但是,由于齿轮箱的故障模式和特征

量之间是一种非常复杂的非线性关系,齿轮箱故障的结构复杂性、影响因素多样性和表现行

为多变性给精确定位故障和准确预测故障趋势带来了很大困难。起初人们根据工程师们积重

的经验为齿轮箱进行故障的诊断,但是随着时代的发展和设备的日益复杂,转统的诊断技采

在应用于齿轮箱故障诊断时越来越显得力不从心。神经网络的自适应、自学习和对非线性系

统超强的分析能力,注定它可以在齿轮箱的故障诊断中大显身手。

江西师范大学物理与通信电子学院

①输入和目标向量设计

齿轮箱故障中有60席左右都是齿轮导致的,对于齿轮的故障,频域中齿轮故障比较明

显的是在啮合频率处的边缘带上,这里选取频域中的几个特征量,在频域特征信号中提取了

一个15维的向量作为RBF神经网络的输入。这些数据在输入神经网络之前已经进行了归一

化处理,表3.1给出了输入向量的9组数据。

表3.1齿轮箱状态样本数据

数据序号特征样本齿给状态

0.22860.12920.07200.15920.13350.07330.11590.09400.0522

1无故障

0.134450.00900.1260.0.36190.06900.1828

0.20900.09470.13930.13870.25580.09000.07710.08820.0393

2无故障

0.14300.01260.16700.24500.05080.1328

0.04420.08800.11470.05630.33470.11500.14530.04290.1818

3无故障

0.03780.00920.22510.15160.08580.C670

0.26030.17150.07020.27110.14910.13300.09680.19110.2545

4齿根裂纹

0.08710.00600.17930.10020.0789.0.0909

0.36900.22220.05620.5157.0.18720.16140.14250.15060.1310

5齿根裂纹

0.05000.11780.03480.04510.07070.0880

0.03590.11490.12300.54600.19770.12480.06240.08320.1640

6齿根裂纹

0.10020.00590.1503.0.18370.12950.0700

0.17590.23470.18290.18110.29220.06550.07740.22730.2056

7断齿

0.09250,00780.18520.35010.16800.2668

0.07240.19090.1340.0.24090.28420.04500.08240.10640.1909

8断齿

0.15680.01160.16980.36440.271802494

0.26340.22580.11650.11540.10740.06570.06100.26230.2588

9断齿

0.11550.00500.09780.15110.22730.3220

接下来确定网络的输出模式,由于齿轮包括3种故障模式,因此可以采用如下的形式来

表示输出:

无故障:(1,0,0);

齿根裂纹:(0,1,0):

断齿:(0,0,1),

②基于RBF神经网络的故障诊断

创建一个分布常数为1.2的RBF神经网络,分别在无故障、齿根裂纹和断齿时进行测

量,得到各参数的值。利用仿真函数sim分别计算3组测试数据下的网络输出,通过故障判

别准则判断是否出现了故障。测试数据如表3.2所示。

13

江西师范大学物理与通信电子学院

表3.2测试数据

数据序号输入向量

0.21C10.09500.12980.13590.26010.10010.07530.08900.0389

10

0.14510.01280.15900.24520.05120.1319

0.25S30.18000.07110.28010.15010.12980.10010.18910.2531

11

0.08750.00580.18030.09920.08020.1002

0.25S90.22350.12010.11710.11020.06830.06210.25970.26C2

12

0.11670.00480.10020.15210.22810.3205

③改变分布常数,观测时结果的影响。

2.基于近红外光谱的汽油辛烷值预测

辛烷值是汽油最重要的品质指标,传统的实验室检测方法存在样品用量大,测试周期K

和费用高等问题,不适用于生产控制,特别是在线测试。近年发展起来的近红外光谱分析方

法(NIR),作为一种快速分析方法,己广泛应用于农业、制药、生物化工、石油产品等领

域。其优越性是无损检测、低成本、无污染,能在线分析,更适合于生产和控制的需要。

①产生训练集/测试集

针对采集得到的60组汽油样品,利用傅里叶近红外变换光谱仪对其进行扫描,扫描范

围900〜1700nm,扫描间隔2nm,每个样品的光谱曲线共含401个波长点。样品的近红外

光谱曲线如图R.1所示。

波长(nm)

图3.160个样品的近红外光谱图

60个样品的光谱及辛烷值数据保存在spectra_datamat文件中,该文件包含两个变量矩

阵:NIR为60行401列的样品光谱数据,octane为60行1列的辛烷俏数据.这里.采用随机

11

江西师范大学物理与通信电子学院

法产生训练集和测试集,随机产生50个样品作为训练集,剩余的10个样品作为测试集。

先导入数据

loadspectra_data.mat

%随机产生训练集和测试集

temp=randperm(size(NIRJ));

%训练集一一50个样本

P_train=NIR(temp(1:50),:);

T_train=octane(temp(1:50),:);

蛤则试集一一10个样本

P_test=NIR(temp(51:end),:)';

T_test=octane(temp(5l:en(J),:);

N=size(P_test,2);

②创建RBF神经网络

创建RBF神经网络时需要考虑分布常数spread的值对网络性能的影响。确定合适的

spread值训练RBF神经网络。

③仿真测试

模型建立后,将测试具的输入变量送入模型,模型的输出就是对应的预测结果。

④模型评价

测试集辛烷值含量真实值与预测值对比。为了更为直观地对结果进行观察和分析,以绘

图的形式将结果呈现出来。

五、实验报告要求

记录齿轮箱故障诊断程序和三组不同分布常数时的测试结果,判断表3.2中3组测试数

据分别对应哪类故障。

记录汽油辛烷值预测的程序和绘图结果。

六、思考题

1、简述基于神经网络的故障诊断的过程。

2、基于近红外光谱的汽油辛烷值预测实验中,spread值选为多少时,网络性能最好?

江西师范大学物理与通信电子学院

实验四基于离散Hopfleld神经网络的数字识别

一、实验目的

1、熟悉掌握Hopfielc神经网络知识;

2、学习Hopfield神经网络进行数字识别的设计方法。

二、实验设备

1、PC机

2、Matlab软件

三、实验原理与内容

1.离散Hopfield神经网络

hopficld网络作为一种全连接型的神经网络,曾经为人工神经网络的发展开辟了新的研

究途径。它利用与阶层性神经网络不同的结构特征和学习方法,模拟生物神经网络的记忆机

理,获得了令人满意的结果。这一网络及学习算法最初是由美国物理学家j.jhopficld于1982

年首先提出的,故称为h卬他Id神经网络。hophekl最早提出的网络是二值神经网络,神经

元的输出值只取1或T,所以,也称离散hopficld神经网络(dhnn,discretehopficldneural

network)o在离散hopfield网络中,所采用的神经元是二值神经元,因此,所输出的离散值

1和T分别表示神经元处于激活和抑制状态。

hopfield网络模拟了生物神经网络的记忆功能,也常常被称为联想记忆网络。所谓的联

想记忆也成为了一种基于内容的存取方法,信息被分布于生物记忆的内容之中,而不是某个

确定的地址。联想记忆可分为自联想与异联想两种。hop加Id网络属于自联想网络。自联想

能将网络中输入模式映射到存贮在网络中一种模式。联想记忆网络小仅能将输入模式映射为

自己所存贮的模式,而且还能对具有缺省噪音的输入模式有一定的容错能力。

设计一个具有联想记忆功能的离散型Hopfield神经网络,进行19数字的识别,并且

当数字被一定的噪声干扰后,仍具有较好的识别效果。设计思想如下图所示。

图4.1Hopfield网络设计流程图

•newhop()函数可以创建一个离散型Hopfield神经网络:

net=newhop(T)

T:记忆样本(目标句量)

16

江西师范大学物理与通信电子学院

•仿真函数sim

Y=sim(NET,P,Ai,T)

P为测试向量的个数:

Ai表示初始的层延时,默认为0,填口;

T表示测试向量(矩阵)

2.数字点阵

假设样本数据由用10*10的矩阵表示。该矩阵可直观地描述阿拉伯数字,即把矩阵分

成10*10个单元,有数?轨迹的单元用1表示,空白部分用-1表示,将数?点阵以图形的

形式呈现出来,例如:

图4.2数字1和2的点阵图形

数字1和2的点阵矩阵数据:

数字1:

1____-1___

-1——1-1-1—

1一■一—一

-1——-1_-—

1一—-1-1-1—

-1——1-1——

一____1-1-1__

-1一一1-1-一

1一一T-1一一

一一一:T一一

数字2:

__1—

一一

一一—1一

一一一一—1—

一11一

—11一

一——-——

一■一

一1__

一—

离散Hopfiekl神经网络对这两个稳态具有联想记忆的功能,当有带噪声的数字点阵输

入到该网络时,网络的输出便可以得到最接近的目标向量,从而达到正确识别的效果。

17

江西师范大学物理与通信电子学院

3.产生噪声

常见的模拟产生带噪声数字的方法有两种:固定噪声法和随机噪声法。固定噪声法指的

是人工修改的方法改变数字点阵某些位置值,从而模拟产生带噪声的数字点阵。

随机H声产生法是利用产生随机数的方法来确定需要修改的点阵位1,进而对数「点阵

进行修改由于数字点阵中的值只有1和-1两种,所以这里的修改就是将卫换成。/T换

成1。

四、实验步骤

1.点阵数字识别

①输入标准数字的点阵矩阵

可以直接输入数字的点阵矩阵,也可以导入已经保存好的数字点阵数据,例如:

巡导入数字1的点阵数据(array_one:数字1的点阵矩阵变量名;da(al:数据存储名)

loaddata1.mat

Tl=array_one

②建立Hopheld神经网络

用newhopO函数创建一个记忆样本是标准点阵数字的离散型Hopfield神经网络。

③产生随机噪声

参考程序:

noisy_Tl=Tl

fori=l:100

a=rand;

ifa<0.1

noisy_Tl(i)=-Tl(i);

end

end

④利用sim()函数可对神经网络进行仿真。

⑤绘图

相关MATLAB命令:

•B=imresize(A,m)

返回的图像B的长宽是图像A的长宽的m倍,即缩放图像。m大于1,则放大图像;

m小于L缩小图像。

•imshow(BW)

显示一张二值图像BW,为0的显示为黑色,大于等于1的显示为白色

绘图要求:用subplo【命令将输入的标准数字、加入随机噪声的数字和神经网络识别的数字

图像放在一起比较。

18

江西师范大学物理与通信电子学院

subplot(m,n,p)%将图像窗口m行n列的第p个区设为当前活动区

2.手写数字识别

步骤①、②同点阵数字识别,创建•个记忆样本是标准点阵数字的离散型Hopfield神经网

络。

③导入手写数字图片,并转换为二值化图像。

参考程序:

pic=imread(num5_1.bmp,);%导入手写数字5的bmp图片

pic=255-pic;%图像反色处理

thresh=graythresh(pic);%自动确定二值化阈值

pic=im2bw(pic,thresh);%对图像二值化

[y,x]=find(pic=l);%查找数字上所有像素点的行标y和列标x

pic_preproccss=pic(min(y):max(y),min(x):max(x));%截取包含完整数字的最小区域

pic_preprocess=imresize(pic_preprocess,[10,10]);

%将截取的包含完整数字的最小区域图像转成10*10的标准化图像

步骤④、⑤同点阵数字识别,利用sim()函数可对神经网络进行仿真,并绘图观测识别效果。

绘图要求:用subplot命令将输入的标准数字、手写数字和神经网络识别的数字图像放在一

起比较。

五、实验报告要求

记录程序和数字识别的结果。

六、思考题

1、产生随机噪声参考程序中的a有什么作用?对实验效果有何影响?

2、为什么离散Hopfield神经网络适用于进行数字识别?

19

江西师范大学物理与通信电子学院

实验五模拟退火算法与MA1LAB优化工具箱

一、实验目的

1、熟悉模拟退火算法理论:

2、通过实验掌握MATLAB优化工具箱的应用方法:

3、掌握用MATLAB优化PIE胫制器参数的方法。

二、实验设备

1、PC机

2.Matlab软件

三、实验原理与内容

1.模拟退火算法理论

模拟退火算法(SimulatedAnnealing,简称SA)的思想最早是由Metropolis等提出

的。其出发点是基于物理中固体物质的退火过程与一般的组合优化问题之间的相似性,其物

理退火过程由以下三部分纽成:

(1)加温过程。其目的是增强粒子的热运动,使其偏离平衡位置。当温度足够高时,固体

将熔为液体,从而消除系统原先存在的非均匀状态。

(2)等温过程。对于与周围环境交换热量而温度不变的封闭系统,系统状态的自发变化总

是朝自由能减少的方向进行的,当自由能达到最小时,系统达到平衡状态。

(3)冷却过程。使粒子热运动减弱,系统能量下降,得到晶体结构。

其中,加温过程对应算法的设定初温,等温过程对应算法的Metropolis抽样过程,冷

却过程对应控制参数的下降。这里能鼠的变化就是目标函数,要得到的最优解就是能吊.最低

态。其中Metropolis准贝!是SA算法收敛于全局最优解的关键所在,Metropolis准则以一

定的概率接受恶化解,这样就使算法跳离局部最优的陷阱。

算法的关键参数:

(1)状态产生函数:设计状态产生函数应该尽可能保证所产生的候选解遍布全部解空间;

(2)初温:初温值越高,获得高质量解的概率就大,但初温过庙会使计算时间增加:

⑶退温函数:即温度更新函数,最常用为指数退温,T(n+l)=KxT(n),其中0<Kvl

是一个非常接近1的常数;

(4)算法停止准则:模拟退火算法的收敛性理论要求T趋向于零,这是不实际的。常用的

停止准则包括:设置终止温度的阀值,设置外循环迭代次数,算法搜索到的最优值连续若干

步保持不变等。

2.MATLAB模拟退火算法工具箱(simulatedannealingtoolbox,SAT)

①图形用户界面GUI:MATLAB的图形界面的优化工具箱GUIOptimizationToolbox,其中

提供的智能优化算法包括模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论