短期交通流量预测

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

短期交通流量预测
摘要
交通流量是一种对于一段时间内在某个路口内通过的交通实体量,在现在的社会中,智能运输系统等交通理论的研究已经渐渐成为发达国家的研究对象,而交通流量预测分析是其中的核心研究之一。

所以,对于交通流量的预测成为叩开智能交通系统大门的最有力的那一把钥匙。

在前面,我们首先面临的一个问题是对于数据的处理。

题目以15分钟为一个时间段来测量交通流量,一共有三天的数据,应该有288个数据,但是题目只给出了276个。

另外,在数据中还有两个为负的数据。

面对缺失数据和异常数据,我们分别使用了热卡插补法和平均值填补法来解决。

然后在进行预测时,我们分别使用了不同的软件来建立不同的预测模型。

首先我们使用了灰色预测GM软件来进行灰色模型的预测,在预测前,我们先用模型和前两天的交通流量来预测第三天的交通流量,然后将第三天的真实交通流量与预测交通流量进行相关性检验,检验通过后,再用于预测第四天的交通流量,最后评价模型的好坏。

接着,我们使用了spss软件来进行回归分析模型的预测。

在预测之前,我们需要先对数据进行相关性检验,若没有相关性,则回归方程会没有意义。

接下来,通过对回归方法的决定性系数检验和方差分析检验,得到最合适方法。

之后再进行第四天的预测及预测结果的评价。

然后,我们使用了metlab软件来实现BP神经网络模型的预测。

BP神经网络的实质是用已给出的数据来推出需要的数据,并将新预测出的数据重新返回输入中,得到误差,一直重复,直到误差到达合理的范围内。

在预测之前,我们先得出了误差在合理范围,并且看到已给出数据的真实值与预测值得对比。

在确保模型是可用的之后,在进行预测与预测结果的评价。

最后,我们使用了eview软件来进行时间序列的预测。

时间序列预测要求数据必须是平稳的,所以在预测前,先要对数据进行ADF检验,在检验通过后,才能进行预测,得到预测后的表达式和残差。

在最后,还必须对残差进行分析估计。

这样之后,对模型进行评价。

在本文的最后,我们进行了进一步的讨论和改进,对四种预测方法进行了一个比较,判断出那个模型是最适合这个题目的。

并且对文章中所涉及的模型进行推广,使其更便于运用于生活实际中。

关键词:eviews 热卡插补法相关性检验神经网络时间序列 ADF检验
1 问题重述
1.1问题背景
交通流量指的是在一段时间内通过道路某一地点、某一断面或某一车道的交通实体数。

随着交通基础设置建设和智能运输系统的发展,交通规划和交通诱导已成为交通领域研究的热点。

对于交通规划和交通诱导来说,准确的交通流量预测是其实现的前提和关键。

交通流量预测根据时间跨度可分为长期交通流量预测和短期交通流量预测,长期交通流量预测以小时、天、月甚至年为时间单位,是宏观意义上的预测;短期交通流量预测一般的时间跨度不超过15分钟,是微观意义上的预测。

短期交通流量预测是智能运输系统的核心内容和实现其智能化功能的基础平台。

短期交通流量预测具有高度非线性和不确定性等特点,并且同时间相关性较强,研究表明,城市交通路网中交通路段上某时刻的交通流量与本路段前几个时段的交通流量有关,并且交通流量具有24小时内准周期的特征。

1.2问题研究
现有3天的交通流量数据,假设从第1天0时15分开始,每隔15分钟记录一次该段时间内的交通流量,预测出第4天的交通流量,并指出模型的优缺点。

2 问题分析
题目要求我们根据已给出的三天的数据来预测第四天的交通流量,并且评价判断模型的优缺点。

首先,题目给出的是三天的数据,以15分钟为一个截点,应该有3*24*4个数据,但实际只有266个数据。

另外,在数据中有负数的情况,按照该题的实际情况而言,不可能出现为负的情况,交通流量不可能为负。

所以,首先要对缺失数据进行处理,我们使用了单一插值法中的热卡插补法来补齐缺失数据和异常数据。

然后我们需要进行预测第四天的数据,在这里我们只需要进行短期的交通流量预测。

在短期预测中,我们以原始的15分钟为一个时段,预测未来一天的交通流量。

