Reinforcement Learning Based Intersatellite Computing Offloading and Resource Allocation for Low Earth Orbit Satellites
A reinforcement learning-based method for inter-satellite computation offloading and resource allocation of low-orbit satellites is proposed to address the high cost of single satellite processing tasks and the varying frequency of recent failures in satellite network nodes. Firstly, by filtering the satellite network nodes, available satellites that meet the requirements are added to the edge satellite group. And combine task information with edge satellite node information to establish local computing models and offloading computing models. Then, an optimization problem is established with the objective of minimizing latency and energy consumption, and maximizing the credibility value. Finally, the DDPG algorithm is used to jointly solve the unloading decision and computing resource allocation. The simulation shows, compared to single-star processing tasks, the designed inter-satellite computing offloading strategy can significantly reduce task costs and increase the reliability of offloading.
Low Orbit Satellites
近年来,随着卫星通信技术的飞速发展和低轨卫星网络(Low Earth Orbit, LEO)的迅速部署,低轨卫星已成为全球互联网覆盖和增强地面通信能力的重要手段
在基于模型的方法中,文献
在数据驱动方法中,文献
与上述方法不同,本文提出了一种基于DDPG的卫星间计算卸载与资源分配方法,能够联合优化卸载卫星选择和计算资源分配变量。本文的主要贡献总结如下:
1) 提出了一种强化学习辅助的卫星间计算卸载与资源分配方法,涵盖卸载卫星的选择、优化问题建模以及问题求解的完整流程。
2) 对最小化系统延迟、能耗和信任值加权成本的优化问题进行了建模,并在满足延迟和计算资源约束的前提下,构建DDPG算法,以联合优化卸载策略与资源分配变量。
3) 通过仿真结果验证,所提出的方法在收敛性能上表现更优,并且与传统方法和DQN方法相比,取得了更好的性能表现。
本文的其余部分组织如下。第二节介绍了系统模型。第三节介绍了问题建模。第四节中,介绍了基于强化学习的星间计算卸载与计算资源分配的算法。第五节给出了仿真结果。最后,第六节对本文进行了总结。
本文以Starlink一期星座为构型,其包括1584颗卫星,星座由72个轨道平面组成,每个轨道平面上有22颗卫星,卫星运行在大约550公里的低地球轨道(LEO)
具体卫星星间计算卸载流程如
低轨卫星间采用常见的“X”型星间链路构型,如
首先将接收到的总任务进行分割,得到M个子任务,每个子任务由两个参数组成的元组Ci =
对于每个子任务,本地卫星可以通过星间链路将其卸载到不同的边缘卫星上,在不同的卫星上子任务可以同时执行,很大程度上降低了时延。每个子任务的卸载决策用 表示,其中 表示子任务在本地卫星上计算, 表示本地卫星将子任务i卸载到边缘卫星j上进行计算。
(1) 本地计算模型
子任务在本地卫星进行计算时,考虑在边缘计算环境中,本地卫星的计算能力恒定,所以定义本地卫星的计算能力为 ,因此可以得到子任务i在本地卫星执行的时间为 ,即
(1)
为了计算本地卫星执行子任务时的能耗,采用每个计算周期的能耗模型
(2)
在本系统中可信值也是一个影响选择节点的因素,在本地计算时的可信值相比于卸载计算较高,所以在本地计算时的可信值设置为 ,其值设置为一个常数。
(2) 边缘卫星计算模型
当本地卫星执行子任务不满足约束条件时,考虑将子任务卸载至边缘卫星进行计算。发送过程中会存在传输时延与传播时延,定义本地卫星与边缘卫星之间的传输速率为 ,因此子任务i卸载到边缘卫星j的传输时延为 ,即
(3)
定义子任务卸载时的传播速度为c,L为两星之间的距离当跳数为1时,传播距离为本地卫星与边缘卫星j之间的距离,当跳数大于1时,传播距离为本地卫星与边缘卫星j之间最小跳数路径的距离之和,因此子任务i卸载到边缘卫星j的传播时延为 ,即
(4)
当子任务卸载至边缘卫星侧时,边缘卫星会为其分配计算资源。定义边缘卫星j的计算能力为 ,假定边缘卫星j给子任务i分配的计算能力为 。对于任意一颗边缘卫星,其为任务分配的计算资源不能超过其自身计算资源,即
(5)
因此子任务i在边缘卫星j上计算的时间为 ,即
(6)
子任务从本地卫星卸载至边缘卫星的能耗包括任务传输能耗 和任务计算能耗 ,定义 为本地卫星的传输功率,由此可得传输能耗为
(7)
根据本地卫星计算能耗可知,边缘卫星计算能耗为
(8)
假设节点出现故障的概率服从参数为
的泊松分布
(9)
由公式(1)和公式(3~6),可以得到子任务i的时延可表示为如式(10)
(10)
由公式(2)和公式(7~8),可以得到子任务i的能耗可表示为如式(11)
(11)
由公式(9),可以得到子任务i的可信值可表示为如式(12)
(12)
根据公式(10~12)可得,子任务的总时延、总能耗和总可信值的加权和(系统成本)如式(13)
(13)
其中, 为时延的权重因子, 为能耗的权重因子, 为可信值的权重因子,通过调节权重因子可以改变每个分量的大小。
本文旨在最小化系统时延与能耗,最大化可信值,综上所述,在时延与资源的约束下,通过联合优化卸载决策与计算资源分配问题以最小化系统成本。具体的目标函数为:
(14)
约束条件(1)表示一个子任务只能选择一个边缘卫星进行卸载;约束条件(2)表示子任务需要在规定时间内完成;约束条件(3)表示边缘卫星j为卸载至该卫星的子任务分配的计算资源总和不能超过其最大计算资源。
首先,本地卫星将收到的任务分割成多个子任务,并通过节点选择从周围可用卫星中来筛选符合条件的卫星,将其加入边缘卫星集群。本地卫星和边缘卫星通过星间链路将任务信息和可用计算资源参数发送给云中心节点,中心节点将得到的任务信息和状态参数输入到DDPG网络中进行训练,得到计算卸载的最优策略和系统开销。
本地卫星可以通过星间链路与多条转发让周围卫星参与协作,假定σ表示在一段时间内卫星发生故障的平均次数,hop表示本地卫星与周围卫星之间的跳数,由于卫星网络节点的不确定性,每个卫星的σ值和hop不同,由此可以通过约束来筛选符合条件卫星节点加入边缘卫星群组:
(15)
(16)
本文的优化变量包括离散变量A和连续变量F,则目标函数是一个混合整数非线性规划,采用传统方法难以获得最优解,因此本文引入马尔可夫决策过程(Markov Decision Process, MDP),采用DDPG算法处理混合动作并学习最优卸载策略。
根据提出的优化问题进行MDP建模,模型包括状态、动作和奖励三部分。每个时间步智能体通过与环境进行交互,根据当前状态sp来采取动作ap,得到一个奖励rp,并反馈给环境获得一个新的状态sp+1。
(1) 状态空间:状态空间sp包含了系统所有的观测状态,包括系统输入状态(包括任务队列状态、任务数据量、任务CPU周期数)和系统资源状态,在时刻 的状态空间用一维向量表示为:
(17)
其中, 表示当前任务队列状态, 表示所有子任务的信息, 表示边缘卫星当前剩余计算资源。
(2) 动作空间:在p时刻采取的动作ap包含决策卸载与计算资源分配,可表示为:
(18)
其中, 表示在p时刻让子任务i卸载到边缘卫星节点j, 表示在p时刻让边缘卫星节点j为子任务分配的计算资源。
(3) 奖励函数:在状态sp执行动作ap,环境进入下一状态sp+1,并返回对应的奖励rp。设计的奖励函数应满足目标函数的需求
(19)
其中,K为常量,使奖励趋向正值, 是式(14)中的优化目标。Q表示惩罚项,由两部分组成, 表示子任务处理超时的惩罚, 表示分配的计算资源溢出的惩罚,这两种情况都会导致系统成本增加,从而导致惩罚。
基于DDPG的卫星星间计算卸载过程的框架如
(20)
执行动作ap后由环境反馈得到奖励rp和下一状态sp + 1,将每个时间步的状态、动作、奖励和下一状态表示为一条经验 ,并存入经验回放缓冲区。
当存放的经验数目等于回放缓冲区的大小时开始训练,从经验缓冲区中随机抽取batch_size组经验,首先,通过Critic目标网络得到式(21)
(21)
其中, 为折扣因子, 由Actor目标网络近似估计得到,通过Critic训练网络得到式(22)
(22)
然后通过最小化损失函数来来更新Critic训练网络,如式(23)
(23)
Actor目标网络用于提供下一状态的策略,Actor训练网络则是提供当前状态的策略,结合Critic训练网络的Q值函数,可以通过Actor网络更新策略梯度来训练,如式(24)
(24)
最后通过软更新的方式更新Actor目标网络和Critic目标网络,如式(25)
(25)
(26)
本节对所提出的基于DDPG的星间计算卸载方案进行了仿真分析。首先。我们分别描述了仿真参数和网络结构。然后,我们对不同参数对训练过程和结果的影响进行了分析。
利用STK软件得到某一时刻一组可用卫星的拓扑结构与各节点之间的距离,通过STK的接口将各个卫星之间的距离矩阵导入Pycharm,
参数 |
数值 |
Number of tasks, M |
10 |
Number of edge satellites, N |
[1, 6] |
Size of total task, D |
[10, 50] MB |
Task workload, ω |
10 cycles/bit |
The computing capacity of local satellite, |
1 GHz |
The computing capacity of edge satellite, |
[5, 10] GHz |
The transmission of local satellite, ptrans |
3 W |
The effective capacitance coefficient, κ |
10~28 |
Inter satellite transmission rate, v |
2 × 104 MB/s |
Maximum tolerable delay, tmax |
200 ms |
对于DDPG的参数,Actor网络包含两个全连接层,分别由128和64个神经元组成,学习率为0.0001,Critic网络包含三个全连接层,分别由258、128和64个神经元组成,学习率为0.001,两个网络都采用AdamOptimizer来进行更新,OU噪声的初始标准差为σ = 0.5,回归速度为θ = 0.2,时间步长dt = 0.01,OU噪声每个时间步的标准差衰减率为0.9995,折扣因子为γ = 0.99,软更新因子为τ = 0.001。
在训练过程中,最大训练回合数为2000,经验回放缓冲区的大小为30000,采样批次大小为128。为了验证DDPG算法的优势,将其与Local、Random和DQN算法进行对比。其中,Local为不进行卸载,本地处理任务;Random为任务随机生产卸载决策和边缘卫星随机为任务分配计算资源;DQN中将边缘卫星计算资源分配进行离散化,得到离散的卸载决策和计算资源分配的动作组合。
算法 |
训练阶段 |
测试阶段 |
DDPG |
603.14 |
21.66 |
DQN |
358.61 |
17.69 |
PSO |
/ |
49.34 |
Random |
/ |
2.93 |
Local |
/ |
2.69 |
边缘卫星数量 |
时延 |
1 |
10.9% |
2 |
24.3% |
3 |
34.3% |
4 |
46% |
5 |
48.5% |
6 |
51.5% |
边缘卫星数量 |
能耗 |
1 |
62.5% |
2 |
104.2% |
3 |
170.8% |
4 |
287.5% |
5 |
416.7% |
6 |
429.2% |
本文提出了一种基于强化学习的低轨卫星星间计算卸载与资源分配方法,以应对单星任务处理成本高及卫星网络节点故障频率变化的问题。通过构建以最小化时延和能耗、最大化可信值为优化目标的模型,并利用DDPG算法联合优化卸载决策与资源分配,主要得出以下结论。
所提出的计算卸载策略相比单星处理任务,能够显著减少任务时延(减少51.46%),同时在能耗优化方面表现突出;与传统PSO算法相比,DDPG算法在任务卸载与资源分配的性能上表现更优,任务时延减少了36.26%;与DQN方法相比,DDPG算法在资源分配精确性和时延优化方面更具优势,任务时延减少了26.11%;仿真实验表明,DDPG算法在不同参数条件下均展现了优越的收敛性能和稳定性,系统奖励显著高于对比算法,验证了其在低轨卫星网络中的有效性。
综上所述,本文提出的方法在低轨卫星计算卸载与资源分配方面具有良好的实用性和性能提升潜力,为实现更高效的卫星网络资源管理提供了有力支持。