一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于边缘计算的车路协同车联网任务卸载与迁移方法

2022-07-16 12:22:47 来源:中国专利 TAG:


1.本发明涉及车联网和边缘计算的技术领域,尤其涉及一种基于深度强化学习的车路协同车联网边缘计算任务卸载与迁移。


背景技术:

2.近十年来,随着5g的出现,车联网技术发展迅速,车载应用如自动驾驶、增强现实、车载音视频等的使用也越来越广泛。随之而来的是车载应用不断提升的计算复杂度和规模不断增加的数据量,车辆自身的计算能力已不足以支持如此复杂的应用的正常运行。因此,将边缘计算和车联网技术相结合为新型车载应用的实现提供了可能性。
3.边缘计算与传统的云计算相比,拥有不可替代的优势,针对云计算中传输延迟过高等问题,边缘计算将计算与存储推资源部署到网络边缘,为用户提供高带宽、低延迟、低能耗、高安全的计算服务;在车联网中,通常用路边单元作为边缘服务器,对于车辆产生的任务,可以选择卸载到计算能力更强的路边单元进行处理,以减轻车辆的计算负荷。
4.现有的基于边缘计算的车联网任务卸载方法仅考虑了利用边缘服务器的计算能力或仅考虑在本地和边缘服务器上处理任务,忽略了公路上其他车辆空闲的计算资源以及任务并行执行的可能性,然而提高计算资源的利用率是降低任务处理时延的有效途径。除此之外,边缘服务器与车辆有限的通信范围是任务卸载失败的主要因素。
5.在车联网领域中当前需要解决的一个技术问题是考虑一种能够提高资源利用率并最大程度降低任务处理时延和卸载失败概率的车辆任务卸载方法。


技术实现要素:

