本发明属于车联网,涉及三层车联网模型任务卸载和资源分配建模方法。
背景技术:
1、5g通信技术的迅速发展加速了车联网应用的落地,为车辆用户提供了极大的便利。这些应用运行的过程中通常会产生大量不同类型的应用数据,其中包含的路况信息、车辆信息等关键数据可以有效提升用户的体验质量。移动边缘计算技术的出现使车辆设备可以将数据处理的任务卸载至边缘服务器或云中心服务器协助计算,提供了更灵活的任务处理方式。
2、虽然利用移动边缘计算技术可以缓解车辆处理数据的计算压力,但是随着车联网中设备数量的增加,车对车、车对基础设施通信会产生大量能耗,服务响应延迟也会增加,严重影响用户的使用体验。任务卸载和处理的过程中,控制中心需要为车辆设备分配好通信和计算资源并将处理任务的延迟和能耗控制在一定范围内。面对任务卸载和资源分配的联合优化问题,一些方案选择将联合优化问题拆分为多个子问题,通过迭代算法来依次解决。此类方式复杂耗时,在车联网环境下效率较低。也有的方案会采用强化学习算法来解决问题,使用q-learning、深度q网络(deep q network,dqn)等算法来获取任务卸载的最佳决策。但是基于这些算法的任务卸载和资源分配策略无法满足人工智能类应用在延迟和能耗方面较高的需求,极大影响了用户的使用体验。而基于多智能体强化学习的任务卸载和资源分配策略能从全局的角度给出决策,有效减少了任务执行时的延迟和能耗。
技术实现思路
1、本发明的目的是提供三层车联网模型任务卸载和资源分配建模方法,采用该方法能够减少任务执行时的延迟和能源消耗。
2、本发明所采用的技术方案是,三层车联网模型任务卸载和资源分配建模方法,具体包括如下步骤:
3、步骤1,构建“云-边-端”三层车联网模型;
4、步骤2,设置车联网环境参数;
5、步骤3,计算出不同设备间的通信传输速率;
6、步骤4,建立车联网的计算过程的数学模型,分别计算不同任务卸载方式和执行方式的时间消耗和能量消耗;
7、步骤5,建立车联网中任务的成本的数学模型,从而对任务卸载的延迟和能耗进行优化;
8、步骤6,定义三层车联网模型的状态空间和动作空间;
9、步骤7,建立奖励函数;
10、步骤8,建立边缘服务器中决策模型、评价模型、目标决策模型和目标评价模型,并初始化这些神经网络模型的参数与环境互动训练并更新神经网络模型的参数,获取决策模型,根据决策模型获取最佳卸载动作。
11、本发明的特点还在于:
12、步骤1的具体过程为:
13、“云-边-端”三层车联网模型的结构包括设备层、边缘计算层、云中心层,设备层中的车辆设备产生不同类型的计算任务;边缘计算层位于设备层和云中心层之间,边缘计算层中的边缘服务器连接了车辆设备和云服务器,传输数据的同时还能协助任务的计算;云中心层中的云中心服务器通过计算资源来协助任务处理。
14、步骤2的具体过程为:
15、设三层车联网模型环境中:云中心层中的云中心服务器的数量为1,边缘计算层中的边缘服务器的数量为e,边缘服务器通信范围内的车辆设备的数量为n;设定车辆n和边缘服务器e之间的上行信道通信资源和上行信道总数分别为ce和ke,相邻边缘服务器之间的上行信道通信资源和上行信道总数分别为ce2e和ke2e,车辆之间的上行信道通信资源和上行信道总数分别为cn2n和kn2n,车辆n和边缘服务器e所有的计算资源分别为fn和fe;设定在t时刻车辆n产生了任务其中分别表示任务的大小、完成任务所需计算资源、任务可接受的最大延迟;根据任务的延迟要求将任务an,t分为三类:
16、当小于高优先级任务能接受的最大延迟thre1时,an,t属于高优先级任务(ah),适合在车辆本地执行;
17、当大于thre1且小于中优先级任务能接受的最大延迟thre2时,an,t属于中优先级任务am,适合卸载到边缘服务器或相邻空闲车辆的方式执行;
18、当大于thre2时,an,t属于低优先级任务al,适合卸载到云中心服务器执行。
19、步骤3的具体过程为:
20、步骤3.1,设为车辆n卸载任务时的功率,σ2为噪声功率,和分别为信道增益和信道干扰,be=ce/ke为任务传输时每个子信道的带宽,ce和ke分别为车辆n和边缘服务器e之间上行信道通信资源和信道总数;分配给车辆n的上行信道k的传输速率为采用如下公式(1)进行计算:
21、
22、设表示上行信道k是否分配给了车辆n,车辆n和边缘服务器e之间的传输总速率为采用如下公式(2)进行计算:
23、
24、步骤3.2,设为边缘服务器e卸载任务时的功率,和分别为信道增益和信道干扰,be2e=ce2e/ke2e为任务传输时每个子信道的带宽,ce2e和ke2e分别为边缘服务器e和相邻边缘服务器e'之间上行信道通信资源和信道总数;分配给边缘服务器e的上行信道k的传输速率为采用如下公式(3)进行计算:
25、
26、设表示上行信道k是否分配给了边缘服务器e,边缘服务器e和相邻边缘服务器e'之间的传输总速率为采用如下公式(4)进行计算:
27、
28、步骤3.3,设为车辆n卸载任务时的功率,和分别为信道增益和信道干扰,bn2n=cn2n/kn2n为任务传输时每个子信道的带宽,cn2n和kn2n分别为车辆n和相邻车辆n'之间上行信道通信资源和信道总数;分配给车辆n的上行信道k的传输速率为采用如下公式(5)进行计算:
29、
30、设表示上行信道k是否分配给了车辆n,车辆n和相邻车辆n'之间的传输总速率为采用如下公式(6)进行计算:
31、
32、步骤3.4,设边缘服务器e和云服务器c之间的传输速率为固定值
33、步骤4的具体过程为:
34、步骤4.1,设车辆本地的计算资源为fn,则本地执行任务所需时间的计算公式(7)为:
35、
36、车辆的单位计算资源能耗为ηn(fn)2,则本地执行任务的能耗的计算公式(8)为:
37、
38、步骤4.2,边缘服务器e的计算资源为fe,任务在边缘服务器中分得的计算资源的比例为执行任务所需时间的计算公式(9)为:
39、
40、边缘服务器e的单位计算资源能耗为de,执行任务的能耗的计算公式(10)为:
41、
42、步骤4.3,相邻边缘服务器e'的计算资源为fe',任务在相邻边缘服务器中分得的计算资源的比例为执行任务所需时间的计算公式(11)为:
43、
44、相邻边缘服务器的单位计算资源能耗为de',执行任务的能耗计算公式(12)为:
45、
46、步骤4.4,计算卸载到相邻车辆执行任务所需的延时tn,n'和能耗en,n',具体为:
47、相邻车辆n'的计算资源为fn',任务在相邻车辆执行所需的时间为tn,n'计算公式(13)为:
48、
49、相邻车辆的单位计算资源能耗为ηn'(fn')2,则完成任务所需能耗为en,n',其计算公式(14)为:
50、
51、步骤4.5,云服务器可能会处理am和al两类任务,al类任务计算结果较大需要考虑结果的传输时间,因此任务执行所需的时间为其计算公式(15)为:
52、
53、设边缘服务器和云服务器之间的传输功率为完成任务所需能耗为其计算公式(16)为:
54、
55、步骤5的具体过程为:
56、车辆n在t时刻产生的任务执行完成所需时间为tn,t,其计算公式(17)为:
57、
58、ωl,ωe,ωe',ωn',ωc∈{0,1}分别表示本地执行、卸载到边缘服务器、卸载到相邻服务器、卸载到相邻车辆和卸载到云服务器;
59、执行能耗为en,t,计算公式(18)为:
60、
61、设αn和1-αn分别为延时和能耗的权重,且αn∈[0,1],系统成本模型为un,t,计算公式(19)为:
62、un,t=αntn,t+(1-αn)en,t (19)
63、边缘服务器e的优化目标λe,t由任务完成数量dn,t和系统成本un,t组成,并且存在限制条件(c1)-(c7),对延迟和能耗的优化目标λe,t计算公式(20)和限制条件(21)分别为:
64、
65、
66、其中,θ和x分别为任务所分配到的计算机资源和通信资源。
67、步骤6的具体过程为:
68、定义三层车联网模型状态空间的具体过程为:
69、模型的全局状态空间定义为st=(s1,t,...,se,t,...,se,t),边缘服务器e在t时刻的状态空间定义为边缘服务器e在t时刻的通信范围内车辆的任务状态为边缘服务器e在t时刻可用的计算资源为通信资源为
70、定义三层车联网模型动作空间的具体过程为:
71、三层车联网模型的全局动作空间为at=(a1,t,...,ae,t,...,ae,t),边缘服务器e在t时刻的动作空间定义为队列中的任务共存在5种执行方式,队列中的任务共存在5种执行方式,φl、φm·ωe、φm·ωe'、φm·ωn'、φh∈{0,1}分别表示本地执行、卸载到边缘服务器、卸载到相邻服务器、卸载到相邻车辆和卸载到云服务器。
72、步骤7的具体过程为:
73、奖励函数采用如下过程确定:
74、为了最大化优化目标,边缘服务器e在t时刻的奖励函数计算方公式(22)式如下:
75、re,t=l+β·exp(-λe,t) (22)
76、其中,l、β均为实验参数,在t时刻所有边缘服务器的奖励值的集合表示为rt=(r1,t,...,re,t,...,re,t)。
77、步骤8的具体过程为:
78、每个边缘服务器中都包含有决策模型、评价模型、目标决策模型和目标评价模型,这四个模型均为全连接神经网络模型,训练前需要初始化所有边缘服务器中的决策模型μ={μθ1(),...,μθe(),...,μθe()}和评价模型的神经网络模型参数,并将神经网络模型参数θ和q分别复制给目标决策模型μ'和目标评价模型qμ';训练开始后每个边缘服务器将状态se,t输入决策模型获取动作ae,t和环境互动并获取动作奖励值re,t和下一时刻的状态se,t+1;云服务器将每个时刻的全局样本数据(st,at,rt,st+1)保存在经验回放区d中;每当经验回放区d新存入一定数量的样本数据时,每个边缘服务器随机抽取其中的样本数据(st,at,rt,st+1)用于训练神经网络模型,更新神经网络模型的参数;
79、边缘服务器e的评价模型qe需要对损失函数l(qe)用梯度下降来进行更新,评价模型的损失函数l(qe)的计算公式为:
80、
81、其中损失函数中用到的目标q值y的计算公式为:
82、
83、其中,γ是折扣系数;
84、边缘服务器e的决策模型θe使用梯度上升的方式更新模型,其中的梯度的计算公式为:
85、
86、其中,x表示边缘服务器e抽取样本数据的总数;
87、决策模型采用软更新的方式更新参数,边缘服务器e更新后的决策模型θ'e采用如下公式(26)进行计算:
88、θ'e=kθe+(1-k)θ'e (26)
89、目标评价模型和目标决策模型的参数更新方式为每当评价模型和决策模型的更新迭代一定次数后直接复制对应模型的参数;
90、此外,每当边缘服务器本地的决策模型更新满一定次数时,所有边缘服务器需将模型上传至云服务器执行模型聚合,模型聚合的计算公式为:
91、
92、其中,d为所有边缘服务器抽取样本数据的总数,di为边缘服务器i抽取样本数据的数量,云中心服务器完成模型聚合后将新的决策模型θ'下发给各个边缘服务器继续训练;
93、循环执行上述模型训练过程练直到奖励函数re,t达到相对稳定的正数时停止训练,得到训练完成的决策模型;
94、边缘服务器e基于训练完成的决策模型,将t时刻的当前状态信息se,t输入决策模型中获取最佳卸载动作ae,t。
95、本发明的有益效果是,本发明将边缘服务器作为智能体,通过多智能体强化学习算法与车联网环境互动,多角度观察环境,最终训练出决策模型来获取任务的最佳卸载策略。与现有方法相比,该方法适用于处理连续动作空间的决策问题,采用该方法除了能够减少任务执行时的延迟和能源消耗,还有利于提高算法的平均奖励值,提高任务完成率,且获取的任务卸载策略有利于合理分配环境中有限的资源。同时该方法在模型训练的效率上也能取得较好的表现。