PSO优化BP神经网络岩爆预测的Matlab实现

2018-09-08 06:19肖雄武汉理工大学土木工程与建筑学院湖北武汉430070
中国房地产业 2018年17期
关键词:岩爆权值阈值

文/肖雄 武汉理工大学土木工程与建筑学院 湖北武汉 430070

本文利用Matlab 9.1.0 (R2016b)这一工具进行BP神经网络的运算并利用粒子群(PSO)进行网络的优化。相对遗传算法来说,粒子群优化BP神经网络就没有交叉、变异等复杂操作。PSO-BP网络模型避免了BP网络陷入局部最优、收敛慢等缺陷。建立了多个岩爆影响因素与岩爆程度之间的非线性映射关系,并得到了最优初始权值和阈值。然后利用网络进行训练,最后得出的结果与实际的岩爆程度一致。

1、基于粒子群算法的BP神经网络模型

1.1 BP神经网络与岩爆的结合

(1)BP算法流程分成两个部分:信息的正向传播和误差的反向传播。

(2)将影响岩爆的主要因素作为网络的输入层,并告知网络学习样本的期望输出,然后让网络计算出最优的初始权值和阈值。能够得到各个影响因素之间的权重关系。利用神经网络解决输入因子间的非线性关系,从而能够对岩爆的烈度进行分级且避免了主观因素的影响。

1.2 粒子群(PSO)优化算法

粒子群算法(Particle Swarm Optimizatio n,PSO),也称微粒群算法,它能够优化BP网络的关键一点是,能够找寻最优的初始随机权重和阈值。

对于PSO算法,所有粒子(假设N个)通过速度Vi =(vi1,vi2,.......,viD)更新其空间位置Xi =(xi1,xi2,...,xiD)。粒子根据如下公式更新速度和位置[1]:

2、PSO-BP 模型岩爆预测的Matlab实现

2.1 网络参数的选取与训练

本文的岩爆实际案例数据来源于文献[2],表1是训练网络所用的16个工程实际案例。通过公式(3)对样本数据的归一化处理,并进行网络的训练以后得到了当隐含层数为9时,所得到的网络误差最小为0.0711。样本数据归一化公式:

式中,xmin为样本输入数据中的最小数;xmax为样本输入数据中的最大数。

2.2 PSO-BP算法的工程实例

基于MATLAB9.1.0(R2016b)对PSOBP算法进行了编制[3],两个速度更新参数设置为c1=2,c2=2。由2.1节可知网络的输入层(indim)、隐含层(hiddennum)、输出层(outdim)分别为3、9、4。种群的进化次数也称粒子的维度可以由由公式(5)计算出来。公式如下:

得出粒子群的种群进化次数maxgen=76;种群规模设置为 sizepop=30。然后再将最优的权值w和阈值b赋予给BP网络,对国内外三组实际开挖岩爆的案例,来进行模型的验证。

2.3 不同预测方法结果的比较

将PSO-BP与经验判据岩爆预测的结果比较,如表1所示

通过表4的预测结果比较,某一个单一的经验判据来预测岩爆的结果是很不准确的,PSOBP综合多个岩爆影响因素所预测出来的结果和实际的岩爆程度很相近。

?

结论:

(1)传统经验判据预测岩爆导致预测精度不高,采用人工智能技术可以综合多个影响因素来预测岩爆的倾向性。

(2)利用Matlab强大的工具箱功能,能够实现BP网络从而解决问题的提高效率。

猜你喜欢
岩爆权值阈值
一种融合时间权值和用户行为序列的电影推荐模型
高速公路隧道施工岩爆的防治技术
使用声发射测试结果预判岩爆等级
深埋隧道TBM施工岩爆特征规律与防控技术
CONTENTS
采用红细胞沉降率和C-反应蛋白作为假体周围感染的阈值
基于岩体结构的岩爆预测方法研究
小波阈值去噪在深小孔钻削声发射信号处理中的应用
程序属性的检测与程序属性的分类
基于权值动量的RBM加速学习算法研究