首页> 中国专利> 一种基于流式大数据的交通态势实时计算方法

一种基于流式大数据的交通态势实时计算方法

摘要

本发明公开了一种基于流式大数据的交通态势实时计算方法,包括构建基于Spark Streaming与Kafka的分布式航迹流数据处理平台、Online Learning复杂度评估模型。通过本发明的技术方案,能够通过流式大数据框架实现航迹数据与扇区指标数据的在线转换,并通过改进评估算法,使其能满足在线评估的要求,实现实时的扇区复杂度评估。

著录项

  • 公开/公告号CN112989287A

    专利类型发明专利

  • 公开/公告日2021-06-18

    原文格式PDF

  • 申请/专利权人 北京航空航天大学;

    申请/专利号CN202110456779.8

  • 申请日2021-04-27

  • 分类号G06F17/18(20060101);G06F17/16(20060101);G06F17/15(20060101);G06F16/2455(20190101);G06F16/2458(20190101);G06K9/62(20060101);

  • 代理机构11668 北京航智知识产权代理事务所(普通合伙);

  • 代理人陈磊;张桢

  • 地址 100191 北京市海淀区学院路37号

  • 入库时间 2023-06-19 11:29:13

说明书

技术领域

本发明属于民航技术领域,尤其涉及一种基于流式大数据的交通态势实时计算方法。

背景技术

近年来,随着经济的快速发展,空中交通流量随之增大,空中交通变得更加复杂和不可控。随之而来,产生了空中交通堵塞的问题。在空管领域,空域被分为一个个扇区单位,对于扇区的管制人员,知晓管控扇区的复杂程度,有利于更好的完成扇区管制工作。同时,空中交通受多种因素影响,瞬息万变,对于管制员的工作有很大的压力。因此,扇区复杂度的实时评估显得十分必要。

扇区复杂度的评估是在航迹数据分析运算的基础上实现的。飞机的航迹数据由雷达等多种渠道采集而得,是典型的流式数据,具有顺序、大量、快速、连续到达,随时间延续而无限延长的特点。同时,全国的飞机航迹数据体量大,在数据处理分析上耗时久,难度大。因此,实时评估扇区复杂度是一项艰难的工作。现有的复杂度评估方法都是基于静态批数据,使用一些机器学习、深度学习模型如神经网络等,通过多维扇区复杂度数据拟合出复杂度评估模型,再静态地完成复杂度评估。在以流数据为基础进行复杂度实时评估的领域,尚未有相关发明研究。

发明内容

为了解决实时评估扇区复杂度的问题,本发明提出一种基于流式大数据的交通态势实时计算方法,旨在通过流式大数据框架实现航迹数据与扇区指标数据的在线转换,并通过改进评估算法,使其能满足在线评估的要求,实现实时的扇区复杂度评估。本发明的具体技术方案如下:

一种基于流式大数据的交通态势实时计算方法,所述方法基于分布式航迹流数据处理平台,所述平台包括航迹数据采集模块、Kafka消息系统、SparkStreaming集群、数据存储模块、评估模型训练模块与结果反馈模块,其中,

所述航迹数据采集模块是航迹数据的接入模块,由外部数据源提供流式航迹数据;所述Kafka消息系统由所述航迹数据采集模块接入流式数据,使用分布式的结构处理高吞吐量的流式航迹数据,接入所述SparkStreaming集群进行数据处理;所述SparkStreaming集群对所述Kafka消息系统接入的航迹消息队列进行分布式处理,由多个工作节点构成,每个节点包含三个Spark Executor处理器,两个Spark Executor属于航迹数据解读处理,另外一个Spark Executor属于扇区复杂度计算,分别在其上运行相应的业务处理程序,将航迹数据转换为扇区复杂度数据;所述数据存储模块对接所述SparkStreaming集群,完成对于转换后的复杂度数据的存储;所述评估模型训练模块基于所述数据存储模块中的复杂度数据,实现评估模型训练,并输出复杂度的评估模型;所述结果反馈模块接入已经训练好的模型,并反馈复杂度的评估结果;

所述方法包括以下步骤:

S1:SparkStreaming工作节点部署;

Spark Streaming集群每个节点安装分布式数据库系统Hbase,用于存储结构化之后的原始航迹数据;安装Postgis数据库,用来存储经过Spark Streaming集群计算后的扇区复杂度数据,支持模型拟合与其他业务功能;

S2:数据解读;

