首页> 中国专利> 一种实时公交信息服务系统

一种实时公交信息服务系统

摘要

本发明公开一种实时公交信息服务系统,包括服务应用程序编程接口、数据访问接口、车辆到达时间预测模块、车辆到达时间预测准确率评估模块、实时数据处理模块、事件统计模块以及车辆实时状态监控模块,用户通过服务应用程序编程接口对包括车辆到达时间、车辆运行状态的实时公交信息进行查询。本发明的实时公交信息服务系统对公交信息服务系统中车辆的异常情况进行处理,能对大量的公交信息数据进行快速的实时处理,效率高效;对实时公交信息中的异常情况进行全面考虑,实时显示查询车辆以及系统中所有车辆的运行状态;同时具有车辆到达时间的预报的准确、实时公交信息的查询快速的优点。

著录项

  • 公开/公告号CN104916155A

    专利类型发明专利

  • 公开/公告日2015-09-16

    原文格式PDF

  • 申请/专利权人 深圳北斗应用技术研究院有限公司;

    申请/专利号CN201510263750.2

  • 发明设计人 周涌;韩云飞;

    申请日2015-05-22

  • 分类号G08G1/123(20060101);H04L29/08(20060101);G06Q50/26(20120101);

  • 代理机构深圳冠华专利事务所(普通合伙);

  • 代理人诸兰芬

  • 地址 518055 广东省深圳市南山区桃源街道学苑大道1068号超算中心4楼

  • 入库时间 2023-12-18 10:55:13

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-10-13

    授权

    授权

  • 2016-06-15

    著录事项变更 IPC(主分类):G08G1/123 变更前: 变更后: 申请日:20150522

    著录事项变更

  • 2015-11-11

    实质审查的生效 IPC(主分类):G08G1/123 申请日:20150522

    实质审查的生效

  • 2015-09-16

    公开

    公开

说明书

技术领域

本发明涉及智能交通领域,尤其是一种实时公交信息服务系统。

背景技术

在智能交通领域,采用实时公交信息服务系统可以显著提高公共交通服务水平,吸引更多乘客采用公交出行方式。实时公交信息服务系统通过对公交车定时发送的地理位置数据进行实时处理,为在公交站候车的乘客提供实时公交信息服务,乘客可实时查询车辆的相关信息,如当前位置,距离候车站点的距离,预估车辆的运行耗时等信息。

公交车实时发送的地里位置数据具有如下特点:

(1)数据量大,城市公交车数量多,每辆车每隔20秒产生一条数据,这些产生的数据要实时地被处理以提供信息服务;

(2)数据异常情况多且复杂,车载的定位设备种类繁多,受到卫星定位的精度、定位设备的限制、网络信号等多种客观并且不可预知的因素影响,导致数据中存在大量异常情况的数据。

现有的实时公交信息服务系统存在以下不足:

一是,无法对大量位置数据进行快速的实时处理;

二是,针对数据中的异常问题考虑不够全面。在现实交通运行环境中,公交车的行驶会存在异常情况,如不按既定线路行驶,或中途掉头行驶。当前已有的实时公交信息服务系统并没有针对车辆的状态做过多的设计,这会导致一些处于异常状态的车辆视为正常运行状态的车辆显示给用户,同时无法了解整个系统中所有车辆的总体状况。

三是,车辆到达时间的预报的准确率应该是可评估的,系统的运行状态应该是可监控的,系统运行日志应该是可分析的,但现有的实时公交信息服务系统并未全面考虑以上问题。

发明内容

本发明要解决的技术问题是针对现有设计中存在的缺陷,提一种实时公交信息服务系统。

为克服现有技术中存在的缺陷,本发明采取的技术方案如下:一种实时公交信息服务系统,包括服务应用程序编程接口、数据访问接口、车辆到达时间预测模块、车辆到达时间预测准确率评估模块、实时数据处理模块、事件统计模块以及车辆实时状态监控模块;所述服务应用程序编程接口提供访问系统的通道,所述服务应用程序编程接口、车辆到达时间预测模块、车辆到达时间预测准确率评估模块、实时数据处理模块、事件统计模块以及车辆实时状态监控模块均与所述数据访问接口相互依赖连接,通过该数据访问接口访问系统数据库;用户通过所述服务应用程序编程接口对实时公交信息进行查询;其中,所述车辆到达时间预测模块,采用若干种预测算法,并以分布式方式运行,完成车辆到达时间的预测;

