文档库 最新最全的文档下载
当前位置:文档库 › 基于神经网络的预测控制模型仿真

基于神经网络的预测控制模型仿真

基于神经网络的预测控制模型仿真
基于神经网络的预测控制模型仿真

基于神经网络的预测控制模型仿真

摘要:本文利用一种权值可以在线调整的动态BP神经网络对模型预测误差进行拟合并与预测模型一起构成动态组合预测器,在此基础上形成对模型误差具有动态补偿能力的预测控制算法。该算法显著提高了预测精度,增强了预测控制算法的鲁棒性。

关键词:预测控制神经网络动态矩阵误差补偿

1.引言

动态矩阵控制(DMC)是一种适用于渐近稳定的线性或弱非线性对象的预测控制算法,目前已广泛应用于工业过程控制。它基于对象阶跃响应系数建立预测模型,因此建模简单,同时采用多步滚动优化与反馈校正相结合,能直接处理大时滞对象,并具有良好的跟踪性能和较强的鲁棒性。

但是,DMC算法在实际控制中存在一系列问题,模型失配是其中普遍存在的一个问题,并会不同程度地影响系统性能。DMC在实际控制中产生模型失配的原因主要有2个,一是诸如建模误差、环境干扰等因素,它会在实际控制的全程范围内引起DMC的模型失配;二是实际系统的非线性特性,这一特性使得被控对象的模型发生变化,此时若用一组固定的阶跃响应数据设计控制器进行全程范围的控制,必然会使实际控制在对象的非建模区段内出现模型失配。针对DMC模型失配问题,已有学者进行了大量的研究,并取得了丰富的研究成果,其中有基于DMC控制参数在线辨识的智能控制算法,基于模型在线辨识的自校正控制算法以及用神经元网络进行模型辨识、在辨识的基础上再进行动态矩阵控制等。这些算法尽管进行在线辨识修正对象模型参数,仍对对象降阶建模误差(结构性建模误差)的鲁棒性不好,并对随机噪声干扰较敏感。针对以上问题,出现了基于误差校正的动态矩阵控制算法。这些文献用基于时间序列预测的数学模型误差代替原模型误差,得到对未来误差的预测。有人还将这种误差预测方法引入动态矩阵控制,并应用于实际。这种方法虽然使系统表现出良好的稳定性,但建立精确的误差数学模型还存在一定的困难。

本文利用神经网络通过训练学习能逼近任意连续有界函数的特点,建立了一种采用BP 神经网络进行预测误差补偿的DMC预测控制模型。其中神经网络预测误差描述了在预测模型中未能包含的一切不确定性信息,可以归结为用BP神经网络基于一系列过去的误差信息预测未来的误差,它作为模型预测的重要补充,不仅降低建立数学模型的负担,而且还可以弥补在对象模型中已简化或无法加以考虑的一切其他因素。

本文通过进行仿真,验证了基于神经网络误差补偿的预测控制算法的有效性及优越性,

从而增强了动态矩阵控制算法的鲁棒性。

2.BP神经网络模型

BP神经网络模型处理信息的基本原理是:输入信号Xi通过中间节点(隐层点)作用于输出节点,经过非线形变换,产生输出信号Yk,网络训练的每个样本包括输入向量X和期望输出量t,网络输出值Y与期望输出值t之间的偏差,通过调整输入节点与隐层节点的联接强度取值Wij和隐层节点与输出节点之间的联接强度Tjk以及阈值,使误差沿梯度方向下降,经过反复学习训练,确定与最小误差相对应的网络参数(权值和阈值),训练即告停止。此时经过训练的神经网络即能对类似样本的输入信息,自行处理输出误差最小的经过非线形转换的信息。

2.1 BP模型建立

BP网络模型包括其输入输出模型、作用函数模型、误差计算模型和自学习模型。

(1)节点输出模型

隐节点输出模型:Oj=f(∑Wij×Xi-q j) (1)

输出节点输出模型:Yk=f(∑Tjk×Oj-q k) (2)

f-非线形作用函数;q -神经单元阈值。

(2)作用函数模型

作用函数是反映下层输入对上层节点刺激脉冲强度的函数,又称刺激函数,一般取为(0,1)内连续取值Sigmoid函数: f(x)= 1/(1+e-x) (3)(3)误差计算模型

误差计算模型是反映神经网络期望输出与计算输出之间误差大小的函数:

Ep=1/2×∑(tpi-Opi)2

tpi- i节点的期望输出值;Opi-i节点计算输出值。 (4) (4)自学习模型

神经网络的学习过程,即连接下层节点和上层节点之间的权重拒阵Wij的设定和误差修正过程。BP网络有师学习方式-需要设定期望值和无师学习方式-只需输入模式之分。自学习模型为

△Wij(n+1)= h×Фi×Oj+a×△Wij(n) (5) h-学习因子;Фi-输出节点i的计算误差;Oj-输出节点j的计算输出;a-动量因子。

2.2 BP网络模型的缺陷分析及优化策略

(1)学习因子h 的优化

采用变步长法根据输出误差大小自动调整学习因子,来减少迭代次数和加快收敛速度。

h =h+a×(Ep(n)- Ep(n-1))/ Ep(n)

a为调整步长,0~1之间取值(6)(2)隐层节点数的优化

隐层节点数的多少对网络性能的影响较大,当隐节点数太多时,会导致网络学习时间过长,甚至不能收敛;而当隐节点数过小时,网络的容错能力差。利用逐步回归分析 法并进行参数的显著性检验来动态删除一些线形相关的隐节点,节点删除标准:当由该节点出发指向下一层节点的所有权值和阈值均落于死区(通常取±0.1、±0.05等区间)之中,则该节点可删除。最佳隐节点数L 可参考下面公式计算:

L=(m+n)1/2+c (7) m-输入节点数;n-输出节点数;c-介于1~10的常数。

(3)输入和输出神经元的确定

利用多元回归分析法对神经网络的输入参数进行处理,删除相关性强的输入参数,来减少输入节点数。 (4)算法优化

