基于V2X与四维需求模型的无人驾驶网络资源分配及仿真研究
技术说明:本文围绕V2X无人驾驶网络资源分配进行通信仿真复盘,重点整理V2V、V2I、V2P与V2N四维需求模型、802.11p通信参数、Veins联合仿真框架、OMNeT++与SUMO城市道路和高速公路对照实验及交通效率评估等技术要点。内容用于车联网通信、资源分配建模和仿真实验方法交流,不构成驾驶或交通管理建议。
摘 要
当下的无人驾驶技术基于V2X实现,V2X(Vehicle-to-Everything)即车载无线通讯技术,是一种物联网技术,其中V指的是车辆,X指的是Everthing,即所有能连接的设备,如道路、RSU(路侧单元)、穿戴智能设备的人、可以进行通讯的车、一些网路器材等。
V2X技术通常分为以下四个方面:V2V(Vehicle)即车与车之间的通信,指的是车辆之间通过无线信号交换信息,以互相分享位置、速度、行驶方向等数据,从而提高交通安全性;V2I(Infrastructure)即车与基础设施之间的通信,指的是车辆与交通基础设施(如交通灯、路标、摄像头、道路传感器等)之间的无线通信,车辆通过与交通基础设施的互动获得更准确的交通信息,从而做出更智能的决策;V2P(Pedestrian)即车与行人之间的通信,车辆通过行人的智能手机、可穿戴设备或其他通讯设备与行人进行信息交换,从而避免交通事故的发生;V2N(Network)即车辆与云端或其他远程服务器之间的通信,车辆通过与网络的连接可以接收实时更新的道路信息、天气信息、交通管理策略等,进行更智能的路径规划和决策。
本文将基于V2X的四个方面建立不同场景下的四维需求模型,从而优化无人驾驶基于V2X的网络资源分配方式,并利用电脑软件OMNeT++和SUMO模拟Veins框架下的道路交通。借由实验数据对分析优化后的V2X技术进行对比,对于运输效率的提升,相对于V2X默认的技术。
关键词:基于V2X的无人驾驶的网络资源分配;不同场景下建立四维需求模型;V2X仿真实验;提升交通效率
ABSTRACT
The current driverless technology is based on V2X, V2X (Vehicle-to-everything) is the wireless communication technology in the Vehicle, which is an Internet of Things technology, where V refers to the vehicle, X refers to Everthing, that is, all the devices that can be connected. Such as roads, Rsus (roadside units), people wearing smart devices, cars that can communicate, some network devices, etc.
V2X technology is usually divided into the following four aspects: V2V (Vehicle) is the communication between vehicles, referring to the exchange of information between vehicles through wireless signals to share location, speed, driving direction and other data, so as to improve traffic safety; V2I (Infrastructure) refers to the wireless communication between vehicles and traffic infrastructure (such as traffic lights, road signs, cameras, road sensors, etc.). Vehicles can obtain more accurate traffic information through interaction with the traffic infrastructure, so as to make more intelligent decisions. V2P (Pedestrian) is the communication between vehicles and pedestrians. Vehicles exchange information with pedestrians through pedestrians' smart phones, wearable devices or other communication devices, thereby avoiding traffic accidents. V2N (Network) refers to the communication between vehicles and the cloud or other remote servers. Through the connection with the network, vehicles can receive real-time updated road information, weather information, traffic management strategies, etc., for more intelligent path planning and decision-making.
This paper will establish a four-dimensional demand model in different scenarios based on four aspects of V2X, so as to optimize the V2X based network resource allocation mode of unmanned driving, and use computer software OMNeT++ and SUMO to simulate road traffic under the framework of Veins. The experimental data is used to analyze and compare the optimized V2X technology to improve the transportation efficiency compared to the default V2X technology.
Keywords: Network resource allocation for unmanned driving based on V2X; Establishment of Four dimensional demand model in different scenarios; V2X simulation experiments; Improve traffic efficiency
第1章 绪论
1.1 选题背景
我国国家统计局数据显示,全国仅2018年一年的车祸总数就达到了惊人的24000多起,而因车祸导致的死亡人数更是高达60000人,也就是说平均每8分钟就有1人因车祸死亡[1]。这些令人瞠目结舌的数据,无一不在提醒着大家,千万不能忽视交通安全问题。21世纪以来,汽车工业走过了百年的历程,如今正经历着脱胎换骨般的变革,我们用联网化、自动化、信息共享、电动化四个词来概括。V2X的概念由此推出。V2X(VehicletoEverything)技术又称车载无线通信技术,这一技术的本质是一种利用网络实现V与X互联互通的物联网技术,其中V代表车辆(Vehicle),X代表车辆、道路、人、设备等所有能够连接的设备[2]。
来自FortuneBusinessInsights的《自动驾驶汽车市场规模》报告显示,2022年全球自动驾驶汽车市场规模为15003亿美元;2023年,我国智能驾驶市场规模(包括硬件、软件、服务等全产业链)约为1200亿~1500亿元,在全球市场占比约为30%~35%。并且到2025年市场规模将突破3000亿元,年复合增长率在30%~40%左右。随着L3/L4级自动驾驶的商业化落地,市场规模有望在2030年突破年复合增长率约30%的1.2万亿元人民币大关。
1.2 选题意义
车联网通信是实现无人驾驶的关键技术之一,能够提供安全高效的智能交通服务的是使用V2X(Vehicle-to-Everything)通信技术。V2X通讯技术包含两种重要的模式:V2V(Vehicle-to-Vehicle)通信和V2I(Vehicle-to-Infrastructure)通信。V2V通信关注保障安全信息传输的低延迟业务,V2I通信关注高数据速率业务。需要大量的计算资源和通信资源,才能保证无线车载通信网络的低时延和高容量要求。但可供车载网络使用的无线网络资源十分有限,对各种通讯装置的业务需求日益增长,难以满足需要。在这方面,要满足V2X通信高通过量、低时延的要求,就需要制定有效的无线资源分配策略。而高效的网络资源分配策略可减少因通信延迟导致的交通事故,提升无人驾驶系统的安全性与可靠性,可将紧急任务的响应时间缩短,事故率降低,这也正是天津联通的5G+V2X试点项目可以实现L4级无人驾驶的安全运行的原因。
当前严酷的运输环境让V2X的研究变得更加具有现实意义。近年来,汽车保有量节节攀升,公路总里程在全国范围内出现了史无前例的增幅。根据《城市道路智能交通中V2X关键技术的应用研究》,2017年我国公路通车总里程比1984年底增长5.2倍;根据公安部的统计数据,截止到2022年,中国有4.17亿辆机动车。日益增多的交通流量已经影响到了道路安全,国内外城市发展的重要问题就是交通拥堵和事故频发。在《V2X车联网及其关键技术》一书中指出,2011年中国因交通事故导致6.2万人死亡的道路交通事故连续十年居全球首位。2014年美国交通拥堵每年经济损失达1600亿美元。《全国统计年鉴》载:2020年车祸高达244674起67伤亡同样巨大。这些数据都证明,以V2X为基础的无人驾驶技术,为我们的交通安全保驾护航,如何减少交通拥堵,减少各类交通事故,已经成为人们迫切需要关注的问题。
综上所述,在现如今无人驾驶风行的大浪潮之下,研究如何对无人驾驶的网络资源进行高效且合理的分配,不仅对单个车辆的行驶安全性具有相当的益处,同时也对整个交通效率及交通安全的提升具有很大作用。
1.3 国内外发展概况
自2023年起,为支持产业发展和应用落地提供保障,各主要国家和地区加速凝聚共识,在自动驾驶相关政策法规体系上创新突破。中国加快构建“系统联动”的自动驾驶政策法规体系,美国为完善自动驾驶立法框架加速凝聚共识,英国出台自动驾驶法案,韩国加快构建促进自动驾驶发展的产业环境,对自动驾驶授权体系和责任主体划分进一步明确。自动驾驶加速构建规模化应用和商业模式突破的产业格局随着人工智能、大模型、信息通信等技术的快速演进[3]。目前,自动驾驶行业正在全球范围内迅猛发展。自动驾驶领军企业Waymo、Baidu、小马智行、新石器、梅赛德斯-奔驰等加速深挖场景需求,技术应用和保障能力迭代升级,将高度自动驾驶推进产业化快速落地通道。截至目前,Robotaxi、低速无人车、自动驾驶卡车等应用已成为人们日常生产生活的重要载体,不仅为在垂直细分领域构建数字技术研发新生态、深化高品质应用提供了新动能,更为推动新型工业化、发展新型生产力提供了坚实融合的重要保障。
1.3.1 国外发展概况
美国政府在2015年启动了ITS的五年规划(2015-2019)。该计划以“实现网联汽车应用”和“加速自动驾驶”为技术目标,以“改变社会前进方式”为主题。《五年计划》明确了包括:加速部署、网联汽车、自动驾驶、新兴能力、企业数据(ENterprise data)。TOP(加速部署)代表所有项目的终极目标;技术发展的三条路径是:网联汽车、自动驾驶和新兴能力;ITS发展的基石是互操作和企业数据。为了促进汽车和汽车通信技术的发展以及美国后续的立法决策,美国交通部主导了基于汽车和汽车道路通信技术的“安全试点示范部署”项目(SafetyPilotModelDeployment),该项目位于密歇根州安娜堡东北部。美国国家公路交通安全管理局(NHTSA)在“安全试验示范部署”项目测试验证的基础上,于2014年8月公布了车辆通信预立法草案,并于2016年启动了NPRM流程,即:费德勒·莫托夫·维希勒·萨费特耶·斯塔德(FMVSS),第150号,用于强制轻型汽车V2V通信。
而且美国这几年也一直坚持联邦政府+地方政府两级管理架构的模式:促进Autopilot健康有序的发展。一方面,联邦政府不断深化政产学研用各方对自动驾驶演进规律的认识,通过不断出台自动驾驶技术产业政策,加强产业合作标准开发,加强监管能力建设,组织利益相关方合作交流论坛等措施。另一方面,在现有的车辆监管体系下,支持地方政府大胆开展先行先试,在政策、法规、监管等方面加速突破,对自动驾驶行业的规模化应用起到了极大的推动作用,欧盟也十分重视系统化建设泛欧盟的自动驾驶政策法规体系,先后发布了《自动出行之路》(Auto-traveling欧盟未来出行战略《欧盟自动驾驶战略与政策观察研究报告(2024年)AutopilotAutopilot许可豁免流程指南》《全自动车辆自动驾驶系统(ADS)型式认证的统一程序和技术规范(REG)》。(EU)2022/1426)》等一系列政策法规,为实现欧盟内部应对自动驾驶发展中的技术市场统一性问题提供有力支撑。此外,欧盟要求从2024年7月起,全球首个汽车网络安全和软件升级强制法规——所有智能网联汽车必须符合UNR155和UNR156。
1.3.2 国内发展概况
中国V2X技术的起步并不算晚,因为很早就认识到了V2X技术的优势,并开展了相应的研究工作,这才有了今天中国在5G和C-V2X技术领域的全球领先地位[4]。
2009年,我国正式迈入车联网时代。2010年10月,国家863计划首次将智能车路协同等核心技术列入车联网。2015年,中国政府在拥有8套V2X路测系统的上海市建设了国家智能网联试验示范区封闭试验区[5]。《中国制造2025》将智能网联汽车列入十大重点发展领域,中国对智能网联汽车的发展给予了高度重视。同时,国家对智能网联汽车、V2X技术的发展也出台了一系列扶持政策。为中国自动驾驶产业发展注入强劲动力的《2024年政府工作报告》提出,“巩固和扩大智能网联新能源汽车等行业领先优势”。促进产业化落地的监管体系随着我国自动驾驶政策法规的逐步完善,按下“加速键”的我国自动驾驶应用进程不断完善。截至目前,全国已有50多个省市出台了自动驾驶路试示范应用实施细则,累计开通了32000多公里的试验示范道路,累计发放了7700多张试验示范牌照,累计试验里程突破了1.2亿公里[6]。
1.4 研究范围及论文结构
1.4.1 研究范围
本文的研究范围主要是不同场景下基于V2X的无人驾驶的网络资源分配问题展开,重点探讨在不同交通环境中如何基于需求动态调整网络资源分配,以提升交通效率。
在接下来的实验中,我将建立不同场景下的四维需求模型,从而优化无人驾驶基于V2X的网络资源分配比例,使用计算机软件OMNeT++和SUMO进行Veins框架下的V2X模拟道路交通。将分析优化后的V2X技术与默认的V2X技术相比,在大量模拟实验中获得有价值的实验数据,以提高交通运输效率。
1.4.2 论文结构
以文献研究法和实验法为研究方法。第一章为本设计的实施提供相关的理论支持,通过文献阅读提出国内外研究的背景、意义和现状。
第二章主要介绍展示V2X仿真环境部署过程的实验所需软件。该实验需要进行多个软件的联合模拟,其中OMNeT++主要负责构建网络模拟器,在此基础上通过Veins实现车辆与车辆之间,车辆与道路信息节点之间的通信过程,而SUMO则承担了整个V2X模拟系统对道路上车辆的模拟计算,赋予车辆独一无二的编号、出发地、目的地等信息,通过Veins实现车辆与车辆让车辆行驶在地图上。用一句话概括,就是开源软件SUMO,具体包括模拟的路网环境、车辆运营等信息,实现道路交通环境的仿真;OMNeT++实现通信网络仿真与模拟;VEINS基于SUMO和OMNET++构建车联网通信模拟框架。后文的实验会通过以上三款软件所搭建的联合仿真实验平台,来进行V2X的仿真实验。
第三、四章为不同场景下的算法模型搭建与实验过程及其数据分析。首先我会分析不同场景的特点与挑战,在此基础上进行该场景下的多位需求模型的在联合仿真实验平台上进行V2X的仿真实验,并通过实验数据来判断本文所使用的网络资源分配策略对交通效率的作用。本章将对比实验所进行的具体过程进行了首次展示,并将实验所获得的数据制作成图表,将实验结果对比示意图直观地展现在读者面前。根据对比实验的结果分析其数据,从而判断在不同的场景下,本文所使用的网络资源在运输效率中的分配作用是怎样的?
第2章 V2X仿真实验相关介绍
2.1 OMNeT++
OMNeT++主要用于构建网络仿真器的可扩展、模块化、基于组件的C++仿真库和框架。这里的“网”的含义更为广泛,有有线、无线通信网,也有贴片网,更有排队网,等等。特定领域的功能,如对传感器网络、无线局域网络、Internet协议、性能建模、光子网络等的支持,由作为独立项目开发的模型框架(ModelFramework)提供[7]。OMNeT++提供了基于Eclipse的集成开发环境(OMNeT++IDE)、图形化运行时环境以及其他许多工具。也有实时模拟,网络模拟,数据库整合,Systemc整合等扩展功能。OMNeT++为车型提供了组件架构,组件(module)以C++编程,再以进阶语言(NED)组装成更大的组件与模型,车型的可重复使用也就水到渠成,其设计目标就是为了支持复杂网络系统的建模和仿真,并提供准确、高效的结果[8]。
用户可以利用OMNeT++IDE方便地对仿真模型进行编辑、调试和管理。
本次实验使用的版本是OMNeTpp-5.6.2。OMNeT++下载后需要进行编译,编译完成后双击mingwenv.cmd即可按照图2-1OMNeT++的打开来打开软件,图2-2即为OMNeT++的界面。