所述车辆到达时间预测准确率评估模块,对设定时间内由所述车辆到达时间预测模块预测产生的所有预测结果进行统计及验证,验证准确率;

所述实时数据处理模块,接收由车辆通过GPS上传的实时数据、对上传的每条实时数据进行预处理、处理实时数据中的异常问题以及利用于处理后的实时数据更新车辆的状态;

所述事件统计模块,记录并统计实时公交信息服务系统在运行过程中发生的各种事件,并以图形界面展示,用以展示所述系统运行的状况;

所述车辆实时状态监控模块,对车辆上传的实时数据进行监控,并以图形界面展示车辆的实时状态信息,用以全面了解所有车辆的实时状态;

所述车辆上传的GPS实时数据包括车辆位置坐标、线路编号、车辆编号、车辆状态信息;所述系统数据库可提取的数据包括缓存的车辆状态信息值、系统当前时间、车辆状态信息被更新时间、每一条线路的上行及下行的站点的位置坐标。

作为对上述技术方案的进一步阐述:

在上述技术方案中,所述车辆到达时间预测模块中,根据以下公式预测车辆到达时间:

其中,所述T(j|i) 为车辆当前位置前方的第一个站点是i,车辆到达站点j的预测耗时;所述 为从站点i到站点i+1,最近的m个耗时的平均值;所述为从站点i到站点i+1,观察到的倒数第k个耗时;所述为车辆当前位置到前方第一个站点的距离;如果车辆正好在某个站点上,该值为0;所述为站点i到站点i+1的距离;所述n为站点总数。

在上述技术方案中,所述车辆监控模块实时监控车辆运行状态,所述车辆运行状态包括离线状态、长时间停留同一位置状态、正在确定目标线路状态、正在确定目标方向状态以及正常运行状态,车辆初始状态为离线状态且始终处于上述车辆运行状态中的一种,所述车辆离线状态的判定由用户查询请求驱动,所述车辆长时间停留同一位置状态、正在确定目标线路状态、正在确定目标方向状态以及正常运行状态的判定由车辆上传的GPS数据驱动,并按如下步骤顺序判断:

步骤1:接收一条车辆上传的GPS数据;

步骤2:判断车辆状态是否为长时间停留在同一位置;

如果是,则跳转到步骤1,进行下一条GPS数据的判定;否则,就进行下一状态的判定;

步骤3:判断车辆状态是否为正在确定目标线路;

如果是,则跳转到步骤1,进行下一条GPS数据的判定;否则,就进行下一状态的判定;

步骤4:判断车辆状态是否为正在确定目标方向;

如果是,则跳转到步骤1,进行下一条GPS数据的判定;否则,就进行下一状态的判定;

步骤5:判断车辆状态是否为正常运行,判断完成后,跳转到步骤1,进行下一条GPS数据的判定。

在上述技术方案中,所述车辆离线状态的判定为车辆在设定的时间长度阀值上未上传GPS数据。

在上述技术方案中,所述车辆长时间停留同一位置状态的判定包括同一位置及长时间停留的判定,所述同一位置的判定为车辆前后两次GPS定位坐标误差距离小于或等于两倍GPS定位误差,所述长时间停留的判定则为车辆停留在某一位置的时间超过了设定的时间长度,且所述长时间停留的判断在所述同一位置的判断之后进行。

在上述技术方案中,所述车辆的目标线路为车辆当前运行的线路,所述车辆正在确定目标线路状态的判定为车辆上传的GPS 数据中的位置坐标未在指定的车辆运行线路上,同时车辆继续上传连续的GPS数据。

在上述技术方案中,所述车辆目标方向包括车辆的上行及下行方向,所述车辆正在确定目标方向状态的判定为车辆的目标线路已经确定,上行及下行方向不确定且车辆在连续上报GPS数据;所述车辆正常运行状态的判定为车辆的目标线路已经确定且目标线路上的上行及下行方向也确定。

同现有技术相比,本发明的有益效果是:

一是,对大数据进行快速的实时处理,效率高效;

二是,对实时公交信息中的异常情况进行全面考虑,对行驶中的车辆的不按既定线路行驶或中途掉头行驶等异常情况进行处理,实时显示查询车辆以及系统中所有车辆的运行状态;

三是,车辆到达时间的预报的准确率高,系统的运行状态实时进行监控;

四是,实时公交信息的查询快速、准确。

附图说明

图1是本发明的系统框图。

图2是本发明各模块之间依赖连接关系示意图。

图3是本发明公交车到站时间预测模型示意图。

图4是本发明车辆运行状态判断流程图。

