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

一种基于深度强化学习的多车应用计算卸载方法及终端与流程

2021-12-01 00:48:00 来源:中国专利 TAG:


1.本发明涉及边缘计算技术领域,尤其涉及一种基于深度强化学习的多车应用计算卸载方法及终端。


背景技术:

2.随着物联网(internet of things,iot)技术的快速发展,车辆逐渐成为一种智能、互联、自主的终端,即智能网联汽车(connected and automat

ed vehicles,cavs)。cavs集成了人工智能辅助(artificial intelligence

aided,ai

aided)的信息和通信技术,在构建更安全、更智能的交通系统(intelligent transportation system,its)的过程中发挥着关键作用。在移动通信技术的帮助下,cavs采用车辆到一切通信(vehicle to every

thing,v2x)与基础设施或者其他cavs互联,通过它们间的信息交换,cavs可以全面感知周边环境,有效改善人为失误造成的交通事故,缓解交通拥堵。
3.cavs的发展,推动了基于深度神经网络(deep neural network

based,dnn

based)的车载新型应用的出现,如自动驾驶、群智感知、虚拟现实游戏、增强现实和视频娱乐等。这些应用通常是计算密集型和时延敏感型的,需要高性能的计算资源才能在响应截止期内被执行完成。虽然cavs都配备了具有计算能力的车载设备,但通常无法满足新型应用的计算性能要求,其服务质量(quality of service,qos)无法得到保障。这对cavs实时、可靠的车辆服务提出了重大挑战。
4.计算卸载是解决上述挑战的关键技术之一。基于dnn的应用可以划分为多个dnn层。通过计算卸载来扩展cavs的计算能力,这些dnn层可以卸载到计算资源丰富的高性能服务器上。最初,研究人员提出了基于移动云计算(mobile cloud computing,mcc)的计算卸载范式。它可以充分利用具有强大计算资源的云服务器,为车辆提供高效的计算服务。但是,由于传统的云服务器距离cavs很远,远程卸载会导致严重的数据传输延迟,降低qos。因此,mcc不能很好地满足基于dnn应用的实时响应要求。
5.为了克服上述mcc的缺点,近年来出现了基于车辆边缘计算(vehicular edge computing,vec)的计算卸载范式,即移动边缘计算(mobile edge computing,mec)在车辆场景中的应用。在vec网络中,路边服务器(roadside edge servers,res)可以部署在具有计算资源的路边单位(roadside units,rsus)中来扩展cavs的计算能力,来向cavs提供近端服务。通过将dnn层卸载到rsus,基于dnn的应用程序的执行延迟可以显著减少。
6.因此,在vec环境下考虑多车的计算卸载问题为满足cavs应用服务需求提供了一个良好的解决方案。但是,针对vec环境下面向卸载失败率的多车计算卸载策略问题,目前的研究工作尚未形成一个完整有效的解决方案。


技术实现要素:

7.本发明所要解决的技术问题是:提供一种基于深度强化学习的多车应用计算卸载方法及终端,能够降低卸载失败率。
8.为了解决上述技术问题,本发明采用的一种技术方案为:
9.一种基于深度强化学习的多车应用计算卸载方法,包括:
10.基于多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用构建车辆边缘计算网络;
11.根据所述车辆边缘计算网络确定计算卸载问题,并根据所述计算卸载问题建立马尔科夫决策过程模型;
12.基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略。
13.为了解决上述技术问题,本发明采用的另一种技术方案为:
14.一种基于深度强化学习的多车应用计算卸载终端,包括存储器、处理器及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
15.基于多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用构建车辆边缘计算网络;
16.根据所述车辆边缘计算网络确定计算卸载问题,并根据所述计算卸载问题建立马尔科夫决策过程模型;
17.基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略。
18.本发明的有益效果在于:通过构建车辆边缘计算网络,根据车辆边缘计算网络确定计算卸载问题,并根据其建立马尔科夫决策过程模型,基于马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行卸载策略,由于在车载边缘计算网络,cavs需要综合考虑到dnn层间的数据依赖关系、时变的任务处理时延、有限的rsu计算资源以及车辆移动性来确定卸载决策,且多车间的卸载决策会相互影响,mdp(markov decision process,马尔科夫决策过程)模型能够准确地描述多车计算卸载的过程,结合模拟退火的多智能体深度确定性策略梯度算法(multi

agent deep deterministic policy gradient combined with simulated anneling,sa

maddpg)能够避免陷入局部最优解,加快收敛速度,有效地适应动态的多车环境,以此确定出最优的卸载策略,从而降低卸载失败率。
附图说明
19.图1为本发明实施例的一种基于深度强化学习的多车应用计算卸载方法的步骤流程图;
20.图2为本发明实施例的一种基于深度强化学习的多车应用计算卸载终端的结构示意图;
21.图3为本发明实施例基于深度强化学习的多车应用计算卸载方法中的车辆边缘计算网络示意图;
22.图4为本发明实施例基于深度强化学习的多车应用计算卸载方法中的vec环境下多车计算卸载的实例示意图;
23.图5为本发明实施例基于深度强化学习的多车应用计算卸载方法中的vec环境下基于sa

