时间:2023-12-25 15:34:22
开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇梯度下降法的基本原理,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。
关键词:建筑电气设备故障;模糊理论与神经网络;设备故障诊断专家系统
中图分类号:TP207 文献标识码:A DOI:10.11974/nyyjs.20160132074
随着当今社会经济的不断发展,人们对生活品质的追求越来越高,电气设备变得多样化和先进化,不同区域间联系更加紧密,而在给人们的生活带来便利的同时,简单的人工故障诊断方法已经无法满足结构日益复杂、功能日益完善的电气系统,建立电气设备控制系统智能故障诊断专家系统已经成为目前能满足社会需求的选择。近年来,模糊理论被广泛的应用于建立故障诊断神经网络,将模糊系统与神经网络技术结合而形成的故障诊断技术也正在发展和应用。
1 建筑电气设备常见故障类型及危害
1.1 电气设备常见故障类型
1.1.1 电源故障
1.1.2 线路故障
1.1.3 元器件故障
1.1.4 防雷接地处理故障
1.2 电气设备故障危害
电气设备的运行需要很多电器元件的相互配合,产生故障通常是因为电能或控制信息在传递、分配、转换过程中失去控制。断路、短路、异常接地、漏电、电气设备或电器元件损坏、电子设备受电磁干扰而发生错误动作、控制系统元件的偶然失效都属于电气设备故障[1],而这些故障也很有可能造成大范围的人员伤亡以及造成严重的财产损失,一旦发生,也会造成其他相关领域不同程度的瘫痪。由此可见,电气设备出现故障的概率较高,危害范围也比较大。
2 神经网络与模糊理论
神经网络是一种模仿动物神经网络行为的特征,进行分布式并行信息处理的算法数学模型[2]。这个模型可以根据不同系统自己的特征来选择处理不同信息的方式,在很多不同领域都有比较广泛的应用,当然,它本身也有一些缺陷,比如它不能求解不确定性问题、不能处理符号性信息等,因此,它需要结合其它相关理论和方法来弥补自身的不足,以便更好地解决特定领域中的问题。
模糊理论是指用到了模糊集合的基本概念或连续隶属度函数的理论[3]。模糊控制是一种基于规则的控制,它可以直接采用语言型控制规则,在设计过程中不需要建立被控对象的精确数学模型,控制原理和策略通俗易懂,便于人们接受与理解,控制效果好,具有一定的智能水平,应用起来很方便,适用于对那些数学模型难以获取、动态特性不易掌握或变化非常显著的对象。模糊控制器是一种比较容易控制、掌握起来比较理想的非线性控制器,具有一定的适应能力和强健性。
将模糊系统与神经网络技术相结合而形成的模糊神经网络可以作为对电气设备进行故障诊断的模型,这一技术的提出为电气设备故障的诊断带来发展和进步,模糊理论被广泛的应用于建立故障诊断神经网络,这2种理论的结合将会给故障诊断研究提供解决思路,值得推广应用[4]。
3 建立电气设备故障诊断系统
由于电气设备故障机理的复杂性,系统在实际运用过程中,可能会发生随机故障模式,故障征兆信息的正确与否直接关系到故障诊断的正确性,因此利用现有的电气设备系统控制平台,对电气设备控制系统的信号进行实时采集和及时与PC 机进行通信,建立电气设备控制系统故障诊断系统便显得特别重要。
3.1 BP神经网络模型
BP(Back Propagation)模型是一种最常用的人工神经网络模型,它的基本原理为利用误差反向传播算法,从而得到多层前向神经网络模型。在故障诊断方面使用BP模型在一定条件下能够加强工作效率,使得故障诊断问题变得更加直观。利用模糊理论与神经网络相结合的模糊神经网络解决建筑电气设备故障的诊断,是一种智能化控制的手段,也将逐渐发展成为未来的趋势[5]。其模型原理图如图1。
要建立模糊神经网络系统,要根据相关理论或实际工作中的经验,将故障现象和故障原因相对应,作为系统的学习样本。按照输入与输出相对应的关系输入学习样本,系统经过内部的算法不断提高精度,当精度达到设定的要求时,模糊神经网络系统的学习过程结束。此时,将测试样本的输入数据放入系统输入端,如果输出数据与测试样本基本相同,那么模糊神经网络系统建立成功。
在模糊神经网络系统的实际使用时,必然会遇到输入数据与样本不同的状况。根据内部算法,系统将会找到与学习样本最相似的一组数据作为参考,自主得到输出数据。与此同时,如果系统自主算出的结果得到采纳,那么这组数据将会做为新的样本存入数据库,成为参考数据。
3.2 BP学习算法
目前,BP算法是应用很广泛、完善性比较高的神经网络训练算法,方便、容易实现、计算量小、并行性强是这个方法领先其他算法的优势。BP算法的基本原理[6]为先求解误差函数的最小值,根据梯度下降法,按误差对权值做负反馈。
BP算法需要依次根据输入对输出进行矫正,也就是对每组数据都要计算比对。然而,全局误差的梯度下降算法,要求连接权和阈值的矫正是在批量进行学习样本的输入之后再进行的,所以要修改各个连接权值。利用梯度下降法来修改各个连接权值,以便达到近似全局误差的算法效果。全局误差梯度下降算法流程如图2所示。
4 结 语
电气设备的故障诊断已经成为值得重视的问题,为保证运行系统能够正常运行,因此需要建立起更加科学完善的电气设备管理系统,逐渐减少电气设备运行出现故障的可能性,保障电力系统的稳定能力,本文简单介绍将模糊理论与神经网络结合,更好的解决电气设备故障问题,结合传感器检测技术、自动控制技术、通信与网络技术等方法,建立电气设备控制故障诊断系统,希望可以早日应用到生活中的建筑电气设备故障诊断中去。
参考文献
[1]电气设备及控制电路常见故障分析[EB]. 电工学习网.
[2]田景文.人工神经网络算法研究与应用[M]. 北京理工大学出版社,2006.
[3]诸静.模糊控制原理与应用[M].机械工业出版社,1995.
[4]龙祥,钱志博.模糊理论在设备故障诊断神经网络中的典型应用[J].广东工业大学学报,2006.
[5]陈流豪.神经网络BP算法研究综述[J].电脑知识与技术,2010.
【关键词】PID控制 神经网络 系统辨识 模型构建
1 神经元基础模型分析
单神经元是一种被称为MoCulloch-Pitts(1943年)模型的人工神经元。它是模仿生物神经元的结构和功能、并从数学角度进行描述的一个基本单位,由人脑神经元进行抽象简化后得到。人工神经元是神经网络的最基本的组成部分。
2 基于神经网络的辨识
系统辨识(System Identification)是现代控制理论中一个很重要的组成部分。在现代的控制过程中,由于系统越来越复杂,被控对象的实际数学模型已经无法进行精确的给定与描述,故需要一门控制理论,在掌握被控对象的变化规律下,由另一种方法确定一个近似的、易于描述与控制的数学模型来近似代替这个不可知的复杂模型。
根据L.A.Zadel的系统辨识的定义(1962),辨识就是在分析输入和输出数据的基础上,从一组给定的模型类(Model Set)中,按照一定的规则,确定一个与所测系统等价的模型,如果所测系统模型未知,那么这个等价的模型就可以来近似代替系统模型。从定义中可以得到辨识的三要素:输入输出数据、模型类、等价准则。
神经网络对非线性函数的逼近能力非常好,当神经网络满足一定条件时,可以以任意精度逼近任意非线性连续的函数或者分段连续的函数。因此,用神经网络来完成非线性系统辨识功能是一个很好的选择。
神经网络系统辨识一般有并联型和串-并联型两种辨识结构。并联模型由待辨识系统、神经网络、误差反馈实现。串―并联型模型由待辨识系统、时延网络、误差反馈与神经网络实现,这两种系统都可以实现通过误差对系统进行在线调整,但是后者用待辨识系统的输入输出数据作为辨识信息,并用误差进行校正,能使系统更收敛、稳定,因此,串―并联型模型应用较多。
这两种模型均属于正向模型,是利用多层前馈神经网络(指BP网络类型的神经网络),通过训练与学习,建立一个模型,使其能表达系统的正向动力学特性。另外还有一种逆模型,前提是其拟辨识的非线性系统可逆,因为并不是所有的系统都满足这一点,故其应用没有正向模型广泛。
基本结构的的Elman神经网络是阶层结构,类似于一般的多层前馈神经网络,也有输入层,隐含层和输出层。但除此之外,Elman神经网络还有一层特殊的结构单元―衔接层,衔接层中的节点一一对应于隐含层中的节点,隐含层的输出经过一步延迟后反馈到衔接层,将隐含层过去的状态与神经网络下一时刻的输入一起作为隐含层单元的输入,从而使得Elman神经网络具有了动态记忆能力。
3 基于神经网络的非线性自整定PID控制
PID控制是发展最早的经典控制算法之一,而且PID控制器一直是控制领域的基本控制方式,其算法简单,可靠性高,利用系统的偏差,基于比例(P)、积分(I)、微分(D)来进行控制。
3.1 PID控制基本原理
经典PID控制器系统如图1所示。
经典的PID控制器是一种线性控制器,该系统由PID控制系统与被控对象组成。它将输入值rin(t)与实际输出值yout(t)的偏差e(t)作为控制量输入,将偏差的比例(P)、积分(I)和微分(D)进行线性组合,作为被控对象的控制量u(t),对其进行控制。其控制器的输入输出关系可用式3来描述。
在计算机技术日益普及的现代工业生产过程中,将PID控制算法等控制方法应用于计算机中,组成计算机控制系统,能够完成更多更复杂的计算与控制。由于计算机处理的是数字量,故需将PID控制算法数字化。
3.2 基于神经网络的非线性PID自整定原理及设计
将神经网络应用于PID参数的自整定方案设计如图2所示。
其中NNC与NNI神经网络均采用递归神经网络,经过上面的研究我们知道Elman神经网络具有很好的跟踪特性,故在这里应用Elman神经网络,并用梯度下降法进行修正。NNI是神经网络系统辨识过程,在上面已经介绍过,所以在下面只介绍神经网络控制器NNC的学习算法。
我们知道,u(k)的求出需要u(k-1),e(k),e(k-1),e(k-2)四个数据,神经网络的作用在于在线调整Kp、KI、KD三个系数,故神经网络的输出为这三个数。给定神经网络的输入为u(k-1),y(k-1),隐含层个数为hc个(可以改变)。其学习算法如下:
3.2.1 前向计算
基于递归神经网络的非线性自整定PID控制器算法过程归纳如下:
(1)设定初始状态与参数初始值,包括NNC系统的连接权值wc、vc,学习速率,和一些中间变量的初始化。
(2)进行离线辨识过程,在训练有限步数后,使得y(k)与充分逼近,取此时的连接权值,用于在线过程。
(3)用上一步得到的连接权值用NNI进行在线辨识,求出系统输出y(k),并进行修正,
记录下修正后的的值。
(4)给定系统的输入yr(k),求出y(k)与yr(k)的误差E(k)。
(5)用u(k)、y(k)作为NNC的输入,求出PID控制器的三个参数,并用式3-9求出下一步的输入u(k+1),前两步时e(k-1)、e(k-2)未知,默认初始值为0。并用梯度下降法进行连接权值的修正,也即NNC网络的输出的修正,完成PID控制器的参数在线自调整。
(6)使k=k+1,返回第三步重新计算,直到完成设定的训练步数上限。
4 结论
通过以上分析可以看出本论文提出Elman神经网络进行非线性自整定PID控制器的设计,并加入神经网络的非线性系统辨识过程,用辨识过程中的中间值参与参数自整定环节,可以使自整定环节更加精确,从而提高系统的工作性能。
参考文献
[1]陶永华.新型PID控制及其应用[M].北京:机械工业出版社,2002,17-49.
[2]朱庆A.BP多层神经网络在控制中的应用[D].广西:广西大学,2004(05).
Abstract: Neural network is widely applied for character recognition. Through the analysis of the problems, this paper recognizes character by the application of improved BP neural network, so as to improve recognition rate. This method has high recognition rate, fast speed, strong practicability, and can be applied to various high noise environment.
关键词: 神经网络;图像预处理;特征提取;字符识别
Key words: neural network;image preprocessing;feature extraction;character recognition
中图分类号:TP301.6 文献标识码:A 文章编号:1006-4311(2014)10-0206-02
0 引言
字符识别是指采用扫描仪、数码相机等输入设备,把英文字母、数字、条形码等特殊字符的图形文件输入计算机,由识别软件对图片信息上的字符信息进行识别并变换成可编辑文档的识别技术。主要有光学字符识别(Optical
Character Recognition,OCR)、图像字符识别(Image Character Recognition,ICR)和智能字符识别(Intelligent Character Recognition,ICR),实际上这三种自动识别技术的基本原理大致相同。
1 常用字符识别方法
字符识别方法基本上都是为了区分结构识别、统计识别以及两者相结合的三大类方法,这三大类方法都包含具体的识别方法。
1.1 结构识别 结构识别是早期字符识别的研究的主要方法,我们也可以称之为句法结构识别。其思想是提取含有一定规律的结构信息,作为识别的依据。识别过程类似一个逻辑推理过程。结构识别的优点在于对字符变化的适应性强,区分相似字符能力强。但是在实际获取字符图像的过程中,由于存在着很多扭曲、倾斜等因素,就导致不能够准确地提取结构特征,后面的识别过程就成了无源之水。此外,结构识别的算法描述也较为复杂,匹配过程的复杂度也很高,因此,我们原有的句法识别就受到新的挑战。
1.2 统计识别 统计决策论的发展相对较早而且成熟,是为了提取待识别字符的一组统计特征,然后按照一定的准则进行决策函数的分类判决的。而统计识别是将字符点阵看作是一个能够经过大量统计数据得到的整体,是以后所用的特征都需要经过的。统计特征主要是以抗干扰能力强为主要特点,以实现匹配与分类的算法简单,且容易实现的。不足之处在于细分能力较弱,区分相似字的能力差一些。
1.3 结构识别与统计识别相结合 上述方法各有优缺点,而随着研究的深入,这些方法逐渐得到融合。网格化特征就是结合的产物。特征的统计以网格为单位,即使个别点的统计有误差也不会造成大的影响,增强了特征的抗干扰性。这种方法正得到日益广泛的应用。
字符的结构特征直接反映了字符的特有属性,而用字符的统计特征进行字符识别则是利用了计算机软件善于处理数字的特点。虽然近几年流行的神经网络方法主要采用的是局部特征,但其分类机理也与传统的统计识别方法相类似,优点是灵活性强。
2 字符识别流程
字符识别技术在当今社会的许多领域都有着广泛的商业应用前景。常见应用有条码识别、车牌识别、盲人的辅助阅读设备和邮包自动分检等。本文以车牌识别为例说明字符识别的应用以及识别流程。车牌识别系统的工作流程如图1所示。
经过字符分割后,得到可以进行字符识别的图像。本文采用神经网络方法进行字符识别,识别的具体过程如图2所示。
3 基于改进型BP神经网络的字符识别算法
3.1 BP神经网络简介 神经网络最早的研究是20世纪40年代,由心理学家Mcculloch和数学家Pitts合作提出的,由此拉开了神经网络研究的序幕。人工神经网络是通过对人脑生物神经机理进行简化,抽象和模拟之后建立起来的一种计算模型,属于机器学习的重要研究领域。人工神经网络可以应用于字符识别、人脸识别等领域。
随着神经网络的威力逐渐显现以及付诸应用的现实性,大量的学者对此进行了深入研究,出现了多种神经网络,如径向基神经网络和Hopfield网络等。1986年科学家Rumelhart和McCelland提出了BP(Back Propagation)神经网络,是一种按误差逆传播算法训练的多层前馈网络,是目前在字符识别中应用最广泛的神经网络模型之一。BP网络能学习和存储大量的输入输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络的结构如图3所示。从左至右分别是输入层、隐含层和输出层。
从图3可以看出,某一层的输出就是下一层的输入,即:am+1=fm+1(Wm+1am+bm+1),m=0,1,…M-1……
这里,M为神经网络的层数。第一层的神经元的输入为a0=p,最后一层神经元的输出是a=aM,即为整个神经网络的输出。BP神经网络虽然在字符识别领域有着重要的应用价值,但其存在如下问题:①进行字符识别时存在局部极小值问题;②算法通常需要迭代几千步甚至更多,收敛速度慢;③隐含层和隐含层节点的数量难以确定。要解决上述问题,就需对BP神经网络算法进行改进。
3.2 基于改进型BP神经网络的字符识别
3.2.1 图像预处理 在字符图像采集、输入的过程中由于受到多种噪声的干扰,会使图像质量下降,为字符识别工作带来困难,因此需要对初始图像进行必要的预处理。图像预处理的具体步骤如下:①选取合适的阈值进行图像二值化;②灰度变换增强对比度,改善视觉效果;③选取合适的方法去除噪声,常用的有中值滤波、均值滤波、高通滤波等方法;④图像分割,即将图像中的字符独立的分割出来。
3.2.2 字符特征值的提取 如果直接采用分割后的字符进行对比,那么需要对比的信息量很大,程序运行的时间也会大大增加。所以需要对分割后的字符进行特征提取,本文使用了类似九宫格的方法进行特征提取,即在字符图像的水平方向上将图像均匀分成三部分,在每一部分用一条水平方向的扫描线从左至右穿过字符,进行查找;垂直方向上原理相同,扫描线从上到下穿过字符,进行查找。取这六条线上的特征作为字符图像的特征,这样就得到了每个字符的六个特征值。
3.2.3 改进型BP神经网络 针对BP神经网络的局限性,为了避免落入局部极小值点,提高网络训练的精度和速度,对其算法进行了改进,常用的方法有:①优化初始权重。由于BP网络的误差曲面存在多个局部最小点和算法采用误差梯度下降的方法调整网络权重,因此导致了网络的训练结果极容易落入局部极小点。所以,网络的初始权重对网络的最终训练结果影响非常大,它是影响网络最终能否达到需求精度的重要因素之一。②调整自适应学习率。学习率η也称步长,在标准的算法中为常数。BP算法的收敛特性和收敛速度很大程度上取决于学习率,对于不同的问题,其取值范围也会不同。η取值过大可以加快学习速度,但会导致学习过程不收敛;η取值过小,则迭代次数明显增加,导致学习速度过慢。为了加速收敛的过程,可以自适应改变学习速率。③附加动量法。动量法是指在反向传播的基础上,在每个权值调整值上加上一项正比于前次权值变化的值,并根据反向传播法来产生新的权值变化。
本文为了简单起见,采用附加动量法只对数字和英文字母进行字符识别,利用梯度下降法,使权值沿函数的负梯度方向改变。提高了学习速度,增加了算法的可靠性。
带有附加动量项的权值调节公式为:
Wij(k+1)=Wij(k)+η[(1-α)D(k)+αD(k-1)]
其中,α是附加的动量项,取值范围为0
3.2.4 设计改进型BP神经网络进行字符识别 本系统采用了两个BP网络来进行数字和字母的识别。BP神经网络的建立主要是三个层的神经元数目的确定。①输入层节点数。此节点个数即为图像预处理后所输出的特征的维数。本系统输入层节点数为24×48。②隐含层节点数。确定隐含层节点数的基本原则是:在满足精度要求的前提下取尽可能紧凑的结构,即取尽可能少的隐含层节点数。本系统的两个神经网络,可以根据输出层神经元的多少来确定其个数,即输出层神经元越多,其隐含层神经元个数也越多。③输出层节点数。用于识别数字的BP网络,由于只有10个数字,所以采用了8421码进行编码,输出层的神经元数目为4。而识别26个字母的BP网络,其输出层的神经元数目为5。待识别的字符图像和训练好网络后识别的结果分别如图4和图5所示。
4 结束语
在字符识别的过程中,每一步都会有不同程度的误差,本文神经网络经验证后识别率可达95.1%,平均识别时间为0.6s。影响识别成功率的主要因素是训练样本的数量和训练次数,要保证一定数量以上的训练样本和训练次数,以保证识别率。另外,神经网络的层数和各层神经元的个数,对神经网络算法的运行速度和识别率也有着直接的影响,其数量越多,识别率越高,但也制约着识别速度,因此,如何处理好两者关系很重要。
参考文献:
[1]关学忠,刘勇智.基于数字图像处理的车牌定位及字符分割方法[J].装备制造,2010(01).
[2]武桐.基于图像匹配的汉字识别系统研究与实现[D].上海:上海交通大学,2010.
一、前言
目前,网络化、数字化、智能化是视频监控的必然趋势,视频监控系统的应用越来越广泛,在生产管理和安全防范起到不可替代的作用,但是由于软硬件各方面因素的限制,视频监控在关键技术方面,存在着一些不足之处,视频监控录像回放分辨率往往不能达到使用要求。在监控图像的采集与处理过程中,由于各种因素影响,会导致图像分辨率的下降,其主要表现为模糊、噪声和变形,达不到监控的要求,影响系统功能。
二、控制方法
采用尽可能低的经济代价提高视频监控系统视频图像回放分辨率。
三、目标
1、将原先图像分辨率270视频线(360*270)提高到300电视线(400*300)以上;
2、回放图像清晰度要求:峰值信噪比≥28;
3、回放图像还原度要求:平均绝对差≤0.1
4、回放图像视觉要求:信噪比改善因子≥7
四、原理分析
要提高视频监控系统视频图像的分辨率,首先要对视频图像分辨率不高的原因进行分析,对视频图像成像储存的环节进行分析,才能根据不同的原因采取不同的解决方案。
视频监控系统的视频图像的应用分为4个步骤:图像采集、图像传输、图像储存、图像回放。
1、图像采集:图像采集就是利用摄像机中电子传感器把光学影像转换成电信号,以便与传输及储存。传感器的形状和尺寸、光学部件性能的好坏直接影响图像的分辨率。
2、图像传输:图像传输就是利用光缆、电缆、无线等方式将采集来的图像传输到显示或者储存设备。在传输过程中,会引入不同类型的噪声,而且噪声的引入方式也不同,加性噪声和乘性噪声都会直接影响到图像的分辨率。
3、图像储存:目前模拟录像机已基本淘汰,应用最广是数字硬盘录像机,基本原理是将模拟的音视频信号通过数据压缩形式转变为MPEG数字信号存储在硬盘上。数字化采集过程也会降低图像分辨率。
4、图像回放:图像回放就是重现存储在系统中的视频图像资料。
五、图像质量优化控制方案
根据视频监控系统的工作原理,针对视频图像应用的各个环节,主要有硬件和软件两大类,本文用优化摄像机、存储图像处理、优化录像机、优化录像格式、存储图像处理5种方案。
1、优化摄像机
传感器固有的采样频率限制了图像的空间分辨率,目前在监控系统中广泛使用的是CCD传感器,提高分辨率最直接的方法是降低像素尺寸,提高单位面积的像素数目。
2、优化传输系统
图像传输过程中引进的噪声会直接影响到图像的分辨率。对传输系统进行优化,如更新为先进的光缆传输系统、增加长距离补偿器、增加视频抗干扰器等可以提高图像的信噪比,相应提高图像分辨率。
3、优化录像机
考虑到录像资料储存时间的限制,摄像机采集到的图像在储存时采用压缩的格式,去除了不必要的高频部分,相应的视频图像则损失了图像细节,即降低了分辨率。如果更换硬盘录像机,减少压缩比例,则可以明显提高图像分辨率。
4、优化录像格式
针对视频图像储存的步骤:采样、量化、编码。由于硬盘录像机直接影响监控系统的分辨率,如果对储存过程的参数进行调整,例如改变编码格式,提高录像文件所含信息量,也可以提高视频图像的分辨率。
5、存储图像处理
视频监控主要功能之一就是在发生突发事件时能进行图像回放,往往在需要监控的区域可能事先没有考虑到高清录像,回放效果不尽如人意,这时候再进行设备更新来不及,只能在现有的图像资料的基础上进行软件处理,利用软件的办法提高视频图像分辨率。
以上5个方案进行比较结果如下:
采用基于信号处理的软件方法对图像的空间分辨率进行提高,对图进行处理有以下几个优点:软件处理视觉效果较为明显,而且应用范围广,属于事后弥补,实用性强;基本没有硬件投资,在原有基础上进行软件处理,经济性很好;立足现有设备,大批原有设备可以得到利用,为区域改造节约大笔资金,提高监控系统现代化程度。
六、细化方案
1、图像处理原理
视频图像处理方案,其核心思想是用时间带宽(获取同一场景的多帧图像序列)通过运算合成得到高分辨率图像,实现时间分辨率向空间分辨率的转换,使得重建后图像的视觉效果超过任何一帧低分辨率图像。
下图表示了高、低分辨率图像像素之间的关系。图中左边三帧Y1,Y2,Y3具有相对位移的低分辨率图像,通过对录像过程中图像变化规律即运动的估计,进行相应的插值运算,可以合成得到如图所示的高空间分辨率图像X。
2、图像处理方法分类
视频图像处理分类目前视频图像处理方法主要分为频域和空域两大类,其中空域又可以分为最大后验概率估计方法(MAP)、凸集投影算法(POCS)和混合MAP/POCS方法三种。
1)频域法
频域方法实际上是在频域内解决图像内插问题,其主要方法主要利用傅里叶变换的移位性质,对原始图像进行摸转数变换,使图像转变为可修改的傅里叶方程模型。
优点:
理论简单,运算复杂度低,很容易实现并行处理,具有直观的去变形超分辨率机制。
缺点:
所基于的理论前提过于理想化,不能有效地应用于多数场合,只能局限于全局平移运动和线性空间不变降质模型,包含空域先验知识的能力有限。
2)空域法
空域方法主要在空间域分布上进行图像重建,如下图所示,对一系列低分辨率图像所含像素信息进行定位后组合成一张高分辨率图片。
空域方法适用范围较广,主要包括非均匀样本内插法、迭代反投影方法、集合论方法(如凸集投影:POCS)、统计复原方法(最大后验概率估计MAP 和最大似然估计ML)、混合MAP/POCS 方法以及自适应滤波方法等。而目前凸集投影法;最大后验概率估计;混合MAP/POCS 方法较为适合本技术的目的
最大后验概率估计方法
优点:
在解中可以直接加入先验约束、能确保解的存在和唯一、降噪能力强和收敛稳定性高等;即该方法能够保证图像清晰度,减少干扰信号在运算过程中的累加对图像所造成的影响,提高信噪比。
缺点:
运算速度较慢和运算量大。另外,由于该方法能够过滤细微干扰信号数据,同时也会将图像的细微部分进行过滤、排除,因此,由这类方法获得的高分辨率图像上的细节容易被忽略,平均绝对差相对较高,不利于图像有效还原。
凸集投影方法
优点:
可以方便地加入先验信息,可以很好地保持高分辨率图像上的边缘和细节;得到图像平均绝对误差较低,即能够有效保证图像还原度。
缺点:
解不唯一、解依赖于初始估计、收敛慢、运算量大和收敛稳定性不高等。即运算过于复杂,且不稳定导致图像信噪比改进因子较低,图像视觉效果较差。
混合MAP/POCS方法
本文提出了一种基于接收信号强度并结合BP神经网络算法的一种新型定位方法。该方法首先建立一个定位环境模型,用有限数量的参考节点先组建一个无线传感器网络。然后采集样本数据,读取RSSI和实测盲节点的位置坐标,把这些数据用作训练和测试BP神经网络模型。最后把得到的BP神经网络模型应用于具体问题并检测应用效果。经实践检验,该定位方法在短距离定位中比较可行,具有较好的定位性能。
【关键词】无线传感器网络 BP算法 神经网络 定位
随着通信技术、嵌入式计算技术和传感器技术的飞速发展和日益成熟,人们研制出了各种具有感知能力、计算能力和通信能力的微型传感器。许多的微型传感器构成了无线传感器网络引起了人们的极大关注。无线传感网可以使人们在任何时间、地点和任何环境条件下获取大量详实可靠的物理世界的信息,将被广泛地用于国防军事、国家安全、环境监测、交通管理、医疗卫生、制造业、反恐抗灾等领域。
传感器节点的定位技术是无线传感网络的支撑技术。目前,广泛使用的ZigBee无线传感器网络的原理是测量节点间的距离实现网络传输,无线传感器网络定位技术通常采用的方法是在保证信号接收强度(RSSI)的基础上进行测量。这种测量方法采取的主要方式是设置已知的参考节点,通过待定位节点接收到的RSSI值对该节点到各个参考节点的距离进行计算,再利用计算结果、采用不同的算法对目标点的坐标进行推导。本文对一种新型的定位方法进行了分析,此种方法得到未知节点坐标的途径是利用待定位节点与多个固定参考节点间的RSSI值对BP神经网络模型进行训练得到的。
1 无线信号传输模型
根据无线通信的基本原理,无线信号在自由空间中传播时信号随传播距离的增加而有规律的变弱。但是在一些复杂的环境里与自由空间相比,无线信号的传播规律性比较差。即便是传播距离相等,所测得的信号强度的差别也比较大。传统的定位技术受接受信号强度的影响,利用无线信号传播模型,利用拟合技术或凭经验得到模型中的未知参数A和N,接着在传播模型中代入信号强度值,计算出对应的距离,最后利用位置距离算法实现定位。此种方法的缺点是经验性强,普遍适用性差,不能得到较高的精度。而且在复杂多变的空间环境中,接收信号强度(RSSI)与传播距离(d)的关系就更加复杂多变。
2 用BP神经网络拟合RSSI-d非线性函数关系
Kolmogorov定理对此的证明显示,一个三层BP网络可以实现所有连续函数,所以RSSI与距离d之间建立的非线性函数关系完全可以用BP神经网络来拟合。误差反向传递神经网络是BP神经网络的别称。该网络具有前反馈性,利用的学习方式是均方差。BP网络同时具备输入层和输出层,另外还有一层或多层隐藏神经元结构。该种网络的采用全局逼近方法的学习算法,所以该网络的泛化和容错能力都比较强。
3 BP神经网络与无线传感网定位方法
3.1 神经网络模型建立
本文采用RSSI方法测量盲节点与各参考节点之间的距离,参考节点固定,盲节点通常是移动的,盲节点每隔一定时间发送一次广播信息,参考节点将监听到广播信息后,将测得的各RSSI值发送至中心盲节点,盲节点收集好信息后再发送给协调器及上位机。
3.2 样本数据库建立
通过对训练样本的学习,BP网络才能获得节点位置预测的能力。一般来说,训练样本数量越多,BP神经网络预测能力越强,所以为了提高定位的精准度,应适当多采样来训练样本,同时采用平均值法使样本数据更有效。
3.3 BP神经网络参数确定
本文采用3层的BP神经网络来实现,只包含一个隐含层。基本BP算法采用梯度下降法使得误差均方趋向最小,直到达到误差要求。经比较发现,traincgf算法收敛速度快,并且可沿共轭方向达到全局最小点,适合应用于节点位置估测;隐含层节点数对BP神经网络的预测精度有较大影响,隐含层节点数过多会增加训练网络的时间,网络容易过拟合。本文取经验值3为隐含层节点数,经仿真验证,可达到很好的效果。
4 仿真结果分析
不同测距误差下BP定位算法与最小二乘估计法的比较:BP定位算法与最小二乘法定位效果表中,进行一千次实验后得到的BP定位算法,利用参考节点与盲节点之间的坐标得到最小二乘法的数据。定位结果到未知节点真实值之间的距离成为定位误差,通过比较BP定位算法得到的平均误差与较之最小二乘估计法得到的误差,前者的误差较小。图1中显示,随着误差的增大,与最小二乘估计法相比BP定位算法得到的误差增大速度慢。可以说,当测距误差较大时,BP定位算法有较大的优势,由此可以说明BP定位算法的定位性能比最小二乘估计法好。
5 结语
定位技术是无线传感器网络的关键技术,对提高生产效率、人员安全检查具有重要意义。将智能算法与实际测量相结合,提高了定位精度。具体应用时,可以将C语言编程实现BP神经网络,将编程实现的BP神经网络封装成单个函数的形式,此函数的输入即为RSSI值,输出即为对应的距离d。
参考文献
[1]王小平,罗军,沈昌祥.无线传感器网络定位理论和算法[J].计算机研究与发展,2011(03):353-363.
[2]王福豹,史龙,任丰原.无线传感器网络中的自身定位系统和算法[J].软件学报,2005(05):857-868.
[3]吴黎爱.基于不同网络模型的无线传感器网络定位算法研究[D].南昌航空大学,2012.
[4]任梅.基于无线传感器网络定位技术的研究[D].西安电子科技大学,2013.
[5]张颖.无线定位优化算法的研究[D].西安邮电学院,2011.
作者简介
衣治安,硕士学位,现为东北石油大学计算机与信息技术学院副院长,主研领域为计算机网络。
马莉,硕士研究生。
本文利用人工神经网络的钢材表面缺陷快速识别系统以及BP神经网络的缺陷检测和分类的方法,实现钢材表面疵病的准确检测与分类。选用Matlab作为系统软件工具,以BP神经网络作为其缺陷检测的计算方法,实现冷轧带钢表面缺陷检测技术的软件方案设计,完成BP神经网络在钢材表面缺陷检测的应用研究,满足带钢生产线的表面缺陷检测要求。
关键词:缺陷检测;人工神经网络;BP神经网络
中图分类号:TN711 文献标识码:A 文章编号:
冷轧带钢已成为汽车生产、机械制造、化工、航空航天、造船等工业不可缺少的原材料,在国民经济中占据重要地位。而钢材表面缺陷是影响带钢质量的重要因素,因此,表面缺陷的识别检测对提高带钢的质量具有十分重要的意义。
本文根据钢材表面的缺陷情况,研究需要系统识别的常见钢材表面缺陷类型,结合表面缺陷检测系统的主要技术要求,提出基于人工神经网络的钢材表面缺陷识别系统的总体方案。利用计算机和图像采集设备,使软件和硬件协同配合,实现图像信息的实时采集及处理,为BP神经网络的训练学习建立钢材表面缺陷数据库,通过训练可以实时自动识别钢材表面存在的缺陷。
1BP神经网络的基本原理
BP(Back Propagation)神经网络是一种神经网络学习算法,全称基于误差反向传播算法的人工神经网络。它是目前研究最多、应用最广泛的神经网络模型之一【1】。BP网络是一种多层前向反馈神经网络,把样本的输入输出变成一个非线性优化问题,使用了最优化中最普遍的梯度下降算法,用迭代运算求解权值,它可以实现从输入到输出的任意连续的非线性映射。BP网络主要用于函数逼近、模式识别、数据压缩等。BP神经网络由输入层、隐含层和输出层三部分组成,其结构如图1所示。
图1BP神经网络结构示意图
Fig. 1 The BP neural network structure diagram
BP神经网络在具体工作之前必须通过学习获得一定的“智能”,才可以在实际的应用中取得良好的效果。其学习由四个过程组成:
第一是输入向量由输入层经隐含层向输出层的“正向传播”过程;
第二是网络实际输出与网络的希望输出之间的误差信号由输出层经隐含层向输入层逐层修正连接权值的“误差反向传播”过程;
第三是由“正向传播”与“误差反向传播”的反复交替进行的网络“记忆训练”过程;
第四是网络的全局误差趋向极小值的“学习收敛”过程。
2BP算法在钢材表面缺陷识别的具体实现
为了使用BP神经网络实现钢材表面缺陷检测方法研究,首先需要对钢材图像进行预处理,去除图像噪声,并进行图像增强处理,保留图像重要信息;然后,从样本图像中选择部分有缺陷的图像,进行样本图像分割,分割成适合网络训练的特征图像,并将分割结果分类为正常图像和缺陷图像样本集合;再使用各种图像特征提取方法分别提取出正常图像和缺陷图像的特征值,构成BP神经网络训练集合;再将训练集合输入BP网络训练器中,按照设定参数,设置选定精度,进行网络权值训练,得到所需的分类器;最后将测试样本输入分类器中,实现最终的缺陷分类识别。
系统选用Matlab作为系统软件工具。Matlab中专门编制了大量有关BP网络的工具函数,为BP网络的应用研究提供了强有力的便利工具【2】。BP网络的设计过程如下:
(1)输入训练样本
缺陷的出现会破坏其所在区域灰度值的排布规律,基于此先从带缺陷图像的缺陷区域截取图像,再从无缺陷的图像中截取相同大小的图像,然后从这些图像中提取特征向量【3】。对特征向量X进行归一化,再进行主分量分析进行降维处理,最后把处理后的特征向量的每一列作为一个样本输入神经网络。
(2)初始化网络
采用initff函数初始化网络。在建立网络对象的同时,自动调用初始化函数,根据缺省的参数对网络的连接权值和阈值进行初始化。initff函数格式:
[w1,b1,w2,b2]=initff(p,s1,f1,s2,f2)(1)
式中:w1表示隐含层神经元与输入层神经元之间的连接权重系数矩阵;
w2表示输出层神经元与隐含层神经元之间的连接权重系数矩阵;
b1、b2表示隐含层和输出层神经元的阈值矩阵;
p表示输入样本矩阵;
s1、s2表示隐含层和输出层神经元个数;
f1、f2表示隐含层和输出层激活函数形式。
运行initff函数,系统能自动根据给定的p,s1,f1,s2,f2的值对w1,b1,w2,b2赋予一个初始值。
(3)训练网络
采用trainbp函数训练网络。用基本梯度下降法训练网络函数进行BP网络训练,获取最终的权值与阈值矩阵。trainbp函数格式:
[w1,b1,w2,b2,te,tr]=trainbp(w1,b1,f1,w2,b2,f2,p,t,tp)(2)
式中:t表示输出样本矩阵;
te为网络的实际训练步数;
tr为训练过程中的误差平方和;
tp为网络训练参数。
选择训练参数tp进行训练,tp=[df,me,err,lr]
式中:df是指定两次更新显示间的训练次数;
me是指定训练的最大次数;
err是误差平方和指标;
lr是指定学习速率,即权值和阈值更新的比例。
trainbp函数以w1,w2,b1,b2的初始值和给定的f1,f2,p,t,tp开始训练,使当输入n时,网络的输出为目标矢量t。当训练过程中误差平方和小于等于目标误差平方和或者训练步数到达给定的最大步数时,停止训练。此时的w1,w2,b1,b2的值就是已训练好的网络参数。
(4)网络仿真
采用simuff函数对网络进行仿真。在网络训练前后分别进行输入输出的仿真,以做比较,从而对网络进行修改评价。simuff函数格式:
a=simuff(p,w1,b1,f1,w2,b2,f2) (3)
式中:a表示训练好的BP网络的实际输出;
w1、w2、b1、b2 是训练好的网络参数;
p、f1、f2 与(1)式相同。
网络训练后,形成稳定的权值和阈值,使网络输入和网络输出形成了较好的映射,从而可以对其他输入样本进行输出参数的预测。
3实际应用情况
从现场采集冷轧带钢样本,并对这些样本中的缺陷进行标定。将测试样本图像输入神经网络检测缺陷区域,得到每类样本的缺陷区域。将所有原始训练样本、测试样本图像,按照前面的预处理方法进行预处理,然后按照同样的分割方式进行分割,提取出样本块的特征信息,构成一序列的向量,输入已经训练完成的分类器,进行缺陷识别,检测出样本的缺陷区域。
经工业现场实践表明,经过训练的BP神经网络分类器对表面缺陷的识别分类较好,基本上能够满足带钢表面缺陷的分类识别要求。但是,神经网络技术也存在训练过程缓慢、需要大量的训练数据、对其决策过程无法得到透彻理解、参数的设计无规律可循等缺点。
事实上,基于BP网络的分类器只能识别BP网络已知的模式类别。如果出现了新的模式类别,分类器就不能正确地识别,只能再次对分类器进行训练,也就是说分类器没有自学功能。因此,在优化BP神经网络参数的基础上,我们可以考虑将现在已经构建的BP神经网络模型的分类器,分解成两步来实现表面缺陷的分类,即首先构建神经网络来对把缺陷和非缺陷识别分类开来,然后再对缺陷进行分类,以期提高分类识别的准确率。我们还需要研究基于其它神经网络模型的分类器,利用各自的长处,实现分类器的融合,并使分类器具有自学的功能,对新出现的缺陷能够记忆识别的功能,更好的满足工业现场的要求。
参考文献
[1]王婷,江文辉,肖南峰.基于改进BP神经网络的数字识别.电子设计工程.2011,19(3):108-112.
本文通过对BP神经网络在我国运用现状的分析,对BP神经网络的结构作了介绍和举例说明,提出了建筑工程造价中神经网络的重要作用,以及为有效地将神经网络运用到建筑工程造价中提出一定的建议。
关键词:建筑;工程造价;BP神经网络;应用
一、神经网络在建筑工程中的运用现状
目前,我国社会经济的发展越来越快,城市化进程也在不断加快,诸如地铁工程的建设也已经成为我国城市基础设施的一项重要发展领域。可是,我国工程建设资金条件还比较短缺,建筑工程高昂的造价限制了大部分城市的地铁等工程的发展。所以,如何采取有效的措施来降低地铁工程造价,越来越成为加快工程建设的首要课题。在建筑工程造价管理中,关于可行性研究阶段的造价估算对于项目的决策和工程造价的控制起着至关重要的作用,因此研究该阶段的造价估算方法具有重要的现实意义。最近几年来,人工神经网络凭借其强大的学习、联想以及自适应能力被广泛地应用在工程造价估算领域当中。
许多相关研究成果也应运而生,很多学者通过大量查阅与深入研究国内外建设工程造价估算方法,并针对不同工程造价的特点,提出将BP神经网络结合的工程造价估算模型。第一,利用模糊数学方法对工程造价估算样本进行筛选,从而提高工程造价估算模型的准确度;第二,综合分析不同建筑工程的主要特征,然后将这些特征与它的工程造价相联系,构建出基于BP神经网络的建筑工程造价估算模型。在实现模型方面,利用相关语言对模型进行训练与仿真测试,并运用工程实例进行验证,最后结果表明了,该模型具有较好的泛化能力,并且能够比较准确地估算建筑工程的造价。
二、BP神经网络模型结构
1、网络结构
人工神经网络系统,即模拟人脑中神经元的工作原理的一种方法。一个典型的生物神经元都具有称之为树突的部分,树突从细胞体中伸到其它神经元,在突触的联结点上接受信息,接着将这些信息累加起来。如果细胞体中累加的激发信息超过了某一阀值的时候,细胞就会被激活,那么,该细胞的轴突部分就会向其他神经细胞发出相应的信息。模拟人工神经网络在此过程中有很多种方法,而BP神经网络就是其中的一种比较简单但应用广泛的一种。许多研究成果已经证明,含有一个隐含层(即三层BP神经网络系统)可以任意逼近连续函数,该隐含层中的每一个神经元只要都含有一个连续Sigmoid非线性函数就可以了。而三层BP神经网络由输入层与一层隐含层、输出层组成,它们采用全互连接,但同一层中的各单元并不连接。
2、BP算法
由上面的BP网络的基本结构可以看出,BP算法就是一个不断计算误差从而调整阀值与连接权值的过程。如常规的BP算法中采用的是最速下降法,就是按照误差函数负梯度方向对各值进行修改。
利用BP神经网络的基本原理建立起工程估算模型,并依赖专家经验获取待定造价的工程特征,以及在对15个典型实际的工程样本分析基础上,利用软件的宏命令来编制BP神经网络模块,从工程特征到工程造价的非线性映射关系来进行模拟,并将它们运用于实际工程估算,其精度能够达到建筑工程估算要求,在实际工程中能对估算快速准确的要求提供新的方法。
三、BP神经网络在建筑工程中的实例应用
如何建立模型呢?建筑工程造价遵循的是“二八原则”,就是a类20%的分项工程占总造价的80%,而b类30%的分项工程则占总造价的15%,那么其余c类50%的分项工程就只占工程造价的5%。一个建筑工程中,主导分项工程的a、b两类分项工程可以根据其特征来概括,也就是,若一个工程的某几个特征一旦确定,那么其主要分项的工程量也可以确定,当然,估算工程造价也就可以确定了。这种基本思想就是通过案例推理把BP神经网络运用到工程估算当中。
另外,对于工程特征的选取,多采用的是专家评审法。比如说,邀请某一家公司的两位工作经验都在十年以上的造价工程师,让他们对建筑工程中会影响到工程造价的各种因素进行一个评定打分,如最后选择了如下因素:建筑类型、高度、层高、建筑主体结构类型、面积、墙体、内外墙作法、建筑门窗类别、工程造价的年综合指数以及施工企业的资质等级,其中,最后两个因素分别是考虑到造价估算的时间因素差别与施工单位的施工、管理水平而暂时作为标准来评定。
在这种情况下,同时收集整理了北京十五个建筑工程造价实例,而工程造价指数则是按2005年作为基准,采用加权平均之后得出的年综合指数。在工程实例中,工程范围是指建筑结构工程。因此,在进行分类整理时,样本的有些特征是定性描述,这就需要进行定量化的处理后才能作为样本输出,处理方法多是按照同一工程特征中,其工程造价的相对大小来进行的,造价比较大的,相应的数值也比较大。
四、总结
通过以上材料,可以得知,把三层BP网络模型运用在工程估价方面是可行的,因为工程14和15单方造价的预测精确度浮动都在10%以内,但砼用量和钢筋的用量数据预测则存在较大的出入,尤其是工程14的砼用量,其误差高达20%以上,分析主要原因可能就是工程样本中,设计结构图纸时,细节处的差异较大,所取样本的数量较小,或是工程特征到输出的映射函数学习力度不强。因此,随着样本的增加,精度会进一步的提高。
关键词:软测量;神经网络;软件设计
中图分类号:TP18文献标识码:A文章编号:1009-3044(2011)04-0753-04
The Development and Design of the Modeling Software for Soft Sensor
HOU Yan-song, XIE Gang, ZHANG Min, LIU Ya-ru
(Automation Research Institute of Lanzhou Petrochemical Company Petrochina, Lanzhou 730060, China)
Abstract: This paper designs a soft-sensing modeling software for chemical production process, Considering the complexity in the practical industry process, the software applies the linear regression modeling approach and the nonlinear neural network modeling approach to design the measurement software. Practice have been carried on the production process of Ethyl benzene and Starch content prediction, and the results show that the software can fulfill the function of trend prediction.
Key words: soft-sensor; neural network; software development
在工业实际中,产品质量控制是所有工业过程控制的核心。要对产品质量进行实时有效的控制,就必须及时准确的了解产品的质量参数,从而及时调整工艺参数和控制参数,以期获得良好的产品质量监测和控制。然而实际中,过程的质量参数通常是无法直接测量的,即使能够利用分析仪表测量,也存在较大的分析滞后[1],无法完全满足过程控制的需要。总的来说,我国石油化工行业现有的仪表设备很难实时的提供过程控制所需的质量参数信息。基于这种现实,更高一层的先进控制技术,过程优化技术,产品质量的监测管理等上层应用就受到了测量信息不足这一瓶颈问题的极大限制。在这种背景下,工业过程对过程检测的内容和时效性均提出了新的要求。一方面,仅获取流量、温度、压力、液位等常规过程参数的测量信息已不能满足工艺操作指导和质量控制的要求,迫切需要获取诸如成分、物性等与过程工艺操作和质量控制密切相关的检测参数的测量信息。另一方面,测量从静态或稳态向动态测量发展,在许多应用场合还需要综合运用所获得的各种过程测量信息,才能实现有效的过程控制、对生产过程或测量系统进行故障诊断、状态监测。近年来,作为以计算机技术为基础的软测量技术成为了解决上述工业控制瓶颈问题的有效途径之一,越来越受到关注[2-5]。
就苯乙烯、丙烯腈、乙烯及丁二烯抽提等化工装置而言,产品质量数据主要是产品的纯度。针对这一特点,本软件采用基于数据驱动的建模方法,并考虑到实际的工业过程对象复杂多变,软件采用了线性回归建模和非线性神经网络建模两种方法来设计软测量软件。最后,根据工艺机理,我们通过建立苯乙烯装置乙苯塔塔顶乙苯含量软测量数学模型,完成了对塔顶乙苯含量的准确预测。
1 乙苯含量软测量模型的建立
1.1 软测量
软测量的工作原理(见图1),就是在常规检测的基础上,利用辅助变量与主导变量的关系,通过软件计算 ,得到主导变量的测量值。软测量技术的核心是建立用来预测主导变量的可靠的软测量模型。初始软测量模型是对过程变量的历史数据进行辨识而来的。在应用过程中,软测量模型的参数和结构并不是一成不变的,随时间迁移工况和操作点可能发生改变,需要对它进行在线或离线修正,以得到更适合当前状况的软测量模型,提高模型的适合范围。因此,软测量结构可分为历史数据处理、离线建模、在线运行(包括校正)三大模块。
1.2 辅助变量的选择
通过对苯乙烯装置乙苯塔工艺机理研究,我们选择通过DCS收集的1000组过程参数作为建模样本集,300组过程数据作为校验样本集,运用统计学方法将样本数据中隐含的对象信息进行浓缩和提取,通过工程师的经验以及多元回归分析方法,寻找最优变量来建模,从而建立主导变量和辅助变量之间的数学模型,见表1。
2 软测量建模软件的实现
2.1 软件框架
选用微软VC++6.0开发环境[6],软件的整体设计采用面向对象的程序设计方法,考虑到软测量仪表本身侧重于数值计算和参数的频繁传递,因此选用基于对话框的应用程序框架。该软件框架结构简单,易于人机参数传递。从程序的角度来说,软件总共分四个主要模块:主对话框模块、算法模块、矩阵运算模块、图形编辑模块。如图2所示。
1)主对话框模块:即人机界面UI,提供基本的人机交流界面,以及数据文件操作。
2)算法模块:是整个软件的核心,包括了软件中所有的算法程序,并且留有扩充借口,可随时根据软件的升级增加新的算法。软件在调用算法时需要用户传递的参数和算法结果的返回利用子对话框来传递。该模块分为三个子模块:① 数据归一化模块:主要功能是对原始样本数据进行归一化处理;② 样本数据分析模块:主要功能是对辅助变量进行相关性分析和主元分析;③ 建模算法模块:偏最小二乘法建模、神经网络建模。
3)矩阵运算模块:主要功能是为算法模块提供必需的矩阵运算支持。软件中数据归一化、样本分析、建模的大多数算法在数学上表现为大量的矩阵运算,微软MFC基础类库并没有提供可以直接使用的矩阵运算类。为了使得建模算法代码更为简洁,易于修改。矩阵运算模块将常用的矩阵运算操作写成一个类――矩阵类,供算法程序调用。
4)图形编辑模块:主要功能是按照需要对工作空间中的数据进行曲线图形显示。作用是当离线建模完成后,需要对所建立的模型进行拟合试验,将试验结果以曲线的形式表现出来,软件允许用户自己设定坐标范围和图形标题。
2.2 偏最小二乘回归法
偏最小二乘回归是建立在主元分析原理上的化学计量学方法。它通过多元投影变换的方法,分析两个不同矩阵间的相互关系。在主元分析中,提取主元的过程只是强调了主元对辅助变量信息的最大综合能力,并没有考虑主导变量。偏最小二乘法不仅利用对系统中的数据进行分析和筛选的方式辨识系统中的信息和噪声,从而克服变量的多重线性相关性对建模的影响,而且在提取主元时还考虑主元和因变量的相关性,即主元对主导变量的解释作用。因此,偏最小二乘回归可以集多元线性回归,主元分析,典型相关分析的基本功能为一体。
该算法原理如下:
假设有两个数据矩阵X和Y,其中X∈Rn×m,Y∈Rn×1,X和Y之间的关系表示如下:
Y=Xβ+e (1)
式中:e表示残差;β表示自适应因子。
自适应因子β的估计值可以用最小二乘法得到,即:
(2)
如果数据矩阵X具有较强的相关性,则式(2)中存在病态矩阵的求逆,结果误差较大,而部分最小二乘法可以避免对病态矩阵求逆。其基本原理是将式(1)中的X和Y的关系分解为两个内部关系和一个外部关系:式(3)、(4)和(5)。
(3)
(4)
其中,矩阵T=[t1 t2 … tα],U=[u1 u2 …uα];分别称为X和Y的得分矩阵,而th和uh分别称为矩阵X和Y的第h主元。P=[p1 p2 … pα]和Q=[Q1 Q2 … Qα]称为荷载矩阵,U和T之间的关系表示如下:
(5)
式中:E、F、R为残差矩阵。
该算法将高维空间信息投影到由几个隐含变量组成的低维信息空间中,隐含变量包含了原始数据的重要信息,且隐含变量间是互相独立的。
2.3 神经网络法
基于人工神经网络(Artificial Neural Network,ANN)的软测量建模方法是近年来研究最多、发展很快和应用范围很广泛的一种软测量建模方法[7-8]。能适用于高度非线性和严重不确定性系统,因此它为解决复杂系统过程参数的软测量问题提供了一条有效途径。
化工装置产品含量预测建模通常处理的是非线性建模问题,而多层前向网络已被证明具有以任意精确度进行复杂非线性函数的拟合能力[7],因此选择前向网络结构。网络层数方面,除了网络必须包含的输入输出层外,对于化工装置产品含量预测这类软测量建模,问题的复杂程度一般要求隐层数目为1。因此,软件中采用包含一个隐含层的三层结构前馈网络。
确定好网络结构后,神经网络用于软测量建模实际上就是利用产品的历史数据经过一定的算法来确定网络的连接权值和阈值。BP算法是应用较早的学习算法,它充分利用了前向网络的结构优势,在正反传播过程中的每一层计算都是并行的。但BP算法存在两个缺点,即训练时间长和容易陷入局部最小。针对此缺陷,本软件在设计时采用了带动量因子的改进方法来加快网络训练速度。改进的BP神经网络的网络设置和参数设置如图3所示。
神经网络建模算法采用BP算法,算法不再是简单的矩阵操作。根据前馈神经网络的结构将神经网络用两个类来描述,即神经网络类和神经网络层类。经过处理后,主程序算法简洁,可读性强。如果要改进BP算法,代码的修改只需在类的方法中修改即可,不必修改主程序。神经网络类的设计和神经网络层类的设计主要代码如下:
神经网络类
属性:
输入层:CNeuralNetworkLayerInputLayer;
隐层: CNeuralNetworkLayerHiddenLayer;
输出层:CNeuralNetworkLayer OutputLayer;
方法:
void Initialize(int nNodesInput, int nNodesHidden, int nNodesOutput); // 初始化函数确定了三层网络的层次关系,有点类似构造函数
void SetInput(int i, double value); // 网络输入函数
double GetOutput(int i); // 网络输出函数
void SetDesiredOutput(int i, double value); // 设置网络期望输出函数
void LoadWeight(const CMatrix& I_H, const CMatrix& H_O, const CMatrix& H, const CMatrix& O); // 给网络加载权值和阈值
void FeedForward(void); // 前向计算函数
void BackPropagate(void);// 反向权值调整函数(标准的最速梯度下降法)
void Levenberg_Marquardt(void);// 反向权值调整函数(Levenberg_Marquardt法)
double CalculateError(void); // 计算网络全局误差函数
void SetLearningRate(double rate1,double rate2); // 设置学习效率
void SetLinearOutput(bool useLinear); // 是否线性输出
void SetMomentum(bool useMomentum, double factor); // 设置动量因素
神经网络层类
属性:
int NumberOfNodes; // 层中神经元数目
int NumberOfChildNodes; // 子层神经元数目
int NumberOfParentNodes; // 父层神经元数目
double**Weights; // 网络权值数组
double**WeightChanges; // 权值改变数组
double* NeuronValues; // 神经元值
double* DesiredValues; // 导师信号
double* Errors; // 局部误差
double* BiasWeights; // 偏差权值
double* BiasValues; // 偏差值
doubleLearningRate; // 学习效率
boolLinearOutput; // 是否线性输出
boolUseMomentum; // 是否有动量因素
doubleMomentumFactor; // 动力因素大小值
CNeuralNetworkLayer* ParentLayer; // 父层
CNeuralNetworkLayer* ChildLayer; // 子层
方法:
void Initialize(int NumberOfNodes, CNeuralNetworkLayer* parent, CNeuralNetworkLayer* child); // 初始化(分配存储空间)
void RandomizeWeights(void); // 权值初始化函数
void OrderWeights(const CMatrix& WeightsMatrix,const CMatrix& BiasWeightsMatrix); // 权值给定函数
void CalculateErrors(void); // 计算局部误差函数
void AdjustWeights(void); // 调整权值函数
void CalculateNeuronValues(void); // 计算神经元值函数
void CleanUp(void); // 清除网络层(有析构函数的作用)
2.4 软测量模型的在线校正
由于软测量对象的时变性、非线性及模型的不完整性等因素,必须经过模型的在线校正才能适应新工况。根据被估计变量的离线测量值与软测量估计值的误差,对软测量模型进行在线修正,使软测量仪表能跟踪系统特性的缓慢变化,提高静态自适应能力。一般采用在线校正算法为常数项修正法,即通过化验值或分析值计算新的偏差,并把新的偏差写入软测量仪表,修正偏差。即:
新偏差=(采样时刻计算值-化验值)×偏差权重+旧偏差×(1-偏差权重)
3 工业应用
乙苯含量是乙苯精馏塔塔釜采出产品中一个十分重要的质量控制指标[9],通过辅助变量塔顶压力、塔顶温度、塔灵敏板温度、回流量及塔釜温度来预测乙苯含量变化趋势。通过本软件进行仿真,乙苯含量软测量偏最小二乘建模数据拟合图如图4所示。其中,红线为实际值,绿线为拟合值。误差平方和:0.765762856683714,均方误差:0.0033294037247118。
针对某装置淀粉含量预测问题选择神经网络方法进行仿真研究,均方误差:9.14971253690028e-009;拟合曲线:红线为化验值,绿线为拟合值。淀粉含量软测量神经网络建模数据拟合图如图5所示。
4 结束语
本文采用了微软基础类库(MFC)提供的基于对话框的应用程序框架实现了软测量建模软件的开发。软件主要是从数学的角度分别研究了线性和非线性软测量建模算法,重点强调了建模算法对给定历史数据的拟合和泛化能力。在具体的应用中,根据工艺知识对软测量问题进行初步数学抽象,然后以本软件作为一种工具建模,辅以必要的工艺机理分析检验模型的合理性。通过对实际中两个化工过程进行的仿真表明,该软件基本具备了软测量建模预测产品含量变化趋势的能力,可以得到较好的效果。
参考文献:
[1] 王树青.先进控制技术及应用[M].北京:化学工业出版社,2005.
[2] Morris A J,Montague G A,Tham M T.Soft-sensors in industrial process control[C].London,UK:Applied developments in process control,1989.
[3] 王跃宣.先进控制策略与软件实现及应用研究[D].杭州:浙江大学,2003.
[4] 俞金寿.软测量技术及其在石油化工中的应用[M].北京:化学工业出版社,2000.
[5] 马勇,黄德先,金以慧.动态软测量建模方法初探[J].化工学报,2005,56(8):1516-1519.
[6] 侯俊杰.深入浅出MFC[M].2版.武汉:华中科技大学出版社,2001.
[7] 薄翠梅,张,李俊,等.基于神经网络的软测量技术在精馏塔上的应用[J].过程工程学报,2003,3(4):371-375.