D3PG: Dirichlet DDPG for Task Partitioning and Offloading with Constrained Hybrid Action Space in Mobile Edge Computing
移动边缘计算中具有约束混合动作空间的任务划分和卸载的狄利克雷深度确定性策略梯度算法
一、摘要 Abstract
I、内容 Content
移动边缘计算(MEC)通过在网络边缘提供计算资源来减少物联网数据处理的服务延迟,被认为是一种很有前途的范例。在这项工作中,我们共同优化了在多个物联网设备和多个边缘服务器的动态环境中进行计算卸载的任务划分和计算能力分配。我们将该问题表述为具有约束混合动作空间的马尔可夫决策过程,现有的深度强化学习(DRL)算法无法很好地处理该问题。因此,我们开发了一种新的深度强化学习,称为Dirichlet深度确定性策略梯度(D3PG),它建立在深度确定性策略梯度(DDPG)的基础上来解决这个问题。该模型可以学习解决多目标优化问题,包括最大限度地提高到期前处理的任务数量,最大限度地降低能源成本和服务延迟。更重要的是,D3PG可以有效地处理约束分布-连续混合动作空间,其中分布变量用于任务划分和卸载,连续变量用于计算频率控制。此外,D3PG可以解决MEC和一般强化学习问题中的许多类似问题。大量的仿真结果表明,所提出的D3PG算法优于目前最先进的方法。
II、总结 Summarize
- 联合优化N个物联网设备、M个边缘服务器的动态环境下的任务卸载和资源分配;
- 将问题表述为具有约束混合动作空间的马尔可夫决策过程;
- 建立在DDPG上的D3PG;
- 解决多目标优化问题,最大限度处理到期前任务,最大限度降低能耗和延迟;
- 可有效处理约束分布-连续混合动作空间;
- 联合优化了任务划分、任务卸载和计算频率控制;
- 针对多个联合优化问题,提出了一个可配置的优化目标,以端到端方式优化多个目标,不需要像现有方法那样进一步优化。
III、 附言 Postscript
- “到期前”是指所有子任务都在最大容忍的延迟时间之内完成的情况。换句话说,如果最后一个子任务在截止时间之前被处理完成,那么这个任务就被视为成功处理;否则,它会被认为是过期的,并且是未能响应用户的失败。
IV、关键词 Keywords
Mobile Edge Computing, Task Partition, Deep Reinforcement Learning, Computation Offloading, Energy efficiency, TD3, DDPG, Dirichlet
移动边缘计算、任务分区、深度强化学习、计算卸载、能效、TD3、DDPG、Dirichlet
二、介绍 Introduction
I、总结 Summarize
- 移动边缘计算(Mobile Edge Computing, MEC)的提出是为了解决近距离的任务,减轻核心网的负担。但MEC服务器配备的计算资源比中央云服务器少得多;因此,任务卸载和调度优化对于开发有限的资源,提高服务质量和降低成本至关重要。
- 将一个卸载任务切成小的子任务,这些子任务可以在异构边缘服务器上处理。因此,将任务切片为小的子任务并卸载到边缘服务器上,可以充分利用边缘服务器上有限的计算能力。
- 以端到端方式解决联合优化问题,共同优化决策变量,处理一个混合动作空间。
II、贡献 Contributions
- 利用D3PG模型优化移动边缘计算(MEC)资源分配,提高服务质量。
- 生成分布式连续混合动作空间,其中每项动作既包括划分和卸载任务的狄利克雷分布分布,也包括用于计算能力(频率)控制的连续组件。
- 提出了可配置的优化目标,以端到端的方式同时优化多个目标,无需进一步的手动优化,这一点与现有的方法形成鲜明对比。
三、系统模型 System Model
I、模型示意图 Model Figure
II、系统环境 System Environment
- 在时间间隙t内有N个IoT用户集合
和K个服务器集合
;
- 第i个用户的任务描述为
,Di, Ci,∆max分别表示任务的数据大小,计算任务所需的CPU周期以及任务的最大容忍延迟(过期时间);
- 一个任务被划分为更小的子任务
,j为子任务的索引且子任务的个数不大于MEC服务器的个数K;
- 所有子任务的时间成本可表示为向量
, i≤N, j≤K;
- 子任务的时间开销描述
,分别为分别为子任务的传输时间、排队时间、计算时间和在服务器上的剩余运行时间;
- 传输速率描述为
,式中,Bj为带宽,Pi, j为传输功率,hi, j, Li, j, N0分别为瑞利衰落,路径损耗,噪声功率。
-
如果所有子任务都在最大容忍延迟之前完成,则认为任务Ωi在相应的截止日期之前完成。换句话说,如果最后一个子任务在过期时间之前已经处理完毕,则该任务处理成功;否则,它被认为是过期的,并且无法响应用户。当任务在相应的截止日期之前完成时,我们可以给任务分区和卸载协调器指定一个正标志(+1);当不能及时响应用户时,将此标志设为0,即
-
每当agent进行任务分割和任务卸载操作时,都会得到一个能量成本作为惩罚,因此任务过期时就会得到负反馈,总能耗描述为传输消耗的能量与计算消耗的能量总和,即
III、问题描述 Problem Formulation
- 优化目标是在任务到期前处理的任务数量最大化和能耗最小化。每个动作包含两个向量,Φi用于任务划分,Fi用于频率控制。β1、β2、β3为归一化因子。
- 为解决在减少能源消耗和增加已完成任务的数量之间取得平衡不灵活的问题,以最大限度地提高预期的累积回报,提出式子
,其中si为当前系统观测值,π为策略,策略将观察状态映射到动作上。
- 每个动作和对应的奖励表述为
其中α是允许网络提供者根据自己的兴趣调整奖励函数的权重;w1、w2和w3是归一化项,C是鼓励agent保持MEC服务器稳定性的小激励。
四、 Dirichlet深度确定性策略梯度 D3PG
I、模型架构 Model Architecture
- 开发一个Actor-Critic的DRL模型,具有基于值和基于策略的强化学习的优点。
- 该系统由三部分组成:MEC网络、MEC环境和DRL代理。
- Dirichlet深度确定性策略梯度(D3PG)的模型,建立在深度确定性策略梯度(DDPG)的基础上。
- 处理连续的动作空间,并满足MEC任务划分的约束。
- 一个任务可以划分为K个子任务,子任务的大小可以表示为
,φj表示第j个子任务中包含的完整任务的百分比。
- 采用狄利克雷分布来捕获约束动作。
II、开发模型 Developed Model
A. 学习过程描述 Learning Process
- 首先,智能体根据环境的观察结果采取行动。
- 其次,环境向DRL代理提供反馈和下一个状态。
- 然后,代理将当前交互数据存储到经验回放缓冲区中,用于训练模型。
- 每个交互记录包括当前状态、动作、奖励和下一个状态,表示为元组<
。
- DRL代理不断与环境交互以生成训练数据集。
- 之后,智能体从经验回放缓冲区中提取训练数据,训练DRL模型内部的学习网络。
- 每个网络都有一个备份副本,称为目标网络,目标网络用于稳定训练。
B. 动作 Action
- 每个动作有两个向量,一个向量
,根据边缘服务器将任务划分为子任务,另一个向量
,其中n为边缘服务器的数量。
- DRL指定要卸载到第j个边缘服务器的任务的pj百分比;建议服务器使用第j个边缘服务器的最高CPU频率的fj百分比来处理子任务。所有元素(动作的子组件)都是连续的,范围为[0;1]。
- 对于每个具体的决策动作,可描述为
,任务分割需满足约束
,即切片任务的比例之和必须等于1;且
时第j个边缘服务器不接收卸载子任务。
- 虽然soft-max函数可满足
约束,但是因其探索机制,这可能导致模型出现局部最优。
- 狄利克雷分布不仅可以满足
的约束,而且可以通过从狄利克雷分布中抽样,自然地探索可能的动作来找到最优策略。给定Dirichlet抽样的随机过程,agent在不节省特定动作的情况下实现了随机策略。
- 使用Dirichlet分布来表征
,有
,将
定义为
- 标准伽马函数定义为
- 为满足Dirichlet的
条件,我们使用指数来处理切片动作的参与者网络输出
- 将Dirichlet分布和Ornstein-Uhlenbeck过程的结果串接成一个完整的动作
,
子动作用于任务划分,其余元素用于频率控制。
- Dirichlet分布和Ornstein-Uhlenbeck过程表示为
,可以解决学习阶段的探索问题。
- 因为DRL模型通过从Dirichlet分布中采样动作并使用Ornstein-Uhlenbeck过程向动作添加噪声来不断探索,因此,所开发的模型可以不断探索环境,并且不太可能堆叠到非最优策略。
III、算法流程 Algorithm Process
- 第一部分是初始化变量和随机权重的网络,创建一个经验回复缓冲区,将网络复制到目标网络。如前所述,我们有两个网络,行动者网络和关键网络,每个网络都有一个目标网络来稳定训练。经验回复缓冲区维护从与MEC网络环境的交互中收集的训练数据。
- 第二部分是通过与环境交互来收集数据。如前所述,作用由Dirichlet分布和Ornstein-Uhlenbeck过程组成。与MEC的每次交互都会生成一个训练样本,每个样本包括当前观察状态、奖励(反馈)、下一个状态和终止标志。收集到的数据集存储在体验回复缓冲区中,这是一个类似队列的容器。经验回复缓冲区有一个固定的大小,当它接收到新数据时,它会丢弃最旧的数据。
- 第三部分用于训练模型中的网络。在训练过程中,目标政策参与者添加了一个平滑因子。同样,噪声只被添加到频率控制子动作中,因为其余的子动作是从狄利克雷分布中采样的。作为标准的演员-评论家设置,该策略是根据评论家定义的q值进行优化的。此外,采用软更新和延迟更新方法对目标网络进行更新。延迟目标网络更新以减少方差。该方法与DQN中介绍的固定方法类似;唯一的区别是,它比固定方法更频繁地更新网络。软更新保留了大量的原始权重,而不是完全覆盖网络,这样模型就不必等待很长时间来更新网络,以避免高方差。更新到目标网络的权重部分可以控制因子τ。
五、实验结果 Experiment Result
I、参数设置 Parameter Settings
- ACtor网络有五层,神经元的数量分别是状态空间的大小,256、512、256和动作空间的大小。
- Critic网络有五层,状态空间中的神经元数量加上动作空间的大小分别为256、512、256和1。
- 参与测试的还包括DDPG、DDPG-softmax、双延迟深度确定性策略梯度(TD3)和贪心算法。
- TD3模型有两个Critic网络,而DDPG只有一个Critic网络。因此,TD3模型比DDPG模型消耗更多的计算能力。
II、数据分析
A、奖励 Reward
- 图4显示了与剧集相关的奖励,D3PG在1500集左右收敛到最优策略。
- 为Dirichlet分布捕获了分区动作来改进策略,D3PG模型可以比其他模型获得更好的结果。DDPG-softmax优于DDPG和TD3的原始版本,因为softmax可以捕获分区操作;但由于softmax没有探索最优策略的探索机制,它很可能收敛于局部最优。
- 事实上,这个DDPG-softmax有相对较好的结果,因为我们像在TD3中一样在操作中添加了噪声,以帮助softmax探索分区操作。
- 因为我们必须强制分区动作满足动作空间约束,导致原始的DDPG和TD3性能都很差。
- 贪婪算法不需要学习过程,可以在早期收集更多奖励;它优于标准的TD3和DDGP。
B、处理任务 Completed Tasks
- 图5展示了到期前完成的任务数量。
- 边缘服务器在开始时每集只能处理最少数量的任务,因为模型采取的随机操作无法正确分配资源。
- 当模型与MEC环境交互以学习和改进策略时,它们可以最优地分配资源并服务于最大数量的卸载任务。
C、到期前处理的任务数与总任务数的比率
- 因为边缘服务器设置了相当大的任务计算成本和数据大小,因此,有些任务甚至不可能在相应的截止日期前完成,完成比例只是为了比较。
- 虽然贪婪算法比DDPG和TD3能够收集到更多的奖励,但是完成的任务数量比学习方法要少。
- D3PG在完成任务和任务完成比率方面优于其他方法,因为约束不会削弱模型。此外,狄利克雷分布可以捕捉环境的不确定性并探索最优策略
D、能量损耗 Energy Consumption
- 图7显示了每个任务的能量消耗,过期的任务也消耗能量。
- 模型可以通过频率控制来节省能量,DRL模型可以找到处理卸载任务的最佳频率,以平衡已完成的任务和能量消耗。
- TD3比其他模型消耗更多的能量。
- 可以将能耗乘以图6的任务完成率来计算浪费的能源。
E、每个任务的能量消耗 Energy to Tasks
- 尽管D3PG比DDPG-softmax消耗更多的能量,但它们处理每个任务所消耗的能量几乎相同,并且D3PG模型比DDPG和TD模型节省更多的能量。
F、平均时间损耗 Average Time Cost
- D3PG模型比其他模型节省了更多的时间。
- DDPG和DDPG-softmax模型由于时间消耗的权重相对较小,所以没有学习如何降低时间成本。
G、系统稳定性 Stability
- 稳定性是通过MEC服务器在每个事件中可以坚持的步数来衡量的当其中一个MEC服务器过载或步数超过1000,我们将episode设置为结束。
- TD3和D3PG模型可以达到近1000个
- 贪心算法在任务完成率上得到了最好的结果
- 但是由于只选择使每个时间步的当前奖励最大化的行动,而不为长期规划资源,边缘服务器很容易过载
六、结论 Conclusion
- 为了处理受约束的混合动作空间,我们提出了一种新的DRL模型,即D3GP,将Dirichlet分布集成到DDGP中进行任务划分决策。
- 将Ornstein-Uhlenbeck过程集成到DDGP中进行频率控制。
- 开发了一种端到端的DRL方法来划分和卸载任务,并分配边缘服务器的计算能力,以实现预期长期回报的联合优化。优化模型以最大限度地在截止日期前完成任务,最小化能源消耗,同时最小化时间成本。