maddpg的多车计算卸载框架示意图;
24.图6为本发明实施例基于深度强化学习的多车应用计算卸载方法中的动作者网络的结构示意图;
25.图7为本发明实施例基于深度强化学习的多车应用计算卸载方法中的评论家网络的结构示意图。
具体实施方式
26.为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
27.请参照图1,本发明实施例提供了一种基于深度强化学习的多车应用计算卸载方法,包括:
28.基于多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用构建车辆边缘计算网络;
29.根据所述车辆边缘计算网络确定计算卸载问题,并根据所述计算卸载问题建立马尔科夫决策过程模型;
30.基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略。
31.从上述描述可知,本发明的有益效果在于:通过构建车辆边缘计算网络,根据车辆边缘计算网络确定计算卸载问题,并根据其建立马尔科夫决策过程模型,基于马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行卸载策略,由于在车载边缘计算网络,cavs需要综合考虑到dnn层间的数据依赖关系、时变的任务处理时延、有限的rsu计算资源以及车辆移动性来确定卸载决策,且多车间的卸载决策会相互影响,mdp(markov decision process,马尔科夫决策过程)模型能够准确地描述多车计算卸载的过程,结合模拟退火的多智能体深度确定性策略梯度算法(multi

agent deep deterministic policy gradient combined with simulated anneling,sa

maddpg)能够避免陷入局部最优解,加快收敛速度,有效地适应动态的多车环境,以此确定出最优的卸载策略,从而降低卸载失败率。
32.进一步地,每一所述dnn应用包括多个dnn层;
33.所述基于多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用构建车辆边缘计算网络包括:
34.确定多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用;
35.根据所述多个智能网联汽车以及与所述多个智能网联汽车对应的多个dnn应用构建dnn应用模型;
36.根据所述多个智能网联汽车、所述多个路边单位、所述多个dnn应用和所述多个dnn层建立与所述多个智能网联汽车对应的第一dnn层队列以及与所述多个路边单位对应的第二dnn层队列;
37.根据所述多个智能网联汽车、所述多个路边单位构建所述多个智能网联汽车与所述多个路边单位的通信模型;
38.根据所述多个智能网联汽车、所述多个路边单位以及所述多个dnn层构建所述多
个dnn层从所述多个智能网联汽车卸载至所述多个路边单位的计算模型;
39.根据所述dnn应用模型、所述第一dnn层队列、所述第二dnn层队列、所述通信模型以及所述计算模型生成车辆边缘计算网络。
40.由上述描述可知,根据构建的dnn应用模型、第一dnn层队列、第二dnn层队列、通信模型以及计算模型生成车辆边缘计算网络,准确构建了车辆边缘计算网络,便于后续基于车辆边缘计算网络确定计算卸载问题,从而提高确定计算卸载问题的准确性。
41.进一步地,所述根据所述多个智能网联汽车以及与所述多个智能网联汽车对应的多个dnn应用构建dnn应用模型包括:
42.根据所述多个智能网联汽车以及与所述多个智能网联汽车对应的多个dnn应用构建所述dnn应用模型a
i,j,k