6.本发明所要解决的技术问题在于克服上述技术问题的缺点,提供一种资源利用率最大化、能降低任务处理时延和卸载失败概率的基于边缘计算的车路协同车联网任务卸载与迁移方法。
7.解决上述技术问题所采用的技术方案是由下述步骤组成:
8.(1)建模目标车辆产生的任务
9.按下式建模目标车辆产生的任务h(t):
10.h(t)=(w(t),z(t))
11.其中,w(t)为时隙t任务的数据量,z(t)为该任务执行所需要的cpu周期数,t∈{1,2,

,t},t是总时隙,t为有限的正整数。
12.(2)确定卸载对象和卸载子任务数量
13.卸载对象为路边单元r和路上的接收车辆j,r∈{1,2,

,r},r为路边单元的总数量,r为有限的正整数,j∈{1,2,

,v},v为接收车辆的总数量,v为有限的正整数,对目标车辆产生的任务分为大小相等、随机排列的子任务,路边单元r与路上的接收车辆j可以处理来自目标车辆卸载的子任务,每个时隙t,目标车辆选择路边单元r与接收车辆j其中一个作为卸载对象,卸载部分子任务,在目标车辆处理的子任务为本地子任务,卸载到路边单元r
或接收车辆j处理的子任务为卸载子任务,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,用深度强化学习中的深度q网络方法对目标车辆在每个时隙t产生的任务确定卸载对象α(t)和卸载子任务数量x(t),α(t)∈{0,1},0≤x(t)≤x,x是子任务总个数,x为有限的正整数。
14.(3)确定卸载子任务的传输时延
15.按下式确定时隙t卸载子任务的传输时延t
t
(t):
16.t
t
(t)=(1-α(t))
×
tr(t) α(t)
×
tj(t)
[0017][0018][0019]
plr(dr(t))=128.1 37.6
×
lg(dr(t))
[0020][0021][0022][0023][0024]
其中,br为目标车辆到路边单元r的带宽,pr为目标车辆给路边单元r传输时的发送功率,plr(dr(t))为目标车辆到路边单元r的路径损耗,单位为db,dr(t)表示时隙t目标车辆到路边单元r的距离,单位为km,n为高斯噪声的功率,bj为目标车辆到接收车辆j的带宽,pj为目标车辆给接收车辆传输时的发送功率,plj(di(t))为目标车辆到接收车辆j的路径损耗,单位为db,dj(t)表示时隙t目标车辆到接收车辆j的距离,单位为km,hv为车辆的天线高度,f为载波频率,c为自由空间传播速度。
[0025]
(4)确定卸载子任务的计算时延
[0026]
按下式确定卸载子任务的计算时延
[0027][0028]
其中,cr(t)和cj(t)分别为在时隙t时路边单元r和接收车辆j分配给目标车辆卸载子任务的计算资源。
[0029]
(5)确定本地子任务的计算时延
[0030]
按下式确定本地子任务的计算时延t
lp
(t):
[0031][0032]
其中,c
l
为本地计算资源。
[0033]
(6)确定总处理时延
[0034]
按下式确定总处理时延tc(t):
[0035][0036]
(7)迁移卸载子任务计算结果
[0037]
目标车辆已超出卸载对象的通信范围,进入到交付路边单元d,d∈{1,2,

,r}的通信范围,计算结果无法直接发送给目标车辆,触发任务结果迁移机制,卸载对象将计算结果交付给交付路边单元d。
[0038]
(8)返回卸载子任务计算结果
[0039]
子任务计算结果返回目标车辆,卸载完成。
[0040]
在本发明的(2)步骤中,所述的用深度强化学习中的深度q网络方法确定每个时隙t的卸载对象α(t)和卸载子任务数量x(t)的方法为:
[0041]
1)按下式确定时隙t目标车辆产生的任务卸载成功或失败f(t):
[0042][0043]
其中,f(t)为1表示卸载成功,f(t)为0表示卸载失败,t
max
表示任务的最大容忍延迟时间,t
max
∈[1,20],单位为毫秒,dd(t)表示时隙t目标车辆和交付路边单元d之间的距离,m(t)表示时隙t是否发生了结果迁移,m(t)为1表示结果迁移,m(t)为0表示结果未迁移,rr表示路边单元的通信半径,rr∈[50,150],单位为m。
[0044]
2)按下式选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)以最大化总收益:
[0045][0046]
其中,γ为卸载失败时的惩罚因子,γ取值为-8~-1,选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)时需要满足以下条件:
[0047]
α(t)={0,1}
[0048]
tc(t)≤t
max
[0049]
其中,α(t)为0表示卸载到路边单元r,α(t)为1表示卸载到接收车辆j。
[0050]
在本发明的(7)步骤中,所述的触发任务结果迁移机制为:对于每一个任务,结果迁移最多只能发生一次,按下式确定时隙t任务的结果迁移情况m(t):
[0051]
m(t)=((1-α(t))
×
mr(t) α(t)
×
mj(t))
[0052][0053]dr
(t)=||(t tc(t))
×vl-locr||
[0054][0055]dj
(t)=||(t tc(t))
×vl-(t tc(t))
×
v||
[0056]
其中,mr(t)为1和mj(t)为1表示发生了结果迁移,mr(t)为0和mj(t)为0表示未发生结果迁移,rr为路边单元的通信半径,v
l
为匀速行驶的目标车辆的速度,locr为卸载路边单元的位置,rj为接收车辆的通信半径,vj为匀速行驶的接收车辆j的速度。
[0057]
在本发明的(1)步骤中,所述的建模目标车辆产生的任务为:
[0058]
按下式建模目标车辆产生的任务h(t):
[0059]
h(t)=(w(t),z(t))
[0060]
其中,w(t)为时隙t任务的数据量,w(t)的取值为2~8,z(t)为该任务执行所需要的cpu周期数,t∈{1,2,

,t},t是总时隙,t∈[1000,4332]。
[0061]
在本发明的(2)步骤中,所述的确定卸载对象和卸载子任务数量为:
[0062]
卸载对象为路边单元r和路上的接收车辆j,r∈{1,2,

,r},r为路边单元的总数量,r∈[1,10],j∈{1,2,

,v},v为接收车辆的总数量,v∈[5,35],对目标车辆产生的任务分为大小相等、随机排列的子任务,路边单元r与路上的接收车辆j可以处理来自目标车辆卸载的子任务,每个时隙t,目标车辆选择路边单元r与接收车辆j其中一个作为卸载对象,卸载部分子任务,在目标车辆处理的子任务为本地子任务,卸载到路边单元r或接收车辆j处理的子任务为卸载子任务,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,用深度强化学习中的深度q网络方法对目标车辆在每个时隙t产生的任务确定卸载对象α(t)和卸载子任务数量x(t),α(t)∈{0,1},0≤x(t)≤x,x是子任务总个数,x∈[1,10]。
[0063]
本发明在确定卸载对象和卸载子任务数量时,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,将目标车辆产生的任务分成多个子任务,部分子任务卸载到路边单元或接收车辆,任务能够并行执行,降低了任务的处理时延;在迁移子任务计算结果时,在目标车辆超出卸载对象的通信范围时,触发结果迁移机制,卸载对象将计算结果交付给交付路边单元,降低了任务卸载失败的概率。
附图说明
[0064]
图1是本发明实施例1的流程图。
具体实施方式
[0065]
下面结合附图和实施例对本发明进一步详细说明,但本发明不限于下述的实施方式。
[0066]
实施例1
[0067]
以800m长的高速公路为例,路旁部署5个路边单元,路边单元之间的距离为150m,路边单元的通信半径为100m,本实施例的基于边缘计算的车路协同车联网任务卸载与迁移方法,由下述步骤组成(参见图1):
[0068]
(1)建模目标车辆产生的任务
[0069]
按下式建模目标车辆产生的任务h(t):
[0070]
h(t)=(w(t),z(t))
[0071]
其中,w(t)为时隙t任务的数据量,w(t)的取值为2~8,本实施例的w(t)取值为5,z(t)为该任务执行所需要的cpu周期数,t∈{1,2,

,t},t是总时隙,t为有限的正整数,本实施例的t取值为2666。
[0072]
(2)确定卸载对象和卸载子任务数量
[0073]
卸载对象为路边单元r和路上的接收车辆j,r∈{1,2,

,r},r为路边单元的总数量,r为有限的正整数,本实施例的r取值为5,j∈{1,2,

,v},v为接收车辆的总数量,v为有限的正整数,本实施例v取值为20,对目标车辆产生的任务分为大小相等、随机排列的子任务,路边单元r与路上的接收车辆j可以处理来自目标车辆卸载的子任务,每个时隙t,目标车辆选择路边单元r与接收车辆j其中一个作为卸载对象,卸载部分子任务,在目标车辆处理的子任务为本地子任务,卸载到路边单元r或接收车辆j处理的子任务为卸载子任务,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,用深度强化学习中的深度q网络方法对目标车辆在每个时隙t产生的任务确定卸载对象α(t)和卸载子任务数量x(t),α(t)∈{0,1},0≤x(t)≤x,x是子任务总个数,x为有限的正整数,本实施例x的取值为5。
[0074]
所述的用深度强化学习中的深度q网络方法确定每个时隙t的卸载对象α(t)和卸载子任务数量x(t)的方法为:
[0075]
1)按下式确定时隙t目标车辆产生的任务卸载成功或失败f(t):
[0076][0077]
其中,f(t)为1表示卸载成功,f(t)为0表示卸载失败,t
max
表示任务的最大容忍延迟时间,本实施例t
max
取值为10毫秒,dd(t)表示时隙t目标车辆和交付路边单元d之间的距离,m(t)表示时隙t是否发生了结果迁移,m(t)为1表示结果迁移,m(t)为0表示结果未迁移,rr表示路边单元的通信半径,本实施例rr取值为100m。
[0078]
2)按下式选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)以最大化总收益:
[0079][0080]
其中,γ为卸载时的惩罚因子,γ取值为-8~-1,本实施例γ的取值为-5,选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)时需要满足以下条件:
[0081]
α(t)={0,1}
[0082]
tc(t)≤t
max
[0083]
其中,α(t)为0表示卸载到路边单元r,α(t)为1表示卸载到接收车辆j。
[0084]
本发明在确定卸载对象和卸载子任务数量时,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,将目标车辆产生的任务分成多个子任务,将部分子任务卸载到路边单元或接收车辆,任务能够并行执行,降低了任务的处理时延。
[0085]
(3)确定卸载子任务的传输时延
[0086]
按下式确定时隙t卸载子任务的传输时延t
t
(t):
[0087]
t
t
(t)=(1-α(t))
×
tr(t) α(t)
×
tj(t)
[0088][0089][0090]
plr(dr(t))=128.1 37.6
×
lg(dr(t))
[0091][0092][0093][0094][0095]
其中,br为目标车辆到路边单元r的带宽,本实施例带宽br的取值为106hz,pr为目标车辆给路边单元r传输时的发送功率,本实施例发送功率pr的取值为28dbm,plr(dr(t))为目标车辆到路边单元r的路径损耗,单位为db,dr(t)表示时隙t目标车辆到路边单元r的距离,单位为km,n为高斯噪声的功率,本实施例n取值为-100dbm,bj为目标车辆到接收车辆j的带宽,本实施例带宽bj取值为8
×
106,pj为目标车辆给接收车辆j传输时的发送功率,本实施例发送功率pj取值为20dbm,plj(di(t))为目标车辆到接收车辆j的路径损耗,单位为db,dj(t)表示时隙t目标车辆到接收车辆j的距离,单位为km,hv为车辆的天线高度,本实施例天线高度hv取值为1.5m,f为载波频率,本实施例f的取值为2ghz,c为自由空间传播速度,本实施例c的取值为3
×
108。
[0096]
(4)确定卸载子任务的计算时延
[0097]
按下式确定卸载子任务的计算时延
[0098][0099]
其中,cr(t)和cj(t)分别为在时隙t时路边单元r和接收车辆j分配给目标车辆卸载子任务的计算资源。
[0100]
(5)确定本地子任务的计算时延
[0101]
按下式确定本地子任务的计算时延t
lp
(t):
[0102][0103]
其中,c
l
为本地计算资源。
[0104]
(6)确定总处理时延
[0105]
按下式确定总处理时延tc(t):
[0106][0107]
(7)迁移卸载子任务计算结果
[0108]
目标车辆已超出卸载对象的通信范围,进入到交付路边单元d,d∈{1,2,

,r}的通信范围,计算结果无法直接发送给目标车辆,触发任务结果迁移机制,卸载对象将计算结果交付给交付路边单元d。
[0109]
所述的触发任务结果迁移机制为:对于每一个任务,结果迁移最多只能发生一次,按下式确定时隙t任务的结果迁移情况m(t):
[0110]
m(t)=((1-α(t))
×
mr(t) α(t)
×
mj(t))
[0111][0112]dr
(t)=||(t tc(t))
×vl-locr||
[0113][0114]dj
(t)=||(t tc(t))
×vl-(t tc(t))
×
vj||
[0115]
其中,mr(t)为1和mj(t)为1表示发生了结果迁移,mr(t)为0和mj(t)为0表示未发生结果迁移,rr为路边单元的通信半径,v
l
为匀速行驶的目标车辆的速度,本实施例v
l
取值为30米/秒,locr为卸载路边单元的位置,rj为接收车辆的通信半径,本实施例rj取值为50m,vj为匀速行驶的接收车辆j的速度,本实施例vj取值为25米/秒。
[0116]
在迁移子任务计算结果、目标车辆超出卸载对象的通信范围时,触发结果迁移机制,卸载对象可以将计算结果交付给交付路边单元,降低了任务卸载失败的概率。
[0117]
(8)返回卸载子任务计算结果
[0118]
子任务计算结果返回目标车辆,卸载完成。
[0119]
完成基于边缘计算的车路协同车联网任务卸载与迁移方法。
[0120]
实施例2
[0121]
以800米长的高速公路为例,路旁部署5个路边单元,路边单元之间的距离为150米,路边单元的通信半径为100米,本实施例的基于边缘计算的车路协同车联网任务卸载与迁移方法,由下述步骤组成:
[0122]
(1)建模目标车辆产生的任务
[0123]
按下式建模目标车辆产生的任务h(t):
[0124]
h(t)=(w(t),z(t))
[0125]
其中,w(t)为时隙t任务的数据量,w(t)的取值为2~8,本实施例的w(t)取值为2,z(t)为该任务执行所需要的cpu周期数,t∈{1,2,

,t},t是总时隙,t为有限的正整数,本实施例的t取值为1000。
[0126]
(2)确定卸载对象和卸载子任务数量
[0127]
卸载对象为路边单元r和路上的接收车辆j,r∈{1,2,

,r},r为路边单元的总数量,r为有限的正整数,本实施例的r取值为1,j∈{1,2,

,v},v为接收车辆的总数量,v为有
限的正整数,本实施例v取值为5,对目标车辆产生的任务分为大小相等、随机排列的子任务,路边单元r与路上的接收车辆j可以处理来自目标车辆卸载的子任务,每个时隙t,目标车辆选择路边单元r与接收车辆j其中一个作为卸载对象,卸载部分子任务,在目标车辆处理的子任务为本地子任务,卸载到路边单元r或接收车辆j处理的子任务为卸载子任务,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,用深度强化学习中的深度q网络方法对目标车辆在每个时隙t产生的任务确定卸载对象α(t)和卸载子任务数量x(t),α(t)∈{0,1},0≤x(t)≤x,x是子任务总个数,x为有限的正整数,本实施例x的取值为1。
[0128]
所述的用深度强化学习中的深度q网络方法确定每个时隙t的卸载对象α(t)和卸载子任务数量x(t)的方法为:
[0129]
1)按下式确定时隙t目标车辆产生的任务卸载成功或失败f(t):
[0130]
该步骤与实施例1相同。
[0131]
2)按下式选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)以最大化总收益:
[0132][0133]
其中,γ为卸载时的惩罚因子,γ取值为-8~-1,本实施例γ的取值为-8,选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)时需要满足以下条件:
[0134]
α(t)={0,1}
[0135]
tc(t)≤t
max
[0136]
其中,α(t)为0表示卸载到路边单元r,α(t)为1表示卸载到接收车辆j。
[0137]
(3)确定卸载子任务的传输时延
[0138]
该步骤与实施例1相同。
[0139]
(4)确定卸载子任务的计算时延
[0140]
该步骤与实施例1相同。
[0141]
其它步骤与实施例1相同。完成基于边缘计算的车路协同车联网任务卸载与迁移方法。
[0142]
实施例3
[0143]
以800m长的高速公路为例,路旁部署5个路边单元,路边单元之间的距离为150m,路边单元的通信半径为100m,本实施例的基于边缘计算的车路协同车联网任务卸载与迁移方法,由下述步骤组成:
[0144]
(1)建模目标车辆产生的任务
[0145]
按下式建模目标车辆产生的任务h(t):
[0146]
h(t)=(w(t),z(t))
[0147]
其中,w(t)为时隙t任务的数据量,w(t)的取值为2~8,本实施例的w(t)取值为8,z(t)为该任务执行所需要的cpu周期数,t∈{1,2,

,t},t是总时隙,t为有限的正整数,本实施例的t取值为4332。
[0148]
(2)确定卸载对象和卸载子任务数量
[0149]
卸载对象为路边单元r和路上的接收车辆j,r∈{1,2,

,r},r为路边单元的总数
量,r为有限的正整数,本实施例的r取值为10,j∈{1,2,

,v},v为接收车辆的总数量,v为有限的正整数,本实施例v取值为35,对目标车辆产生的任务分为大小相等、随机排列的子任务,路边单元r与路上的接收车辆j可以处理来自目标车辆卸载的子任务,每个时隙t,目标车辆选择路边单元r与接收车辆j其中一个作为卸载对象,卸载部分子任务,在目标车辆处理的子任务为本地子任务,卸载到路边单元r或接收车辆j处理的子任务为卸载子任务,根据当前目标车辆的位置、目标车辆产生的任务、当前目标车辆可用的计算资源,用深度强化学习中的深度q网络方法对目标车辆在每个时隙t产生的任务确定卸载对象α(t)和卸载子任务数量x(t),α(t)∈{0,1},0≤x(t)≤x,x是子任务总个数,x为有限的正整数,本实施例x的取值为10。
[0150]
所述的用深度强化学习中的深度q网络方法确定每个时隙t的卸载对象α(t)和卸载子任务数量x(t)的方法为:
[0151]
1)按下式确定时隙t目标车辆产生的任务卸载成功或失败f(t):
[0152]
该步骤与实施例1相同。
[0153]
2)按下式选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)以最大化总收益:
[0154][0155]
其中,γ为卸载时的惩罚因子,γ取值为-8~-1,本实施例γ的取值为-1,选择每个时隙t的卸载对象α(t)和卸载子任务数量x(t)时需要满足以下条件:
[0156]
α(t)={0,1}
[0157]
tc(t)≤t
max
[0158]
其中,α(t)为0表示卸载到路边单元r,α(t)为1表示卸载到接收车辆j。
[0159]
(3)确定卸载子任务的传输时延
[0160]
该步骤与实施例1相同。
[0161]
(4)确定卸载子任务的计算时延
[0162]
该步骤与实施例1相同。
[0163]
其它步骤与实施例1相同。完成基于边缘计算的车路协同车联网任务卸载与迁移方法。
[0164]
为了验证本发明的有益效果,发明人采用本发明实施例1的基基于边缘计算的车路协同车联网任务卸载与迁移方法与随机选择卸载对象和卸载子任务数量任务卸载方法(对比实验1)、基于最大计算能力任务卸载方法(对比实验2)进行了对比仿真实验,各种实验情况如下:
[0165]
目标车辆的卸载情况的评价指标为平均任务量处理速度和任务卸载失败概率,对所有方案的总时隙均为2666,其中平均任务量处理速度的计算方法为总成功卸载任务量与总成功卸载时间的比值,任务卸载失败概率的计算方法为总成功卸载时间与总成功卸载任务个数的比值,目标车辆的卸载情况的实验结果见表1。
[0166]
表1目标车辆卸载情况
[0167]
实验内容平均任务量处理速度(b/s)任务卸载失败概率(%)
对比实验1579319643对比实验2650840013本发明651812310.3
[0168]
由表1可见,本发明的平均任务量处理速度高于对比实验1、对比实验2,任务卸载失败概率低于对比实验1、对比实验2。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献