一种交叉口公交车辆信号优先效果评价方法与流程

文档序号:30500893发布日期:2022-06-24 22:37阅读:172来源:国知局
一种交叉口公交车辆信号优先效果评价方法与流程

1.本发明涉及一种交叉口公交车辆信号优先效果评价方法,尤其是一种基于多源数据的交叉口公交车辆信号优先效果评价方法。


背景技术:

2.公交信号优先指的是在信号控制交叉口给予公交车辆相对于其他车辆的优先权,这种优先不应导致相应的信号机脱离正常运行状态,包括被动优先、主动优先、实时优先以及与不同设施相结合的信号优先控制策略。公交信号优先是提高公交系统运行速度和可靠性的重要手段,有效提高了公交车的通行质量,但是目前缺乏有效的公交信号优先效果评价方法,因此从某种程度上阻碍了公交信号优先的进一步优化。


技术实现要素:

3.本发明要解决的技术问题是:现有技术缺乏有效的公交信号优先效果评价方法。
4.为了解决上述问题,本发明的技术方案是提供了一种交叉口公交车辆信号优先效果评价方法,其特征在于,包括如下步骤:
5.步骤1、沿公交线路方向按交叉口顺序事先采集交叉口定位坐标数据集合:lc={(x1,y1),(x2,y2),

,(xm,ym)},其中m为公交线路交叉口的数量;
6.建立速度时空分布信息表v
ts
:根据公交车辆在交叉口的行驶状态,不同交叉口附近会采集不同数量的时空定位信息,n表示每个交叉口附近采集的时空定位数量,n表示公交线路m个交叉口附近采集的速度时空分布点位数量总和,n=∑n,用于存储不同时间、不同交叉口附近进出口点位的车速信息,数据结构为v
ts
={(t1,x1,y1,v1),(t2,x2,y2,v2),

,(tn,xn,yn,vn)};
7.步骤2、获取公交车辆经过所有交叉口附近的gps定位数据、rfid定位数据、视频检测器定位数据,并将获取的数据集分别采用不同的聚类算法建模,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车;
8.步骤3、把得到的三种不同聚类结果采用集成学习中voting投票方法,将组合票数高的作为判断公交车辆在交叉口是否停车的最终结果;
9.步骤4、基于公交车辆交叉口信号优先响应数据,采用决策树cart分类算法对车辆通过方式进行分类,判断整个模型的分类结果,包括被动优先不停车通过、主动优先不停车通过、被动优先停车通过、主动优先停车通过;
10.步骤5、计算交叉口平均停车延误时间、公交车辆交叉口不停车通过率、主动优先不停车通过率,作为交叉口信号优先评价的三项指标。
11.优选地,所述gps定位数据包括车辆编号、时间、纬度、经度、瞬时车速、方位角、上下行标识、线路id;
12.所述rfid定位数据包括车辆编号、时间、纬度、经度、瞬时车速、方位角、线路id;
13.所述视频检测器定位数据包括车辆编号、时间、纬度、经度、瞬时车速、方位角、上下行标识、线路id。
14.优选地,所述步骤2中将获取的gps定位数据、rfid定位数据和视频检测器定位数据分别通过基于密度的dbscan算法、基于网格的clique聚类算法和基于滑动窗口的均值漂移聚类算法建模,判断车辆在各个交叉口是否停车。
15.优选地,所述步骤2中采用基于密度的dbscan算法对获取的gps定位数据进行建模,判断车辆在各个交叉口是否停车,具体包括如下步骤:
16.步骤1_gps:获取公交车辆不同时间运行通过线路所有交叉口附近的gps定位数据向量集合gi,
17.gi={g
i1
,g
i2
,

,g
in
}={(x
i1
,y
i1
),(x
i2
,y
i2
),

,(x
in
,y
in
)},i=1,2,

