基于改进RF-XGBoost算法的列车运行晚点预测研究

2023-03-14 08:32刘鲁岳肖宝弟岳丽丽
铁道标准设计 2023年3期
关键词:晚点决策树高铁

刘鲁岳,肖宝弟,2,岳丽丽

(1.兰州交通大学自动化与电气工程学院,兰州 730070;2.北京康吉森交通技术有限公司,北京 101318)

引言

伴随着中国经济的快速发展,新时期“八横八纵”高速铁路网不断加密并覆盖各级城市。截至2021年底,全国高速铁路运营里程已达到4万km。高铁服务旅客出行的同时,由于恶劣天气,设备故障及客流量大等影响,列车晚点的现象时有发生。据资料显示,京广高铁和沪昆高铁等繁忙干线经常因为暴雨导致列车晚点,晚点时间长达数小时。而且高铁存在行车密度大,客流量多以及交路图复杂等特点,晚点将会打乱列车正常运行计划,增加在区间运行的风险及加重车站调度员的工作量[1]。

列车晚点分为初始晚点和连带晚点。由于设备故障和恶劣天气等原因造成的晚点称为初始晚点;由于前行列车晚点而导致后行列车晚点称作连带晚点[2]。因此,为了使列车晚点损失降到最小,在铺画列车运行图时需要设置一定的缓冲时间。设置缓冲时间能够使列车实现晚点自身恢复[3]。近几年,国内外有大量学者针对列车晚点预测进行研究。张琦等[4]通过特征识别方法,将晚点类型分为四类,运用神经网络对连带晚点现象智能预测;庄河等[5]基于广铁集团高速列车的运行实绩,通过K-S检验比较初始晚点分布曲线的拟合效果;黄平等[6]运用随机森林回归模型,将晚点恢复时间作为因变量研究武广高铁晚点恢复情况;廖璐等[7]建立基于GBDT的列车晚点时长预测模型,经过模型调参后发现预测精度提高;张路凯等[8]提出在状态空间下的模型架构,设计传统误差的二次线性调节器对晚点预测误差控制,与贝叶斯网络后比较效果更佳;SANJIN[9]提出运用一种模糊Petri网模型来预测列车晚点情况,并对晚点时长等级进行评估;SHI等[10]将贝叶斯优化与极端梯度提升相结合预测列车到达晚点时间,研究发现在异常情况下预测结果更精确;HUANG等[11]采用多数据融合的方式,结合3D CNN、RNN、LSTM和FCNN预测列车到达延迟,发现各项指标趋于更优。

综上,现有的研究理论主要是应用传统数学模型和机器学习方法实现列车晚点预测。比较发现,机器学习的预测精度明显高于数学模型。在现有晚点预测文献中,晚点因素的选取主要由经验决定,但凭借经验容易遗漏重要变量,而将无关变量输入到模型中,导致预测精度降低。另外,大部分预测模型仅使用一种算法,单一算法存在许多局限性。鉴于此,本文将随机森林(RF)与极端梯度提升(XGBoost)相结合实现列车晚点预测,RF对原始数据特征选择,以挖掘与列车晚点关联度较大的特征量,并将降维后数据集输入XGBoost模型中学习训练,分析得出RF-XGBoost模型具有更高的预测精度。

本文首先概述实验原始数据及预处理过程,选择列车晚点预测的自变量与因变量,并分别介绍RF和XGBoost算法,建立基于RF-XGBoost的晚点预测模型;随后进行模型调参与评估,通过划分不同比例的训练集和测试集,对比RF-XGBoost与原XGBoost模型的性能指标;最后在不同允许误差范围内分析实验结果,并提出下一步的重点研究方向。

1 数据描述与预处理

1.1 线路介绍