由于BP 算法采用的是剃度下降法,因而易陷于局部最小并且训练时间较长。用基于生物免疫机制地既能全局搜索又能避免未成熟收敛的免疫遗传算法IGA 取代传统BP 算法来克服此缺点。

2.3 BP 神经网络仿真

假设备控对象的近似数学模型为: 2()(1)

()(1)

1(1)a k yout k yout k u k yout k -=+-+-

(8)

式中,系统a (k )是慢时变的,0.1() 1.2(10.8)k

a k e

-=-。

神经网络的结构选择2-6-1,学习速度 η=0.5和惯性系数α=0.05,输入指令信号为:

rin(k)=0.5*sin(6*л*t)。 仿真程序: clear all; close all; xite=0.50; alfa=0.05; w2=rand(6,1); w2_1=w2;w2_2=w2; w1=rand(2,6); w1_1=w1;w1_2=w1; dw1=0*w1; x=[0,0]'; u_1=0; y_1=0; I=[0,0,0,0,0,0]'; Iout=[0,0,0,0,0,0]'; FI=[0,0,0,0,0,0]'; ts=0.001; for k=1:1:1000 time(k)=k*ts; u(k)=0.50*sin(3*2*pi*k*ts);

a(k)=1.2*(1-0.8*exp(-0.1*k));

y(k)=a(k)*y_1/(1+y_1^2)+u_1;

for j=1:1:6

I(j)=x'*w1(:,j);

Iout(j)=1/(1+exp(-I(j)));

end

yn(k)=w2'*Iout;

e(k)=y(k)-yn(k);

w2=w2_1+(xite*e(k))*Iout+alfa*(w2_1-w 2_2);

for j=1:1:6

FI(j)=exp(-I(j))/(1+exp(-I(j)))^2; end

for i=1:1:2

for j=1:1:6

dw1(i,j)=e(k)*xite*FI(j)*w2(j)*x(i); end

end

w1=w1_1+dw1+alfa*(w1_1-w1_2);

x(1)=u(k);

x(2)=y(k);

w1_2=w1_1;w1_1=w1;

w2_2=w2_1;w2_1=w2;

u_1=u(k);

y_1=y(k);

end

subplot(2,1,1);

plot(time,y,'r',time,yn,'b');

xlabel('times');ylabel('实际输出和仿真输出');

grid on

subplot(2,1,2);

plot(time,y-yn,'r');

xlabel('times');ylabel('error');

grid on

00.10.20.30.4

0.50.60.70.80.91

-2

-1012times

实际输出和仿真输出

0.1

0.2

0.3

0.4

0.50.6

0.7

0.8

0.91

-2-1.5-1-0.500.5times

e r r o r

图2-1 神经网络仿真图

3.动态矩阵控制

DMC 算法分为三部分:预测模型、滚动优化和反馈校正。

3.1 预测模型

