V2X会是未来趋势吗?看看这种轻量级方法,大幅降低碰撞概率!

简介: 本文提出了一种Ledger概念,它通过Ledger信息的广播,在一个资源预留区间(RRI)内向网络中的每辆车传递碰撞信息。碰撞车辆知道它已经与其他车辆相撞,并将在下一个 SPS 期间重新选择。除此之外,其他协议都遵循 SPS。通过引入 Ledger,虽然牺牲了14.29% 的资源,但最终可以降低碰撞概率。本文使用蒙特卡罗模拟器对Ledger系统的性能进行了验证和分析。数值结果表明,遵循 SPS 协议,Ledger 系统可以使碰撞概率在一定数量 RRI 后收敛到零。

摘要



为了实现高度可靠的自动驾驶,信息的及时性对于V2X通信中的基本安全信息(BSM)至关重要。然而,目前第五代新无线电(5G NR)标准中的半持续调度算法(SPS)仍然能够产生接近20% 的碰撞概率(每公里100辆车情况下),这使得它们不能满足 BSM 的这一要求。本文提出了一种Ledger概念,它通过Ledger信息的广播,在一个资源预留区间(RRI)内向网络中的每辆车传递碰撞信息。碰撞车辆知道它已经与其他车辆相撞,并将在下一个 SPS 期间重新选择。除此之外,其他协议都遵循 SPS。通过引入 Ledger,虽然牺牲了14.29% 的资源,但最终可以降低碰撞概率。本文使用蒙特卡罗模拟器对Ledger系统的性能进行了验证和分析。数值结果表明,遵循 SPS 协议,Ledger 系统可以使碰撞概率在一定数量 RRI 后收敛到零。


简介



与安全有关的应用程序,如基本安全信息(Basic Safety Message,BSM) ,是常规车辆状态通信的一部分。BSM 的目的是通过向周围的其他车辆宣布车辆的存在来评估潜在的道路危险。为了保证车辆状态的足够及时,BSM 调度是至关重要的。3GPP 第16版引入了 NR-V2X [1]。16版中的模式2是一种更适合在使用基于传感器的半持久调度(SPS)的 V2V 环境中使用的通信机制[2]。这是一种分散的广播直接通信协议的策略。然而,这种算法不能满足及时性和可靠性的要求。Liu 等人在[3]中研究了100ms RRI 和每公里100辆汽车的碰撞概率接近20% 。最糟糕的情况是 BMS 包延迟了1.5秒,这在实际紧急情况下已经足够危险了。


在区块链技术于1991年引入之前,分布式Ledger技术(DLT)概念性地出现于1982年。分布式Ledger技术已经确立了自己作为一个总括术语来指定在没有中央操作员或权限的环境中运行的多方系统,尽管各方可能是不可靠的或恶意的(“对抗性环境”)[4]。

3GPP 在第14版中引入了Cellular-V2X(C-V2X) ,并与专用短程通信(DSRC)竞争[5] ,[6]。它目前正在转移到 NR-V2X。作者在文章[7]中开发了一个预测 SPS 方案,利用传输历史有效地减少 LTE 系统和 NR 系统的上行延迟。基于信息时代(AoI)的观点,本文[3]研究了 NR-V2X 模式2中用于 BSM 调度的 SPS 参数。作者在[8] ,[9]中讨论了在排队情景下应用深度强化学习算法来提高资源分配效率。[10]引入 SPS++ 以适应自适应 RRI。该系统允许各车辆动态调整 RRI 以降低碰撞概率。


为了解决这些问题,本文采用了分布式数据共享(资源占用)技术,尤其是利用碰撞信息。分布式Ledger作为一个轻量级数据库。每个节点应该周期性地与网络共享其信息(例如占用的子信道 ID、传输子帧时间戳、碰撞子信道 ID、其子帧时间戳等)。在几微秒内,如果没有碰撞发生,网络中的每个节点将接收所有新增加的数据,如果有碰撞,则接收碰撞信息[11]。因此,应用这样的技术将允许每个车辆建立一个共同的,透明的,不可逆的,分布式和轻量级的Ledger[12] ,[13]。在一个 SPS 周期内,根据共享Ledger,每辆车都可以知道是否有另一辆车与它相撞。


