为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > MATLAB神经网络工具箱

MATLAB神经网络工具箱

2019-07-29 8页 doc 25KB 10阅读

用户头像

is_686908

暂无简介

举报
MATLAB神经网络工具箱MATLAB神经网络工具箱 与液位控制BP 模型的设计与仿真随着科学技术的发展,在控制领域中被控对象变得越来越复杂,控制系统呈现出复杂的非线性、时变及不确定性的特点,难于精确建模,有的虽然可以建立粗略的模型,但求解困难。人工神经网络具有一定的自学习、自适应和非线性映射能力及容错性等优点,为解决复杂的非线性、不确定、不确知系统的控制问题开辟了一条新的途径。其中,BP 网络,即基于误差反向传播算法的多层前馈神经网络,由于它可以以任意精度逼近任意的连续函数,因此被广泛应用于非线性建模、函数逼近、模式分类、智能控制及预测等领域。M...
MATLAB神经网络工具箱
MATLAB神经网络工具箱 与液位控制BP 模型的设计与仿真随着科学技术的发展,在控制领域中被控对象变得越来越复杂,控制系统呈现出复杂的非线性、时变及不确定性的特点,难于精确建模,有的虽然可以建立粗略的模型,但求解困难。人工神经网络具有一定的自学习、自适应和非线性映射能力及容错性等优点,为解决复杂的非线性、不确定、不确知系统的控制问题开辟了一条新的途径。其中,BP 网络,即基于误差反向传播算法的多层前馈神经网络,由于它可以以任意精度逼近任意的连续函数,因此被广泛应用于非线性建模、函数逼近、模式分类、智能控制及预测等领域。MATLAB神经网络工具箱是以神经网络理论作为背景的专业工具箱,本文针对某发电厂液位控制建立BP 预测模型,利用目前工程领域流行的MATLAB 6.1中提供的神经网络工具箱,对网络模型进行训练和仿真,给出优化的BP 模型实现步骤。 MATLAB及其神经网络工具箱 MATLAB是由MATHWORKS公司开发的一个高性能的技术计算语言。它在一个简单易用的交互式环境中集成了计算、可视化和程序设计等强大的功能。神经网络工具箱是MATLAB中集成的一个重要工具箱,工具箱中提供了面向不同神经网络模型特别是BP网络模型的丰富多彩的网络学习和训练函数,其中包括了BP算法和各种改进BP算法,为神经网络的仿真提供了极大的方便,从而使MATLAB成为目前世界上最为流行的神经仿真平台。用户只要调用工具箱中相关函数并输入参数,就可以完成相应的训练仿真。在本文液位控制BP模型的设计与仿真研究中,主要用到以下几个函数及其主要参数: 1)Newff 格式: net = newff(PR,[S1 S2… S nl],{TF1 TF2… TF nl},BTF,BLF,PF) 其中net是神经网络名;S i是第i层神经网络的神经元个数,网络共有nl层;TFi 是第i层网络神经元的转移函数,缺省为tansig; BTF是BP训练函数,缺省为trainlm;BLF 是学习函数,缺省为learngdm;PF是性能函数,缺省为mse。 2)trainlm 格式:[net,TR] = trainlm(net,P d,T1,A i,Q,TS,VV,TV) 其中net是神经网络名;P d是延迟输入量;T1是层目标向量;A i是起始输入延迟状态。 3)[A1,A2, …] = simuff(P, W1,B1,’F1’, … ,W n, B n,’F n’) 是第n层的输出;P是输入向量矩阵;W n是第n层的权值矩阵;B n是第n层的其中A n 偏移值向量;F n是第n层的转移函数。 BP神经网络 人工神经网络控制的基本思想是从仿生学的角度,模拟人脑神经系统的运作方式,使机器具有人脑那样的感知、学习和推理能力。根据生物神经元的结构、作用机制,进行进一步的简化,可构成神经元的模型,即人工神经元。其结构如图1所示。 其中 ∑=+=n j j j x w I 1 θ , w 为输入信号和神经元的结合 强度,称为连接权。θ 示神经元的阈值。而神经元的输出为 )(I f O =。函数()f 为激发函数,根据激发函数的不同可以将神经元分为不同的类型。 多个神经元便可以构成不同结构的神经网络,例如多层向前神经网络、自适应神经网络、模糊神经网络 等等。从结构上讲,BP 网络是一种分层型网络,由输入层、隐含层和输出层组成。层与层之间采用全互连方式,同一层的单元之间则不存在相互连接。隐含层可以有一个或多个。对于任一线性或者非线性映射,都可以使用三层向前神经网络对其进行实现。所以完全可以使用一个三层的BP 网络建立预测数学模型。使用神经网络建立预测数学模型,一般分为两步:1 建立神经网络的结构;2 使用大量学习样本训练网络,即确定权值和阈值。 衡量权值和阈值的一个重要指标是最小均方误差(目标值与实际输出值的差值的平方和),如果该值小于期望的误差就是理想的结果。 应用MATLAB 神经网络工具箱和BP 网络建立预测数学模型 在火力发电厂中,由于各电厂输水管道、主蒸汽管道以及汽包的形状和大小都各不相同,而且大部分汽包是椭球形或球形,具有一定的非线性,所以很难找出一个统一的精确数学模型。因此本研究采用神经网络建立数学预测模型。这样每个电厂可以根据本厂的历史数据对网络进行训练,获得优化的。 在离散化的汽包液位控制系统中,由于采用的控制系统是闭环控制系统,所以真实的输入与输出的关系式可以 表示为 ))()),(()1(k u k y f k y =+。而用神经网络建立预测数学模型就是建立一个数学模型来找到这个对应关系 f ,使得 ))(),((~)1(~k u k y f k y =+,然后再 分析参差信号 y y r ~-=,进行故障诊断,其基本原理如图2 所示。 对于汽包液位系统,其输入有主给水流量和主蒸汽流量,输出 是汽包液位信号,所以神经网络的设计采用三输入单输出的三层向前网络。输入层为 3个神经元,即 n=3,分别是给水流量信号、主蒸汽流量信号、汽包液位信号;输出层是一个神经元,即 l =1,是下一步预测的汽包水位信号;而网络的中间层神经元个数,,太少会减少模型精确度,如果太多,则会增加网络连接权数目,增加计算量,而且容易出现隐含层神经元的冗余现象,即网络隐含层中某些神经元的输出非常接近。本设计按照公式 1)3(++?≤l n m 来确定,所以 m=2,3或4。首先建立4个隐含层神经元的网络,然后建立3个隐含层神经元的网络,经过实验仿真发现,效果相差不大,考虑到计算量,又要保证模型的精确度,所以选择 m=3。其结构如 图3 所示。 图3 神经网络结构图 网络结构确定以后,采用在正常状况下负荷和液位波动都比较大的一段时间的历史信号对网络进行训练。这样的信号训练出来的网络具有较高的精确度。选取主给水流量、主蒸汽流量、汽包液位3个测点在负荷波动较大的 12个小时内的信号作为学习样本,采样时间为 2s ,共 21 600 组训练数据。3个输入分别是给水、主蒸 汽、汽包,用)(1k x 、) (2k x 和 y(k) 表示,它们都是以文本的格式存放在MATLAB 的默认路径,可以利用MATLAB 的读写函数将它们以矩阵的形式读出。网络的训练采用MATLAB 语言编程实现,并用MATLAB 自带的 Trainlm 函数进行训练。隐含层神 经元的输出采用 Sigmoid 函数 I I i e O -+=11 。由于采样点多达 21 600个,所以精度要求的取值必须比较大。如果每一个训练样本产生的误差为 0.001,则能量函数值 为21601.021******** 1 =?== ∑=p p e E ,所以取精度要求的值为 100。学习速率取 MATLAB 内Trainlm 函数的默认值02.0=η。通过 100多次迭代运算,能量函数值达到精度要求,得出网络的全部参数,主要源代码如下: %设计网络 net = netff(minmax(P),[3,1],{‘logsig ’ ‘purelin ’}, ‘trainlm ’) %前向网络初始化 [w1,b1,w2,b2] = initff(P,3, ‘logsig ’,1, ‘purelin ’); y1 = sim(net,P); %设置主要参数并进行训练 df =20; %Frequency of progress displays(in epochs) me = 8000; %Maximum number of epochs to train eg = 100; % Sum-square error goal lr = 0.02; % Learning rate tp = [df me eg lr 0.001 10 0.1 1e10]; [w1,b1,w2,b2,te,tr] = trainlm(w1,b1, ‘logsig ’, w2,b2, ‘purelin ’, P,T,tp); %对训练后的结果进行仿真 y2 = simuff(P,w1,b1, ‘logsig ’,w2,b2, ‘purelin ’); %训练后得出网络的权值和阈值: w11=1.296, w12=-2.9664, w13=-1.1111, θ1=-23.914; w21=-4.056 3E-5, w22=-0.038 784, w23=5.005 3E-5, θ2=0.089 071; w31=0.331 83, w32=0.824 42, w33=-0.113 11, θ3=29.134; v1=20.068, v2=-103.89, v3=16.135, θ4=18.241 使用上述权值和阈值参与计算并做出均方误差曲线如图4所示。由图4可知,最小均方误差随着时间的增加而减小至一个平滑值,并逼近期望误差,满足设计的要 求。 结束语 本文简要介绍MATLAB神经网络工具箱的主要特点和部分重要工具函数,结合BP 神经网络的有关理论,对电厂液位控制模型进行了数学分析,在MATLAB环境下建立BP模型并对优化方案进行仿真,取得了满意的结果,得出了最优参数。仿真结果证明了MATLAB神经网络工具箱的功能之强大,和BP神经网络对解决复杂的非线性、不确定、不确知系统的控制问题拥有巨大潜力,因此具有广泛应用和推广的价值。
/
本文档为【MATLAB神经网络工具箱】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索