您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页MatLab

MatLab

来源:尚车旅游网
维普资讯 http://www.cqvip.com 第15卷第3期 2002年6月 武汉科技学院学报 JOURNAL OF WUHAN INSTITUTE OF SCIENCE AND TECHNOLOGY Vo1 15 NO.3 Jun.2002 MatLab实现神经网络的非线性对象动态建模 夏定纯 ,秦肖臻 (1武汉科技学院计算机科学系,湖北武汉430073;2华中科技大学控制工程系,湖北武汉430074) 摘要:简要叙述神经网络用于动态建模原理,介绍在MATLAB仿真环境中的实现方法,结合一个典型工业 例子对几种训练算法作出性能比较与分析,给出相应的仿真结果。 关键词:神经网络;建模;系统仿真 中图分类号:TP1 8 文献标识码:A 文章编号:1009—51 60(2002)03—0065--04 系统动态建模与控制一直是人们不断探索的一个重要领域,由于工业系统中过程的复杂性,对象的精 确数学模型的获取往往是比较困难的,常用的传统方法是将过程对象进行适当的简化,经过局部线性化处 理后得到对象的近似线性化模型。然后,再运用成熟的线性系统理论和技术方法实现对象系统的控制,以 期达到总体性能指标的要求。显然,这种近似化处理方法对于非线性、多变量与时变等特性的过程对象是 不能满足要求的。近些年来,基于智能计算的建模与控制技术得到迅速发展,为该类困难问题的解决提供 了一种有效的途径。本文简述在MATLAB环境下建立对象动态模型的基本过程,通过一个仿真对象,讨 论采用随机权(RAW)学习方法的非线性对象动态建模的能力,并与其它几种常用学习算法进行性能比较。 1 基于NN的动态建模 神经网络(NN)是智能技术中发展的极为迅速的技术领域之一,并获有许多成功的应用。其主要原因在 于NN能处理复杂的非线性特性关系,使用较少的先验知识,无需过多的了解对象的内部机理,并行处理 方式和学习能力的特性等,这些特点使得NN引起人们高度关注,得以迅速应用到各个领域(Bhat,1990; Willis,1991)。自从第一个神经元感知模型提出以来,至少有数十多种不同的NN结构被研究和应用 (Hecht—Nielson,1988),一大批学习算法也相继产生。其中应用最广泛、影响最大的当属多层前向神经网络 和BP算法了。多层前向网络不仅能够逼近任何一个非线性静态影射关系(Cybenko,1989),同时也可以用于 动态系统的特性学习,从而在非线性对象的建模与控制中具有很大的应用潜力(Narendra,1990)。 动态系统的输入输出描述可以表示为如下的形式: 其中,y(t)是输出信号,u(t)输入信号,f(.)30非线性对象的特性关系。由 于非线性逼近能力,可以采用NN来逼近函数f,从而完成动态对象的建 模,如图l所示。 y(t+1)=f(y(c),…y(t-a)’u(c),…u(c-b)) yft-u_] I ,. ff_ 、—_.J I uf1)——'.』 l I NN的建模任务具体来说主要考虑结构选择、输入输出信号及其样 本集选择等几个方面。网络结构的选择往往与具体的应用对象有关,目 前尚未有完备的成熟理论技术,虽然有一些方法提出来,但是实际应用 中采用较多的是通过样本集学习的性能比较来确定NN结构 l I u(t_h)——叫 I 图 动态系统的输入输出关系 (SjOberg,1995)。输入输出样本集的选择应尽量覆盖对象全部的工作范围,这样学习的动态特性才能满足要 求。此外,好的学习算法对NN的学习效率会产生影响,使用最为广泛的是BP学习算法,它主要是根据 模型的输出与样本集输出所产生的偏差来训练网络的连接权阵,搜索是沿着最大梯度下降的方向进行。为 了克服BP学习中陷入局部极小情况,其他一些新的算法陆续被提出,如增加动量项、共轭梯度法、伪牛 顿法、LM方法等等。虽然它们在不同程度改进原学习算法的效果,但是,由于每次的学习均需要求解一 收稿¨期:2002—03—1 3 作者简介:夏定纯(1963一),男,副教授,研究方向:智能系统 维普资讯 http://www.cqvip.com 66 武汉科技学院学报 2002年 系列的递推方程,运算量较大,在实际过程的应用受到了影响,使用一个算法简洁和运算量的建模方法在 工业应用中是具有重要的实用意义的。 随机权阵(RAW)是一种基于随机搜索策略的学习方法(Baht,1990;Willis,1991),它类似模拟退火法 ‘Simulated.Annealing’,但学习的策略更为灵活与简练。该算法的基本思想是按照Gaussian分布改变NN连 接权阵,反复计算学习目标,直到到达可以接受的误差精度为止。由于采用随机搜索,使得网络的学习克 服了BP算法存在的问题,降低陷入局部极小的可能,而且无需计算NN中转移函数的偏导方程,从而使 得该算法快速简单,特别适合在线估计与控制,具有很强的工业应用价值。下面通过对一个具体的仿真对 象,利用MATLAB仿真语言环境对其进行动态建模,对几种常用的学习方法:BPM、LM以及RAW进行 学习性能的分析和比较。 2 MATLAB建模设计 MATLAB(Matrix Laboratory)是Mathwork公司基于向量矩阵运算的程序设计语言,它面向工业应用和 科学研究,配备有一个功能强大的数学函数支持库,提供丰富的矩阵、运算、图形、数据处理等函数,其 优秀的数值计算能力在学术界与工程界均享有极高的声誉。与此同时,在此环境下各种实用工具箱的不断 推出,使得该软件的功能日益加强,开发与应用更加方便,越来越广泛地应用到自动控制、图形图象、信 号分析、语音处理、化学生物等领域。MATLAB提供的神经网络工具箱以直观、简洁、开放性原代码等特 性为用户提供了丰富而友好的开发环境。丰富的NN结构描述函数以及训练功能函数,使用户可以按照实 际应用要求灵活地定义网络结构(如:BP、ELMAN、RBF等)以及多种学习算法(如:梯度法、共轭梯度法、 伪牛顿法、LM法等)。 MATLAB中用于神经网络定义的基本函数主要为: net=newff(PR,【Si】{TFi},BTF) 、 其中:PR表示网络输入信号的范围,si定义了网络的大小,如隐层以及每层神经元数等,TFi设定网络中 各层的转移函数形式,BTF说明了网络的训练函数。通过选用网络预定的初始化函数,可以设定网络的训 练初始权阵: net.1ayers{i}.initFcn=‘initwb’; net.inputWeights{i,j}.initFcn=‘rands’; net.bias{i,j}.initFcn=‘rands’; net=init(net); 网络缺省学习是Levengerg-Marquarelt算法(trainlm函数)。这里我们比较三种学习算法,它们分别为: 动量项BP算法、LM算法以及RAW算法,设置网络的训练函数,可以选用不同的训练算法。网络学习过 程有两种方式:单个动态更新和批量综合训练,这里采用后者进行网络的离线动态样本学习,在实时预估 中则可以采用前者的单样本学习方式。 %’Select BP with momontum:Ir.mc pHnet.trainfcn=’traingdm’: pHnet.trainParam.Ir=0.05; pHnet.trainParam.nlc=0.8: %Select LM pHnet.trainfcn=‘trainlm’: %Training parameters pHnet.trainParam.show=10; %Frequency of progress displays(in epochs) pHnet.trainParam.epochs=1000; %Maximum number of epochs to train. 图2中性反应过程特性曲线 pHnet.trainParam.goal=(O.000l4); %Mean—squared error goa1. 维普资讯 http://www.cqvip.com 第3期 夏定纯,等:MatLab实现神经网络的非线性对象动态建模 67 3仿真对象与算法性能 以工业中常见的化学中性反应过程为仿真对象,通过SIMULINK工具建立其仿真模型,输入输出非线 性关系如图2所示,可见该过程是一个典型的非线性过程。在过程处于稳态状态下,将输入流量信号迭加 均匀随机激励信号,测量过程输出信号(pH值),形成网络的训练样本集。该训练样本应覆盖整个工作范围, 如图3所示。 图3 中性反应过程的动态特性样本 NN结构的选择,如输入信号以及隐层节点个数等, 会影响到网络的学习性能。NN中的节点数量增加,虽然 可以改善建模的精度,但却可能导致学习的过拟合现象。 反之,减少节点数则会降低非线性逼近能力,从而不能很 好地学习到对象的动态特性,适当的NN结构选择将是建 模过程的重要一环。通过实验分析,NN的结构选择如下: 输入信号为pH和 的当前以及前两个采样时刻的值,网 络隐层中节点数为l5,输出为下一时刻的pH值,采用滑 动窗技术对过程进行建模。 在对网络初始化后,对同样一组样本集采用不同的学 习方法进行训练,训练结果如图4所示。从图中可见,LM、 动量项BP以及RAW学习过程都能够较好地达到学习的要 求,其中LM学习速度最快,具有很好的性能,动量项BP 图4学习算法的收敛性 5 1O 15 20 25 epoch 313 35 如45 50 学习算法也能够加快样本集的学习收敛速度。但是,这两种学习算法均需要作较多的函数偏导搜索运算。 相反,RAW算法则计算量十分少,而且同样具备有较好的学习性能以及相应的一步预估预能力如图5所示。 图5样本输出与网络预估结果 维普资讯 http://www.cqvip.com 武汉科技学院学报 2002乍 4结束语 本文在MATLAB环境下分析了NN用于对象的动态建模能力,通过对一个非线性过程的仿真,比较了 几种典型的学习算法。特别是对于随机搜索方法的学习算法RAW,在本文中主要测试了其非线性特性对 象的学习以及预测能力,仿真结果表明了该算法的有效性。由于RAW具有算法简单、运算量少、速度快 等特点,因而特别适合于工业系统的实时建模与控制。 参考文献: Bhat、N..Mindeman,PA..McAvoy,T J,et a1..Modeling chemical process system via neural computation[J].IEEE Control Systems Magazine.1990.10:24~29 i21 Cybenko.G.Approximation by superpositions ol’a sigmoidal function[J].Mahtematic ofControl,Signals、and System.1989.2: 303~3l4. 【3】 Hecht-Nielsen,R..Heurocomputer application[A]Nero‘al Computings(Eckmiler et a1.Eds)【C J.Springer-Verlag.New York. 1988. 【4 J Naren&’a、K.S,K Parthasarathy.Identiicatifon and control of dynamical systems using neural networks[J].IEEE Trans Neutal Networks.1990.1:4~27. 【5】 Sj0bm‘g,J.and Ljung,L.. Overtraining,regularization and serching for minimum in neural networks[J]Int.Journal of Contolr, l995,62(6):l39l~l408. [6】 W川is,MlJ..Massimo、C D,Montague,G.A.,et a1.Artificial neural networks in process engineering[J].IEE Proc.-D.1 99 l,l 38 (31:256~266. NN Based Nonlinear Dynamic System Modeling by Using MatLab XIA Ding—chun ,QIN Xiao—zhen (1 Department of Computer Science,Wuhan Institute of Science and Technology,Wuhan Hubei 430073,China; 2 Huazhong University of Science and Technology,Wuhan Hubei 430074,China) Abstract:This paper introduces the principle of NN based dynamic system modeling and the realization using MatLab.Several learning approaches and their functions have been compared and the simulation results are also presented. Key words:neural networks;modeling;simulation 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务