面向道路实时速度计算的卡口与浮动车数据融合方法
【技术领域】
[0001] 本发明属于数据挖据技术领域,具体涉及到一种面向道路实时速度计算的卡口与 浮动车数据的融合方法。
【背景技术】
[0002] 随着社会、经济的飞速发展,人均GDP稳步提升,我国城市汽车保有量飞速增长。城 市基本交通设施改善和建设跟不上机动车数量飞速增长的速度,导致城市车辆行驶速度越 来越慢,交通堵塞随处可见。交通拥堵问题是全世界大城市所面临的严峻问题。随着科学技 术的发展特别是智能交通的提出,世界各地都在建立智能化的交通管理系统,对道路上行 驶的车辆进行科学合理的管理和疏导,以提高对道路的使用效率。然而,道路的实时通行速 度的准确获取是各个工作开展的前提和关键。
[0003]目前,道路实时速度一般采用的最多的是通过浮动车的实时通行数据分析计算获 得。浮动车数据虽然容易获取且计算简单,但是数据量极为稀疏,且为单一车种(多指出租 车),计算出的实时速度精确性不高且很难完全覆盖整个城市所有道路,GPS数据本身也存 在诸多错误,有效数据有限等等缺点。而对于卡口数据,数据量大,卡口覆盖范围广,但是卡 口设备昂贵,布设密度不高也影响计算准确性。
[0004] 综上所述,卡口和浮动车两种数据源各有优缺点,需要相互融合,以达到优势互 补,利用各自优点,从而达到计算道路实时速度的最佳效果。
【发明内容】
[0005] 为了解决上述问题,本发明针对现有技术的不足,提供了一种基于卡口数据实时 速度与基于浮动车数据实时速度的加权融合方法。
[0006] 本发明中所谓的卡口是指设置有交通监控设备的道路监控点,用于过车数据的采 集,过车数据是指经过卡口的车辆信息,包括车辆的"车牌号码"、"卡口编号"和"过车时 间";卡口对是指物理位置相邻、可被车辆依次顺序经过的卡口对。
[0007] 本发明技术方案的主要构思:通过浮动车数据计算的实时道路速度和卡口过车数 据计算的实时的卡口对之间的速度进行加权融合。
[0008] 本发明方法的具体步骤是:
[0009] 步骤(1)读取卡口数据,卡口数据包括卡口编号(KKBH)、方向编号(FXBH)、卡口点 位信息;
[0010] 步骤(2)读取一段时间(大于一个小时)的卡口过车数据作为训练数据集,卡口过 车数据包括卡口编号(KKBH)、车牌号码(CPHM)、方向编号(FXBH:1,2,3,4代表东、南、西、北 四个方向)、过车时间(GCSJ),设定过车量阈值GCL_max,根据卡口 A、B在某个子方向上的过 车数据统计该数据集中连续经过A、B两个卡口子方向的过车量GCL,若GCL>GCL_max,则认定 这两个卡口 A、B子方向为卡口方向对;
[0011] 步骤(3)更换训练数据集重复步骤(2)N次(一般3-5次),统计被认定为卡口对的次 数T,若T = N,则将该卡口对存入数据库卡口对表中;
[0012]步骤⑷读取卡口对数据、地图数据,卡口对数据包括卡口对编号(KKDBH)、A卡口 编号,A卡口点位信息,B卡口编号、B卡口点位信息,地图数据包括路段编号(LDID)、道路点 位信息;
[0013] 步骤(5)匹配卡口和道路的点位信息,构建出"卡口对-路段"映射表;
[0014] 步骤(6)读取当前时间前5分钟的卡口过车数据,并根据GCSJ计算速度作为当前时 间的卡口对实时速度;
[0015]步骤(7)读取当前时间前5分钟的浮动车数据,计算出速度作为当前时间的浮动车 实时速度;
[0016] 步骤(8)读取步骤(6)得到的卡口对实时速度,数据包括卡口对编号(KKDID )、速 度、过车量、通行时间,根据"卡口对-路段"映射表将卡口对速度转换为路段速度;
[0017] 步骤(9)读取步骤(7)得到的浮动车数据计算的实时速度,数据包括路段编号 (LDID)、速度、过车量、通行时间;
[0018] 步骤(10)将步骤(8)、步骤(9)的得到的路段速度通过各种权值加权融合得到这些 路段新的速度;
[0019] 步骤(11)运用循环计时器每隔一分钟循环执行步骤(6)到步骤(10)。即可得到路 段经过卡口和浮动车数据融合后的道路实时速度。
[0020] 本发明具有的有益效果:本发明针对不同的数据源计算的结果,得到不同数据源 各自的优势,并将它们进行有效的结合。本发明具有精确性高,速度快,实时性不变等优点, 有效的解决了计算道路实时速度数据源单一、数据稀疏、准确性不高等问题。
【附图说明】
[0021] 图1是数据流程图;
[0022] 图2路段-卡口对对应图。
【具体实施方式】
[0023]本发明所提供的基于卡口数据实时速度与基于浮动车数据实时速度的加权融合 方法的【具体实施方式】如以下步骤(如图1所示):
[0024]为叙述方便,定义相关符号如下:
[0025] Vi:路段速度。
[0026] R1:表示包含路段i的卡口对的集合(一个路段可能属于多个卡口对,如图2所示)。 [0027] Vk:表示卡口对链路k的实时速度。
[0028] Wik:表示路段i在卡口对路径k中所占的权值。
[0029] 1:表示路径长度。
[0030] GCL:表示过车量。
[0031] α1:表示卡口数据计算出的路段i的速度的权值(Ci1越大表示路段i越倾向于使用卡 口计算出的速度)。
[0032] λ:是一个全局配置参数,表示当前1分钟的卡口总过车量和浮动车总过车量的商。 [0033]步骤(1)数据准备:向数据库导入卡口数据、卡口过车数据、浮动车数据、地图数 据,卡口数据包括卡口编号(KKBH)、方向编号(FXBH)、卡口点位信息(GPS_KK),卡口过车数 据包括卡口编号(KKBH)、车牌号码(CPHM)、方向编号(FXBH)、过车时间(GCSJ),浮动车数据 包括车牌号码(CPHM)、点位信息(GPS_FDC)、创建时间(CJSJ),地图数据包括路段编号 (LDID)、路段长度(LDCD)、路段起点点位信息(GPS_LDQD)、路段终点点位信息(GPS_LDZD)、 路段中点点位信息(GPS_LDMD);
[0034] 步骤(2)地图数据预处理:将地图网格化,边长为100-200米;
[0035] 步骤(3)卡口数据预处理:
[0036] 3-1.读取一段时间(大于一个小时)的卡口过车数据作为训练数据集,设定过车量 阈值GCL_max,根据卡口数据和卡口过车数据统计该时段连续经过两个不同卡口 A、B的子方 向的过车量GCL,若GCL>
GCL_max,则认定这两个不同卡口 A,B的子方向为卡口方向对;
[0037] 3-2.更换训练数据集重复1-2步骤N次(一般3-5次),统计被认定为卡口对的次数 T,若T = N,则将该卡口对存入数据库卡口对表中(如表1所示);
[0040] 3-3.读取卡口对表将卡口对数据中的A、B卡口点位信息匹配在各自的网格中,也 就是将A、B卡口分别落在路段上,即计算卡口与网格中各个路段的中点的距离,取最小距离 的路段作为A、B卡口所在的路段。
[0041] 因为卡口对之间包含多个路段,根据路段的联通性得到A、B卡口对间的路段链路 集,根据公式(1)计算链路集中各个链路的链路长度LLCD并找出最短链路长度的链路作为 A、B卡口对的链路;
[0043] 3-4.根据A、B卡口对的链路形成"卡口对-路段ID"映射表(如表2所示);
[0046] 步骤(4)并行进行步骤(5)、步骤(6);
[0047]步骤(5)计算卡口实时速度
[0048] 5-1.读取当前时间前5分钟的卡口过车数据,记录同一辆车经过A、B卡口的时间 tA、tB并根据公式(2)计算速度Vk并将当前时间的卡口对实时速度写入数据库卡口实时速度 表中(如表3所不);
[0052] 步骤(6)计算浮动车实时速度:
[0053] 6-1.读取当前时间前5分钟的浮动车数据,按照时间排序记录同一辆车的数据记 录,并根据公式(3)算出该车的所有记录的速度sd;
[0054] sd= |GPS_FDCi-GPS_FDCi+i|/|CJSJi-CJSJi+i| (3)
[0055] 6-2.将每个速度sd对应的终点点位信息GPS_FDC匹配到地图网格中,并计算该点 与网格中各个路段的GPS_LDMD的距离,取距离最小的路段作为该点所在的路段并将该速度 sd添加到该路段的LDID中;
[0056] 6-3.将各个LDID中的所有速度sd求平均得到该路段的最终速度并存于数据库浮 动车实时速度表中(如表4所示);
[0059] 步骤(7)转换卡口实时速度:
[0060] 7-1.读取当前卡口实时速度(1分钟数据),根据"卡口对-路段"映射表将卡口对速 度转换为路段速度,根据公式(5)、公式(6)计算对应的路段速度;
[0063] Ii和Ik分别是路段i和卡口对链路k的长度,它们的比值表示道路i占包含i的卡口 对路径的重要程度,GCU表示卡口对链路k的过车量,为了将这两个影响因素融合起来,这 里采用归一化(除以最大值)的方式;
[0064] 7-2.估算路段i过车量:包含路段i的卡口对的过车量是一个确定的数字,这里根 据这些确定数据通过公式(7)估算路段i的过车量;
[0066] 7-3.处理完这一分钟数据,得到对应路段编号LDID的速度和过车量;
[0067]步骤(8)数据融合:
[0068] 8-1.读取浮动车数据计算的实时速度(最近1分钟)读取步骤(7)得到卡口实时速 度数据包括路段编号(LDID )、速度、过车量;
[0069] 8-2.将两组数据根据LDID进行对比计算,如果对于某个LDID只有一个数据(卡口 或浮动车)来源,则采用相应的单一源数据得出的结果(例如:卡口对可以得到路段i的速度 Vi,而浮动车不能得到路段i的速度,则最终融合速度即为Vi),如果LDID同时有卡口对和浮 动车的数据,则按照公式(8)、公式(9)、公式(10)计算最终融合速度VlJ恰
[0073] 8-3.根据以上步骤最终得到融合后的路段实时速度,并将数据存于数据库,供其 他应用实时使用;
[0074] 步骤(9).定义循环计时器,周期为1分钟,当计时器1分钟计时已满,则重复步骤 (4)-步骤(8)。
【主权项】
1.面向道路实时速度计算的卡口与浮动车数据融合方法,其特征在于该方法的具体步 骤是: 步骤(1)读取卡口数据,卡口数据包括卡口编号KKBH、方向编号FXBH、卡口点位信息; 步骤(2)读取一段时间内的卡口过车数据作为训练数据集,卡口过车数据包括卡口编 号KKBH、车牌号码CPHM、方向编号FXBH、过车时间GCSJ,设定过车量阈值GCL_max,根据卡口 A、B在某个子方向上的过车数据统计该数据集中连续经过A、B两个卡口子方向的过车量GCL,若GCL>GCL_max,则认定这两个卡口A、B子方向为卡口方向对; 步骤(3)更换训练数据集重复步骤(2)N次,统计被认定为卡口对的次数T,若T=N,则将 该卡口对存入数据库卡口对表中; 步骤(4)读取卡口对数据、地图数据,卡口对数据包括卡口对编号KKDBH、A卡口编号,A卡口点位信息,B卡口编号、B卡口点位信息,地图数据包括路段编号LDID、道路点位信息; 步骤(5)匹配卡口和道路的点位信息,构建出"卡口对-路段"映射表; 步骤(6)读取当前时间前5分钟的卡口过车数据,并根据过车时间GCSJ计算速度作为 当前时间的卡口对实时速度; 步骤(7)读取当前时间前5分钟的浮动车数据,计算出速度作为当前时间的浮动车实 时速度; 步骤(8)读取步骤(6)得到的卡口对实时速度,数据包括卡口对编号KKDID、速度、过车 量、通行时间,根据"卡口对-路段"映射表将卡口对速度转换为路段速度; 步骤(9)读取步骤(7)得到的浮动车数据计算的实时速度,数据包括路段编号LDID、速 度、过车量、通行时间; 步骤(10)将步骤(8)、步骤(9)的得到的路段速度通过各种权值加权融合得到这些路 段新的速度; 步骤(11)运用循环计时器每隔一分钟循环执行步骤(6)到步骤(10),即可得到路段经 过卡口和浮动车数据融合后的道路实时速度。
【专利摘要】本发明公开了一种面向道路实时速度计算的卡口与浮动车数据融合方法。本发明通过浮动车数据计算的实时道路速度和卡口过车数据计算的实时的卡口对之间的速度进行加权融合。本发明中所谓的卡口是指设置有交通监控设备的道路监控点,用于过车数据的采集,过车数据是指经过卡口的车辆信息,包括车辆的“车牌号码”、“卡口编号”和“过车时间”;卡口对是指物理位置相邻、可被车辆依次顺序经过的卡口对。本发明具有精确性高,速度快,实时性不变等优点,有效的解决了计算道路实时速度数据源单一、数据稀疏、准确性不高等问题。
【IPC分类】G08G1/01
【公开号】CN105489004
【申请号】CN201510834256
【发明人】李万清, 方飞, 廖赛, 俞东进, 袁友伟
【申请人】杭州电子科技大学
【公开日】2016年4月13日
【申请日】2015年11月25日