耿天立, 高昂, 王琦, 段渭军, 胡延苏
(1.西北工业大学 电子信息学院, 陕西 西安 710072; 2.物联网技术及应用国家地方联合工程实验室, 陕西 西安 710072;3.长安大学 电子与控制学院, 陕西 西安 710072)
随着5G技术的落地,物联网无线设备(WD)将迎来爆炸性增长。此时,时延和能耗便成为影响物联网发展的重要因素。虽然,物联网设备可以通过将计算密集型任务卸载至边缘服务器运行以降低处理延迟,然而现有的物联网通信技术大都采用主动射频单元,传输功耗和电路功耗高,无法实现低功耗高能效的信息传输。反向散射技术可以通过改变天线阻抗形成不同的反射状态,将自身信息调制到环境信号上实现被动式信息传输,既不需要高功耗的主动发射单元,也无须占用额外的频谱。
无线驱动通信网络(WPCN)是由反向散射通信和认知无线电网络两种不同的无线通信技术相结合形成的一种无线网络[1-2]。一方面,WD可以采用收集再传输(HTT)方式,即收集基站或者环境辐射能量进行存储,然后通过频谱感知在基站和其他设备空闲时进行主动传输;同时也可采用环境反向散射(AmBC)的方法被动传输[3-5]。
受限于设备复杂度和能耗限制,WD通常只配备一套收发单元,通过软切换在HTT模式和AmBC模式间选择;同时,WPCN中的多个WD采用时分多址方式进行复用。因此,如何合理分配系统中设备主动传输和反向散射传输的工作模式及其对应的工作时间,从而实现最小的传输延迟,就显得尤为必要[6]。目前,现有的研究大多采用凸优化[1-2,7]、博弈论[8-9]和基于机器学习[10-12]的算法来最大化系统的网络吞吐量或者经济收益。
凸优化算法[1-2,7]仅考虑单个时间帧内的时间分配,或者单用户系统环境的优化问题。但是,在实际应用环境中,总是有多个用户在同一时间卸载数据,且需要多个时间帧来完成传输任务。博弈论算法[8-9]将时间分配优化问题转化为经济模型进行求解,该算法中,次级发射机在综合考虑网络吞吐量和网关成本价格情况下确定反向散射时间,使经济效益达到最大化。遗憾的是,这些算法并没有考虑到卸载数据量的大小。
文献[10-12]采用基于强化学习的方法解决单用户网络吞吐量最大化问题,为复杂通信场景下的系统性能优化提供了新的求解思路,但仍存在一些问题有待解决,例如:没有考虑多用户卸载数据大小的差异;同时,现有的强化学习方法如Q学习(Q-learning)和深度Q网络(DQN)只能在低维、离散的动作空间上进行求解,并不适用讨论环境中的多维、连续动作空间问题。
本文采用一种基于确定性策略梯度(DDPG)算法,对无线通信网络中每个WD采取主动传输和反向散射传输两种模式的时间分配在连续动作空间上进行优化,主要创新点包括:
1)与其他采用离散控制行为的强化学习算法不同,本文提出的基于DDPG深度强化学习方法能够在连续动作空间内搜索多个WD的最优时间分配,并根据构建的奖励函数对当前状态下的分配策略进行评估。
2)在动态数据卸载过程中,同时考虑了各个WD之间的公平性和最大化卸载数据量。本文算法基于以往经验的奖励来优化各移动设备的时间分配和传输模式,可以最小化卸载的延迟、最大化用户公平性。
3)实验数值结果表明,DDPG算法可在有限时间步长内收敛,并且在不同实验条件下,每个设备都能以最小的延迟同时完成数据卸载。与传统的均分算法、贪心算法对比,DDPG算法可减少平均传输延迟77.4%和24.2%,并可有效提高WD的能耗效率。
图1所示为多用户数据卸载模型示意图。图1中:U1、U2、…、Uj、…、UN为环境中的WD,N为WD的数量;ta,j为Uj在主动传输阶段(WIT)所分配到的时间长度;tb,j为Uj在能量收集阶段(WET)所分配到的时间长度。由图1可见,WPCN中存在一个混合访问节点(HAP)和多个WD. 在下行链路上,HAP广播主载波信号,为网络中的WD提供用于能量收集和反向散射通信的环境载波,同时为网络中的WD提供下行通信支持,如回传数据卸载的处理结果;在上行链路上,作为数据卸载的接入点,接收通过主动传输或反向散射传输卸载的数据。事实上,WD并不一定必须将数据卸载给HAP,也可以卸载到其他中继设备。不失一般性,本文假设所有卸载的数据均通过HAP传输给边缘服务器。
图1 系统模型图和时间帧分配示意图Fig.1 Schematic diagram of communnication model and time allocation
由于反向散射是通过调整天线阻抗对主载波进行反射而无法对载波频率进行调整的,网络中所有的反向散射设备都只配备了1根天线,并以时分多址的复用方式工作于同一频带。HAP以Duty-cycling方式工作,每个时间帧为两个阶段。其中:
1) WET:当HAP占用信道进行下行传输时,WD只能选择进行能量收集或者采用反向散射模式进行数据卸载;
2) WIT:当HAP空闲时,WD可占用信道使用主动传输模式进行数据卸载。
不失一般性,一个时间帧可被归一化为单位长度1,用w表示WET时间长度,则WIT时间长度为1-w.则有如下约束:
(1)
对于WD,一个WPCN时间帧内卸载的数据由两部分组成:WET反向散射卸载的数据和WIT主动传输的数据。因此,对于Uj,它在一个时间帧内卸载的总数据量可表示为
lj=rb,jtb,j+ra,jta,j,
(2)
式中:rb,j和ra,j分别表示Uj在反向散射和主动发射模式下的数据传输速率。
在该多用户数据卸载场景下,有如下合理假设:
1)与卸载任务上行传输时间相比,从边缘服务器返回处理结果至WD的回传延迟非常小,可忽略不计[13]。
2)反向散射接收端通常是AmBC接收机和传统接收机组成的协同接收机,通过连续干扰消除的方法,在接收端HAP能够从混合信号(即反向散射+下行传输信号)中恢复出反向散射信号。因此,可忽略HAP的主信号对反向散射信号的干扰[11]。而不同WD的散射信号之间仍然无法分离,因此WPCN系统中同一时刻只能有一个WD进行反向散射通信。
3)在反向散射模式下,接收端换能器收集到的能量可以直接用于驱动反向散射和编解码硬件单元,无须消耗额外能量[14]。
在WET同一时刻只能有一个WD通过反向散射的传输方式来卸载数据,而其他WD仍然能够收集能量。然而,由于译码器噪声和上行信道噪声会影响接收端的误码率[9],即
(3)
(4)
第j个反向散射二进制对称信道的容量为
Cj=1+εjlgεj+(1-εj)lg(1-εj),
(5)
假设反向散射的速率固定为Rb不变[7],则Uj在反向散射模式下的实际数据卸载速率为
rb,j=Cj·Rb.
(6)
当HAP处于WIT时,WD可以使用自身电池中收集的能量以主动传输的方式卸载数据,多WD以时分多址的方式分别占用不同的时间长度ta,j来卸载数据。在这种模式下,WD应用传统的射频无线通信技术进行传输,其主动传输速率为
(7)
式中:B为主动传输的带宽;Pa,j为主动传输功率。
WD通过电池存储在WET采集的能量,并用于主动传输。因为忽略了反向散射电路的能量消耗,所以能量消耗ea,j主要由主动传输造成,即
ea,j=Pa,jta,j.
(8)
在WET,各个WD可以互不影响地采集能量,因此Uj在一个时间帧内采集的能量eh,j为
eh,j=ηgjPH(w-tb,j),
(9)
式中:η表示能量转化效率,η∈(0,1)。
用Ej(k)表示Uj在第k个时间帧结束后电池中存储的能量,
Ej(k)=min {Emax,Ej(k-1)+eh,j(k)-ea,j(k)},
(10)
式中:Emax表示电池的最大容量。WD在WIT用于主动传输的能量消耗应该受到电池能量的限制,即
Pa,j(k)·ta,j(k)=ea,j(k)≤Ej(k-1)+eh,j(k).
(11)
本文的优化目标是在同时考虑公平性和能耗限制情况下最小化所有用户的卸载时间。因此,定义以下度量指标:
(12)
假设采用三元组Tj(k){(tb,j,ta,j,Pa,j)}表示Uj在第k个时刻的数据卸载策略,则问题可以总结为以下优化问题:
s.t.:
(13)
(14)
ea,j(k)≤Ej(k-1)+eh,j(k).
(15)
式中:K为完成数据卸载所用总时间;γ为衰减系数,γ∈(0,1)。约束(13)式表示所有WD反向散射的时间总和不能超过WET时间;约束(14)式表示所有WD主动传输的时间总和不能超过WIT时间;约束(15)式表示用于主动传输的能量不能超过电池中存储的能量。
图2 DDPG算法流程图Fig.2 Flowchart of DDPG algorithm
作为一种无模型的深度强化学习算法,不同于其他强化学习算法,DDPG可以用来在连续的高维状态空间以及动作空间上解决优化问题。在DDPG中,用由状态、动作和奖励组成的元组(Sk,Ak,Rk,Sk+1)对神经网络进行训练:
1)状态:表示在一个迭代回合中第k个时刻开始前对WPCN系统当前环境信息的观测结果:
Sk={E1(k),…,EN(k),data1(k),…,dataN(k)},
(16)
式中:dataj(k)为Uj截止到当前时刻已经卸载完成的数据总量。
2)动作:Ak={T1(k),…,TN(k)},即在第k个时间帧所有WD采取的卸载策略。
3)奖励:Rk的计算如(12)式所示。
如图2所示,DDPG中一共有4个网络:
1)actor当前网络:负责策略网络参数θμ的迭代更新,根据当前状态S选择当前动作A,与环境交互生成下一个状态S′和奖励R.
2)actor目标网络:负责从经验回放缓存区采样的下一状态S′选择下一动作A′.该网络的网络参数θμ′定期从actor当前网络复制θμ更新。
3)critic当前网络:负责价值网络参数θQ的迭代更新,计算当前Q值Q(S,A|θQ)。定义目标Q值yk=R+γQ′(S′,A′|θQ′).
4)critic目标网络:负责计算目标Q值中的Q′(S′,A′|θQ′)部分。该网络的网络参数θQ′定期从critic当前网络复制θQ更新。
与DQN直接将当前网络的网络参数复制过来的硬更新方式不同,DDPG采取每次只更新一点点的软更新方式,即
θμ′=τθμ+(1-τ)θμ′,
(17)
θQ′=τθQ+(1-τ)θQ′,
(18)
式中:τ为更新系数。这种更新方式可以大大提高学习的稳定性。
actor当前网络采用确定性策略来产生确定性动作,损失梯度为
(19)
critic当前网络的损失函数与DQN一样采用均方误差:
Los=E[(yk-Q(S,A|θQ)2].
(20)
基于DDPG的反向散射卸载优化算法具体步骤如下:
步骤1随机初始化actor当前网络和critic当前网络,令构建actor和critic目标网络,初始化经验回放缓存区。
步骤2从迭代回合数T=1开始循环执行以下步骤。
步骤3初始化所有WD要卸载数据量大小,清零电池能量。
步骤4初始化一个均值为0、方差var=1的高斯噪声n.
步骤5获得初始观测状态S1.
步骤6从时刻k=1开始执行步骤7~步骤16.
步骤7选择动作Ak=μ(Sk|θμ)+n.
步骤8令var=var×0.999 5.
步骤9WD执行动作并由(12)式计算奖励Rk.
步骤10获得新的状态Sk.
步骤11将(Sk,Ak,Rk,Ak+1)保存到经验回放缓存区。
步骤12从经验回放缓存区随机选取固定大小的样本。
步骤13令yk=Rk+γQ′(Sk+1,μ′(Sk+1|θμ′)|θQ′).
步骤14由(20)式,通过神经网络的梯度反向传播更新critic当前网络的网络参数θ.
步骤15由(19)式,通过神经网络的梯度反向传播更新actor当前网络的网络参数μ.
步骤16如果所有的WD完成数据卸载,则执行步骤17;否则执行步骤6.
步骤17如果T/C等于1,C为设定的目标网络参数更新间隔回合数,执行步骤18;否则,执行步骤19.
步骤18通过(17)式、(18)式更新目标网络的网络参数μ′和θ′.
步骤19如果T等于设定的最大迭代回合数,则结束算法迭代;否则执行步骤2.
假设环境中有N=4个WD,随机分布在以HAP为中心,直径50 m~3 km的范围内,其各自要卸载的数据大小Ln=[50 kb,100 kb,150 kb,200 kb].电池的最大容量Emax为5 mJ/3.3 V,反射系数ρ和能量转化效率η都是0.8.一个HAP时间帧长度为1 s,并且WET和WIT的时长均为0.5,即w=0.5.调频信号的带宽和频率分别为100 kHz和100 MHz.上行信道增益和下行信道增益分别为10-5和2×10-5.actor网络和critic网络参数如表1所示。
表1 DDPG网络参数表Tab.1 DDPG neural network configuration
图3 累积奖励与完成卸载所用时间帧数的收敛情况Fig.3 Convergence of cumulative reward and frame number for completing data offioading
由图3可知,基于DDPG的优化算法进行大约1 500次回合的学习后可以实现收敛,此时对应的累积奖励V=20,所需时间帧数为32.
图4所示为当反向散射速率从Rb=32 kbit/s下降至Rb=24 kbit/s时系统数据卸载的动态性能,即在指定回合下(第2 000个回合)每个时间帧内的状态和动作信息。
图4 不同反向散射速率下系统的动态性能情况Fig.4 Dynamic performances of system at different backscattering rates
由图4(a)可见,随着反向散射速率的降低,系统卸载延迟从30个时间帧增加至45个时间帧。但受益于Jain公平指数的引入,所有WD仍可以在同一时刻完成各自的数据卸载。
由图4(b)、图4(c)可见,具有较大卸载数据量的U3和U4更倾向于采取反向散射传输模式,具有较小卸载数据量的U1和U2则更倾向于采用主动传输模式。
由图4(d)可见,电池中的存储能量Ej(k)非常低,表明大部分收集到的能量被用于主动传输,而过多的能量收集会造成反向散射时间的减少。
图5所示为网络随着信噪比(SNR)和反向散射效率变化的静态性能情况。
由图5(a)可见,平均网络吞吐量随着SNR的增加而增加,同时数据卸载完成时间也随之减少。值得注意的是,不同WD之间的平均网络吞吐量并不相同,而是与自身要卸载数据量的大小呈正比。这是因为DDPG算法中引入了Jain公平指数,来保证所有WD的数据卸载可以同时完成。
由图5(b)可见,此时SNR固定为60 dB,而数据卸载完成的时间还与反向散射速率Rb以及转换效率ρ有关。由(3)式和(4)式可知,这是因为更高的反向散射速率和反向散射系数可以得到更大的主动传输速率以及更低的误码率。
图5 不同SNR和反向散射速率下的系统静态性能情况Fig.5 Static performance of system at different SNRs and Rb
图6比较了3种不同的优化算法即均分算法、贪心策略算法和DDPG算法,在相同SNR下完成数据卸载所需的时间帧数、随能量转化率η的变化,以及完成数据卸载后电池中的剩余能量。
图6 算法性能比较Fig.6 Performance comparison of different algorithms
由图6可见:
1)在贪心算法中,只要某一个WD的电池中存储有剩余能量,便会尽可能占用更多的时间进行主动传输;均分策略算法不考虑多个WD之间要卸载数据量大小的差异,总是将时间平分给各个WD.
2)随着SNR的增加,即信道条件变好,3种算法所需数据卸载完成时间均有显著减少。但与传统的均分算法、贪心算法对比,DDPG算法平均传输延迟减少了77.4%和24.2%,这主要是因为贪心算法只采取主动传输模式进行数据卸载;均分策略算法虽然采取两种传输模式,但是当某一个WD完成其数据卸载后仍然会分配其时间,从而造成资源浪费。
3)均分算法和贪心策略算法在完成数据卸载后,每个WD中的冗余能量均比DDPG算法高,表明其能量利用率低。尤其是对于卸载数据量较小的U1和U2更为显著,以U1为例,与均分算法和贪心算法相比,其在DDPG算法下能量利用率可提高7.75倍和1.25倍。以上结果表明,本文DDPG算法能够在同时考虑每个WD剩余要卸载数据量大小、电池剩余能量情况下进行优化时间分配,在每个时间帧内最大化即时奖励和未来奖励,保证所有WD能够在同一时刻完成数据卸载,并最大化能耗效率,以避免电池中积累过多冗余能量。
本文提出一种基于DDPG的数据卸载优化算法,不仅可以在连续空间内搜索最佳动作(即每个WD的卸载策略),且同时考虑了各个WD之间的公平性和其卸载数据量大小的差异性。实验结果表明,本文所提出的算法在不同的反向散射系数、能量转换效率、反向散射速率以及信道条件下都比传统算法表现出了更好的性能,实现了最小的卸载延迟和更高的能耗效率。