边缘计算在高清地图分发中的应用

1. 引言

随着全球自动驾驶产业的持续扩张,高精度地图[1]的研究逐渐兴起。在L3[2],级以上自动驾驶场景下,高精度地图是辅助车辆完成自动驾驶不可或缺的核心技术。凭借其强大的能力,能够很好地保障自动驾驶的安全性和可靠性感知驾驶环境。目前,自动驾驶车辆主要依靠车载传感器检测周围环境,少数企业已经开始探索建设能够与自动驾驶车辆通信的道路基础设施,尝试利用路侧单元(RSU)[3]辅助自动驾驶。

中国及其他国家的许多公司已开始对高精度地图进行研究。特别是那些从事自动驾驶车辆研究的公司,正在探索其独有的高精度地图,目前导航地图应用的主要形式多为“云‐端”模式,并采用“客户端/服务器”或“浏览器/服务器”架构。但随着5G时代的到来以及物联网的快速发展,每一辆自动驾驶汽车都将接入互联网,从而产生呈指数级增长的海量实时数据。在这种情况下,由于自动驾驶车辆与云计算中心之间的物理距离和网络距离较远,导致数据传输延迟较高,传统的“云‐端”模式[4]将无法高效支持高精度地图的应用服务程序。

本文旨在提出一种面向高精地图应用的多接入边缘计算(MEC)系统,通过“云‐边‐端”模式缓解传统“云‐端”模式下的高延迟问题并提升低可靠性。传统的高精度地图应用需要向云服务器发起请求以获取地图数据。然而,由于距离较远以及大量接入请求的存在,通信效率会受到服务器负载、网络环境和传播路径等多种不确定因素的干扰。因此,高精度地图服务的实时性无法得到保障,甚至可能影响自动驾驶的安全性。本文结合新兴的MEC概念,将自动驾驶车辆所需的高精度地图数据按照经纬度分发至各区域的边缘计算节点。应用程序只需与部署在附近边缘计算节点上的高精地图服务器通信即可请求高精度地图数据。通过这种方式,“云‐边‐端”模式在一定程度上能够满足高精地图应用对实时性和可靠性的要求,对自动驾驶技术的研究具有重要意义。

第1节简要介绍了本文将要开展的工作。第2节提供了文章所需的一些相关背景知识,包括自动驾驶技术、高精地图应用、移动边缘计算等。第3节介绍了面向高精地图应用的多接入边缘计算方案的框架结构和具体技术细节。第4节分析了实验测试结果。最后,本文总结了全文,并讨论了未来值得研究的难点。

2. 背景信息

2.1 自动驾驶

自动驾驶技术[5]是一个全面的涉及硬件和软件多个方面技术的复杂项目,涵盖传感器技术、人工智能算法、自动导航与控制等。本节概述了与本文内容相关的技术。在自动驾驶过程中,车辆之间的通信通常采用车联网(车联万物)[6](Vehicle to Everything, V2X),而车辆与基站之间的通信则采用C‐V2X[7]。

2.2 边缘计算随着设备数量的增加

随着连接到互联网的设备数量急剧增加,这些设备产生的数据量也大幅攀升。根据思科全球云指数估计,到2021[8],年,全球云数据中心流量将从2016年的6ZB增长至19.5ZB。该报告还发现,到2021年,云计算将占所有数据中心流量的95%,而2016年这一比例为88%。物联网所产生的这些数据将在靠近网络边缘或网络边缘处进行存储、处理、分析并采取行动。因此,仅依赖云服务器或云计算来处理数据已远远无法满足用户需求。网络边缘计算作为一种辅助手段应运而生[9]。卡内基梅隆大学将边缘计算[10]描述为:在网络边缘靠近用户和设备的位置部署计算存储节点。

2.3 基于移动边缘计算的自动驾驶自动驾驶是建立在

蜂窝车联网通信[11]。移动边缘计算[12]与自动驾驶的融合理念是将蜂窝车联网服务部署在移动边缘计算平台上,支持“人‐车‐路‐云”协同交互,可降低点对点数据传输时延,缓解终端或路侧智能设施的计算与存储压力,减少海量数据回传带来的网络负载,并提供具有本地化特性的高质量服务。

本文聚焦于单车辆与移动边缘计算(MEC)之间的交互场景,不涉及车与车或车与人之间的交互。在自动驾驶过程中,通过单车辆与移动边缘计算(MEC)的交互即可实现高精度地图应用功能。如图1所示。

示意图0

2.4 高精度地图高精度地图[13]是一种

