利用BP神经网络预测隧道周边位移

更新时间:2024-02-12 作者:用户投稿原创标记本站原创
摘要: 介绍了利用神经网络技术的基本原理;并以隧道周边位移为例,说明应用MATLAB实现BP神经网络的预测。
Abstract: This paper introduces the basic principles of using neural network technology and illustrates to realize the prediction of BP neural network by using MATLAB, taking tunnel border displacement for example.
关键词: 神经网络;MATLAB;预测
Key words: neural network;MATLAB;prediction
1006-4311(2012)25-0125-03
0引言
隧道岩土是一个复杂的综合系统,各种参数具有很大的不确定性,这给我们判定其工程性质和参数带来了困难。BP神经网络则是处理复杂系统的有效工具,它具有广泛的适用性,不但能较好地拟合已知数据,而且还具有良好的预测功能。借助MATLAB的实用工具箱,用户可以不再考虑复杂的编程过程而更专注于算法。以下将通过具体例子介绍基于MATLAB的BP神经网络在隧道工程等差时间序列的数据处理和预报中的应用。
1BP神经网络技术
前馈反向传播网络(Back-Propagation-Network,简称BP网络)是目前应用最广泛的神经网络模型之一。在人工神经网络的实际应用中,80%~90%的人工神经网络模型都是采用BP网络或它的变化形式。它也是前向网络的核心部分,并且是人工神经网络最精华的部分。如今,网络在模式识别、图像处理与分析、控制等领域有着广泛的应用。
从结构上讲,BP网络是一种分层型的典型多层网络。具有输入层、隐含层和输出层,层与层之间多采用全连接的方式。同一层单元之间不存在相互连接。图1给出了一个典型的3层BP神经网络结构。
BP网络可被看成是一个从输入到输出的高度非线性映射,即F:Rm→Rn,Y=f(x)。对于样本集合输入:输入xi(Rm)和yi(Rn)输出,可以被认为存在某一映射g,g(xi)=yi,i=1,2,……p。现要求有一个映射f,使得在某种意义下(通常是最小二乘法下),f是g的最佳逼近。Hecht-Nielsen证明了如下的Kolmogorov定理:给定任一连续函数f:U→R,这里U是闭单位区间[0,1],f可以精确地用一个3层前馈网络实现,此网络的第一层(即输入层)有m个处理单元,中间层有2m+1个处理单元,第三层(即输出层)有n个处理单元。
2隧道周边位移的监测
在隧道施工过程中,由于勘探工作的密度有限,使隧道所穿越的实际围岩类别与设计时勘察报告所提供的围岩类别会有所差别,并可能出现勘察时不能探明的不良地质和围岩大变形情况。隧道结构是围岩与隧道支护共同作用的结果,为了在围岩和支护安全的前提下,充分发挥围岩的自载能力,以在经济合理的支护条件下达到安全性的目的,必须通过监控测量实现信息化施工。
通过在开挖后坑道内壁面设置锚固点,采用收敛计测定坑道围岩壁面发生的收敛位移,围岩收敛量测的布置如图2所示,每个量测断面设置5个锚固点,即图中的点A、B、C、D和E点。通过测定测线AE、BD、CE的位移变化,可以确定出其发生的收敛位移和大变形。
量测的频度宜根据位移速度的距工作面距离选取,如表1所示。
通过对隧道某一断面近一个月的周边位移曲线量测数据的统计,得到相关数据如表2所示。
3建立BP神经网络预测模型
在进行BP网络预测模型设计时,主要考虑网络的层数和每层中神经元的个数。
3.1 网络层数根据上文提到的Kolmogorov定理,一个3层的BP网络可以完成任意的m维到n维的映射。学习不连续函数时才需要两个隐含层,故一般情况下最多需要两个隐含层。最常用的BP神经网络结构是3层的,即输入层、输出层和一个隐含层。
3.2 网络各层中神经元的个数输入、输出节点是与样本紧密相关的,与其应用的领域有关。根据断面周边位移的时间序列,确定输入层神经元数为20,即输入变量为连续20天的周边位移序列;输出层神经元数为1,即输出变量为第21天的周边位移。
隐含层节点数会在一定程度上影响到神经网络的性能。输入输出节点数、求解问题的要求等都关系到隐含层节点数的多少。我们必须慎重选择隐含层节点数,若隐含层节点数太少,容错性差,会降低识别未经学习的样本能力;若隐含层节点数太多,就要延长网络训练时间,同时存储样本中非规律性的内容,影响泛化能力的发挥,所以,设计者必须经过多次严格的试验才可确定最佳的隐含层节点数。
笔者按源于:论文的写法www.808so.com
照自身实践经验,提出通过下列公式进行设计:
i=■+a,
式中i、m、n分别代表隐含神经元的个数、输入层神经元的个数以及输出层神经元的个数,a代表1~10之间的调节常数。
改变i,采用同一样本集训练,并确定网络误差最小时所对应的隐含层节点数。
根据上述分析,我们可设定隐含层的神经元数是12。
4BP神经网络预测的MATLAB实现
4.1 数据样本的预处理将样本分为训练集和测试集,用第1~21天的周边位移时间序列作为训练集,即第1~20天的周边位移时间序列作为训练输入,第21天的周边位移作为训练输出;第22~25天的周边位移时间序列作为测试集,用以验证结果。
4.2 确定激活函数根据处理后的数据范围,笔者选取的激活函数为tansig和purelin。
4.3 设定网络的最大学习迭代次数为6000次。
4.4 设定网络的学习精度为0.0001
4.5 创建和训练BP神经网络的MATLAB程序:
%周边位移预测
>> clear all;
>> p=[0.250 0.061 0.073
0.510 0.010 0.090
… …
1.871 0.8830.843];
>> t=[1.878 0.883 0.892];
>> net=newff(minmax(p),[12 1],{'tansig' 'purelin'},'traingdx','learngdm');
>> net.trainParam.epochs=6000;
>> net.trainParam.goal=0.0001;
>> net.trainParam.show=500;
>> [net,tr,Y,E]=train(net,p,t);
如图3显示网络学习迭代到127次时,就已经满足精度要求,其学习速度较快。
4.6 测试BP神经网络将输出数据还原,与实测数据比较,说明BP神经网络预测的MATLAB实现是可行的。结果如表3所示。
由结果可见其对隧道工程的测量数据进行处理和预测是有效的。
5结论
隧道围岩变形时间序列数据中蕴含着系统演化的信息,我们可以从这些数据中找出其蕴含的规律性,同时也可以利用已知的观测资料来预报系统的未来动态。神经网络方法从模拟人脑的形象思维入手,具有非线性、并行性、鲁棒性和强泛化性等特点;对于处理具有强噪声、模糊性、非线性的地下工程地质信息,它具有广泛的应用前景。
参考文献:
傅荟璇.MATLAB神经网络应用设计.机械工业出版社,北京,2010.7.
施成华.浅埋隧道施工地层变形时空统一预测理论与应用.科学出版社,北京,2010.11.
[3]高少强.隧道工程.中国铁道出版社,北京,2003.9.

点赞:16104 浏览:70333