一种基于VANET的道路交通拥堵检测方法与流程

文档序号:12723439阅读:161来源:国知局
一种基于VANET的道路交通拥堵检测方法与流程

本发明属于智能交通领域,具体涉及一种基于VANET的道路交通拥堵检测方法。



背景技术:

在道路交通运输中,交通拥堵的发生既会对交通效率产生影响,又会造成巨大的经济损失和环境污染。为了解决因交通拥堵造成的各类交通问题目前存在两种主要手段,一种是不断增加道路基础设施的建设,另一种是在现有的道路基础设施的基础上提高交通效率,保障行车安全。一般来说,道路基础设施的建设受到资金、土地规划、环境保护的约束,不可能无限建设。因此第二种方式是目前解决交通问题的主要方法。

获得精确的交通拥堵信息是实施交通管理、缓解交通拥堵、提高交通效率的重要前提。基于获得的交通拥堵信息,车辆驾驶员可以动态改变行驶路径以避免陷入交通拥堵和交通事故等不良的交通状态。除此之外,基于获得的交通拥堵信息,交通管理部门可以及时采取相应的对策(实施交通诱导、进行红绿灯控制、实施速度限制)避免交通拥堵的发生。

目前交通拥堵信息的获取依赖于道路上交通流(车辆数量、行驶速度、路段车辆密度)信息的采集,需要在道路上或者道路两侧部署地磁线圈、监控相机、微波传感器、超声波传感器等传感器和设备,通过装设的传感器和设备完成元交通数据的采集,并通过预先建设的通信基础设施(光纤、移动通信基站、通信电缆等)传送至当地交通管理部门。交通管理部门在收集到相关道路交通流信息数据后,采用一定算法进行分析、处理,完成交通拥堵的检测。处理完成的结果通过因特网、调频广播、电子情报板、移动通信网络等进行发布。这种传统的交通拥堵信息采集和发布方式仅在部署有信息采集传感器/设备的道路区段有效,无法实现未部署信息采集传感器/设备的道路区段的交通拥堵信息的检测,因此实际使用过程中的有效性会严格依赖于交通数据采集传感器/设备和配套交通基础设施的建设。而考虑到道路设施的建设投资成本,交通数据采集传感器/设备和配套交通基础设施一般不会大规模部署于道路上,这严重限制了上述传统交通拥堵检测方法的有效性。

因此在目前在交通领域亟需一种成本低廉且能够检测大范围道路区段交通拥堵状况的方法和技术。随着信息技术的发展,VANET(Vehicular Ad-hoc Network)因其优良特性成为目前交通运输领域提高交通安全和交通效率的一种重要的技术方法和手段。采用VANET技术实现车辆与车辆(V2V)、车辆与道路基础设施(V2I)、车辆与行人(V2P)的互联,进而可以利用车、路、人之间的互联互通实现交通信息的采集,进而实现道路交通拥堵的检测。

专利CN201310203459.7描述了一种交通拥堵检测系统及方法,该方法通过在车辆中部署具备802.11p通信功能的车载设备、在道路两侧部署具备802.11p通信功能和3G移动蜂窝通信功能的路侧设备,通过车辆与车辆、车辆与路侧设备、车辆与交通管理中心服务器的互联实现对局部交通拥堵和全局交通拥堵的检测。然而该方法仅涉及了交通拥堵的技术手段,并未牵涉具体交通拥堵的检测方法;而且该方法无法剔除在对向车道运动的车辆发送的信息,有可能造成拥堵的误判;除此之外该方法的有效性依赖于路侧设备的部署和中心服务器的运行,其应用会增加拥堵检测方法的实施成本。



技术实现要素:

本发明的目的在于提供一种基于VANET的交通拥堵检测方法,以克服现有技术的不足。

为达到上述目的,本发明采用如下技术方案:

一种基于VANET的道路交通拥堵检测方法,包括以下步骤:

步骤1,设行驶在道路上的车辆为n+1辆,依次选取一车辆作为当前车辆,其余n辆车为该当前车辆的邻居车辆;

设当前车辆的ID为i,i为大于等于0的正整数,则当前车辆i以周期T1发送该当前车辆i的状态信息,同时当前车辆i以周期T1接收任一邻居车辆的状态信息,设任一邻居车辆的ID为j,j为大于等于0的正整数,i=1,2,…,n+1;j=1,2,…,n+1且i≠j;

