雾无线接入网中面向时延的协作缓存策略

2023-08-24 08:04韩少江陈艺洋
西安邮电大学学报 2023年2期
关键词:线程时延协作

江 帆,韩少江,刘 磊,陈艺洋

(1.西安邮电大学 通信与信息工程学院,陕西 西安 710121;2.西安邮电大学 陕西省信息通信网络及安全重点实验室,陕西 西安 710121)

随着第五代移动通信(5th Generation Mobile Communication,5G)网络的大规模商用,以及移动设备和物联网的大量应用,导致数据流量急剧增加,消耗过多回程链路带宽,增加了核心网的开销[1-2]。根据思科公司报告,海量用户总会重复请求一小部分热门内容,这将导致网络中存在大量冗余传输,增加了用户访问内容的时延[3]。而作为解决这一问题最有效的技术之一的边缘缓存技术,其支持边缘节点如雾接入节点(Fog-Access Point,F-AP)和用户设备(User Equipment,UE)等提前主动缓存最受欢迎的内容[4]。通过将雾无线接入网(Fog-Radio Access Networks,F-RANs)与边缘缓存技术结合,使得热门内容能够在边缘节点处提前缓存,用户可以利用无线链路从附近的雾接入节点或利用终端直通技术(Device-to-Device,D2D)从邻近设备获取请求内容,而不再需要从远程云中心才能获取内容[5]。此外,通过优化缓存策略,可以有效缓解流量访问高峰期的网络拥堵问题,显著降低视频传输服务的时延,同时也可以有效提升用户的体验质量(Quality of Experience,QoE)。

考虑到边缘节点的缓存容量有限及用户请求内容具有随机性,高效的边缘缓存能够最大程度降低通信时延,确保更多缓存内容可以有效地用来提供本地服务。为了实现高效本地缓存,缓存策略应当考虑在什么时候、哪个边缘节点处及存放什么内容,相关研究学者提出了协作缓存的解决策略。通过多个边缘节点共享已经缓存的内容,能够有效扩展缓存容量,且提高缓存多样性[6]。文献[7]提出了一种基站协作缓存策略,以最小化总传输成本,但该策略没有考虑用户设备的缓存能力。文献[8]提出了一种D2D辅助的协作边缘缓存策略,用于缓解毫米级密集网络的小基站负载,但其没有考虑基站之间的协作。目前,大多数协作缓存策略均假设用户对各种内容的请求遵循Zipf分布[9-10]。但是,文献[11]证明了内容流行度和用户偏好的分布是非平稳的,并表现出高度的空间和时间动态特性,这表明在设计缓存相关的策略时,应采取动态的用户偏好学习和内容流行度预测。

考虑到无线环境的动态特性,深度强化学习(Deep Reinforcement Learning,DRL)算法也为在线内容缓存优化提供了新的解决策略。在文献[12]中,提出了一种基于Q-learning算法的协作编码缓存策略,用于搜索F-RANs中的最佳内容缓存策略。文献[13]结合演员批评家(Actor-Critic,AC)算法学习最佳随机缓存策略,文献[14]进一步证明了异步优势演员评论家(Asynchronous Advantage Actor-Critic,A3C)算法在动态环境中具有更快的收敛性能。但是,Q-Learning算法难以解决大规模网络问题,AC算法采用单线程学习的方式,收敛速度较慢,而A3C算法利用多线程异步并行学习,能够有效提升收敛速度。

针对边缘节点有限存储空间有限的问题以及考虑到A3C算法的有效性,拟提出一种面向时延的基于A3C算法的协作缓存策略。该策略考虑了F-AP之间的协作和UE之间的D2D通信协作,将协作内容缓存建模为一个平均下载时延最小化问题,并证明了该问题为非确定性多项式(Nondeterministic Polynomial-hard,NP-hard)问题。为了获得最佳的缓存策略并最小化内容下载时延,进一步将内容缓存问题划分为两个阶段求解。在第一阶段,使用逻辑回归算法建立用户偏好模型,并根据获得的用户偏好预测用户请求内容的概率,最终得到F-AP覆盖区域内的局部内容流行度。在第二阶段,根据获得的内容流行度分布,采用A3C算法进行在线内容缓存优化,通过利用多个智能体异步并行地与未知环境进行交互,最终通过学习得到能够最小化平均内容下载时延的最佳缓存策略。最后,通过仿真验证所提的缓存策略的有效性。