为此,本文提出了一种新的广播 V2V 网络资源分配机制。该机制将基于 SPS 机制,也将与5G NR V2X 协议兼容。在某种意义上,实现了全双工模式。仿真结果表明,碰撞和连续碰撞大大减少。


系统模型



一般来说,车辆以半双工(HD)模式发送和接收包。由于半双工,在传输子帧,车辆不能接听到其他车辆。它不能为该子框架构建 Ledger。通过这种Ledger设计,可以在一定的延迟下实现全双工模式。首先,HD条件意味着车辆不能从同一时段的其他车辆收到任何包。通过Ledger共享,传输车辆可以在传输槽中填写缺失的包信息。它确保网络中的每个车辆都有相同的车辆Ledger。此外,由于 SPS 协议的存在,网络中的车辆总是能够感知整个信道。因此,每辆车都可以在接收和解码每个传输槽中的包后与传感器列表进行比较。可以检测到碰撞子信道 ID,并将其包含在传输包中进行共享。它确保了碰撞信息能够尽快传输。


基于下图1所示的场景,网络中的每个车辆都有一个固定的算法程序来维护整个新系统模型的运行。重新设计的系统模型包含了本文提出的Ledger概念。所有通信都与5G NR V2X SPS 协议兼容。


640.png



该算法需要两种类型的数据,感测列表 image.png 和从网络中其他车辆接收的包。该算法的最终目标是构建完整的 Ledger。有一些缓冲区用于记录不同的信息。因此,在使用每个缓冲区之前必须对其进行初始化。例如,应该将最新的传感列表 image.png加载到 buffer 中。一旦车辆加入现有的 V2V 网络,它将始终遵循 SPS 协议,并将继续感觉当前的子帧。结果是当前子帧列表image.png image.png列表是当前子帧时整个通道的每个子通道的占用情况的记录。这种占用是由子通道的能量表示的。基于 SPS 协议的 RSRP 和 RSSI 阈值用于分类哪些子信道繁忙(高于阈值) ,哪些子信道空闲(低于阈值)。在碰撞的情况下,与碰撞的子通道也会携带能量,所以它也会被列为繁忙的image.png 列表。


车辆在 SPS 周期开始时被选择,以根据所述协议在每个 RRI 的固定子帧中广播所述包。无论何时,只要它在 RRI 的子框架中,包被传递,车辆广播相应的存储包。在不需要发送子帧的情况下,车辆必须收集和分析信息,以便为下一个发送子帧组装包。


为了收集信息,它首先必须监听它在当前子帧中与之交互的整个信道。在收到所有包和解码后,包内的分类信息被添加到本地Ledger中,形成整个本地Ledger,如下图2所示。

640.png


为了收集是否发生了碰撞,需要将解码的Ledger信息与通过传感获得的image.png列表进行比较。分类器显示车辆所占用的子信道 ID 与image.png 列表中相应的子信道 ID 相同,则子帧的子信道是正常的。相反,如果在 image.png列表中有一个子通道显示繁忙,但没有一个包显示车辆在解压后占据该子通道,则假设在相应的子通道中存在碰撞。在这种情况下,作者需要存储相应子通道的 ID 和相应子帧的信息在新形成的Ledger中。这将允许在广播此包时共享碰撞信息。


LEDGER 结构



对于当前的 BSM 包,它被定义为包括一些安全标记、危险警报和其他信息。本文提出的Ledger不仅包含这一基本信息,而且还定义了更多的信息,以帮助其他车辆在网络中建立一个完整的Ledger。


在物理层,定义多个参数具有重要意义。通过设置每个Ledger,车辆应该包装和传输广播到网络与一定的有效载荷大小。物理层中的参数应该有助于管理应该分配多少资源才能完全传输一个 Ledger 包。每帧持续时间为10ms,每个子帧持续时间为1ms,RB 被定义为频率域中的12个连续子载体/资源元素(RE) ,这意味着image.png [14]。