在这里我们一共运用了四种预测方法,分别是灰色预测模型,回归分析预测方法,时间序列和神经元网络,
最后,通过对每种方法预测结果的分析与判断,总结出每种方法的优点和缺点。

3 符号说明
符号含义说明
第一二三天中,不同时间点的交通流

i 一天中,以15分钟为时间段的时间序
列编号
权值
时间数列
交通流量数列
时间的平均值
交通流量的平均值
4 模型假设
1假设题目所给的所有数据都是真实有效的。

2假设在这四天中并没有特殊的会聚集人群的事件发生。

3 假设测量的误差小,对结论的影响程度低,甚至没有影响。

4 假设灰色模型、MATLAB、SPSS软件、EViews软件选取的预测模型都是最好的。

5 假设测量交通流量时,把测量路段的所有车辆看作一个点。

6 假设随机选取检验的的数据,对结论没有影响。

5 模型建立与求解
这道题目是一道关于交通流量的研究的问题,我们以某三天内的每15分钟一个时段的交通流量为基础,在以15分钟时间段为时间窗宽的情况下,构建不同的预测模型,对第四天做出了预测,验证了模型的可行性,最后通过对模型结果的分析,评价模型的好与坏。

5.1 模型数据的处理
问题中要求我们根据前三天的数据预测出第四天的数据,前三天的数据应该有288个,但是实际给出的数据只有276个,且给出的数据中还存在有两个为负数的数据,在题目的现实意义中,交通流量根本不可能为负数。

所以据判断,这组数据中存在着缺失值和异常数据,如何处理数据是一个重要的点。

Step1 缺失数据的处理
首先对于缺失数据来说,我们并不知道缺失的数据是随机缺失数据还是非随机缺失数据,所以我们先将数据点作图,观察曲线的趋势,折线图一如下:
图一
从图中可以明显看出,这组数据有明显的周期性,所以可以大胆判断缺失的12个数据为第三天的21点到24点的数据。

对此,我们选择了热卡插补法进行缺失值的填补,所谓热卡插补法(Hot deck imputation),即对于一个包含缺失值的对象,在完整数据中找到一个与它最相似的对象,然后用这个相似对象的值来进行填补。

在这里,我们用与缺失值最相似的前两天同一时段的数据的平均值来代替缺失值。

用替换掉缺失值的数据画折线图得到图二:
图二
Step2 异常数据的处理
对于数据中两个为负的异常数据,由于所占比例较小,只有0.7%左右,而直接去掉会影响数据分析的准确性,所以我们直接用平均值填充法(Mean/Mode Completer)来进行,用异常数据的前后两个数据的平均值来代替异常数据,得到完整数据。

5.2 数据的预测
在这里,有几种不同预测方法可以这样使用,我们将一一进行预测并进行评价,得到最合适的模型。

5.2.1 灰色模型的建立求解与评价
首先,我们运用了灰色预测模型,灰色模型是一种对含有不确定因素的系统进行预测的方法,灰色预测通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。

Step1 灰色模型的检验
如果要得到检验结果,必须要先检验使用模型的可行性,检查误差是否在合理范围。

为此,我们先随机抽取每一天的20个时间点,用前两天的这20个数据来预测第三天的这20个时间点的交通流量。

然后用这20个时间点的真实
相关性
真实值预测值
真实值Pearson 相关性 1 .785**
显著性(双侧).000
N 20 20
预测值Pearson 相关性.885** 1
显著性(双侧).000
N 20 20
**. 在 .01 水平(双侧)上显著相关。

据之间的相关性相对比较高,表明这个灰色模型是不错的,可以用于第四天的预测。

Step2 灰色模型的预测
灰色系统理论认为,尽管客观表象复杂,但总是有整体功能的,因此必然蕴含某种内在规律。

关键在于如何选择适当的方式去挖掘和利用它。

灰色系统是通过对原始数据的整理来寻求其变化规律的,这是一种就数据寻求数据的现实规律的途径,即为灰色序列的生成。

一切灰色序列都能通过某种生成弱化其随机性,显现其规律性。

数据生成的常用方式有累加生成、累减生成和加权累加生成。

在这里我们使用的是加权累加生成,将第一天,第二天和第三天的权值分别设为1/3,将一天中每个时间点对应的三个数据设为
(i=1,2,3….95,96)
称的邻值。

当权值都为1/3时,则生成数为
在实际操作中,可以有现成的灰色预测软件进行计算。