图5是图4中车辆离线状态判断流程图。

图6是图4中车辆长时间停留同一位置状态判断的流程图。

图7是图4中车辆正在确定目标线路状态判断的流程图。

图8是图4中车辆正在确定目标方向状态判断的流程图。

具体实施方式

下面结合附图对本发明作进一步详细的说明。

图1-8示意了本发明的具体实施例。

如图1, 一种实时公交信息服务系统,包括服务应用程序编程接口(服务API)1、数据访问接口2、车辆到达时间(BAT:Bus Arrival Time)预测模块3、车辆到达时间(BAT:Bus Arrival Time)预测准确率评估模块6、实时数据处理模块4、事件统计模块5以及车辆实时状态监控模块7,所述服务应用程序编程接口(服务API) 1提供访问系统的通道,如图2所示,所述服务应用程序编程接口1、车辆到达时间预测模块3、车辆到达时间预测准确率评估模块6、实时数据处理模块4、事件统计模块5以及车辆实时状态监控模块7均与所述数据访问接口2相互依赖连接,通过该数据访问接口2访问系统数据库;而用户通过所述服务API1查询实时公交信息。

其中:所述车辆到达时间(BAT:Bus Arrival Time)预测模块3,其包括BAT预测RPC(远程服务接口)和BAT预测核心模块,采用若干种预测算法,并以分布式方式运行,完成车辆到达时间的预测,其工作流程为:a.用户请求车辆到站时间;b.获取车辆位置、到等待站距离、速度、实时路况等信息;c.将上一步得到的信息作为参数带入预测模型;d.将预测结果返回给用户。

所述车辆到达时间预测准确率评估模块6,对设定时间内由所述车辆到达时间预测模块3预测产生的所有预测结果进行统计及验证,验证准确率;该模块工作流程为:a.模拟用户请求车辆到站时间;b.得到对应请求的到达时间预测结果;c.从请求开始计时至车辆实际到达时的时间段作为真实到站时间;d经过一段时间预测后,对比预测结果和真实结果,改进时间预测模型。

所述实时数据处理模块4,接收由车辆通过GPS上传的实时数据、对上传的每条实时数据进行预处理、处理实时数据中的异常问题以及利用于处理后的实时数据更新车辆的状态;其具体的数据处理过程为:a.接收实时数据流; b.数据解析;c.数据过滤; d.事件监测(长时间停留,并车等);e.计算车辆所属线路;f.计算上下行方向;g.计算车辆站点位置。

所述事件统计模块5,记录并统计实时公交信息服务系统在运行过程中发生的各种事件,并以图形界面展示,用以展示所述系统运行的状况。在实时数据处理模块中发生的各种事件都会向该模块发送一个事件消息,该模块收到消息后将事件名称、事件描述、事件源,产生时间等记录下来。

所述车辆实时状态监控模块7,对车辆上传的实时数据进行监控,并以图形界面展示车辆的实时状态信息,用以全面了解所有车辆的实时状态,且有轨迹回放,地图打点功能。

所述车辆上传的GPS实时数据包括车辆位置坐标pos(其还包含当前位置坐标pos和上一时刻对应的位置坐标lastPos)、线路编号lineID、车辆编号BusID、车辆状态信息BusState;所述系统数据库可提取的数据包括缓存的车辆状态信息值BusState、系统当前时间curServerTime、车辆状态信息BusState被更新时间updateTime、每一条线路的上行及下行的站点的位置坐标,而位置坐标的表现形式为拐点序列,其包含上行拐点序列pointListUp和下行拐点序列PointListDown。

所述服务应用程序编程接口适用大部分的使用场景,是将用户需求转化为对应的http请求,根据请求的功能和参数,调用具体的业务逻辑,结合实时计算的结果和基础数据,得出需要的结果。

所述数据访问接口为在数据库之上做了一层封装,屏蔽具体的数据库细节,提供一个通用的数据访问界面,供不同模块之间共享。通过该接口,可以预先将需要的数据加载到内存,提高访问效率,减小数据库访问压力。

作为对上述实施例的进一步阐述:

如图3所示模型,在上述实施例中,所述车辆到达时间预测模块3中,根据以下公式预测车辆到达时间:

其中,所述T(j|i) 为车辆当前位置前方的第一个站点是i,车辆到达站点j的预测耗时;所述 为从站点i到站点i+1,最近的m个耗时的平均值;所述为从站点i到站点i+1,观察到的倒数第k个耗时;所述为车辆当前位置到前方第一个站点的距离;如果车辆正好在某个站点上,该值为0;所述为站点i到站点i+1的距离;所述n为站点总数。