图2-1 OMNeT++的打开

图2-2 OMNeT++的界面
2.2 SUMO
SUMO(Simulation of Urban Mobility)是一个开源的交通仿真软件,主要用于模拟和分析城市交通系统的动态行为,它被广泛应用于交通工程、城市规划、自动驾驶技术以及交通管理等领域。SUMO的核心功能包括交通流的仿真、交通网络建模、交通信号控制、多种交通工具的仿真、复杂场景模拟等。SUMO能够模拟交通流在道路网络中的动态变化,包括不同的交通工具(如汽车、公交车、自行车、行人等)在不同环境下的行为;SUMO支持模拟交通信号的控制,包括固定信号、适应性信号控制等,可以帮助研究和优化信号控制方案;SUMO支持多种交通工具的仿真,包括私家车、公共交通、货运车辆、骑行者和行人等,能够进行多种交通模式的联合仿真[9]。
SUMO支持从多种格式导入道路网络数据,这意味着我们除了通过其他的一些交通模拟器来加载道路网络数据之外,还可以自己直接向SUMO导入osm格式的文件,即OpenStreetmap格式文件,这是一种非常常见的地图格式,可以在OpenStreetMap网站上非常轻松的获得,所以在后文的仿真实验中,我用的就是osm格式的文件。
SUMO提供了丰富的仿真结果输出,可以生成详细的车辆数量、交通流量、车辆速度等数据,后文进行的仿真实验数据的收集与分析就是基于SUMO来实现的,与此同时SUMO可以将这些信息进行可视化,我们可以直接看到这些数据的实时变化,并随时将这些信息进行导出。
在SUMO文件夹内,找到bin文件夹,进入后找到sumo-gui.exe即可打开如图2-3所示的SUMO界面。

