立即咨询在线客服

科技

您现在的位置: > 论文欣赏 > 科技 >

浅谈基于PSO-BP与RBF神经网络的蔬菜价格组合预测

  蔬菜是人类生活所需的主要副食品,蔬菜产业已经成为农民增收的重要渠道。至2013年底,全国蔬菜种植面积达1.65亿hm2,占农作物总种植面积的13%,其中上海、福建、海南、广东、浙江、北京的蔬菜种植面积均占其农作物总种植面积的25%以上。受自然气候、生产资料、市场供应及监管等多种因素影响,蔬菜价格波动较大,生产者缺乏市场信息的指引,盲目种植;农业行政部门缺少准确的价格预测信息,难以做出事前调控;消费者在价格波动频繁时容易产生恐慌心理,加速价格波动的恶性循环。蔬菜价格的准确预测,可以有效指引农户生产决策,减少消费者经济损失。鉴于蔬菜价格波动的复杂性,国内部分学者引入智能分析预测方法,李干琼等以全国西红柿日、周、月度批发价格为样本进行BP神经网络短期预测,张劲珊等以农贸市场青菜月度价格建立反向传播算法的人工神经网络预测模型,孙素芬等采用香菇市场月度价格数据建立RBF神经网络模型,罗长寿采用香菇月度价格数据在BP神经网络模型、基于遗传算法的神经网络模型、RBF神经网络模型的基础上建立了一种集成预测模型,崔利国等以大白菜日度零售价格为样本构建一般混沌-RBF神经网络模型、基于遗传算法优化的混沌-RBF神经网络模型和基于粒子群算法优化的混沌-RBF神经网络模型。由于BP神经网络本身存在对初始权值敏感、容易陷入局部极小值等缺陷,遗传算法和粒子群算法逐渐被用来优化神经网络,现有研究中运用粒子群算法优化BP神经网络来预测蔬菜价格的还很少,该研究运用线性规划方法将基于粒子群优化的BP神经网络模型和RBF神经网络模型进行线性组合,对蔬菜价格进行预测。

  1 材料与方法

  1.1 数据来源

  蔬菜价格的波动受种植计划、生产成本、流通成本、销售渠道、季节及自然灾害等因素的综合影响,将各因素的波动情况加入到模型模拟过程中,使预测结果更合理更精确。

  选取青椒零售市场价格为研究对象。数据来源于海南省儋州市四大零售市场2012年1月上旬到2015年3月下旬的青椒旬价格及当期复合肥、草甘膦、93号汽油价格,共117组数据,其中100组作为训练样本,17组作为测试样本。

  青椒是儋州市主要蔬菜品种,近年旬价格波动情况。自2012年以来,青椒价格走势基本相同,主要受淡旺季生产影响。儋州市每年的5—10月是蔬菜生产淡季,11月至翌年4月是蔬菜生产旺季。1、2月虽然是本地蔬菜生产旺季,但适逢春节需求拉动,价格维持在较高位,春节过后则回落明显;3、4月为全年价格最低点;5—10月由于高温多雨、台风等自然灾害影响,本地蔬菜生产受阻,供应量锐减,价格涨势明显;11月本地蔬菜陆续上市,价格逐渐回落。

  1.2 研究方法

  1.2.1 粒子群优化BP神经网络算法 粒子群优化算法(Particle Swarm Optimization,PSO)是计算智能领域除了蚁群算法、鱼群算法之外的一种群体智能的优化算法。算法中,每个粒子代表问题的一个潜在解,每个粒子对应一个由适应度函数决定的适应度值,粒子的速度决定了粒子移动的方向和距离,速度随自身及其它粒子的移动经验进行动态调整,从而实现个体在可解空间中的寻优。假设在一个D 维的搜索空间中,有n个粒子组成的种群X=(X1,X2,…,Xn),其中第i个粒子表示为一个D 维的向量Xi=[Xi1,Xi2,…,XiD]T,代表第i个粒子在D 维搜索空间中的位置,亦代表问题的一个潜在解。根据目标函数即可计算出每个粒子位置Xi对应的适应度值。第i个粒子的速度为Vi=[Vi1,Vi2,…,ViD]T,其个体极值为Pi=[Pi1,Pi2,…,PiD]T,种群的全局极值为Pg=[Pg1,Pg2,…,PgD]T。在每一次迭代过程中,粒子通过个体极值和全局极值更新自身的速度和位置.BP(Back Propagation)神经网络是一种按误差逆传播算法训练的多层前馈网络,主要特点是信息正向传递,误差反向传播。其算法的实质是求解误差函数的最小值问题,由于它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,存在收敛速度缓慢、容易陷入局部极小值等问题。PSO算法具有较强的全局寻优能力,能极大地提高BP神经网络的泛化能力。

  PSO优化BP神经网络的具体步骤如下:1)初始化BP神经网络结构,设定网络的输入层、输出层的神经元个数,设置网络参数,通过试算确定最佳隐含层神经元个数;2)设置PSO算法的运行参数,随机初始化粒子位置和粒子速度,确定粒子群规模、微粒个体的维数,将微粒映射为对应的权值与阈值;3)根据实测值和预测值之间的均值误差适应度函数计算每个初始粒子的适应度值,即预测输出与期望输出的均方误差,寻找个体极值和群体极值;4)更新每个个体粒子的速度和位置,重新计算粒子适应度值,并且根据新粒子的适应度值更新个体极值和群体极值,直到满足条件为止,否则继续进行个体更新;5)将得到的最优个体位置作为BP神经网络的权值和阈值,对研究对象进行网络训练和预测。

  1.2.2 RBF神经网络算法 RBF神经网络属于前向神经网络类型,逼近能力、分类能力和学习速率等方面均优于BP网络。网络结构有3层:第一层为输入层,由信号源节点组成;第二层为隐藏层,隐藏层节点数视所描述问题的需要而定,隐藏层中神经元的变换函数即径向基函数是对中心点径向对称且衰减的非负线性函数。该函数是局部响应函数,而以前的前向网络变换函数都是全局响应函数;第三层为输出层,它对输入模式做出响应。RBF网络的基本思想是:用RBF作为隐单元的”基”构成隐藏层空间,隐含层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分的问题在高维空间内线性可分。RBF神经网络中常用的径向基函数是高斯函数.

  2 结果与分析

  2.1 粒子群优化BP神经网络预测

  将已知的117旬的数据中前100旬用于网络训练,后17旬数据用于网络测试,训练模型采用3层神经网络,输入节点包括青椒旬零售价格、复合肥旬价格、草甘膦旬价格和93号汽油旬价格,输出节点为青椒零售价格,隐含层节点数经试算确定为3,即网络结构为4-3-1,学习率为0.05,训练次数为100,训练误差目标为0.000 01,粒子群规模为30,进化次数为100,粒子速度最大值为1,粒子位置最大值为5。可以看出,粒子群优化算法的寻优能力较强,在迭代初期寻优较快,后期仍在不算搜索更新,能够跳出局部极小值,得到更优的结果。

  把粒子群算法得到的最优初始权值和阈值赋给BP神经网络,用训练数据训练100次后的预测结果.

  2.2 RBF神经网络预测

  为了提高训练能力,采用二维三次插值法对100组训练样本做插值,然后复原样本。设置网络参数,误差容限为1e-8,扩散因子为22,神经元个数为101,创建径向基神经网络.

  2.3 线性组合预测

  采用线性规划方法,计算基于粒子群优化的BP神经网络预测模型和基于RBF神经网络的预测模型的加权系数分别为0.832 7和0.167 3,即可得到线性组合预测模型。为了对比模型组合前后的预测效果,采用绝对误差和、均方误差作为判断依据,预测精度见表1。从单项模型的预测结果来看,RBF神经网络的绝对误差和比PSO优化的BP神经网络小,均方误差则偏大。这2种单项模型经过线性组合后,绝对误差和、均方误差均低于各单项模型,说明线性组合预测模型提高了蔬菜价格的预测精度。在单项神经网络训练及测试效果较好的情况下,保存当前网络,将最新输出作为输入,经过归一化、预测、反归一化,输出单项预测结果,然后将单项预测结果进行线性组合,即可输出下期蔬菜价格预测值。

  3 结论

  该研究针对蔬菜市场价格波动的复杂性,分别建立了基于粒子群优化BP神经网络的蔬菜价格预测模型、基于RBF神经网络的蔬菜价格预测模型以及基于这2种模型的线性组合预测模型,对蔬菜价格进行模拟预测。结果表明,2种单项预测模型在蔬菜价格预测上的应用效果都较好,且在不同评价指标上各有优势。将这2种模型的预测结果进行线性组合,可以使各单项模型优势互补,拟合效果明显优于各单项预测模型。