1.本发明属于车联网技术领域,尤其涉及一种基于车辆边缘计算的任务卸载方法及系统。
背景技术:
2.本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
3.随着无线通信和人工智能的迅速发展,车辆越来越互联和智能化并形成了车联网(iov),在iov系统中,数据计算量迅速的增大以及对时延的要求更高,例如自动驾驶、实时导航、信息娱乐服务。因此,这些资源密集型需求对处理能力有限的车辆构成了巨大的挑战。
4.针对上述挑战,将车辆处理不了的计算密集型任务卸载到其他强大的服务器上是一个必然的选择。比较成熟的解决方案是移动云计算(mcc)。移动云计算凭借其高效的计算能力、海量的存储资源使全球数十亿用户受益。然而,由于云服务器和移动用户之间的物理距离太长产生大量的长传播延迟,以及大量的用户接入云端会相互竞争频谱资源,导致车辆的许多实时应用的不可行。
技术实现要素:
5.为了解决上述背景技术中存在的技术问题,本发明提供一种基于车辆边缘计算的任务卸载方法及系统,能够充分利用边缘设备资源,实现车辆终端的高效计算。
6.为了实现上述目的,本发明采用如下技术方案:
7.本发明的第一个方面提供一种基于车辆边缘计算的任务卸载方法,其包括:
8.获取某时隙内用户车辆的基本信息和任务属性信息,待服务车辆、基站和路边单元的基本信息、计算能力和状态信息;
9.基于用户车辆的任务属性信息,以及待服务车辆的状态信息和计算能力,在待服务车辆中筛选出服务车辆;
10.基于用户车辆的基本信息和筛选出的服务车辆的基本信息,构建用户与服务车辆权重矩阵;
11.将权重矩阵、任务属性信息、以及服务车辆、基站和路边单元的基本信息、计算能力和状态信息,输入强化学习网络,得到用户车辆的任务卸载方式。
12.进一步的,所述服务车辆需要在所述时隙内不产生任务,且在所述时隙内能够缓存的最大任务个数与已经缓存的任务个数的差值大于阈值。
13.进一步的,所述用户与服务车辆权重矩阵中的每个元素为一个用户车辆与一个服务车辆的标志位;
14.若某标志位对应的用户车辆与服务车辆之间的距离在预设范围内,则该标志位的值加1;
15.若某标志位对应的用户车辆与服务车辆之间的速度之差在预设范围内,则该标志位的值加1;
16.若某标志位对应的用户车辆与服务车辆之间的行驶方向一致,则该标志位的值加1。
17.进一步的,所述强化学习网络以最小化时延成本、通信成本和计算成本为目标函数。
18.进一步的,所述强化学习网络在训练过程中,基于均方误差损失函数,利用梯度下降法,更新参数。
19.进一步的,所述任务属性信息包括任务的数据复杂度、最大时延要求和数据量长度。
20.进一步的,所述待服务车辆的状态信息包括待服务车辆的处理任务的能力以及待服务车辆处理器转一周所需要的时间;
21.所述基站的状态信息包括基站的处理任务的能力以及基站处理器转一周所需要的时间;
22.所述路边单元的状态信息包括路边单元的处理任务的能力以及路边单元处理器转一周所需要的时间。
23.本发明的第二个方面提供一种基于车辆边缘计算的任务卸载系统,其包括:
24.数据获取模块,其被配置为:获取某时隙内用户车辆的基本信息和任务属性信息,待服务车辆、基站和路边单元的基本信息、计算能力和状态信息;
25.服务车辆筛选模块,其被配置为:基于用户车辆的任务属性信息,以及待服务车辆的状态信息和计算能力,在待服务车辆中筛选出服务车辆;
26.权重矩构建模块,其被配置为:基于用户车辆的基本信息和筛选出的服务车辆的基本信息,构建用户与服务车辆权重矩阵;
27.任务卸载模块,其被配置为:将权重矩阵、任务属性信息、以及服务车辆、基站和路边单元的基本信息、计算能力和状态信息,输入强化学习网络,得到用户车辆的任务卸载方式。
28.本发明的第三个方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述所述的一种基于车辆边缘计算的任务卸载方法中的步骤。
29.本发明的第四个方面提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的一种基于车辆边缘计算的任务卸载方法中的步骤。
30.与现有技术相比,本发明的有益效果是:
31.本发明提供了一种基于车辆边缘计算的任务卸载方法,其在待服务车辆中筛选出服务车辆后,考虑车辆的初始位置、行驶方向和车流量对车辆卸载的影响,并以最小化用户成本的目标,将优化问题表述为马尔可夫问题,将任务卸载到基站和部署在道路旁边的路边单元以及道路行驶中拥有多余资源的车辆,减少了成本,提高了用户服务质量。
附图说明
32.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示
意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
33.图1是本发明实施例一的车辆-深度强化学习网络的结构图;
34.图2是本发明实施例一的车辆缓存队列模型图;
35.图3是本发明实施例一的任务卸载示意图。
具体实施方式
36.下面结合附图与实施例对本发明作进一步说明。
37.应该指出,以下详细说明都是例示性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
38.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
39.术语解释:
40.用户车辆:如图3所示,车辆有两种形态,一种是用户态,一种是服务态。这两种形态是可以互相转化的,且呈一定比例存在。车辆作为用户态时会产生不同要求的任务,需要选择合适的服务器(即边缘设备,包括基站(bs)、路边单元(rsu)、服务车辆)进行卸载处理以满足自己的需求。为了更好地描述车辆任务的产生、传递和计算,将时间划分为足够小的时隙tj。任务产生后选择服务器处理。
41.基站(bs):基站覆盖道路模型所有范围的信号区域,并连接了大型服务器,因此具备很强的计算能力。用户车辆可以通过lte蜂窝网络将任务卸载到基站上进行处理,但长期演进系统授权的频谱资源是昂贵且有限的,因此用户间存在竞争需要路边单元和服务车辆来分配合适的频谱资源给用户。
42.路边单元(rsu):路边单元可以处理区域内需要任务卸载的用户。根据常数de,将每条道路划分为等距离的区域,用ek表示,ek={e1,e2,...,ek}。路边单元连接一个小型服务器,模型中的路边单元总个数为n,用户车辆在路边单元所覆盖区域采用正交频分多址技术进行多路访问。
43.服务车辆:部分车辆解决自身任务前提下还有剩余资源没有被充分利用,使得对车联网任务卸载架构的性能提升带来很大的局限性。因此,将服务态的车辆作为边缘设备接入车联网为用户态的车辆提供边缘服务。需要根据用户需求选择合适的服务器进行任务卸载与处理。
44.实施例一
45.本实施例提供了一种基于车辆边缘计算的任务卸载方法;
46.本实施例提供的一种基于车辆边缘计算的任务卸载方法,包括以下步骤:
47.步骤1、获取某时隙内用户车辆的任务属性信息和基本信息,待服务车辆的基本信息、计算能力wv和状态信息,以及基站和路边单元的基本信息、计算能力和和状态信息。
48.其中,车辆的基本信息通过车辆传感器收集,车辆的基本信息包括车辆的速度、位置和行驶方向。基站和路边单元的基本信息为位置。
49.用户车辆的任务属性信息包括:任务的数据复杂度、数据量长度和最大时延要求。在时隙tj内,车辆的通信拓扑不发生改变。每一个时隙都可能有任务产生,将时隙tj内产生的任务分类,分为d类:用d={1,2,...d}表示,每一个车辆一个时隙最多产生一个任务,每种任务都有自身的属性,属性值用σ表示,i∈d,ai表示在tj时隙第i种任务的数据复杂度,bi表示在tj时隙第i种任务的数据量长度,表示在tj时隙第i种任务的最大时延要求,在时隙tj内每种类型的任务均以概率pi产生,∑
i∈d
pi=1。
50.待服务车辆的状态信息包括:服务车辆处理任务的能力、服务车辆处理器(cpu)转一周所需要的时间和已经缓存的任务个数。
51.基站的状态信息包括:基站处理任务的能力和基站处理器(cpu)转一周所需要的时间。
52.路边单元的状态信息包括:路边单元处理任务的能力和路边单元处理器(cpu)转一周所需要的时间。
53.基站和路边单元的位置、计算能力和状态信息存储于控制中心。
54.步骤2、将获取的数据输入车辆-深度强化学习网络(v-dqn),得到用户车辆的任务卸载策略,具体的:
55.步骤201、基于所有用户车辆的任务属性信息,以及待服务车辆的状态信息和计算能力,采用车辆自适应反馈算法(vaf)在待服务车辆中筛选出符合要求的服务车辆,并基于用户车辆的基本信息和筛选出的服务车辆的基本信息,对服务车辆进行优先级排序,生成用户与服务车辆权重矩阵,与当前时隙基站和rsu的状态信息以及用户车辆产生的任务属性信息一起传递到全局控制中心。
56.如图2所示,为了保证用户服务质量,利用一定的规则对车辆进行筛选,符合下列条件的车辆,才能作为服务车辆:车辆的计算能力是有限的,为了尽可能满足本地计算,在时隙tj不产生任务的车辆才能作为服务车辆;在时隙tj还有剩余计算能力(即ψ
v-ψv≥1)的车辆才能作为服务车辆。即,服务车辆需要在时隙tj内不产生任务,且在时隙tj内能够缓存的最大任务个数与已经缓存的任务个数的差值大于阈值。
57.根据每个车辆的计算能力以及所有任务类型中的最大延迟时间中最小的时间和最大的任务复杂度等距离划分为ψv个缓存空间,ψv=total。第v个待服务车辆的计算能力由wv表示,因为,知道每种任务类型的属性,通过max{ai}可以得到最大的任务复杂度,可以得到最小的时间延迟。
[0058][0059]
其中,v表示待服务车辆的数量,ai表示在tj时隙第i种任务的数据复杂度,表示在tj时隙第i种任务的最大时延要求,ψv是第v个待服务车辆能够缓存的最大任务个数,只有在当前时隙下ψ
v-ψv≥1的时候,第v个待服务车辆才能作为服务车辆,ψv表示当前状态下第v个待服务车辆已经缓存的任务个数。
[0060]
步骤202、将用户车辆和筛选出的服务车辆建立联系,通过比较两者的初始距离之差是否在一定的符合的范围内,速度的大小之差是否在一定的符合的范围内以及速度的方
向是否相同,其中一个条件满足则标志位 1,不满足则标志位-1,标志位的最大值为3,最小值为-3。将一个用户车辆所有的标志位作为该车辆的优先级),计算所有的服务车辆的优先级都被判断完成(即计算所有服务车辆与所有用户车辆之间的标志位),获得用户-服务车辆权重矩阵(用户与服务车辆权重矩阵)。即,用户与服务车辆权重矩阵中的每个元素为一个用户车辆与一个服务车辆的标志位;若某标志位对应的用户车辆与服务车辆之间的距离(位置之差)在预设范围内,则该标志位的值加1;若某标志位对应的用户车辆与服务车辆之间的速度之差在预设范围内,则该标志位的值加1;若某标志位对应的用户车辆与服务车辆之间的行驶方向一致,则该标志位的值加1。
[0061]
步骤203、将用户-服务车辆权重矩阵、用户车辆产生的任务属性信息以及当前时隙服务车辆、基站和路边单元的基本信息、计算能力和状态信息一起作为强化学习网络(dqn)的输入,得到用户车辆的任务卸载方式。
[0062]
用户车辆的任务卸载方式有三种,三种卸载方式分别时是卸载到基站、具体的路边单元和具体的服务车辆,对于每个用户车辆根据当前的状态输入,并结合贪婪策略选择概率较大的动作并执行。
[0063]
如图1所示,车辆-深度强化学习网络(v-dqn)的训练过程如下:
[0064]
(1)初始化车辆的信息包括初始位置,速度大小和方向和用户-服务车辆权重矩阵;初始化基站和路边单元的位置信息。车辆传感器收集到的车辆的速度方向和大小以及车辆的初始位置,控制中心的数据更新包括基站和所有的路边单元的位置信息更新,用户-服务车辆权重矩阵的初始化,基站,路边单元和车辆状态信息的初始化。
[0065]
(2)从控制中心的经验中继单元中随机抽取训练样本,即获得用户车辆的状态信息和用户车辆产生的任务属性信息以及基站,路边单元的状态信息。
[0066]
(3)采用车辆自适应反馈算法(vaf)筛选出符合要求的服务车辆,并得到用户-服务车辆权重矩阵;
[0067]
(4)将权重矩阵与用户车辆产生的任务属性信息以及当前时隙基站,路边单元的状态信息一起作为dqn的输入,通过奖励函数得到相应的回报值,同时获得新的状态输入;
[0068]
用户有减少时延和降低成本的要求,因此dqn以最小化时延成本、通信成本和计算成本为目标函数(奖励函数):
[0069][0070][0071]
其中,l
total
表示在tj时隙ek区域第i种任务时延成本总和,包括传输时延、计算时延、排队时延和回传时延;e
total
表示在tj时隙ek区域第i种任务通信和计算成本总和,包括
传输成本和计算成本;表示任务卸载到基站处理;表示任务卸载到用户车辆所连接第n个路边单元处理;表示任务卸载到第f个服务车辆进行处理;λ是时延成本和资源成本之间权重因子,λ∈[0,1],根据城市道路需求控制数值,特别地,当λ=0或λ=1时,线性组合变成仅是延迟和优化或仅是成本的优化,延迟和成本的线性组合形式被广泛使用。
[0072]
传输时延通过任务数据量和传输速率(香农公式)计算得到;计算时延通过任务复杂度和边缘设备的计算能力得到;等待时延通过边缘设备的状态值和计算能力得到;回传时延通过用户车辆和服务车辆的距离得到经过几个路边单元,然后通过经过每个路边单元需要消耗的时间计算得到(注:只有卸载到服务车辆有回传时延);传输成本通过传输时延和单位时间消耗的频谱成本计算得到;计算成本通过计算时延和单位时间边缘设备的计算成本得到。
[0073]
其中,边缘设备(服务车辆、基站或rsu)的状态值的计算方法为:在时隙tj,第f个服务车辆vf的状态值为其中,{ai}f表示卸载到第f个服务车辆的任务的数据复杂度集合,vf表示第f个服务车辆,f为筛选出的服务车辆的总量,rf表示第f个服务车辆处理任务的能力,τf表示在第f个服务车辆处理器(cpu)转一周所需要的时间;在时隙tj,基站的状态值为其中,{ai}0表示卸载到基站的任务的数据复杂度集合,r0表示基站处理任务的能力,也就是单位复杂度下的转数,τ0表示在基站下cpu转一周所需要的时间,只有一个基站;在时隙tj,第n个rsu的状态值rn={1,2,
…
,rn},其中,{ai}r表示卸载到第r个路边单元的任务的数据复杂度集合,rn表示第n个rsu,n表示rsu的总量,rr表示路边单元处理任务的能力,τr表示在路边单元下cpu转一周所需要的时间。
[0074]
限制条件(1)表示,任务的总消耗时延t
total
要小于任务的最大延迟时延限制条件(2)表示,三种卸载方式只能选择一种,三种卸载方式分别时是卸载到基站,路边单元和具体的服务车辆;限制条件(3)表示,三种卸载方式只能选择一种进行卸载;限制条件(4)表示,服务车辆回传的跳数不能超过最大跳数限制条件(5)表示,任务i属于集合d,路边单元n属于集合n,服务车辆f属于集合f。通过最大延迟时延的约束可以保证用户车辆任务的正常完成,卸载方式的约束可以保证任务能够被处理并且不会产生冗余工作量,服务车辆回传跳数的约束下可以在保证回传时延不会无限增加。当在约束条件内,任务时间和能量成本越小的情况下,系统越会产生一个较大的奖励回报,否则当超过约束范围,系统将会收到很小的奖励值。通过不断地累积学习,用户车辆将会学习出能最小化任务时间和能量成本的卸载策略。
[0075]
将问题规划成马尔可夫问题,在v-dqn网络中,将时延和成本作为v-dqn网络中的奖励函数,以找到任务的最佳卸载策略,主要步骤如下:
[0076]
卸载策略取决于边缘服务器的状态和当前车辆的网络特点,因此目标函数和约束
条件转化为马尔可夫决策过程,并采用马尔可夫方法对的目标函数进行求解。马尔可夫由状态空间和动作空间组成。卸载系统基站、路边单元和服务车辆的状态空间定义为如果用户选择服务车辆作为卸载目标,则会结合提出的车辆自适应反馈算法提供的服务车辆状态进行任务卸载(即用户车辆根据优先级进行任务卸载)。动作空间用来表示,即描述选择服务器的行为。表示任务卸载到基站,否则务卸载到基站,否则表示任务卸载到第n个rsu,否则表示任务卸载到第f个服务车辆,否则
[0077]
在当前时隙tj,执行动作空间中的动作,状态从转移到另一个状态并获得即时成本(回报值)
[0078][0079]
其中,表示在状态下执行动作空间时,在最大延迟时间约束下的平均成本消耗,ek={e1,e2,...,ek}表示道路中等距离的区域,i={1,2,
…
,d}表示d种任务类型,在时隙tj内每种类型的任务均以概率pj产生,∑
i∈d
pi=1,l
total
表示时延成本总和,e
total
表示通信和计算成本总和。
[0080]
为了最小化卸载系统的成本,需要获得一个最优的卸载策略。
[0081][0082]
其中,δ是折扣因子。该策略是由各个时隙下的各个任务的卸载动作组成。用户很难知道状态转移的条件概率。因此,基于dqn的方法解决所考虑的网络卸载的问题。
[0083]
(5)将原状态输入执行的动作获得的回报新的状态一起发送到控制中心并存储,dqn网络(包括评价网络和目标网络)在控制中心被训练。在时隙tj,将马尔科夫决策过程中的状态空间作为v-dqn算法的输入,应用∈-greedy策略来选择动作空间执行动作后,状态从转移到另一个状态并获得即时成本基于成本根据状态和动作输出值更新评估网络的参数,评估网络:
[0084][0085]
其中,就是在tj时刻的状态下,采取动作能够获得收益的期望的推导,e表示求期望值,δ是折扣因子。使用基于均方误差的损失函数来评估训练评价网络,经过多次试验后,以输出最佳值均方误差损失函数表示为:
[0086][0087]
其中,是评估网络的参数,是代表评估网络优化对象的目标值,然而,如果使用相同的dnn来获得目标值,则优化对象将在每次迭代中随参数μ而改变。dqn网络基于均方误差损失函数,利用梯度下降法,更新参数。因此,采用与评估网络结构相同的目标网络,只是目标网络μ-的参数更新t
copy
时隙晚于评估网络的时隙。可以计算目标值
[0088][0089]
其中,μ-表示上一个时隙评估网络的参数,此外,在有监督学习中,输入数据是独立的,而网络的观测数据是连续的。基于此,在dqn框架下设置了一个经验池。对于这两个标准,可以将环境和试剂相互作用产生的过渡样本收集到经验池的内存中。在训练过程中,在每次迭代中随机捕获一小批经验池内存的转换,以打破数据集的依赖性。通过q值网络与环境实时交互,利用评价行为好坏的奖惩机制进行反馈,从而到达到理解信息,获得最优卸载策略。
[0090]
(6)从控制中心的经验中继单元中随机抽取训练样本,通过损失函数训练网络参数,不断重复步骤(2)-(5),直至dqn网络达到收敛,学习过程结束。
[0091]
本发明中,基站和部署在道路旁边的路边单元以及道路行驶中拥有多余资源的车辆都是能够为用户车辆提供计算、通信和存储服务的设备。重点解决动态移动的车辆距离不断更新以及从满足条件的服务车辆中选择最优服务车辆的问题,将道路车辆归类之后考虑车辆的初始位置、行驶方向和车流量对车辆卸载的影响,提出了一种车辆自适应状态反馈(vaf)算法;另外,为实现最小化用户成本的目标,将优化问题表述为马尔可夫问题,提出一个基于vaf算法和强化学习网络的v-dqn网络案明,减少了成本,提高了用户服务质量。
[0092]
实施例二
[0093]
本实施例提供了一种基于车辆边缘计算的任务卸载系统,其具体包括如下模块:
[0094]
数据获取模块,其被配置为:获取某时隙内用户车辆的基本信息和任务属性信息,待服务车辆、基站和路边单元的基本信息、计算能力和状态信息;
[0095]
服务车辆筛选模块,其被配置为:基于用户车辆的任务属性信息,以及待服务车辆的状态信息和计算能力,在待服务车辆中筛选出服务车辆;
[0096]
权重矩构建模块,其被配置为:基于用户车辆的基本信息和筛选出的服务车辆的基本信息,构建用户与服务车辆权重矩阵;
[0097]
任务卸载模块,其被配置为:将权重矩阵、任务属性信息、以及服务车辆、基站和路边单元的基本信息、计算能力和状态信息,输入强化学习网络,得到用户车辆的任务卸载方式。
[0098]
此处需要说明的是,本实施例中的各个模块与实施例一中的各个步骤一一对应,其具体实施过程相同,此处不再累述。
[0099]
实施例三
[0100]
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例一所述的一种基于车辆边缘计算的任务卸载方法中的步骤。
[0101]
实施例四
[0102]
本实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施例一所述的一种基于车辆边缘计算的任务卸载方法中的步骤。
[0103]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0104]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0105]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0106]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0107]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random accessmemory,ram)等。
[0108]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
转载请注明原文地址:https://tc.8miu.com/read-872.html