43.a
i,j,k
={g
i,j,k
,d
i,j,k
},i∈{1,2,...,n},j∈{1,2,...,z},k∈{1,2,...,t};
44.式中,i表示所述dnn应用对应的所述智能网联汽车的标识,j表示所述dnn应用的类型,k表示所述dnn应用对应的生成时间片,g
i,j,k
表示由所述dnn应用构建的有向无环图,d
i,j,k
表示所述dnn应用的可容忍时间片个数。
45.由上述描述可知,根据多个智能网联汽车以及与多个智能网联汽车对应的多个dnn应用构建dnn应用模型,dnn应用模型体现了智能网联汽车与dnn应用之间的关系。
46.进一步地,所述根据所述多个智能网联汽车、所述多个路边单位构建所述多个智能网联汽车与所述多个路边单位的通信模型包括:
47.定义信道带宽、信道衰落因子、高斯白噪声功率以及路径损耗因子;
48.获取所述多个智能网联汽车的传输功率以及所述多个路边单位的通信范围;
49.基于所述多个智能网联汽车、所述多个路边单位、所述信道带宽、所述信道衰落因子、所述高斯白噪声功率、所述路径损耗因子、所述传输功率以及所述通信范围构建所述多个智能网联汽车与所述多个路边单位的通信模型;
50.所述通信模型为:
[0051][0052]
式中,表示在第k个时间片,第i个智能网联汽车与第j个路边单位的数据传输率,b表示信道带宽,h表示信道衰落因子,p
tr
表示所述多个智能网联汽车的传输功率,x表示所述高斯白噪声功率,表示所述路径损耗因子,表示第i个智能网联汽车与第j个路边单位的距离,r表示所述多个路边单位的通信范围。
[0053]
由上述描述可知,由于在路边单位的通信范围内,智能网联汽车可以通过车辆与基础设施(vehicle to infrastructure,v2i)通信传输dnn层数据至路边单位处理以充分利用邻域内路边单位的计算资源,通信模型能够准确描述在某个时间片,任一智能网联汽车与任一路边单位的数据传输率。
[0054]
进一步地,所述根据所述多个智能网联汽车、所述多个路边单位以及所述多个dnn层构建所述多个dnn层从所述多个智能网联汽车卸载至所述多个路边单位的计算模型包
括:
[0055]
获取所述多个智能网联汽车对应的第一算力以及所述多个路边单位对应的第二算力;
[0056]
确定预设dnn层数据处理密度;
[0057]
基于所述第一算力、预设时间片长度、所述预设dnn层数据处理密度确定所述多个智能网联汽车在任一时间片内对应的第一数据处理总量;
[0058]
基于所述第二算力、预设时间片长度、所述预设dnn层数据处理密度确定所述多个智能网联汽车在任一时间片内对应的第二数据处理总量;
[0059]
根据所述第一数据处理总量和所述第二数据处理总量得到所述多个dnn层从所述多个智能网联汽车卸载至所述多个路边单位的计算模型;
[0060]
所述第一数据处理总量ε
v
为:
[0061][0062]
式中,f
v
表示所述第一算力,l表示预设时间片长度,c表示所述预设dnn层数据处理密度;
[0063]
所述第二数据处理总量ε
r
为:
[0064][0065]
式中,f
r
表示所述第二算力。
[0066]
由上述描述可知,计算模型能够准确描述智能网联汽车与路边单位的计算能力,即在当个时间片内所能处理的数据总量。
[0067]
进一步地,所述根据所述车辆边缘计算网络确定计算卸载问题包括:
[0068]
所述计算卸载问题为:
[0069][0070]
式中,minimize表示最小化,afr表示所述多个智能网联汽车的平均卸载失败率,fr
i
表示第i个智能网联汽车的卸载失败率,n表示所述多个智能网联汽车的数量。
[0071]
由上述描述可知,确定计算卸载问题,该计算卸载问题为最小化智能网联汽车的平均卸载失败率,便于基于计算卸载问题进行优化,保证了降低卸载失败率的实现。
[0072]
进一步地,所述根据所述计算卸载问题建立马尔科夫决策过程模型包括:
[0073]
获取目标时间片内目标智能网联汽车对应的状态s
i
(k)以及对应的动作a
i
(k);
[0074]
根据所述目标智能网联汽车对应的状态确定所述多个智能网联汽车的联合状态s(k);
[0075]
根据所述目标智能网联汽车对应的动作确定所述多个智能网联汽车的联合动作a(k);
[0076]
获取目标时间片内目标智能网联汽车对应的卸载失败应用集合δ
i
(k)以及卸载成功应用集合υ
i
(k);
[0077]
根据所述卸载失败应用集合以及卸载成功应用集合确定目标智能网联汽车的奖
励函数r
i
(k);
[0078]
根据所述目标智能网联汽车的奖励函数确定所述多个智能网联汽车的联合奖励r(k);
[0079]
根据所述联合状态、所述联合动作、所述联合奖励生成马尔科夫决策过程模型;
[0080]
所述s
i
(k)为:
[0081][0082]
式中,k表示第k个时间片,表示所述目标智能网联汽车的二维坐标,o
i
(k)表示所述智能网联汽车与所述路边单位在通信范围内的数据传输率;
[0083]
所述s(k)为:
[0084]
s(k)={s1(k),s2(k),...,s
n
(k)};
[0085]
所述a
i
(k)为:
[0086]
a
i
(k)∈{1,2,...,m 1};
[0087]
式中,{1,2,

,m}表示所述目标智能网联汽车选择卸载所述dnn层至第j个路边单位,m 1表示所述目标智能网联汽车本地处理所述dnn层;
[0088]
所述a(k)为:
[0089]
a(k)={a1(k),a2(k),...,a
n
(k)};
[0090]
所述δ
i
(k)为:
[0091]
δ
i
(k)={a1,a2,...,a
f
};
[0092]
所述υ
i
(k)为:
[0093]
υ
i
(k)={a1,a2,...,a
u
};
[0094]
所述r
i
(k)为:
[0095][0096]
所述r(k)为:
[0097]
r(k)={r1(k),r2(k),...,r
n
(k)}。
[0098]
由上述描述可知,将马尔科夫决策过程模型引入计算卸载问题,考虑了智能体、状态空间、动作空间和奖励四个关键因素,能够准确描述多车计算卸载的过程。
[0099]
进一步地,所述基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略包括:
[0100]
设计与所述智能网联汽车对应的动作者网络;
[0101]
设计与所述动作者网络对应的评论家网络;
[0102]
将所述目标智能网联汽车对应的状态输入至所述动作者网络得到最佳动作,根据模拟退火策略从预设随机动作与所述最佳动作之间选择得到目标动作,并执行所述目标动作对应的卸载策略,返回与所述卸载策略对应的奖励和新状态;
[0103]
根据所述目标智能网联汽车对应的状态、所述目标动作、所述奖励和所述新状态生成状态转移过程,并将所述状态转移过程保存至回放记忆库;
[0104]
将所述多个智能网联汽车的联合状态和联合动作输入至所述评论家网络得到q值;
[0105]
根据q值更新所述动作者网络及所述评论家网络。
[0106]
由上述描述可知,将目标智能网联汽车对应的状态输入至动作者网络得到最佳动作,根据模拟退火策略从预设随机动作与最佳动作之间选择得到目标动作,能有效地适应动态的多车环境,且使用模拟退火策略用于动作的选择,避免陷入局部最优解,加快收敛速度,提高了选择卸载策略的准确性。
[0107]
进一步地,所述基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略还包括:设计与所述动作者网络对应的目标动作者网络,并设计与所述评论家网络对应的目标评论家网络;
[0108]
所述动作者网络包括第一网络参数;
[0109]
所述目标动作者网络包括第一目标网络参数;
[0110]
所述评论家网络包括第二网络参数;
[0111]
所述目标评论家网络包括第二目标网络参数;
[0112]
所述基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略之后包括:
[0113]
按照预设周期从所述回放记忆库中任意采集多个状态转移过程
[0114]
其中,s
ij
表示采集的多个智能网联汽车的状态,a
ij
表示采集的多个智能网联汽车的目标动作,r
ij
表示采集的多个智能网联汽车的奖励,s
i’j
表示采集的多个智能网联汽车的新状态;
[0115]
合并所述多个状态转移过程,得到合并后的状态转移过程
[0116]
其中,s
ij
表示采集的多个智能网联汽车的合并状态,a
ij
表示采集的多个智能网联汽车的目标合并动作,r
ij
表示采集的多个智能网联汽车的合并奖励,s
i’j
表示采集的多个智能网联汽车的新合并状态;
[0117]
基于所述合并后的状态转移过程、所述目标评论家网络、所述目标动作者网络得到目标q值y
ij