以15分钟为一个时间点,将三天中每个相对应的时间点的交通流量作为样本量,代入于灰色预测模型中,得到96个预测值。

在预测过程,由于第一天早上六点时的一个异常数据,导致预测值出现异常数值,所以我们使用之前处理异常数据的方法处理了这个数据,重新进行了预测。

将预测出来的第四天的交通流量和前三天的交通流量并在一起,画出折线图三,如下:
图三
Step3 灰色模型的评价
一优点
1、数据量量较少,易于计算
2、样本不需要有规律性分布,对于有周期性的不需要去趋势。

3 准确度相对较高。

二缺点
1 可以分析的数据量的范围狭窄,太少数据量和太多数据量的都不能分析预测,只适用于Recent、短期、中长期预测。

2 软件在计算后没有直接给出参数进行检验,必须自己另外进行检验分析,操作不方便。

5.2.2 回归分析预测的分析求解与评价
回归分析预测法,是在分析市场现象自变量和因变量之间相关关系的基础上,建立变量之间的回归方程,并将回归方程作为预测模型,根据自变量在预测期的数量变化来预测因变量关系,大多表现为相关关系。

在前面的图形中,我们已经发现了每一天的交通流量与时间有强烈的周期性,难以得出三天在一起时的整体趋势,所以我们在进行回归分析预测时只选取了一天为研究对象。

并且,由于第三天与需要预测的第四天最接近,所以我们选择了第三天来进行分析预测。

Step1 回归分析预测的相关性分析
回归分析是对具有因果关系的影响因素和预测对象所进行的数理统计分析处理。

只有当变量与因变量确实存在某种关系时,建立的回归方程才有意义。

所以,我们必须要先判断作为自变量的因素与作为因变量的预测对象是否有关,相关程度如何,以及这种相关程度的把握性多大,在这里,我们用相关关系的大小来判断自变量和因变量的相关的程度。

将自变量时间设为,因变量交通流量设为,在这里我们运用R系数来计算两者之间的相关性系数:
表示时间与交通流量的平均数
在软件中我们通过计算得到以下结果:
相关性
时间交通流量
时间Pearson 相关性 1 .606**
显著性(双侧).000
N 96 96
交通流量Pearson 相关性.606** 1
显著性(双侧).000
N 96 96
**. 在 .01 水平(双侧)上显著相关。

由结果可以看出,交通流量和时间之间的相关性系数为0.606,在(0.5,0.8)
的范围内,属于中度相关,可以进行回归分析。

Step2 回归分析预测的检验
回归预测模型是否可用于实际预测,取决于对回归预测模型的检验和对预测误差的计算。

回归方程只有通过各种检验,且预测误差较小,才能将回归方程作为预测模型进行预测。

根据对图形的判断,我们使用了曲线估计。

在对数据进行拟合时,我们发现在对数模型,二次项模型,对数模型,立方模型,指数模型等模型中,立方
模型的拟合结果最好,最接近题目给出数据的点分布(详见附录一),所以最后我们决定使用立方模型来回归数据。

在检验过程中,我们使用了决定系数检
模型汇总
R R 方调整 R 方估计值的标准误
.894 .799 .792 40.229
自变量为 VAR00002
ANOVA
平方和df 均方 F Sig.
回归591390.103 3 197130.034 121.810 .000
残差148886.887 92 1618.336
总计740276.990 95
自变量为 VAR00002。

在决定系数
以解释交通变量的变化的79.9%,还有20.1是不能解释的。

在方差分析中,方差检验量F值为121.810,它的sig值为0.00。

sig值就是显著性,代表着平均值是在百分之几的几率上相等的。

一般将sig值与0.05相比较,如果它小于0.05,说明平均值在小于5%的几率上是相等的,而在大于95%的几率上不相等。

我们认为平均值相等的几率还是比较小的,说明差异是显著的,从而认为两组数据之间平均值是不相等的。

这道题中的sig值大于了0.05,说明模型显著性成立。

两个检验结果都在合理的范围内,说明回归分析预测模型的检验是通过了的,所以可以开始检验了。

