1.一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,包括如下步骤:步骤1,获取信息:车辆可接入的RSU的集合r、请求在RSU区域中的卸载的车辆任务Q、RSU的网络带宽b;
步骤2,根据步骤1中的RSU的信息划分车载任务的卸载时隙;
步骤3,将车载任务卸载时隙决策方法进行建模;
步骤4,使用深度强化学习方法求解步骤3中的模型表达式。
2.根据权利要求1所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,所述步骤1中的信息具体包括:①RSU区域中的卸载任务,记为q={Q1,…Qi,…,Qn},其中Qi表示第i辆车的任务;
②车载任务大小,记为m={M1,…,Mi,…Mn},其中Mi表示Qi的大小;
③t={T1,…,Ti,…,Tn},其中Ti即为Qi的时延约束;
④可供车辆接入的RSU集合,记为r={R1,…Ri,…Rn};
⑤各个RSU已经接入的车载任务数目,记为rA={R1A,…,RiA,…,RnA};
⑥RSU的带宽,记为b={B1,…,Bi,…,Bn},其中Bi表示Ri的网络带宽。
3.根据权利要求1所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,所述步骤2中车载任务的卸载时隙划分方法为:步骤2.1,收集RSU的链路带宽,记为W;收集RSU的平均信号功率,记为P;收集RSU的噪声功率,记为N;将RSU与车辆的链路损耗功率记为Lp;
步骤2.2,车辆与RSU的传输速率ν可表示为:
其中,[LP]=32.45+20lg d+20lg f,d为车辆与RSU的距离,f为RSU的信号频率;
步骤2.3,大小为M的车载任务的传输延迟可表示为:步骤2.4,根据网络延迟受车辆与RSU的相对距离影响,将每个RSU的覆盖范围划分为n个任务卸载时隙Gap1,…,Gapi,…Gapn,其中任意时隙用g表示,g∈[Gap1,…,Gapi,…Gapn。
4.根据权利要求3所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,步骤3中将车载任务卸载时隙决策方法进行建模的方法为:步骤3.1,定义卸载决策为l={L1,…,Li,…,Ln},Li表示第i辆车的选择卸载任务的地点;过SRU做地面垂点,g表示为卸载时隙与该垂点的距离。则 其中,high为RSU与地面的垂直高度;
步骤3.2,确定单个任务的卸载决策,车载任务卸载时隙决策Li即为对卸载时隙g的选择,即对 一定有Li∈[Gap1,…,Gapi,…Gapn];
步骤3.3,车载任务的传输延迟可由RSU的带宽b、卸载时隙决策l、车载任务的大小m决定,则车载任务的传输延迟可重写为:式(3)中的②表示RSU的链路带宽W由RSU的带宽b代替;④表示车辆与RSU的相对距离由决策l表示;
步骤3.4,由式(3)再次重写车载任务的传输延迟为:其中Lp=32.45+20lg l(km)+20lg f(MHz);
步骤3.5,将车载任务卸载时隙决策方法转化为求解式(5),Di(b,l,Mi)表示第i个车载任务的传输延迟。
其中,MAXrA表示rA的最大值;车载任务卸载时隙决策会影响rA的值,rA≤MAXrA表示rA不能超过最大的车载任务接入数量。
5.根据权利要求4所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,步骤4中利用深度强化学习方法求解式(5)的具体步骤为:步骤4.1,建立马尔可夫状态空间
S={t,rV,rD,rA}
其中各个参数说明如下:
①车载任务的时延约束记为t={T1,…,Ti,…,Tn},其中Ti为任务Qi的时延约束;
②供车辆接入的RSU集合定义为r={R1,…Ri,…Rn},r中各个RSU的任意卸载时隙用g表示,g∈[Gap1,…,Gapi,…Gapn],处于不同的卸载时隙中车辆任务的卸载速率各有不同,将r中的所有卸载时隙的卸载速率集合表示为rV={R1G1V,…,RiGjV,…,RnGnV},RiGjV表示第i个RSU的第j个卸载时隙的传输速率;
③r中各个RSU的各个卸载时隙中车载任务的传输延迟表示为rD={R1G1D,…,RiGjD,…RnGnD},RiGjD表示车载任务在第i个RSU的第j个卸载时隙的传输延时;
④各个RSU已经接入的车载任务数目为rA={R1A,…,RiA,…,RnA};
步骤4.2,建立马尔可夫动作空间
A={(a,b)|a∈{[1,n]∩N+},b∈{[1,n]∩N+}其中各个参数说明如下:
①a表示执行卸载车载任务时车辆所接入的RSU;
②b表示执行卸载车载任务时车辆所接入的RSU的卸载时隙;
③N+表示正整数;
步骤4.3,建立马尔可夫奖励函数reward:
reward=ε(η)×base+(2ε(η)-1)×delay(rD,t)+access(rA)其中各个参数说明如下:
①ε(η)为阶跃函数
ε(η)=1时表示车载任务卸载成功,ε(η)=0表示车载任务被成功卸载失败,base为常数,表示基础奖励,则ε(η)×base表示当车载任务卸载成功时获取了基础奖励,失败时则不会获取基础奖励;
②delay(rD,t)表示执行车辆卸载任务所获取的奖励或者惩罚delay(rD)=Rward×(rD-t)
其中,rD表示卸载该车载任务所用的时间,t表示该车载任务的卸载时间约束,当在约束时间t内完成卸载则获取奖励,否则获取惩罚,Rward为奖励值或者惩罚值;
③access(rA)用来判断当前RSU是否还可以接收更多的车载任务MAXrA表示当前RSU可接入的最多的车载任务数量,当可以接入更多车载任务时,即rA≤MAXrA,access(rA)不会对奖励函数reward有任何影响,当rA>MAXrA时,则access(rA)会使reward等于0,即不会由任何奖励;
步骤4.4,根据步骤4.1-4.3中的马尔可夫模型,使用DDPG-HER算法求解最优卸载时隙。
6.根据权利要求5所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,所述步骤4.4的具体实现包括如下:步骤4.4.1,建立Actor当前网络、Actor目标网络、Critic当前网络、Critic目标网络,所述四个网络的说明如下:①Actor当前网络的参数为θ,θ也指代神经网络,负责更新网络的参数θ以及根据当前状态S产生当前动作A,动作A作用于当前状态S,生成状态S'和奖励R,奖励R由奖励函数reward获得;
②Actor目标网络的参数为θ',θ'也指代神经网络,负责从经验回放池中选择动作A'以及更新θ';
③Critic当前网络的参数为ω,ω也指代神经网络,负责计算当前Q值,Q值用来衡量选择动作的优劣;
④Critic目标网络的参数为ω',也指代神经网络,负责计算目标Q值,即Q';
步骤4.4.2,训练Actor当前网络、Actor目标网络、Critic当前网络、Critic目标网络,具体步骤如下:步骤4.4.2.1,首先获得初始化状态S,Actor当前网络根据状态S生成动作A;
步骤4.4.2.2,根据状态S和动作A计算奖励R,并且获取下一状态S';
步骤4.4.2.3,将{S,A,S'}存入经验回放池;
步骤4.4.2.4,将当前状态记为S';
步骤4.4.2.5,计算当前Q值与目标Q值;
步骤4.4.2.6,更新Critic当前网络参数ω;
步骤4.4.2.7,更新Actor当前网络参数;
步骤4.4.2.8,如果当前状态S'是终止状态,则迭代完毕,否则转到步骤4.4.2.2;
步骤4.4.3,由训练好的网络计算最优卸载时隙。
7.根据权利要求1所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,还包括步骤5,将算法部署至SDN控制器。
8.根据权利要求7所述的一种基于深度强化学习的软件定义车载任务细粒度卸载方法,其特征在于,所述步骤5的具体方法为:DDPG-HER算法训练完成后,保存Actor当前网络并将其部署至SDN控制器。当有卸载需求时,由SDN控制器根据当前网络和节点的状态信息为车载任务确定最佳的卸载时隙。