所述状态信息包括车辆ID、地理位置坐标、行驶速度、行驶方向、时间戳;

步骤2,当前车辆i在tw时间内的平均行驶速度为若小于阈值Th(v1),则将当前车辆i的交通拥堵估计值S1赋值为拥堵,否则将S1赋值为不拥堵;

其中,通过式(1)得到平均行驶速度

式(1)中,表示在时间戳t时当前车辆i的速度;

当前车辆i与所有邻居车辆的平均相对速度为若小于阈值Th(v2),则将当前车辆i的相对交通拥堵估计值S2赋值为拥堵,否则将S2赋值为不拥堵;

其中,通过式(2)得到平均相对速度为

式(2)中,为在时间戳t时当前车辆i与邻居车辆j的相对速度,为时间戳t时当前车辆i自身与邻居车辆j的相对距离,

Xi,Yi,Zi为当前车辆i的地理位置坐标,Xj,Yj,Zj为邻居车辆j的地理位置坐标;

所述车辆地理位置坐标的X轴表示车辆所在位置的经度,Y轴表示车辆所在位置的纬度,Z轴表示车辆所在位置的海拔;

步骤3,通过式(3)得到S1和S2的加权平均数K:

K=k1·S1+k2·S2 (3)

其中,k1,k2,为加权系数,k1+k2=1,且k1≠k2,0≤k1≤1,0≤k2≤1;

若K大于阈值Th(K),则将当前车辆i的交通拥堵判决值赋值为拥堵,否则将当前车辆i的交通拥堵判决值赋值为不拥堵;

步骤4,重复步骤1~步骤3,直至得到道路上的所有车辆的交通拥堵判决值,执行步骤5;

步骤5,任选行驶在道路上的n+1辆车辆中的一车辆作为查询车辆,其余n辆车为该查询车辆的查询邻居车辆,所述查询邻居车辆包括:上游查询邻居车辆和下游查询邻居车辆;

查询车辆发送拥堵判决查询消息,任一查询邻居车辆收到该查询车辆发送的拥堵判决查询消息后,查询邻居车辆发送拥堵判决回复消息;

所述拥堵判决查询消息包括查询车辆的ID、查询车辆的地理位置坐标、时间戳、交通拥堵判决值、消息到期时间、查询车辆的速度矢量;

所述拥堵判决回复消息包括查询邻居车辆的ID、查询邻居车辆的位置坐标、时间戳、交通拥堵判决值、消息到期时间、查询邻居车辆的速度矢量;

查询车辆基于拥堵判决回复消息得到所有查询邻居车辆的ID和交通拥堵判决值,进一步得到查询邻居车辆的交通拥堵判决值为拥堵的车辆数量;

步骤6,设查询车辆的上游邻居查询车辆的交通拥堵判决值为拥堵的车辆数量占总的查询邻居车辆数量的比例为Pb,下游查询邻居车辆的交通拥堵判决值为拥堵的车辆数量占总的查询邻居车辆数量的比例为Pf

若Pb和Pf的任一个值大于阈值Pj,则查询车辆的最终拥堵判决结果为拥堵,否则为不拥堵。

进一步地,还包括:

步骤7,若Pb和Pf间的差值大于阈值Pm1,则判定查询车辆处于拥堵队列的头部;如果Pb和Pf的差值小于阈值Pm2,则判定查询车辆处于拥堵队列的尾部;否则判定查询车辆处于拥堵队列的中间位置。

进一步地,若当前车辆i与邻居车辆j的运动方向的夹角α大于阈值Th1,则丢弃该邻居车辆j的状态信息;

其中,通过式(4)得到α:

其中,表示当前车辆i的速度矢量,表示邻居车辆j的速度矢量,表示当前车辆i速度的大小,表示邻居车辆j速度的大小,表示和的矢量积。

进一步地,设查询车辆的ID为c,任一查询邻居车辆的ID为d;其中,c=1,2,…,n+1;d1,2,…,n+1;c≠d;

若查询车辆c与查询邻居车辆d的运动方向的夹角θ大于阈值Th1,则丢弃该查询邻居车辆d的信息,所述信息包括:拥堵判决查询信息,拥堵判决回复信息;

其中,通过式(5)得到θ:

其中,表示查询车辆c的速度矢量,表示查询邻居车辆d的速度矢量,表示查询车辆c速度的大小,表示查询邻居车辆d速度的大小,表示和的矢量积。