[0118][0119]
式中,q
i’()表示所述目标评论家网络,π
i’()表示所述目标动作者网络,γ表示折扣率;
[0120]
基于所述合并后的状态转移过程、所述评论家网络以及所述目标q值计算时间差分误差
[0121][0122]
式中,q
i
()表示所述评论家网络;
[0123]
根据所述时间差分误差得到所述评论家网络的所述第二网络参数的损失函数l(ω
i
):
[0124][0125]
式中,x表示采集的多个状态转移过程的数量;
[0126]
采用最小化损失函数方法对所述第二网络参数进行更新;
[0127]
采用策略梯度方法对所述动作者网络的所述第一网络参数进行更新;
[0128]
所述策略梯度方法为:
[0129][0130]
式中,表示所述第一网络参数的损失函数的梯度,π
i
()表示所述动作者网络;
[0131]
采用软替换方法对所述目标动作者网络的所述第一目标网络参数以及所述目标评论家网络的所述第二目标网络参数进行更新;
[0132]
所述软替换方法为:
[0133]
θ
i”=v
·
θ
i
(1

v)
·
θ
i’ν∈[0,1];
[0134]
ω
i”=v
·
ω
i
(1

v)
·
ω
i’ν∈[0,1];
[0135]
式中,θ
i”表示更新后的所述第一目标网络参数,θ
i
表示所述第一网络参数,θ
i’表示所述第一目标网络参数,ω
i”表示更新后的所述第二目标网络参数,ω
i
表示所述第二网络参数,ω
i’表示所述第二目标网络参数,v表示软替换速率。
[0136]
由上述描述可知,按照预设周期更新动作者网络、评论家网络、目标动作者网络以及目标评论家网络,能够不断优化网络,提高了选择卸载策略的准确性,从而降低卸载失败率。
[0137]
请参照图2,本发明另一实施例提供了一种基于深度强化学习的多车应用计算卸载终端,包括存储器、处理器及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于深度强化学习的多车应用计算卸载方法中的各个步骤。
[0138]
本发明上述基于深度强化学习的多车应用计算卸载方法及终端能够适用于车载边缘计算(vehicularedge computing,vec)环境下的多车应用计算卸载,以下通过具体实施方式进行说明:
[0139]
实施例一
[0140]
请参照图1,本实施例的一种基于深度强化学习的多车应用计算卸载方法,包括:
[0141]
s1、基于多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用构建车辆边缘计算网络;
[0142]
s2、根据所述车辆边缘计算网络确定计算卸载问题,并根据所述计算卸载问题建立马尔科夫决策过程模型;
[0143]
s3、基于所述马尔科夫决策过程模型使用sa

maddpg算法确定卸载策略,并执行所述卸载策略;
[0144]
由于在车载边缘计算网络,cavs(多个智能网联汽车)需要综合考虑到dnn层间的数据依赖关系、时变的任务处理时延、有限的rsus(多个路边单位)计算资源以及车辆移动性来确定卸载决策,且多车间的卸载决策会相互影响,mdp(markov decisionprocess,马尔科夫决策过程)模型能够准确地描述多车计算卸载的过程,结合模拟退火的多智能体深度确定性策略梯度算法(multi

agent deep deterministic policy gradient combined with simulated anneling,sa

maddpg)能够避免陷入局部最优解,加快收敛速度,有效地
适应动态的多车环境,以此确定出最优的卸载策略,从而降低卸载失败率。
[0145]
实施例二
[0146]
请参照图1、3,本实施例在实施例一的基础上进一步限定了如何构建车辆边缘计算网络,具体为:
[0147]
其中,每一所述dnn应用包括多个dnn层;
[0148]
具体的,多个dnn层之间存在数据依赖关系;
[0149]
所述s1具体为:
[0150]
s11、确定多个智能网联汽车、多个路边单位以及与所述多个智能网联汽车对应的多个dnn应用;
[0151]
具体的,确定n辆cavs、m个rsus以及与n辆cavs对应的z类dnn应用(深度神经网络应用程序);
[0152]
cavs的行驶时间可划分为t个时间片,每个时间片长度为l,在同一个时间片内,智能网联汽车的相对位置以及无线信道状态保持不变,每辆cav配备有车载计算单元(vehicle computing unit,vcu),因此每辆cav具备一定的处理能力,每个rsu具有一定的通信范围,且部署了路侧边缘服务器(roadside edge server,res),因此每个rsu可以提供强大的计算能力;
[0153]
s12、根据所述多个智能网联汽车以及与所述多个智能网联汽车对应的多个dnn应用构建dnn应用模型;
[0154]
由于cavs是dnn应用的载体,假设cavs上部署有z类dnn应用,在每个时间片中,应用生成概率为ρ,则每类应用生成概率为ρ/z,不生成应用的概率为1

ρ,每辆cav在同一个时间片内最多产生一个同类型的dnn应用,因此dnn应用可由dnn应用模型表示;
[0155]
具体的,根据所述多个智能网联汽车以及与所述多个智能网联汽车对应的多个dnn应用构建所述dnn应用模型a
i,j,k

