摘要:针对航班延误这一航空运输业亟待解决问题,通过对航班延误影响指标的深入分析,提出基于机器学习算法解决航班延误问题。根据对大量历史数据的训练,并将机器学习分类算法与时间序列模型结合应用到数据训练,便于模型构建。结合所采集时间点的实际航班延误数对比分析评估预测模型。实验结果表明,该方法有效、精准地实现航班延误数量时间段预测及特定航班延误时间等级预测这两个业务功能,有利于机场及时进行政策方案调控,以便解决延误问题。
关键词:时间序列 航班延误 预测分析 机器学习
1 航班延误业务场景介绍
航班延误是国际国内民航业亟待解决的问题,改善延误状况迫在眉睫。繁忙的枢纽机场作为多数航班的转乘点是航班延误的高频发生地,因此本文通过搭建航班延误预测模型,做到航班信息提前预测,进而实现对航班延误程度的全局掌握,有利于机场及时进行政策方案调控,以便解决延误问题。
本文将贝叶斯[8]及决策树等机器学习分类算法用到航班延误的预测领域。面向某千万级机场航班延误业务场景,利用机器学习算法处理时间序列数据,采用数据挖掘等为其建模,对其中一定时间段内的延误航班数量进行预测(功能1),为机场发布延误等级[9]预警提供信息;利用集成算法结合贝叶斯学习器、决策树算法这两个子学习器完成基于集成学习算法的航班延误预测模型的建立。应用航班预测模型对特定航班的延误时间进行预测(功能2),并辅以概率表示,机场后续可结合本功能加以颜色辅助,面向航空公司与乘客发布延误提示。
2 航班延误时间段预测
2.1 传统方法实现
为预测未来航班延误情况,首先对数据进行处理,选取2016年5-6月的记录作为实验数据,将日期作为自变量,航班延误数量、平均延误时间、延误率分别作为3个因变量,逐个进行建模预测。
为消除时间序列中的不规则变动,选取时间预测模型中的移动平均法,通过将本期观察值与前一期指数平滑值的加权平均完成时间序列预测模型的搭建。
移动平均法:测试数据集预测结果分析
图1- 时间序列预测效果图
根据SPSS运行训练5-6月数据结果可知,模型统计量平稳的R方为0.168,显著性sig值为0.039<0.05,因此可判断时间序列模型比较适合,但由结果可知,传统方法拟合效果一般,且未达到很高准确度。
2.2 本文机器学习方法实现
基于航班延误的时间序列[12]预测模型的稳定性与可靠性,因而我们可以通过建立航班延误的预测模型,使用历史数据,对未来几天的航班延误情况作出预测,以及时对航班延误的峰值时刻提早作出准备,最大程度上解决航班延误问题。
数据挖掘[13]工具Weka配备了一个专门的时间序列分析环境,可以开发、评估和可视化预测模型。选取2016年7-9月的记录作为训练数据,实验数据集包含了123个实例。共有时间、平均延误时间、延误率和延误等级四种属性。其中前三种属性为数值类型,最后时间属性为分类属性,表示实例所对应的的类别。
随机森林算法 数据集预测结果分析
图2 本文机器学习预测效果图
Weka时间序列框架采用一种机器学习和数据挖掘的方法来为时间序列建模,将数据转换为标准命题学习算法可以处理的形式。随机森林通过整合多个决策树以提升分类正确率,通过上图可得,本文通过运用随机森林[14]算法完成时间序列的建模及数据拟合,准确率高达97.4%,相对错误率仅为0.3656,本文方法用时少、精度高。
3 单个航班延误等级预测
3.1 数据预处理
实验数据集包含了123个实例,经过使用Weka平台的Filter(过滤器)实现对机场航班信息表属性的筛选,选取以下指标作为本站延误密切相关的指标。为了解决指标选取问题,利用独立属性抽取及专家经验建模选取了航班延误相关的几个指标:航班类型(flt_type)、航班任务(flt_task)、飞行器类型(arc_type)、延误代码(delay_code)、源机场离港延误(yuan_dep)前序起飞(qx_qifei)、前序到达(qx_daoda)、本站进港延误(bz_des)。最后将本站进港延误时间这个指标为分类属性,表示实例所对应的的延误等级类别a-f。
3.2 结果及分析
机器学习算法实现预测是通过分类器实现,通过学习大量历史数据构建训练分类器,推算出相关数据与延误等级之间可能的逻辑关系,通过多次试验及参数调试完成最优训练器搭建,最终通过封装模型完成对未知属性y的预测及评估。
3.2.1 贝叶斯算法
贝叶斯主要利用以下3种信息,即总体信息、样本信息、先验信息:即在抽样之前有关统计问题的一些信息。贝叶斯与传统统计方法[15]最大区别在于是否利用先验信息,一般来说,先验信息主要源于经验和历史资料。
假设导致航班延误事件B发生的原因有Ai(i=1,2,3…n),它们互不相容。现已知航班延误事件B已经发生了,若要估计它是原因Ai所导致的概率,可用Bayes公式求出。
如下图3:使用贝叶斯算法将输入数据进行算法模型训练,利用模型进行评估,进行封装,把训练好的模型保存,使之应用于预测。输出信息包括延误时段实际值、预测值及延误预估概率。使用贝叶斯分类器训练数据集,得到准确率为69.84%。根据混淆矩阵,第一排的数据表示原来是“a”的实例,有48个被正确的预测为“a”有4个错误的预测成“d”,对角线数字“48+29+38+4+11+5=133”是预测正确数,而6行6列矩阵的数字总和即为实例总数。133/199=0.6984正好是正确分类的实例所占比例。这矩阵对角线上的数字越大,表面预测效果越显著。
图 3 贝叶斯预测结果图
3.2.2 决策树J48算法
决策树顾名思义就是从海量数据中产生决策的机器学习技术[16]。J48算法是一个里程碑式的决策树算法,它的建树过程和分类过程类似于ID3算法,开始时,将整个训练实例放入根节点,然后计算非类属性分裂实例集或者不能再可供选择的分裂属性。递归过程以单独类的形成或分割不能继续进行为结束标志。
J48算法相比之前的算法有了一些新特点:既可以处理连续值又可以处理缺省值,还可以修剪决策树。
图 4 决策树预测结果图
在用J48对数据集进行分类时采用了10折交叉验证(Folds=10)来选择和评估模型,其中属性值有6个a-f。部分结果如上图:该算法P=0.568,R=0.568,ROC面积为0.860。由此可知:决策树的预测效果要优于贝叶斯算法分类器。
4 结束语
本文基于某千万级机场近几个月的航班延误实时数据为实验数据,首先通过机器学习[18]算法完成时间序列模型的数据训练、模型评估及结果预测,实验数据以高达90%以上的准确率完成在月、周、日及小时段航班延误量预测,实现全局掌握航班延误程度,为机场发布延误等级预警提供信息。然后利用集成算法将贝叶斯算法及决策树J48算法分类器进行构造,完成集成分类器的搭建,并通过测试集分别完成贝叶斯分类器、决策树分类器及本文集成分类器的评估,最终以90%的准确率实现分类器对测试数据的预测,完成业务功能2的特定航班延误等级预测,进而实现对航班延误程度的局部掌握,有利于机场及时进行保障资源调度。
基于某机场实现的延误场景实验说明基于机器学习算法预测模型的精准性及可靠性。本文只是对机器学习算法在机场的航班延误领域进行了初步的实验,要将整个算法实施到机场系统中,还需要进一步研究此算法在整个实际生产运行系统的运行等情况。
参考文献:
[1] 王新茹.基于粒子群算法的智能航班调度方法研究[D].中国民航大学,2008.
[2] 董钰.大规模航班延误恢复调度模型及管理研究[D].大连海事大学,2009.
[3]郑松林.基于修正延误波及树对航班延误传播的可靠性研究[D].南京航空航天大学,2014.
论文作者:刘晓疆
论文发表刊物:《基层建设》2019年第21期
论文发表时间:2019/10/16
标签:算法论文; 航班延误论文; 模型论文; 时间论文; 数据论文; 序列论文; 机器论文; 《基层建设》2019年第21期论文;