将航迹数据采集模块采集来的原始航迹数据封装为相应弹性分布式数据集,对航迹数据进行转换,得到格式化的弹性分布式数据集,对应得到“航班序列号、对地速度、飞行高度、经度、纬度、航向角、时间”的格式化的数据,并同时将格式化的航迹数据存储于Hbase分布式数据库中;

S3:数据处理;

通过步骤S2格式化的航迹数据的经度和纬度,结合全国空域扇区的区域划分,得 到各个空域扇区的飞机数量;计算扇区复杂度数据运算的核心部分即斜距

其中,

部署两个Spark Executor用来进行航迹数据的解读格式化,以及各个扇区内飞机数量与两架飞机之间的oblicaldistance;

S4:扇区数据计算;

根据步骤S2的数据解读与步骤S3的数据处理得到的格式化的航迹数据,运算得到各个扇区的扇区复杂度数据,用于支撑模型的拟合与扇区复杂度的评估;最终计算得到的各个扇区的扇区复杂度数据,存储于PostGis数据库中;

S5:构建OnlineLearning扇区复杂度评估模型;

使用onlinelearning的思想更新模型,使用逻辑回归logistic regression作为复杂度分类的基础模型;

扇区复杂度分为三类,使用softmax函数构造解决多分类问题;

三分类的逻辑回归函数

其中,k=3,代表最终分类的类别数量,p为取得括号中式子的概率,j为从1到k的整 数,

其中,1{·}的取值规则是大括号内的表达式为真取1,反之取0;m为数据集的个数,k为3;

对模型更新,使上述公式值最低,求导得到梯度公式,沿着梯度的方向调整权重直 至收敛,即得到最优解,梯度

在梯度下降方面,使用FTRL优化算法进行权重更新,具体公式为:

其中,

通过结合softmax函数的逻辑回归多分类模型与FTRL梯度下降优化算法,拟合得到在线的扇区复杂度评估模型;

航迹数据通过SparkStreaming集群运算后得到结构化的扇区复杂度数据,以流数据的形式参与OnlineLearning扇区复杂度评估模型的拟合,在线更新模型参数权重,完成模型的拟合,最终实现扇区复杂度的分类

本发明的有益效果在于:

1.本发明在交通态势评估领域,有效提升时效性,提高实时态势评估的效率。

2.本发明使用在线更新模型的方法,提升模型对于不断变化态势的鲁棒性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。其中:

图1是SparkStreaming处理过程图;

图2是Kafka整体结构图;

图3是本发明的系统整体架构图;

图4是本发明的系统内部运行结构图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

Apache Spark 是当今最流行的开源大数据处理框架,相对于MapReduce来说,提供了更高级的编程接口与更高的性能。Spark提出了弹性分布式数据集(RDD)作为主体的计算集合,它是可读的、分区的,容错性高、并行性较好。SparkStreaming是Spark的一个扩展,可以实现高吞吐量的、具备容错机制的实时流数据处理,将接收到的实时流数据,按照一定时间间隔,对数据拆分,形成离散流数据Dstream;Dstream可以视作一组RDDs,对Dstream的处理实际上是将RDDs交给Spark Engine引擎,最终得到一批批的操作结果。SparkStreaming处理过程如图1所示。

ApacheKafka最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统,主要设计目的主要包括:持久化的消息访问能力、高吞吐率、易扩展等。Kafka集群包含一个或多个服务器,称为broker(代理)。每条发至Kafka的消息都有一个类别,成为Topic,每个Topic包含一个或多个Partition(分区)。消息的发送者和接受者分别称为Producer和Consumer。Consumer为消息的真正使用者,从Broker中获得消息并进行处理。Kafka整体结构如图2所示。

如图3-4所示,一种基于流式大数据的交通态势实时计算方法,方法基于分布式航迹流数据处理平台,平台包括航迹数据采集模块、Kafka消息系统、SparkStreaming集群、数据存储模块、评估模型训练模块与结果反馈模块,其中,

航迹数据采集模块是航迹数据的接入模块,由外部数据源提供流式航迹数据;Kafka消息系统由航迹数据采集模块接入流式数据,使用分布式的结构处理高吞吐量的流式航迹数据,接入SparkStreaming集群进行数据处理;SparkStreaming集群对Kafka消息系统接入的航迹消息队列进行分布式处理,由多个工作节点构成,每个节点包含三个SparkExecutor处理器,两个Spark Executor属于航迹数据解读处理,另外一个Spark Executor属于扇区复杂度计算,分别在其上运行相应的业务处理程序,将航迹数据转换为扇区复杂度数据;数据存储模块对接SparkStreaming集群,完成对于转换后的复杂度数据的存储;评估模型训练模块基于数据存储模块中的复杂度数据,实现评估模型训练,并输出复杂度的评估模型;结果反馈模块接入已经训练好的模型,并反馈复杂度的评估结果;

