您好,欢迎访问三七文档
当前位置:首页 > 金融/证券 > 股票报告 > 基于GA-BP神经网络的矿石含量情况预测
基于GA-BP神经网络的矿石含矿情况预测1.研究现状神经网络可以处理信息源不完整、模糊不清,无法确定、存在矛盾假象等复杂情况,具有自学习能力,能够将困难的知识获取工作转换为网络的变结构和自调节过程,极大方便了信息的记忆和提取。BP神经网络具有学习、记忆和自适应等能力,能够有效地处理非线性、不确定性或模糊关系。BP神经网络的学习过程是根据已学习的知识和训练获得的经验,对复杂问题作出科学的判断和决策,提供较合理的答案,或对未知发生的情况做出有效的预测和估计。BP神经网络适合于预测估计、市场分析、系统诊断、事故检查、模糊评判等方面的应用。BP神经网络擅长局部搜索,但易陷于局部极小值点,而遗传算法擅长全局搜索,但局部搜索方面能力略显不足。所以,遗传算法与BP神经网络的结合,能够很好的实现优势互补。在预测、评价应用中常常把遗传算法与神经网络结合起来,利用各自的优点,弥补各自的不足,从而使预测效果更加科学、准确。遗传算法不仅可以对BP神经网络的连接权值进行优化,而且可以对网络结构和学习规则进行优化,但目前对网络结构和学习规则的优化理论还不成熟,难以实现。所以本文主要研究遗传算法对BP神经网络权值和阈值的优化。国内外学者将GA和BP神经网络相结合,建立预测、评价模型应用于环境质量评价,故障诊断,时间序列预测,风险评估等领域。借鉴国内外学者的研究成果,本文利用遗传算法对BP神经网络进行改进,并将其运用到矿石含矿情况预测当中。2.基本原理遗传算法优化BP神经网络权值与阈值的基本原理是:利用遗传算法中染色体的特性,对BP神经网络的权值和阈值进行编码,采用一定的方法生成初始群体,将BP神经网络的拟合误差代价函数作为遗传算法的适应度函数,通过遗传操作,对个体进行筛选,选择最佳染色体作为BP神经网络的权值和阈值。2.1遗传算法优化BP神经网络权值和阈值的主要步骤2.1.1、编码与初始种群的生产对网络的连接权进行编码。二进制编码和浮点数编码是最常用的编码方式。其中,二进制编码操作简单,但不直观,精度也不高;浮点数编码非常直观,精度也较高。在此选用浮点数编码方法对连接权进行编码。即将BP神经网络的权值和阈值按一定的顺序级联起来,形成一个浮点数数组,作为遗传算法的一个染色体。矿石含矿情况预测模型采用三层BP网络结构,设输入层、隐含层与输出层节点的个数分别为N,S和M,则编码的长度为RNSSMSM(1)随机产生X个长度为R的染色体,即形成初始种群。对于种群个数Y的确定,太大会导致网络收敛速度慢,太小会降低网络训练的精度。因此本文取Y值为20。2.1.2、适应度函数的确定将初始化种群中的R个连接权值赋予BP网络,进行输入信号的前向传播,计算网络的输出值与期望值之间的误差平方和E(i),设定适应度函数为:1(i)|ya|nkkkf(2)将遗传算法与BP网络的评估标准结合起来,误差绝对差值越小,适应度越高,即网络性能越好。2.1.3、遗传操作(1)选择釆用基于轮盘赌方法进行选择,即按照概率进行选择,概率大的个体被选中的概率大,概率小的个体被选中的概率小。(2)交叉遗传算法中最重要的操作是交叉算子,新的个体由种群通过交叉产生,不断扩大搜索空间,最终达到全局搜索的目的。交叉是将被选中的两个个体的基因链按一定的概率进行交叉,生成两个新的个体。由于本文采用浮点数编码,所以交叉算子采用的是浮点数型的算术交叉法。假定种群中1x和2x为父代个体,则由父代双亲产生的后代'1x和'2x为:'112'221(1a)x(1a)xxaxxax(3)交叉概率的值一般取0.1到0.99之间,本文取交叉概率为0.3。(3)变异为了维持种群的多样性,使用变异算子产生新个体。变异对于选中的个体以一定的概率随机地改变串结构数据中某个串的值。本文釆用非均匀变异,对原基因值做随机扰动,变异后的新基因值采用该扰动结果。以等概率对所有基因座进行一次少量的调整。变异概率的值取0.001到0.1之间。(4)新种群的产生用交叉和变异算子对原来的个体进行遗传操作后,产生新的个体,将新个体插入原种群中,生成新种群。计算新个体的适应度值,判断是否达到循环次数或优化标准,若是,则进入下一步,否则继续循环进行遗传操作。(5)BP神经网络初始权值的产生遗传算法达到所最大遗传代数或所设定的指标后,优化后的网络连接权值就是最终群体中的最优个体的解码值。2.2GA-BP神经网络的算法流程GA-BP神经网络算法的具体步骤为:Stepl、根据待解决问题,确定BP神经网络的初始结构;Step2、对BP神经网络进行预训练一定次数,取得初始权值和阈值的取值范围;Step3、对初始权值和阈值进行浮点数编码。初始化种群规模、进化代数等参数;Step4、确定其适应度函数。计算BP神经网络输出值与期望值之间的绝对差值,按输出值和期望值之间绝对差值的和作为适应度函数,计算个体i的适应度值f(i)。Step5、判断个体适应度是否满足优化标准,如果是,转向Step8;否则,顺序进行遗传操作。Step6、遗传操作。(1)选择。采用轮盘赌方法计算种群中各个体的适应度值,并将其排序。(2)其中,i=l,2,…,N为染色体数。(2)交叉。釆用算术交叉法按交叉概率进行交叉。(3)变异。采用非均勾变异按变异概率进行变异。Step7、产生新群体。重复Step3—Step6,使初始确定的权值和阈值不断优化,直到满足优化标准为止。Step8、将GA优化后得到的最优解解码,作为BP神经网络的最优权值和阈值。Step9、进行BP神经网络训练。(1)正向计算隐含层单元和输出单元输出。(2)计算输出单元误差,判断是否满足精度要求,如果满足,训练结束,转向Step10;否则,顺序进行BP神经网络训练。(3)反向调整隐含层到输出层、输入层到隐含层的连接权值和阈值。(4)判断是否达到训练次数,如果达到,训练结束,转向Step10;否则,转回Step9,重复进行BP神经网络训练。Step10、BP神经网络训练结束。综上,GA-BP神经网络由以下三个部分组成:1、确定BP神经网络结构(具体步骤中的Step1—Step2):根据待解决问题,确定遗传算法个体的长度。2、遗传算法优化BP神经网络(具体步骤中的Step3—Step7):用遗传算法对BP神经网络的初始权值和阈值编码,确定适应度函数,计算个体适应度值,通过遗传操作找到最优个体。3、BP神经网络训练(具体步骤中的Step8—Step10):将遗传算法优化后的最优解解码,作为BP神经网络的最优权值和阈值,对网络进行训练,以达到要求精度。图1GA-BP神经网络的算法流程图3.基于GA-BP神经网络的矿石含矿情况预测模型的建立1、BP网络的设计BP网络的设计主要考虑网络层数、各层神经元个数、传递函数、网络学习算法、初始的权值和阈值等。(1)网络层数GA-BP评价模型釆用与BP评价模型相同的三层BP神经网络结构。(2)隐含层节点个数GA-BP评价模型的输入和输出节点个数为20和1,隐含层节点个数为10个。GA-BP评价模型也是一个24101的预测模型。(3)传递函数矿石含矿情况预测的GA-BP神经网络在输入层和隐含层间采用tansig函数传递,隐含层和输出层采用purelin函数传递。(4)训练函数矿石含矿情况预测的BP评价模型采用Levenberg-Marquardt网络学习算法,因此矿石含矿情况预测的GA-BP神经网络也设定trainlm为训练函数。(5)初始权值由随机函数产生(-3,3)之间的随机数作为初始权值。2、GA优化BP神经网络权值和阐值的设计GA优化BP神经网络权值和阈值的设计主要考虑以下方面:(1)编码方式矿石含矿情况预测的GA-BP模型釆用遗传算法的目的是优化BP神经网络的权值和阈值,而BP神经网络的连接权值和阈值是浮点数,故选用浮点数编码方式对连接权值和阈值进行编码。根据(1),遗传算法的编码长度为2010101101221R(2)适应度函数的选择矿石含矿情况预测的GA-BP模型取BP神经网络误差绝对值和作为适应度函数,如公式(2)。(3)遗传操作的策略A、选择子代的策略GA-BP评价模型采用基于适应度的排序分配方法进行选择。具体操作为:然后对种群中所有个体按其适应度大小进行排序,每个个体被选中的概率有排序结果分配,适应值大的选择概率高,适应值小的选择概率低。B、交叉策略鉴于GA-BP评价模型釆用浮点数编码方式,故交叉操作釆用的是浮点数型的算术交叉法,如公式(3)。交叉概率的值取0.3。C、变异策略GA-BP评价模型采用非均匀变异。变异概率的值取0.005。4.实验与分析实验环境:Inter(R)Core(TM)i3-2310MCPU@2.10GHz4.00GB内存,500G硬盘软件环境:Win7,Matlab74.1实验数据集及预处理1.数据样本的采集训练样本的选择是矿石含矿情况预测的关键,训练样本的代表性及其准确性将直接影响网络训练及评价结果的准确性。本文中的数据来源于参考文献【1】,其中前22个作为矿石含矿情况训练数据,后8组作为待验证的测试数据。表1原始数据集定量变量地层岩性岩浆岩构造接触带类型PbZnCuMoSnNiCoV12345CsTxTwCPKRRRFNEFCTFCrsCrk709557815251257100100111111含矿5095141096279100000100010含矿1879381620596100100100011不含矿67523251010533000000101000不含矿3193152423355000000000000不含矿1801192661215539100010011100含矿239126058349010100100101含矿429726168138010000010000不含矿4410627599947000001001000不含矿80604224717280001100111101含矿14297326614359000000000000不含矿3710028367757000000000000不含矿11733169719201101010000001000不含矿2073225518475000000010000不含矿137315125634449100000000100含矿12920810965818744100000110110含矿72199165257229100001010100含矿4988430817194100100000100不含矿35739566119000000000000不含矿24283103012171274000000000000不含矿82812665282146010000000000不含矿207105925147543000000100000不含矿52116568622181000000100000含矿13511238121622476001000100000不含矿339043146421182010000100001含矿221121441118000000100000不含矿681565081114489100100110111含矿2411235142825457100100100111含矿68561407643000000100000不含矿117127438913170000000000000不含矿2.数据预处理为防止原始数据过大造成网络陷入局部极小值,训练网络之前,要对原始数据进行归一化处理。本文釆用极差归一化法(5)给输出数据进行反归一化。*(max(x)min(x))min(x)xx(5)3.参数设置表2BP模型参数设置网络结构训练函数隐含层传递函数输出层传递函数最大训练次数目标误差学习速率20-10-1TrainlmTansigPurelin1000.0010.01表3GA模型的参数设置基本参数种群大小染色体长度交叉概率变异概率进化终止代数赋值102210.30.01104.实验结果表4预测结果定量变量地层岩性岩浆岩构造接触带实际类型预测类型PbZnCuM
本文标题:基于GA-BP神经网络的矿石含量情况预测
链接地址:https://www.777doc.com/doc-2569757 .html