BP神经网络在分岔隧道位移反分析中的应用

BP神经网络在分岔隧道位移反分析中的应用
BP神经网络在分岔隧道位移反分析中的应用

第25卷增2岩石力学与工程学报V ol.25 Supp.2 2006年10月Chinese Journal of Rock Mechanics and Engineering Oct.,2006 BP神经网络在分岔隧道位移反分析中的应用

易小明1,陈卫忠1,李术才2,戴永浩1

(1. 中国科学院武汉岩土力学研究所,湖北武汉 430071;2. 山东大学岩土与结构研究中心,山东济南 250061)

摘要:在西部交通建设过程中,沪蓉西宜昌—恩施段的高速工程穿过的多为崇山峻岭,地形地质条件极为复杂,遇到很多以前很少甚至从未涉及的难题。在隧道建设方面,为适应多变的地形地质条件,不仅设置连拱隧道、小间距隧道等多种型式,而且还设置分岔隧道,即一端洞口为连拱隧道甚至四车道大拱,而另一端洞口为上下行分离隧道。利用沪蓉西八字岭分岔隧道现场监控量测数据,结合有限差分程序FLAC3D与BP神经网络模拟技术,对该分岔隧道围岩参数进行位移反演分析,并考虑隧道围岩爆破松动圈的影响。工程应用结果表明,该方法适用于求解这类大规模、复杂非线性隧道工程问题,其稳定性、适用性良好,精度满足工程要求。研究结果将对该隧道和西部山区类似的复杂结构长隧道的勘察、设计、施工起到一定的指导作用。

关键词:隧道工程;分岔隧道;有限差分;BP神经网络;位移反分析

中图分类号:U 45 文献标识码:A 文章编号:1000–6915(2006)增2–3927–06

APPLICATION OF BP NEURAL NETWORK TO BACK ANALYSIS

OF FORKED TUNNEL DISPLACEMENT

YI Xiaoming1,CHEN Weizhong1,LI Shucai2,DAI Yonghao1

(1. Institute of Rock and Soil Mechanics,Chinese Academy of Sciences,Wuhan,Hubei430071,China;

2. Geotechnical and Structural Engineering Research Center,Shandong University,Jinan,Shandong250061,China)

Abstract:In the construction process of west transportation,the section of Yichang—Enshi along Hurong expressway goes through many high and precipitous mountain areas,which induces many problems seldom or never met before. At the aspect of tunnel construction,to adapt to the varying and complex geological and topographic conditions,the forked tunnel together with double-arch,small-interval tunnel styles have been designed,that is,one entrance of the tunnel is four-driveway with big arch or double arches,and the other is apart double tunnels. Based on site monitoring data of the tunnel,the back analysis of forked tunnel displacement is well performed by combining the well-known finite difference program FLAC3D with BP neural network,considering the effects of broken and damaged zones. According to the results of engineering practice,it is revealed that this kind of back analysis method is capable to large-scale,complicated and nonlinear tunneling engineering,and is robust and practical enough to well meet the precision requirements of geotechnical engineering. Moreover,the results can be expected to be helpful and meaningful to reconnaissance,design and construction for not only the current studied one but also many similar complex and long tunnels in western China.

Key words:tunnelling engineering;forked tunnel;finite difference;back-propagation neural network;displacement back analysis

收稿日期:2005–09–28;修回日期:2005–12–11

作者简介:易小明(1979–),男,2000年毕业于中国地质大学勘察与基础工程专业,现为博士研究生,主要从事隧道工程、断裂损伤方面的研究工作。E-mail:yi_19_82@https://www.360docs.net/doc/c0915506.html,

·3928·岩石力学与工程学报 2006年

1 引言

目前,国内外对分岔隧道相邻隧道施工的受力分析、施工顺序、控制爆破等的研究成果较少,国内外尚无相应的设计、施工技术规范和标准。因此,开展分岔隧道的设计、施工关键技术研究显得尤为重要[1]。吴波等[2]对地铁分岔隧道施工性态进行了三维数值模拟,在工程实践中起到了重要的指导作用。孙玉国和白继承[3]对高速公路中硬岩分岔山岭隧道施工技术经验进行了总结探讨。总体上,当前隧道工程中,针对分岔隧道的研究并不多见,特别是分岔隧道位移反分析研究工作尚鲜见有文献报道。

在相关的隧道位移反分析研究工作方面,杨林德[4]、吕爱钟和蒋斌松[5]对岩土工程中的反演理论进行了系统深入的论述,并在很多工程实践中得到应用;邓建辉等[6]将神经网络和遗传算法应用到岩石边坡位移反分析中,提高了位移反分析的计算效率。由于岩土工程具有规模大、构造复杂、初始地应力场复杂等特点,决定隧道岩土工程的位移反分析以基于增量位移的反演正算模型为主。这种方法的局陷在于,在目标函数的优化求解过程中,每次参数调整均需进行有限元计算。对于大型隧道工程而言,其计算范围较大,节点数较多,本构关系复杂,开挖方式多样,从而导致计算量巨大,速度缓慢,在当前的微机上难以实现。所以,对于大规模的非线性反演问题,如果能建立一种待定参数与位移之间的函数映射关系,代替上述有限元计算,计算效率将大为提高。而且,在多数位移反分析中,监测数据本身存在的噪音,往往使得优化反演难以收敛。而BP神经网络在解决这些问题方面有着强大的优势。

BP神经网络(back-propagation neural network)是使用最为广泛的人工神经网络之一,它具有较强的非线性动态处理能力,无需知道变形与力学参数之间的关系,可实现高度非线性映射,其较强的学习、存储和计算能力,特别是较强的容错特性,适用于从实例样本中提取特征,获取知识,从而较好地表达位移和力学参数间的隐式非线性映射关系[7]。

本文将在沪蓉西八字岭分岔隧道现场监测结果的基础上,依据施工过程力学原理,利用BP神经网络建立待反演参数与相应计算位移之间的映射关系,代替耗时的反演有限元计算。反演结果将直接服务于现场设计施工,并为类似分岔隧道工程提供参考。

2 工程概况