本研究使用的列车运行实绩数据来源于中国铁路济南局集团的济青高铁,济青高铁于2015年开工建设,2018年底竣工运营,全长328 km,从济南东站到青岛北站共有12座车站和11个线路区段。线路设计时速为300 km,采用CTCS-3级列控系统和调度集中控制系统。C3列控系统是基于GSM-R无线通信系统实现车-地信息的双向传输,将无线闭塞中心生成的行车许可传给车载系统,轨道电路检查列车占用股道情况,应答器对列车运行实时定位监督[12-13]。

由于线路开通运营初期,高铁列车跨线运行、交路运行复杂且列控设备不完善,列车晚点的现象时有发生,因此选择此线路进行列车晚点预测分析。高速列车晚点历史数据均来源于调度中心,时间跨度为2019年10月至2020年1月,一共包括2019年第四季度所有列车到发站事件。数据具体记录了每趟列车的车次、日期、计划到达时间与出发时间、实际到达时间与出发时间等相关信息,部分数据如表1所示。

表1 济青高铁列车部分原始数据

1.2 数据预处理

由于得到的是调度中心原始数据,存在一些缺失值与异常值,不能直接将其输入模型训练,需要对原始数据预处理[14]。数据预处理包括对数据的缺失值、重复值和异常值的处理,最后将数据标准化。

(1)缺、重值处理:由于数据遗漏或属性不同,原始数据表中存在个别数据的缺失或重复,这对研究结果会造成一定影响。因此将重复值予以删除,将缺失值插补处理。

(2)异常值处理:异常值包括不合常理的值以及正晚点偏差极大的不平衡值。此类数据会使预测结果不准确,因此将明显错误的异常值数据剔除。

(3)数据标准化:将处理过的数据进行清洗,把数据集按照比例和范围缩小,将其放入相同的特定区间,实现数据标准化,减小数据差异对晚点预测建模的影响。将预处理后的列车晚点数据做成易于观测的频率分布直方图,如图1所示。

图1 济青高铁列车晚点到达观测直方图

列车到达晚点符合“长尾分布”的特点,大多数高铁晚点时间在10 min以内,只有极少数晚点在20 min以上,而且部分列车会提前5 min之内到达。这种现象符合常规的列车晚点分布,便于分析训练。

2 模型建立

2.1 随机森林(RF)算法及原理

随机森林(Random Forest,RF)算法是在2001年由美国贝尔实验室提出,属于传统决策树的一种集成学习算法[15]。随机森林通过对数据建模和分类回归,可用于风险等级预测和模型状态评估。在处理预测问题方面,大量回归树组合处理多维度的复杂数据,不易出现过拟合,并且具有较高的准确率。RF算法的原理图解如图2所示。

图2 随机森林算法原理

RF算法是基于Bagging思想的集成学习理论和随机子空间的一种多分类模型,其基本单元是分类回归决策树,由多个决策树构成“一片森林”的集合。当输入一组数据集参与训练时,RF随机建立多棵决策树,经过训练后产生决策树的组合,RF输出的结果是由决策树多数投票决定的[16]。由于RF采取有放回的随机抽样,从概率的角度分析,有部分数据将无法参与训练而被浪费,此类数据称为袋外数据(out of bag data,obb)。RF中决策树生成过程如下。

Step1:设训练集数据为D个,每棵决策树有放回的随机抽取m个样本作为训练子集。

Step2:在M个特征集合中随机挑选k个样本作为特征子集,从k个特征中选择最优的一个特征进行分裂。

Step3:在不剪枝的情况下,让每棵树一直分裂下去,然后重复上述过程。

RF算法虽然常用于预测问题研究,但是由于算法的参数需要人工调节,若调节不当,预测精度可能有差别。因此需要调整参数并深入研究。

2.2 特征自变量选择

初始列车的晚点时长将会影响后续列车的晚点情况,若前一列车在某车站造成延误,需考虑相同股道的下一列车是否受影响在该站晚点。由于在铺画运行图时设置了缓冲时间,所以当列车发生小延误时能够被吸收,但在大延误时无法恢复还将波及下一车站,关键要预测列车在下一车站的到达晚点时间。