图2-3 SUMO界面
如图2-4与2-5所示,SUMO的运行示例上可以有实景路图和经过模拟的车辆。

图2-4 SUMO上的真实道路地图

图2-5 SUMO道路上的真实车辆
2.3 Veins
本实验使用Veins-Veins-5.2。Veins(Vehicle in Network Simulation)是一个开源框架,时专门为了车联网(VANETs)和智能交通系统(ITS)的仿真所设计的,它整合了交通仿真还有网络仿真这两部分,可以为我们的实验模拟出非常真实的车辆通信环境。Veins具有双仿真引擎,它结合了SUMO(交通仿真,负责车辆移动模型和路网)和OMNeT++(网络仿真,处理通信协议如IEEE 802.11p/C-V2X),通过TraCI接口实现两者实时交互,所以Veins可以实现动态交互,即车辆位置、速度等信息从SUMO传输到OMNeT++,网络模块据此计算通信效果(如信号衰减、干扰),并可能反馈行为调整至SUMO,形成闭环仿真。Veins具有多种应用场景,如车联网(VANETs):紧急制动预警、协同自适应巡航控制;智能交通系统(ITS):交通信号优化、自动驾驶算法测试;通信协议研究:评估IEEE 802.11p、LTE-V2X、5G NR-V2X的性能;城市建模:分析建筑物对无线信号的影响。Veins也支撑各种当下常见的通信技术和协议的建模,如无线局域网(Wi-Fi)、车载通信(DSRC)、蜂窝网络等。因此Veins在自动驾驶安全研究、交通优化、V2X技术测试和网络安全分析等领域的研发中得到了广泛的应用[10]。
图2-6为Veins在基于OMNeT++和SUMO提供的模拟环境上模拟通信的过程。