建设中的沪蓉国道主干线湖北省境内宜昌—恩施段高速公路为我国最早规划的“两纵两横”国道主干线中的最后未贯通路段。由于该工程穿过的区域多为崇山峻岭,地形地质条件极为复杂,在西部高速公路建设中遇到很多以前很少甚至从未涉及的难题。在隧道建设方面,为了适应多变的地形地质条件,不仅设置了连拱隧道、小间距隧道等多种型式,而且还设置了分岔隧道,即一端洞口为连拱隧道甚至四车道大拱,而另一端洞口为上下行分离隧道。所以,在这种复杂隧道结构条件下,开展各项研究其意义是不言而喻的[1]。

沪蓉西八字岭隧道进口位于宜昌市长阳县榔坪镇八字岭村,出口位于恩施州巴东县野三关镇栗子园村四渡河东岸。设计为分叉隧道,进口为分离式,与八字岭特大桥西桥台相连;出口为连拱式,与四渡河特大桥东桥台间相距仅20~30 m。洞室净空9.75 m×5.0 m,最大开挖跨度26 m,最大埋深约450 m,属特长隧道。而且,类似分岔隧道在沪蓉西就有3处。

该分岔隧道复杂的受力结构及开挖方式、开挖步骤等,给设计、施工都提出了许多新的课题,本文的研究也即来源于此。

3 数值模拟结果

FLAC3D程序是美国Itasca公司开发的三维快速拉格朗日分析程序[8]。该程序是一种基于三维显式有限差分法的数值分析方法,它在求解过程中采用了离散元的动态松弛法,能较好地模拟岩土体材料的屈服、塑性流动、软化直至大变形,尤其是在材料的弹塑性分析、大变形分析以及模拟施工过程等领域有其独到的优点。考虑到该分岔隧道的具体工况较复杂,拟采用FLAC3D程序进行数值模拟。

八字岭隧道分岔段围岩设计为IV类,参考设计院提供的围岩参数,见表1;中隔墙为C25钢筋混凝土;初期支护形式为:系统锚杆;φ8钢筋网,

第25卷增2 易小明等. BP神经网络在分岔隧道位移反分析中的应用 ? 3929 ?

网格间距20 cm×20 cm;15 cm厚C20喷射混凝土。

为计算方便,将锚杆和钢筋网的增强作用等效折算

到混凝土强度参数中。具体选取参数见表1。

表1 围岩及支护结构力学参数

Table 1 Mechanical parameters of wall rock and support

structures

计算参数弹性模量

E / GPa

泊松比

ν

黏聚力

c / MPa

密度

ρ/(g·cm-3)

摩擦角

?/ (°)

抗拉强度

σt/ MPa

IV类围岩8~18 0.25 1.3 2.78 48 0.8

中隔墙 28 0.22

2.6 2.70 50 1.8 支护结构 13 0.25 1.8 2.60 40 1.3

在隧道分岔连拱段,FLAC3D有限差分数值计算

模型如图1所示。

图1 FLAC3D有限差分计算模型

Fig.1 FLAC3D model of forked tunnel

通过数值模型得到围岩几条关键测线(见图2)

位移分布,结果见表2。取左、右洞的6条收敛测线(左洞测线L1,L2,L3,右洞测线L4,L5,L6)作

为6个样本位移值(相对位移),分别对应u = {u

1

u2,u3,u4,u5,u6}。为方便计算,取收敛的位移为

正值,伸长为负。

图2 围岩测线布置图

Fig.2 Layout of measuring lines in surrounding rock

表2 关键测线位移分布

Table 2 Displacement distribution of key measuring lines

训练

样本

弹性

模量

/GPa

位移u1

/(10-2 mm)

位移u2

/mm

位移u3

/mm

位移u4

/(10-2 mm)

位移u5

/mm

位移u6

/mm 18-6.704 1.897 2.235 -2.272 3.536 2.360 210-5.555 1.529 1.809 -1.767 2.916 1.924 312-4.609 1.282 1.524 -1.378 2.498 1.631 414-3.833 1.105 1.319 -1.056 2.196 1.420 516-3.1840.972 1.165 -0.804 1.966 1.260 618-2.6350.868 1.045 -0.567 1.785 1.134 4 现场监控量测

在八字岭分岔隧道连拱段,按设计图纸的相关要求埋设多点位移计、收敛测点、拱顶沉降测点,现场实测得到6条关键测线位移(图3,4为工程现场图片)。

图3 分岔隧道施工现场

Fig.3 Picture of forked tunnel site

图4 监测断面上关键点埋设多点位移计

Fig.4 Multi-point displacement meter embedded at key points on observed section

5 BP神经网络反演分析

5.1BP神经网络介绍

在岩土工程实际应用中,BP神经网络体现出良

·3930· 岩石力学与工程学报 2006年

好的性能,从而得到广泛的应用[6

,7,9,10]

。BP 网络是采用Widrow-Hoff 学习算法和非线性可微转移函数的多层网络,网络上、下层之间各神经元实现权连接,即下层的每一个神经元与上层的每个神经元都实现权连接,而每层神经元之间无连接,网络按有导师示教的方式进行学习。当一对学习模式提供给网络后,神经元的激活值从输入层经各中间层向输出层传播,在输出层的各神经元获得网络的输入响应之后,按减小希望输出与实际输出误差的方向,从输出层经各中间层,逐层修正各连接权,最后回到输入层,故得名误差逆传播算法。由于这种网络及其算法增加了中间隐含层,并有相应学习规则可循,使其具有对非线性模式的识别能力,特别是其数学意义明确、步骤分明的学习算法,更使其具有广泛的应用前景。岩土工程界已利用BP 神经网络较好地解决了某些工程问题。