结合列车原始数据,分析可能造成列车晚点的影响因素,初步选出以下13个变量并分别标记为X1~X13。

(1)列车i在S站实际到达时间(X1)

(2)列车i在S站实际出发时间(X2)

(3)列车i在S站实际停留时间(X3)

(4)目标列车i的车次编码号(X4)

(5)列车i在S站计划到达与实际到达时间偏差(X5)

(6)列车i在S站实际出发与计划出发时间偏差(X6)

(7)管辖范围内接入始发车站编码(X7)

(8)管辖范围内终到交出车站编码(X8)

(9)列车i在区间内(S-1站至S站)图定运行时间(X9)

(10)列车i在区间内(S-1站至S站)实际运行时间(X10)

(11)S-1站至S站的区间长度(X11)

(12)列车i经停车站的编码(X12)

(13)列车i的属性及类型(X13)

随后,运用RF算法进行数据集降维,依据重要度排序的结果筛选出特征数据集,经过多次训练,重要度的数值及排序结果均未发生变化。各变量排序结果如图3所示。变量X9重要度评分与前7个变量相差较大,因此,提取特征排序前7个量(X1、X2、X3、X5、X6、X10、X11)作为影响晚点的特征自变量,组成特征空间集作为预测模型的输入,模型因变量(预测变量)为预测列车到站晚点时间。分析7个特征变量间的关系,绘制其散点图矩阵,如图4所示。比较得出特征变量X1与X2线性相关度最大。但X1与X11间也存在较强相关性,其他各参数均存在多重共线性,不能直接进行线性回归,因此选用机器学习来处理。

图3 影响列车晚点特征重要度排序

图4 各特征变量之间的散点图

2.3 XGBoost算法及原理

XGBoost(eXtreme Gradient Boosting)全称为极端梯度提升树,它由梯度提升决策树(GBDT)发展而得到。XGBoost算法的主要特点是不断增加新的决策树参与训练,然后去拟合预测真实值与之前所有决策树预测真实值的残差,从而形成众多树规模的强学习器,将之前所有决策树的预测结果累加形成最终的预测值[17]。因此,XGBoost算法在每棵决策树之间为串行运算,而在分列树的节点时遵循并行运算。

比GBDT更优的是,XGBoost算法在损失函数中加入了正则项,控制规模的复杂程度,防止出现过拟合[18]。XGBoost算法的目标函数定义如下

(1)

(2)

最后,XGBoost可应用于特征选择,利用贪婪算法计算所有叶子节点分裂前后的信息增益,增益用于确定最佳分割节点,公式如下

gain=

(3)

式中,IL和IR分别为在分割后重新发送左节点和右节点的样本,I=IL+IR。增益得分越高,则XGBoost的特征重要度得分越高,说明对应的特征更重要有效[20]。

XGBoost算法的关键流程为输入特征子集、树的最大深度、弱学习者最大数量和叶子对象最小权重的总和等,输出为训练数据的预测值。XGBoost算法通常有3种类型的参数,分别是通用类型参数、booster参数和学习任务参数[21]。本研究使用的主要参数设置值如表2所示。

表2 XGBoost算法主要参数设置

2.4 RF-XGBoost预测模型构建

RF算法拥有建模速度快、训练效率高、能够处理高维数据和避免过拟合等特点,同时,XGBoost算法利用连续迭代的思想不断优化训练模型,通过累加最终得到预测值,且在其他领域预测中,均取得优良的拟合效果。鉴于上述两种算法的优势,将二者相结合,提出一种RF-XGBoost算法来预测列车晚点问题。

基于RF-XGBoost算法的列车晚点预测模型实现步骤如下。

Step1:整理高铁晚点原始数据集,清洗数据,删除其中的重复值、缺失值和异常值,将数据标准化处理。

