# 系统模型假设
在模型中,我们有N 个 IoT 设备,设置时间跨度为T 并且分为T 步。对于每一个时间t,设备i 需要处理队列中的一个任务,用元组(Li,t,Ci,t,Ti,t)。第一项表示任务的大小,第二项表示任务的 CPU 周期要求,第三项表示任务的最大延迟阈值。在任何时刻t,设备都可以在本地进行任务或者将任务卸载到边缘或者 cloud server
定义xi,t,yi,t,zi,t,这三个系数表示任务的执行决定。第一项表示若任务在本地执行则为 1,否则为 0;第二项表示任务是否卸载在边缘,第三项表示任务是否卸载到云中心。所以有xi,t+yi,t+zi,t=1
当设备决定卸载任务时,延迟和能耗将取决于信道条件、任务的大小以及设备传输其任务的功率;在本地计算的情况下,它们取决于计算资源的利用率。
如果设备决定卸载任务,它应该首先通过无线信道将其传送到支持 MEC 的基站。在时间t,用户的数据传输速率表示为:
ri,t=Blog2(1+σ2pi,thi,t)
B 表示传送带宽,p 表示设备的传输功率,h 表示信道增益,σ 表示接收器噪声
下图是当卸载任务时,设备i 的通信延迟和能量消耗

如果设备i 卸载到 edge server,计算延迟表示为Ti,te=FeCi,t;如果卸载到 cloud server,计算延迟表示为Ti,tc=FcCi,t。分母表示为两种服务器的平均计算能力
当一个任务被卸载到任何一个服务器上时,处理该任务的能量消耗就是传输任务的能量,因此Ei,tc 和Ei,te 都等于E^{comm}_
如果设备i 选择在本地执行任务,本地计算的延迟和能耗将取决于在时间t 分配给处理任务的计算资源量,用fi,tL 表示。因此设备的本地延迟和能耗表示为Ti,tL=fi,tLCi,t,Ei,tL=κi(fi,tL)2 κ 是常数,取决于设备芯片结构。
# 多目标问题陈述
在指定的时间范围内,以分散的方式联合最小化物联网设备的长期延迟和能耗。每个设备的长期预期成本(延迟和能耗的加权总和)分别表述如下:



黑体字母代表各个时间的向量。由于云服务器一般距离物联网设备较远,访问云的延迟通常比卸载到位于网络边缘的边缘服务器的延迟要大。在公式中Ψ 表示访问云服务器的延迟,包括将任务从 BS 转移到云端所需的时间,路径中可能的路由,以及响应延迟。
问题建模如下:

如果设备i 在能源资源方面比计算资源更受限制,那么λi 的值应该被设置为一个较大的数字。否则,λi 应该是一个小数字。这个问题由于系数的加入是一个 MINLP,无法在可接受的时间跨度内得到解决。
# FEDERATED DDQN ALGORITHM
卸载决策优化: 由于每个物联网设备有三种选择来处理任务(即本地、边缘服务器或云服务器计算),在每个给定的时间步长中,几乎有23N 种可能的卸载选择(从集中式控制器的角度来看)。随着设备数量的增加,这种复杂性也会呈指数级激增。为了解决这个问题,我们应用了一个多代理 DDQN 框架,其中每个物联网设备将使用他们的本地数据训练他们的本地 DDQN 模型。
计算和通信资源分配: 考虑到卸载决定,我们对设备的计算能力或发射功率进行优化,以使能源消耗和延迟的加权和最小化。我们使用优化理论来解决这部分问题,然后将结果作为直接成本函数输入 DDQN 框架。通过这种方式,我们为学习代理提供了一个真正意义上的所采用的卸载政策的质量,它反映了系统模型的许多重要方面(如每个设备的资源限制和他们的 QoS 需求)。在 DDQN 代理通过上述过程进行一轮训练后,我们应用联合学习框架,每个物联网设备将训练其 DDQN 模型,与集中式控制器共享其模型,并向中央聚合单元更新其模型。

# 用于卸载决策的 DDQN
状态空间: 对于每一个设备代理的状态空间si 由以下几个部分组成,设备i 的任务队列长度Li,t,路径增益hi,t,当前正在处理任务的大小Li,t,CPU 周期要求Ci,t。因此有si={Li,t,hi,t,Li,t,Ci,t,Emax,i,Fmax,i}
动作空间: 用A 表示,包括处理任务在本地或者是卸载
代价: 式 (8) 表明一个代理的成本等于目标函数中给出的延迟和能耗的加权和。在卸载的情况下取决于pi,t 的值,如果选择本地计算,则取决于fi,t 的值。
当选择本地计算时(xi,t=1),成本将通过解决下面的瞬时优化问题来计算:
fi,tminTi,tL+λEi,tLsubjectto:C1,C2,C3
在选择卸载的情况下(yi,t=1 or zi,t=1):
pi,tminyi,t(Ti,te+Ti,tcomm+λEi,tcomm)+zi,t(Ti,tc+Ti,tcomm+Ψ+λEi,tcomm)subjectto:C2,C3
