基于GA—SVM的物流园区物流需求预测及分析
2017-06-05孙逊
孙逊
[摘 要]文章基于支持向量机模型对物流园区物流需求进行预测,相较于传统的网格式搜索对支持向量机参数寻优,使用遗传算法对支持向量机参数寻优,能在实数集内连续地寻找最优参数组合,构建出GA-SVM物流需求预测模型。并通过成都市实例验证了GA-SVM预测模型的有效性。
[关键词]物流需求;预测;支持向量机;遗传算法
[DOI]10.13939/j.cnki.zgsc.2017.15.252
1 引 言
物流园区是构造良好物流环境的重要基础设施,物流园区的需求预测是物流园区规划体系中十分关键的环节,它是进行物流园区功能布局研究的前提和补充。国内外学者对物流需求预测方法研究大致分为以下两个阶段:第一阶段主要采用的方法是基于传统统计学的预测方法,主要包括:灰色模型[1]、线性回归模型[2]及时间序列模型[3]等。第二阶段在第一阶段的方法中引入人工智能技术,以改善预测模型的性能,主要包括:神经网络模型[4]和支持向量机模型[5]等。
在实际应用过程中,第一阶段的预测模型在处理高维度、非线性数据时,无法获得优质结果;而神经网络模型在学习样本数量有限时,学习过程误差易收敛于局部极小点,预测精度难以保证;学习样本变量很多时,又容易陷入维数灾难。由于影响机制复杂,考虑到支持向量机是建立在结构化风险最小化原则之上,可以有效地减少经验风险带来的影响,不仅对小样本数据表现出良好的拟合精度,还对独立的测试集表现出较小的误差,在一定程度上对学习机的泛化能力有所提升,而且支持向量机算法是一个凸优化问题,在物流需求预测方面具有较明显的优势,本文采用基于支持向量机学习理论的物流园区需求预测方法对成都市货运量进行预测。
支持向量机参数的选取直接影响模型的预测精度,传统的网格搜索参数组合已经无法满足对区域物流需求预测的精度要求,本文采用遗传算法对支持向量机进行参数寻优,构建GA-SVM区域物流需求预测模型,并对成都市物流需求进行预测,结果证明GA-SVM预测模型的预测精度要优于传统的SVM预测模型。
2 GA-SVM预测模型的算法设计
2.1 支持向量机
支持向量机(Support Vector Machine,SVM),是Vapnik在20世纪90年代中期以统计学为基础提出的一种新型机器学习方法,作为统计学理论中比较年轻和实用的理论,已经在实际应用中得到很大的发展,尤其是在小样本、非线性及高维分类和回归问题中表现出了比较出色的效果。
相较于多项式核函数和Sigmoid核函数,径向基核函数在先验知识不足的情况下,拥有更好的预测精度。因此,本文GA-SVM预测模型采用径向基核函数作为预测模型的核函数。则SVM模型的待优化参数有:核函数参数σ、不敏感函数参数和惩罚参数C。核函数参数σ是映射函数的参数,通过改变函数关系来影响映射的特征空间,表示映射规律的复杂程度;不敏感函数参数ε表示所能容忍的最高误差,影响支持向量的个数;惩罚参数C是在确定的特征空间中调节学习机器的置信范围和经验风险的比例,对模型的泛化能力有很大影响。为了控制GA-SVM模型的误差容忍范围,在后续试验中,本文将不敏感函数参数ε确定为0.001。
2.2 遗传算法
遗传算法(Genetic Algorithm)是由Holland教授模拟达尔文生物进化理论的自然选择和遗传学机制的生物进化过程而创造出的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。遗传算法以它的实用、高效和鲁棒性强等特点深受国内外学者的青睐。
与其他传统方法不同的是,遗传算法并不依赖梯度信息和其他任何外部信息,而是通过模拟自然进化过程来搜索最优解,以适应度函数作为搜索方向的引导,用选择算子选择亲代和子代,用交叉和变异算子保证种群的多样性。遗传算法作为启发式算法的一种,具有对可行解表示的广泛性和不易陷入局部最优解的特点,同时采用自然进化的原理来表示复杂的现象,能够快速可靠地解决非常困难的问题。隐含的并行性也使算法在计算上的时间大大缩短。本文正是借助遗传算法的这些特点,通过全局优化能力来对支持向量机的参数进行优化。
2.3 GA-SVM预测模型算法实现
将遗传算法与支持向量机算法相结合,提出一种基于GA-SVM的预测模型。支持向量机算法的核函数采用径向基核函数(RBF),利用二进制编码对支持向量机模型的参数进行编码,通过遗传算法的迭代寻优得出最优解,从而确定最优的惩罚函数C、核函数参数σ,最后通过支持向量机模型得到最后的预测结果。
具体的模型实现步骤如下:
(1)确定支持向量机参数的取值范围。
(2)确定遗传算法运行参数的大小。
(3)以二进制编码方式建立N×L矩阵作为种群,并随机生成初始种群。
(4)将初始种群中的每个个体,利用支持向量回归机程序进行计算,将输出结果与原数据进行对比,计算出训练样本的预测精度,从而得出每个个体的适应度大小。
(5)如此循环N次,直到每个个體都计算出相应的适应度。
(6)对整个种群进行遗传操作(选择、交叉、变异),获得新种群。
(7)当满足终止条件时(达到最大进化次数或适应度连续系带没有变化),停止计算;否则转到步骤(4),直到结果满足终止条件。
(8)满足终止条件获得的输出就是最优解的惩罚函数C、核函数参数σ。将最优参数输入支持向量回归机,对数据样本进行预测。
具体算法流程如图1所示。
3 实例分析
为了验证GA-SVM算法的预测精度,本文使用MatlabR2013a作为编程工具对GA-SVM算法进行了实现。同时选择台湾大学林智仁教授(Chih-Jen Lin)等开发的支持向量机软件Libsvm-2.88来做实验结果的比对。
本文采用成都市货运量作为被解释变量,根据主成分分析法,选择出相应的指标体系:第一产业产值、第二产业产值、第三产业产值、社会消费品零售总额、进出口贸易总额、城镇居民可支配收入、农村居民可支配收入、成都市货运量。以1996—2010年的数据样本作为训练数据,以2011—2014年的数据样本作为测试数据进行实验。为了提高测试结果的可信程度,本文分别用两种方法对数据样本进行多次实验和比对。
为了避免经验风险带来的预测误差,本文通过调节惩罚函数C、核函数参数σ两参数的范围多次测试获取预测精度较高的参数范围:CE[0.1,100],6E[0.01,1000]。最终预测结果如表2所示。
根据表2可知,GA-SVM模型在2013年货运量的预测中达到最低的相对误差-0.231%,在2012年、2013年、2014年的相对误差都在10%以内达到了较高的预测精度。反观SVM模型,除了2014年的相对误差在10%以内,其余各年份都超过了这个标准,在2011年的预测中达到了最高的-61.807%,很明显GA-SVM的预测精度要优于SVM的预测精度,如图2所示。
4 结 论
本文主要针对物流园区物流需求预测问题,设计了GA-SVM的预测模型。为了验证所建模型的有效性,论文以成都市为案例对模型进行实证分析,其研究结果与台湾大学林智仁教授(Chih-Jen Lin)等开发的支持向量机软件Libsvm的参数寻优函数进行了对比,结果证明GA-SVM预测模型在预测精度上要优于传统SVM预测模型。
参考文献:
[1]邹欣,张梦芩.基于灰色GM(1,1)模型的四川省物流需求预测[J].物流技术,2015(5):166-169.
[2]方威,肖衡,任湘郴.基于线性回归模型的物流需求预测分析[J].生产力研究,2009(12):100-101,116.
[3]曾鳴,程文明,林磊.状态空间时间序列的区域物流需求预测研究[J].计算机工程与应用,2014,50(15):7-12.
[4]Gutierrez R. S.,Solis A. O.,Mukhopadhyay S..Lumpy Demand Forecasting Using Neural Networks[J].International Journal of Production Economics,2008,111(2):409-420.
[5]陈善学,杨政,朱江,等.一种基于累加PSO-SVM的网络安全态势预测模型[J].计算机应用研究,2015,32(6):1778-1781.