Step2:选择列车实际到达时间等参数作为自变量,将预测列车到站晚点时间作为因变量输出。

Step3:使用RF对预处理过的数据集按照重要度排序并降维,将特征排名的前7个特征量作为训练的特征变量输入,完成特征选择。

Step4:利用交叉验证的思想,将数据集分别按70%和30%划分成训练集和测试集。

Step5:划分完的数据集输入XGBoost分类器进行学习训练,不断调整模型参数以提高预测精度,对预测结果用R语言拟合。

Step6:最后计算预测评估指标,分析此模型的准确性,并与原XGBoost算法相比较,查看模型的预测效果。具体RF-XGBoost算法流程如图5所示。

图5 RF-XGBoost预测模型基本流程

3 模型验证与评估

为验证模型预测的准确性,选取R2(决定系数),MAE(平均绝对误差),MSE(均方误差)和RMSE(均方根误差)共4个性能指标评估[22]。当R2越趋近于1,MAE、MSE和RMSE的值越小时,表明数据的非线性拟合程度越高,模型预测的结果越精确。这些指标的计算公式如下

(4)

(5)

(6)

(7)

将原XGBoost模型与改进后的RF-XGBoost模型相对比,分别计算反映预测指标的R2、MAE、MSE和RMSE的值,得到的结果如表3所示。

表3 原模型与改进后模型的性能指标对比

由表3发现,RF-XGBoost模型在各项性能指标方面较XGBoost模型均有所提升,选用此预测模型取得了较小的MAE与RMSE值及较大的R2值,其中MAE值降低了60.5%,RMSE值降低了44.8%,而R2值提高了14.6%,获得了较为满意的预测效果。与XGBoost算法相比,RF-XGBoost处理大量数据拥有更高的拟合能力和更强的鲁棒性,因此该方法可有效预测列车晚点。

为进一步研究选用RF-XGBoost模型的预测精度,本文选取允许预测误差在不同范围内比较,结果如表4所示。研究发现,允许误差在1,3,5 min范围内的预测精度均达到90%,而且在允许预测误差5 min内的精度达到97.78%,取得良好的预测效果。本文以前200次列车为例,绘制了预测晚点时间与实际晚点时间的结果拟合图,发现两条曲线的变化趋势大致相同,拟合程度较高,如图6所示。

表4 模型的预测精度对比结果

图6 RF-XGBoost模型预测晚点与实际晚点时间拟合曲线

4 结论与展望

本文将RF与XGBoost算法相结合,建立RF-XGBoost模型实现高速列车晚点预测,基于济青高铁的运行数据,以特征重要度排序为标准,选择前7个变量输入预测模型训练分析。将此模型与原XGBoost方法相对比,各项预测评估指标均有较大提升,验证了RF-XGBoost模型能够提高预测精度。尽管此方法在研究中取得良好的效果,但后续依然有工作需要进行,进一步的研究方向总结如下。

(1)本研究中仅利用一个季度的列车运行数据,数据训练的容量有限,由于选取的列车晚点数量和区间线路长度有差异,预测结果可能不全面,下一步扩大训练数据集分析。

(2)本文暂未考虑高铁运行时因暴雪等恶劣天气,轨道异物入侵以及春运节假日时客流量大导致的列车大面积晚点的情况,下一步对此类异常情况重点分析。

(3)在探究晚点预测问题新模型时,对比其他各种算法的性能指标和计算机运算时间,以分析出更加优质预测方法和全面的预测结果。

猜你喜欢
晚点决策树高铁
基于马尔科夫链的高铁列车连带晚点横向传播
晚点的火车(外三首)
一种针对不均衡数据集的SVM决策树算法
高铁会飞吗
高速铁路初始晚点致因-影响列车数分布模型
决策树和随机森林方法在管理决策中的应用
人地百米建高铁
基于决策树的出租车乘客出行目的识别
基于肺癌CT的决策树模型在肺癌诊断中的应用
第一次坐高铁