FR1和 FR2是由5G NR 建立的两个频带。FR1每个载波的最大带宽为100MHz,子载波为15/30/60kHz。对于 FR2,每个载波的最大带宽为400MHz,子载波为60/120/240kHz。如下表1所示,运营商的最大带宽可以影响可以传输的包的最大数量[15]。


640.png


根据物理层的定义,时间划分为时隙,频域划分为子载波。在每个时隙中,分成14个 OFDM 符号。如前面图2所示,一个 OFDM 符号与一个子载波分组一个资源元素(RE)。


时间戳


在5G NR V2X 中,协议定义了物理层的帧结构,将时间划分为帧和子帧。每帧持续时间为10ms,每个子帧持续时间为1ms。不同的数字选择 μ,每个子帧持续时间中的槽数是固定的。由于HD模式,在每个时隙,车辆可以接收包或发送一个包。每个车辆知道当前的时间由实时时钟(RTC) ,当他们传输Ledger时可以计算时间戳。有两种情况: (1)在 SPS 周期内


640.png


表示的时间戳将用于这种情况下新生成的 Ledger。是指最后一个发送时隙的开始时间。

(2)SPS周期开始:


640.png


开始在这种情况下,代表时间戳的image.png 将用于新生成的Ledger。 image.png是指来自 RTC 的当前时间。 image.png是由选择窗口决定的值。在这个时间段内,车辆将传送Ledger。时隙的持续时间由数字 μ 定义。因此,还可以计算包的时间戳。这个计算出来的时间应该包含在 Ledger 头中,有相应的位置(时间戳)和长度(10字节)。这个时间戳是header中构建整个 Ledger 的最重要部分。


车辆ID


在 V2V 网络中,当汽车进入这个网络时,它会选择一个数字作为它的标识 ID。这个 ID 号有两个限制: (1)与网络中的其他用户不一样; (2)长度小于1字节。选择的 ID 值应该封装到 Ledger 头中相应的位置。一旦确定了 ID,它在离开当前网络之前将永远不会更改。


子通道ID


根据物理层的定义,一个 OFDM 符号和一个子载波引入了一个资源元素(RE)。在一个时隙内,组image.png个子载波导出一个物理资源块(PRB)。在 NR V2X SL 中,image.png 指的是一个子通道中包含多少 PRBs,它可以等于10、12、15、20、25、50、75或100。每个 PRB 可以包含大量的比特、image.png ,这些都依赖于 MCS。对于 SL,PSSCH 由旁路控制信息(SCI)分配。PDSCH 表可用于 MCS 指数0≤ IMCS ≤27[16]。

UE 应首先确定一个 PRB 中的 image.png数目。参考文献[16]中的定义,公式可以定义为:

640.png


如前所述,对于每个 RB 中的子载体,image.png 应该是12。具有给定公式 sl-length thSLmarks-2的image.png ,返回值12。 image.png符号为0,因为广播模式不需要任何反馈信息,因此从较高层来看,参数 sl-PSFCH-Period 为0。 image.png都是0。参考[16]定义,image.png 采取12。因此,公式3可以计算为132。这意味着在一个 PRB 中,为 PSSCH 分配了132个 REs。根据上面表1,不同 μ 决定子载波间距和最大载波带宽image.png。在频率轴上,它定义了一个时隙有多少个 PRBs。它可以定义为:

640.png


根据不同的 MCS 指数,频谱效率会有所不同。对于每个包的固定有效载荷,在一个插槽中定义一个子通道可以精确地满足一个包的要求。如果最初的 BSM 有效负载image.png为300字节,那么包含头信息的包的总有效负载将为350字节,因为头大小为50字节。这里应该定义一个包传输需要多少个 PRBs。

640.png


