基于BP和RBF神经网络的C-V2X无线资源管理*
2023-11-25张陶冶
冯 毅,葛 宁,张陶冶
(1.清华大学 电子工程系,北京 100091;2.中国联合网络通信有限公司智网创新中心,北京 100037)
0 引 言
近年来,智能汽车发展迅速。通过搭载摄像头、雷达等传感器,车辆具备了环境感知能力,并通过计算单元实现智能决策,提高了驾驶的安全性。智能汽车与通信技术相融合,实现智能信息交换共享,一方面扩大了汽车信息感知范围,另一方面加速了汽车网联进程,彻底改变了交通出行方式[1]。由此可见,通信技术在智能网联汽车的发展中具有重要的作用,各种标准化组织一直致力于定义车联网通信规范,从而实现车辆与周围环境及云服务器智能互联。文献[2-3]提出了蜂窝车联网(Cellular Vehicle-to-Everything,C-V2X)的概念和关键技术,该技术能够在没有蜂窝网联覆盖的情况下,实现车辆与周围的车、基础设施、网络和行人高可靠低时延的信息交互。
C-V2X为了保证车辆在没有基站覆盖的情况能够正常通信,无线资源的选择是由车辆自主决定的,遵循基于感知的半持续调度(Semi-persistent Scheduling,SPS)。车辆对资源池进行感知,标识干扰最小的资源,并在其中随机选择作为发送资源。一旦选择资源,将进行周期性的占用,这将有利于邻居车辆感知并避开已被占用的资源。然而在真实交通场景下,通信的能效始终受到周围车辆、建筑物等障碍物的限制[4],导致车辆的感知范围有限,当两辆车无法感知到彼此时可能选择相同的资源,那么处于两车中间位置的车辆在接收信号时将受到较大的干扰,从而导致丢包,这种错误被称为隐藏终端。由于对资源的周期性占用,资源的碰撞可能导致持续数秒的数据包丢失,从而对道路安全构成威胁。实际上,如果丢失了几个连续的数据包,这意味着周围车辆将无法了解到它这段时间的位置和速度等信息[5]。隐藏终端是由于资源的不合理复用所导致的,使用相同资源的终端未能保持适当的距离,而仅依靠信道感知难以实现资源的合理复用。
在C-V2X中,研究资源管理方式以减少终端间相互干扰是当前热门的研究方向,此类研究目前主要分为改进资源选择方式和划分资源池。文献[6-7]针对车联网中资源选择参数(资源占用周期、资源保留概率等)进行研究,并给出具有较优性能的建议参数设置。文献[8-11]对C-V2X资源选择方式进行改进,利用车辆之间的信息交互,减少资源选择的不确定性并避免连续资源碰撞。然而车辆之间的交互信息主要用于承载车联网业务消息,因此用于辅助资源选择的数据位是有限的,难以解决感知受限和资源复用不合理的问题。文献[12-15]通过设计车联网资源池的划分方式,以实现更合理的资源复用,减少车辆间干扰:文献[12]中针对城区场景和高速场景将资源池进行了划分,处于不同车道的车辆使用不同的资源池,并根据流量密度分配更多的灵活子资源池;文献[13]中针对高速公路场景,基于行车方向将资源池划分为2个子资源池,以减少相反方向车辆用户之间的潜在干扰;文献[14]基于网络对于车辆位置的了解,提出了一种基于重用概念的距离算法;文献[15]为车-车通信中集群重叠部分设计了并行和连续资源分配的通信。以上研究均提出算法对资源池进行划分,和目前标准中的方案相比,资源分配更为合理,减少了一定的资源碰撞。然而,这些方案的缺点是当区域中的车流量变大后才分配更多资源,资源分配存在滞后性。由于车流量变化迅速,往往在分配更多资源前已经发生了资源的碰撞。车联网数据包发送频率一般为10 Hz,一段时间内不合理的资源分配将造成严重的丢包。
智能通信系统协作通信资源分配是目前发展的趋势,利用神经网络、机器学习是实现动态自适应资源分配的有效途径[16-17]。本文根据C-V2X通信系统中路侧单元(Road Side Unit,RSU)和车载单元(On Board Unit,OBU)之间的通信消息,采用神经网络进行短时交通流预测(5~15 min),并根据预测结果划分无线资源池,将有效提升资源分配的合理性。
1 C-V2X无线通信技术
C-V2X基于单载波频分多址,时域上每10 ms划分为一个无线帧,每个无线帧由10个长度为1 ms的子帧构成,一个子帧包含2个长度为0.5 ms的时隙,一个时隙中包含7个符号;频域上子载波间隔为15 kHz。C-V2X定义时域上1个时隙(0.5 ms)与频域上的12个子载波(180 kHz)组成1个资源块(Resource Block,RB),多个资源块可组成1个子信道。子信道是基本的资源单位,车辆发送资源占用1个或多个子信道。
C-V2X模式4在资源选择中采用分布式资源调度方式,定义了基于感知的半持续调度。当车辆需要选择发送资源时,需要对资源池进行感知,从而避开已被占用的资源,选择未被占用的资源进行周期性占用。具体而言,车辆除了发送消息时,其余时间都将保持接收状态,并更新资源池的感知结果。当车辆需要选择新的资源时,将首先根据感知结果排除已被其他车辆占用的资源,并选出资源池中接收信号强度指示最小的20%资源,在这些资源中随机选择作为发送资源进行周期性占用。同时,车辆根据消息频率10 Hz,20 Hz和50 Hz,在区间[5,15],[10,30]和[25,75]内随机选择占用此资源的次数。当达到占用次数时,车辆根据资源保留概率确定是否继续使用该资源,若继续使用,则重新设定占用次数;若不使用,则重新选择资源。然而,尽管各车辆对信道进行了感知且资源选择引入了随机性,但仍存在邻近终端同时选择相同资源的情况,这将在接收端造成较大的干扰而无法正常接收,此类问题被称为资源碰撞。
为了实现更加合理的资源复用,考虑到车联网节点可以直接获取经纬度等位置信息,C-V2X系统设计了基于地理区域的资源分配方式,为每个区域配置不同的资源池。通过将基本区域重复配置的方式,遍布整个通信区域。该资源分配方式目的是利用车辆地理位置信息,实现资源的空分复用。但其存在以下问题:首先,网格式的划分不符合实际道路情况,正常情况下车辆只会在道路上行驶,而这样的划分方式给非道路区域也分配了资源,显然是不合理的,造成了资源的浪费;其次,该方式不能随着车流量的变化动态调整资源分配,即使在车流量增大后调整,资源分配也存在滞后性。因此,目前标准中规定的方法并不能有效减少资源碰撞的问题。
2 基于神经网络的V2X无线资源管理
2.1 系统模型
车辆的时空分布具有不均衡的特点,但在一定区域内不同时段的车辆分布具有一定的规律性,并且车联网路侧单元RSU拥有其覆盖区域内车辆信息[18],因此RSU可以对其所在区域进行短时交通流预测并调整资源分配情况。针对交通流具有随机性、动态性和自组织性等特点,而神经网络可以实现实时预测,并具有鲁棒性以及容错性,本文提出一种基于神经网络的V2X资源分配方法,利用OBU与RSU的车联网通信消息预测出未来时刻RSU覆盖范围内的车辆数,根据预测结果区分热点RSU与非热点RSU,动态地为热点RSU范围内车辆分配更多的资源,实现高效合理的资源复用。
在车联网通信中,OBU将周期性广播基本安全消息[19],将自身的位置、方向和车速等信息告知周围的终端,因此RSU能够收集道路外部环境和车辆数据。考虑将RSU收集到的数据分类为外部影响因素文件(时间、天气、节假日等情况)和车联网数据文件(历史时刻该区域以及周边区域车辆密度、车速等信息),利用这些数据训练神经网络,通过神经网络预测未来时刻该RSU覆盖区域内车辆密度情况。根据预测的未来车辆密度情况,区域内RSU进行自适应分簇,在簇内各区域分配使用不同的资源,簇间可复用相同的资源,由此可实时保证资源的最大复用距离,有效减少终端间的相互干扰,提高系统资源的利用率。该机制流程如图1所示。
图1 基于神经网络的V2X无线资源分配流程
2.2 基于神经网络的未来时刻车流密度预测
本文针对的场景为高速道路场景,选取的车流数据来源于US101-North District 7高速公路中长约1.5 km的一段,数据时间为2017年9月1—30日9—21点,数据内容包含每个时刻该段公路中各个RSU覆盖内的车流密度、车速情况、日期以及天气情况等。场景示意图如图2所示,RSU 1~5位于所选区域以内,为了避免数据收集的局限性和提升预测的准确性,将选定区域外的RSU 6~9收集到的数据也作为车辆密度预测的依据。
图2 高速场景RSU分布与车流示意图
在完成数据的获取后,应当进行数据的清洗:首先,从数据中截取特定路段的信息;接着,去除或补全有缺失的车流信息;其次,去除或修改其中格式错误的车流信息;最后对其进行一致性检查。本文分别选取BP神经网络和RBF神经网络,将t时刻各路侧单元(RSU 1~9)覆盖范围内的车辆数目,以及天气、日期、节假日等情况,作为神经网络输入数据集,将t+n时刻选取路段内的路侧单元(RSU 1~5)覆盖范围内的车辆数作为神经网络输出数据集,n选择10 min。具体来说,在神经网络输入层中设置22个节点,第1个节点输入当前时间,第2~10个节点输入RSU 1~9覆盖范围内平均车速情况,第11~19个节点输入RSU 1~9覆盖范围内的车流密度情况,第20个节点输入当前是否处于假期,第21个节点输入当前天气情况,第22个节点输入当前气温;考虑在输出层设置5个节点,第1~5个节点分别输出预测10 min后RSU 3~7覆盖范围内的车流密度情况。
综上所述,本文分别选取BP(Back Propagation)神经网络和RBF(Radial Basis Function)神经网络,均采用全连接和1层隐含层的方式,输入层节点数为22,输出层节点数为5,隐含层节点数根据所选取神经网络的预测性能确定,所采用的神经网络结构如图3所示。
图3 本文神经网络结构
2.2.1 BP神经网络预测
BP神经网络无需提前获取输入与输出之间的关系,其采用误差逆向传播算法[20],通过梯度搜索使得预测值和期望值之间的误差符合设定的目标。在训练前,需要将数据通过下式进行归一化处理:
(1)
式中:max(x)为输入数据中的最大值;min(x)为输入数据中的最小值。
在数据进行归一化处理之后,将通过网络的输入层进入隐含层,再由隐含层进入输出层中,最后得到网络的输出。输入层、隐含层以及输出层中的神经元均采用下式作为激活函数:
f(x)=1/(1+e-(WTx+B)) 。
(2)
(3)
(4)
式中:E(t)为网络误差;η∈(0,1)为步长因子;t为训练次数。
当网络的误差E(t)未达到预期目标时,将进入误差逆向传播的过程。将网络的总输出误差按照输出层-隐含层-输入层的顺序进行传播,在传播过程中将误差分给各个神经元,得到每个神经元上的误差:
(5)
(6)
(7)
δk=f′(xk)·[tk-f(xk)] 。
(8)
各神经元依据分得的误差更新其权值与阈值,从而减小网络的总误差,直到误差符合设定的目标后训练结束。输入节点数和输出节点数由训练对决定,分别是22和5。通过经验公式进行估算,并经过不断测试,选择误差最小时的隐含层设置,隐含层节点数为10。将数据的70%作为训练集,15%作为验证集,15%作为测试集,经过26次迭代得到最优均方差(Mean Squared Error,MSE)为87.36,预测性能如图4所示。
图4 BP神经网络预测误差分析
从图4的误差统计直方图可看见,80%以上的数据预测误差在[-5,8]以内,预测误差在合理的范围内,但总体MSE较大,预测存在一定的偏差。
2.2.2 RBF神经网络预测
RBF神经网络是一种具有3层结构的神经网络,分别为输入层、隐含层和输出层[21]。将输入层的数据通过以下非线性变换后输入至隐含层中:
(9)
式中:X=[x1,x2,…,xn]T为RBF神经网络的输入向量;中心值矩阵C维度为n×m,C=[c1,c2,…,cj,…,cm];cj=[c1j,c2j,…,cij,…,cnj]T和bj分别是隐含层第j结点的中心向量的宽度。
将隐含层数据通过以下线性变换后输入至输出层中,其输出为
(10)
式中:Wi=[wi1,wi2,…,wim]T为网络的权值向量;H=[h1,h2,…,hm]T为高斯核函数。
在训练神经网络前,需要设置神经网络相关参数,此处设置目标均方误差为50,最大隐含层节点上限设为1 000,每次迭代增加节点数为1,径向基扩展速度设为50,经过200次迭代得到MSE为51.44,预测性能如图5所示。
图5 RBF神经网络预测误差分析
从图5的误差统计直方图可看出,75%以上数据预测误差在[-4,6]以内,预测误差在合理的范围内。
2.2.3 神经网络预测性能分析
使用测试集对两种神经网络的性能进行验证,分别使用平均误差(Mean Error,ME)、均方根误差(Root Mean Squared Error,RMSE)以及拟合优度R2进行衡量[22]:
(11)
(12)
(13)
式中:yi为测试集第i个预期输出;f(xi)为神经网络对测试集第i个输出的预测值;n为测试集的输出总数。
BP神经网络平均误差为10.20,RMSE为11.21,拟合优度为0.783,预测存在一定的误差;RBF神经网络平均误差为7.13,RMSE为8.86,拟合优度为0.899,其预测性能优于BP神经网络。然而,BP神经网络的训练仅需要2.67 s,RBF神经网络则需要39.52 s。图6为两种神经网络预测性能对比。
图6 神经网络预测性能对比
2.3 基于未来车流密度的RSU自适应分簇
在对车流密度进行预测后,需要依据各个RSU覆盖范围内未来时刻车流密度进行分簇,簇间复用相同的资源池,簇内各RSU覆盖内分配不同的资源池,以达到降低终端间干扰和提升通信可靠性的目的。分簇的依据为预测V2X通信将占据资源池的比率,若信道繁忙程度低,则将所有RSU分为一簇;若繁忙程度高,则依据占用情况进行分簇。由于在簇之间复用相同的资源池,如果簇的数量过多,那么簇的覆盖范围较小,从而导致不同簇内复用相同资源的车辆未能保持适当的距离,并不能起到减少干扰的作用。考虑到车联网覆盖需求一般为300 m[3],因此理想情况下资源的复用距离应大于600 m,并且选定区域的范围为1 500 m,因此选择最大分簇数量为3。
本文采用以下的分簇方式:当RSU覆盖区域内车辆使用的资源小于资源池的50%时,此时整个区域内的RSU分为1簇;当车辆使用的资源大于资源总数的50%但小于资源总数时,此时将整个区域内的RSU分为2簇;当车辆平均使用的资源大于资源总数时,此时将RSU分为3簇,并且要求各簇具有相近的车辆总数。分簇完成后,在簇内根据各RSU覆盖区域车流密度的比例分配相应的资源块。分簇算法流程如图7所示。
图7 自适应分簇算法流程
选取的路段内各个RSU依据神经网络预测得到的结果进行自适应分簇,保证每个簇内车载单元数目在合理范围内。如图8所示,根据预测的车流密度情况,在自适应分簇阶段,将RSU1、RSU2、RSU3分为一簇,将RSU4和RSU5分为另一簇。
图8 RSU分簇示意图
在RSU分簇完成后,为了减少终端间的相互干扰,在簇内为各个RSU分配不同的资源;为了提升资源的利用率,簇间可复用相同的资源。如图9所示,簇1和簇2复用相同的资源池,在簇内依据各个RSU未来时刻车流密度预测值,给覆盖区域内的OBU分配合理的资源。
图9 簇内资源分配示意图
3 仿真结果分析
本文通过 Matlab性能分析模型[23]仿真基于BP和RBF神经网络预测结果的资源管理算法,并将仿真结果与标准中SPS算法、文献[12]中算法进行了对比。在仿真中,信道模型选取Winner+ B1模型[24],带宽为10 MHz,子信道数量为2,每个子信道中包含25个资源块(Resource Block,RB)。车联网消息选取具有固定大小和周期性发送特点的基本安全消息,数据包发送频率为10 Hz,其大小选取300 B[25]。SPS设置感知窗口为1 000 ms,重选计数器RC的范围为[5,15],资源保留概率设置为0。交通场景为高速直道场景,道路总长为3 km,道路中每隔300 m部署1个RSU,共部署9个,交通密度设为每公里[100,200]辆车。仿真参数具体配置如表1所示。
为了验证所提出方案的有效性,本文选取数据包碰撞数和数据包接收率作为车联网通信可靠性的衡量指标。
3.1 数据包碰撞数
图10和图11分别以折线图和柱状图的形式呈现了300 m接收范围内车辆密度对应的资源碰撞数,从图中可以看到SPS和文献[12]方案的资源碰撞都随着车辆密度的增大而显著提升,而本文方案能够有效减少交通拥塞情况下的资源碰撞。因此,在车辆密度更高的情况下,本文所提两种方案较其他方案减少了更多的数据包碰撞。
图11 不同方案下数据包碰撞数柱状图
3.2 数据包接收率
数据包接收率是衡量车联网通信可靠性的重要指标,本节在不同交通流密度下对各方案接收范围500 m内的收包情况进行分析。相关研究表明,车流量较低时,标准中SPS方案具有较好的覆盖,该情况下本文分簇方案将整个区域内终端分为一簇,性能与SPS相同。本文方案主要针对车流量较高情况下,通过车流量预测并依据结果进行自适应分簇,从而减小车联网终端间的干扰,因此本节主要仿真车流量较高的情况。
图12给出了车辆密度为100 vehicle/km时的仿真结果,依据本文分簇算法,将区域内终端分为2簇。在200 m范围内,本文使用的两种神经网络方案以及文献[12]中方案的收包率相同,均优于SPS方案。当大于250 m范围时,文献[12]方案的性能下降显著,这由于其按车道进行资源池划分,能够减少同时资源重选所导致的碰撞问题,并不能减少隐藏终端所导致的碰撞问题,且资源分配具有滞后性,因此当收发距离较远时,存在较多隐藏终端导致了严重的干扰。而本文方案按RSU覆盖范围进行划分,并通过自适应分簇有效提升资源的复用距离,有效减少了隐藏终端所导致的干扰,收包率较文献[12]方案提升了6%,较SPS方案提升了10%。RBF神经网络方案性能略优于BP神经网络,这是由于BP神经网络预测误差大于RBF神经网络。
图12 不同方案下收包率曲线(车流密度100 vehicle/km)
图13给出了车辆密度为150 vehicle/km时的仿真结果,依据本文分簇算法,将区域内终端分为3簇。由于本文方案在同一簇内并不能有效减少同时资源重选造成的碰撞,在200 m范围内文献[12]中方案与本文方案性能相近。当接收距离为300 m时,本文RBF神经网络方案收包率为0.82,较文献[12]方案提升10%,较SPS方案提升14%,有效保证了通信的可靠性,提升了覆盖距离。
图13 不同方案下收包率曲线(车流密度150 vehicle/km)
图14给出了车辆密度为200 vehicle/km时的仿真结果,依据本文分簇算法,将区域内终端分为3簇。在此情况下,区域内车辆拥塞情况严重,随着接收距离的增大,隐藏终端随之增多,导致通信性能显著下降。当接收距离为300 m时,SPS方案收包率为0.55,文献[12]方案为0.62,本文BP神经网络方案为0.71,RBF神经网络方案为0.76。BP神经网络收包率比RBF神经网络低5%,这是由于在车流量较高的情况下,预测误差将导致簇的划分不符合实际交通情况,从而造成不合理的资源分配。
图14 不同方案下收包率曲线(车流密度200 vehicle/km)
3.3 计算复杂度
本文方案采用神经网络进行短时交通预测,因此较基于感知的SPS方案和文献[12]方案,引入了神经网络预测的复杂度O(n1×n2+n2×n3)。其中,n1为输入层节点数,数值为22;n2为隐含层节点数;n3为输出层节点数,数值为5。由于本文采用的RBF神经网络隐含层节点数高于BP神经网络,故RBF神经网络方案计算复杂度高于BP神经网络。本文方案利用路侧设备RSU进行车流量预测,并未增加车载终端OBU的计算复杂度,故计算复杂度在可接受的范围内。
4 结束语
针对C-V2X模式4中资源复用不合理的问题,本文提出了一种基于神经网络的V2X无线资源管理方式。通过利用V2X中RSU与OBU之间的通信消息,对未来时刻车流密度进行预测,RSU根据预测的结果进行自适应分簇,簇间可复用相同资源,在簇内进行资源池的划分。仿真结果表明,本文所提方案有效减少了数据包碰撞,保证了V2X通信的可靠性,提升了覆盖范围。
本文主要采用BP神经网络和RBF神经网络预测高速直道未来时刻的车流量,车流量的预测具有一定的复杂性,利用车联网通信消息辅助车流量预测应当得到重视,在下一步的研究中将考虑进一步提升车流量预测的准确性。本文主要通过研究车联网资源的划分解决隐藏终端的问题,下一步将在本文的基础上研究提升终端的感知性能与降低资源分配的不确定性,进一步提升通信的可靠性。