[0156]
a
i,j,k
={g
i,j,k
,d
i,j,k
},i∈{1,2,...,n},j∈{1,2,...,z},k∈{1,2,...,t};
[0157]
式中,i表示所述dnn应用对应的所述智能网联汽车cav的标识id,j表示所述dnn应用的类型,k表示所述dnn应用对应的生成时间片,g
i,j,k
表示由所述dnn应用构建的有向无环图(directedacyclic graph,dag),d
i,j,k
表示所述dnn应用的可容忍时间片个数;
[0158]
每个dnn应用都有对应的剩余生命周期时间片a
i,j,k
,其初始值为d
i.j.k
,a
i,j,k
随着时间片的增加而减少,这表示dnn应用必须要在a
i,j,k
的时间片内处理完成;
[0159]
其中,g
i,j,k
可进一步表示为:
[0160]
g
i,j,k
=<n
i,j,k
,e
i,j,k
>;
[0161][0162][0163]
式中,n
i,j,k
表示dnn层集合,表示第n
i,j,k
个dnn层,e
i,j,k
表示dnn层之间的数据依赖关系,表示存在一条至的有向边,表示至不存在有向边;
[0164]
其中,为的直接前驱dnn层,直接前驱dnn层必须在执行前完成,直接前驱dnn层集合表示为当dnn层的直接前驱dnn层集合里的直接前驱dnn层全部处理完成,该dnn层才具备执行条件;
[0165]
具体的,dnn层可进一步表示为:
[0166][0167]
式中,u表示dnn层的编号,表示dnn层的深度,表示dnn层的数据量;
[0168]
具体的,dnn层的深度可进一步表示为:
[0169][0170]
式中,表示第u个dnn层的直接前驱dnn层集合;
[0171]
s13、根据所述多个智能网联汽车、所述多个路边单位、所述多个dnn应用和所述多个dnn层建立与所述多个智能网联汽车对应的第一dnn层队列以及与所述多个路边单位对应的第二dnn层队列;
[0172]
其中,所述第一dnn层队列为cavs上的dnn层队列所述第二dnn层队列为rsus上的dnn层队列
[0173]
dnn层队列中的dnn层按照的顺序升序排序;
[0174]
存放着cavs生成dnn应用的dnn层,cavs只能传输和处理位于第一dnn层队列中队首的dnn层,存放着cavs卸载至rsus上的dnn层,rsus只能处理位于第二dnn层队列中队首的dnn层;
[0175]
dnn层需满足对应的执行条件才能进行传输和处理,即该dnn层位于dnn层队列的队首,且该dnn层的直接前驱dnn层集合里的dnn层全部处理完成;
[0176]
s14、根据所述多个智能网联汽车、所述多个路边单位构建所述多个智能网联汽车与所述多个路边单位的通信模型;
[0177]
在rsus的通信范围内,cavs可以通过车辆与基础设施(vehicle to infrastructure,v2i)通信传输dnn层数据至rsus处理,以充分利用邻域内rsus的计算资源;
[0178]
具体的,定义信道带宽、信道衰落因子、高斯白噪声功率以及路径损耗因子;
[0179]
获取所述多个智能网联汽车的传输功率以及所述多个路边单位的通信范围;
[0180]
基于所述多个智能网联汽车、所述多个路边单位、所述信道带宽、所述信道衰落因子、所述高斯白噪声功率、所述路径损耗因子、所述传输功率以及所述通信范围构建所述多个智能网联汽车与所述多个路边单位的通信模型;
[0181]
所述通信模型为:
[0182][0183]
式中,表示在第k个时间片,第i个智能网联汽车cav与第j个路边单位rsu的数据传输率,b表示信道带宽,h表示信道衰落因子,p
tr
表示所述多个智能网联汽车cav的传输功率,x表示所述高斯白噪声功率,表示所述路径损耗因子,表示第i个智能网联汽车cav与第j个路边单位rsu的距离,r表示所述多个路边单位rsu的通信范围;
[0184]
其中,可以进一步表示为:
[0185][0186]
式中,x
ik
表示第i个cav在第k个时间片的x轴坐标,y
ik
表示第i个cav在第k个时间片的y轴坐标,x
jk
表示第j个rsu在第k个时间片的x轴坐标,y
jk
表示第j个rsu在第k个时间片的y轴坐标;
[0187]
当cavs在rsus的通信范围内,即满足cavs才可进行任务数据的传输,在第k个时间片,如果第i个cav要传输dnn层数据至通信范围内的第j个rsu,那么其传输的dnn数据量为
[0188]
s15、根据所述多个智能网联汽车、所述多个路边单位以及所述多个dnn层构建所述多个dnn层从所述多个智能网联汽车卸载至所述多个路边单位的计算模型;
[0189]
假设所有cavs具有相同的算力,所有rsus具有相同的算力,算力为以周期每秒为单位的cpu频率;
[0190]
具体的,获取所述多个智能网联汽车对应的第一算力以及所述多个路边单位对应的第二算力;
[0191]
确定预设dnn层数据处理密度;
[0192]
基于所述第一算力、预设时间片长度、所述预设dnn层数据处理密度确定所述多个智能网联汽车在任一时间片内对应的第一数据处理总量;
[0193]
基于所述第二算力、预设时间片长度、所述预设dnn层数据处理密度确定所述多个智能网联汽车在任一时间片内对应的第二数据处理总量;
[0194]
根据所述第一数据处理总量和所述第二数据处理总量得到所述多个dnn层从所述多个智能网联汽车卸载至所述多个路边单位的计算模型;
[0195]
所述第一数据处理总量ε
v
为:
[0196][0197]
式中,f
v
表示所述第一算力,l表示预设时间片长度,c表示所述预设dnn层数据处理密度;
[0198]
所述第二数据处理总量ε
r
为:
[0199][0200]
式中,f
r
表示所述第二算力;
[0201]
其中,预设dnn层数据处理密度为cpu周期/比特;
[0202]
s16、根据所述dnn应用模型、所述第一dnn层队列、所述第二dnn层队列、所述通信模型以及所述计算模型生成车辆边缘计算网络;
[0203]
如图3所示,图3展示了车辆边缘计算网络的示意图,可以看出,每个rsu都具备一定的通信范围(即图3中的communication area ofrsu),部署了移动边缘计算服务器(即图3中的mec server,mobile edge computing server),每个cav和rsu拥有各自的dnn层队列(即图3中的task queue),在rsus的通信范围内,cavs可以通过v2i通信传输dnn层数据至rsus处理。
[0204]
实施例三
[0205]
请参照图1、4,本实施例在实施例一或实施例二的基础上进一步限定了如何确定计算卸载问题以及建立马尔科夫决策过程模型,具体为:
[0206]
其中,dnn应用卸载失败有两种情况:一种是dnn层在数据传输过程中cavs离开接收数据的rsu的通信范围,则该dnn应用卸载失败,另一种是dnn应用剩余生命周期时间片为0时,dnn层未全部处理完成,则dnn应用卸载失败;
[0207]
我们的优化目标是最小化cavs的平均卸载失败率,因此可以对计算卸载问题进行确定;
[0208]
所述s2具体为:
[0209]
所述计算卸载问题为:
[0210][0211]
式中,minimize表示最小化,afr表示所述多个智能网联汽车的平均卸载失败率,fr
i
表示第i个智能网联汽车的卸载失败率,n表示所述多个智能网联汽车的数量;
[0212]
其中,卸载失败率为卸载失败应用个数除以生成应用总个数;
[0213]
mdp模型是强化学习算法的基本模型,因此需要建立mdp模型,mdp模型包括智能体,在多车计算卸载过程中,每个cav都是智能体;
[0214]
获取目标时间片内目标智能网联汽车对应的状态s
i
(k)以及对应的动作a
i
(k);
[0215]
具体的,获取第k个时间片内第i个cav对应的状态s
i
(k)以及对应的动作a
i
(k);
[0216]
根据所述目标智能网联汽车对应的状态确定所述多个智能网联汽车的联合状态s(k);
[0217]
根据所述目标智能网联汽车对应的动作确定所述多个智能网联汽车的联合动作a(k);
[0218]
获取目标时间片内目标智能网联汽车对应的卸载失败应用集合δ
i
(k)以及卸载成功应用集合γ
i
(k);
[0219]
具体的,获取第k个时间片内第i个cav对应的卸载失败应用集合δ
i
(k)以及卸载
成功应用集合γ
i
(k);
[0220]
根据所述卸载失败应用集合以及卸载成功应用集合确定目标智能网联汽车的奖励函数r
i
(k);
[0221]
根据所述目标智能网联汽车的奖励函数确定所述多个智能网联汽车的联合奖励r(k);
[0222]
根据所述联合状态、所述联合动作、所述联合奖励生成马尔科夫决策过程模型;
[0223]
所述s
i
(k)为:
[0224][0225]
式中,k表示第k个时间片,表示所述目标智能网联汽车的二维坐标,o
i
(k)表示所述智能网联汽车与所述路边单位在通信范围内的数据传输率;
[0226]
其中,
[0227]
所述s(k)为:
[0228]
s(k)={s1(k),s2(k),...,s
n
(k)};
[0229]
所述a
i
(k)为:
[0230]
a
i
(k)∈{1,2,...,m 1};
[0231]
式中,{1,2,

,m}表示所述目标智能网联汽车选择卸载所述dnn层至第j个路边单位,m 1表示所述目标智能网联汽车本地处理所述dnn层;
[0232]
其中,a
i
(k)即cav基于当前卸载策略所选择的卸载方式;
[0233]
所述a(k)为:
[0234]
a(k)={a1(k),a2(k),...,a
n
(k)};
[0235]
所述δ
i
(k)为:
[0236]
δ
i
(k)={a1,a2,...,a
f
};
[0237]
所述γ
i
(k)为:
[0238]
υ
i
(k)={a1,a2,...,a
u
};
[0239]
所述r
i
(k)为:
[0240][0241]
所述r(k)为:
[0242]
r(k)={r1(k),r2(k),...,r
n
(k)}。
[0243]
图4展示了vec环境下多车计算卸载的一个实例,如图4所示,假设在第一个时间片,cav 1生成dnn应用a
1,1,1
,其可容忍时间为2个时间片,cav 2生成dnn应用a
2,2,1
,其可容忍时间为1个时间片;随后,构成a
1,1,1
的两个dnn层t
11,1,1
,t
21,1,1
进入dnn层队列中,构成a
2,2,1
的dnn层t
12,2,1
进入dnn层队列中;接着,cav 1和cav 2将dnn层数据卸载至rsu上,则位于队首的t
11,1,1
,t
22,2,1
卸载至中;最后,rsu处理位于队首的dnn层t
12,2,1
,a
2,2,1
卸载处理完成;
[0244]
在第二个时间片,首先,由于t
21,1,1的
前驱dnn层t
11,1,1
尚未处理完成,上的t
21,1,1
不能进行传输或者本地处理;接着,cav 2生成dnn应用a
2,2,2
,其可容忍时间为1个时间片,
cav 2本地处理dnn层t
22,2,1
的数据,那么a
2,2,2
卸载成功;最后,rsu处理位于队首的dnn层t
11,1,1