1 系统模型和问题建模

1.1 系统模型

假设F-AP之间可以共享已缓存内容,并且允许由同一个F-AP服务的UE通过D2D的通信方式共享已缓存内容,以进一步提高缓存效率。此外,只有当通信距离小于预设的最小D2D通信阈值dmin时,UE之间才能建立D2D通信。令βu,u′∈{0,1}表示用户u和用户u′之间是否可以建立D2D通信,当可以建立D2D通信时,βu,u′=1,否则βu,u′=0。具体的F-RANs中协作缓存的系统模型如图1所示。

图1 F-RANs中协作缓存的系统模型

1.2 问题建模

根据图1所建立的F-RANs中协作缓存的系统模型,当UE发起内容请求时,如果所请求的内容不在其本地存储中,UE通过以下4种可能的途径获得该内容,相应的内容传输的平均下载时延计算过程如下。

1)利用D2D通信从邻近UE获取内容产生的平均内容下载时延,表达式为

(1)

2)通过从服务的F-AP获取内容产生的平均内容下载时延,表达式为

(2)

3)通过从协作的F-AP获取内容产生的平均内容下载时延,表达式为

(3)

4)通过云中心获取内容产生的平均内容下载时延,表达式为

(4)

一般而言,用户只会对同一内容发起一次请求,而不会重复请求同一内容,且传输距离从以上4种相应的内容传输的平均下载时延方式依次增加。为了尽量减少下载时延,将用户获取内容的优先级设定为从以上4种相应的内容传输的平均下载时延方式依次减少,分别用二进制变量α1,α2和α3表示某个用户是否从前3种方式中获得所请求的内容。具体来说:如果UE从邻近的UE获得所请求的内容,则α1=1,否则α1=0;如果用户通过从服务的F-AP获得请求的内容,则α2=1,否则α2=0;如果用户通过从协作的F-AP获得所请求的内容,则α3=1,否则α3=0。那么,所考虑的系统的平均内容下载时延计算表达式为

(5)

定义变量gi,i∈{1,2,3,4}满足以下条件

则可以将式(5)简化为

(6)

将所考虑的系统的内容平均下载时延最小化问题建模为

(7)

式中:约束条件C1和C2表示F-AP和UE缓存的内容总量应分别小于其缓存容量限制,m∈Q,u∈G;约束条件C3表示这3个变量都是二进制的,i∈{1,2,3,4}。文献[15]已经证明式(7)中所建立的问题是NP-hard的,用传统方法难以直接获得最优解。并且由于边缘节点和内容数量众多,导致网络中的状态和动作空间高维且离散。考虑A3C算法在解决高维空间方面的有效性,以及与AC算法相比其具有更高的迭代速度。因此,基于A3C算法提出了一个可行的解决策略,通过将问题划分为两阶段获得最小化平均下载时延的最佳缓存策略。

2 基于A3C算法的协作缓存策略

为了解决式(7)所建立的问题,将内容缓存问题分为两个阶段。首先,预测当前时间段的内容流行度分布。然后,根据预测得到的内容流行度结果,采用A3C算法学习获得最佳缓存策略。

2.1 内容流行度预测算法

考虑到边缘节点的存储空间有限,必须选择最流行的内容进行缓存以提高缓存效率。因此,有必要对内容流行度进行预测,内容流行度预测算法包括以下3个步骤。

(8)

式中,ωu表示第u个UE的偏好模型,可以通过文献[16]中的方法训练获取。

相应的逻辑损失函数定义为

(ωu,c(f),s(f))=-s(f)logpωu(s(f)|c(f))-
(1-s(f))log[1-pωu(s(f)|c(f))]

(9)

(10)