image.png是可以在 MCS 表中找到的调制顺序。显然,添加 Ledger 概念会牺牲一些通道资源。然后,根据本文的设计,可以估计这种资源损失的近似程度。如果原始 BSM 包包含300字节的信息,那么新的 Ledger 包应该是350字节,也就是350字节 = 350 * 8 = 2800位。通过应用固定的调制参数: MCS 选择1,即 QPSK。通过 MCS 表,得到 η = 0.2344。参照上面公式5,很容易得到2800.2/0.2344 = 5972.69624573,并选择上限为5973。之后,可以计算出发送一个带有Ledger的新包需要使用多少个 RPBs,即5973/132 = 46个 PRBs。


然后,在 SCS = 15kHz 的情况下,通过选择数字 μ = 0,最大载波带宽为50MHz,1个时隙表示1ms。因此, image.png= (50 * 106)/(15 * 103)/12 = 277.7778,选择floor为277。只要计算每个时隙的 PRBs,就很容易知道每个时隙可以有多少个子通道,image.png,选择 floor = 6。因此,对于 RRI = 100ms,可以支持最多600辆汽车。


仿真



在仿真中,Ledger被设计成一个连接的结构。每个 Ledger 包包含上面图2所示的设计信息。这个模拟比较了原始的 BMS 软件包和 Ledger 设计软件包。它们都依赖于相同的流量负载并遵循 SPS 协议。模拟结果如下图3所示。


640.png


基于Ledger设计,第二个模拟是针对不同的交通负荷而设计的。模拟结果如下图4所示。


640.png


第一个仿真结果表明,基于 SPS 协议的原始 BSM 包(300字节大小相同)的碰撞概率基本相同。原因是 SPS 遵循随机选择,因此对于每个 SPS 周期,有一个机会(1-p)重新选择一个新的子信道,即使当前子信道中没有碰撞。在Ledger设计中,只有碰撞发生时才会出现重选概率。数学上,image.png。这意味着如果没有碰撞,p 只能保持为0,如果发生碰撞,则重新选择 p 为1。n是 SPS 周期数的值。


通过解码网络中共享的包,车辆可以检测是否与其他车辆发生碰撞。因此,通过仿真分析,很容易得出结论,如果有一个碰撞,碰撞车辆可以意识到一个 RRI 内的碰撞。仿真结果表明,碰撞车辆知道自己处于image.png的碰撞持续时间之间。image.png 是碰撞车辆广播其包的时间。第二个模拟(上图4)是基于Ledger设计的模拟。它显示了不同的交通负荷对系统性能的影响。可以观察到,交通负荷越高,收敛时间越长。但是,对于前5个 RRI,Ledger 设计的性能与原始 BSM 包相同,这一点并不明显。这是因为 SPS 协议的要求。对于每个 SPS 周期,RC 值控制每个周期的时间。RC 的范围是[5,15]。结果表明,在碰撞发生的情况下,前5个 RRI,非车辆可以终止碰撞。经过前5次 RRI 后,部分车辆开始重新选择以获得新的 SPS 周期。然后基于 Ledger 设计,保持概率 p 开始引导重选性能。碰撞车辆将开始重新选择一个新的资源尽快结束本期间。因此,在前5个 RRI 之后,碰撞概率开始快速下降。


保持概率 p 也表明,如果没有碰撞,那么值将为0。因此,一旦车辆没有发现碰撞,它不会改变。换句话说,其他车辆将永远不会重新选择这个资源。未来的碰撞将被避免,连续的碰撞将被避免。因此,从仿真结果来看,在一些 RRI 之后,碰撞概率收敛到零。固定资源将被每辆车使用,直到它离开当前的网络。


结论



通过Ledger共享,各车辆可以实现全双工模式,从而在一个 RRI 时间内获得碰撞信息。在 SPS 周期结束时,车辆可以有一个明确的决定,重新选择一个新的资源或继续使用当前的一个。这种工作模式使碰撞中的每个车辆能够尽快选择新的资源,从而避免了连续碰撞的现象。当然,如果最初的选择没有发生碰撞,那么在不改变资源的情况下就不会有任何碰撞的可能性。经过一定的 RRI 后,碰撞概率最终收敛到0。对于以后的工作,这个 Ledger 设计可以改进为使用基于 RRI 的重选性能。SPS 协议限制车辆在 SPS 期结束后重新选择。然而,车辆可以在一个 RRI知道它是否碰撞与否。在SPS 期间,其余的 RRI 将是浪费时间。如果可以在一个 RRI 中重新选择一个不同的资源(如果发生碰撞的话) ,则收敛时间可能会短得多。