在上述实施例中,所述车辆监控模块7实时监控车辆运行状态,本系统定义了如下五种车辆运行状态:离线状态、长时间停留同一位置状态、正在确定目标线路状态、正在确定目标方向状态以及正常运行状态,每辆车的初始状态为“离线状态”,并且车辆在任何时候都会处于上述设定的五种状之一,并且车辆的状态会周期性的更新。所述车辆离线状态的判定由用户查询请求驱动,在用户查询车辆的状态信息时去检测车辆是否处于“离线”状态,每接收到一条GPS数据就会去更新一次车辆状态。如图4所示,而所述车辆长时间停留同一位置状态、正在确定目标线路状态、正在确定目标方向状态以及正常运行状态的判定则是由车辆上传的GPS数据驱动,并按如下先后顺序步骤进行判断:

步骤S101:接收一条车辆上传的GPS数据;

步骤S102:判断车辆状态是否为长时间停留在同一位置;

如果是,则跳转到步骤S101,进行下一条GPS数据的判定;否则,就进行下一状态的判定;

步骤S103:判断车辆状态是否为正在确定目标线路;

如果是,则跳转到步骤S101,进行下一条GPS数据的判定;否则,就进行下一状态的判定;

步骤S104:判断车辆状态是否为正在确定目标方向;

如果是,则跳转到步骤1,进行下一条GPS数据的判定;否则,就进行下一状态的判定;

步骤S105:判断车辆状态是否为正常运行,判断完成后,跳转到步骤S101,进行下一条GPS数据的判定。

需要说明的是,上述车辆状态的判定中,除了离线状态的判定,所述由GPS数据驱动的车辆运行状态的判定,其中系统中所有车辆上传的GPS数据都包含同样的数据参数,只是在不同的判定过程中,系统软件调取的参数不一样,同时,上述除离线状态的车辆运行状态的判定中,车辆上传一条GPS数据后,系统会依次进行上述长时间停留同一位置状态、正在确定目标线路状态、正在确定目标方向状态以及正常运行状态的判断,直到判定出一种车辆运行状态才会进行下一条车辆运行状态的判定。

如图5,所述车辆离线状态定义为:车辆在设定的时间长度阀值上未上传GPS数据,也就是超过一个时间长度阀值(如300秒)没有上报GPS数据,其判定方法如下:

步骤S201:用户输入查询参数车辆的编号(BusID);

步骤S202:从系统数据库中提取出对应车辆编号(BusID)的车辆状态信息(BusState);

步骤S203:判断车辆状态信息(BusState)是否设置为“离线状态”;

如果是,跳转到步骤S207;否则,跳转到下一步骤S204;

步骤S204:从系统数据库中获取如下2个参数:

a、服务器当前时间curServerTime;

b、车辆状态信息最近一次被更新的时间updatetime;

步骤S205:计算步骤S204中两个参数的时间差,并判断是否满足a-b>300秒;

如果是,跳转到步骤S206;否则,跳转到步骤S207;

步骤S206:设置车辆状态为“离线状态”,并修改车辆状态信息(BusState)的值为“离线”状态;

步骤S207:输出车辆状态信息(BusState)的查询结果。

如图6所示,所述车辆长时间停留同一位置状态的判定中,所述同一位置的判定定义为:GPS定位误差为A(单位为米),车辆上一条实时记录数据中的车辆位置坐标lastPos与当前时刻从GPS数据提取的位置坐标pos间的距离d小于等于2倍GPS定位误差,而2倍GPS定位误差表述判定车辆在同一位置的距离阀值D,也就是说,D=2*A(单位为米);设定一个世界长度阀值T,如果车辆在同一位置的停留时间超过了时间阀值T,则判定车辆处于长时间停留在同一位置;同时表示所述长时间停留的判断在所述同一位置的判断之后进行,所述长时间停留在同一位置的判定的具体步骤如下:

步骤S301:初始化4个参数:车辆停留开始时刻tStart、车辆上一条实时记录数据中的车辆位置坐标lastPos、判定“长时间停留在同一位置”的时间长度阀值T、判定在同一位置的距离阀值D,初始化结果为:tStart = Null,lastPos=NULL,T = 300秒,D = 20米,NULL表示空;

步骤S302:接收一条GPS数据(该数据用record表示);

步骤S303:获取2个参数,服务器的当前时间curServerTime 和从record中提取出位置坐标pos;