图2-6 Veins在基于OMNeT++和SUMO提供的模拟环境上模拟通信的过程
第3章 城市道路场景下的网络资源分配
3.1 引言
作为无人驾驶落地的重要场景,城市道路具有车辆密度大、情况复杂以及使用通信种类多等特点。车与周围的环境需要随时通讯,与其他车、周边设施、行人保持良好的联系,才能更好地实现准确感知、快速决策和安全控制。而每辆车在城市道路上的需求是不断变化的,同时道路本身也存在着有限的通讯资源;所以在这样一种动态的交通环境下,如何对有限的网络资源进行分配就显得尤为重要。本章将会对城市道路的资源分配问题展开研究,阐述其特点和发展难点,并提出一种基于四维需求模型的资源分配方法,最后借助于仿真平台的仿真实验来验证其可行性。
3.2 城市道路特点与挑战
(1)高密度车辆与复杂路况
一是城市道路交通密度大,城市道路在早晚高峰期非常拥堵;二是城市道路上会有许多交叉路口、红绿灯和人行横道等,所以对汽车行驶路径及通信需求就会更多样化。因为城市道路交通拥堵,在街道上行驶的汽车之间会不断交换位置、速度和方向信息以避免与另一辆车发生碰撞或获得更好的路线。路面情况和周围环境的不确定性决定了对通信系统实时性要求很高。
(2)多样化的通信需求
面对城市道路中不同的车辆/设备,它们对于自身通信方面的要求也是不一样的。例如:比较高的优先级(自动驾驶控制、避撞)对通信要求十分苛刻,不允许有丝毫的瞬间延迟或者丢包;比较低的优先级(娱乐信息、非强制发送的数据)则不那么严格。这就要求有一个匹配的不同需求资源申请的资源配置策略。
(3)信号干扰与覆盖不足
由于城市中的高楼大厦、各种各样的建筑和桥梁,无线通信信号会被阻挡,在市中心繁忙的闹市中会出现很多处信号衰落严重的情况。但是又由于某些城市的某些主干道中建有大型的地下停车场或者高速公路隧道,那么在这种场景下是否还能正常进行通话便成为了摆在我们面前的一大难题。
(4)动态需求变化
城市道路场景下的通信需求是不断变化的,不同时段的交通量不一样(早高峰、平峰、晚高峰),突然的事故(交通事故、道路施工)会导致不同时刻的通信需求突变。这就要求资源分配策略要随着变化的需求实时调整来动态分配资源。
3.3 城市道路网络资源分配
针对城市道路场景下存在高密度车辆、不断变化的需求、不同的通信需求等问题,本文提出了一种基于四维需求模型的资源分配方法,可以在基于V2X的四个维度的基础上更好地考虑优先级、延迟、数量和可靠性,并且可以让不同的任务获得合理的网络资源。
3.3.1 城市道路四维需求模型
考虑到城市道路场景下V2X通信的四类需求(V2V、V2I、V2P、V2N),由于其对系统安全和功能的影响存在较大差异,因此优先级的需求有着很大的区别。根据任务的紧迫程度、实时性要求以及对行车安全的影响可以划分如下四个等级:
(1) V2V(车辆与车辆通信)——最高优先级
需求特点:
实时性要求:毫秒级低延迟(<100ms),例如碰撞避免、协同驾驶等。
可靠性要求:数据丢失会带来直接的安全风险,需要达到近乎 100% 的传输成功率。
关键性:直接影响车辆间安全交互,是无人驾驶系统安全运行的核心保障。
排序依据:
V2V通信故障将影响车与车的实时避撞和协同驾驶,是城市道路场景中最紧急、最至关重要的需求。在堵口或者车辆稠密的交叉路口,若V2V通信发生延误或中断,则会导致连环撞车事故的发生,因此需要为其预留最高的资源。
(2)V2I(车辆与基础设施通信)——次高优先级
需求特点:
实时性要求:中等程度延迟(<200ms),如交通信号同步、路况信息等
可靠性要求:关键基础设施信息需要稳定传输,如红灯预警、道路障碍物提示等。
关键性:影响全局路径规划和交通效率,但允许一定容错空间。
排序依据:
V2I通信给车辆提供道路全局信息(包括交通灯信号、道路是否施工等),用于选择最佳路径和避开局部路段拥堵,同样重要于V2V,若不能及时接收到红绿灯信号及道路封闭信息就可能发生违章及绕行延时情况,实时性要求略低于V2V,故而居于次位。
(3)V2P(车辆与行人通信)——中等优先级
需求特点:
实时性要求:低延迟(<500ms),但允许短暂延迟。
可靠性要求:必须要保证行人位置信息的持续发送,允许偶发的信息丢失。
关键性:保护行人,对车辆自身的行驶决策没有任何直接影响。
排序依据:
V2P通信主要用于人位置共享(如手机或穿戴设备),避免车与人的碰撞,例如在无信号灯的人行横道可以告诉车辆减慢速度,数据量不是很大,并且行人动作可以用其他传感器(如摄像头)辅助感知获得,故而排在V2V、V2I后面。
(4)V2N(车辆与网络通信)——最低优先级
需求特点:
实时性要求:高延迟容忍度(>1s),如地图更新、天气信息获取等。
可靠性要求:允许一定数据丢失,可通过重传机制弥补。
关键性:支持长期路径规划,但不作用于实时驾驶决策。
排序依据:
V2N 通信主要用于实况地图、交通流量等云端数据通讯,与车辆行驶直接关联较少,地图过几秒更新抵达也不安全,主要影响是不能及时重新规划最短路径,所以所需资源最少,只有在其他任务资源都比较富余时才会被分配。
城市道路场景优先级排序总结见表3-1。城市道路场景优先级排序
表3-1 城市道路场景优先级排序
| 通信模式 | 优先级 | 核心依据 |
|---|---|---|
| V2V | 最高 | 直接保障车辆间安全,实时性要求最高 |
| V2I | 次高 | 支持全局路径优化,可靠性要求较高 |
| V2P | 中等 | 保障行人安全,依赖多传感器冗余 |
| V2N | 最低 | 非实时任务,允许延迟和容错 |
3.3.2 基于四维模型分配资源
核心思想:基于V2X四维优先级,可以对V2X的四维需求进行大致优先级排序(例如此时V2V>V2I>V2P>V2N)。此时通过将属于四维需求模型中的某一项任务的四项数据——数据量、延迟、可靠性、优先级表示为四维通信需求向量,就可以按照评分公式进行处理,此时就可得到该任务的评分。通过比较属于不同维度的任务之间的评分,就可以反推出详细的四维需求模型中四个维度的优先级大小的精确设置。
实现步骤:
(1)需求量化:
每辆车不同方面的通信需求表示为四维向量:
(3-1)
公式(3-1)即为四维通信需求向量。
其中:
Demand:一辆车的不同方面通信需求的四维需求向量
Dpriority:任务优先级(由此场景的四维需求模型所决定,例如可设置V2V碰撞避免=1.0,V2I信号同步=0.8,V2P行人安全=0.6,V2N地图更新=0.3,满足V2V>V2I>V2P>V2N,同时数值越大优先级越高)
Dlatency:最大允许延迟(单位:s)
Dreliability:传输成功率(0.0-1.0)
Dvolume:单位时间需传输的数据量(统一化为0.0-1.0)
(2)评分公式:
通过加权评分机制计算资源需求与可用资源的匹配度:
(3-2)
公式(3-2)即为评分与各向量之间的计算。
权重系数满足ω1+ω2+ω3+ω4=1,可根据场景动态调整(如车流高峰时段提高ω1和ω2,这是因为此时最重要的事情是V2V,提高ω1和ω2就可以提高V2V在最后评分公式中的占比),以满足不同场景的需要。
根据下文的简单小计算可发现,属于四维需求模型中的某一任务的四维通信需求向量,其实基本都取决于是四维需求模型中的哪一个。所以此处的权重系数不用在意具体数值,只要基本合适于具体的场景就可以,这只是为了防止四维需求模型中优先级过高的一方一直抢占资源所需要的一些保险措施。
(3)动态资源匹配:
系统实时计算所有任务的评分,按得分降序分配资源。
示例:
场景:城市十字路口高峰时段
权重设置:ω1=0.4,ω2=0.3,ω3=0.2,ω4=0.1(基本符合当下场景即可)
Dpriority(任务优先级)设置:V2V=1.0,V2I=0.8,V2P=0.6,V2N=0.3
V2V碰撞避免:
Dpriotiy=1.0,Dlatency=0.05s,Dreliability=0.999,Dvolume=0.8 Score=6.68
V2N地图更新:
Dpriotiy=0.3,Dlatency=1.0s,Dreliability=0.9,Dvolume=0.5 Score=0.65
结果:V2V得分(6.68)远高于V2N(0.65),优先获得资源分配。
此时我们就得到V2V=1.0,V2I=0.8,V2P=0.6,V2N=0.3这一套设置是大致满足城市道路场景下的网络资源分配的,那么接下来我们就要通过实验来对其进行验证。
3.4 仿真实验
3.4.1 实验思路
通过在城市道路场景下设立一组对照实验来探究该算法在提升交通效率方面起到的作用。但在设置对照组之前,我们必须对Veins进行一些必要的详细介绍,图3-1是Veins中对于我们调整V2X相关设置以完成实验所需要了解的信息。

图3-1 Veins相关参数
11p specific parameters用于设置无线通信属性,与802.11p协议有关。802.11p是用于V2X通讯的无线通信标准,其特点是高传输速率、低延迟,以下参数包括调制方式、数据速率和信道宽带等。
这里的参数调整就为我们实现模拟网络资源分配实现了便利,通过调整这里的参数以及config.xml文件,我们可以设计出正常的默认的V2X通信,以及通过基于我们的需求模型调整之后,在进行不同的通信任务时,会具有不同的速率、带宽等参数的优化V2X通信。例如前文四维需求模型中的参数为V2V=1.0,V2I=0.8,V2P=0.6,V2N=0.3,此时可以按照不同维的占比不同来获得不同的速度来进行设置,具体设置方法不再赘述。
则设置对照实验组如下:
默认组:实验车辆的V2X参数按照Veins的默认设置
优化组:实验车辆的V2X参数按照基于四维需求模型设置
该实验的设计思路是,在探究对照组处于相同环境时,通过构建仿真系统,对整个模拟环境中可承载的实时车辆数量的变化和所有车辆的实时速度平均值的变化进行对比分析,从而探索这种优化V2X算法基于四维需求模型,在网络资源得到良好分配以实现对网络资源进行的优化后,对整个运输体系的效率会不会有一个很好的促进作用。
3.4.2 实验过程
首先是对仿真区域的选择,仿真区域必须在城市道路场景下,同时仿真区域的选择不能太大也不能太小,否则可能会有实验难以进行或者实验数据不全面的问题。这个实验选取了周围的浙师大一带作为模拟区域的雏形。OpenStreetMap是一个开放的地图网页。经过一些考虑之后,我决定选择自己熟悉的区域,也就是我们自己的学校周边区域,于是我在OpenStreetMap地图网页上找到浙师大附近,然后选择合适的区域大小,然后选择导出,根据所需地图的大小不同,我们可能要稍作等待,之后把保存文件。
Open Street Map选择浙江师范大学附近如图3-2所示。

图3-2 Open Street Map选择浙江师范大学附近
保存的文件为“.OSM”格式,需要转换成SUMO能接受的类型文件。在地图所在的文件夹进入CMD终端,输入“NetConvert --OSM-Files jinhua.OSM -O jinhua.NET.XML”指令,出现“SUCCESS”后,说明已成功生成“.NET.XML”文件,这是SUMO能够运行的道路网络文件。它是包含道路节点信息的全仿真基础。
如图3-3为将osm文件转换为net.xml文件。

