神经网络与遗传算法预测充填配比的研究 | [PDF全文] |
反向传播神经网络(Back Propagation neural network)简称BPNN,是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。遗传算法(Genetic Algorithm,简称GA)它是作用在染色体的数字串上,模拟数字串群体进化过程的一种编码技术,在此过程中进行随机全局搜索和优化[1]。要用遗传算法对目标函数进行优化,需要目标函数的显式表达式,而工程问题一般都是非线性问题,BP神经网络能够提供非线性的函数关系。矿山充填配比优化研究方法主要有实验法,即通过正交实验或者均匀设计实验来获得,也有建立神经网络预测模型预测矿山所需充填配比方案[2-5]。对于大部分充填配比试验来说,实验目的是获得最大充填体单轴抗压强度下的最佳配比方案,这需要较多的时间和经费,才能获得较为满意的结果。神经网络遗传拥有极值寻优方面的优势,可以在有限的实验数据基础上,建立神经网络模型,再通过遗传算法寻找极值解,即最佳充填配比方案。其在实际工程中应用较为广泛,文献[6]采用神经网络遗传算法确定最优的矸石粉煤灰的配合比,文献[7]将生物进化过程和遗传算法原理用于似膏体充填材料的质量优化,文献[8]采用神经网络遗传算法用于固体废弃物膏体充填充填料浆质量的优化,在较少的实验次数下,获得了较好的配比,作者采用神经网络遗传算法对尾砂胶结充填配比进行预测,为矿山全尾砂充填配比提供技术参考。
1 模型建立简单的3层BP网络,如图 1所示,包括输入层(input)、隐层(hide layer)和输出层(output layer)。其神经网络的结构如图所示,输入层含有的神经元为x1、x2、x2、xn,隐层的神经元为z1、z2、z3、zj,输出层含有的神经元为y1、y2、y3、yk,以下公式中wij、θj分别为输入层与隐层间的连接权值和阈值,wjk、θk分别为隐层与输出层的连接权值和阈值,各层神经元的输出为:
输入层
xi=xi
隐层
$ {{z}_{i}}=f\left( \sum\limits_{i=1}^{n}{{{x}_{i}}{{w}_{ij}}} \right)=\frac{1}{1+\exp \left( -\sum\limits_{i=1}^{n}{{{x}_{i}}{{w}_{ij}}+{{\theta }_{i}}} \right)} $ |
输出层
$ {{\text{y}}_{i}}=f\left( \sum\limits_{i=1}^{n}{{{z}_{i}}{{w}_{ij}}} \right)=\frac{1}{1+\exp \left( -\sum\limits_{i=1}^{n}{{{z}_{i}}{{w}_{ij}}+{{\theta }_{k}}} \right)} $ |
训练网络时,学习样本数为P,其含有P组输入值与样本教师值tk,p1,网络学习的总误差为
$ E=\frac{1}{2}{{\sum\limits_{p1=1}^{p}{\sum\limits_{k=1}^{m}{\left( {{t}_{k,p1}}-{{y}_{k,p1}} \right)}}}^{2}} $ |
BP学习算法实质就是通过模拟的输出y与实际的t的误差分析来修改各层的连接权值,使学习的总误差达到最小。采用梯度下降的方法法来修正权值,对于每个wsq的修正值为
$ \Delta {{w}_{sq}}=-\sum\limits_{p1=1}^{p}{\eta \frac{{{\partial }_{\varepsilon }}}{{{\partial }_{{{\text{w}}_{\text{sq}}}}}}} $ |
BP网络各层的连接权值的修正的基本表达式为
$ \begin{align} & {{w}_{jk}}\left( n0+1 \right)={{w}_{jk}}(n0)+\eta \sum\limits_{p1=1}^{p}{{{\delta }_{jk,p1}}{{z}_{i,p1}}} \\ & {{w}_{\text{ij}}}\left( n0+1 \right)={{w}_{\text{ij}}}(n0)+\eta \sum\limits_{p1=1}^{p}{{{\delta }_{\text{ij},p1}}{{\text{x}}_{i,p1}}} \\ & \delta _{_{\text{jk}\text{p1}}}^{{}}=\left( {{t}_{k,p1}}-{{y}_{k,p1}} \right){{y}_{k,p1}}\left( 1-{{y}_{k,p1}} \right) \\ & \delta _{_{\text{ij}\text{p1}}}^{{}}=\sum\limits_{k=0}^{\text{m}}{{{\delta }_{jk,p1}}}w_{jk,p1}^{{}}{{z}_{j,p1}}\left( 1-z_{j,p1}^{{}} \right) \\ \end{align} $ |
神经网络遗传算法函数极值寻优主要分为BP神经网络训练拟合和遗传算法极值寻优两步,算法流程如图 2所示[9]。
2 实验步骤 2.1 BP神经网络样本
充填体的强度与灰砂比、养护天数、溶度等有关[10-13]。将胶结充填体的灰砂比、养护天数、溶度作为神经网络的输入数据,输出数据为充填体的单轴抗压强度,寻找在一定灰砂比、养护天数、溶度条件下,最大的充填体抗压强度。实验数据来至某矿山充填配比实验,其全尾砂充填体单轴抗压强度如表 1所示,采用的是325#水泥。从表中可以发现最大充填体抗压强度为5.48 MPa,对应的配比方案为灰砂比1:4,养护天数为28 d,溶度为75 %。
点击放大 |
2.2 神经网络的训练
本次数据共有75组,首先利用MATLAB将数据随机排列,使用随机排列的前60组数据建立神经网络模型,训练BP神经网络,用后15组训练数据训练网络,测试数据测试网络拟合性能,最后保存训练好的网络,用于计算个体适应度值。
3 结果分析 3.1 BP神经网络拟合结果分析本次输入参数为灰砂比、溶度、养护时间,输出参数为充填体的单轴抗压强度,按照文献资料选择3-8-1的神经网络结构[15-16]。共取非线性函数60组输入输出数据训练BP神经网络,随机排列后的后15组数据作为测试数据测试BP神经网络拟合性能,BP神经网络预测输出和期望输出对比如图 3所示。
从图 3可以看出,所建立的神经网络拟合性能不是很精准,从BP神经网络预测结果可以看出, 此次建立的BP神经网络不能准确预测不同实验条件下充填体的单轴抗压强度。神经网络预测最大误差在(0.2 0.3)之间,最小误差-0.6,如图 4所示,网络模型模拟值与样本实测值之间的误差在允许误差范围内。神经网络预测误差百分比如图 5所示,最大误差百分比在(-12 -14)之间,其余预测误差百分比在(2 -2)之间。
3.2 遗传算法寻优结果分析
神经网络具有简单可塑的优点,但是BP算法是基于梯度的方法,该方法收敛的速度较慢,而且容易陷入局部最小点问题。而遗传算法可以摆脱这种困境,其擅长全局寻优,两者结合,实现了优势互补[17]。其步骤如下[18]:
1)参数编码.参数编码目前主要有两种方法,一种是二进制编码,采用二进制将3个参数变量灰砂比、养护天数、溶度编码为一个染色体,该方法编码解码简单,遗传操作也方便。另一种方法是采用浮点编码编码方法,用某一范围的一个浮点来表示基因值,此方法具有较高的精度,采用此方法时个体编码的长度等于问题设计变量的个数。
2)适应度函数确定.本次目标函数为充填体的最大抗压强度,令F(x)为充填体抗压强度,F(x)总是为正值,可以直接设定适应度函数f(x)就等于相应的目标函数F(x)。
3)遗传算子.遗传算子主要包括串长、种群规模、交叉、变异。串长主要按照特定问题解的精度来选择,假设Kp代表灰砂比,其取值范围为(Kpmin,Kpmax),则其精度为
$ {\delta _p} = \frac{{Kpmax - Kpmin}}{{{2^{{l_p}}} - 1}} $ |
式中lp为串长。种群数量既不能太多也不能少,太多会增加计算量,太少难以到达极值点。一般选择n=20~200,拟选择种群规模为20。交叉概率Pc越大,引入新结构的速度也越快,优良基因的丢失速度也越大,交叉概率太小,会导致寻优滞后,一般取值在0.6~1.0范围内。变异概率Pm太小,可能使得某些基因信息无法恢复,概率太大,遗传寻优陷入随机搜索,一般取值0.005~0.01。
4)初始化种群.初始化种群就是给每个个体的编码值赋值,不同的编码方法有不同的赋值方法,对于浮点编码的个体则随机赋予[0 1]之间的任意数。
综上,拟设定遗传算法的迭代次数为100次, 种群规模为20,交叉概率0.85,变异概率0.01,采用浮点数编码,即个体长度为3,得到适应度变化曲线如图 6所示,最优个体适应度值为0.6777,对应的实验条件为[0.2024 5.8630 0.6780],与实际最佳配比方案灰砂比1:4、养护天数为28 d、溶度为75 %相差较大,预测结果不是很满意。分析遗传算法优化神经网络只是在概率上有更大可能获得全局最优,这种获得全局最优的概率与初始种群数、交叉变异操作、遗传代数等有关系。所以,从另一方面讲,在概率上,遗传算法也可能得不到全局最优解、或得到的是近似最优解。可以通过改变初始种群数、交叉变异操作、遗传代数等减少误差。
4 结论
通过对充填配比样本的神经网络建模,采用遗传算法对充填配比进行优化,本次神经网络遗传算法预测最优实验条件为灰砂比0.2024,养护时间5.863 d,溶度67.8 %,此条件下其充填体单轴抗压强度为0.6777 MPa。得到预测方案与实际最佳配比方案相差较大,说明该方法有较强的适用条件,神经网络预测精度严重影响遗传算法的极值寻优。数据样本少是影响神经网络精度的重要原因,建立扩大样本数量,但是无疑增加了实验次数,与最初的目标(在尽少的实验条件下获得最佳配比方案)相悖,没有较大的实际价值,但神经网络遗传算法在一定程度上为充填配比的优化提供了思路。
[1] | 唐军, 黄筱调, 方成刚.基于遗传算法和BP神经网络的花盘结构优化设计[J]. 机械设计与制造,2011 (7):27–29. |
[2] |
YU H H, SONG W D, TANG Y N, et al. Optimization of stope structure parameters and filling blending ratio for stage open stoping with subsequent filling[J].
Mining Research & Development, 2012,32 (6):10–14. |
[3] |
ZHANG Q, LI X P, YANG W. Optimization of filling slurry ratio in a mine based on back-propagation neural network[J].
Journal of Central South University, 2013,44 (7):2867–2874. |
[4] |
CUI X W, YAN R H, NA M R. Optimization research on tailings backfill ratio[J].
Modern Mining, 2014 (3):73–75. |
[5] |
HU X Y, LIU L, LI G H, et al. Ratio optimization on filling slurry of mine based on uniform experiments[J].
Mining Research & Development, 2015 (3):7–12. |
[6] | 王延国.基于遗传算法和神经网络的充填材料配比优化研究[J]. 科学与财富,2013 (10):274–276. |
[7] | 崔明义.用遗传算法原理对似膏体充填材料质量优化的研究[D].北京:中国矿业大学, 2002. |
[8] | 何荣军, 张丽, 周华强, 等.固体废弃物膏体充填料浆质量的神经网络研究[J]. 采矿与安全工程学报,2008,25 (3):352–356. |
[9] | MATLAB中文论坛. MATLAB神经网络30个案例分析[D].北京:北京航空航天大学出版社, 2010. http://www.oalib.com/references/18243572 |
[10] | 余斌.影响尾砂胶结充填体强度的若干因素分析[J]. 河北冶金,2001 (3):3–6. |
[11] | 罗建祥.影响胶结充填体强度的因素分析[J]. 甘肃冶金,2005,27 (2):24–25. |
[12] | 邓代强, 高永涛, 姚中亮.胶结充填材料力学特性影响因素回归分析[J]. 有色金属工程,2008,60 (4):120–124. |
[13] | 杨安国, 周宗红, 张秋华.胶结充填体抗压强度的影响因素分析[J]. 价值工程,2014 (23):80–81. |
[14] | 付建新, 杜翠凤, 宋卫东.全尾砂胶结充填体的强度敏感性及破坏机制[J]. 北京科技大学学报,2014 (9):1149–1157. |
[15] | 沈花玉, 王兆霞, 高成耀, 等.BP神经网络隐含层单元数的确定[J]. 天津理工大学学报,2008 (5):13–15. |
[16] | 龚婷, 郑明贵.基于BP神经网络的我国铜矿产资源需求情景分析[J]. 有色金属科学与工程,2014,5 (1):99–106. |
[17] | 苑希民.神经网络和遗传算法在水科学领域的应用[D].北京:中国水利水电出版社, 2002. http://www.oalib.com/references/17451682 |
[18] | 李秋生, 张策, 刘政华.基于神经网络和遗传算法的智能PID控制[J]. 计算机测量与控制,2007,15 (5):610–612. |