首页 > 专利 > 杭州电子科技大学 > 面向道路实时速度估算的浮动车载客行为模式清洗方法专利详情

面向道路实时速度估算的浮动车载客行为模式清洗方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2016-11-03
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2017-04-26
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2020-08-25
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2036-11-03
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201610956851.2 申请日 2016-11-03
公开/公告号 CN106548444B 公开/公告日 2020-08-25
授权日 2020-08-25 预估到期日 2036-11-03
申请年 2016年 公开/公告年 2020年
缴费截止日
分类号 G06Q50/30G08G1/01 主分类号 G06Q50/30
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 0
权利要求数量 1 非专利引证数量 0
引用专利数量 0 被引证专利数量 0
非专利引证
引用专利 被引证专利
专利权维持 6 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 杭州电子科技大学 当前专利权人 杭州电子科技大学
发明人 李万清、方飞、张迪、刘辉、俞东进、袁友伟 第一发明人 李万清
地址 浙江省杭州市下沙高教园区2号大街 邮编 310018
申请人数量 1 发明人数量 6
申请人所在省 浙江省 申请人所在市 浙江省杭州市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
杭州君度专利代理事务所 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
杜军
摘要
本发明公开了一种面向道路实时速度估算的浮动车载客行为模式清洗方法,包括如下步骤:步骤(1).读取浮动车历史数据,得到“类载客行为”速度变化阈值;步骤(2).读取路网数据,根据路段的连通性得到路口路段映射表,步骤(3).得到该时间片各个路段上各个车辆的速度列表;步骤(4).剔除速度列表中由于该行为形成的异常速度样本,并返回新的速度列表;步骤(5).剔除速度列表中由于“类载客行为”造成的异常速度样本,并返回新的速度列表;步骤(6).计算所有速度样本的平均速度作为该路段的实时速度并存于数据库实时速度表中。本发明在保证数据的实时性的同时,极大的增加了实时速度的准确性。
  • 摘要附图
    面向道路实时速度估算的浮动车载客行为模式清洗方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2020-08-25 授权