图3-3 将osm文件转换为net.xml文件
创建道路节点文件也就是后缀为net.xml的文件之后,我们就需要根据net.xml文件来得到路线文件,这个路线文件可以对道路上的车辆的行驶策略进行控制。那么如何生成路线文件呢?这一点就体现出了SUMO这款软件的优点了,在SUMO的文件夹下,又一个tools文件夹,这里面就有SUMO帮助我们生成路线文件的工具,即“randomTrips.py”,既然是后缀为.py的Python文件,我们就需要使用Python来进行操作,进入cmd窗口,输入代码“python D:\design\sumo\tools\randomTrips.py -n jinhua.net.xml -r jinhua.rou.xml -e 100 -p 1”,此时就在基于jinhua.net.xml也就是道路节点文件的基础上,生成了我们想要的路线文件即rou.xml文件,而关于这后面的参数,我们这里暂且不做探究。作为转换工具的“PolyConvert”可以使用后缀为.net.xml的文件,将.osm文件生成对应后缀为.poly.xml的地形文件,转换代码为“polyconvert --net-file jinhua.net.xml --osm-files jinhua.osm -o jinhua.poly.xml”。上述相关文件全部准备妥当后,在同一文件夹中进行拷贝,并对模拟时间、交通流量等信息进行相应设置。最后,使用SUMO-GUI编写相关CFG文件打开,对应区域的交通模拟就可以开始执行了。“Success”在成功生成每一个关键文件后都会得到反馈。
SUMO的各种相关设置都完成了之后,我们接下来要做的就是在这三款软件之间进行一个互相的链接,这样我们就可以搭建成功一个仿真平台,就可以进行我们的仿真实验了。为了搭建,我们不能直接使用OMNeT++提供的gui界面,而是要在OMNeT++的目录下找到mingwenv.cmd并打开,从而进入如图3-4所示的OMNET++自带命令行终端,在按照如图3-4所示的各种代码进行输入之后(第一行代码代表打开OMNeT++的可视化界面,第二行代码代表进入Veins中后续我们需要进行实验时所要用到的文件夹,第三行代码代表使用SUMO来连接上我们在Veins中所需要使用的sumo.cfg文件,简单说就是此时进行了Veins和SUMO的连接,第四行代码的作用是当我们进行实验时,我们会自动打开SUMO的gui界面,方便我们后续在SUMO中进行各种数据的收集)出现“Listening on port 9999”的提示之后,就说明三者联合的仿真平台我们已经搭建起来了,此时进行联合实验的各种准备工作就可以说是已经做好了。这之后在我们进行仿真实验时,在自动打开的SUMO的gui中,就可以得到对后续分析有重要意义的道路和车辆的相关数据(这个实验中最重要的是载车数和车辆车速数据)。最后用VEINS模拟V2X通信。联合模拟操作如图3-5所示,图中主界面为Omnet++中Veins的操作界面,右侧界面为SUMO上Veins模拟的映射,左侧为SUMO统计的实时操作数据。

图3-4 Veins连通SUMO和MNeT++的代码

图3-5 联合仿真运行
通过是否调整Veins对V2X的设置参数来进行这组对照试验,并收集SUMO的统计数据,可得到我们所需要的系统承载的车辆数的实时数据和所有车辆实时速度的平均数据。SUMO所提供的实时观察折线图如图3-6所示。

图3-6 SUMO所提供的实时数据
导出数据文件我们可以得到这次对照试验所需要到四份csv文件,即一个对照组有两次实验,一次实验会得到两份数据。这就是我们本次实验所需要的关键数据。
3.4.3 数据分析
使用python编写代码,对所得的四份csv文件进行数据处理(具体python代码如图3-7所示),我们可得到图3-8和图3-9所示的对照组实验数据。

图3-7 用于处理数据的Python代码

图3-8 车辆平均速度对比

图3-9 运载车辆数对比
观察图3-8与3-9可以发现,两个实验组的前85s左右有基本完全一致的数据曲线,这看起来非常奇怪,这就必须先介绍一下此仿真平台对于每次仿真实验中,车辆的生成和运动路径的设置了。
在一次仿真实验中,汽车的运动路径是由我们前文所提到的randomTrips.py进行仿真车辆流的生成,最后被包含于生成的routes.rou.xml文件,这个文件可以对仿真实验中生成车辆的起始位置和终点位置进行规划,我们还可以设置何时开始生成车辆、间隔多久生成一次、何时终止生成车辆等信息。所以基于个人电脑的配置,以及地图的大小,我们需要选择合适的车辆数来进行仿真实验。车辆数过多时,首先可能会使得电脑无法支撑实验的进行,其次是在一张现实地图下,会直接导致车辆的大拥堵,例如地图上充满了车辆,那么所有的车辆运行基本完全停滞,两组实验数据趋于完全一致,导致失去实验的意义。车辆数过少时,车辆的网络资源完全处于相当一部分空闲的状态,例如一张地图上只有一辆车,此时两组实验数据也会趋于完全一致,也会失去实验的意义。所以选择合适的车辆数,以及生成的车辆的速度以及时间间隔,对于我们探究这种优化V2X算法对于网络资源分配后,能否提升整个交通系统的效率是非常有必要的。但是需要着重强调的是,本次对照实验除了会优化V2X对网络资源的分配以外,其他的环境信息是完全相同的,也就是说仿真实验中生成车辆的起始位置和终点位置、何时开始生成车辆、间隔多久生成一次、何时终止生成车辆等信息是完全相同的。
有了以上的介绍后,现在我们回看图3-8与图3-9,“两个实验组的前85s左右有基本完全一致的数据曲线”这件事也就是理所当然的了。正因为其他信息是完全一致的,所以在一开始的一段时间内,对于每一辆单一车辆来说,基本可以认为在其车辆的行驶距离之内,只有自己这么一辆车在行驶,此时优不优化V2X的网络资源分配,对汽车的行驶可以说都是没有影响的。
那么抛开开头相同的数据之后,在85s左右,两组实验的数据开始有所不同,则是因为生成的车辆在行使途中遇到了附近的车辆。结合实验时的实时运行图,确实可以佐证此结论(见图3-10,运行中的汽车遭遇其他汽车时的反应)。此时车辆要对其附近车辆的信息进行处理,网络资源的使用需要进行规划也就是从此时开始,这也是两组对比实验着重需要对比分析的地方。

图3-10 运行中的汽车遭遇其他汽车时
下面我们先看图3-8即不同实验组中汽车速度的对比,需要说明的是,这里的速度指的是所有车辆的实时速度的平均值,这个值可以反映不同组中汽车们的总体行驶速度的差别。依据数据对比,我们可以轻松得出结论,即优化V2X的汽车们的行驶速度,基本可以说完全超过了默认V2X组,增长幅度大概有10%左右。但是单一的总体行驶速度都高,要支撑实验的结论即对整个交通效率有所提升,未免过于单薄,此时我们就需要结合图3-9即环境中的运行的车辆数对比。
关于图3-9即环境中的运行的车辆数对比,我们需要预先说明这个环境中的运行车辆的含义,这指的是在整个模拟地图中,正在运行着的车辆的数量,因为车辆具有起点和终点信息,整个环境生成车辆的起始和终止时间和生成时间间隔也经过了良好的设置,所以车辆在正常运行的情况下,即开始生成后汽车数量增加,汽车到达终点后汽车数量减少,数量会出现上升和波动是完全正常的。再结合前文的分析,我们自然难理解前85s左右数据一致的情况,同时重点自然也是后面不一样的部分。
通过对比,我们可以发现优化V2X组的汽车数量率先达到了顶峰,然后保持了一段平稳时间,与此同时,默认V2X组的汽车数量仍处于上升之中,分析这一点,我们可以得出结论即在V2X保持平稳的这一段时间内,汽车还是处于生成时间的,这也和实验的初始设置时间是吻合的。而此时优化组的汽车数量已经开始保持平稳了,那么说明优化组在这段时间内,汽车到达终点的数量和汽车生成的数量是相持平的,即优化组的汽车相比于默认组,会更快的到达终点,从而引起了汽车单位时间内减少的数量多于默认组,这也和图3-8中优化组的汽车速度更快可以对应的上。在这之后,两组之间的汽车数量之差,即纵坐标的差距基本不减少,完全可以说明至少单位时间内到达终点的车辆的数量这一数值上,优化组是完全不低于默认组的。再结合一开始的优化组数量平稳速度快于默认组,我们完全可以得出结论,即优化组单位时间内汽车的运载量相比于默认组单位时间内汽车的运载量是完全超过的,即优化组确实对交通效率有所提升,根据不严谨的估计,提升量在10%左右。
那么分析到这里,我们的实验结论已然成立。处于城市道路场景下,这种基于四维需求模型的优化V2X算法在对网络资源实行良好分配后,确实提升了整个交通系统的效率。
虽然仍存在一些有趣的小现象,例如为何在优化组速度更快的情况下,仿真实验进行到后期时两组的车辆数没有越拉越大,而是处于相持平状态;以及车辆数变化的时间和速度产生差别的时间过于接近等问题,但这些现象都对我们的结论无害。由于时间缘故,这些原因暂且不究。
城市道路场景是数量占比最大的应用场景,故为了再次验证结论的重要性,我选择了上海的一部分地区的地图作为再次实验的场景。实验地图见图3-11,实验运行图见3-12,最后的实验数据图见3-13和图3-14。