步骤S304:判断是否满足“tStart==NULL 或 lastPos==NULL”;

如果是,跳转到步骤S310;否则,进行步骤S305;

步骤S305:计算两个位置坐标lastPos和pos间的距离d;

步骤S306:判断是否满足条件“d<=D”;

如果是,跳转到步骤S307;否则,进行步骤S310;

步骤S307:判断是否满足条件“curServerTime–tStart >=T”;

如果是,跳转到步骤S308;否则,进行步骤S309;

步骤S308:设置车辆状态为“长时间停留在同一位置”

步骤S309:车辆未在“长时间停留在同一位置”状态,执行其他车辆状态的判断;

步骤S310:对以下两参数赋值tStart= curServerTime,lastPos=pos,将当前位置及当前系统时间设定为下一判定车辆状态的参数;

步骤S311:判断是否满足条件“已经判断车辆状态为长时间停留在同一位置”;

如果是,跳转到步骤S312;否则,进行步骤S309;

步骤S312:接收下一条GPS 数据,进行车辆状态的判定。

如图7所示,所述车辆的目标线路为车辆当前运行的线路,所述车辆正在确定目标线路状态的判定为车辆上传的GPS 数据中的位置坐标未在指定的车辆运行线路上,同时车辆继续上传连续的GPS数据,其具体判断步骤如下:

步骤S401:接收一条GPS数据(该数据用record表示);

步骤S402:从record中提取出2个参数,车辆的位置坐标pos、车辆上报的线路编号lineId;

步骤S403:从系统数据库中取出对应线路编号lineId所对应的2个拐点序列(数据中用坐标表示):车辆上行方向的拐点序列pointListUp和下行方向的拐点序列PointListDown;

步骤S404:判断是否满足条件坐标pos能与pointListUp和pointListDown拐点序列之一的线路上拐点序列的坐标向匹配;

如果满足,跳转到步骤S405;否则,进行步骤S406;

步骤S405:车辆不能确定目标线路,设置车辆状态为“正在确定目标线路”,然后执行步骤S407;

步骤S406:车辆为处在“正在确定目标线路”状态,设置车辆的目标线路编号为lineId,然后执行步骤S408;

步骤S407:接收下一条新GPS 数据,执行车辆状态的判定;

步骤S408:执行其他车辆状态的判定。

如图8所示,所述车辆目标方向包括车辆的上行及下行方向,所述车辆正在确定目标方向状态的判定为车辆的目标线路已经确定,上行及下行方向不确定且车辆在连续上报GPS数据;所述车辆正常运行状态的判定为车辆的目标线路已经确定且目标线路上的上行及下行方向也确定,上述判定的具体步骤为:

步骤S501:初始化一车辆位置坐标的列表序列poslist;

步骤S502:接收一条GPS数据(该数据用record表示);

步骤S503:从record中提取出车辆的位置坐标pos,并将pos添加到位置坐标列表posList的尾部;

步骤S504:判断位置坐标列表posList中的位置坐标个数是否大于4;

如果是,则跳转到步骤S505;否则,则跳转到步骤S512;

步骤S505:删除位置坐标列表posList首部的第一个位置坐标,并进行步骤S507;

步骤S506:从系统数据库中取出如下3个参数,车辆的目标线路编号targetLineId、目标线路上行方向的拐点序列pointListUp、目标线路下行方向的拐点序列pointListDown ;

步骤S507:判断是否满足条件“posList中所有坐标能匹配到pointListUp表示的线路且方向也匹配”;

如果满足,则跳转到步骤S508,否则跳转到步骤S509;

步骤S508:设置车辆的目标方向为“上行”,之后跳转到步骤S511;

步骤S509:判断是否满足条件“posList中所有坐标能匹配到pointListDown表示的线路且方向也匹配”;

如果满足,则跳转到步骤S510,否则跳转到步骤S512;

步骤S510:设置车辆的目标方向为“下行”,之后跳转到步骤S511;

步骤S511:设置车辆的状态为“正常运行”,之后跳转到步骤S513;

步骤S512:车辆不能确定目标方向,设置车辆状态为“正在确定目标方向”,之后跳转到步骤S513;

步骤S513:接收下一条GPS数据,对车辆的状态进行判断。

以上所述,仅是本发明的较佳实施例,以上所述并非对本发明的技术范围作任何限制,凡依据本发明技术实质对以上的实施例所作的任何修改、等同变化与修饰,均仍属于本发明的技术方案的范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号