进一步地,若当前车辆收到的邻居车辆的信息的时间戳t与收到信息当前时间的差值大于阈值Th2,则丢弃该条邻居车辆的状态信息;

若查询车辆收到的查询邻居车辆的信息的时间戳t与收到信息当前时间的差值大于阈值Th2,则丢弃该条查询邻居车辆的信息,所述信息包括拥堵判决查询信息和拥堵判决回复信息。

进一步地,车辆的行驶方向指的是车辆行驶方向相对于真北方向的角度差。

进一步地,通过式(6)得到查询车辆c的速度矢量与查询车辆c到查询邻居车辆d的位置矢量间的夹角β:

其中,表示查询车辆c与查询邻居车辆d之间的位置矢量,表示查询车辆c的速度矢量,表示查询车辆c速度的大小,表示的大小,表示和的矢量积;

若β小于阈值Th(β1),判定查询邻居车辆d处于查询车辆c的下游;否则,则判定查询邻居车辆d处于查询车辆c的上游。

与现有技术相比,本发明具有以下有益的技术效果:

本发明为一种基于VANET的交通拥堵检测方法,将车辆行驶速度、车辆位置、车辆行驶方向等内容作为交通拥堵水平的影响因素,而现有技术仅从车辆行驶速度v或者车流密度ρ等一个因素进行交通拥堵的判决,因此,与现有技术相比,本发明考虑的因素更加简单有效,交通拥堵判决的准确率更高。其次,当有车辆i检测到有交通拥堵发生时,才会启动拥堵判决过程,即检测到有拥堵的车辆i通过VANET向其邻居车辆发送拥堵查询消息,邻居表中的车辆根据其拥堵判决结果通过VANET向车辆i回复拥堵验证消息,未检测到交通拥堵时,车辆之间仅通过VANET互相发送包含基本状态信息的beacon消息,因此能够有效减少网络负载。同时车辆i根据同向邻居车辆回复的拥堵判决回复消息计算得到该区域最终的交通拥堵状况,并检测交通拥堵具体所在位置和和车辆自身在交通拥堵队列中的位置。这种由车辆和邻居车辆通过VANET协作完成交通拥堵检测的机制,可以在没有道路路侧基础设施、交通管理部门的参与或者不利用数字地图的情况下仅基于车车间的VANET协作通信实现交通拥堵的检测,在显著提高了交通拥堵检测的准确性的同时,极大地减少了交通拥堵检测基础设施建设的投入和交通拥堵检测的成本。

附图说明

图1为本发明的道路交通拥堵检测流程示意图;

图2为本发明的模拟示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

实施例1

本实施例提供了一种基于VANET的道路交通拥堵检测方法,包括以下步骤:

步骤1,在一个如图2所示的在双向道路环境中,车辆在道路上运行,车辆上均部署有VANET通信、位置信息采集及数据处理功能和存储功能的车载终端设备。

道路上的车辆按固定周期T=0.2s检测并存储包含地理位置坐标、行驶速度、行驶方向、时间戳;

本实施例中,当前车辆i的地理位置坐标指的是车辆地理位置信息,表示为当前车辆i的位置矢量Pi=[Xi,Yi,Zi],分别表示车辆的经度、纬度和海拔。

将行驶在道路上的任一车辆作为当前车辆,当前车辆以周期T1=0.5s发送该当前车辆的状态信息,同时当前车辆以周期T1=0.5s接收任一邻居车辆的状态信息;

所述状态信息包括车辆ID、地理位置坐标、行驶速度、行驶方向、时间戳;

所述地理位置坐标表示车辆所在位置的经度、纬度和海拔;

车辆的行驶方向指的是车辆行驶方向相对于真北方向的角度差;

步骤2,当前车辆i在tw时间内的平均行驶速度为若小于阈值Th(v1),则将交通拥堵估计值S1赋值为拥堵(值为1),否则将S1赋值为不拥堵(值为0);

所述交通拥堵估计值S1分别通过1和0表示拥堵和不拥堵;

本实施例中,设定车辆1基于上述判定方法判定自身交通拥堵估计值S1=1,即处于交通拥堵中。

其中,通过式(1)得到平均行驶速度

式(1)中,表示在时间戳t时当前车辆i的速度;

当前车辆i与所有邻居车辆的平均相对速度为若小于阈值Th(v2),则将相对交通拥堵估计值S2赋值为拥堵,否则将S2赋值为不拥堵;