[0245]
在第三个时间片,由于a
1,1,1
=0,而a
1,1,1
尚未处理完成,因此a
1,1,1
卸载失败,在中删除dnn层t
21,1,1

[0246]
实施例四
[0247]
请参照图5

7,本实施例在实施例一、实施例二或实施例三的基础上进一步限定了如何确定卸载策略并执行卸载策略,具体为:
[0248]
在多车环境中,由于多车之间的卸载决策会相互影响,传统的强化学习算法,如actor

critic(强化学习)、dqn(deep q network,融合神经网络和q learning的方法)、ddpg等,由于仅考虑单车的局部信息,没有考虑多车环境的全局信息,训练得到的策略在执行时不稳定;
[0249]
多智能体深度确定性策略梯度算法(maddpg,multi

agent deep deterministic policy gradient)是深度确定性策略梯度(deep deterministic policy gradient,ddpg)的多智能体版本扩展,通过多车环境的全局信息集中式训练评论家网络,动作者网络仅需要单车的局部信息就可分布式执行,能有效地适应动态的多车环境;
[0250]
如图5所示,图5为vec环境下基于sa

maddpg的多车计算卸载框架,其中包括两类网络结构,一类是动作者网络,一类是评论家网络;
[0251]
所述s3具体为:
[0252]
s31、设计与所述智能网联汽车对应的动作者网络;
[0253]
设计与所述动作者网络对应的评论家网络;
[0254]
设计与所述动作者网络对应的目标动作者网络,并设计与所述评论家网络对应的目标评论家网络;
[0255]
其中,所述动作者网络包括第一网络参数;
[0256]
所述目标动作者网络包括第一目标网络参数;
[0257]
所述评论家网络包括第二网络参数;
[0258]
所述目标评论家网络包括第二目标网络参数;
[0259]
动作者网络的作用在于通过单个车辆的局部信息进行训练,执行过程中,只需要该动作者网络就能够选取对应动作,评论家网络的作用在于通过多个车辆的全局信息进行训练,并对动作者网络的训练进行指导,执行过程中无需该评论家网络,目标动作者网络的作用在于稳定动作者网络的更新过程,目标评论家网络的作用在于稳定评论家网络的更新过程;
[0260]
具体的,如图5所示,在训练过程中,每个cav都部署设计一个动作者网络π
i
,对应的第一网络参数为θ
i
,还部署设计了与动作者网络π
i
网络结构一致的目标动作者网络π