步骤3更新内容流行度。结合内容度的动态变化特性,需要实时跟踪内容流行度的波动。如果一个用户在前一个时间段已经请求过内容f,则将当前时间段的第m个F-AP的内容流行度更新为

(11)

由于用户偏好动态变化,需要收集用户的请求数据,并基于式(9)计算出当前时间段的平均逻辑损失函数。当平均逻辑损失函数超过给定阈值δ时,重新启动步骤1中的算法更新用户偏好模型。平均逻辑损失函数的表达式为

(12)

通过以上3个步骤,可以预测出每个时间段的内容流行度分布,其伪代码如算法1所示。

算法1 内容流行度预测算法1:输入:c(f),ωu,u∈G2:for u=1,2,3,…,Utm do3:if 第u个UE已经请求过内容f4:ptm,u,f=05:else6:根据式(8)计算ptm,u,f7:end if8:收集用户请求信息Rku,k←k+19:根据式(12)计算ℓu,f10:ifℓu,f≥δ11:重新训练用户偏好模型ωu12:end if13:end for14:根据式(10)计算ptm,f15:输出:ptm,f

2.2 基于A3C算法的内容缓存策略

2.2.1 算法概述

A3C算法在每一个训练周期通过全局网络创建L个线程和L个环境,每一周期执行Tmax个n步更新。全局网络和线程网络具有相同的结构,都是采用了演员评论家网络结构。演员评论家网络使用两个深度神经网络,包括两个隐藏的全连接层,第一层包含256个神经元,第二层包含128个神经元,分别用于改进策略函数和评估价值函数。全局网络不需要进行训练,只用来存储全局参数。在每次训练之前,每个线程从全局网络中获取最新的网络参数,并初始化一个缓冲区。多个线程并行与各自环境进行交互学习,在所有异步线程执行完毕后,全局网络将使用累积的梯度信息更新网络参数。由于线程的工作原理相同,因此以一个线程内的网络训练过程为例,阐明所提的缓存策略步骤。所提算法中的必要元素具体定义如下。

1)智能体。在DRL算法中,智能体通常是学习者和行动的执行者。由于UE接受F-AP的服务并受其控制,因此将F-AP建模为智能体。

2)状态空间。集合s(t)={C(t),P(t)}表示状态空间。其中,C(t)为边缘节点UE和F-AP的缓存状态,P(t)为时间段t的内容流行度分布。

3)动作空间。动作空间可以被表示为a(t)={am,u,f(t),am,f(t),m∈Q,u∈G},其中am,u,f(t)表示内容f应该由第m个F-AP所服务的第u个UE缓存,am,f(t)表示内容应该在第m个F-AP处缓存。

4)奖励函数。由于优化目标是通过最流行的内容选择最佳的缓存位置减少平均下载时延,因此奖励与式(7)目标函数呈负相关,即时奖励函数表示为

(13)

5)策略。智能体思考并做出决策动作的过程被定义为策略,表示为π(a(t)|s(t);θ′)。基于A3C算法的缓存策略示意图具体如图2所示。

图2 基于A3C算法的缓存策略示意图

在图2中,将基于A3C算法的缓存策略分为演员网络阶段和评论家网络阶段。

1)演员网络阶段。演员网络的任务是指导智能体选择和执行相应的缓存动作。在每个时间段t通过输入当前状态s(t),演员网络输出当前的策略函数π(a(t)|s(t);θ′),根据该函数,智能体在不超过缓存设备的容量限制的情况下,为流行内容选择适当的缓存位置。当智能体执行了当前的缓存动作a(t)后,状态将从s(t)转移到s(t+1),智能体获得即时奖励r(t)并向缓冲区存储(s(t),a(t),r(t),s(t+1))。反复执行上述程序,直到动作执行完n步。

2)评论家网络阶段。评论家网络的任务是为价值函数提供准确的评估。通过输入当前状态s(t),评论家网络输出当前的价值函数V(s(t);w′)。利用价值函数评估从演员网络中获得策略的好坏,从而帮助智能体学习到最佳的缓存策略。