参考



[1] A Light-Weight Communication-Efficient Data Sharing Approach in 5G NR V2X


原文首发微信公众号【自动驾驶之心】:一个专注自动驾驶与AI的社区(https://mp.weixin.qq.com/s/NK-0tfm_5KxmOfFHpK5mBA

相关文章
|
存储 编解码 缓存
视频平台技术成本控制的量化方法
在线视频平台为用户提供服务时,面临的一个严重的挑战是,如何保证在为用户提供流畅 且稳定播放服务的前提下,尽量降低整体运营成本。本篇文章将围绕上述问题,重点讨论技术实践中的成本控制手段。
视频平台技术成本控制的量化方法
|
1月前
|
SQL 缓存 监控
接口性能倍增记:一次成功的优化实践
在软件开发过程中,接口性能优化是提升用户体验和系统稳定性的关键环节。本文将分享一次接口优化的成功案例,从问题发现到解决方案实施,详细介绍我们的优化过程和成果。
28 0
|
4月前
|
数据采集 人工智能 算法
谷歌发布大模型数据筛选方法:效率提升13倍,算力降低10倍
【8月更文挑战第31天】近日,谷歌发布了一项名为多模态对比学习联合示例选择(JEST)的研究成果,旨在优化大模型预训练过程中的数据筛选。JEST通过联合选择数据批次而非独立选择示例,利用多模态对比目标揭示数据间的依赖关系,提高了学习效率。实验表明,JEST能显著加速训练并降低计算成本,最多减少13倍迭代次数和10倍计算量。这一成果有望推动大模型预训练更加高效和经济。论文详情见:https://arxiv.org/abs/2406.17711。
74 2
|
4月前
|
存储 缓存 弹性计算
解读大模型时代的数据加速:性能、稳定性与一致性一个都不能少
本文探讨了在大模型时代,如何在数据加速中平衡性能、稳定性和一致性,通过阿里云ACK Fluid的实例,详细解析了优化策略与最佳实践,旨在帮助用户高效应对数据管理挑战。
|
5月前
|
开发框架 Cloud Native Devops
对抗软件复杂度问题之软件复杂度的增加会导致研发效率降低,如何解决
对抗软件复杂度问题之软件复杂度的增加会导致研发效率降低,如何解决
|
5月前
|
定位技术 UED 开发者
对抗软件复杂度问题之软件的复杂度增长会带来什么问题,如何解决
对抗软件复杂度问题之软件的复杂度增长会带来什么问题,如何解决
|
7月前
|
移动开发 测试技术 Android开发
构建高效Android应用:从优化用户体验到提升性能表现
【5月更文挑战第15天】 在移动开发领域,一个成功的Android应用不仅需要具备吸引用户的功能,更应提供流畅和高效的用户体验。随着技术的不断进步,开发者面临着将先进技术集成到现有架构中以提高应用性能的挑战。本文将深入探讨如何通过最新的Android框架和工具来优化应用性能,包括对UI的响应性、内存管理以及多线程处理等关键方面的改进,旨在帮助开发者构建出更加强大、快速且稳定的Android应用。
|
Serverless
函数计算减少冷启动对性能的影响
函数计算减少冷启动对性能的影响
382 1
|
数据采集 机器学习/深度学习 存储
量化高频交易系统策略模型开发搭建
量化高频交易系统策略模型开发搭建
|
算法 小程序
软件复杂性表现,如何计算?
软件复杂性度量的参数很多,主要有: • 规模,即总共的指令数,或源程序行数。 • 难度,通常由程序中出现的操作数的数目所决定的量来表示。 • 结构,通常用于程序结构有关的度量来表示。 • 智能度,即算法的难易程度。
303 0