i
,对应的第一目标网络参数为θ
i


[0261]
同时,在训练过程中,每个cav都部署设计了一个评论家网络q
i
,对应的第二网络参数为ω
i
,还部署设计了与评论家网络q
i
网络结构一致的目标评论家网络q

i
,对应的第二目标网络参数为ω

i

[0262]
s32、将所述目标智能网联汽车对应的状态输入至所述动作者网络得到最佳动作,根据模拟退火策略从预设随机动作与所述最佳动作之间选择得到目标动作,并执行所述目
标动作对应的卸载策略,返回与所述卸载策略对应的奖励和新状态;
[0263]
具体的,如图5、6所示,图6为动作者网络π
i
的结构示意图,首先,输入目标智能网联汽车cavi的局部信息(即目标智能网联汽车cavi对应的状态s
i
(k))至动作者网络π
i
,然后经过两层隐层(即图6中的hiddenlayer),接着经过softmax层进行归一化处理,最后的输出层有m 1个值(即图6中p
i1
(k)至p
im 1
(k)),每个值表示相应动作的概率,动作表示cav选择的卸载策略,最后,选择最大概率的动作作为最佳动作,根据模拟退火策略(即图5中的sastrategy)从预设随机动作与最佳动作之间选择得到目标动作a
i
(k),在执行过程中,我们只需要输入cav的局部信息至目标动作者网络π

i
,即可输出目标动作a
i
(k)对应的卸载策略;
[0264]
执行卸载策略,返回与该卸载策略对应的奖励r
i
(k)和新状态s
i

(k),如图5所示;
[0265]
其中,所述预设随机动作为在{1,2,

,m 1}中服从均匀分布取随机数,所述预设随机动作表示所述目标智能网联汽车选择卸载所述dnn层至路边单位还是本地处理所述dnn层;
[0266]
s33、根据所述目标智能网联汽车对应的状态、所述目标动作、所述奖励和所述新状态生成状态转移过程,并将所述状态转移过程保存至回放记忆库;
[0267]
具体的,根据s
i
(k)、a
i
(k)、r
i
(k)和s
i

(k)生成状态转移过程<s(k),a(k),r(k),s

(k)>,即全局信息,并将<s(k),a(k),r(k),s

(k)>保存至回放记忆库d
i

[0268]
s34、将所述多个智能网联汽车的联合状态和联合动作输入至所述评论家网络得到q值;
[0269]
具体的,如图7所示,图7为评论家网络q
i
的结构示意图,首先,输入多个智能网联汽车cavs的全局信息(即联合状态s(k)和联合动作a(k))至评论家网络q
i
,经过两层隐层(即图7中的hiddenlayer)后,输出q值(q

value),在执行过程中,无需在cav上部署评论家网络q
i

[0270]
s35、根据q值更新所述动作者网络及所述评论家网络。
[0271]
实施例五
[0272]
请参照图1,本实施例在实施例一、实施例二、实施例三或实施例四的基础上进一步限定了如何更新动作者网络和评论家网络,具体为:
[0273]
其中,更新网络时,先对评论家网络进行更新,再对动作者网络进行更新,最后对目标网络(目标评论家网络和目标动作者网络)进行更新,并且,更新网络本质上是对网络的参数进行更新,当网络参数更新完成,则表示该网络更新完成;
[0274]
所述s35包括:
[0275]
s351、按照预设周期从所述回放记忆库中任意采集多个状态转移过程
[0276]
其中,s
ij
表示采集的多个智能网联汽车的状态,a
ij
表示采集的多个智能网联汽车的目标动作,r
ij
表示采集的多个智能网联汽车的奖励,s
i’j
表示采集的多个智能网联汽车的新状态;
[0277]
所述预设周期为c个时间片;
[0278]
具体的,每隔c个时间片从回放记忆库d
i
中任意采集数量为x组的状态转移过程
[0279]
s352、合并所述多个状态转移过程,得到合并后的状态转移过程
[0280]
其中,s
ij
表示采集的多个智能网联汽车的合并状态,a
ij
表示采集的多个智能网联汽车的目标合并动作,r
ij
表示采集的多个智能网联汽车的合并奖励,s
i’j
表示采集的多个智能网联汽车的新合并状态;
[0281]
s353、基于所述合并后的状态转移过程、所述目标评论家网络、所述目标动作者网络得到目标q值y
ij

