基于大数据的VANET拥塞检测研究
2020-06-13李佩君侯大有赵正平肖卓磊史晓凤刘淑影
李佩君,侯大有,赵正平,肖卓磊,史晓凤,刘淑影
(阜阳师范大学 计算机与信息工程学院,安徽 阜阳 236037)
车联网(vehicular Ad hoc networks,VANETs)从 MANET(mobile Ad-hoc networks)中派生出来。二者有相同的基础和不同的特点。例如,MANET网络中节点的移动仍是随机的,而VANET网络是根据先前设计的移动模型组织的[1]。其次MANET中节点的速度相对于VANET有所降低。这会影响网络的拓扑结构,使其不断变化。因此,对变化拓扑的管理既是一个需要解决的问题,也是车载网的特点。VANET中的通信分为两类:车辆对车辆(vehicular to vehicular,V2V)车辆对路边单位(road side unit,RSU)[2]。每次车辆的重新组合,就形成一个VANET网络。其中车辆被视为路由器或范围在100~300 m的无线节点,超出范围的车辆断开网络连接[3]。
VANET中交通容量和流量是造成交通拥塞的主因。对于这些数据的利用有利于交通同步流、安全保障和解决以后的问题[3]。尤其对于大城市的超大车载网,这些数据量是巨大的,并没有被100%利用。由于这些非结构化数据的数量和复杂性都呈指数性增长,因此不能由传统的数据库管理,需要设计强大的处理工具。而Hadoop[4]是大规模分布式的数据处理平台,可实现高密度存档的分布式面向对象编程。它可把元数据处理和分析成两种形式:结构化元数据和复杂的非结构化元数据。
借助Hadoop的特点,首先解决数据的结构化问题,再分析数据,以检测道路上的交通拥塞。将道路状态生成时间函数,再通过仪表板显示出来为以后的解决方案提供依据,最终形成存储该地区所有道路准确路况的拥塞检测系统。本文利用SUMO(simulation of urban mobility)建立城市流动模型,再整合到NS-2中,利用Hadoop提取分析跟踪文件,就可检测道路上的拥塞间隔和高峰期。
1 相关工作
关于道路拥塞的问题,一些研究人员已经提出了解决办法。文献[5]提出了一种结合了V2V和V2I两种通信方式的道路拥塞检测系统。系统采用Cassandra算法改进的,使用欧姆网络和SUMO模拟器进行测试和验证,通过处理和分析存储的数据,以便识别交通堵塞并为后行车辆指示可变更的路线。文献[6]将城市地区分为两类:拥挤的和无障碍的。车辆可以根据其行程区分不同的区域,并自动转向无障碍区域。由丹尼尔等人设计的模型[7]旨在利用算法来实时高效分析给定道路上的车辆密度。文献[8]针对自动驾驶车辆提出了使用大数据挖掘技术选择安全车道的方法。其中,人为干预只涉及在车辆开始上路时的驾驶偏好。文献[9-10]结合了基于分类的信息融合模糊和D.S证据推理,提出了VANET网络中基于多层信息融合的道路拥塞检测方法。其中基于分类的信息融合模糊从D.S证据推理机制中绘制出主要特征来检测交通拥塞情况,优点在于节省带宽。谭国平等人提出一种基于车辆到车辆通信的简化合作拥塞检测机制[11-13],进而降低车辆拥塞概率。文献[14-16]提出了一种基于网络效用最大化理论的分布式拥塞控制策略,在控制信道拥塞的同时,又减小了传输时延。文献[17-18]针对基于固定监测设备的高速公路拥堵检测方法在检测时间和检测范围的不足,提出了基于浮动车数据的检测方法。
综上所述,本研究利用大数据工具处理海量数据,快速生成道路历史曲线并显示目前交通状态,以定位到最拥挤路段和高峰时期,有效避免车辆陷入拥塞之中。
2 道路交通拥塞检测方法
正如前面提到的,VANET网络生成的非结构化信息没被有效利用,有必要使用强大的工具来分析和处理,以解决包括拥塞在内的几个问题[19]。路线由起点和终点坐标标识,车辆由时标和坐标共同定位。例如某车辆t时刻在某道路上通行。环境视为变量,道路视为常量。其中,拥塞间隔和高峰时刻是判断道路是否拥塞的关键。因此,在Hadoop环境中设置车辆穿过道路的检测场景如图1(a),车辆位置随时间的变化如图1(b)。
图1 道路交通状态图。(a)道路交通示意图;(b)交通网络变化图
因此,该区域的状态可看成是道路网络的瞬时快照序列。车辆有四个基本要素:车辆标识符(V1L),维度(X),经度(Y)和时标(t)。假设道路有两个车道,一个用于出站,另一个用于返回。路线的基本要素有:路线标识符(RID),车道1(X1,Y1)和车道 2(X2,Y2)。
本文提出的方法基于大量历史数据的重组和分析,其检测可能出现拥塞的步骤如图2。首先,对环境进行初始化,包括道路的坐标、网络大小、车辆数量和时标等。其次,将空间和时间的轨迹分组,把车辆定义为该区域上时间的函数。这样根据时间检测拥塞,提取有关拥塞时间和地点的准确信息。算法1根据已知通过市区的每条路线的车辆数量推断出最拥挤的道路。算法3可识别每条路线的峰值时间间隔。算法4则给出了识别峰值时间的可能性。
图2 道路拥塞检测策略
算法1:车辆数量1:V←0.2 2:V n←0 3:f o r E a c h r o a d V ID∈V d o 4:i f V ID∈R ID t h e n 5: V n←V n+V ID 6:e n d i f 7:e n d f o r
算法2:拥塞检测1:C r←C 2:R r←0 3:f o r E a c h r o a d i∈R r d o 4:i f Δ V n i n Δ R i>T h r e s h o l d t h e n 5: C r←C r+R 1 6:e n d i f 7:e n d f o r
算法3:高峰时间间隔1:V←0 2:V n←0 3:I N T V A L S←0 4:f o r E a c h r o a d Δ V ID∈V d o 5:i f V ID i s i n R o a d X i n I N T V A L X t h e n 6: V n←V n+V ID 7:e n d i f 8:e n d f o r 9:i f n u m b e r o f v e h i c l e i n V n i n R o a d X>T h r e s h o l d t h e n 1 0: I N T V A L S←I N T V A L S+I N T V A L X 1 1:e n d i f
算法4:实时峰值时间1:V←0 2:V n←0 3:I N S A N T S ←0 4:f o r E a c h r o a d V ID∈V d o 5:i f V ID i s i n R o a d X a t I N T V A L t t h e n 6: V n←V n+V IL 7:e n d i f 8:e n d f o r 9:i f n u m b e r o f v e h i c l e s i n V n i n R o a d X>T h r e s h o l d t h e n 1 0: I N S T A N T S←I N S T A N T S+I N S T A N T X 1 1:e n d i f
其中:V是车辆总数:Vn是道路n上的车辆数量;Cr是拥塞道路的集合;RΔ是所有道路的集合。给定路线的门限Q通过等式Q=K*U计算,K是路线容量,U是流动的速度。这里假设路线的容量是相同的,速度定义为场景参数。
3 仿真与结果
为了评估和验证本文提出的方法,采用SUMO微观交通模拟器来生成一个城市的移动模型[20]。然后,用NS-2模拟器整个该模型,最后,分析记录所有事件的跟踪文件。每辆车定义自己达到目的地的路线。还要定义很多和网络接入点、车辆入口点、交叉口、交通信号灯和环岛等,这些因素为提出的方法提供了可信度。SUMO生成的道路交通的移动模型如图3所示。
将生成的模型与NS-2模拟器集成,以获取包含该场景的记录和实践的跟踪文件。再使用Hadoop工具处理这些文件。本文处理三个具有相同移动模型的场景,分别是40辆车,80辆车和160辆车。图4显示了模拟期内每个场景的道路状态。由此可以很容易地区分出经历了更多交通量的道路,但无法确定这些道路何时会有更多的交通量。所以这些统计数据仍然很笼统,需要更多关于给定路线的细节。仿真的主要参数如表1。
图3 道路拓扑图
表1 仿真参数
图4 三种场景下道路状态
图5把道路R23在整个模拟过程中的活动看作关于时间的函数。曲线显示了道路上车辆的实时数量。曲线上的拥塞间隔有利于确定准确地拥塞时间。为了得知每条道路的状态,可以生成每条道路的历史曲线。再通过创建仪表板来分析当前状态,为将来可能的道路拥塞提供解决方案。本文提出的方法是基于大数据工具提供的数据特征,以处理车载网络在通信期间产生的海量数据。通过分析这种类型的网络可看出来这些工具的功能强大。与大城市的真实环境相比,该仿真只是一个小样本。总而言之,城市会产生大量的原数据,传统的处理方法已凸显出局限性。
图5 路线R23的交通细节
4 小结
如今,大数据工具的应用越来越广泛,其作用也日益凸显。传统工具是无法管理和处理VANET的案例中大规模原数据。本研究认为车辆产生的实时数据对于解决如交通拥塞一类的问题非常有用,提出了一种基于大数据工具处理车辆数据的方法。通过分析三个场景,采用先进的SUMO模拟器和Hadoop软件监测该区域的车辆活动情况以及每条道路的交通细节,有助于检测每条道路在模拟期内的流通高峰期,帮助驾驶员及时选择非拥堵路段,缓解交通压力。