图3-11 上海地区的实验地图

图3-12 上海地区的实验运行

图3-13 上海地区实验的速度对比

图3-14 上海地区实验的车辆数对比
此处地区实验的分析基本和前文一致,在此不再赘述,这里的实验也有力证明了我们的结论,即在城市道路场景下,优化V2X算法提升了整个交通系统的效率。
但图3-13也有值得单独分析的地方,即在110s-130s左右,默认组的速度实现了小幅度反超,这不太符合我们之前实验的结论,通过反复观看实时实验图后,我发现了原因所在,详见图3-15与3-16,它们分别是实验进行到110s左右和130s左右的实时运行图。

图3-15 110s左右的实时运行图

图3-16 130s左右的实时运行图
对比两图我们可以发现,在十字路口处,110s左右时汽车的扎堆现象尤其明显,而直到130s左右,汽车的扎堆现象才得到了适当的缓解。这也解释了为什么110s-130s内优化组的速度下降幅度如此之大。多次在实验平台上观看实时图后,我发现导致优化组速度低于默认组的原因,主要是因为在一开始优化组速度过快后,大量汽车进入十字路口开始等待,而此时默认组的汽车还未聚集到达十字路口,从而产生了率先到达的优化组反而速度不如默认组的现象,而实际上优化组的汽车行驶进度是优于默认组的。这也能解释为何在优化组速度不如默认组的期间内,优化组和默认组的汽车数量之差仍然至少保持不降低,即优化组的汽车行驶进度更高。
第4章 高速公路场景下的网络资源分配
4.1 引言
高速公路作为现代化交通运输的干线,汽车运行速度很快、时空分布不均匀且通信距离远。自动驾驶汽车需要通过 V2X 协同车联网 RSU 与云端,实时交流各自高精定位信息和突发路况信息以确保安全畅通。然而高速移动导致拓扑变化剧烈; 线型道路导致基站稀疏造成信号断续; 安全类指令与娱乐类数据资源争夺矛盾,将会严重恶化网络紧张状况。本章将运用上文中介绍的网络资源分配方案以及仿真平台的仿真实验来验证它能否给高速公路带来交通效率提升的效果。
4.2 高速公路特点与挑战
(1)车辆高速移动与通信稳定性挑战
高速公路车辆速度很快(通常为80-120km/h):通信链路的快速移动和切换或中断。例如,两个相对速度为240km/h的相反方向行驶的车,两辆车的速度都为120km/h,则相对多普勒频移现象严重,容易产生信号失真;同时由于速度较快,在不同地点的不同的车辆分别与同一RSU(也就是路侧单元)连接的时间非常短,只有几秒,需要根据实时性要求动态地改变资源分配方案。
(2)线性道路结构与通信覆盖矛盾
因为高速公路成长段线型分布,基站得一路跟着设置,有时候由于山体、隧道等地势原因或者是成本问题,会导致信号断崖式中断。
(3)大流量潮汐现象与资源动态分配
高速公路车流量时空不均衡性强:时间上,节假日或者早晚高峰局部路段的车流量成倍上涨(如京港澳高速一些路段平日和节假日期间的峰值流量达到3:1);空间上,有的车道在此期间人满为患,有的车道在此期间门可罗雀。
(4)远距离预警与抗干扰需求
高速公路对长距离信息传输要求非常严格:5km外的事故预警是否能够V2I信息交互,避免出现一连串追尾事故;暴雨、团雾等恶劣天气下雷达和视觉感知结果融合,信号衰减影响会不会出现问题?
4.3 高速公路网络资源分配
针对高速公路的高车速大范围通信特点,以及长距离协同、少行人交互、应急突出的特性,这里将按前文提出的四维需求模型资源分配方式,使不同的任务得到相应的网络资源分配。
4.3.1 高速公路四维需求模型
考虑高速公路高车速、线性的特点,根据安全、效率、服务的目的,其优先等级可分为如下四个层次。
(1)V2V(车辆与车辆通信)——最高优先级
需求特点:
实时性要求:50ms内完成紧急指令的全链路传输,例如两车120km/h相对行驶,当制动指令延误超过50ms时,多出刹车距离42m(NHTSA, 2024)。
可靠性要求:丢包率须低于0.001%。
关键性:直接判断两车是否会撞,权重占比87%,V2V失效时事故死亡率是城市道路的3.2倍。
排序依据:因为高速相对于是比较封闭的环境,所以高速上行驶速度非常快,且没有行人的干扰,因此在此场景下 V2V 是唯一能感知到周围车辆消息的通信手段,比如编队卡车要通过 V2V 才能达到毫米级、毫秒级控制,车间距必须保持十米以内。
(2)V2I(车辆与基础设施通信)——次高优先级
需求特点:
实时性要求:道路事件信息要在200ms内广播到5km范围内。对于团雾预警,间隔超过300ms会使后车连环追尾概率增加47%。
可靠性要求:丢包率须低于1%。
关键性:影响全局,不直接影响实时驾驶决策,容错窗口 5s。例如可变限速指令错误上传会造成部分混乱,但在人工介入或冗余感知识别后可以轻易改正。
排序依据:V2I是长距离预警的主要载体。2024年全国高速RSU覆盖率将达到92%,在无星载信号的隧道路段也可以接收和中继定位信息,补偿后的GPS漂移误差在0.3m内。
(3)V2P(车辆与行人通信)——中等优先级
需求特点:
实时性:施工人员定位信息数据传输延迟低于500ms,在建京港澳高速工人智能手环实际平均通信延迟为423ms,偶尔最大峰值为580ms。
可靠性要求:允许5%的丢包率,主要依靠车载雷达和视觉感知进行辅助补偿;未穿戴的施工区域车辆感知误判率为22%(相当惊人)。
关键性:仅供高速公路用以应对占总里程0.7%的施工或救援,直接影响系统安全不足5%,如2024年我国所有高速公路事故中仅有3.8%是人车事故。
排序依据:因为相对封闭道路的设计,造成V2P需求强度仅是城市道路区间的1/20。就如交警进到事故现场,V2P广播警戒区域内坐标的需要暂且上升几个级别(也不过5%),都排不到第一位。
(4)V2N(车辆与网络通信)——最低优先级
需求特点:
实时性要求:云端指令允许1-5s延迟,用闲时带宽调度。譬如软件升级包在凌晨0:00-5:00下载成功率达99.3%。
可靠性要求:允许10%的丢包,用差分压缩(例如只发地图变更块)减少76%重传数。
关键性:不作为实时驾驶决策使用,长时间路径优化影响很小。百度Apollo测试表明地图更改后延迟5s只增加1.2%绕行距离。
排序依据:V2N资源占用成本与安全弱相关。1Gbps带宽的V2N任务只有V2V的1/8,可以采用诸如高峰暂停之类的限流手段规避占用太多的安全类业务资源。
高速公路场景优先级排序总结见表4-1。
表4-1 高速公路场景优先级排序
| 通信模式 | 优先级 | 核心依据 |
|---|---|---|
| V2V | 最高 | V2V是唯一能实时感知周边车辆动态的通信方式 |
| V2I | 次高 | V2I是长距离预警的核心载体 |
| V2P | 中等 | 仅适用于占高速公路总里程0.7%的施工或救援场景 |
| V2N | 最低 | V2N资源占用成本与安全性弱相关 |
4.3.2 基于四维模型分配资源
核心思想:和前文相同,不再赘述
实现步骤和前文大致相同,故此处重点表现关键处:
(1)需求量化
Dpriority:任务优先级,由高速公路四维需求模型设定,如这里可以设定V2V碰撞避免=1.0,V2I路况同步=0.9,V2P施工人员预警=0.3,V2N云端交互=0.3
Dlatency:最大允许延迟(单位:秒),如V2V紧急制动要求≤0.05秒,V2N地图更新允许≤5秒
Dreliability:传输成功率(0.0-1.0),V2V需≥0.999,而V2N可容忍≤0.9
Dvolume:单位时间需传输的数据量(统一化为0.0-1.0)
(2)评分公式
通过加权评分机制计算资源需求与可用资源的匹配度,与前文相同,但权重系数设置在基于前文的前提下,可引入权重系数动态规则:
常态分配:ω₁=0.5(安全优先),ω₂=0.3(延迟敏感),ω₃=0.15(可靠性),ω₄=0.05(带宽效率)
高峰时段(如节假日):提升ω₁至0.6,ω₂至0.25,压缩V2N资源占比
夜间时段:降低ω₁至0.4,提升ω₄至0.2,释放V2N带宽。
但还是大致满足场景即可,不是本文着重探讨的重点,这里的重点还是在于精细化Dpriority即任务优先级的数值大小。
(3)动态资源匹配:
系统实时计算所有任务评分,按得分降序分配资源。
示例:
场景:高速公路团雾突发
权重设置:ω1=0.6,ω2=0.25,ω3=0.1,ω4=0.05,
V2V碰撞避免:
Dpriotiy=1.0,Dlatency=0.05s,Dreliability=0.999,Dvolume=0.1 Score=5.7049
V2N地图更新:
Dpriotiy=0.3,Dlatency=5.0s,Dreliability=0.9,Dvolume=0.8 Score=0.36
结果:V2V得分(5.70)远高于V2N(0.36),优先获得资源分配。
此时我们得到V2V=1.0,V2I=0.9,V2P=0.3,V2N=0.3,接下来将通过仿真实验进行验证。
4.4 仿真实验
4.4.1 实验思路
通过在高速公路场景下设立一组对照实验来探究该算法在通过优化网络资源分配以实现提升交通效率方面起到的作用。设置对照实验组如下:
默认组:实验车辆的V2X参数按照Veins的默认设置
优化组:实验车辆的V2X参数按照基于四维需求模型设置
通过处于相同环境下的对照实验,对比分析承载的实时车辆数的变化及车辆的实时速度的变化,探究这种优化V2X算法是否能在高速公路场景下提升交通系统的运行效率。
4.4.2 实验过程
首先是对仿真区域的选择,由于高速公路具有狭长的特点,只包含高速公路的仿真地图很难获得,于是本实验选择高速公路的出站口即和城市公路的交界处进行实验。此时我们具有较小的仿真区域,于是本实验的汽车数量的相关设置需要我们慎之又慎,如果选择不当,很容易出现实验数据没有价值的情况,经过对比分析,我选了浙江师范大学附近的周围的高速公路出站口区域作为仿真区域的原型,详见图4-1。