实时计算方法包括以下步骤:

S1:SparkStreaming工作节点部署;

Spark Streaming集群每个节点安装分布式数据库系统Hbase,用于存储结构化之后的原始航迹数据;安装Postgis数据库,用来存储经过Spark Streaming集群计算后的扇区复杂度数据,支持模型拟合与其他业务功能;

S2:数据解读;航迹数据的采集与传输是以消息队列的形式实现的,这并不是一种结构化的数据,在后续的数据分析与模型拟合时,需要将其转换为结构化数据。

将航迹数据采集模块采集来的原始航迹数据封装为相应弹性分布式数据集,对航迹数据进行转换,得到格式化的弹性分布式数据集,对应得到“航班序列号、对地速度、飞行高度、经度、纬度、航向角、时间”的格式化的数据,并同时将格式化的航迹数据存储于Hbase分布式数据库中;

S3:数据处理;除了数据解读程序外,数据处理程序负责计算每个扇区内的飞机数量与扇区复杂度数据运算的核心部分。

通过步骤S2格式化的航迹数据的经度和纬度,结合全国空域扇区的区域划分,得 到各个空域扇区的飞机数量;计算扇区复杂度数据运算的核心部分即斜距

其中,

由于航迹数据中包含的飞机数量多,在计算各个扇区内包含的飞机以及飞机与飞机之间的oblicaldistance时耗时很久,因此,部署两个Spark Executor用来进行航迹数据的解读格式化,以及各个扇区内飞机数量与两架飞机之间的oblicaldistance,用以支撑扇区复杂度数据的运算,提高效率。

S4:扇区数据计算;

根据步骤S2的数据解读与步骤S3的数据处理得到的格式化的航迹数据,运算得到各个扇区的扇区复杂度数据,用于支撑模型的拟合与扇区复杂度的评估;最终计算得到的各个扇区的扇区复杂度数据,存储于PostGis数据库中;

扇区复杂度数据信息如下表所示,其中9-18均由数据处理程序中计算得到的oblicaldistance值运算而得。

表1 扇区复杂度数据信息

S5:构建OnlineLearning扇区复杂度评估模型;

对于传统的复杂度评估模型,都是使用批计算的方式,一次性输入全部的实验数据,拟合出模型,再在测试数据集上测试,调整得到最优解。这种模型拟合方式是每次使用全量数据计算损失函数与梯度,然后更新模型。对于流式的航迹数据来说,产生的扇区复杂度数据也是以流数据的形式参与运算,如果还是以批计算的方式来拟合模型,那么在实时性、更新性的层面上效果较差。

为了实时的更新模型,本方法使用onlinelearning的思想去更新模型。相对于传统模型,onlinelearning能够根据线上的预测结果动态调整模型,加入模型预测错误,会及时做出修正,因此Online Learning能够更加及时地反应线上变化。为了达到实时性的要求,Online Learning的优化目标是使得整体的损失函数最小化,它需要快速求解目标函数的最优解。

使用onlinelearning的思想更新模型,使用逻辑回归logistic regression作为复杂度分类的基础模型;

扇区复杂度分为三类,使用softmax函数构造解决多分类问题;

三分类的逻辑回归函数

其中,k=3,代表最终分类的类别数量,p为取得括号中式子的概率,j为从1到k的整 数,

其中,1{·}的取值规则是大括号内的表达式为真取1,反之取0;m为数据集的个数,k为3;

对模型更新,使上述公式值最低,求导得到梯度公式,沿着梯度的方向调整权重直 至收敛,即得到最优解,梯度

在梯度下降方面,使用FTRL优化算法进行权重更新,具体公式为:

其中,

通过结合softmax函数的逻辑回归多分类模型与FTRL梯度下降优化算法,拟合得到在线的扇区复杂度评估模型;

航迹数据通过SparkStreaming集群运算后得到结构化的扇区复杂度数据,以流数据的形式参与OnlineLearning扇区复杂度评估模型的拟合,在线更新模型参数权重,完成模型的拟合,最终实现扇区复杂度的分类。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号