基于ABA-ESA的中国煤炭需求预测模型
2018-07-26邹绍辉丁治立
邹绍辉 丁治立
(1.西安科技大学管理学院,陕西省西安市,710054;2.西安科技大学能源经济与管理研究中心,陕西省西安市,710054)
未来一段时间内,煤炭在中国的主体能源地位不会动摇。因此,准确地预测未来煤炭需求量对能源战略的制定和产业结构的调整具有显著的积极意义。随着越来越多的线性和非线性因素的出现,在解决庞大且复杂的煤炭需求问题时,普通的预测模型已显得捉襟见肘。众多研究表明,人工智能技术在预测煤炭等能源需求过程中表现良好,因此本文使用了人工智能技术,以经济增长、人口城镇化、能源结构3个影响因素作为输入因子,使用1981-2015年共35年间各影响因子及煤炭消耗量作为观测值,建立了二次方程形式的煤炭需求预测模型,以均方误差作为目标函数,使用ABA-ESA算法对其进行优化,得到预测模型的最优系数,获得模型,进而对我国未来煤炭需求量进行预测。
1 研究综述
国内外研究人员使用人工智能技术对煤炭、石油、天然气等能源需求进行了预测。付立东、张金锁等人将遗传算法和模拟退火算法结合形成GA-SA算法,并使用该算法对我国2015-2020年的能源需求进行预测,研究结果表明,新算法建立的模型拥有更高的适配度和更小的预测误差。彭新育、王桂敏将PSO-GA算法进行了改进,在此基础上建立了多重线性和指数形式的能源需求预测模型,研究结果表明,混合算法得到的优化结果比单个算法得到的结果更具有实用性,在此基础上,预测了2013-2015年我国能源需求量。陈卫东、朱红杰等人使用粒子群算法建立了线性和指数形式的能源需求预测模型,使用该模型预测了2011-2015年我国能源需求量,并计算了能源需求年均增长率。M.Kefayata、A.Lashkar将蚁群算法和人工蜂群算法结合形成了一种新的混合算法,并将其用于概率最优分配和分布式能源资源的分级。Tsksari将蚁群算法和贝叶斯分类法进行结合,使得蚁群算法的局部搜索性能得到提高,并使用这种新的蚁群算法对土耳其的家庭用电需求进行了预测。YC Hu将遗传算法对传统的GM(1,1)模型进行优化,建立GARGM(1,1)模型,并使用该模型对中国未来能源需求进行了预测。Sasan Barak使用自适应模糊神经推理系统建立了ARIMA-ANFIS模型,并将其应用于预测伊朗的能源需求,结果表明该模型比传统的ARIMA模型具有更高的精确度。
BA算法即蝙蝠算法,它是通过对蝙蝠寻找猎物和觅食的过程进行模拟而得出来的一种启发式搜索算法,与传统算法相比,蝙蝠算法具有更高的全局搜索能力和求解精度,但是蝙蝠算法仍存在局部搜索能力不足和过早收敛的问题,因此有很多学者对蝙蝠算法进行了改进。谢健、周永权等人提出了一种基于Lévy飞行轨迹的蝙蝠算法,研究结果表明该算法具有易跳出局部最优、收敛速度快且精度高的特点。张宇楠、刘付永提出了一种变步长自适应蝙蝠算法,研究结果表明该算法在一定程度上可以避免过早陷入局部最优、后期精度更高的特点。Amir H.Gandomi将混乱映射加入蝙蝠算法,结果表明在部分情况下加入混乱映射的蝙蝠算法有更好的表现。相对来说,蝙蝠算法虽然具有很多的优点,但仍旧存在着局部搜索能力不足的问题。模拟退火算法由Metropolis等人在1953年提出,1983年S.Kirkpatrick等人将模拟退火算法成功地引入组合优化领域,从此模拟退火算法才被广泛地应用到多个领域。付文渊、凌朝东将模拟退火算法和布朗运动结合起来形成了布朗运动模拟退火算法,研究结果表明该算法不仅具有很快的搜索速度,而且具有更高的稳定性和易于实现的特点。卢丽蓉、行小帅等人提出基于免疫规划的模拟退火算法,该方法借鉴了生物免疫的理论,使得模拟退火算法的运算效率得到很大的改进。Ingber经过研究发现,采用指数退火的方法更加符合退火的实质,可以实现快速退火,从而提升模拟退火算法的运算速度。相比较而言,模拟退火算法虽然拥有很强的局部搜索能力以及较快的收敛速度,但其全局搜索能力欠佳。
现今,人工智能技术已经在煤炭等能源的需求预测中得到广泛应用,但传统的优化算法在解决高维的需求问题时还存在着搜索能力不足、收敛速度慢的问题。因此,本文将传统的蝙蝠算法和模拟退火算法相结合,使蝙蝠算法和模拟退火算法互相取长补短,并使用自适应原理改变蝙蝠算法的变异方式,加强算法的所有能力,使用指数退火的方式加快算法的收敛速度。
2 模型构建优化方法
2.1 煤炭需求预测模型
影响煤炭需求总量的因素众多,一些学者研究认为经济增长、国家能源政策、能源消费结构、人口总数、产业结构、居民收入水平、固定资产投资、煤炭生产量、煤炭价格等因素均会对煤炭需求造成影响。为了预测未来煤炭需求量,本文主要考虑经济发展、城市化进程、能源结构变化对煤炭需求的影响,因此选择经济增长(GDP)x1、人口城镇化率x2、能源结构(煤炭在能源消耗中的占比)x3作为模型的输入因子,构建煤炭需求预测的二次方程模型,其表达式为:
(1)
为了获得煤炭需求预测模型的最优系数w,本文将均方误差作为目标函数,使用ABA-ESA优化方法对函数的下述功能进行优化:
(2)
式中:T——训练集的个数;
s——当函数f(s)达到某一最小值或满足算法终止条件时预测方程的系数。
2.2 ABA-ESA优化算法
本文将蝙蝠算法和模拟退火算法相结合,在变异过程中使用自适应原理,加强算法的局部搜索能力,并在最后使用指数退火的方法进行退火,使得算法收敛速度加快,从而得到基于指数退火的自适应蝙蝠算法,即ABA-ESA算法。ABA-ESA算法的具体过程如下:
第一步:随机初始化相关参数,包括蝙蝠的位置xi、速度vi、频率fi、脉冲率R和音量A。
第二步:根据目标函数评估当前每个蝙蝠的适应度函数值,保存当前最优解的位置xbest和最优适应值fbest。
第三步:设定初始温度T0。
第四步:根据式(3)计算每个蝙蝠的适应值:
(3)
第五步:根据轮盘赌策略从所有的蝙蝠个体中确定全局最优的某个替代值best',再根据式(4)和式(5)更新蝙蝠的位置和速度。
第六步:计算每只蝙蝠的新适应值,按照式(6)和式(7)更新蝙蝠位置,并找出最优位置和相应的最优值。
此处使用自适应原理的依据为:A×μ表示随着搜索过程的不断变化,音量A也在不断改变,其变化范围为0到最大值,以此加强算法的局部搜索能力,提高算法的精确度。
第七步:为了切合退火的实质,采用指数退火的模式进行退火操作,具体过程根据式(8)进行。
(8)
式中:n——当前迭代数;
N——最大迭代数;
k——待反演参数的个数;
α——指数退火的冷却系数;
D——所求矩阵的维数;
randn()——服从高斯分布的随机数;
Betarand()——服从Beta分布的随机数。
第八步:判断是否达到最大迭代数,如果是,则输出结果,否则返回步骤(4)。
3 模型构建及分析
3.1 数据来源
本文使用的数据均来自于2015年的《中国能源统计年鉴》。其中,1985年、1990年、1995年、2000年、2005年、2010年、2015年的数据作为测试集,其余各年份的数据作为训练集。为了消除数据量纲不同带来的影响,本文采用式(9)对原始变量的数据进行处理,以便获得准确性和稳定性更好的预测模型。
(9)
式中:x′——标准化处理之后的数据;
xmin、xmax——数据xi的最小值和最大值。
3.2 通径分析
为研究选取的3个因子对煤炭需求的影响状况,本文对这些因素进行通径分析。通径分析是数量遗传学家Sewall Wright在1921年提出的,该方法消除了传统多元回归分析方法不能消除多重共线性的缺陷,能够通过直接通径、间接通径和综合通径将自变量和因变量之间的相关性分解,从而能够分析各个自变量对因变量的直接影响、间接影响以及综合影响。
在进行通径分析之前,首先需要对因变量进行正态性检验,由于本文所选样本的样本容量为35,属于小样本,因此选取Shapiro-Wilk方法进行检验。检验结果如表1所示,统计量为0.832,偏度为0,说明CE服从正态分布,可以进行通径分析。通径分析的结果如表2所示。
表1 因变量CE的正态性检验结果
由表2可知,经济增长和城市化进程与煤炭需求呈极大的正相关,其中城市化进程对煤炭需求的直接影响最大,直接通径系数达0.807,而能源结构与煤炭需求的相关性为负。这说明,中国的经济增长离不开煤炭这一主要能源的支撑,城市化进程则会加大煤炭的需求,减小煤炭在能源消耗中的占比则能够降低煤炭需求。
表2 通径分析的结果
3.3 模型评估
本文所使用的ABA-ESA算法通过Matlab编译并实现,相关参数设计如表3所示。
表3 ABA-ESA算法参数设置
当ABA-ESA算法运行至最大迭代次数时,得到预测方程的系数,其结果为:
为了检测预测模型的预测精度,使用预测模型分别对1981-2015年的煤炭需求量进行预测,将得到的拟合值和观察值进行比较,拟合情况如图1所示。由图1可以看出,建立的预测模型具有很好的拟合能力。
图1 模型拟合值与煤炭消费实际值
为了进一步评估模型的误差程度,检验ABA-ESA算法的准确性,使用两种基本的误差评估方法,平均绝对百分误差(MAPE)和判定系数(R2)对模型进行检测,MAPE和R2的计算公式见式(10)和式(11)。将ABA-ESA算法同其他智能算法的MAPE和R2进行对比,将ABA-ESA算法与遗传算法、粒子群算法、模拟退火算法和标准的蝙蝠算法进行比较,各种算法下的预测模型的适配度和平均绝对百分误差计算结果如表4所示。结果表明,提出的ABA-ESA算法具有更高的数据适配度和非常低的MAPE值。因此,建立的预测模型可以用来预测我国未来的煤炭需求量。
(11)
4 煤炭需求预测
4.1 基于ARIMA模型的经济增长预测
ARIMA(p,d,q)模型,即自回归差分滑动平均模型,是由Box和Jenkins于20世纪70年代初提出的著名时间序列预测方法。其中,p表示偏相关系数在p阶截尾,d表示对原始数据进行了d阶差分处理,q表示自相关系数在q阶截尾。
为了消除时间序列GDPt异方差,令Gt=LogGDPt。构建ARIMA模型首先要求原始数据是平稳的,对Gt进行ADF检验,t(-1.829)统计量大于1%(-3.654),5%(-2.957)和10%(-2.617)水平,说明序列Gt是非平稳序列,经过一阶差分处理后得到序列D(Gt),再对D(Gt)进行ADF检验,此时t统计量为-3.109,均小于10%和5%水平,说明此时序列趋势基本消除。因此d=1,可选用ARIMA(p,1,q)模型。p和q取决于D(Gt)的自相关函数(ACF)和偏相关函数(PACF)。D(Gt)的ACF和PACF图如图2所示。由图2可以看出,自相关函数在5阶之后截尾,而偏相关函数在4阶之后截尾,因此可得p=4,q=5。故建立ARIMA(4,1,5)模型用于预测未来的经济状况。
表4 ABA-ESA算法与各种优化方法的比较 %
图2 D(Gt)滞后12期的ACF和PACF图
使用Eviews完成ARIMA(4,1,5)模型的建模过程。得到的方程参数估计结果:c=1.596,AR(1)=0.737,AR(2)=-0.071,AR(3)=0.191,AR(4)=-0.391,MA(1)=-0.221,MA(2)=0.763,MA(3)=0.577,MA(4)=-0.315,MA(5)=0.193,各项系数均小于1,说明ARIMA(4,1,5)模型是稳定的,同时AIC指标达到最小,说明选择的滞后期合适。模型的决定系数为0.9998,平均绝对百分误差为0.827,说明ARIMA(4,1,5)是时间序列D(Gt)较为理想的预测模型。对模型残差进行自相关和偏相关分析,结果显示残差的自相关图和偏相关图都是截尾的,证明模型的残差序列确实是白噪声,进一步验证了模型的有效性。
综上所述,得到的时间序列D(Gt)的ARIMA(4,1,5)模型的表达式为:
(12)
由D(Gt)可推导序列Gt的表达式,进一步推导,得到序列GDPt的表达式:
GDPt=10(Gt-1+DGt)
(13)
4.2 人口城镇化率的Logistic曲线拟合
Logistic方程由比利时数学家P.F.Verhulst在1838年提出,该方程描绘了一个“S”型的变化趋势,被称为Logistic曲线。一些学者通过分析发达国家人口城镇化的变化趋势,认为人口城镇化率进程也是按照Logistic曲线变化的。因此,本文使用Logistic方程对我国的人口城镇化率进行预测。基于Logistic方程的人口城镇化率预测模型为:
(14)
式中:t——年份;
M——一定时间内人口城镇化率的最大值;
β——待估参数;
α——xt的瞬间变化速率。
参照发达国家的人口城镇化进程,本文认为我国的人口城镇化率在未来一段时间内达到最大值85%,之后这一比率将趋于稳定状态。使用SPSS中的回归分析模块,对我国的人口城镇化率进行Logistic曲线拟合,上限设置为85。结果显示,Logsitic曲线的拟合度达到98%,同时获得Logistic模型的参数,进而得到人口城镇化率的Logistic预测模型:
(15)
4.3 能源结构调整
由于能源结构主要受国家政策影响,因此采用情景假设的方法设置能源结构。《能源发展“十三五”规划》指出,到2020年我国煤炭消费在能源消费中的比重下降到58%,年均减少1.2%;由于受节能减排和低碳环保政策的影响,这一比重在之后还会继续下降,因此设置2030年该比重会下降至50%,年均减小0.8%。
4.4 煤炭需求预测结果及讨论
根据实证预测得出2016-2030年经济增长状况、人口城镇化进程以及能源结构变化状况,使用ABA-ESA模型可对2016-2030年的煤炭需求量进行预测,预测结果如图3所示。
图3 2016-2030年我国煤炭需求量预测
根据预测,2020年我国煤炭需求量为30.01亿t标准煤;而《能源发展“十三五”规划》指出,到2020年,我国能源总需求为50亿t标准煤,其中煤炭占比为58%,这就意味着2020年我国煤炭需求量应控制在29亿t标准煤,预测结果稍微超出能源规划,国家要想实现这一目标,就需要采取进一步的措施减少煤炭需求量;2030年我国煤炭需求的预测值为44.41亿t标准煤。2016-2030年我国煤炭需求量年增长速度仅为3.69%,而2001-2015年这一指标为7.26%。上述结果表明,即使我国政府调整能源结构,降低煤炭在能源消耗中的占比,但经济增长以及城市化进程会加大我国对能源总量的需求,由此导致煤炭的需求量在继续增加,但增长速度缓慢,仅为过去15年的一半,说明降低煤炭在能源消耗中的占比,对煤炭需求的增长具有很大的抑制作用。同时,城市化是经济增长的必然产物,但在发展低碳经济、倡导节能环保的今天,还应该注意城镇化进程对煤炭需求的巨大刺激作用。
5 结语
本文首先对蝙蝠算法和模拟退火算法进行研究,再将两种智能算法进行结合,使用自适应原理和指数退火的办法,得到ABA-ESA智能算法。该算法不仅继承了蝙蝠算法全局搜索的精度,而且加强了算法的局部搜索能力,加快了总体收敛速度,使得算法在运行速度和搜索能力上得到强化。
为了预测我国未来煤炭需求量,将经济增长、人口城镇化和能源结构3个影响因素作为模型的输入因子,使用通径分析的方法,分析了3个因素对煤炭需求量的直接和间接影响。在此基础上,建立煤炭需求预测的二次方程模型,将均方误差作为目标函数,使用ABA-ESA算法对其进行优化,进而获得模型的各项系数。模型的适配度高达98.255%,平均绝对误差仅为5.398%。最后使用该模型对我国2016-2030年的煤炭需求进行了预测,预测结果表明,在这15年中,我国煤炭需求量将持续增加,2020年将突破30亿t标准煤,2027年将突破40亿t标准煤。但是,在这15中,煤炭需求量的年均增长速度仅为3.69%,大约为之前15年的一半。