其中,通过式(2)得到平均相对速度为

式(2)中,为当前车辆i与邻居车辆j的相对速度,为车辆i自身与邻居车辆j的相对距离,

Xi,Yi,Zi为当前车辆i的地理位置坐标,Xj,Yj,Zj为邻居车辆j的地理位置坐标;

所述车辆地理位置坐标的X轴表示车辆所在位置的经度,Y轴表示车辆所在位置的纬度,Z轴表示车辆所在位置的海拔;

本实施例中,车辆1根据相对状态信息计算相对交通拥堵估计值S2,S2指的是车辆1根据计算的相对状态信息判定的相对交通拥堵估计值,分别通过1和0表示拥堵和不拥堵,具体通过车辆1自身与处于其通信范围内的所有邻居车辆2、3、4、5、6的平均相对速度计算,若平均相对速度小于预定阈值Th(v2),则将S2赋值为拥堵(值为1),否则将S2赋值为不拥堵(值为0)。在本实施例中,设定车辆1基于上述判定方法判定相对交通拥堵估计值S2=1。一般可以认为离车辆i较远的邻居车辆j的状态信息对车辆i所在区域的交通状况影响较小,反之亦然。

步骤3,通过式(3)得到S1和S2的加权平均数K:

K=k1·S1+k2·S2 (3)

其中,k1,k2,为加权系数,k1+k2=1,且k1≠k2,0≤k1≤1,0≤k2≤1;

本实施例中设置权重因子分别用k1=0.7和k2=0.3;

若K大于阈值Th(K),则将S赋值为拥堵(值为1),否则将S赋值为不拥堵(值为0);

本实施例中,若K小于预定阈值Th(K)=0.7,则判定车辆1处于交通拥堵中,为S赋值为拥堵(值为1);否则判定车辆1未处于交通拥堵中,为S赋值为不拥堵(值为0)。

所述交通拥堵判决值S的判定原理为:在一个道路区段内,如果同时有多个车辆检测到交通拥堵,那么可以认为该道路区段存在交通拥堵。

步骤4,重复步骤1~步骤3,直至得到道路上的所有车辆的交通拥堵判决值,执行步骤5;

本实施例中,若判定交通拥堵判决值S为1,即车辆1所在的路段处于交通拥堵状态时;

步骤5,任选行驶在道路上的n+1辆车辆中的一车辆作为查询车辆,其余n辆车为该查询车辆的查询邻居车辆,所述查询邻居车辆包括:上游查询邻居车辆和下游查询邻居车辆;

查询车辆发送拥堵判决查询消息,任一查询邻居车辆收到该查询车辆发送的拥堵判决查询消息后,查询邻居车辆发送拥堵判决回复消息;

所述拥堵判决查询消息包括查询车辆的ID、查询车辆的地理位置坐标、时间戳、交通拥堵判决值、消息到期时间、查询车辆的速度矢量;

所述拥堵判决回复消息包括查询邻居车辆的ID、查询邻居车辆的位置坐标、时间戳、交通拥堵判决值、消息到期时间、查询邻居车辆的速度矢量;

查询车辆基于拥堵判决回复消息得到所有查询邻居车辆的ID和交通拥堵判决值,进一步得到查询邻居车辆的交通拥堵判决值为拥堵的车辆数量;

本实施例中,选取车辆1作为查询车辆,车辆1生成并广播拥堵判决查询消息,消息包含消息ID、车辆ID、消息类型、时间戳、车辆位置、交通拥堵判决值、到期时间和速度矢量,可以通过消息类型标识该条消息是拥堵判决查询消息或拥堵判决回复消息。

车辆1在发出拥堵判决查询消息后转向睡眠,并等待Ta=1.5s时长。查询邻居车辆d(d=2、3、4、5、6)在接收到车辆1发出的拥堵判决查询消息后,需等待固定的时长Tr=1s后(Ta大于Tr),再根据最近的自身交通拥堵判决值产生拥堵判决回复消息,作为对车辆1拥堵判决查询消息的回应。拥堵判决回复消息同样包含消息ID、车辆ID、消息类型、时间戳、车辆位置、交通拥堵判决值、到期时间和速度矢量。

步骤6,设查询车辆的上游邻居查询车辆的交通拥堵判决值为拥堵的车辆数量占总的查询邻居车辆数量的比例为Pb,下游查询邻居车辆的交通拥堵判决值为拥堵的车辆数量占总的查询邻居车辆数量的比例为Pf