Step3 回归分析预测模型求解
前面已经进行了相关性分析和模型的检验,现在就只需要将数据录入到冉建中,得到回归拟合结果:
系数
未标准化系数标准化系数
B 标准误Beta
t Sig.
X -1.694 1.518 -.534 -1.116 .267
x ** 2 .198 .036 6.262 5.467 .000
x ** 3 -.002 .000 -5.370 -7.529 .000
(常数)34.834 17.086 2.039 .044 结果中的t值是对每一个自变量(logistic回归)的逐个检验,看它的beta值即回归系数有没有意义,后面的sig值则是为了显示t值得显著性。

由结果可以看出,除了自变量的系数是不显著的,其他的系数和常数都是显著的,结果可以忍受,得到的回归方程如下:
将第四天的时间导入到表达式中,得到未来96个时间点的交通流量。

然后将这个预测值和前三天的数据合在一起按,画出折线图四:
图四
Step4 回归分析预测模型的评价
一优点
1 回归分析预测模型可以直接给出预测模型的表达式,这样也就可以预测较多的时间点。

2 在模型结果中直接就可以进行检验,操作方便。

二缺点
1 从预测后的折线图就可以看出,这种预测方法预测出来的结果是一种理想型的结果,非常粗略,不能用于实际的生活实践中。

2 处理过程相对比较复杂。

3 在预测过程中需要验证的系数较多,不容易通过验证。

在这道题中,我们的自变量系数就没有通过显著性检验,所以不是很正确。

5.2.3 神经网络预测的分析求解与评价
接下来我们要使用的方法是神经网络预测模型。

神经网络就是模拟人的思维的第二种方式,这是一种非线性动力学系统,其特色在于信息的分布式储存和并行协同处理。

神经网络是通过对人类的基本单元——神经元的建模和联接,探索模拟人脑神经系统功能的模型。

在这里,我们使用的是BP (Back Propagation)神经网络,即误差反传误差反向传播算法的学习过程,由信息的正向传播和误差的反向传播两个过程组成。

输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经进一步处理后,完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。

当实际输出与期望输出不符时,进入误差的反向传播阶段。

误差通过输出层,按误差梯度下降的方式修正各层权值,向隐层、输入层逐层反传。

周而复始的信息正向传播和误差反向传播过程,是各层权值不断调整的过程,也是神经网络学习训练的过程,此过程一直进行到网络输出的误差减少到可以接受的程度。

图示为下:
Step1 神经网络预测模型的检验
由于BP网络神经的定义,在对未来时间进行预测前,系统将会先对已知数据进行预测,然后将真实数据与预测数据进行一个对比,并且给出在预测过程中的误差分布,观察这两个图,可以看到误差水平差不多都在0.1左右,较小在合理范围内。

而真实值与预测值得差距也较小,所以认为模型的检验是通过了的,是可以继续进行预测的。

图五:真实值与预测值对比图六:误差分布图
Step2 神经网络预测模型的分析求解
在BP算法中,我们采用了最速下降梯度法来修改权值,计算公式如下:
(m为样本数)
其中为期望输出,为实际输出,为输出节点数,w(k)为第k次网络权值,为学
习率。

在实际计算时,我们运用matlab编了一段程序,详见附录二。

为了保证预测结果的准确性,我们并没有一次性的预测出所有的数据,而是采用滚动预测的方式,将先预测出来的结果带入到原始数据中,以此来预测接下来的数据,由于数据太多,这一次依旧用与前三天的交通流量的汇总数据来画折线图,用折线图来表示预测
的结果,图如下:
Step3 神经网络预测模型的评价
一优点
1 神经网络有很强的非线性拟合能力,可映射任意复杂的非线性关系。

2 BP神经网络在其局部的或者部分的神经元受到破坏后对全局的训练结果不会造成很大的影响,也就是说即使系统在受到局部损伤时还是可以正常工作的。

即BP神经网络具有一定的容错能力。

二缺点
1对于这种相对复杂的问题来说,BP算法需要的训练时间非常长,需要等待的时间也非常长。

2 网络隐含层的层数和单元数的选择尚无理论上的指导,需要根据经验或者通过反复实验确定。

3 网络的学习和记忆具有不稳定性。

也就是说,如果增加了学习样本,训练好的网络就需要从头开始训练,对于以前的权值和阈值是没有记忆的。

5.2.4 时间序列预测的分析求解与评价
在最后我们使用的方法是时间序列预测法,时间序列预测法是一种历史资料延伸预测,也称历史引伸预测法。

是以时间数列所能反映的社会经济现象的发展过程和规律性,进行引伸外推,预测其发展趋势的方法。