图4-1 高速公路场景的实验地图原型
通过和前文相同的步骤之后,我们可以得到高速公路场景下的实验数据。
4.4.3 数据分析
一样的使用Python对所得的csv文件进行处理后,我们可以得到如图4-2和图4-3所示的实验数据。

图4-2 高速公路场景下的车辆速度对比

图4-3 高速公路场景下的车辆数对比
首先由于局限于地图,我所设置的汽车数量的相关数据相当的低。但乍一看,这次的数据图相当凌乱,和城市道路场景下的大不相同。
首先我们就图4-2即速度相关的数据进行分析,速度数据看上去杂乱无章,没有之前实验数据那样清晰明了的结构。想要对其进行正确的分析,就要知道为什么会产生这样的原因,通过反复观看实验的实时运行图,我发现了一些关键问题所在,详见图4-4和图4-5。

图4-4 汽车在高速旁小路上拥堵

图4-5 汽车于高速旁村落拥堵
由于汽车最后都要下高速,而汽车终点有时会产生在需要穿行高速旁行驶条件差的小路或村落的地点,所以汽车不可避免的会陷入的低速行驶中,而一前一后巨大的速度落差,就会使得速度相关的数据产生巨大的波动,即使是某一组优先下了高速,但由于下高速后立马会进入低速行驶,此时还处于高速的另一组就会显得速读特别的快,但下了高速后又会进入巨大的速度落差,从而使得速度出现如图中反复的波浪状。
搞清楚了产生原因后,我们就要分析如何才能从杂乱的数据中获得我们想要的关于可以证明优化组提升了交通效率的方法,结合所有其他环境都是相同的这一特点,我们可以知道,在相同时间内,哪一组的汽车行驶的距离是更远的,那么这一组的行驶进度一定是高于另一组的,这是由所有汽车的行动路线都是一样的所决定的。之前的实验数据的分析也都遵循这一标准,而由于之前的数据中,速度的高低之比非常明显,所以我们可以很清晰的得到我们想要的结论即哪一组的行驶进度更高,但这次实验数据的速度大小难以比较,以往的方法依然不行。于是我们想到一个简单且正确的公式,想知道哪一组汽车的形式进度即行驶距离,我们只需要知道时间和速度,通过时间和速度多次相乘求和即可得到所有汽车的行驶总距离,也就是图中数据线和纵轴所围成的图形的面积。而且由于我们的速度是所有汽车的平均值,那么只需要使用此速度平均值,通过比较两组的距离值的大小,就可以代表这一组的全体汽车,从而得到哪一组的行驶进度更高。
对比距离值的Python代码如图4-6所示,结果如图4-7所示,即优化组的行驶进度更高,比默认组的行驶距离高了3%。

图4-6 对比距离值的Python代码

