一种基于机器学习的地铁短时客流预测方法与流程

文档序号:12034557阅读:1711来源:国知局
一种基于机器学习的地铁短时客流预测方法与流程

本发明属于交通技术领域,具体涉及基于机器学习的地铁短时客流预测方法。



背景技术:

随着我国城市化进程的加快,城市交通问题日益突出,而城市轨道交通系统是解决大中城市公共交通的根本途径,较为封闭且人群聚集量大。实时、准确的轨道交通客流预测对城市轨道交通运营编组设计优化至关重要。本研究提出将地铁历史客流数据与实时信息相结合,借助机器学习预测地铁短时突发客流的方法。研究发现,基于历史客流与实时信息相结合的预测,能够精确稳定地预测地铁短时客流。

但是,现有的方法存在如下问题:

1、传统的预测方法,预测结果精度不高。

2、现有预测精度较高的模型较为复杂,而且数据质量要求高,甚至需要融合多源数据。



技术实现要素:

本发明提供了一种基于机器学习的地铁短时客流预测方法,其目的在于能够在数据来源单一的条件下,借助机器学习方法建立较为简单的预测模型来预测地铁短时客流,并且达到较高的预测精度。

一种基于机器学习的地铁短时客流预测方法,包括以下步骤:

步骤一:获取待统计的地点区间内的所有地铁刷卡记录;

步骤二:根据步骤一的地铁刷卡记录,以乘客连续两次的进出站刷卡记录分别为一次出行的o和d,统计每日的乘客的出行od,求出每日的地铁客流的od分布;

步骤三:按照步骤二求出的od分布,统计每日待统计的地点区间内所有地铁区间在单位时间窗内的客流;同时,由步骤一中的地铁刷卡记录直接统计得到每日地铁所有站点在单位时间窗内的客流;

步骤四:构建地铁客流网络g,以单位时间窗内的地铁站点客流为节点,以单位时间窗内的地铁区间客流为边的权重,建立地铁客流网络g;

步骤五:对于待统计的地点区间内的每一个目标地铁区间,以步骤四中所建立的地铁客流网络g中的所有节点和边作为其备选特征,取特征训练数据集d={(x1,y1),(x2,y2),…,(xn,yn)},xi∈rd,y∈r,矩阵x=(x1,x2,…,xn)t表示训练集样本的x输入,xi∈rd,其中r表示实数,d表示维数,矩阵y=(y1,y2,..,yn)t表示训练集样本的y输入,yn与xn对应,构成一个样本,n为样本数,利用递归特征消除算法作为特征选择方法,找出目标时间窗内对每一目标地铁区间影响最大的前k个特征;

步骤六:利用梯度提升回归树方法建立回归预测模型,将步骤五中挑选出的对目标区间影响最大的前k个特征,作为回归模型的输入,纳入后续的回归预测,此时输入的样本xi的维数是k维,目标值列矩阵y=(y1,y2,..,yn)t与特征选择方法中的目标值一致。

所述的一种基于机器学习的地铁短时客流预测方法,所述的步骤一中,地铁刷卡记录只选择所有包括完整出行od的地铁刷卡记录。

所述的一种基于机器学习的地铁短时客流预测方法,所述的步骤二中,以乘客的出行od为最短路径出行od。

所述的一种基于机器学习的地铁短时客流预测方法,所述的步骤五中,所述的递归特征消除算法包括以下步骤:

步骤1:初始化:原始特征集合s={1,2,…,d},特征排序集

步骤2:当s不为空时,执行步骤3,否则结束递归特征消除算法并输出特征排序集f;

步骤3:获取候选特征集合的训练样本即训练数据集:d={(x1,y1),(x2,y2),…,(xn,yn)},xi∈rd,d∈s,y∈r,作为输入;

步骤4:利用线性回归模型:yi=ω0+ω1xi1+ω2xi2+…+ωdxid,得到每个特征的重要程度,即线性回归模型的系数ωk,k=1,2,…,d;

步骤5:找出排序准则分数最小的特征p=argminkωk,ωk表示第k个特征的排序准则分数即重要程度,此时对应线性回归的中的权重系数,p表示当前排序准则分数最小的特征,argminkωk表示整个函数取最小值时,自变量k的取值,即p;

步骤6:更新特征集f={p}∪f;

步骤7:在s中去除特征s=s/p,返回步骤2。

所述的一种基于机器学习的地铁短时客流预测方法,所述的步骤六中,所述的梯度提升回归树方法包括以下步骤:

步骤1:初始化估计一个使损失函数极小化的常数值,其中常数值c要使得的值最小,即c和yi接近,此时f0(x)是只有一个节点的树;

步骤2:迭代地建立m棵提升树,以训练数据集d={(x1,y1),(x2,y2),…,(xn,yn)},x∈rk,y∈r作为输入,其中矩阵x=(x1,x2,…,xn)t表示训练集样本的x输入,xi∈rk,其中维数为k维,列矩阵y=(y1,y2,..,yn)t表示训练集样本的y输入,yn与xn对应,构成一个样本,n为样本数;计算损失函数的负梯度在当前模型的值其中i=1,…,n,为求导符号,n为迭代次数,并将它作为残差的估计值;