每个线程的演员评论家网络执行完所有步骤后,将其梯度信息发送到全局网络。当所有异步智能体完成其工作后,全局网络会根据累积的梯度信息更新网络参数。在每个周期开始前,全局网络将更新后的参数发送到每个智能体,从而加快学习速度。上述过程将以迭代的方式重复进行,当全局网络执行了Tmax次后,结束当前的训练周期,输出能够最小化平均下载时延的最佳缓存策略。

2.2.2 梯度更新

A3C算法使用n步累计奖励的同时更新演员网络和评论家网络的参数,加快学习速度。优势函数作为所选动作的评价标准,具体定义为

A(s(t),a(t))=Q(s(t),a(t))-V(s(t))

(14)

式中:V(s(t))表示由评论家网络输出的价值函数;Q(s(t),a(t))表示时间段t内采取的动作a(t)的长期累积奖励,计算表达式为

(15)

式中,γ表示在当前和未来回报之间提供权衡的折扣因子。

1)演员网络。演员网络定义了一个以θ′为参数的策略函数,A表示演员网络,其损失函数定义为

LA=logπ(a(t)|s(t);θ′)A(s(t),a(t))

(16)

采用梯度上升算法更新演员网络的参数,具体表示为

dθ′←dθ′+θ′logπ(a(t)|s(t);θ′)A(s(t),a(t))

2)评论家网络。评论家网络定义了一个以w′为参数的价值函数,C表示评论家网络,其损失函数定义为

LC=(A(s(t),a(t)))2

(17)

采用梯度下降算法更新评论家网络的参数,表示为

(18)

最后,基于A3C的内容缓存算法的伪代码如算法2所示。将算法2得到的最终缓存策略与式(6)相结合,得到平均下载时延。