典型的单层BP 神经网络示意图见图5。图中,W 为权值矩阵,P 为输入向量,b 为偏置,a 为输出向量,f 为转移函数。常用的转移函数为“s ”型函数:

)e 1/(1)(x x f ?+= (1)

图5 单层BP 神经网络 Fig.5 Single-layer BP network

BP 神经网络训练的过程,即输入信息的前向传播,误差的反向传播和联接权值的调整,最终使得网络输出与期望的目标输出值之间的误差小于给定的精度值:

ε<||object a a ? (2)

式中:ε为一个较小的正数,即给定的精度值。当训练精度达到上面的标准,则网络训练完成。此时该网络可以用来较好地模拟、逼近要求的非线性映射关系。在MATLAB 工具箱中,上面的计算程

序都被编制为相应的函数,用户可以方便地直接调 用[11]。

5.2 BP 神经网络训练与模拟

根据BP 神经网络训练的特点,影响BP 神经网络训练效果和模拟性能的主要因素有隐含层数、隐含层神经元节点数以及学习速率。

在一定程度上,增加隐含层数和神经元节点数,可以提高BP 神经网络的精度和表达能力。但太多的层数、节点数,会严重影响训练速度,浪费大量的训练时间,通常2和3层BP 神经网络较为常用。而且相对而言,增加节点数比增加隐含层数,其训练效果更容易观察和调整,所以一般当精度不够时,应优先考虑增加隐含层中的神经元数。

太大的学习速率往往导致网络的不稳定,甚至出现训练麻痹现象,太小则要求更多的迭代时间。一般情况下倾向于选取较小的学习速率以保证系统的稳定性,学习速率的选取为0.01~0.80。

BP 神经网络因为多采用的是梯度下降法、共轭算法等,这使得BP 神经网络很有可能陷入局部极小值,以至于网络训练不能收敛到全局最优解。一方面,适当增加隐含层数、神经元数,可以改善局部极小问题。另一方面,附加动量法也是一种行之有效的方法,它不仅考虑误差在梯度上的作用,同时考虑误差曲面上变化趋势的影响,允许网络忽略其上的某些微小变化特征,从而使网络容易跳出较

浅的局部极小区域。

本文研究的分岔隧道反演模型中,BP 神经网络设计为:3层网络,隐含层神经元节点20个,训练样本取自FLAC 3D 有限差分分析结果,围岩参数反

演的输入为现场6条关键测线的监控位移量。训练前,为加快收敛,通常先将数据进行规格化处理。参考湖北沪蓉西高速公路建设指挥部提供的资料[1]及类似工程经验,结合现场工程实际,考虑20%的位移测前损失,则有u = {0.208,1.491,1.547,0.434,2.318,1.959}。其中各位移单位为mm 。

该分岔隧道模型,采用带动量的梯度下降法,结合自适应学习算法,训练精度到达到10

-6

时终止

学习。弹性模量反演结果见表3。

现场监测位移量和数值模拟得到的位移量差别较大,这说明所采用的数值模型存在较大的不足;另一方面,对BP 神经网络模拟来说,这种远离样本区间的输入,其产生的误差将会是巨大的。究其原因,是模型没有考虑围岩爆破开挖松动区的影响。

f

f

f

第25卷增2 易小明等. BP神经网络在分岔隧道位移反分析中的应用 ? 3931 ?

表3 弹性模量反演结果

Table 3 Back analysis results of elastic moduli GPa

类别E1E2E3E4E5E6

输入8.000 0 10.000 0 12.000 014.000 0 16.000 018.000 0

反演8.000 1 9.999 4 12.001 213.998 4 16.001 217.999 5

开挖中,无论采取什么措施,松动圈总是不可避免

的,松动圈的存在导致位移测量值的增大,对反分

析的结果必然有较大的影响[12]。有鉴于此,必须将

FLAC3D数值模型进行调整。根据现场超声波测试

结果,围岩松动圈大小在0.2~0.4 m左右,数值模

型中取半径为0.4 m的松动圈,重新得到的计算样

本见表4。

表4 关键测线位移计算值

Table 4 Calculation displacements of key measuring points

训练样本岩体弹

性模量

/GPa

松动圈

弹性模

量/GPa

位移

u1/mm

位移

u2/mm

位移

u3/mm

位移

u4/mm

位移

u5/mm

位移

u6/mm

1 8 7 0.486 2.868 2.556 0.813 4.250 3.742

2 8 6 0.45

3 2.849 2.58

4 0.780 4.320 3.740

3 8 5 0.412 2.830 2.621 0.735 4.410 3.735

4 13 11 0.275

1.805 1.650

0.508

2.803 2.384

5 13

9 0.247

1.794 1.677

0.480

2.856 2.379

6 13

7 0.210

1.783 1.716

0.437

2.929 2.371

7 18 15 0.189

1.305 1.215

0.376

2.143 1.772

8 18 12 0.167

1.290 1.229

0.353

2.182 1.766

9 18

9 0.135

1.276 1.255

0.315

2.241 1.759

BP神经网络的特点是内插性比外插性好,所以要求训练样本空间最好覆盖预测结果,如果预测结果在样本空间之外(外插),预测效果不好,精度较差[9]。所以,围岩弹性模量取8~18 GPa(依据设计院参数);且根据多数工程经验,硬质围岩中松动圈弹性模量降低值在50%以内,相应松动圈弹性模量取4~8,7~13,9~18 GPa,然后在每个区间内均匀分布取样,得到表4所示的训练样本空间,以满足覆盖、均匀的要求。

考虑松动圈效应后,得到新的样本,重新构建BP神经网络,网络训练结果见表5。将现场实测位移输入到训练完成的网络,反算得到的岩体与松动圈的弹性模量为E= {12.84,9.28},各数值单位为GPa,通过正算检验反演结果见表6。

表5 岩体、松动圈弹性模量反演结果

Table 5 Back analysis results of elastic moduli of both rock and damaged zones

训练

样本

岩体

弹性模量

/GPa

松动圈

弹性模量

/GPa

反演后

岩体弹性模量

/GPa

反演后松动圈

弹性模量

/GPa

1 8 7 8.000 5 6.999 6

2 8 6 7.997 6 5.999 9

3 8 5 8.002 2 5.000 2

4 13 11 13.001

5 11.000 8

5 13 9 12.998 8 8.999 5

6 13

7 12.999

8 6.99

9 7

7 18 15 18.000 5 14.999 9

8 18 12 17.999 0 11.999 8

9 18 9 18.000 7 9.000 5

表6 位移反分析误差

Table 6 Errors of displacement back analysis 测线位移正算位移/mm反演误差/% u10.256 2.6

u2 1.810 1.2

u3 1.682-9.4

u40.492-5.6

u5 2.873 3.3

u6 2.407 2.4

由表6可见,反演得到的隧道围岩参数基本是合理的。当通过对足够的样本进行学习、记忆、训练后,这种“黑箱”式BP神经网络表达的优点在岩土工程位移反分析应用中是突出的。

6 结语

本文在前人研究的基础上,探讨了在分岔隧道中应用数值模拟和BP神经网络进行位移反分析的可行性和实用性。应用实践表明,BP神经网络不仅具有较好的鲁棒性以及较强的抗干扰能力,更具有很强的非线性表达能力,在岩土工程反演分析中有良好的表现。

同时,数值模拟结果和现场监测结果对比可以看到,松动圈效应对围岩力学性能的影响是不可忽略的,这与新奥法的基本思想是相一致的。

尽管BP神经网络已经比较成熟,但还是存在

·3932·岩石力学与工程学报 2006年

一些问题有待改进,如局部极小问题,网络过度收敛,以及如何提高训练收敛速度等问题。而且,岩土工程反演分析中,BP神经网络的应用还需在反演参数选优、初始地应力反演、节理裂隙参数的表达等方面进行进一步研究。

参考文献(References):

[1] 湖北沪蓉西高速公路建设指挥部. 分岔式隧道设计施工关键技术

研究[R].恩施:湖北沪蓉西高速公路建设指挥部,2004.

(Headquarters of Western Hurong Expressway. Study on key technologies of design and construction in forked tunnel[R]. Enshi:

Headquarters of Western Hurong Expressway,2004.(in Chinese)) [2] 吴 波,刘维宁,高 波,等. 地铁分岔隧道施工性态的三维数值模

拟与分析[J]. 岩石力学与工程学,2004,23(18):3 081–3 086.(Wu

Bo,Liu Weining,Gao Bo,et al. 3D simulation and analysis of construction behavior of forked metro tunnel[J]. Chinese Journal of

Rock Mechanics and Engineering,2004,23(18):3 081–3 086.(in

Chinese))

[3] 孙玉国,白继承. 高速公路中硬岩分岔式隧道施工技术[J]. 现代隧

道技术,2005,42(3):65–69,75.(Sun Yuguo,Bai Jicheng.

Construction techniques of a branching-out highway tunnel in medium hard surrounding rocks[J]. Modern Tunneling Technology,

2005,42(3):65–69,75.(in Chinese))

[4] 杨林德. 岩土工程问题的反演理论与工程实践[M]. 北京:科学出

版社,1995.(Yang Linde. Theory and Engineering Practice of Back

Analysis in Engineering Problems of Rock and Soil[M]. Beijing:

Science Press,1995.(in Chinese))

[5] 吕爱钟,蒋斌松. 岩石力学反问题[M]. 北京:煤炭工业出版社,

1998.(Lu Aizhong,Jiang Binsong. Back Problems of Rock Mechanics[M]. Beijing:China Coal Industry Publishing House,1998.

(in Chinese))

[6] 邓建辉,李焯芬,葛修润. BP网络和遗传算法在岩石边坡位移反

分析中的应用[J]. 岩石力学与工程学报,2001,20(1):1–5.(Deng

Jianhui,Lee C F,Ge Xiurun. Application of BP network and genetic

algorithm in displacement back analysis of rock slopes[J]. Chinese Journal of Rock Mechanics and Engineering,2001,20(1):1–5.(in

Chinese))

[7] 樊琨,刘宇敏,张艳华. 基于人工神经网络的岩土工程力学参

数反分析[J]. 河海大学学报(自然科学版),1998,26(4):98–

102.(Fan Kun,Liu Yumin,Zhang Yanhua. Inverse analysis of mechanical parameters based on neural network in geotechnical engineering[J]. Journal of Hohai University(Natural Science),1998,26(4):98–102.(in Chinese))

[8] Itasca Consulting Group Inc.. FLAC3D manual[R]. USA:Itasca

Consulting Group Inc.,1997.

[9] 冯夏庭,张治强,杨成祥,等. 位移反分析的进化神经网络方法

研究[J]. 岩石力学与工程学报,1999,18(5):529–533.(Feng

Xiating,Zhang Zhiqiang,Yang Chengxiang,et al. Study on genetic

neural-network method of displacement back analysis[J]. Chinese Journal of Rock Mechanics and Engineering,1999,18(5):529–

533.(in Chinese))

[10] 易 达,徐明毅,陈胜宏,等. 人工神经网络在岩体初始应力场

反演中的应用[J]. 岩土力学,2004,25(6):943–946.(Yi Da,Xu

Mingyi,Chen Shenghong,et al. Application of artificial neutral network to back analysis of initial stress field of rock masses[J]. Rock and Soil Mechanics,2004,25(6):943–946.(in Chinese))

[11] 王学辉,张明辉. MATLAB 6.1最新应用详解[M]. 北京:中国水

利水电出版社,2002.(Wang Xuehui,Zhang Minghui. Tips of MATLAB 6.1 Latest Application[M]. Beijing:China Water Power Press,2002.(in Chinese))

[12] 杨志法,熊顺成,王存玉,等. 关于位移反分析的某些考虑[J]. 岩

石力学与工程学报,1995,14(1):11–16.(Yang Zhifa,Xiong

Shuncheng,Wang Cunyu,et al. Some consideration of back analysis

from displacements[J]. Chinese Journal of Rock Mechanics and Engineering,1995,14(1):11–16.(in Chinese))

BP神经网络测试例子(附数据)

Train.txt 5.0,3.0,1.6,0.2,1 5.0,3.4,1.6,0.4,1 5.2,3.5,1.5,0.2,1 5.2,3.4,1.4,0.2,1 4.7,3.2,1.6,0.2,1 4.8,3.1,1.6,0.2,1 5.4,3.4,1.5,0.4,1 5.2,4.1,1.5,0.1,1 5.5,4.2,1.4,0.2,1 4.9,3.1,1.5,0.1,1 5.0,3.2,1.2,0.2,1 5.5,3.5,1.3,0.2,1 4.9,3.1,1.5,0.1,1 4.4,3.0,1.3,0.2,1 5.1,3.4,1.5,0.2,1 5.0,3.5,1.3,0.3,1 4.5,2.3,1.3,0.3,1 4.4,3.2,1.3,0.2,1 5.0,3.5,1.6,0.6,1 5.1,3.8,1.9,0.4,1 4.8,3.0,1.4,0.3,1 5.1,3.8,1.6,0.2,1 4.6,3.2,1.4,0.2,1 5.3,3.7,1.5,0.2,1 5.0,3.3,1.4,0.2,1 6.6,3.0,4.4,1.4,2 6.8,2.8,4.8,1.4,2 6.7,3.0,5.0,1.7,2 6.0,2.9,4.5,1.5,2 5.7,2.6,3.5,1.0,2 5.5,2.4,3.8,1.1,2 5.5,2.4,3.7,1.0,2 5.8,2.7,3.9,1.2,2 6.0,2.7,5.1,1.6,2 5.4,3.0,4.5,1.5,2 6.0,3.4,4.5,1.6,2 6.7,3.1,4.7,1.5,2 6.3,2.3,4.4,1.3,2 5.6,3.0,4.1,1.3,2 5.5,2.5,4.0,1.3,2 5.5,2.6,4.4,1.2,2 6.1,3.0,4.6,1.4,2 5.8,2.6,4.0,1.2,2

BP神经网络模型应用实例

BP神经网络模型 第1节基本原理简介 近年来全球性的神经网络研究热潮的再度兴起,不仅仅是因为神经科学本身取得了巨大的进展.更主要的原因在于发展新型计算机和人工智能新途径的迫切需要.迄今为止在需要人工智能解决的许多问题中,人脑远比计算机聪明的多,要开创具有智能的新一代计算机,就必须了解人脑,研究人脑神经网络系统信息处理的机制.另一方面,基于神经科学研究成果基础上发展出来的人工神经网络模型,反映了人脑功能的若干基本特性,开拓了神经网络用于计算机的新途径.它对传统的计算机结构和人工智能是一个有力的挑战,引起了各方面专家的极大关注. 目前,已发展了几十种神经网络,例如Hopficld模型,Feldmann等的连接型网络模型,Hinton等的玻尔茨曼机模型,以及Rumelhart等的多层感知机模型和Kohonen的自组织网络模型等等。在这众多神经网络模型中,应用最广泛的是多层感知机神经网络。多层感知机神经网络的研究始于50年代,但一直进展不大。直到1985年,Rumelhart等人提出了误差反向传递学习算法(即BP算),实现了Minsky的多层网络

设想,如图34-1所示。 BP 算法不仅有输入层节点、输出层节点,还可有1个或多个隐含层节点。对于输入信号,要先向前传播到隐含层节点,经作用函数后,再把隐节点的输出信号传播到输出节点,最后给出输出结果。节点的作用的激励函数通常选取S 型函数,如 Q x e x f /11)(-+= 式中Q 为调整激励函数形式的Sigmoid 参数。该算法的学习过程由正向传播和反向传播组成。在正向传播过程中,输入信息从输入层经隐含层逐层处理,并 传向输出层。每一层神经元的状态只影响下一层神经

BP神经网络matlab实例

神经网络Matlab p=p1';t=t1'; [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t); %原始数据归一化net=newff(minmax(pn),[5,1],{'tansig','purelin'},'traingdx');%设置网络,建立相应的BP网络 net.trainParam.show=2000; % 训练网络 net.trainParam.lr=0.01; net.trainParam.epochs=100000; net.trainParam.goal=1e-5; [net,tr]=train(net ,pn,tn); %调用TRAINGDM算法训练BP网络 pnew=pnew1'; pnewn=tramnmx(pnew,minp,maxp); anewn=sim(net,pnewn); %对BP网络进行仿真 anew=postmnmx(anewn,mint,maxt); %还原数据 y=anew'; 1、BP网络构建 (1)生成BP网络 = net newff PR S S SNl TF TF TFNl BTF BLF PF (,[1 2...],{ 1 2...},,,) R?维矩阵。 PR:由R维的输入样本最小最大值构成的2

S S SNl:各层的神经元个数。 [1 2...] TF TF TFNl:各层的神经元传递函数。 { 1 2...} BTF:训练用函数的名称。 (2)网络训练 = [,,,,,] (,,,,,,) net tr Y E Pf Af train net P T Pi Ai VV TV (3)网络仿真 = [,,,,] (,,,,) Y Pf Af E perf sim net P Pi Ai T {'tansig','purelin'},'trainrp' BP网络的训练函数 训练方法训练函数 梯度下降法traingd 有动量的梯度下降法traingdm 自适应lr梯度下降法traingda 自适应lr动量梯度下降法traingdx 弹性梯度下降法trainrp Fletcher-Reeves共轭梯度法traincgf Ploak-Ribiere共轭梯度法traincgp Powell-Beale共轭梯度法traincgb 量化共轭梯度法trainscg 拟牛顿算法trainbfg 一步正割算法trainoss Levenberg-Marquardt trainlm

(完整版)BP神经网络matlab实例(简单而经典)

p=p1';t=t1'; [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t); %原始数据归一化 net=newff(minmax(pn),[5,1],{'tansig','purelin'},'traingdx');%设置网络,建立相应的BP网络net.trainParam.show=2000; % 训练网络 net.trainParam.lr=0.01; net.trainParam.epochs=100000; net.trainParam.goal=1e-5; [net,tr]=train(net ,pn,tn); %调用TRAINGDM算法训练BP 网络 pnew=pnew1'; pnewn=tramnmx(pnew,minp,maxp); anewn=sim(net,pnewn); %对BP网络进行仿真 anew=postmnmx(anewn,mint,maxt); %还原数据 y=anew'; 1、BP网络构建 (1)生成BP网络 = net newff PR S S SNl TF TF TFNl BTF BLF PF (,[1 2...],{ 1 2...},,,) PR:由R维的输入样本最小最大值构成的2 R?维矩阵。 S S SNl:各层的神经元个数。 [ 1 2...] { 1 2...} TF TF TFNl:各层的神经元传递函数。 BTF:训练用函数的名称。 (2)网络训练 [,,,,,] (,,,,,,) = net tr Y E Pf Af train net P T Pi Ai VV TV (3)网络仿真 = [,,,,] (,,,,) Y Pf Af E perf sim net P Pi Ai T {'tansig','purelin'},'trainrp'

BP神经网络实例

BP神经网络实例

智能控制 第一章BP神经网络基本原理 一、BP神经网络基本概念 1、人工神经网络 人工神经网络ANN(Artificial Neural Network),是对人类大脑系统的一阶特性的一种描述。简单地讲,它是一个数学模型,可以用电子线路来实现,也可以用计算机程序来模拟,是人工智能研究地一种方法。近年来发展迅速并逐渐成熟的一种人工智能技术,其来源于对神经元细胞的模拟。人工神经网络具有以下三个特点:信息分布表示,运算全局并行与局部操作,信息非线性处理。由于这三个特点,使得由人工神经网络构成的分类器具有强大的数据拟和与泛化能力,因而广泛运用于模式识别与机器学习领域。 神经网络模式识别的过程分为两步:首先是学习过程,通过大量的训练样本,对网络进行训练,根据某种学习规则不断对连接权值进行调节,然后使网络具有某种期望的输出,这种输出就可以将训练样本正确分类到其所属类别中去,此时可以认为网络是学习到了输入数据或样本间的内在规律。接下来是分类过程,应用前面学习过程所训练好的权值,对任意送入网络的样本进行分类。 人工神经网络模型各种各样,目前已有数十种。他们从各个角度对生物神经系统的不同层次进行了描述和模拟。代表模型有感知机、多层映射BP网、RBF 网络、HoPfiled模型、Boit~机等等。虽然人工神经网络有很多模型,但按神经元的连接方式只有两种型态:没有反馈的前向网络和相互结合型网络。前向网络是多层映射网络,每一层中的神经元只接受来自前一层神经元的信号,因此信号的传播是单方向的。BP网络是这类网络中最典型的例子。在相互结合型网络中,任意两个神经元都可能有连接,因此输入信号要在网络中往返传递,从某一初态开始,经过若干变化,渐渐趋于某一稳定状态或进入周期震荡等其它状态,这方面典型的网络有Hopfiled模型等。 1

2019神经网络实学习 例子.doc

神经网络实学习例子 1通过神经网络滤波和信号处理,传统的sigmoid函数具有全局逼近能力,而径向基rbf函数则具有更好的局部逼近能力,采用完全正交的rbf径向基函 数作为激励函数,具有更大的优越性,这就是小波神经网络,对细节逼近能力 更强。 BP网络的特点①网络实质上实现了一个从输入到输出的映射功能,而数学 理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解 内部机制复杂的问题。我们无需建立模型,或了解其内部过程,只需输入,获 得输出。只要BPNN结构优秀,一般20个输入函数以下的问题都能在50000次 的学习以内收敛到最低误差附近。而且理论上,一个三层的神经网络,能够以 任意精度逼近给定的函数,这是非常诱人的期望;②网络能通过学习带正确答 案的实例集自动提取"合理的"求解规则,即具有自学习能力;③网络具有一定 的推广、概括能力。bp主要应用回归预测(可以进行拟合,数据处理分析,事 物预测,控制等)、分类识别(进行类型划分,模式识别等),在后面的学习中,都将给出实例程序。但无论那种网络,什么方法,解决问题的精确度都无法打 到100%的,但并不影响其使用,因为现实中很多复杂的问题,精确的解释是毫 无意义的,有意义的解析必定会损失精度。BP注意问题1、BP算法的学习速度 很慢,其原因主要有:a由于BP算法本质上为梯度下降法,而它所要优化的目 标函数又非常复杂,因此,必然会出现"锯齿形现象",这使得BP算法低效; 结论4:由上表可以看出,后者的初始权值比较合适些,因此训练的时间 变短, 误差收敛速度明显快些。因此初始权值的选取对于一个网络的训练是很重 要的。 1.4,用最基本的BP算法来训练BP神经网络时,学习率、均方 误差、权值、阈值的设置都对网络的训练均有影响。综合选取合理的值, 将有

BP神经网络的设计实例(MATLAB编程)资料

神经网络的设计实例(MATLAB编程) 例1 采用动量梯度下降算法训练BP 网络。 训练样本定义如下: 输入矢量为 p =[-1 -2 3 1 -1 1 5 -3] 目标矢量为t = [-1 -1 1 1] 解:本例的MATLAB 程序如下: close all clear echo on clc % NEWFF——生成一个新的前向神经网络 % TRAIN——对BP 神经网络进行训练 % SIM——对BP 神经网络进行仿真 pause % 敲任意键开始 clc % 定义训练样本 P=[-1, -2, 3, 1; -1, 1, 5, -3]; % P 为输入矢量 T=[-1, -1, 1, 1]; % T 为目标矢量 pause; clc % 创建一个新的前向神经网络 net=newff(minmax(P),[3,1],{'tansig','purelin'},'traingdm') % 当前输入层权值和阈值 inputWeights=net.IW{1,1} inputbias=net.b{1} % 当前网络层权值和阈值 layerWeights=net.LW{2,1} layerbias=net.b{2} pause clc % 设置训练参数 net.trainParam.show = 50; net.trainParam.lr = 0.05; net.trainParam.mc = 0.9; net.trainParam.epochs = 1000; net.trainParam.goal = 1e-3; pause clc % 调用TRAINGDM 算法训练BP 网络 [net,tr]=train(net,P,T);

BP神经网络详细讲解

PS:这篇介绍神经网络是很详细的,有一步一步的推导公式!神经网络是DL(深度学习)的基础。 如果对神经网络已经有所了解,可以直接跳到“三、BP算法的执行步骤“ 部分,算法框架清晰明了。 另外,如果对NN 很感兴趣,也可以参阅最后两篇参考博文,也很不错! 学习是神经网络一种最重要也最令人注目的特点。在神经网络的发展进程中,学习算法的研究有着十分重要的地位。目前,人们所提出的神经网络模型都是和学习算法相应的。所以,有时人们并不去祈求对模型和算法进行严格的定义或区分。有的模型可以有多种算法.而有的算法可能可用于多种模型。不过,有时人们也称算法为模型。 自从40年代Hebb提出的学习规则以来,人们相继提出了各种各样的学习算法。其中以在1986年Rumelhart等提出的误差反向传播法,即BP(error BackPropagation)法影响最为广泛。直到今天,BP算法仍然是自动控制上最重要、应用最多的有效算法。 1.2.1 神经网络的学习机理和机构 在神经网络中,对外部环境提供的模式样本进行学习训练,并能存储这种模式,则称为感知器;对外部环境有适应能力,能自动提取外部环境变化特征,则称为认知器。 神经网络在学习中,一般分为有教师和无教师学习两种。感知器采用有教师信号进行学习,而认知器则采用无教师信号学习的。在主要神经网络如BP网络,Hopfield网络,ART网络和Kohonen 网络中;BP网络和Hopfield网络是需要教师信号才能进行学习的;而ART网络和Kohonen网络则无需教师信号就可以学习。所谓教师信号,就是在神经网络学习中由外部提供的模式样本信号。 一、感知器的学习结构 感知器的学习是神经网络最典型的学习。 目前,在控制上应用的是多层前馈网络,这是一种感知器模型,学习算法是BP法,故是有教师学习算法。 一个有教师的学习系统可以用图1—7表示。这种学习系统分成三个部分:输入部,训练部和输出部。

BP神经网络预测实例

%% 清空环境变量 clc clear %% 训练数据预测数据 data=importdata('test.txt'); %从1到768间随机排序 k=rand(1,768); [m,n]=sort(k); %输入输出数据 input=data(:,1:8); output =data(:,9); %随机提取500个样本为训练样本,268个样本为预测样本input_train=input(n(1:500),:)'; output_train=output(n(1:500),:)'; input_test=input(n(501:768),:)'; output_test=output(n(501:768),:)'; %输入数据归一化 [inputn,inputps]=mapminmax(input_train); %% BP网络训练 % %初始化网络结构 net=newff(inputn,output_train,10);

net.trainParam.epochs=1000; net.trainParam.lr=0.1; net.trainParam.goal=0.0000004; %% 网络训练 net=train(net,inputn,output_train); %% BP网络预测 %预测数据归一化 inputn_test=mapminmax('apply',input_test,inputps); %网络预测输出 BPoutput=sim(net,inputn_test); %% 结果分析 %根据网络输出找出数据属于哪类 BPoutput(find(BPoutput<0.5))=0; BPoutput(find(BPoutput>=0.5))=1; %% 结果分析 %画出预测种类和实际种类的分类图 figure(1) plot(BPoutput,'og') hold on plot(output_test,'r*'); legend('预测类别','输出类别') title('BP网络预测分类与实际类别比对','fontsize',12)

BP神经网络原理及应用

BP神经网络原理及应用 1 人工神经网络简介 1.1生物神经元模型 神经系统的基本构造是神经元(神经细胞),它是处理人体内各部分之间相 互信息传递的基本单元。据神经生物学家研究的结果表明,人的大脑一般有1011 个神经元。每个神经元都由一个细胞体,一个连接其他神经元的轴突1010 和一些向外伸出的其它较短分支——树突组成。轴突的功能是将本神经元的输出信号(兴奋)传递给别的神经元。其末端的许多神经末梢使得兴奋可以同时送给多个神经元。树突的功能是接受来自其它神经元的兴奋。神经元细胞体将接受到的所有信号进行简单地处理后由轴突输出。神经元的树突与另外的神经元的神经末梢相连的部分称为突触。 1.2人工神经元模型 神经网络是由许多相互连接的处理单元组成。这些处理单元通常线性排列成组,称为层。每一个处理单元有许多输入量,而对每一个输入量都相应有一个相关 联的权重。处理单元将输入量经过加权求和,并通过传递函数的作用得到输出量,再传给下一层的神经元。目前人们提出的神经元模型已有很多,其中提出最早且影 响最大的是1943年心理学家McCulloch和数学家Pitts在分析总结神经元基本特

性的基础上首先提出的M-P 模型,它是大多数神经网络模型的基础。 )()(1∑=-=n i j i ji j x w f t Y θ (1.1) 式(1.1)中为神经元单元的偏置(阈值),ji w 为连接权系数(对于激发状态, ji w 取正值,对于抑制状态,ji w 取负值) ,n 为输入信号数目,j Y 为神经元输出,t 为时间,f()为输出变换函数,有时叫做激发或激励函数,往往采用0和1二值函数或S形函数。 1.3人工神经网络的基本特性 人工神经网络由神经元模型构成;这种由许多神经元组成的信息处理网络具有并行分布结构。每个神经元具有单一输出,并且能够与其它神经元连接;存在许多(多重)输出连接方法,每种连接方法对应一个连接权系数。严格地说,人工神经网络是一种具有下列特性的有向图: (1)对于每个节点存在一个状态变量xi ; (2)从节点i 至节点j ,存在一个连接权系数wji ; (3)对于每个节点,存在一个阈值; (4)对于每个节点,定义一个变换函数(,,),j i ji j f x w i j θ≠,对于最一般的情况,此函数取()j ji i j i f w x θ-∑形式。 1.4 人工神经网络的主要学习算法 神经网络主要通过两种学习算法进行训练,即指导式(有师)学习算法和非指导式(无师)学习算法。此外,还存在第三种学习算法,即强化学习算法;可把它看做有师学习的一种特例。 (1)有师学习 有师学习算法能够根据期望的和实际的网络输出(对应于给定输入)间的差来调整神经元间连接的强度或权。因此,有师学习需要有个老师或导师来提供期望或目标输出信号。有师学习算法的例子包括规则、广义规则或反向传播算法以及LVQ 算法等。 (2)无师学习 无师学习算法不需要知道期望输出。在训练过程中,只要向神

BP神经网络的matlab实现学习历程

考拉BP神经网络的matlab实现学习历程(一) 考拉BP神经网络的matlab实现学习历程(一) 本文《考拉BP神经网络的matlab实现学习历程》系列由论坛超级版主akjuan整理和原创,我们在此表示特别感谢 这两天在学习bp,总结和汇报一下,和大家一起学习。希望初入神经网络能有所收获,给新手一些帮组和启发。也希望熟悉bp的高手,多提宝贵意见和建议。 学习内容总结成五个小节,具体内容如下: 第一节内容:包括神经网络的基础知识,BP网络的特点,bp主要应用的场合,使用时应注意的问题。 第二节内容:主要是阐述BP中几个容易混绕的概念和问题,包括什么是网络的泛化能力?过拟合是什么,怎么处理?学习速率有什么作用?神经网络的权值和阈值分别是个什么概念?用BP逼近非线性函数,如何提高训练精度? 第三节内容:主要阐述使用matlab实现,为了充分利用数据,得到最优的网络训练结果,在网络建立前,应该进行的基本数据处理问题,包括:BP神经网络matlab实现的基本步骤,数据归一化问题和方法,输入训练数据的乱序排法,以及分类方法,如何查看和保存训练的结果,每次结果不一样问题。 第四节内容:bp神经网络进行交通预测的Matlab例子及源代码,bp神经网络进行交通预测的Matlab程序的优化(主要是按设置误差要求,寻找最优网络过程) 第五节内容:bp神经网络处理蠓虫分类问题的matlab例子及源代码。 不多说,先如主题,第一节,很基础,高手见谅。 什么是神经网络? 神经网络是由很多神经元组成的,首先我们看一下,什么是神经元 上面这个图表示的就是一个神经元,我们不管其它书上说的那些什么树突,轴突的。我用个比较粗浅的解释,可能不太全面科学,但对初学者很容易理解: 1、我们把输入信号看成你在matlab中需要输入的数据,输进去神经网络后 2、这些数据的每一个都会被乘个数,即权值w,然后这些东东与阀值b相加后求和得到u, 3、上面只是线性变化,为了达到能处理非线性的目的,u做了个变换,变换的规则和传输函数有关

BP神经网络模型应用实例

第1节基本原理简介 近年来全球性的神经网络研究热潮的再度兴起,不仅仅是因为神经科学本身取得了巨大的进展.更主要的原因在于发展新型计算机和人工智能新途径的迫切需要.迄今为止在需要人工智能解决的许多问题中,人脑远比计算机聪明的多,要开创具有智能的新一代计算机,就必须了解人脑,研究人脑神经网络系统信息处理的机制.另一方面,基于神经科学研究成果基础上发展出来的人工神经网络模型,反映了人脑功能的若干基本特性,开拓了神经网络用于计算机的新途径.它对传统的计算机结构和人工智能是一个有力的挑战,引起了各方面专家的极大关注. 目前,已发展了几十种神经网络,例如Hopficld 模型,Feldmann等的连接型网络模型,Hinton等的玻尔茨曼机模型,以及Rumelhart等的多层感知机模型和Kohonen的自组织网络模型等等。在这众多神经网络模型中,应用最广泛的是多层感知机神经网络。多层感知机神经网络的研究始于50年代,但一直进展不大。直到1985年,Rumelhart等人提出了误差反向传递学习算法(即BP算),实现了Minsky的多层网络设想,如图34-1所示。

BP 算法不仅有输入层节点、输出层节点,还可有1个或多个隐含层节点。对于输入信号,要先向前传播到隐含层节点,经作用函数后,再把隐节点的输出信号传播到输出节点,最后给出输出结果。节点的作用的激励函数通常选取S 型函数,如 式中Q 为调整激励函数形式的Sigmoid 参数。该算法的学习过程由正向传播和反向传播组成。在正向传播过程中,输入信息从输入层经隐含层逐层处理,并传向输出层。每一层神经元的状态只影响下一层神经 元的状态。如果输出层得不到期望的输出,则转入反

BP神经网络matlab实例(简单而经典)

1、BP网络构建 (1)生成BP网络 net newff PR S S SNl TF TF TFNl BTF BLF PF = (,[1 2...],{ 1 2...},,,) R?维矩阵。 PR:由R维的输入样本最小最大值构成的2 S S SNl:各层的神经元个数。 [1 2...] TF TF TFNl:各层的神经元传递函数。 { 1 2...} BTF:训练用函数的名称。 (2)网络训练 net tr Y E Pf Af train net P T Pi Ai VV TV = [,,,,,] (,,,,,,) (3)网络仿真 = Y Pf Af E perf sim net P Pi Ai T [,,,,] (,,,,) BP网络的训练函数 训练方法训练函数 梯度下降法traingd 有动量的梯度下降法traingdm 自适应lr梯度下降法traingda 自适应lr动量梯度下降法traingdx 弹性梯度下降法trainrp Fletcher-Reeves共轭梯度法traincgf Ploak-Ribiere共轭梯度法traincgp Powell-Beale共轭梯度法traincgb 量化共轭梯度法trainscg 拟牛顿算法trainbfg 一步正割算法trainoss Levenberg-Marquardt trainlm BP网络训练参数 训练参数参数介绍训练函数 net.trainParam.epochs最大训练次数(缺省为10)traingd、traingdm、traingda、 traingdx、trainrp、traincgf、 traincgp、traincgb、trainscg、 trainbfg、trainoss、trainlm net.trainParam.goal训练要求精度(缺省为0)traingd、traingdm、traingda、 traingdx、trainrp、traincgf、 traincgp、traincgb、trainscg、 trainbfg、trainoss、trainlm net.trainParam.lr学习率(缺省为0.01)traingd、traingdm、traingda、 traingdx、trainrp、traincgf、

BP神经网络matlab实例简单而

精心整理p=p1';t=t1'; [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t);%原始数据归一化 net=newff(minmax(pn),[5,1],{'tansig','purelin'},'traingdx');%设置网络,建立相应的BP网络 %训练网络 [net,tr]=train(net,pn,tn);%调用TRAINGDM算法训练BP网络 pnew=pnew1'; pnewn=tramnmx(pnew,minp,maxp); anewn=sim(net,pnewn);%对BP网络进行仿真 anew=postmnmx(anewn,mint,maxt);%还原数据

2、BP网络举例 举例1、 %traingd clear; clc; P=[-1-1224;05057]; T=[-1-111-1]; %利用minmax函数求输入样本范围 net=newff(minmax(P),T,[5,1],{'tansig','purelin'},'trainrp'); 0.1336-0.2013-0.4344-0.5000-0.3930-0.1647-.0988... 0.30720.39600.34490.1816-0.312-0.2189-0.3201]; figure; plot(X,D,'*');%绘制原始数据分布图(附录:1-1) net=newff([-11],[51],{'tansig','tansig'}); 0;%训练的最大次数 =0.005;%全局最小误差 net=train(net,X,D); O=sim(net,X); figure; plot(X,D,'*',X,O);%绘制训练后得到的结果和误差曲线(附录:1-2、1-3)V=net.iw{1,1};%输入层到中间层权值

相关文档
最新文档