在DMC 算法中,首先需要测定对象单位阶跃响应的采样值)(iT a a i =,i=1,2,……。其中,T 为采样周期。对于渐进稳定的对象,阶跃响应在某一NT N =t ,后将趋于平稳,以至i a (i>N)与N a 的误差和量化误差及测量误差有相同的数量级,因而可认为,N a 已近似等于阶跃响应的稳态值)(∞=a a S 。这样,对象的动态信息就可以近似用有限集合{}N a a a ??21,加以描述。这个集合的参数构成了DMC 的模型参数,向量a={}N a a a ??21,称为模型向量,N 称为模型时域长度。

虽然阶跃响应是一种非参数模型,但由于线性系统具有比例和叠加性质,故利用这组模型参数{}i a ,已足以预测在任意输入作用下系统在未来时刻的输出值。在t=kT 时刻,假如控

数学建模神经网络预测模型及程序

年份 (年) 1(1988) 2(1989) 3(1990) 4(1991) 5(1992) 6(1993) 7(1994) 8(1995) 实际值 (ERI) 年份 (年) 9(1996) 10(1997) 11(1998) 12(1999) 13(2000) 14(2001) 15(2002) 16(2003) 实际值 (ERI) BP 神经网络的训练过程为: 先用1988 年到2002 年的指标历史数据作为网络的输入,用1989 年到2003 年的指标历史数据作为网络的输出,组成训练集对网络进行训练,使之误差达到满意的程度,用这样训练好的网络进行预测. 采用滚动预测方法进行预测:滚动预测方法是通过一组历史数据预测未来某一时刻的值,然后把这一预测数据再视为历史数据继续预测下去,依次循环进行,逐步预测未来一段时期的值. 用1989 年到2003 年数据作为网络的输入,2004 年的预测值作为网络的输出. 接着用1990 年到2004 年的数据作为网络的输入,2005 年的预测值作为网络的输出.依次类推,这样就得到2010 年的预测值。 目前在BP 网络的应用中,多采用三层结构. 根据人工神经网络定理可知,只要用三层的BP 网络就可实现任意函数的逼近. 所以训练结果采用三层BP模型进行模拟预测. 模型训练误差为,隐层单元数选取8个,学习速率为,动态参数,Sigmoid参数,最大迭代次数3000.运行3000次后,样本拟合误差等于。 P=[。。。];输入T=[。。。];输出 % 创建一个新的前向神经网络 net_1=newff(minmax(P),[10,1],{'tansig','purelin'},'traingdm') % 当前输入层权值和阈值 inputWeights={1,1} inputbias={1} % 当前网络层权值和阈值 layerWeights={2,1} layerbias={2} % 设置训练参数 = 50; = ; = ; = 10000; = 1e-3;

基于BP神经网络的预测模型

基于BP神经网络的国际黄金价格预测模型 公文易文秘资源网顾孟钧张志和陈友2009-1-2 13:35:26我要投稿添加到百度搜藏 [摘要] 为了寻找国际黄金价格与道琼斯工业指数、美国消费者指数,国际黄金储备等因素之间的内在关系,本文对1972年~2006年间的各项数据首先进行归一化处理,利用MATLAB神经网络工具箱进行模拟训练,建立了基于BP神经网络的国际黄金价格预测模型 [摘要] 为了寻找国际黄金价格与道琼斯工业指数、美国消费者指数,国际黄金储备等因素之间的内在关系,本文对1972年~2006年间的各项数据首先进行归一化处理,利用MATLAB神经网络工具箱进行模拟训练,建立了基于BP神经网络的国际黄金价格预测模型。 [关键词] MATLAB BP神经网络预测模型数据归一化 一、引言 自20世纪70年代初以来的30多年里,世界黄金价格出现了令人瞠目的剧烈变动。20 世纪70年代初,每盎司黄金价格仅为30多美元。80年代初,黄金暴涨到每盎司近700美元。本世纪初,黄金价格处于每盎司270美元左右,此后逐年攀升,到2006年5月12日达到了26年高点,每盎司730美元,此后又暴跌,仅一个月时间内就下跌了约160美元,跌幅高达21.9%。最近两年,黄金价格一度冲高到每盎司900多美元。黄金价格起伏如此之大,本文根据国际黄金价格的影响因素,通过BP神经网络预测模型来预测长期黄金价格。 二、影响因素 刘曙光和胡再勇证实将观察期延长为1972年~2006年时,则影响黄金价格的主要因素扩展至包含道琼斯指数、美国消费者价格指数、美元名义有效汇率、美国联邦基金利率和世界黄金储备5个因素。本文利用此观点,根据1972年~2006年各因素的值来建立神经网络预测模型。 三、模型构建

模糊神经网络技术研究的现状及展望

模糊神经网络技术研究的现状及展望 摘要:本文对模糊神经网络技术研究的现状进行了综述,首先介绍了模糊控制技术和神经网络技术的发展,然后结合各自的特点讨论了模糊神经网络协作体的产生以及优越性,接着对模糊神经网络的常见算法、结构确定、规则的提取等进行了阐述,指出了目前模糊神经网络的研究发展中还存在的一些问题,并对模糊神经网络的发展进行了展望。 关键字:模糊控制;神经网络;模糊神经网络 引言 系统的复杂性与所要求的精确性之间存在尖锐的矛盾。为此,通过模拟人类学习和自适应能力,人们提出了智能控制的思想。控制理论专家Austrom(1991)在IFAC大会上指出:模糊逻辑控制、神经网络与专家控制是三种典型的智能控制方法。通常专家系统建立在专家经验上,并非建立在工业过程所产生的操作数据上,且一般复杂系统所具有的不精确性、不确定性就算领域专家也很难把握,这使建立专家系统非常困难。而模糊逻辑和神经网络作为两种典型的智能控制方法,各有优缺点。模糊逻辑与神经网络的融合——模糊神经网络由于吸取了模糊逻辑和神经网络的优点,避免了两者的缺点,已成为当今智能控制研究的热点之一了。 1 模糊神经网络的提出 模糊集理论由美国著名控制论专家L.A.Zadeh于1965年创立[1]。1974年,英国著名学者E.H.Mamdani将模糊逻辑和模糊语言用于工业控制,提出了模糊控制论。至今,模糊控制已成功应用在被控对象缺乏精确数学描述及系统时滞、非线性严重的场合。 人工神经网络理论萌芽于上世纪40年代并于80年代中后期重掀热潮,其基本思想是从仿生学的角度对人脑的神经系统进行功能化模拟。人工神经网络可实现联想记忆,分类和优化计算等功能,在解决高度非线性和严重不确定系统的控制问题方面,显示了巨大的优势和潜力模糊控制系统与神经网络系统具有整体功能的等效性[2],两者都是无模型的估计器,都不需要建立任何的数学模型,只需要根据输入的采样数据去估计其需要的决策:神经网络根据学习算法,而模糊控制系统则根据专家提出的一些语言规则来进行推理决策。实际上,两者具有相同的正规数学特性,且共享同一状态空间[3]。 另一方面,模糊控制系统与神经网络系统具有各自特性的互补性[。神经网络系统完成的是从输入到输出的“黑箱式”非线性映射,但不具备像模糊控制那样的因果规律以及模糊逻辑推理的将强的知识表达能力。将两者结合,后者正好弥补前者的这点不足,而神经网络的强大自学习能力则可避免模糊控制规则和隶属函数的主观性,从而提高模糊控制的置信度。因此,模糊逻辑和神经网络虽然有着本质上的不同,但由于两者都是用于处理不确定性问题,不精确性问题,两者又有着天然的联系。Hornik和White(1989)证明了神经网络的函数映射能力[4];Kosko(1992)证明了可加性模糊系统的模糊逼近定理(FAT,Fuzzy Approximation Theorem)[5];Wang和Mendel(1992)、Buckley和Hayashi(1993)、Dubots和Grabish(1993)、Watkins(1994)证明了各种可加性和非可加性模糊系统的模糊逼近定理[6]。这说明模糊逻辑和神经网络有着密切联系,正是由于这类理论上的共性,才使模糊逻辑和神经网络的结合成为可能。 2 模糊神经网络的学习算法 各种类型的模糊神经网络学习算法的共同方面是结构学习和参数学习两部分。结构学习是指按照一定的性能要求确定模糊系统的推理规则的条数,每条规则的前提和结论的隶属度函数以及由清晰化得到具体的规则数。参数学习是指进一步细化各隶属函数的参数以及模糊规则的其他参数,以使系统达到最优。结构学习主要是从输入输出数据中提取规则或由输入空间模糊划分获得规则,主要有启发式搜索、模糊网格法、树形划分法、基于模糊聚类的学习算

用matlab编BP神经网络预测程序

求用matlab编BP神经网络预测程序 求一用matlab编的程序 P=[。。。];输入T=[。。。];输出 % 创建一个新的前向神经网络 net_1=newff(minmax(P),[10,1],{'tansig','purelin'},'traingdm') % 当前输入层权值和阈值 inputWeights=net_1.IW{1,1} inputbias=net_1.b{1} % 当前网络层权值和阈值 layerWeights=net_1.LW{2,1} layerbias=net_1.b{2} % 设置训练参数 net_1.trainParam.show = 50; net_1.trainParam.lr = 0.05; net_1.trainParam.mc = 0.9; net_1.trainParam.epochs = 10000; net_1.trainParam.goal = 1e-3; % 调用 TRAINGDM 算法训练 BP 网络 [net_1,tr]=train(net_1,P,T); % 对 BP 网络进行仿真 A = sim(net_1,P); % 计算仿真误差 E = T - A; MSE=mse(E) x=[。。。]';%测试 sim(net_1,x) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 不可能啊我2009 28

对初学神经网络者的小提示 第二步:掌握如下算法: 2.最小均方误差,这个原理是下面提到的神经网络学习算法的理论核心,入门者要先看《高等数学》(高等教育出版社,同济大学版)第8章的第十节:“最小二乘法”。 3.在第2步的基础上看Hebb学习算法、SOM和K-近邻算法,上述算法都是在最小均方误差基础上的改进算法,参考书籍是《神经网络原理》(机械工业出版社,Simon Haykin著,中英文都有)、《人工神经网络与模拟进化计算》(清华大学出版社,阎平凡,张长水著)、《模式分类》(机械工业出版社,Richard O. Duda等著,中英文都有)、《神经网络设计》(机械工业出版社,Martin T. Hargan等著,中英文都有)。 4.ART(自适应谐振理论),该算法的最通俗易懂的读物就是《神经网络设计》(机械工业出版社,Martin T. Hargan等著,中英文都有)的第15和16章。若看理论分析较费劲可直接编程实现一下16.2.7节的ART1算法小节中的算法. 4.BP算法,初学者若对误差反传的分析过程理解吃力可先跳过理论分析和证明的内容,直接利用最后的学习规则编个小程序并测试,建议看《机器学习》(机械工业出版社,Tom M. Mitchell著,中英文都有)的第4章和《神经网络设计》(机械工业出版社,Martin T. Hargan等著,中英文都有)的第11章。 BP神经网络Matlab实例(1) 分类:Matlab实例 采用Matlab工具箱函数建立神经网络,对一些基本的神经网络参数进行了说明,深入了解参考Matlab帮助文档。 % 例1 采用动量梯度下降算法训练 BP 网络。 % 训练样本定义如下: % 输入矢量为 % p =[-1 -2 3 1 % -1 1 5 -3] % 目标矢量为 t = [-1 -1 1 1] close all clear clc

基于神经网络的预测控制模型仿真

基于神经网络的预测控制模型仿真 摘要:本文利用一种权值可以在线调整的动态BP神经网络对模型预测误差进行拟合并与预测模型一起构成动态组合预测器,在此基础上形成对模型误差具有动态补偿能力的预测控制算法。该算法显著提高了预测精度,增强了预测控制算法的鲁棒性。 关键词:预测控制神经网络动态矩阵误差补偿 1.引言 动态矩阵控制(DMC)是一种适用于渐近稳定的线性或弱非线性对象的预测控制算法,目前已广泛应用于工业过程控制。它基于对象阶跃响应系数建立预测模型,因此建模简单,同时采用多步滚动优化与反馈校正相结合,能直接处理大时滞对象,并具有良好的跟踪性能和较强的鲁棒性。 但是,DMC算法在实际控制中存在一系列问题,模型失配是其中普遍存在的一个问题,并会不同程度地影响系统性能。DMC在实际控制中产生模型失配的原因主要有2个,一是诸如建模误差、环境干扰等因素,它会在实际控制的全程范围内引起DMC的模型失配;二是实际系统的非线性特性,这一特性使得被控对象的模型发生变化,此时若用一组固定的阶跃响应数据设计控制器进行全程范围的控制,必然会使实际控制在对象的非建模区段内出现模型失配。针对DMC模型失配问题,已有学者进行了大量的研究,并取得了丰富的研究成果,其中有基于DMC控制参数在线辨识的智能控制算法,基于模型在线辨识的自校正控制算法以及用神经元网络进行模型辨识、在辨识的基础上再进行动态矩阵控制等。这些算法尽管进行在线辨识修正对象模型参数,仍对对象降阶建模误差(结构性建模误差)的鲁棒性不好,并对随机噪声干扰较敏感。针对以上问题,出现了基于误差校正的动态矩阵控制算法。这些文献用基于时间序列预测的数学模型误差代替原模型误差,得到对未来误差的预测。有人还将这种误差预测方法引入动态矩阵控制,并应用于实际。这种方法虽然使系统表现出良好的稳定性,但建立精确的误差数学模型还存在一定的困难。 本文利用神经网络通过训练学习能逼近任意连续有界函数的特点,建立了一种采用BP 神经网络进行预测误差补偿的DMC预测控制模型。其中神经网络预测误差描述了在预测模型中未能包含的一切不确定性信息,可以归结为用BP神经网络基于一系列过去的误差信息预测未来的误差,它作为模型预测的重要补充,不仅降低建立数学模型的负担,而且还可以弥补在对象模型中已简化或无法加以考虑的一切其他因素。 本文通过进行仿真,验证了基于神经网络误差补偿的预测控制算法的有效性及优越性,

神经网络模型预测控制器

神经网络模型预测控制器 摘要:本文将神经网络控制器应用于受限非线性系统的优化模型预测控制中,控制规则用一个神经网络函数逼近器来表示,该网络是通过最小化一个与控制相关的代价函数来训练的。本文提出的方法可以用于构造任意结构的控制器,如减速优化控制器和分散控制器。 关键字:模型预测控制、神经网络、非线性控制 1.介绍 由于非线性控制问题的复杂性,通常用逼近方法来获得近似解。在本文中,提出了一种广泛应用的方法即模型预测控制(MPC),这可用于解决在线优化问题,另一种方法是函数逼近器,如人工神经网络,这可用于离线的优化控制规则。 在模型预测控制中,控制信号取决于在每个采样时刻时的想要在线最小化的代价函数,它已经广泛地应用于受限的多变量系统和非线性过程等工业控制中[3,11,22]。MPC方法一个潜在的弱点是优化问题必须能严格地按要求推算,尤其是在非线性系统中。模型预测控制已经广泛地应用于线性MPC问题中[5],但为了减小在线计算时的计算量,该部分的计算为离线。一个非常强大的函数逼近器为神经网络,它能很好地用于表示非线性模型或控制器,如文献[4,13,14]。基于模型跟踪控制的方法已经普遍地应用在神经网络控制,这种方法的一个局限性是它不适合于不稳定地逆系统,基此本文研究了基于优化控制技术的方法。 许多基于神经网络的方法已经提出了应用在优化控制问题方面,该优化控制的目标是最小化一个与控制相关的代价函数。一个方法是用一个神经网络来逼近与优化控制问题相关联的动态程式方程的解[6]。一个更直接地方法是模仿MPC方法,用通过最小化预测代价函数来训练神经网络控制器。为了达到精确的MPC技术,用神经网络来逼近模型预测控制策略,且通过离线计算[1,7.9,19]。用一个交替且更直接的方法即直接最小化代价函数训练网络控制器代替通过训练一个神经网络来逼近一个优化模型预测控制策略。这种方法目前已有许多版本,Parisini[20]和Zoppoli[24]等人研究了随机优化控制问题,其中控制器作为神经网络逼近器的输入输出的一个函数。Seong和Widrow[23]研究了一个初始状态为随机分配的优化控制问题,控制器为反馈状态,用一个神经网络来表示。在以上的研究中,应用了一个随机逼近器算法来训练网络。Al-dajani[2]和Nayeri等人[15]提出了一种相似的方法,即用最速下降法来训练神经网络控制器。 在许多应用中,设计一个控制器都涉及到一个特殊的结构。对于复杂的系统如减速控制器或分散控制系统,都需要许多输入与输出。在模型预测控制中,模型是用于预测系统未来的运动轨迹,优化控制信号是系统模型的系统的函数。因此,模型预测控制不能用于定结构控制问题。不同的是,基于神经网络函数逼近器的控制器可以应用于优化定结构控制问题。 在本文中,主要研究的是应用于非线性优化控制问题的结构受限的MPC类型[20,2,24,23,15]。控制规则用神经网络逼近器表示,最小化一个与控制相关的代价函数来离线训练神经网络。通过将神经网络控制的输入适当特殊化来完成优化低阶控制器的设计,分散和其它定结构神经网络控制器是通过对网络结构加入合适的限制构成的。通过一个数据例子来评价神经网络控制器的性能并与优化模型预测控制器进行比较。 2.问题表述 考虑一个离散非线性控制系统: 其中为控制器的输出,为输入,为状态矢量。控制

bp神经网络及matlab实现讲解学习

b p神经网络及m a t l a b实现

图1. 人工神经元模型 图中x1~xn是从其他神经元传来的输入信号,wij表示表示从神经元j到神经元i的连接权值,θ表示一个阈值 ( threshold ),或称为偏置( bias )。则神经元i的输出与输入的关系表示为: 图中 yi表示神经元i的输出,函数f称为激活函数 ( Activation Function )或转移函数 ( Transfer Function ) ,net称为净激活(net activation)。若将阈值看成是神经元i的一个输入x0的权重wi0,则上面的式子可以简化为: 若用X表示输入向量,用W表示权重向量,即: X = [ x0 , x1 , x2 , ....... , xn ]

则神经元的输出可以表示为向量相乘的形式: 若神经元的净激活net为正,称该神经元处于激活状态或兴奋状态(fire),若净激活net为负,则称神经元处于抑制状态。 图1中的这种“阈值加权和”的神经元模型称为M-P模型 ( McCulloch-Pitts Model ),也称为神经网络的一个处理单元( PE, Processing Element )。 2. 常用激活函数 激活函数的选择是构建神经网络过程中的重要环节,下面简要介绍常用的激活函数。 (1) 线性函数 ( Liner Function ) (2) 斜面函数 ( Ramp Function ) (3) 阈值函数 ( Threshold Function ) 以上3个激活函数都属于线性函数,下面介绍两个常用的非线性激活函数。 (4) S形函数 ( Sigmoid Function ) 该函数的导函数:

BP神经网络预测模型及应用

B P神经网络预测模型及 应用 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

B P神经网络预测模型及应用 摘要采用BP神经网络的原理,建立神经网络的预测模型,并利用建立的人工神经网络训练并预测车辆的销售量,最后得出合理的评价和预测结果。 【关键词】神经网络模型预测应用 1 BP神经网络预测模型 BP神经网络基本理论 人工神经网络是基于模仿生物大脑的结构和功能而构成的一种信息处理系统。该网络由许多神经元组成,每个神经元可以有多个输入,但只有一个输出,各神经元之间不同的连接方式构成了不同的神经网络模型,BP网为其中之一,它又被称为多层前馈神经网络。 BP神经网络预测模型 (1)初始化,给各连接权值(wij,vi)及阐值(θi)赋予随机值,确定网络结构,即输入单元、中间层单元以及输出层单元的个数;通过计算机仿真确定各系数。 在进行BP网络设计前,一般应从网络的层数、每层中的神经元个数、初始值以及学习方法等方面进行考虑,BP网络由输入层、隐含层和输出层组成。隐含层神经元个数由以下经验公式计算: (1)

式中:s为隐层节点数,m为输入层节点数,n为输出层节点数,h为正整数,一般取3―7. BP网络采用了有一定阈值特性的、连续可微的sigmoid函数作为神经元的激发函数。采用的s 型函数为: (2) 式中:s为隐层节点数,m为输入层节点数,n为输出层节点数,h为正整数,一般取3―7.计算值需经四舍五入取整。 (2)当网络的结构和训练数据确定后,误差函数主要受激励函数的影响,尽管从理论分析中得到比的收敛速度快,但是也存在着不足之处。当网络收敛到一定程度或者是已经收敛而条件又有变化的时候,过于灵敏的反映会使得系统产生震荡,难于收敛。因此,对激励函数进行进一步改进,当权值wij (k)的修正值Δwij(k) Δwij(k+1)<0时,,其中a为大于零小于1的常数。这样做降低了系统进入最小点时的灵敏度,减少震荡。 2 应用 车辆销售量神经网络预测模型 本文以某汽车制造企业同比价格差、广告费用、服务水平、车辆销售量作为学习训练样本数据。如表1。 表1 产品的广告费、服务水平、价格差、销售量 月份广告费 (百万元)服务水平价格差

神经网络预测控制综述

神经网络预测控制综述 摘要:近年来,神经网络预测控制在工业过程控制中不仅得到广泛的应用,而且其理论研究也取得了很大进展。对当前各种神经刚络预测控制方法的现状及其工业应用进行了较深入地分析,并对其存在的问题和今后可能的发展趋势作了进一步探讨。 关键词:神经网络;预测控制:非线性系统;工业过程控制 Abstract: In recent years, neural network predictive control has not only been widely used in industrial process control, but also has made great progress in theoretical research. The current status of various neural network prediction control methods and their industrial applications are analyzed in depth, and the existing question and possible future development trends are further discussed. Keywords: neural network; predictive control: nonlinear system; industrial process control

20世纪70年代以来,人们从工业过程的特点出发,寻找对模型精度要去不高而同样能实现高质量控制性能的方法,预测控制就是在这种背景下发展起的[1]。预测控制技术最初山Richalet和Cutler提出[2],具有多步预测、滚动优化、反馈校正等机理,因此能够克服过程模型的不确定性,体现出优良的控制性能,在工业过程控制中取得了成功的应用。如Shell公司、Honeywell公司、Centum 公司,都在它们的分布式控制系统DCS上装备了商业化的预测控制软件包.并广泛地将其应用于石油、化工、冶金等工业过程中[3]。但是,预测函数控制是以被控对象的基函数的输出响应可以叠加为前提的,因而只适用于线性动态系统控制。对于实际中大量的复杂的非线性工业过程。不能取得理想的控制效果。而神经网络具有分布存储、并行处理、联想记忆、自组织和自学习等功能,以神经元组成的神经网络可以逼近任意的:线性系统。使控制系统具有智能化、鲁棒性和适应性,能处理高维数、非线性、干扰强、难建模的复杂工业过程。因此,将神经网络应用于预测控制,既是实际应用的需要,同时也为预测控制理论的发展开辟了广阔的前景。本文对基于神经网络的预测控制的研究现状进行总结,并展望未来的发展趋势。 l神经网络预测控制的基本算法的发展[4] 实际中的控制对象都带有一定的菲线性,大多数具有弱非线性的对象可用线性化模型近似,并应用已有的线性控制理论的研究成果来获得较好的控制效果。而对具有强非线性的系统的控制则一直是控制界研究的热点和难点。 就预测控制的基本原理而言,只要从被控对象能够抽取出满足要求的预测模型,它便可以应用于任何类型的系统,包括线性和非线性系统。 由于神经网络理论在求解非线性方面的巨大优势,很快被应用于非线性预测控制中。其主要设计思想是:利用一个或多个神经刚络,对非线性系统的过程信息进行前向多步预测,然后通过优化一个含有这些预测信息的多步优化目标函数,获得非线性预测控制律。在实际应用与理论研究中形成了许多不同的算法。如神经网络的内模控制、神经网络的增量型模型算法控制等,近来一些学者对有约束神经网络的预测控制也作了相应的研究。文献[5]设计了多层前馈神经网络,使控制律离线求解。文献[6]采用两个网络进行预测,但结构复杂,距离实际应用还有一定的距离,文献[7]利用递阶遗传算法,经训练得出离线神经网络模型.经多步预测得出对象的预测模型,给出了具有时延的非线性系统的优化预测控制。将神经网络用于GPC的研究成果有利用Tank.Hopfield网络处理GPC矩阵求逆的算法,基于神经网络误差修正的GPC算法、利用小脑模型进行提前计算的GPC 算法、基于GPC的对角递归神经网络控制方法以及用神经网络处理约束情形的预

BP神经网络matlab源程序代码

close all clear echo on clc % NEWFF——生成一个新的前向神经网络 % TRAIN——对 BP 神经网络进行训练 % SIM——对 BP 神经网络进行仿真 % 定义训练样本 % P为输入矢量 P=[0.7317 0.6790 0.5710 0.5673 0.5948;0.6790 0.5710 0.5673 0.5948 0.6292; ... 0.5710 0.5673 0.5948 0.6292 0.6488;0.5673 0.5948 0.6292 0.6488 0.6130; ... 0.5948 0.6292 0.6488 0.6130 0.5654; 0.6292 0.6488 0.6130 0.5654 0.5567; ... 0.6488 0.6130 0.5654 0.5567 0.5673;0.6130 0.5654 0.5567 0.5673 0.5976; ... 0.5654 0.5567 0.5673 0.5976 0.6269;0.5567 0.5673 0.5976 0.6269 0.6274; ... 0.5673 0.5976 0.6269 0.6274 0.6301;0.5976 0.6269 0.6274 0.6301 0.5803; ... 0.6269 0.6274 0.6301 0.5803 0.6668;0.6274 0.6301 0.5803 0.6668 0.6896; ... 0.6301 0.5803 0.6668 0.6896 0.7497]; % T为目标矢量 T=[0.6292 0.6488 0.6130 0.5654 0.5567 0.5673 0.5976 ... 0.6269 0.6274 0.6301 0.5803 0.6668 0.6896 0.7497 0.8094]; % Ptest为测试输入矢量 Ptest=[0.5803 0.6668 0.6896 0.7497 0.8094;0.6668 0.6896 0.7497 0.8094 0.8722; ... 0.6896 0.7497 0.8094 0.8722 0.9096]; % Ttest为测试目标矢量 Ttest=[0.8722 0.9096 1.0000]; % 创建一个新的前向神经网络 net=newff(minmax(P'),[12,1],{'logsig','purelin'},'traingdm'); % 设置训练参数 net.trainParam.show = 50; net.trainParam.lr = 0.05; net.trainParam.mc = 0.9; net.trainParam.epochs = 5000; net.trainParam.goal = 0.001; % 调用TRAINGDM算法训练 BP 网络 [net,tr]=train(net,P',T); % 对BP网络进行仿真 A=sim(net,P'); figure; plot((1993:2007),T,'-*',(1993:2007),A,'-o'); title('网络的实际输出和仿真输出结果,*为真实值,o为预测值'); xlabel('年份'); ylabel('客运量'); % 对BP网络进行测试 A1=sim(net,Ptest');

基于Bp神经网络的股票预测

基于神经网络的股票预测 【摘要】: 股票分析和预测是一个复杂的研究领域,本论文将股票技术分析理论与人工神经网络相结合,针对股票市场这一非线性系统,运用BP神经网络,研究基于历史数据分析的股票预测模型,同时,对单只股票短期收盘价格的预测进行深入的理论分析和实证研究。本文探讨了BP神经网络的模型与结构、BP算法的学习规则、权值和阈值等,构建了基于BP神经网络的股票短期预测模型,研究了神经网络的模式、泛化能力等问题。并且,利用搭建起的BP神经网络预测模型,采用多输入单输出、单隐含层的系统,用前五天的价格来预测第六天的价格。对于网络的训练,选用学习率可变的动量BP算法,同时,对网络结构进行了隐含层节点的优化,多次尝试,确定最为合理、可行的隐含层节点数,从而有效地解决了神经网络隐含层节点的选取问题。 【abstract] Stock analysis and forecasting is a complex field of study. The paper will make research on stock prediction model based on the analysis of historical data, using BP neural network and technical analysis theory. At the same time, making in-depth theoretical analysis and empirical studies on the short-term closing price forecasts of single stock. Secondly, making research on the model and structure of BP neural network, learning rules, weights of BP algorithm and so on, building a stock short-term forecasting model based on the BP neural network, related with the model of neural network and the ability of generalization. Moreover, using system of multiple-input single-output and single hidden layer, to forecast the sixth day price by BP neural network forecasting model structured. The network of training is chosen BP algorithm of traingdx, while making optimization on the node numbers of the hidden layer by several attempts. Thereby resolve effectively the problem of it. 【关键词】BP神经网络股票预测分析 1.引言 股票市场是一个不稳定的非线性动态变化的复杂系统,股价的变动受众多因素的影响。影响股价的因素可简单地分为两类,一类是公司基本面的因素,另一类是股票技术面的因素,虽然股票的价值是公司未来现金流的折现,由公司的基本面所决定,但是由于公司基本面的数据更新时间慢,且很多时候并不能客观反映公司的实际状况,采用适当数学模型就能在一定

模糊神经网络的基本原理与应用概述

模糊神经网络的基本原理与应用概述 摘要:模糊神经网络(FNN)是将人工神经网络与模糊逻辑系统相结合的一种具有强大的自学习和自整定功能的网络,是智能控制理论研究领域中一个十分活跃的分支,因此模糊神经网络控制的研究具有重要的意义。本文旨在分析模糊神经网络的基本原理及相关应用。 关键字:模糊神经网络,模糊控制,神经网络控制,BP算法。 Abstract:A fuzzy neural network is a neural network and fuzzy logic system with the combination of a powerful. The self-learning and self-tuning function of the network, is a very intelligent control theory research in the field of active branches. So the fuzzy neural network control research has the vital significance. The purpose of this paper is to analysis the basic principle of fuzzy neural networks and related applications. Key Words: Fuzzy Neural Network, Fuzzy Control, Neural Network Control, BP Algorithm.

1人工神经网络的基本原理与应用概述 人工神经网络的概念 人工神经网络(Artificial Neural Network,简称ANN)是由大量神经元通过极其丰富和完善的联接而构成的自适应非线性动态系统,它使用大量简单的相连的人工神经元来模仿生物神经网络的能力,从外界环境或其它神经元获得信息,同时加以简单的运算,将结果输出到外界或其它人工神经元。神经网络在输入信息的影响下进入一定状态,由于神经元之间相互联系以及神经元本身的动力学特性,这种外界刺激的兴奋模式会自动地迅速演变成新的平衡状态,这样具有特定结构的神经网络就可定义出一类模式变换即实现一种映射关系。由于人工神经元在网络中不同的联接方式,就形成了不同的人工神经网络模式,其中误差反向传播网络(Back-Propagation Network,简称BP网络)是目前人工神经网络模式中最具代表性,应用得最广泛的一种模型【1,2】。 人工神经网络研究的发展简史 人工神经网络的研究己有近半个世纪的历史但它的发展并不是一帆风顺的,神经网络的研究大体上可分为以下五个阶段[3]。 (1) 孕育期(1956年之前):1943年Mcculloch与Pitts共同合作发表了“A logical calculus of ideas immanent in Nervous Activity”一文,提出了神经元数学模型(即MP模型)。1949年Hebb提出Hebb学习法则,对神经网络的发展做出了重大贡献。可以说,MP模型与学习规则为神经科学与电脑科学之间架起了沟通的桥梁,也为后来人工神经网络的迅速发展奠定了坚实的基础。 (2)诞生期(1957年一1968年):1960年Widrow提出了自适应线性元件模型,Rossenbaltt在1957年提出了第一种人工神经网络模式一感知机模式,由二元值神经元组成,该模式的产生激起了人工神经网络研究的又一次新高潮。(3)挫折期(1969年一1981年):1969年Minsky等人写的《感知机》一书以数学方法证明了当时的人工神经网络模式的学习能力受到很大限制。之后,人工神经网络的研究一直处于低潮。

BP神经网络MATLAB代码

BP神经网络matlab代码 p=[284528334488;283344884554;448845542928;455429283497;29283497 2261;... 349722616921;226169211391;692113913580;139135804451;35804451 2636;... 445126363471;263634713854;347138543556;385435562659;35562659 4335;... 265943352882;433528824084;433528821999;288219992889;19992889 2175;... 288921752510;217525103409;251034093729;340937293489;37293489 3172;... 348931724568;317245684015;]'; %====期望输出======= t=[4554292834972261692113913580445126363471385435562659... 4335288240841999288921752510340937293489317245684015... 3666]; ptest=[284528334488;283344884554;448845542928;455429283497;29283497 2261;... 349722616921;226169211391;692113913580;139135804451;35804451 2636;... 445126363471;263634713854;347138543556;385435562659;35562659 4335;... 265943352882;433528824084;433528821999;288219992889;19992889 2175;... 288921752510;217525103409;251034093729;340937293489;37293489 3172;... 348931724568;317245684015;456840153666]'; [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t);%将数据归一化 NodeNum1=20;%隐层第一层节点数 NodeNum2=40;%隐层第二层节点数 TypeNum=1;%输出维数 TF1='tansig'; TF2='tansig'; TF3='tansig'; net=newff(minmax(pn),[NodeNum1,NodeNum2,TypeNum],{TF1TF2 TF3},'traingdx');

BP神经网络的预测理论的及程序 学习

12、智能算法 12.1 人工神经网络 1、人工神经网络的原理假如我们只知道一些输入和相应的输出,但是不清楚这些输入和输出之间的具体关系是什么,我们可以把输入和输出之间的未知过程看成是一个“网络”,通过不断的网络输入和相应的输出进行“训练”(学习),网络根据输入和对应输出不断调整连接网络的权值,直到满足我们的目标要求,这样就训练好了一个神经网络,当我们给定一个输入, 网络就会计算出一个相应的输出。 2、网络结构神经网络一般有一个输入层,多个隐层,和一个输出层。隐层并非越多越好。如下图所示: 神经网络工具箱几乎 MATLAB 12.2 Matlab 神经网络工具箱 BP 网络和涵盖了所有的神经网络的基本常用模型,如感知器、nntool nftool,nctool,nprtool,nntraintool 和等。它由RBFNN 函数逼近和数据拟合、信息处理和预测、神经网组成。主要应用于

在实际应用中,针对具体的问题,首先络控制和故障诊断等领域。.需要分析利用神经网络来解决问题的性质,然后依据问题的特点,提取训练和测试数据样本,确定网络模型,最后通过对网络进行训练、仿真等检验网络的性能是否满足要求。具体过程如下: (1)确定信息表达的方式,主要包括数据样本已知;数据样本之间相互关系不明确;输入/输出模式为连续的或离散的;数据样本的预处理;将数据样本分成训练样本和测试样本。 (2)网络模型的确定。确定选择何种神经网络以及网络层数。 (3)网络参数的选择,如输入输出神经元个数的确定,隐层神经元的个数等。 (4)训练模式的确定,包括选择合理的训练算法、确定合适的训练步数、指定适当的训练目标误差等 (5)网络测试,选择合理的样本对网络进行测试。 简单来讲就是三个步骤:建立网络(newXX)—训练网络(trainXX)—仿真网络(sim) 12.3 BP 神经网络的 Matlab 相关函数 BP 算法的基本思想:学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号作为修正各单元权

MATLAB动态神经网络在时间序列预测中的应用

MATLAB动态神经网络在时间序列预测中的应用 摘要:本文在介绍了Matlab神经网络工具箱的基础上,主要对时间序列预测工具箱的使用作了说明,并用实例仿真说明如何进行时间序列预测的调用实现,通过不断的调整参数,最后使训练的模型比较理想,满足实际的需求,表明了直接使用时间序列预测的有效性,并为Matlab神经网络工具箱的使用提供了新的方法。 关键词:Matlab;神经网络;时间序列;预测 引言 时间序列是根据时间顺序得到跟时间相关的变量或者参数的观测数据[1]。对时间序列的研究主要是挖掘其中有价值的信息,找到其中变化的内在规律[2]。时间序列预测是时间序列分析研究的主要内容,是指根据现有的和历史的时间序列的数据,建立能反映时间序列中所包含的动态依存关系的数学模型[3],从而能对序列未来的趋势做出合理的预测。简单的说,时间序列预测就是用已有的数据预测下一个时间段的值。目前,时间序列预测已经广泛应用在自然界、经济、化学、科学工程等各个领域。 随着Matlab版本的不断更新,神经网络工具箱不断的完善,使得仿真的实现日益简单,R2010b后的版本对时间序列预测的实现不需要手动写代码,网络训练完毕,从Simple Script可看到网络代码,并可对代码进行编辑、改编,因此,只要调用就可应用在各个领域。本文结合时间序列预测的特点,将Matlab神经网络工具箱中的时间序列预测应用到温度预测的实例中,通过快速的仿真及不断的调整参数,从而形成较理想的数学模型,为后期进行温度的预测奠定了基础。 1Matlab神经网络工具箱简介 神经网络分为静态和动态两类。静态神经网络是无反馈、无记忆的,输出仅依赖于当前的输入,例如BP神经网络和RBF神经网络。动态神经网络是有记忆的神经网络,其输出依赖于当前和以前的输入。动态神经网络又分为有反馈和无反馈,有反馈指输出依赖于当前输入和前一个输入输出,无反馈指输出依赖于当前和之前的输入。因此,动态神经网络比静态神经网络功能强,本文选择动态神经网络进行时间序列预测。 Matlab神经网络工具箱提供了一系列用于模型训练的工具,包括曲线拟合工具箱、模式识别工具箱、聚类工具箱和时间序列工具箱,利用这些工具箱可进行快速的调整参数,通过仿真得到直观的结果。另外,Matlab神经网络工具箱还提供人机交互界面,可根据提示一步一步的完成模型的训练,并对仿真的结果进行分析,直到满足要求为止。 选择时间序列工具箱或者直接在命令窗口中输入ntstool,可打开时间序列预测工具箱界面,根据数据选择符合哪种情况,根据人机交互界面的提示,将数据

相关文档
相关文档 最新文档