图4-7 对比距离值的结果
在观察图4-3高速公路场景下的车辆数据对比,可以知道两组的数量基本咬的比较近,结合优化组的行驶进度也就略高不多,以及这种高速行驶下容易出现梯度变化,即距离虽然相差不多,但是转变为这种只有整数的数据,就会显示为一个较大的梯度差距,我们可以知道优化组仍然在行驶进度上有所提升,不过幅度较小。
由此这里可以得出实验结论,即:优化V2X算法通过分配网络资源,在高速公路场景下会提升交通系统的效率,但是幅度并不明显。这其中的原因,虽然无法通过实验考证,但是可能一方面是因为高速公路场景下,想要再次提升速度已然不甚明显,所以二者差距不大;另一方面也是因为有一部分汽车的目的地是高速公路出站口旁行驶条件很差的小路以及村落,在这种行驶环境上想要提升速度也是难以通过网络资源的分配可以解决的。
第5章 结论与展望
5.1 结论
本文中,我们在不同场景下建立四维需求模型,基于这个模型,我们优化了基于V2X的无人驾驶的四个维度如何来分配有限的网络资源。然后我们使用了OMNeT++以及SUMO在Veins框架下搭建的仿真实验平台,对不同环境下的道路进行V2X仿真模拟,在这些仿真实验中,我们取得有价值的实验数据,以此来对比优化后的V2X技术和默认的V2X技术在相同的环境下,谁提升了交通效率,从而判断两者孰优孰劣。
在两种不同的场景下,结论都是可喜可贺的。无论是城市道路场景下,还是高速公路场景下,我们都可以得出结论:通过基于场景的四维需求模型对基于V2X的无人驾驶的网络资源进行分配后,我们确确实实地提升了交通效率。
5.2 不足之处及未来展望
但不得不说,整篇论文存在着较多的不足之处。
首先是四维需求模型的具体建立,我们无法在每次的场景中都固定出一个唯一且确定的数值,只能是一个范围内可以满足要求的数值,这不由得给我们所谓的算法的稳定性要打上一个巨大的问号。而且其中还有四个需要适当设置的权重系数,虽说权重系数的设立是为了可以使得属于V2X不同维度的任务的需求都得到满足,不至于某一类优先值太高的任务一直占着资源,致使产生饥饿现象,但这也无形中再度增添了这个分配算法的不稳定性。也许这不应该叫做一种分配算法,而应该称之为一种分配策略,旨在提供一种可行的思路,带来一些聊胜于无的提升。
其次是仿真实验相关的问题,文中或多或少提到的一些有趣的需要探究原因但无伤大雅不影响结论的小问题暂且不表,一些实验的设置实在是没有做到足够完善,只能通过一些折衷找补的办法来做一些挽救,但由此所得的实验数据是否真的还能保证一定程度上的符合事实,恐怕或多或少还是存在一切需要细细考究的地方。例如使用四维需求模型的优先级数值比例来进行资源分配,在文中所使用的仿真实验平台上,笔者实在是没有能力去实现,则只能在实验中简单粗暴的使用按比例去直接限制对应类别的任务的网络资源如网速和带宽来实现;再有如在高速公路场景下,本该使用一整张狭长的高速公路地图来作为实验地图,但实在是没有这类地图的仿真资源,只能退而求其次,使用高速公路的末段+出站口+公路的地图来模拟一部分的高速公路场景,也因此使得实验数据分析起来较为不直观,而且最后优化V2X的效果也在数据中体现的差强人意,也许在良好的模拟环境下提升会更加明显也说不定?
总而言之,这些都是论文中存在的不足之处,一些是思路方面的问题,另一些则切实的是能力和资源方面的问题,只希望未来在时机成熟或者能力成熟之时,可以将论文中的缺点一一填补上,从而再次优化这个也许当下应该称之为分配策略的分配算法。
参考文献
[1]卢佩,刘效勇,卢熙. 智能交通信号灯控制系统设计与LabView仿真实现[J]. 电子技术,2008,45(1):76-78.
[2]Haibo Zhou,Wenchao Xu,Jiacheng Chen,Wei Wang. Evolutionary V2X Technologies Toward the Internet of Vehicles: Challenges and Opportunities[J]. Proceedings of the IEEE,2020,108(2):308-323.
[3]李志航. 基于深度强化学习的自主无人系统驾驶策略研究[D]. 广东:广东工业大学,2020.
[4]赵统一.智能网联汽车V2X技术研究[J].中国新通信,2022,24(10):45-47.
[5]陈豪钧.基于C-V2X的车路协同关键技术[J].中国科技信息,2022,(20):64-65.
[6]胡辰汉.车联网关键技术与发展趋势[J].现代工业经济和信息化,2022,12(11):19-21.
[7]朱晓姝,ZHUXiao-shu.OMNeT++仿真工具的研究与应用[J].大连工业大学学报, 2010(1):4.
[8]刘敏. 基于OMNeT++4.0的IEEE802.11无线网路仿真[J]. 电子制作,2015(9):10-11.
[9]侯德藻,高兰达,钱振伟,李振华,李一丁.基于SUMO软件的异构交通流仿真平台车辆模型开发与集成[J].同济大学学报(自然科学版),2021,49(7):957~963.
[10]刘琨.基于Veins的交通路径优化算法研究[J].信息技术,2022,46(5):118-122127.
致 谢
转眼间我的大学生活已然要结束,不由得感叹时间还真是快的不行,来时所走的道路无比清晰,以后要走的道路却还相当迷茫。不过无论如何也马上要和大学生活说结束了,这篇论文也是我最后的大学生活的见证了。
此篇论文的完成离不开我的导师,在写论文的这半年时间里,他认真负责,坚持每两周开一次组会,要求我及时汇报进度,了解我的工作进程,并且为我论文的下一步进展指明方向,把我们的毕设进度安排的井井有条。期间导师也多次在交流群中分享各种有利于研究的新闻资讯,为我的实验提供了最大限度的帮助和支持,可以说没有我导师的指导与帮助,就不会有今天这篇文章。
由衷地向所有关心支持我的各位老师同学以及亲朋好友致以感谢。
附 录
附录1:实验过程相关细节
OMNeT++安装需要使用到文件夹中的mingwenv.cmd,打开后按照INSTALL.txt中的指引编译安装软件。
OMNeT++安装完成后需要对环境变量进行配置,其中Jkd配置需要下载安装适用版本,完成后在系统环境变量中添加JAVA_HOME以及OMNET_HOME变量,并在Path变量中添加相应路径。
OMNeT++安装完成后对Veins进行导入,在官网下载压缩包后从OMNeT++中的File选项中选择Import进行导入,导入成功后在左侧目录页栏中example目录中可以打开一张德国埃尔兰根的局部地图。
OSM文件需要到openstreetmap网站中选取合适位置合适大小并导出,如图6所示。
SUMO的安装较为简单,从官网下载即可,下载完成后需要使用命令行对导出的OSM文件进行处理。从:\sumo\bin中打开cmd命令行,输入文件转换指令。
cd:\jinhua 进入金华数据文件夹。
netconvert --osm-files jinhua.osm -o jinhua.net.xml将jinhua.osm文件编译成路网文件。
polyconvert --net-file jinhua.net.xml --osm-files jinhua.osm -o jinhua.poly.xml将jinhua.osm文件编译成地形文件。
Python:\sumo\tools\randomTrips.py -n jinhua.net.xml -r Jinhua.rou.xml -e 100 -p 1编译随机路由文件。
成功转换后反馈SUCCESS并获得路网文件,地形文件及车辆路由文件。
以上准备工作全部完成后即可开始仿真实验,打开OMNeT++中的mingwenv.cmd命令行,首先输入OMNeTpp指令打开OMNeT++的可视化窗口,然后输入指令将三个软件联通(注意在此命令行中,路径中的分隔符只能是 / 而不可以是 \)。
cd:/Veins-5.2/examples/Veins进入Veins文件夹。
:/sumo/bin/sumo.exe -c erlangen.sumo.cfg连通sumo与sumo.cfg文件。
:/Veins-5.2/sumo-launchd.py -vv -c:/sumo/bin/sumo-gui.exe 连通sumo-gui.exe与OMNeT++。
联通成功后反馈Listening on port 9999。
联通完成后在OMNeT++中编写.ini文件,修改想要打开的launch文件(通过修改此文件来实现运行不同的仿真数据),并打开即可运行仿真,此时sumo-gui会自动打开并同步运行,以在后台记录数据,取得有效数据后需要重新编辑osm文件、net.xml文件、routes文件、polyes文件、sumo.cfg文件,并修改launch文件中指向打开的文件以选择不同地区及其路网文件等。

371

被折叠的 条评论
为什么被折叠?