高精度、高维度、高实时性地图数据的结合。与电子地图的数据误差相比,高精度地图的相对精度误差不超过20cm。与传统电子地图不同,高精度地图包含大量驾驶辅助信息,其中最重要的是道路网络的精确三维表示,例如交叉路口布局和地标的位置。高精度地图还包含大量语义信息,包括信号灯颜色定义、道路限速信息、车辆转弯起始位置等。目前,在复杂交通环境中最有效的解决方案是将高精度地图与传感器相结合,包括高精度地图匹配与定位、辅助环境感知以及辅助决策。[14]目前,谷歌无人驾驶汽车[15]已完成累计超过1931212的自动驾驶高精地图测绘。8km

2.5 基于移动边缘计算的高精度地图高精度地图的数据量[16] i

是普通地图的105倍或更多。目前,四维图新绘制的高精度地图数据总量已超过4PB,并且仍以每天2.8TB的速度增长。随着车联网和自动驾驶等服务的发展,数据规模的增长速度必将激增。以云计算为核心的集中式大数据处理模式已无法满足需求。随着物联网和5G通信技术的快速发展,提出了以云边协作为核心的计算方式——边缘计算。

3. 系统架构

为了解决高延迟的问题针对传统地图导航在“云‐端”应用模式下的效率低下和可靠性低的问题,本节提出了一种用于高精度地图分发的移动边缘计算系统,并将详细描述在框架结构下“云‐边‐端”应用模式中高精度地图的工作方式及各层功能。

3.1 系统方案由于c中的地图服务器

云端在物理距离和网络距离上距离车辆较远,车辆需要通过运营商提供的接入网络连接互联网后才能与云服务器交互,互联网环境的不稳定性加剧了高精度地图服务的高延迟和低可靠性问题。一般来说,在传统地图模式下,自动驾驶汽车的车载客户端需要从地图服务器下载100KB∼250KB的数据以完成路径规划;而在高精度地图提供服务的模式下,数据量超过前者的105倍,因此车载客户端需要下载超过25GB的数据才能完成路径规划。在这种情况下,更合适的做法是引入边缘计算节点,将提供高精度地图服务的服务器推向靠近数据消费者(即自动驾驶汽车)的一侧,从而使自动驾驶汽车能够在更短的物理距离和网络距离内下载数据并获取服务。因此,本文设计了一种面向高精地图应用的移动边缘计算系统,将云端地图服务器的服务功能下沉至边缘计算节点。本地高精度地图数据根据经纬度分发到该区域内的各个边缘计算节点。在自动驾驶过程中,车辆只需与本地的边缘计算节点通信即可获得相应的高精度地图服务。此外,高精度地图服务器部署在边缘计算节点上,并由各区域内的集群构成,因此更加稳定。

3.2 系统架构和服务器部署高精地图服务器部署在云端‐边缘端协同环境中

协作表单。通常分为两部分:云端和边缘端。云端由云Web服务器、云端高精地图服务器及相应的数据库组成。边缘端由边缘Web服务器、边缘高精地图服务器及相应的数据库构成。部署如图2所示。

示意图1

除了存储全球高精地图数据外,云端Web服务器还负责根据经纬度向该区域的边缘计算节点分发地图数据。城市中的边缘计算节点部署在路侧单元(RSU)上,这些路侧单元在高速公路上以2km的间隔设置。(下一小节将解释以此间距部署的原因。)

KubeEdge是首个基于Kubernetes[17]扩展的开源智能边缘平台,可提供云端与边缘端的协同。云端高精地图服务器与边缘高清地图服务器通过网络通信进行协作。从Kubernetes的角度来看,“边缘节点+云端”构成一个完整的Kubernetes集群[18]。该布局模式能够满足自动驾驶场景下高精度地图内容分发的部署需求。KubeEdge管理节点的添加,通过Kubernetes标准API在云端对边缘端节点、设备和工作负载进行添加、删除和变更。边缘端节点的系统升级和应用更新可直接从云端下发,以提升边缘端运维效率。

高精地图的移动边缘计算系统集群由一个Web服务器和若干位于该区域经纬度上的高精地图服务器组成,全部部署在边缘计算节点上。根据现有的高速公路情况,每2km可部署一个边缘计算节点,能够很好地满足负载需求。图3展示了路侧单元中高精地图服务器集群模式的实现。

示意图2

我们可以看到在4km的道路上,共部署了2个路侧单元,由2个MEC节点组成。每个MEC节点包含2个高精地图服务器、一个Web服务器和一个数据库服务器。它们通过高速互联网络和高速智能交换机相互连接,节点之间也通过网络进行连接。Web服务器负责监听客户端发送的请求并将其转发,然后将结果返回给客户端;高精地图服务器负责处理请求,并将处理结果返回给Web服务器;数据库服务器负责存储高精度地图数据。在每个MEC节点前端部署了一个车联网专用基站,用于接收自动驾驶车辆的车载单元发送的请求,并将其转发至Web服务器。