在时间序列模型中,有ARMA模型和ARIMA模型两种类型,而用于模拟拟合的一般是ARMA模型,预测该时间序列未来值。

所以我们使用ARMA来进行预测。

Step1 时间序列预测模型的检验
为了保证预测结果的准确性,在进行时间序列预测之前,我们还需要对数据进行平稳性检验。

所谓平稳性检验,是指为了防止有时数据的高度相关仅仅是因为二者同时随时间有向上或向下的变动趋势, 并没有真正联系。

如果这样,数据中的趋势项,周期项等无法消除, 从而在残差分析中无法准确进行分析.。

在这道题中,我们对随着时间变化的交通流量进行了平稳性检验,首先我们使用的是平均差分法,检验结果如下表:
从检验结果可以看出看,在显著性水平分别为1%,5%,10%的情况下,ADF检验的Mackinnon临界值分别为-3.453072,-2.871438,-2.572116,t检验统计量值-2.108600,prob值大于0.05,从而不能拒绝,表明短期交通流量的差分序列存在单位根,是非平稳序列。

所以不能使用,于是我们换了一阶差分来重新重新检验,检验结果如下表:
从检验结果来看,在显著性水平分别为1%,5%,10%的情况下,ADF检验的Mackinnon临界值分别为-3.453072,-2.871438,-2.572116,t检验统计量值-21.75397,prob值小于0.05,从而拒绝,表明短期交通流量的差分序列不存在单位根,是平稳序列,检验通过,可以使用。

Step2 时间序列预测模型的分析与求解
我们在进行时间序列预测时,是直接使用的eviews软件,软件输出结果如下面:
可以看见结果中得出了时间序列预测的自变量与因变量之间的关系式系数,两个系数的t值显著性都小于了0.05,都是显著的,是有意义的,可以使用的,表达式为:
其中e表示残差量
接下来,对于得出的方程的残差的平稳性还需要进行检验,在软件中可以直接得到对于这个检验的结果(见附录),可以明显看到,prob、值都是小于0.05的,所以是显著的,有限的可以使用的。

运用给出的方程式以及对于残差的分析估计,得到第四天中每个时间段的交通流量的预测值,依旧将它与其它第三天的数据一起,画出它的折线图,如下:
Step3 时间序列预测模型的评价
一优点
1 时间序列模型相对于以上3种模型的预测效果较好,周期性强;
2 克服了神经网络编程的复杂,易于操作;
3 克服了灰色模型不能进行中长数据的预测的缺点;
二缺点
1 ARMA模型的限制条件保证了模型的最高阶数;
2 限制条件实际上是要求随机干扰序列为了;
3 零均值白噪声序列;限制条件说明当期的随机干扰与过去的序列值无关。

6 模型的评价与推广
6.1 模型的评价
这个题目要求我们根据前三天的数据来预测第四天的交通流量,没有规定使用何种预测方法。

而我们为了保证预测结果的准确性,选择了不同的预测方法来进行预测,下面是4种不同的预测方法的结果:
灰色预测模型预测结果回归预测模型预测结果
BP神经网络预测模型预测结果时间序列预测模型预测结果
从四幅图中可以看出,第一个灰色预测模型的预测结果太过高于其他三天的值,第三个神经网络模型的预测结果又过于太低于其他三天的值,第二个回归模型的预测结果虽然很符合总体趋势,但在实际中,它的细节处还不够,而第四个时间序列模型的预测结果与前面几天的最相似。

再结合在预测过程中,几个模型的操作难易程度,参数检验结果和结果的显示,我们认为,时间序列预测模型是最适合这道题的模型,可以用它来进行接下来的其他时候的预测。

6.2 模型的推广
1.以上预测模型可以运用到很多预测和控制领域,尤其是时间序列、回归拟合模型。

2.以上模型还可以用于客流量预测,降水量预测等更多地同类型预测问题。

8 参考文献
1. 王沁,时间序列分析及其应用,四川西南交通大学出版社,2008;
2. 初连禹,杨兆升,基于神经网络的实时交通流量模糊预测;
3. 宫晓燕,汤淑明,基于非参数回归的短视交通流量预测与事件检测综合算法;
4. 邓聚龙,灰色系统理论教程,武汉:华中理工大学出版社,1990;
5. 韩超,基于时间序列分析的短期交通流量实时自适应预测,北京:北京工。

相关文档
最新文档