,m;
18.其中gi表示第i个交叉口附近的n个定位数据点组成的向量,m为公交线路交叉口的数量,n为公交车辆经过交叉口附近获取的定位数据个数;
19.步骤2_gps:采用基于密度的dbscan聚类算法,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车;
20.步骤3_gps:将步骤1_gps中gi定位数据点、以及邻域半径ε、形成簇类所需的最小样本个数p
min
作为3个输入数据;
21.步骤4_gps:计算所有的样本点的ε邻域包含的点数目,如果第i个交叉口的ε邻域里有超过p
min
个点,则创建一个以ci为核心点的新簇;
22.步骤5_gps:反复寻找所述核心点直接密度可达的点,并将其加入到相应的簇,对于核心点发生“密度相连”状况的簇,给予合并;
23.步骤6_gps:当没有新的点可以被添加到任何簇时,算法结束;
24.步骤7_gps:输出划分的簇对应的交叉口编号向量g
ci
={g
c1
,g
c2


,g
cm
},如果第i个交叉口没有生成聚类簇,则用g
ci
=0表示车辆不停车通过该交叉口,如果第i个交叉口生成聚类簇,则用g
ci
=1表示车辆停车通过该交叉口;从速度时空分布信息表v
ts
中查找所述簇中车辆到达和离开交叉口的时间t
ga
、t
gd
,且速度等于0的两个点位gi(x
ia
,y
ia
)、gi(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点gi(x
ip
,y
ip
)、速度v
gip
、时间t
gip

25.步骤8_gps:统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车次数gk,则不停车次数为m-gk。
26.优选地,所述步骤2中采用基于网格的clique聚类算法对获取的rfid定位数据进行建模,判断车辆在各个交叉口是否停车,具体包括如下步骤:
27.步骤1_rfid:获取公交车辆不同时间运行通过线路所有交叉口附近的rfid定位数据向量集合ri,
28.ri={r
i1
,r
i2


,r
in
}={(x
i1
,y
i1
),(x
i2
,y
i2
),...,(x
in
,y
in
)},i=1,2,...,m;
29.其中ri表示第i个交叉口附近的n个定位数据点组成的向量,m为公交线路交叉口的数量,n为公交车辆经过交叉口附近获取的定位数据个数;
30.步骤2_rfid:采用基于网格的clique聚类算法,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车;
31.步骤3_rfid:输入步骤1_rfid中ri定位数据,输入网格的步长w并划分网格单元;
32.输入密度的阈值,网格中对象数量大于等于该阈值表示该网格为稠密网格;计算
每个网格的密度,根据给定的阈值判定网格单元是否稠密;
33.步骤4_rfid:合并相邻稠密的网格单元,识别为簇,直到不再有这样的网格被发现为止;
34.步骤5_rfid:输出划分的簇对应的交叉口编号向量r
ci
={r
c1
,r
c2


,r
cm
},如果第i个交叉口没有生成聚类簇,则用r
ci
=0表示车辆不停车通过该交叉口,如果第i个交叉口生成聚类簇,则用r
ci
=1表示车辆停车通过该交叉口;从速度时空分布信息表中查找所述簇中车辆到达和离开交叉口的时间t
ra
、t
rd
,且速度等于0的两个点位ri(x
ia
,y
ia
)、ri(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点ri(x
ip
,y
ip
)、速度v
rip
、时间t
rip

35.步骤6_rfid:统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车次数rk,则不停车次数为m-rk。
36.优选地,所述步骤2中采用基于滑动窗口的均值漂移聚类算法对获取的视频检测器数据进行建模,判断车辆在各个交叉口是否停车,具体包括如下步骤:
37.步骤1_video:获取公交车辆不同时间运行通过线路所有交叉口附近的视频检测器定位数据向量集合vi,
[0038]vi
={v
i1
,v
i2


,v
in
}={(x
i1
,y
i1
),(x
i2
,y
i2
),...,(x
in
,y
in
)},i=1,2,...,m;
[0039]
其中vi表示第i个交叉口附近的n个定位数据点组成的向量,m为公交线路交叉口的数量,n为公交车辆经过交叉口附近获取的定位数据个数;
[0040]
步骤2_video:采用基于滑动窗口的均值漂移聚类算法,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车;
[0041]
步骤3_video:输入步骤1_video中vi定位数据,输入滑动窗口半径r,以随机选取的中心点c半径为r的圆形滑动窗口开始滑动;
[0042]
步骤4_video:每一次滑动到新的区域,计算滑动窗口内的均值作为中心点,滑动窗口内的点的数量为窗口内的密度,在每一次移动中,窗口会向密度更高的区域移动;
[0043]
步骤5_video:移动窗口,计算窗口内的中心点以及窗口内的密度,直到没有方向在窗口内可以容纳更多的点,即一直移动到圆内密度不再增加为止;
[0044]
步骤6_video:所述步骤3_video、步骤4_video、步骤5_video会产生很多个滑动窗口,当多个滑动窗口重叠时,保留包含最多点的窗口,然后根据数据点所在的滑动窗口进行聚类;
[0045]
步骤7_video:输出划分的簇对应的交叉口编号向量v
ci
={v
c1
,v
c2

,v
cm
},如果第i个交叉口没有生成聚类簇,则用v
ci
=0表示车辆不停车通过该交叉口,如果第i个交叉口生成聚类簇,则用v
ci
=1表示车辆停车通过该交叉口,从速度时空分布信息表中查找所述簇中车辆到达和离开交叉口的时间t
va
、t
vd
,且速度等于0的两个点位vi(x
ia
,y
ia
)、vi(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点vi(x
ip
,y
ip
)、速度v
vip
、时间t
vip

[0046]
步骤8_video:统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车次数vk,则不停车次数为m-vk。
[0047]
优选地,所述步骤3中通过使用voting投票表决共识函数整合所述步骤2中得到的三类不同的聚类结果,得到公交车辆在各个交叉口是否停车的最终结果f
ci
={f
c1
,f
c2


,fcm
};
[0048]
如果第i个交叉口没有生成聚类簇,则用f
ci
=0表示车辆不停车通过该交叉口;如果第i个交叉口生成聚类簇,则用f
ci
=1表示车辆停车通过该交叉口,从速度时空分布信息表中查找该簇中到达和离开交叉口的时间t
fa
、t
fd
,且速度等于0的两个点位fi(x
ia
,y
ia
)、fi(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点fi(x
ip
,y
ip
)、速度v
fip
、时间t
fip

[0049]
统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车通过次数fk,则不停车通过次数为m-fk。
[0050]
优选地,所述步骤4中信号优先响应数据包括交叉口编号、行驶方向、车辆编号、车辆在各个交叉口是否停车、运行速度、到达交叉口时间、离开交叉口时间、优先响应开始时间、优先类型、优先是否被响应、优先实际执行时间,将信号优先响应数据作为特征向量输入,其中车辆在各个交叉口是否停车、优先是否被响应采用决策树cart分类算法,判断整个模型的分类结果。
[0051]
优选地,所述步骤5具体包括如下步骤:
[0052]
步骤5.1、分别计算每一组特征车辆在各个交叉口是否停车、优先是否被响应的gini系数增益,用gini系数最小化准则来进行特征选择,取gini系数增益值最大的属性作为决策树的根节点属性;
[0053]
递归计算,最终构建二叉决策树,然后利用生成的cart分类树做预测分类,基于步骤4中的特征向量输入,获得公交车辆不同时间不同车次在线路各个交叉口的通过类型,公交车辆通过交叉口被分类为被动优先不停车通过f
pppi
、主动优先不停车通过f
appi
、被动优先停车通过f
ppsi
、主动优先停车通过f
apsi
,并统计得到主动优先停车通过次数主动优先不停车通过次数
[0054]
步骤5.2、从步骤1_gps,步骤1_rfid和步骤1_video开始,获取公交车辆不同时间不同车次运行通过线路所有交叉口附近的上下行数据;
[0055]
步骤5.3、公交车辆经过交叉口的延误发生在车辆驶入交叉口范围到驶离交叉口的过程中,车辆在交叉口实际消耗的时间减去车辆不停车通过交叉口所需的时间,即为单个交叉口单车延误时间δd
ij

[0056][0057]
式中,tr为车辆经过交叉口的实际行驶时间,l为交叉口的长度,简化为沿公交线路开行方向从fi(x
id
,y
id
)至fi(x
ip
,y
ip
)的距离;v
fip
为车辆经过交叉口自由行驶的速度,简化为按照驶离出口的速度;t
fip
为车辆驶离交叉口出口范围的第一个时间点,t
fa
为车辆驶入交叉口附近范围内的第一个时间点;
[0058]
步骤5.4、计算全日单个交叉口的平均延误时间:
[0059][0060]
步骤5.5、计算d天内每辆车运行全程上下行各个交叉口的平均延误时间:
[0061][0062]
式中,j表示公交车辆班次数,i表示线路交叉口数量,假设整日公交车辆营运班次数为s,交叉口总数量为m;
[0063]
步骤5.6、计算d天内公交车辆平均不停车通过率:
[0064]
交叉口不停车通过率,包括自然状态不停车通过率和主动优先车辆不停车通过率,
[0065][0066]
式中,j表示公交车辆班次数,i表示线路交叉口数量,假设整日公交车辆营运班次数为s,交叉口总数量为m;
[0067]
步骤5.7、计算交叉口主动优先车辆不停车通过率:
[0068][0069]
式中,j表示公交车辆班次数,i表示线路交叉口数量,假设整日公交车辆营运班次数为s,交叉口总数量为m。
[0070]
优选地,所述决策树的根节点选取规则如下:
[0071]
根据gini系数公式其中样本d={车辆在各个交叉口是否停车,优先是否被响应},z为每一组特征的类别个数,pi为第i个类别的概率,计算:
[0072]
gini(通过类型)=1-{(1/4)2+(1/4)2+(1/4)2+(1/4)2}=0.75
[0073]
gini(车辆在交叉口停车)=1-{(1/2)2+(1/2)2}=0.5
[0074]
gini(车辆在交叉口不停车)=1-{(1/2)2+(1/2)2}=0.5
[0075]
根据特征a={“车辆在各个交叉口是否停车”或“优先是否被响应”}的某个值a={“是”或“否”},计算车辆在交叉口是否停车的gini系数,
[0076]
gini(车辆在交叉口是否停车)=0.5*0.5+0.5*0.5=0.5
[0077]
同理,对于优先是否被响应这个属性,按照它划分后计算优先是否被响应的gini系数,
[0078]
gini(优先是否被响应)=0.5*0.5+0.5*0.5=0.5
[0079]
δgini(车辆在交叉口是否停车)
[0080]
=gini(通过类型)-gini(车辆在交叉口是否停车)=0.25
[0081]
δgini(优先是否被响应)=gini(通过类型)-gini(优先是否被响应)=0.25
[0082]
根据计算结果,随机选择车辆在各个交叉口是否停车或者优先是否被响应任意一个作为根节点。
[0083]
与现有技术相比,本发明的有益效果是:
[0084]
本发明通过采集获取gps、rfid、视频检测器在公交线路所有交叉口附近的车辆定位数据,基于多个数据源,克服了各种车辆检测定位方式的不足;把得到的三种不同聚类结果采用集成学习中voting投票方法,将组合票数高的作为判断车辆在交叉口是否停车的最终结果,减少了单种数据源聚类结果的误差,提高了聚类结果的准确度;基于公交车辆交叉口信号优先响应数据,将交叉口平均停车延误时间、公交车辆交叉口不停车通过率、主动优先不停车通过率作为交叉口信号优先评价的三项指标,通过公交优先控制主机进行综合研判,给予公交车辆合理的交叉口优先通行策略,最终以此对信号优先效果进行评价,弥补了现有技术的不足。
附图说明
[0085]
图1为gps定位样例数据图;
[0086]
图2为rfid定位样例数据图;
[0087]
图3为视频检测器定位样例数据图;
[0088]
图4为信号优先响应样例数据图;
[0089]
图5为本发明一种交叉口公交车辆信号优先效果评价方法流程图;
[0090]
图6为公交信号优先控制子系统架构图。
具体实施方式
[0091]
为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。
[0092]
本发明基于公交相关信息,发明了一种交叉口公交车辆信号优先效果评价方法。通过采集获取gps、rfid、视频检测器在公交线路所有交叉口附近的车辆定位数据(如交叉口编号、定位时间、车辆编号、所属线路、经纬度),将这三类不同数据集分别用不同的聚类算法(基于密度的dbscan算法、基于网格的clique聚类算法、基于滑动窗口的均值漂移聚类算法)建模,识别密集的和稀疏的区域。把得到的三种不同聚类结果采用集成学习中voting投票方法,将组合票数高的作为判断车辆在交叉口是否停车的最终结果。基于公交车辆交叉口信号优先响应数据,采用决策树cart分类算法对车辆通过方式进行分类,包括不停车通过(被动优先/主动优先)、停车通过(被动优先/主动优先)。将交叉口平均停车延误时间、公交车辆交叉口不停车通过率、主动优先不停车通过率作为交叉口信号优先评价的三项指标,采用车辆平均停车延误时间作为信号交叉口服务水平的划分标准。
[0093]
交叉口公交车辆定位技术采用车载gps、rfid或视频检测器定位技术中的一种,来检测车辆交叉口附近的位置与状态(如交叉口编号、定位时间、车辆编号、线路编号、经纬度、距路口距离、车速等信息),结合从路口信号中心系统获取的红绿灯状态;从公交调度系统获取的公交车辆运行状态,如线路编号、上下行行驶方向、车辆编号、晚点与否、满载率等实时营运信息,通过公交优先控制主机进行综合研判,给予公交车辆合理的交叉口优先通行策略,最终以此对信号优先效果进行评价。
[0094]
一、数据源种类(既有定位信息又有身份信息):gps、rfid(射频识别技术)、视频检测器。
[0095]
(1)车载gps定位:gps车辆定位系统对公交车辆运行状态进行实时定位,记录了公交车辆在每个采集点的时间、位置和速度等信息。将车辆实时信息发送至运营调度中心和
驾驶室显示屏,方便及时调整车辆运行状况。具有全天候监测、全天时运行和全球性覆盖的特点。
[0096]
(2)rfid定位:rfid车辆检测系统主要车载电子标签、rfid阅读器及天线单元、无线地磁感应器与无线地磁接收器等部分组成。运用rfid射频通讯技术,通过布设多个检测器,反复校正公交车辆位置,对公交车辆进行准确定位和身份识别。
[0097]
(3)视频检测器:视频车辆检测系统主要由视频车辆检测摄像机、控制主机、补光灯、通讯设备、室外机箱组成。系统通过视频分析、图像处理等技术自动完成检测区域内公交车辆卡口照片抓拍、车牌识别、不同时刻位置及速度测定等信息,由控制主机通过有线网络传输给信号优先控制主机,用以综合研判公交优先策略,实现公交优先的功能。
[0098]
二、特点及数据结构
[0099]
1、gps:
[0100]
优点:全球全天候定位,定位精度高,采集点密集。更适用于视野开阔、障碍物较少的区域。
[0101]
缺点:受气候、遮挡物(如密集建筑群、高层建筑、高架、隧道)等影响,存在数据丢失、定位偏移、数据传输延迟等现象。
[0102]
基本数据结构:如表1所示。
[0103][0104][0105]
表1
[0106]
样例数据:如图1所示。
[0107]
2、rfid
[0108]
优点:rfid定位精度相对gps较高,不受气候的影响。
[0109]
缺点:作用距离短,对布设位置及角度要求较高。读取准确率不稳定,存在误读漏读的现象。
[0110]
基本数据结构:如表2所示。
[0111]
数据类型含义carnumvarchar2(15)车辆编号gathertimetimestamp(6)时间
latitudevarchar2(12)纬度longitudevarchar2(12)经度instantspeednumber(5,2)瞬时车速azimuthnumber(3)方位角linenovarchar2(15)线路id
[0112]
表2
[0113]
样例数据:如图2所示。
[0114]
3、视频检测器
[0115]
优点:定位精度较高,采集信息量大,准确,直观可靠,安装调试维护方便。
[0116]
缺点:视频检测结果容易受到环境因素的影响(如天气、灯光、树及车辆动态阴影等)。
[0117]
基本数据结构:如表3所示。
[0118][0119][0120]
表3
[0121]
样例数据:如图3所示。
[0122]
4、信号优先响应
[0123]
基本数据结构:如表4所示。
[0124][0125]
表4
[0126]
样例数据:如图4所示。
[0127]
三、公交车辆信号优先效果评价方法
[0128]
1、方法流程图:如图5所示。
[0129]
2、步骤描述:
[0130]
算法前置条件:
[0131]
营运状态下公交车辆的开行方向:上行、下行。
[0132]
步骤1、采集上下行线路交叉口进出口点位集合{lc}:
[0133]
沿公交线路方向按交叉口顺序,事先采集交叉口定位坐标数据集合:lc={(x1,y1),(x2,y2),

,(xm,ym)},其中m为公交线路交叉口的数量。
[0134]
建立速度时空分布信息表{v
ts
}:根据公交车辆在交叉口的行驶状态,不同交叉口附近会采集不同数量的时空定位信息,n表示每个交叉口附近采集的时空定位数量,n表示公交线路m个交叉口附近采集的速度时空分布点位数量总和,n=∑n。该表存储不同时间,不同交叉口附近进出口点位的车速信息,数据结构为:v
ts
={(t1,x1,y1,v1),(t2,x2,y2,v2),

,(tn,xn,yn,vn)}。
[0135]
步骤2、获取公交车辆经过所有交叉口附近的gps定位数据、rfid定位数据、视频检测器定位数据,并将获取的数据集分别采用不同的聚类算法建模,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车。
[0136]
1)通过gps定位数据判断车辆在各个交叉口是否停车,包括如下步骤:
[0137]
步骤1_gps:获取公交车辆不同时间运行通过线路所有交叉口附近的gps定位数据向量集合,然后至步骤2_gps;
[0138]gi
={g
i1
,g
i2
,

,g
in
}={(x
i1
,y
i1
),(x
i2
,y
i2
),

,(x
in
,y
in
)},i=1,2,

,m;
[0139]
上述公式中:
[0140]gi
表示第i个交叉口附近的n个定位数据点组成的向量。m为公交线路交叉口的数量,n为公交车辆经过交叉口附近获取的定位数据个数(统称为n,n不一定都相同,不停车通
过则定位数据少,停车通过则定位数据多);
[0141]
步骤2_gps:停车线之前,如果车辆在交叉口停车,定位点会比较密集,可聚类框定合适的范围。如果未停车直接通过,定位点会比较稀疏。停车线之后,定位点会比较稀疏,可过滤掉。采用基于密度的dbscan聚类算法,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车。然后至步骤3_gps;
[0142]
步骤3_gps:将步骤1_gps中gi定位数据点、以及邻域半径ε、形成簇类所需的最小样本个数p
min
作为3个输入数据。其中邻域参数ε和p
min
的参数设置方法为:ε邻域用k-距离曲线得到,计算每个样本与所有样本的距离,选择k个最近邻域距离并从大到小排序,得到k-距离曲线,曲线拐点对应的距离设置为ε,如果(k+1)-距离曲线和k-距离曲线没有明显差异,那么p
min
设置为k值。然后进入步骤4_gps;
[0143]
步骤4_gps:计算所有的样本点的ε邻域包含的点数目,如果第i个交叉口的ε邻域里有超过p
min
个点,则创建一个以ci为核心点的新簇。然后进入步骤5_gps;
[0144]
步骤5_gps:反复寻找这些核心点直接密度可达(之后可能是密度可达)的点,将其加入到相应的簇,对于核心点发生“密度相连”状况的簇,给予合并。然后至步骤6_gps;
[0145]
步骤6_gps:当没有新的点可以被添加到任何簇时,算法结束。则至步骤7_gps;
[0146]
步骤7_gps:输出划分的簇对应的交叉口编号向量g
ci
={g
c1
,g
c2
,...,g
cm
},如果第i个交叉口没有生成聚类簇,则用g
ci
=0表示车辆不停车通过该交叉口。如果第i个交叉口生成聚类簇,则用g
ci
=1表示车辆停车通过该交叉口,从速度时空分布信息表中查找该簇中到达和离开交叉口的时间t
ga
、t
gd
,且速度等于0的两个点位gi(x
ia
,y
ia
)、gi(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点(不和其他密度相连的离群点)gi(x
ip
,y
ip
)、速度v
gip
、时间t
gip
。然后至步骤8_gps;
[0147]
步骤8_gps:统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车次数gk,不停车次数为m-gk。
[0148]
2)通过rfid定位数据判断车辆在各个交叉口是否停车,包括如下步骤:
[0149]
步骤1_rfid:获取公交车辆不同时间运行通过线路所有交叉口附近的rfid定位数据向量集合,然后至步骤2_rfid;
[0150]ri
={r
i1
,r
i2


,r
in
}={(x
i1
,y
i1
),(x
i2
,y
i2
),

,(x
in
,y
in
)},i=1,2,

,m;
[0151]
上述公式中:
[0152]ri
表示第i个交叉口附近的n个定位数据点组成的向量。m为公交线路交叉口的数量,n为公交车辆经过交叉口附近获取的定位数据个数(统称为n,n不一定都相同,不停车通过则定位数据少,停车通过则定位数据多);
[0153]
步骤2_rfid:停车线之前,如果车辆在交叉口停车,定位点会比较密集,可聚类框定合适的范围。如果未停车直接通过,定位点会比较稀疏。停车线之后,定位点会比较稀疏,可过滤掉。采用基于网格的clique聚类算法,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车。然后至步骤3_rfid;
[0154]
步骤3_rfid:输入步骤1_rfid中ri定位数据,输入网格的步长w并划分网格单元;
[0155]
输入密度的阈值,网格中对象数量大于等于该阈值表示该网格为稠密网格。计算每个网格的密度,根据给定的阈值判定网格单元是否稠密。然后进入步骤4_rfid;
[0156]
步骤4_rfid:合并相邻稠密的网格单元,识别为簇。直到不再有这样的网格被发现为止。然后至步骤5_rfid;
[0157]
步骤5_rfid:输出划分的簇对应的交叉口编号向量r
ci
={r
c1
,r
c2


,r
cm
},如果第i个交叉口没有生成聚类簇,则用r
ci
=0表示车辆不停车通过该交叉口。如果第i个交叉口生成聚类簇,则用r
ci
=1表示车辆停车通过该交叉口,从速度时空分布信息表中查找该簇中到达和离开交叉口的时间t
ra
、t
rd
,且速度等于0的两个点位ri(x
ia
,y
ia
)、ri(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点(不和其他密度相连的离群点)ri(x
ip
,y
ip
)、速度v
rip
、时间t
rip
。然后至步骤6_rfid;
[0158]
步骤6_rfid:统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车次数rk,不停车次数为m-rk。
[0159]
3)通过视频检测器定位数据判断车辆在各个交叉口是否停车,包括如下步骤:
[0160]
步骤1_video:获取公交车辆不同时间运行通过线路所有交叉口附近的视频检测器定位数据向量集合,然后至步骤2_video;
[0161]vi
={v
i1
,v
i2


,v
in
}={(x
i1
,y
i1
),(x
i2
,y
i2
),...,(x
in
,y
in
)},i=1,2,...,m;
[0162]
上述公式中:
[0163]vi
表示第i个交叉口附近的n个定位数据点组成的向量。m为公交线路交叉口的数量,n为公交车辆经过交叉口附近获取的定位数据个数(统称为n,n不一定都相同,不停车通过则定位数据少,停车通过则定位数据多);
[0164]
步骤2_video:停车线之前,如果车辆在交叉口停车,定位点会比较密集,可聚类框定合适的范围。如果未停车直接通过,定位点会比较稀疏。停车线之后,定位点会比较稀疏,可过滤掉。采用基于滑动窗口的均值漂移聚类算法,识别公交车辆运行通过全程各个交叉口的密集和稀疏区域,过滤离群点,通过聚类簇判断车辆在各个交叉口是否停车。然后至步骤3_video;
[0165]
步骤3_video:输入步骤1_video中vi定位数据,输入滑动窗口半径r,以随机选取的中心点c半径为r的圆形滑动窗口开始滑动。然后进入步骤4_video;
[0166]
步骤4_video:每一次滑动到新的区域,计算滑动窗口内的均值来作为中心点,滑动窗口内的点的数量为窗口内的密度。在每一次移动中,窗口会向密度更高的区域移动。然后进入步骤5_video;
[0167]
步骤5_video:移动窗口,计算窗口内的中心点以及窗口内的密度,直到没有方向在窗口内可以容纳更多的点,即一直移动到圆内密度不再增加为止。然后至步骤6_video;
[0168]
步骤6_video:步骤3,4,5会产生很多个滑动窗口,当多个滑动窗口重叠时,保留包含最多点的窗口,然后根据数据点所在的滑动窗口进行聚类。则至步骤7_video;
[0169]
步骤7_video:输出划分的簇对应的交叉口编号向量v
ci
={v
c1
,v
c2
,...,v
cm
},如果第i个交叉口没有生成聚类簇,则用v
ci
=0表示车辆不停车通过该交叉口。如果第i个交叉口生成聚类簇,则用v
ci
=1表示车辆停车通过该交叉口,从速度时空分布信息表中查找该簇中到达和离开交叉口的时间t
va
、t
vd
,且速度等于0的两个点位vi(x
ia
,y
ia
)、vi(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点(不和其他密度相连的离群点)vi(x
ip
,y
ip
)、速度v
vip
、时间t
vip
。然后至步骤8_video;
[0170]
步骤8_video:统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车次数vk,不停车次数为m-vk。
[0171]
步骤3、组合上述三类数据源(gps、rfid、视频检测器),通过应用不同聚类学习器,获得三类不同的聚类结果,然后构建异质集成学习,通过使用voting投票表决共识函数整合上述所得聚类结果,得到公交车辆在各个交叉口是否停车的最终结果f
ci
={f
c1
,f
c2


,f
cm
},提高聚类的质量。如果第i个交叉口没有生成聚类簇,则用f
ci
=0表示车辆不停车通过该交叉口。如果第i个交叉口生成聚类簇,则用f
ci
=1表示车辆停车通过该交叉口,从速度时空分布信息表中查找该簇中到达和离开交叉口的时间t
fa
、t
fd
,且速度等于0的两个点位fi(x
ia
,y
ia
)、fi(x
id
,y
id
),并输出停车通过该交叉口后的第一个噪声点(不和其他密度相连的离群点)fi(x
ip
,y
ip
)、速度v
fip
、时间t
fip

[0172]
统计所有交叉口划分的聚类簇数量即公交车辆运行通过全程在交叉口的停车通过次数fk,不停车通过次数为m-fk。
[0173]
步骤4、将交叉口编号、行驶方向、车辆编号、车辆在各个交叉口是否停车,运行速度、到达交叉口时间、离开交叉口时间、优先响应开始时间、优先类型、优先是否被响应、优先实际执行时间等数据作为特征向量输入,其中车辆在各个交叉口是否停车,优先是否被响应采用决策树cart分类算法,判断整个模型的分类结果,包括被动优先不停车通过f
pppi
、主动优先不停车通过f
appi
、被动优先停车通过f
ppsi
、主动优先停车通过f
apsi
。下面表格中数据集d的属性有2个,分别是车辆在各个交叉口是否停车、优先是否被响应。“通过类型”属于分类的结果。
[0174]
车辆在各个交叉口是否停车优先是否被响应通过类型是是主动优先停车通过是否被动优先停车通过否是主动优先不停车通过否否被动优先不停车通过
[0175]
步骤5、计算交叉口平均停车延误时间、公交车辆交叉口不停车通过率、主动优先不停车通过率,作为交叉口信号优先评价的三项指标。
[0176]
步骤5.1、分别计算每一组特征{“车辆在各个交叉口是否停车”或“优先是否被响应”}的gini系数增益来确定决策树划分的优先规则。用gini系数最小化准则来进行特征选择,取gini系数增益值最大的属性作为决策树的根节点属性。规则如下:
[0177]
当一列特征有z个类别,第i个类别的概率为pi,其gini系数公式为:
[0178][0179]
对于样本d={车辆在各个交叉口是否停车,优先是否被响应},如果根据特征a={“车辆在各个交叉口是否停车”或“优先是否被响应”}的某个值a={“是”或“否”},把d分为d1和d2两部分,则在特征a的条件下,gini系数计算公式为:
[0180]
[0181]
δgini(a)=gini(d)-ginia(d)
[0182]
对于车辆在各个交叉口是否停车这个属性,按照它划分后的gini系数计算如下:
[0183]
分类结果车辆在交叉口停车车辆在交叉口不停车主动优先停车通过10被动优先停车通过10主动优先不停车通过01被动优先不停车通过01
[0184]
gini(通过类型)=1-(1/4)
2-(1/4)
2-(1/4)
2-(1/4)2=0.75
[0185]
gini(车辆在交叉口停车)=1-(1/2)
2-(1/2)2=0.5
[0186]
gini(车辆在交叉口不停车)=1-(1/2)
2-(1/2)2=0.5
[0187]
gini(车辆在交叉口是否停车)=0.5*0.5+0.5*0.5=0.5
[0188]
同理,对于优先是否被响应这个属性,按照它划分后计算gini(优先是否被响应)=0.5。
[0189]
δgini(车辆在交叉口是否停车)
[0190]
=gini(通过类型)-gini(车辆在交叉口是否停车)=0.25
[0191]
δgini(优先是否被响应)=gini(通过类型)-gini(优先是否被响应)=0.25
[0192]
这两个特征的增益都为0.25,所以随机选择车辆在各个交叉口是否停车或者优先是否被响应的任意一个作为根节点。
[0193]
递归计算,最终构建二叉决策树,然后利用生成的cart分类树做预测分类,基于步骤4中的特征向量输入,获得公交车辆不同时间不同车次在线路各个交叉口的通过类型,公交车辆通过交叉口被分类为被动优先不停车通过f
pppi
、主动优先不停车通过f
appi
、被动优先停车通过f
ppsi
、主动优先停车通过f
apsi
。并统计得到主动优先停车通过次数主动优先不停车通过次数
[0194]
步骤5.2、获取公交车辆不同时间不同车次运行通过线路所有交叉口附近的上下行数据,从步骤1_gps,步骤1_rfid和步骤1_video开始。
[0195]
步骤5.3、公交车辆经过交叉口的延误发生在车辆驶入交叉口范围到驶离交叉口的过程中,车辆在交叉口实际消耗的时间减去车辆不停车通过交叉口所需的时间,即为单个交叉口单车延误时间δd
ij

[0196][0197]
式中,tr为车辆经过交叉口的实际行驶时间,l为交叉口的长度(即交叉口出口位置-交叉口进口位置),简化为沿公交线路开行方向从fi(x
id
,y
id
)至fi(x
ip
,y
ip
)的距离。v
fip
为车辆经过交叉口自由行驶的速度(简化为按照驶离出口的速度)。t
fip
为车辆驶离交叉口出口范围的第一个时间点(驶离终点时刻)。t
fa
为车辆驶入交叉口附近范围内的第一个时间点(驶入起点时间)。
[0198]
步骤5.4、计算全日单个交叉口的平均延误时间:
[0199]
[0200]
步骤5.5、计算d天内每辆车运行全程上下行各个交叉口的平均延误时间:
[0201][0202]
式中,j表示公交车辆班次数,i表示线路交叉口数量,假设整日公交车辆营运班次数为s,交叉口总数量为m。
[0203]
采用以车辆平均停车延误作为划分信号交叉口服务水平的划分标准。信号优先服务水平指日均每辆车在每个路口的平均停车延误(s),其服务水平标准见表5:
[0204]
服务水平每辆车停车延误(s)服务水平每辆车停车延误(s)a≤5.0d25.1-40.0b5.1-15.0e40.1-60.0c15.1-25.0f>60.0
[0205]
表5
[0206]
步骤5.6、计算d天内公交车辆平均不停车通过率:
[0207]
交叉口不停车通过率,包括自然状态不停车通过率和主动优先车辆不停车通过率。
[0208][0209]
式中,j表示公交车辆班次数,i表示线路交叉口数量,假设整日公交车辆营运班次数为s,交叉口总数量为m。
[0210]
步骤5.7、计算交叉口主动优先车辆不停车通过率:
[0211][0212]
式中,j表示公交车辆班次数,i表示线路交叉口数量,假设整日公交车辆营运班次数为s,交叉口总数量为m。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1