算法2 基于A3C算法的内容缓存算法1:初始化:Tmax,tmax=n,γ,θ,w,T=0,t=02:repeat3:线程网络重置梯度:dθ←0,dw←04:线程网络获取全局网络参数:θ′=θ,w′=w5:tstart=t6:智能体从环境获取状态s(t)7:repeat8:智能体根据策略函数π(a(t)|s(t);θ′)选择缓存动作a(t)并执行,获取即时奖励r(t)9:向缓存区添加(s(t),a(t),r(t),s(t+1))10:t←t+111:until终止状态st或t-tstart=tmax12:R=0,终止状态stV(s(t);w′),t-tstart=tmax{13:for i∈{t-1,…,tstart} do14:R←r(i)+γR15:累积线程网络的参数:dθ←dθ+∇θ′logπ(a(t)|s(t);θ′)A(s(t),a(t))dw←dw+∂(A(s(t),a(t)))2/∂w′16:end for17:全局网络更新参数θ和w18:until T>Tmax

3 仿真结果及分析

3.1 仿真参数

为了评估所提策略的性能,选择大小为10 M的MovieLens作为仿真的数据集[17]进行测试。该数据集来源于MovieLens网站的真实电影评级数据。假设用户已经观看过某一内容才会对其进行评分,因此,如果用户对某一电影进行过评分,则认为该用户已经请求过该内容。该数据集包含用户ID、电影ID、评分和时间戳,而电影又分为18种类型,如喜剧、科幻和冒险等。提取18种电影类型作为内容特征,即当电影属于某种类型时,内容特征向量的相应位置取值为1,否则取值为0。考虑到一部电影的受欢迎程度在一天内几乎不会变化,将预测周期t时长设为一天。

为了衡量所提策略的平均下载时延性能,选择参考策略、贪婪缓存策略和随机缓存策略等3种已有的缓存策略进行对比。贪婪缓存策略[18]的特征是在不超过F-AP缓存容量限制的前提下,尽可能多地缓存最流行的内容。随机缓存策略[13]随机选择符合F-AP缓存空间大小限制的内容进行缓存。此外,将文献[7]中的策略命名为参考策略,该策略考虑了F-AP之间的协作,但忽略了UE的缓存能力。关键仿真参数如表1所示。

表1 仿真参数

3.2 仿真结果分析

为了验证所提策略的性能,将不同缓存策略下的平均下载时延进行对比,具体如图3所示。

图3 不同缓存策略下的平均下载时延

图3首先比较了不同缓存策略下平均下载时延随F-AP缓存容量增加的变化情况,由图3(a)可以看出,随着F-AP缓存容量的增加,所提策略的平均下载时延明显下降。这一现象可以解释为当缓存容量增加时,F-AP可以缓存更多的内容,而从F-AP获取内容的时延要比从云中心获取的小得多。同时,所提策略的性能明显优于其他3种缓存策略,这是因为所提策略考虑了UE的缓存能力,这使得邻近的用户能够以很低的时延获得所请求的内容。其次,所提策略和参考策略的平均下载时延低于贪婪策略,这是因为两个策略都考虑了F-AP之间的协作,表明协作缓存行为的重要性。最后,随机缓存的时延性能不稳定,与F-AP的缓存容量并不成正比,这证明了进行流行度预测的重要性。

图3(b)比较了不同缓存策略下平均下载时延随内容数量增加的变化情况,可以看出,当更多的内容需要在存储空间有限的边缘节点上进行缓存时,将导致内容下载时延增加。此外,所提缓存策略在平均下载时延方面比其他3种策略的性能更好,增加趋势更低,这进一步验证了所提策略的优越性。所采用的A3C算法通过与环境的交互学习了最佳的缓存策略,通过将流行内容缓存到合适的设备上,充分利用了有限的存储空间,从而降低了下载时延。

采用A3C算法学习最佳的缓存策略,将A3C算法与AC算法的时延性能进行对比,具体如图4所示。

图4 A3C算法与AC算法时延性能对比

由图4可以看出,A3C算法的平均下载时延低于AC算法,并且A3C算法的性能比AC算法更稳定。这是由于A3C算法采用了异步机制,即多线程并行探索,这有助于快速发现未知的动作和状态,从而极大地提高了学习效率。此外,引入了优势函数作为所选缓存动作的评价函数,使得A3C算法可以更好地根据奖励对动作进行评估,选择动作的优势值越大,则证明该动作越好,进而提高选择该动作的概率,更好地指导演员执行适当的缓存动作,为流行内容找到最佳的缓存位置。

考虑到UE存储容量也会对缓存性能造成一定的影响,因此对比了不同UE存储容量下的平均下载时延,具体如图5所示。

图5 不同存储容量下的平均下载时延

由图5可以看出,平均下载时延并不总是随着缓存容量的增加而降低,这是因为当UE的缓存容量变大时,更多的流行内容缓存在了用户侧。由于在缓存过程中采用了冗余缓存避免的策略,即其他UE和F-AP不会重复缓存第u个UE已缓存过的内容,当第u个UE缓存了太多的流行内容时,受限于通信距离,无法与第u个UE建立D2D通信的UE则不得不从较远的云中心获取内容。这种现象表明,占用边缘节点所有的存储资源进行内容缓存不是最优的,应该根据实际情况进一步优化存储资源,以实现更高效的内容缓存。

4 结语

对F-RANs中面向时延的协作缓存策略进行研究,所提策略结合了F-AP之间的协作和D2D通信,使邻近节点能够共享已经缓存的内容。首先,通过在线学习方法获得每个F-AP服务的用户偏好模型,并且基于用户偏好模型获取每个F-AP的局部内容流行度分布。然后以最小化平均下载时延为优化目标对协作内容缓存问题进行建模。鉴于这个优化问题是NP-hard问题,进一步引入了A3C算法,通过与未知环境的智能交互学习,构建了最优的内容缓存策略。仿真结果表明,与现有的缓存策略相比,所提缓存策略可以实现更低的平均内容下载时延。

猜你喜欢
线程时延协作
团结协作成功易
基于GCC-nearest时延估计的室内声源定位
基于改进二次相关算法的TDOA时延估计
协作
浅谈linux多线程协作
FRFT在水声信道时延频移联合估计中的应用
基于分段CEEMD降噪的时延估计研究
协作
可与您并肩协作的UR3
基于上下文定界的Fork/Join并行性的并发程序可达性分析*