步骤3:对于rmi拟合一棵回归树,得到第m棵树的叶节点区域rmj,j=1,2,…,j,j为叶子节点个数;对每个叶子节点循环;

步骤4:利用线性搜索估计叶节点区域的值使损失函数极小化,更新其中rmj表示第m棵树的叶节点区域;

步骤5:即为最终的模型。

本发明的技术效果在于,采用递归特征消除算法完成特征选择,挑选出目标区间在目标时间窗内的重要特征。采用梯度提升回归树方法建立回归预测模型,实现地铁短时客流预测。本方法可以在数据源单一的情况下,达到较高的预测精度。利用历史数据建立回归预测模型,结合实时数据预测地铁短时客流,对城市轨道交通运营编组设计优化提供帮助。

附图说明

图1为本发明所述基于机器学习的地铁短时客流的预测方法的流程图;

图2应用本方法预测深圳地铁短时客流的结果展示图,表示所有地铁区间在一周内平均相对误差的概率分布。

图3(a--f)应用本方法预测深圳地铁华侨城站至世界之窗站的短时客流,表示11月1日至11月6日每一天预测值与真值的客流对比情况。

具体实施方式

如图1所示,本实施例的研究区域即待统计的地点区间选择为深圳市,通过过滤深圳通地铁拍卡数据,清洗掉不满足条件的记录,并且假设每对od按照最短路径出行,求出每日od分布,根据统计的单位时间窗内地铁区间客流和地铁进出站客流,生成深圳地铁客流网络。记录起止时间分别为2014年10月1日和2014年12月31日,2014年深圳地铁共有118个地铁站点,252个区间。选取十月的所有客流作为历史数据,通过递归特征消除算法挑选特征,并且建立回归预测模型。十月平均每天约有3094757条刷卡记录。具体实施方式包括以下步骤:

步骤一:获取深圳地铁拍卡数据,清洗掉不满足条件的记录(用于本研究的数据须包含完整出行od)。

步骤二:基于深圳通拍卡数据,乘客连续两次的进出站刷卡记录分别为一次出行的o和d,统计每日乘客的出行od。假设每对od按照最短路出行,求出每日深圳地铁客流的od分布。

步骤三:按照步骤二求出的od分布,统计每日所有深圳地铁区间在单位时间窗内的客流。同时,由深圳通拍卡数据即步骤一中得到的包含完整出行od的拍卡数据,直接统计得到每日深圳地铁所有站点在单位时间窗内的客流。本研究时间窗长度设置为15min,考虑到地铁运营时间,每日统计时间为6:00—24:00,因此全天共有96个时间窗。

步骤四:构建深圳地铁客流网络g。2014年深圳地铁共有118个地铁站点,252个地铁区间,以单位时间窗内的地铁站点客流为节点,以单位时间窗内的地铁区间客流为边的权重,建立深圳地铁客流网络g。

步骤五:特征选择。对于每一目标地铁区间,步骤四中所建立的深圳地铁客流网络g中的所有节点和边作为其备选特征,利用递归特征消除算法,找出目标时间窗内对每一目标地铁区间影响最大的前k个特征。特征训练数据集d={(x1,y1),(x2,y2),…,(xn,yn)},x∈rd,y∈r.将10月所有客流纳入特征选择训练,n=31。其中,特征矩阵x(n×d)=(x1,x2,…,xn)t由整个深圳地铁252个区间前1、2时间窗客流和118个地铁站前1、2时间窗进出站客流组成,总共包含976个备选特征,即特征维数d=976。具体表示为xn=(itervaliflowk,stajflowkin,stajflowkout),i=1,2,…,252;j=1,2,…,118;k=1,2详情见表1:

表1备选特征详情

目标值列矩阵y=(y1,y2,..,yn)t由n天内目标区间在目标时间窗内的客流组成。本研究采用递归特征消除算法进行特征选择,具体实现过程见算法1:

步骤六:建立回归预测模型。将步骤五中挑选出的对目标区间影响最大的前k个特征,即深圳地铁客流网络g中对目标区间最重要的节点和边,作为回归模型的输入,纳入后续的回归预测,此时输入的样本xi的维数是k维。目标值列矩阵y=(y1,y2,..,yn)t由n天内目标区间在目标时间窗内的客流组成,与特征选择方法的目标值一致。本研究利用梯度提升回归树方法建立回归预测模型,具体实现过程见算法2:

预测11月1日至11月7日所有区间在所有时间窗内的客流,并将预测值与观测值进行比较。误差衡量方法采用平均绝对百分误差(mape),绝对百分比误差方差(vape)以及均方根误差(rmse),将单位时间窗内的区间客流量按照不同等级分别计算误差,即区间客流量在1000以下或2000以上或二者之间,结果如表2所示:

表2.预测误差

求出11月1日至11月7日所有地铁区间所有时间窗内的预测值与真值相对误差的平均值,其概率分布如图2所示,94.4%的地铁区间误差在20%以内。

以华侨城至世界之窗这一地铁区间为例,将其每一天所有时间窗的客流预测值与真值比较,其结果如图3所示,图3.a—f分别表示11月1日至11月6日每天从早上6点至晚上24点,客流预测值与真值的拟合情况,由图可以看出预测结果精度较高。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1