3.3 高精度地图分发本文的核心思想是高精度

地图分发的高精度地图数据的分发。在云端的全量高精度地图根据经纬度划分后,将被分发至本地边缘高精地图服务器集群,用于自动驾驶。

3.3.1 路侧单元部署. 实际距离约为11

1km当纬度在子午线上为1度时;在纬度上,经度为1度时的实际距离为111×cosθkm(其中θ表示相应的纬度)。因此,本文部署边缘端根据经纬度线的分布来布置计算节点。由于1度被均分为60个点,因此每隔2km在道路上布置一个边缘计算节点可能是合适的。每个边缘计算节点中的边缘高清地图服务器足以覆盖4平方公里范围内的高精度地图。

3.3.2 高精度地图分发过程. 高精度地图分发可以通过以下方式解决

地图数据库的水平分片技术[19],云端负责管理边缘计算节点中的数据,包括更新和校对。通过GIS(地理信息系统)可以轻松实现对矢量地图[20]的裁剪。当所有基础设施(服务器、数据库等)部署在KubeEdge框架中时,云端将监听所有边缘计算节点的缓存请求,这些请求应包含边缘计算节点的数量及其经纬度。在云端应维护一个表格,其中包含边缘计算节点与经纬度的对应关系。云端将根据该表格依次将裁剪后的高精地图下发回边缘计算节点。

3.4 系统通信过程在用于高精度地图的移动边缘计算系统中,关键问题在于

获取高精度地图服务的关键是如何获得边缘高精地图服务器的IP地址。总体流程如图4所示。

示意图3

4. 实验与结果分析

本文进行了实验以验证“云‐边‐端”模式的优势。路径规划测试比较了在“云‐端”模式和“云‐边‐端”模式下,使用高精度地图进行路径规划的准备时间,验证了采用边缘计算框架的自动驾驶车辆能够更快地缓存高精地图数据,从而更快速地完成路径规划与导航。

4.1 实验环境“云‐端”高精度地图的应用

模式由一台作为客户端的PC组成,该客户端使用JavaScript编写以模拟自动驾驶汽车;在阿里云上部署的两个Nginx服务器分别用作云Web服务器和云端高精地图服务器。硬件配置为:Linux操作系统、8GB内存、Intel Xeon(Cascade Lake)Platinum 8269CY处理器;数据由MySQL数据库管理,客户端到云Web服务器需要经过14跳路由。在“云‐边‐端”模式下,边缘节点中的两个边缘高精地图服务器组成一个集群。集群部署的边缘节点由云代理进行管理,在KubeEdge提供的框架下,边缘高精地图服务器配置在Docker容器中。客户端到边缘节点需要经过1跳路由。

测试数据由4块高精地图瓦片组成,其高斯投影坐标分别为{X =720640,Y=473344}、{X=720640,Y=473088}、{X=720896,Y=473088}、{X=720896,Y=473344},分别命名为瓦片1、2、3和4。在“云‐端”模式下,自动驾驶汽车需要同时缓存这4份地图数据;而在“云‐边‐端”模式下,仅需缓存其中一份地图数据。

4.2 实验结果分析电子地图导航通常需要更多

小于10级(L10)[21]的瓦片数据。瓦片级别越高,图像越清晰。高精度地图需要至少L20级别的瓦片,才能实现“车道级”导航。图5显示了本实验的瓦片分层数据大小。

示意图4

由于自动驾驶汽车在“云‐端”模式和“云‐边‐端”模式下路径规划所需的初始数据不同,在“云‐端”模式下的自动驾驶汽车需要一次性下载4块瓦片数据;而在“云‐边‐端”模式下的自动驾驶汽车,仅需缓存其所在地理位置的一块高精度地图瓦片数据。此外,网络距离中的路由跳数减少了10跳以上,这有助于更快地下载地图数据,并缩短完成路径规划准备的时间。图6是时间结果的对比。

示意图5

5. 结论与未来工作

本文提出了一种用于高精地图分发的移动边缘计算系统框架,面向高精地图应用,并介绍了其应用模式、系统框架设计与实现,包括系统架构、功能模块、高精地图数据分发流程以及自动驾驶车辆客户端与服务器之间的通信过程。此外,我们还进行了性能测试、分析与对比。结果表明,面向高精地图应用的移动边缘计算系统框架能够为自动驾驶车辆提供准确的地图服务,具备良好的可扩展性和稳定性。

下一步的研究方向应聚焦于高精地图更新机制,克服实时更新和数据同步方面的难题。同时,应探索通过自动驾驶车辆之间通信(车对车通信(V2V))来分担高精地图服务器负载的方法,这对辅助自动驾驶具有重要意义。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