2 2017-04-26 实质审查的生效 IPC(主分类): G06Q 50/30 专利申请号: 201610956851.2 申请日: 2016.11.03
3 2017-03-29 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.面向道路实时速度估算的浮动车载客行为模式清洗方法,其特征在于该方法的具体步骤是:
步骤(1).读取浮动车历史数据,浮动车数据包括车牌号码、位置信息、创建时间、载客状态,计算车辆连续两次记录的距离和时间差,然后通过距离和时间差计算速度得到历史数据中所有车辆的速度列表,统计载客状态发生跳变时的速度样本,并得到“类载客行为”速度变化阈值;
1-
1.根据“车牌号码”、“创建时间”升序读取一段时间的浮动车历史数据,浮动车每个样本点数据包括车牌号码CPHM、位置信息GPS_FDC、创建时间CJSJ、载客状态STATUS;
1-
2.计算每辆车连续两个样本点相隔的距离和时间差,并计算出每辆车连续一个小时的所有速度样本列表;
1-
3.记录所有车辆发生“真载客行为”,即STATUS由0变1或由1变0时速度变化前后的连续5个速度样本,并选取500组这样的速度样本;
1-
4.将每组速度样本根据最小二乘法拟合成2次曲线,则每组速度样本都有一条唯一的二次曲线f(x);
对速度样本的时间进行无量纲化、坐标原点设定、坐标统一化;首先将5个样本的时间都用等距的数值5,10,15,20,25依次替代;其次,将所有曲线进行上下平移使得所有曲线都经过坐标原点;最终为每组样本得到在统一坐标下的唯一的一条曲线,公式(1)中的a和b可以唯一确定曲线的形状;这里选取a,b,v1-v5三个参数作为每条曲线的参数向量V(a,b,v1-v5);
f(x)=ax2+bx           (1)
1-
5.对每一组数据计算得到它的参数向量V(a,b,v1-v5),将这500个参数向量进行基于密度的聚类算法DBSCAN进行聚类,可以得到三类曲线,即载客行为过程前半部分、载客行为过程后半部分、载客行为全过程;
1-
6.获取3个类的类簇中心的参数向量Vic(a,b,v1-v5)和最远边界的参数向量Vib(a,b,v1-v5);根据公式(2)计算聚类中心参数向量和最远边界参数向量的欧式距离;
1-
7.根据以上步骤得到的三个类的距离D1,D2,D3作为“类载客行为”的速度变化阈值;
步骤(2).读取路网数据,路网数据包括路段编号、路段位置信息,将路网网格化得到“网格—路段编号”映射表,并根据路段的连通性得到路口路段映射表LkMap;
步骤(3).根据“车牌号”、“创建时间”升序读取当前时间前5分钟的浮动车数据,计算车辆连续两个样本点的相隔距离和时间差,然后通过距离和时间差计算速度,并根据“网格—路段编号”映射表将该速度添加到第二次记录的车辆位置信息所在的路段编号上,得到该时间片各个路段上各个车辆的速度列表,将记录这些信息的数据结构称为:路段编号对应的速度列表图LDIDSpeedListMap;
步骤(4).根据车辆载客状态识别“真载客行为”并剔除速度列表中由于该行为形成的异常速度样本,并返回新的速度列表,过程如下:
4-
1.循环读取LDIDSpeedListMap中下一个LDID中所有车牌号码CPHM对应的速度列表speedList;
4-
2.识别每一个speedList中,是否存在STATUS由0变1或者由1变0的过程,若存在则剔除跳变时产生的速度样本;
4-
3.重复步骤4-1,4-2直至LDIDSpeedListMap中所有LDID中的所有车牌号码CPHM对应的速度列表speedList都剔除完毕,并返回一个新的LDIDSpeedListMap;
步骤(5).根据步骤(1)得到的阈值识别“类载客行为”,并剔除速度列表中由于“类载客行为”造成的异常速度样本,并返回新的速度列表,过程如下:
5-
1.经过步骤(4)后从新的LDIDSpeedListMap中循环遍历获取LDID中CPHM的速度样本列表speedList,以5个连续的速度样本为一组
5-
2.将每组速度样本根据最小二乘法拟合成2次曲线,则每组速度样本都有一条唯一的二次曲线f(x),f(x)=ax2+bx,a、b为系数,每一组速度样本建立参数向量Vis(a,b,v1-v5),并根据公式(3)计算Vis与步骤(1)中得到三个类簇中心的参数向量Vic(a,b,v1-v5)的欧式距离di(d1,d2,d3);
5-
3.将di(d1,d2,d3)与步骤(1)中得到的对应的“类载客行为”速度变化阈值Di(D1,D2,D3)比较,如果d15-
4.扫描speedList表,得到该“类载客行为”速度样本
中最小速度对应的LDID和GPS_FDCi;遍历LkMap,若LkMap中存在该LDID则说明该行为出现的路段LDID为路口路段,若不存在进入5-5;从LkMap中获取该路段编号LDID对应的路口点(GPS_QD,GPS_ZD),GPS_QD表示起点经纬度,GPS_ZD表示终点经纬度,通过公式(3)计算GPS_FDCi与路口的距离并取其最小值L,若LL=min(abs(GPS_FDCi-GPS_QD),abs(GPS_FDCi-GPS_ZD))     (4)
5-
5.得到该载客行为的vi对应的CJSJi和GPS_FDCi,循环遍历该LDID下其他车辆的速度列表若均出现“载客行为”获取其对应载客点的GPS_FDCi'和CJSJi',根据公式(5)、公式(6)计算判断条件;
abs(GPS_FDCi-GPS_FDCi')<△s_min,i≠i'        (5)
abs(CJSJi-CJSJi')<△t_min,i≠i'            (6)
若该LDID下其他车辆都满足以上判断条件则认为该载客行为属于“集体行为”不进行剔除,否则属于“个体行为”进入步骤5-6进行速度样本剔除;
5-
6.剔除上述步骤得到的“类载客行为”速度样本;根据该速度样本vi所属的“类载客行为”分类,若属于第一类即载客过程的前半部分,则剔除这组速度样本中的后3个样本;同理若d25-
7.重复步骤5-2至5-6完成“类载客行为”识别和剔除后返回一个新的
LDIDSpeedListMap;
步骤(6).经过以上步骤后得到LDID对应的所有速度样本,计算所有速度样本的平均速度作为该路段的实时速度并存于数据库实时速度表中;
6-
1.完成该时间片△t所有的速度样本剔除之后,根据新的LDIDSpeedListMap获取LDID中的所有CPHM的速度列表根据CJSJ的先后顺序组成一新的速度列表
6-
2.把该时间片划分为更小的时间片段τ,将速度列表中所有速度根据其对应的CJSJ划分到每一个小的时间片段中,假设每个小的时间片段中有m个速度样本,则根据公式(7)估算路段速度vR;
步骤(7).根据时间无缝规则更新时间片,重复步骤(3)至步骤(6);
λk表示每一个小时间片段所对应的权值参数,k表示小时间片段的个数;
mμ表示每个小时间片段内速度样本的个数;
vR:路段平均速度,单位km/h;
△t_min:判断是否为“集体行为”的时间阈值;
△s_min:判断是否为“集体行为”的空间阈值;
L_min:判断车辆是否发生“路口行为”的距离阈值。
说明书

技术领域

[0001] 本发明属于数据挖据技术领域,具体涉及到一种面向道路实时速度估算的浮动车载客行为模式清洗方法。

背景技术

[0002] 交通拥堵问题伴随着社会、经济的飞速发展而日益严重。缓解交通问题迫在眉睫。随着“互联网+”的提出,各类智慧交通系统如雨后春笋般出现。各类智慧交通系统服务通过合理的管理、诱导道路上的车流可以快速和有效的缓解道路拥堵问题。以上各类智能交通服务的质量严重依赖于准确的、实时的路段速度,路段速度是以上各类服务的基础性参数。
因此,本专利即是针对此参数的准确性开展的进一步深入讨论,通过过滤浮动车载客行为,进一步提高路段速度的准确性。
[0003] 由于浮动车数据具有低沉本、易获得性、覆盖广等特点,被广泛应用于各类智能交通服务。对现有海量的浮动车数据进行分析研究时可以发现,浮动车的载客行为产生的速度样本如果不进行剔除会严重影响路段速度的准确性。由于浮动车数据巨大,实时性非常强,人工很难及时发现并剔除载客行为产生的速度样本。本专利将要讨论的载客行为较出租车停车载客具有更加广泛的含义,主要包括导致浮动车数据梯度下降,然后再梯度上升的行为过程,如图1所示,发生此类行为时,有可能是真实的载客行为,有可能是避让行为,也有可能是寻客等待行为、路口红灯等待、斑马线礼让行人等等。在剔除此类行为过程中,还需要防止误剔除,如路口红灯等待,斑马线礼让行人等等代表了路段当前真实情况的行为。行业内的少数研究者关注了停车行为对路段速度估算的影响,对于本专利提出的更加广泛的类载客行为尚未涉及。

发明内容

[0004] 本发明针对现有技术的不足,提出了一种面向道路实时速度估算的浮动车载客行为模式清洗方法。
[0005] 本发明中所谓的浮动车数据是指安装在城市公共交通工具(多指出租车)上的GPS设备每隔一段时间(一般30秒一次)上传至数据中心的数据。浮动车数据字典包括:车牌号码、车辆位置信息、数据创建时间、车辆载客状态(0表示空载,1表示满载)等;“载客行为”是指如图1所示的车辆由正常行驶突然减速后恢复正常行驶的过程。“载客行为”包括:
[0006] “真载客行为”:是指从浮动车数据上表现出来的,即车辆载客状态由0变为1或者由1变为0的过程。该过程产生的速度样本需要剔除。
[0007] “类载客行为”:是从车辆速度上表现出来的,表现为车辆速度变化类似于真实的载客行为,但是它的车辆载客状态并没有发生0,1跳变。我们称之为“类载客行为”。如路口等待红绿灯、遇突发事件、真实发生了载客行为但设备故障没有发生0,1跳变等等。“类载客行为”还根据发生时的不同情景分为以下各种行为:
[0008] “路口行为”:指车辆的“类载客行为”发生在路口区域。多数情况下在路口等待红绿灯时发生,属于正常的交通行为无需剔除。
[0009] “集体行为”:指所有车辆在同一时空范围内且在非路口区域均发生了“类载客行为”。这种行为多发生在道路临时拥堵,或斑马线前的礼让行人,属于道路正常现象无需剔除。
[0010] “个体行为”:该行为是相对于“集体行为”而言的。该类行为产生的速度样本需要被剔除。
[0011] 本发明技术方案的主要构思:离线阶段,根据大量浮动车历史数据学习得到“类载客行为”的速度变化阈值,对路网数据进行预处理。在线阶段,实时获取一定时间片的浮动车数据,计算出浮动车行驶速度并添加到路网相应的路段中,从路段中的各个车辆的速度列表中剔除“真载客行为”的速度样本,并且根据“类载客行为”速度变化阈值识别“类载客行为”并剔除需要剔除的速度样本。
[0012] 本发明方法包括以下步骤:
[0013] 步骤(1).读取浮动车历史数据,浮动车数据包括车牌号码、位置信息、创建时间、载客状态,计算车辆连续两次记录的距离和时间差,然后通过距离和时间差计算速度得到历史数据中所有车辆的速度列表,统计载客状态发生跳变时的速度样本,并得到“类载客行为”速度变化阈值;
[0014] 1-1.根据“车牌号码”、“创建时间”升序读取一段时间(大于1个小时)的浮动车历史数据,浮动车每个样本点数据包括车牌号码(CPHM)、位置信息(GPS_FDC)、创建时间(CJSJ)、载客状态(STATUS);
[0015] 1-2.计算每辆车连续两个样本点相隔的距离和时间差,并计算出每辆车连续一个小时的所有速度样本列表;
[0016] 1-3.记录所有车辆发生“真载客行为”(STATUS由0变1或由1变0)时速度变化前后的连续5个速度样本<v1,v2,v3,v4,v5>,并选取500组这样的速度样本;
[0017] 1-4.将每组速度样本根据最小二乘法拟合成2次曲线,则每组速度样本都有一条唯一的二次曲线f(x);
[0018] 对速度样本的时间进行无量纲化、坐标原点设定、坐标统一化。首先将5个样本的时间都用等距的数值5,10,15,20,25依次替代。其次,将所有曲线进行上下平移使得所有曲线都经过坐标原点。最终为每组样本得到在统一坐标下的唯一的一条曲线,公式(1)中的a和b可以唯一确定曲线的形状。这里我们选取a,b,v1-v5三个参数作为每条曲线的参数向量V(a,b,v1-v5);
[0019] f(x)=ax2+bx..............(1)
[0020] 1-5.对每一组数据计算得到它的参数向量V(a,b,v1-v5),将这500个参数向量进行基于密度的聚类算法DBSCAN进行聚类,可以得到三类曲线,即载客行为过程前半部分、载客行为过程后半部分、载客行为全过程;
[0021] 1-6.获取3个类的类簇中心的参数向量Vic(a,b,v1-v5)和最远边界的参数向量Vib(a,b,v1-v5)。根据公式(2)计算聚类中心参数向量和最远边界参数向量的欧式距离;
[0022]
[0023] 1-7.根据以上步骤得到的三个类的距离D1,D2,D3作为“类载客行为”的速度变化阈值;
[0024] 步骤(2).读取路网数据,路网数据包括路段编号、路段位置信息,将路网网格化得到“网格—路段编号”映射表,并根据路段的连通性得到路口路段映射表;
[0025] 步骤(3).根据“车牌号”、“创建时间”升序读取当前时间前5分钟的浮动车数据,计算车辆连续两个样本点的相隔距离和时间差,然后通过距离和时间差计算速度,并根据“网格—路段编号”映射表将该速度添加到第二次记录的车辆位置信息所在的路段编号上,得到该时间片各个路段上各个车辆的速度列表;
[0026] 步骤(4).根据车辆载客状态识别“真载客行为”并剔除速度列表中由于该行为形成的异常速度样本,并返回新的速度列表,过程如下:
[0027] 4-1.循环读取LDIDSpeedListMap中下一个LDID中所有车牌号码CPHM对应的速度列表speedList;
[0028] 4-2.识别每一个speedList中,是否存在STATUS由0变1或者由1变0的过程,若存在则剔除跳变时产生的速度样本;
[0029] 4-3.重复步骤4-1,4-2直至LDIDSpeedListMap中所有LDID中的所有车牌号码CPHM对应的速度列表speedList都剔除完毕,并返回一个新的LDIDSpeedListMap;
[0030] 步骤(5).根据步骤(1)得到的阈值识别“类载客行为”,并剔除速度列表中由于“类载客行为”造成的异常速度样本,并返回新的速度列表,过程如下:
[0031] 5-1.经过步骤(4)后从新的LDIDSpeedListMap中循环遍历获取LDID中CPHM的速度样本列表speedList,以5个连续的速度样本为一组<v1,v2,v3,v4,v5>;
[0032] 5-2.将每组速度样本根据最小二乘法拟合成2次曲线,则每组速度样本都有一条唯一的二次曲线f(x),f(x)=ax2+bx,a、b为系数,每一组速度样本建立参数向量Vis(a,b,v1-v5),并根据公式(3)计算Vis与步骤(1)中得到三个类簇中心的参数向量Vic(a,b,v1-v5)的欧式距离di(d1,d2,d3);
[0033]
[0034] 5-3.将di(d1,d2,d3)与步骤(1)中得到的对应的“类载客行为”速度变化阈值Di(D1,D2,D3)比较,如果d1<D1则认为该组速度样属于第一类“类载客行为”;d2<D2则认为该组速度样属于第二类“类载客行为”;d3类推。每个样本将唯一对应一个类,不会出现同时属于2个类的情况;
[0035] 5-4.扫描speedList表,得到该“类载客行为”速度样本<v1,v2,v3,v4,v5>中最小速度对应的LDID和GPS_FDCi。遍历LkMap,若LkMap中存在该LDID则说明该行为出现的路段LDID为路口路段,若不存在进入5-5。从LkMap中获取该路段编号LDID对应的路口点(GPS_QD,GPS_ZD),GPS_QD表示起点经纬度,GPS_QD表示终点经纬度,通过公式(3)计算GPS_FDCi与路口的距离并取其最小值L,若L
[0036] L=min(abs(GPS_FDCi-GPS_QD),abs(GPS_FDCi-GPS_ZD)………(4)
[0037] 5-5.得到该载客行为的vi对应的CJSJi和GPS_FDCi,循环遍历该LDID下其他车辆的速度列表若均出现“载客行为”获取其对应载客点的GPS_FDCi'和CJSJi',根据公式(5)、公式(6)计算判断条件;
[0038] abs(GPS_FDCi-GPS_FDCi')<Δs_min,i≠i'………(5)
[0039] abs(CJSJi-CJSJi')<Δt_min,i≠i'…………………(6)
[0040] 若该LDID下其他车辆都满足以上判断条件则认为该载客行为属于“集体行为”不进行剔除,否则属于“个体行为”进入步骤5-6进行速度样本剔除;
[0041] 5-6.剔除上述步骤得到的“类载客行为”速度样本。根据该速度样本vi<v1,v2,v3,v4,v5>所属的“类载客行为”分类,若属于第一类即载客过程的前半部分,则剔除这组速度样本中的后3个样本;同理若d2
[0042] 5-7.重复步骤5-2至5-6完成“类载客行为”识别和剔除后返回一个新的LDIDSpeedListMap;
[0043] 步骤(6).经过以上步骤后得到LDID对应的所有速度样本,计算所有速度样本的平均速度作为该路段的实时速度并存于数据库实时速度表中;
[0044] 6-1.完成该时间片Δt所有的速度样本剔除之后,根据新的LDID_SpeedMap获取LDID中的所有CPHM的速度列表根据CJSJ的先后顺序组成一新的速度列表<v1,v2,v3,…vn>;
[0045] 6-2.我们把该时间片划分为更小的时间片段τ,将速度列表中所有速度根据其对应的CJSJ划分到每一个小的时间片段中,假设每个小的时间片段中有m个速度样本,则根据公式(7)估算路段速度vR;
[0046]
[0047] 步骤(7).根据时间无缝规则更新时间片,重复步骤(3)至步骤(6);
[0048] λk表示每一个小时间片段所对应的权值参数,k表示小时间片段的个数;mμ[0049] 表示每个小时间片段内速度样本的个数;
[0050] vR:路段平均速度,单位km/h;
[0051] Δt_min:判断是否为“集体行为”的时间阈值(设值30秒);
[0052] Δs_min:判断是否为“集体行为”的空间阈值(设置50米);
[0053] L_min:判断车辆是否发生“路口行为”的距离阈值(设置50米)。
[0054] 本发明具有的有益效果:本发明在大数据量且无规律可循的浮动车数据中快速并且准确的识别数据中的两种载客行为并剔除,在保证数据的实时性的同时,极大的增加了实时速度的准确性。附图说明:
[0055] 图1浮动车类载客行为示意图
[0056] 图2具体实施步骤流程图;
[0057] 图3三类载客行为聚类曲线图;
[0058] 图4LDIDSpeedListMap数据结构图;
[0059] 图5时间无缝规则图。

实施方案

[0060] 如图2所示具体实施方式如下:
[0061] 为叙述方便,定义相关符号如下:
[0062] vR:路段平均速度,单位km/h。
[0063] Δt_min:判断是否为“集体行为”的时间阈值(设值30秒)。
[0064] Δs_min:判断是否为“集体行为”的空间阈值(设置50米)
[0065] L_min:判断车辆是否发生“路口行为”的距离阈值(设置50米)。
[0066] 步骤(1).“类载客行为”速度变化阈值计算:
[0067] 1-1.根据“车牌号码”、“创建时间”升序读取一段时间(大于1个小时)的浮动车历史数据,浮动车每个样本点数据包括车牌号码(CPHM)、位置信息(GPS_FDC)、创建时间(CJSJ)、载客状态(STATUS);
[0068] 1-2.计算每辆车连续两个样本点相隔的距离和时间差,并计算出每辆车连续一个小时的所有速度样本列表;
[0069] 1-3.记录所有车辆发生“真载客行为”(STATUS由0变1或由1变0)时速度变化前后的连续5个速度样本<v1,v2,v3,v4,v5>,并选取500组这样的速度样本;
[0070] 1-4.将每组速度样本根据最小二乘法拟合成2次曲线,则每组速度样本都有一条唯一的二次曲线f(x)。由于每组的5个速度样本的间隔时间都在30秒左右(设备上传写入时间),但是每组样本的时间段各不相同,为了便于试用最小二乘法拟合,我们需要对速度样本的时间进行无量纲化、坐标原点设定、坐标统一化。首先我们将5个样本的时间都用等距的数值5,10,15,20,25依次替代。其次,我们将所有曲线进行上下平移使得所有曲线都经过坐标原点。最终我们可以为每组样本得到在统一坐标下的唯一的一条曲线,公式(1)中的a和b可以唯一确定曲线的形状。这里我们选取a,b,v1-v5三个参数作为每条曲线的参数向量V(a,b,v1-v5);
[0071] f(x)=ax2+bx..............(1)
[0072] 1-5.对每一组数据计算得到它的参数向量V(a,b,v1-v5),将这500个参数向量进行基于密度的聚类算法DBSCAN进行聚类,可以得到三类曲线(载客行为过程前半部分、载客行为过程后半部分、载客行为全过程)如图3所示;
[0073] 1-6.获取3个类的类簇中心的参数向量Vic(a,b,v1-v5)和最远边界的参数向量Vib(a,b,v1-v5)。根据公式(2)计算聚类中心参数向量和最远边界参数向量的欧式距离;
[0074]
[0075] 1-7.根据以上步骤得到的三个类的距离D1,D2,D3作为“类载客行为”的速度变化阈值。
[0076] 步骤(2).路网数据预处理:
[0077] 2-1.读取路网数据,路网数据包括路段编号(LDID)、起点位置信息(GPS_QD)、终点位置信息(GPS_ZD)、中点位置信息(GPS_MD),将路网网格化(网格边长100米)得到“网格—路段编号”映射表(如表1所示)。
[0078] 表1
[0079]
[0080] 2-2.因为路段相互连通,统计路网数据中所有路段的起点和终点,得到“点-路段编号”映射表(如表2所示);
[0081] 表2
[0082]
[0083] 2-3.对“点-路段编号”映射表进行筛选,保留Value个数大于等于3(即为十字路口或三叉路口)的所有键值对,将新的“点-路段编号”映射表进行键值转换形成“路段-点”映射表如表3所示,记为LkMap。
[0084] 表3
[0085]
[0086] 步骤(3).计算车辆速度样本:
[0087] 3-1.根据“车牌号码”、“创建时间”升序实时读取一个时间片(5分钟)的浮动车数据,浮动车数据包括车牌号码(CPHM)、位置信息(GPS_FDC)、创建时间(CJSJ)、载客状态(STATUS),记为{CPHM}_{GPS_FDCi,CJSJi,STATIUSi};
[0088] 3-2.通过计算同一车辆的所有两个点的距离差和时间差,得到连续的速度样本列表speedList;
[0089] 3-3.计算GPS_FDCi在地图中所对应的网,在根据“网格-路段编号”映射表得到一系列候选路段,分别计算GPS_FDCi与候选路段的垂直距离,取距离最小的路段作为该点的匹配路段,并将速度样本添加到该路段上,最终得到数据结构LDIDSpeedListMap(如图4所示)。
[0090] 步骤(4).识别并剔除“真载客行为”:
[0091] 4-1.循环读取LDIDSpeedListMap中下一个LDID中所有车牌号码CPHM对应的速度列表speedList;
[0092] 4-2.识别每一个speedList中,是否存在STATUS由0变1或者由1变0的过程,若存在则剔除跳变时产生的速度样本(一般剔除前后3个速度样本即可);
[0093] 4-3.重复步骤4-1,4-2直至LDIDSpeedListMap中所有LDID中的所有车牌号码CPHM对应的速度列表speedList都剔除完毕,并返回一个新的LDIDSpeedListMap。
[0094] 步骤(5).识别并剔除“类载客行为”:
[0095] 5-1.经过步骤(4)后从新的LDIDSpeedListMap中循环遍历获取LDID中CPHM的速度样本列表speedList,以5个连续的速度样本为一组<v1,v2,v3,v4,v5>;
[0096] 5-2.根据步骤(1)中步骤1-4的方法为每一组速度样本建立参数向量Vis(a,b,v1-v5),并根据公式(3)计算Vis与步骤(1)中步骤1-5中行成的三个类簇中心的参数向量的欧式距离di(d1,d2,d3);
[0097]
[0098] 5-3.将di(d1,d2,d3)与步骤(1)中得到的对应的“类载客行为”速度变化阈值Di(D1,D2,D3)比较,如果d1<D1则认为该组速度样属于第一类“类载客行为”;d2<D2则认为该组速度样属于第二类“类载客行为”;d3类推。每个样本将唯一对应一个类,不会出现同时属于2个类的情况;
[0099] 5-4.扫描speedList表,得到该“类载客行为”速度样本<v1,v2,v3,v4,v5>中最小速度对应的LDID和GPS_FDCi。遍历LkMap,若LkMap中存在该LDID则说明该行为出现的路段LDID为路口路段,若不存在进入5-5。从LkMap中获取该路段编号LDID对应的路口点(GPS_QD,GPS_ZD),通过公式(3)计算GPS_FDCi与路口的距离并取其最小值L,若L
[0100] L=min(abs(GPS_FDCi-GPS_QD),abs(GPS_FDCi-GPS_ZD)………(4)
[0101] 5-5.扫描speedList表,获取该载客行为速度样本vi<v1,v2,v3,v4,v5>对应的CJSJi和GPS_FDCi,循环遍历该LDID中同一路段,同一时间段内,其他车辆的速度列表若均出现“载客行为”获取其对应载客点的GPS_FDCi和CJSJi',根据公式(5)、公式(6)计算判断条件,
[0102] abs(GPS_FDCi-GPS_FDCi')<Δs_min,i≠i'………(5)
[0103] abs(CJSJi-CJSJi')<Δt_min,i≠i'…………………(6)
[0104] 若该LDID下其他车辆都满足以上判断条件则认为该载客行为属于“集体行为”不进行剔除,否则属于“个体行为”进入步骤5-6进行速度样本剔除;
[0105] 举例:“集体行为”如表4所示,在同一路段中同一时间范围内均发生了“类载客行为”
[0106] 表4
[0107]
[0108]
[0109] 举例:“个体行为”如表5所示,在同一个路段中只有一辆车发生的“类载客行为”。
[0110]
[0111] 5-6.剔除上述步骤得到的“类载客行为”速度样本。根据该速度样本vi<v1,v2,v3,v4,v5>所属的“类载客行为”分类,若属于第一类即载客过程的前半部分,则剔除这组速度样本中的后3个样本;同理若d2
[0112] 5-7.重复步骤5-2至5-6完成“类载客行为”识别和剔除后返回一个新的LDIDSpeedListMap。
[0113] 步骤(6).估计路段速度:
[0114] 6-1.完成该时间片Δt所有的速度样本剔除之后,根据新的LDID_SpeedMap获取LDID中的所有CPHM的速度列表根据CJSJ的先后顺序组成一新的速度列表<v1,v2,v3,…vn>;
[0115] 6-2.我们把该时间片划分为更小的时间片段τ,将速度列表中所有速度根据其对应的CJSJ划分到每一个小的时间片段中,假设每个小的时间片段中有m个速度样本,则根据公式(7)估算路段速度vR。使得距离当前时间越近的样本所占权值越大。
[0116]
[0117] 步骤(7).根据时间无缝规则(每次保留4分钟历史数据并向前更新1分钟数据组成一个时间片的数据如图5所示)更新时间片,重复步骤(3)至步骤(6)。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号