若Pb和Pf的任一个值大于阈值Pj,则查询车辆的最终拥堵判决结果为拥堵,否则为不拥堵。

其中,通过式(6)得到查询车辆c的速度矢量与查询车辆c到查询邻居车辆d的位置矢量间的夹角β:

其中,表示查询车辆c与查询邻居车辆d之间的位置矢量,表示查询车辆c的速度矢量,表示查询车辆c速度的大小,表示的大小,表示和的矢量积;

若β小于阈值Th(β1),判定查询邻居车辆d处于查询车辆c的下游;否则,则判定查询邻居车辆d处于查询车辆c的上游。

本实施例中,通过车辆1的速度矢量与车辆1到查询邻居车辆d(d=2、3、4、5、6)的位置矢量间的夹角β判断,如图2所示,若β小于给定的阈值Th(β1)=85度,判定查询邻居车辆d(d=2、3、4、5、6)处于车辆1的下游;否则,如果β大于给定的阈值Th(β2)=95度,则判定查询邻居车辆d处于车辆1的上游(d=2、3、4、5、6),夹角β的计算公式为:

其中,表示车辆1与查询邻居车辆d(d=2、3、4、5、6)之间的位置矢量,表示车辆1的速度矢量,表示的大小,表示的大小,表示和的矢量积。在判断邻居车辆位置的同时,车辆1分别计算其上游车辆中处于拥堵状态车辆的比例Pb和其下游车辆中处于拥堵状态车辆的比例Pf,若Pb和Pf任一个大于设定的阈值Pj=45%,则判定车辆1的所在区域的交通拥堵状况为拥堵,否则判定为不拥堵。本实施例设定Pb=67%(设定车辆2、3判定自身交通状况为拥堵,车辆4、5、6定自身交通状况为不拥堵),Pf=0%,因此认定车辆1处于交通拥堵状况中。

步骤7,若Pb和Pf间的差值大于阈值Pm1,则判定查询车辆处于拥堵队列的头部;如果Pb和Pf的差值小于阈值Pm2,则判定查询车辆处于拥堵队列的尾部;否则判定查询车辆处于拥堵队列的中间位置。

本实施例中,Pm1=0.3,Pm2=-0.3,并判断车辆1位于拥堵队列头部;

在完成交通拥堵状况的判断和车辆自身处于交通拥堵队列中的位置判断后,车辆1可以将交通拥堵检测结果向外界发送,发送过程可以基于VANET以转播的方式传播,也可以依赖于现有的道路基础设施(如移动通信网基站、WIFI热点)传播。

实施例2

本实施例在实施例1的基础上,为了加快当前车辆对于交通拥堵状态的判断速度,减少过期信息的干扰,还包括:若当前车辆i与邻居车辆j的运动方向的夹角α大于阈值Th1,则丢弃该邻居车辆j的状态信息;

其中,通过式(4)得到α:

其中,表示当前车辆i的速度矢量,表示邻居车辆j的速度矢量,表示当前车辆i速度的大小,表示邻居车辆j速度的大小,表示和的矢量积。

实施例3

本实施例在实施例1的基础上,为了加快查询车辆对于交通拥堵状态的判断速度,减少过期信息的干扰,还包括:若查询车辆c与查询邻居车辆d的运动方向的夹角θ大于阈值Th1,则丢弃该查询邻居车辆d的信息,所述信息包括:拥堵判决查询信息,拥堵判决回复信息;

其中,通过式(5)得到θ:

其中,表示查询车辆c的速度矢量,表示查询邻居车辆d的速度矢量,表示查询车辆c速度的大小,表示查询邻居车辆d速度的大小,表示和的矢量积。c=1,2,…,n+1;d1,2,…,n+1;c≠d。

实施例4

本实施例在实施例1的基础上,为了避免过期信息对车辆判断拥堵状态产生的干扰,还包括:若当前车辆收到的邻居车辆的信息的时间戳t与收到信息当前时间的差值大于阈值Th2,则丢弃该条邻居车辆的状态信息;

若查询车辆收到的查询邻居车辆的信息的时间戳t与收到信息当前时间的差值大于阈值Th2,则丢弃该条查询邻居车辆的信息,所述信息包括拥堵判决查询信息和拥堵判决回复信息。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1