[0282][0283]
式中,q
i’()表示所述目标评论家网络,π
i’()表示所述目标动作者网络,γ表示折扣率;
[0284]
其中,所述折扣率位于0和1之间,数值越大表示智能体更关注长期奖励,反之,更关注短期奖励;
[0285]
s354、基于所述合并后的状态转移过程、所述评论家网络以及所述目标q值计算时间差分(td)误差δ
ij

[0286][0287]
式中,q
i
()表示所述评论家网络;
[0288]
s355、根据所述时间差分误差得到所述评论家网络的所述第二网络参数的损失函数l(ω
i
):
[0289][0290]
式中,x表示采集的多个状态转移过程的数量;
[0291]
s356、采用最小化损失函数方法对所述第二网络参数进行更新;
[0292]
s357、采用策略梯度方法对所述动作者网络的所述第一网络参数进行更新;
[0293]
所述策略梯度方法为:
[0294][0295]
式中,表示所述第一网络参数的损失函数的梯度,π
i
()表示所述动作者网络;
[0296]
s358、采用软替换方法对所述目标动作者网络的所述第一目标网络参数以及所述目标评论家网络的所述第二目标网络参数进行更新;
[0297]
所述软替换方法为:
[0298]
θ
i”=v
·
θ
i
(1

v)
·
θ
i’ν∈[0,1];
[0299]
ω
i”=v
·
ω
i
(1

v)
·
ω
i’ν∈[0,1];
[0300]
式中,θ
i”表示更新后的所述第一目标网络参数,θ
i
表示所述第一网络参数,θ
i’表示所述第一目标网络参数,ω
i”表示更新后的所述第二目标网络参数,ω
i
表示所述第二网络参数,ω
i’表示所述第二目标网络参数,v表示软替换速率;
[0301]
本发明基于深度强化学习的多车应用计算卸载方法的使用过程如下:
[0302]
首先,初始化车辆边缘计算网络,目标智能网联汽车cavi按照ρ/z概率生成各类dnn应用,分解dnn应用得到多个dnn层,dnn层进入dnn层队列,其次,根据cavi的轨迹信息得到cavi的二维坐标并根据通信模型计算cavi与通信范围内的rsu的数据传输率o
i
(k),然后得到cavi的状态s
i
(k);
[0303]
将s
i
(k)输入至动作者网络π
i
,根据模拟退火策略从随机动作与最佳动作之间选择得到目标动作a
i
(k),执行a
i
(k)对应的卸载策略,更新车辆边缘计算网络,返回与该卸载策略对应的奖励r
i
(k),状态转移至新状态s
i

(k),将<s
i
(k),a
i
(k),r
i
(k),s
i’(k)>保存至回放记忆库d
i

[0304]
当间隔c个时间片时,每一cavi随机采样数量为x组的合并得到计算得到目标q值y
ij
以及td误差采用最小化损失函数方法对评论家网络的第二网络参数ω
i
进行更新,然后采用策略梯度方法对动作者网络的第一网络参数θ
i
进行更新,最后采用软替换方法对目标动作者网络的第一目标网络参数θ
i’以及目标评论家网络的第二目标网络参数ω
i’进行更新,以此完成对所有网络的更新;
[0305]
其中,完成所有网络的更新之后,还对当前温度进行降温处理,即t
ep
=σ
ep
t1;
[0306]
式中,t1表示第一回合的温度,t
ep
表示第ep回合的温度,σ
ep
表示第ep回合的降温系数;
[0307]
每回合结束后,即完成所有网络的更新之后,进行降温处理,该降温处理的作用在于使当前回合的当前温度随着回合次数的增加而降低,从而使得下一回合根据模拟退火策略选择最佳动作的概率会越大,加快收敛速度。
[0308]
实施例六
[0309]
请参照图2,一种基于深度强化学习的多车应用计算卸载终端,包括存储器、处理器及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例一、实施例二、实施例三、实施例四或实施例五中的基于深度强化学习的多车应用计算卸载方法中的各个步骤。
[0310]
综上所述,本发明提供的一种基于深度强化学习的多车应用计算卸载方法及终端,基于多个智能网联汽车、多个路边单位以及与多个智能网联汽车对应的多个dnn应用分别构建dnn应用模型、第一dnn层队列、第二dnn层队列、通信模型以及计算模型,根据构建的模型和队列生成车辆边缘计算网络,准确构建了车辆边缘计算网络,便于后续基于车辆边缘计算网络确定计算卸载问题,从而提高确定计算卸载问题的准确性;根据所述车辆边缘计算网络确定计算卸载问题,并根据所述计算卸载问题基于目标智能网联汽车的联合状态、联合动作、联合奖励生成马尔科夫决策过程模型,将马尔科夫决策过程模型引入计算卸载问题,考虑了智能体、状态空间、动作空间和奖励四个关键因素,能够准确描述多车计算卸载的过程;基于所述马尔科夫决策过程模型使用sa

maddpg算法将目标智能网联汽车对应的状态输入至动作者网络得到最佳动作,根据模拟退火策略选择得到目标动作,并执行目标动作对应的卸载策略,返回与卸载策略对应的奖励和新状态,能有效地适应动态的多车环境,且使用模拟退火策略用于动作的选择,避免陷入局部最优解,加快收敛速度,提高了选择卸载策略的准确性;根据目标智能网联汽车对应的状态、目标动作、奖励和新状态生成状态转移过程,并将状态转移过程保存至回放记忆库,再将多个智能网联汽车的联合状
态和联合动作输入至评论家网络得到q值,根据q值更新动作者网络及评论家网络,能够不断优化网络,提高了选择卸载策略的准确性,从而降低卸载失败率。
[0311]
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

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

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

相关文献