基于深度强化学习的基站缓存替换方法、系统及存储介质

文档序号:25870290发布日期:2021-07-13 16:32阅读:133来源:国知局
基于深度强化学习的基站缓存替换方法、系统及存储介质

本发明属于物联网通信技术领域,具体涉及一种基于深度强化学习的基站缓存替换方法、系统及存储介质。



背景技术:

随着通信技术的迅速发展以及智能设备的普及,物联网正处于高速发展的阶段。物联网的数据大部分通常是通过无线通信进行传递,因此物联网的快速发展给无线网络带来了巨大的挑战。为了应对这种挑战,边缘缓存技术应运而生,即在边缘通信设备中主动缓存数据,从而有效减少回程链路的数据流量。

缓存放置方法通常在流量非高峰时期进行,且由于两次根据缓存放置方法执行的预缓存之间的间隔时间通常会比较长,所以一般需要结合缓存替换方法提高系统的缓存性能。缓存替换方法是指当边缘缓存节点收到一个未缓存的文件请求时,该节点先通过回程链路从基站或者后端服务器获取该文件,然后需要决定是否用该文件替换掉某个已缓存文件。在传统的web缓存中,缓存替换方法通常考虑四个参数指标:时近程度、文件请求频率、文件大小以及获取文件的费用。在边缘移动缓存场景中,用户位置和网络连接点可能会随时间而变化。此外,还由于移动设备的可用能量有限、用于通信的宽带较窄等原因,使得传统的有线网络替换方法并不适用于移动网络场景。比如最近最少使用(lru)方法和最不经常使用(lfu)方法,这两种替换方法都是基于时间和经验的,比较简单,并没有考虑到移动网络中动态的网络拓扑结构、信道状态、内容流行度、用户移动性等因素,这使得它们很难在移动场景中达到很好的效果。



技术实现要素:

为解决现有技术中的不足,本发明提供一种基于深度强化学习的基站缓存替换方法、系统及存储介质,能够降低用户请求文件时的总成本,获取最优的缓存替换方案,实现获取文件的传输时延和获取文件的新鲜度损失成本之间的均衡。

为达到上述目的,本发明所采用的技术方案是:

第一方面,提供一种基于深度强化学习的基站缓存替换方法,包括:基于获取文件的传输时延和获取文件的新鲜度损失成本,确定获取文件的总成本;基于获取文件的总成本,构建物联网场景下基于mdp的缓存替换模型;基于a3c深度强化学习求解物联网场景下基于mdp的缓存替换模型,以实现获取文件的传输时延和获取文件的新鲜度损失成本之间的均衡。

进一步地,所述获取文件的传输时延,具体为:

其中,σu,f(t)表示用户u在t时刻获取文件f的传输时延,yf表示文件是否从缓存中获取,若基站缓存有文件f且该文件未过期,则yf=1,否则yf=0;表示当文件f缓存在基站的高速缓存设备中且未过期时,用户直接通过回程链路从缓存中获取文件的传输时延;当基站未缓存请求文件或者请求文件过期时,基站从物联网数据源获取请求文件的传输时延;vf表示请求文件f的大小;rb,u(t)表示基站到用户u的无线传输速率;bu表示每个用户被分配的信道带宽。

进一步地,所述获取文件的新鲜度损失成本,具体为:

其中,lu,f(t)表示t时刻用户u获取文件f的新鲜度损失成本,表示表示已缓存文件f的年龄,表示文件f的生存周期。

进一步地,所述获取文件的总成本,具体为:

cu,f(t)=α·σu,f(t)+(1-α)·lu,f(t)(7)

其中,cu,f(t)表示t时刻用户u获取文件f的总成本,α表示衡量时延成本重要性的相对权重系数。

进一步地,所述基于获取文件的总成本,构建物联网场景下基于mdp的缓存替换模型,具体为:定义t时刻的状态空间st={c(t),l(t),b(t)},其中,c(t)表示t时刻的网络状态,l(t)表示t时刻的数据请求状态,b(t)表示网络上下文信息;定义动作空间为a={a0,a1,...,av},当t时刻的动作at=a0时,这表明不缓存当前请求文件,基站的缓存状态保持不变;当at=av(1≤v≤v)时,这表明会将高速缓存中的第v个文件替换掉,且缓存当前请求文件;定义p(st+1|st,at)表示将时间点t的状态和动作映射到时间点t+1的状态分布的上的转移概率,其仅取决于判定时间点t、观察到的状态st和所选择的动作at,而不取决于该过程的历史;t时刻采取行动at后所获得的即时奖励r(st,at)定义为:

r(st,at)=-cu,f(t)(12)

即以降低所有用户获取文件时的总成本为优化目标。

进一步地,在所述物联网场景下基于mdp的缓存替换模型中,基站在t时刻的处理过程包括:a1、在t时刻的开始,基站观察系统并获得其当前状态st∈s,s表示状态空间;a2、基站在观测到当前状态st后根据策略π执行动作at;a3、采取行动at后,物联网系统根据动态环境中的r(st,at)和p(st+1|st,at),获取累积奖励rt,并向新状态st+1进行转变;a4、将累积奖励反馈给基站,然后进入下一个时隙t+1,并重复该过程。

进一步地,所述基于a3c深度强化学习求解物联网场景下基于mdp的缓存替换模型,以实现获取文件的传输时延和获取文件的新鲜度损失成本之间的均衡,包括:

b1、定义移动用户集合{u}={1,...,u,...,u},文件集合{f}={1,...,f,...,f},用户的总数为u,文件的总数为f;全局网络中actor网络和critic网络的参数分别为θ0每个智能体的actor网络和critic网络的参数分别为θm最大步数为tmax;文件缓存集合为w,初始化为φ;

b2、初始化网络参数的梯度更新量:dθ0=0,同时用全局共享参数初始化每个线程的网络参数:θm=θ0,

b3、令tstart=t,并获取当前系统状态空间st={c(t),l(t),b(t)}:

其中,c(t)={pb,u(t),gb,u(t)}

网络状态c(t)包含用户u接入基站信道后的无线发射功率pb,u(t)以及无线信道增益gb,u(t);

数据请求状态l(t)中的表示在t时刻收到第n个用户请求时基站获得的请求文件集合,n∈{1,2,...,n};

网络上下文信息b(t)包含t时刻文件f的生命周期和文件年龄f∈{1,2,...,f};

b4、每个智能体将st输入到actor网络和critic网络中;

b5、actor网络输出此时的策略πθ(at,st),该策略是执行不同动作的概率分布向量,πθ(at,st)表示执行动作a的概率;

b6、按照策略πθ(at,st)选取一个动作概率最大的动作at,计算即时奖励r(st,at)=-cu,f(t),并转移到的下一个状态st+1;

b7、令t=t+1,若st是终止状态或者t-tstart=tmax,则执行步骤b8;否则执行步骤b4:

b8、用critic网络计算状态空间为st时的状态值函数定义如下:

rt表示截止t时刻的累积奖励:

其中,γ∈[0,1]为折扣因子,用来决定累积奖励rt更看重眼前的回报还是未来时刻的累积回报;

b9、计算t时刻的目标值函数v:

b10、fori=(t-1):tstartdo

b101、计算各个时刻的优势函数:

b102、计算梯度更新dθ0

b103、计算梯度更新

b11、每个智能体异步的更新全局共享参数θ0

θ0=θ0+λdθ0

b12、如果没有达到终止条件,转至b2执行。

第二方面,提供一种基于深度强化学习的基站缓存替换系统,包括处理器和存储设备,所述存储设备中存储有多条指令,用于所述处理器加载并执行第一方面所述方法的步骤。

第三方面,提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行第一方面所述的方法。

与现有技术相比,本发明所达到的有益效果:

(1)本发明针对物联网动态变化且流行度未知的缓存场景,构建了物联网场景下基于mdp的缓存替换模型,将缓存替换问题建模为马尔科夫决策过程(mdp)问题,并基于a3c深度强化学习的思想来对缓存替换模型进行优化求解,能够降低用户请求文件时的总成本,获取最优的缓存替换方案;

(2)不同于传统的蜂窝缓存,本发明考虑了物联网场景下数据的新鲜度,并基于获取文件的传输时延成本和获取文件的新鲜度损失成本构建了优化模型,实现获取文件的传输时延和获取文件的新鲜度损失成本之间的均衡;

(3)不同于传统的深度强化学习方法比如value-based方法和policy-based方法,本发明采用的是基于actor-critic方法改良的a3c(asynchronousadvantageactor-critic)方法。actor-critic方法结合了value-based方法和policy-based方法的核心思想,同时改良的a3c方法更适合于本发明的离散动作空间场景。

附图说明

图1是本发明实施例提供的一种基于深度强化学习的基站缓存替换方法的主要流程示意图;

图2是本发明实施例中的网络模型示意图;

图3是本发明的缓存命中率随平均请求速率变化的的仿真结果图;

图4是本发明的平均新鲜度损失以及平均时延随成本权重系数变化的仿真结果图;

图5是本发明的缓存命中率随文件总数变化的仿真结果图。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

实施例一:

一种基于深度强化学习的基站缓存替换方法,包括:基于获取文件的传输时延和获取文件的新鲜度损失成本,确定获取文件的总成本;基于获取文件的总成本,构建物联网场景下基于mdp的缓存替换模型;基于a3c深度强化学习求解物联网场景下基于mdp的缓存替换模型,以实现获取文件的传输时延和获取文件的新鲜度损失成本之间的均衡。

本实施例考虑了物联网数据的新鲜度属性,提出了一种基于a3c深度强化学习的缓存替换方法。首先,基于获取物联网数据时的时延成本以及新鲜度损失成本定义了效用函数,同时以最小化用户的总效用为目标建立了优化问题。接着,构建物联网场景下基于mdp的缓存替换模型,将缓存替换问题建模为mdp问题,并采用a3c算法来对缓存替换策略进行优化,以实现传输时延和新鲜度之间的均衡,同时获得更多的缓存命中。

基于获取文件的传输时延和获取文件的新鲜度损失成本,确定获取文件的总成本;本实施例的系统模型如图2所示,由物联网(iot)数据源、网关、基站以及u个随机分布的移动用户组成,用户集合为物联网数据源共有f个文件,用集合表示,且对应的文件大小为网关会将用户请求转发给物联网数据源,同时也会将实时的物联网数据转发给基站;基站用来缓存热门的物联网数据,缓存容量为m。当基站接收到用户请求时,首先会检查自己的高速存储设备是否已缓存有所需的物联网数据。如果请求的数据在缓存中且未过期,则基站直接将其发送给用户,否则物联网数据源将数据通过网关中继转发给该用户。

在本实施例中,用户请求的物联网数据可以从基站的高速缓存设备或者相应的iot数据源获取。定义二元变量xf∈{0,1}表示文件的缓存状态,若基站缓存有文件f,则xf=1,否则xf=0。但是,物联网数据存储在高速缓存设备中并不保证用户可以直接从缓存中获得所请求的数据,除非高速缓存设备中的对应数据是新鲜的。

在物联网场景中,每一个物联网数据都具有时效性,即在数据产生后的特定时长内有效,这个时长定义为数据生存周期,可由数据源所规定。而“新鲜度”表示物联网数据产生后的时近程度,本实施例结合文件年龄这一指标来描述新鲜度,即从数据产生至当前时刻为止的时长。令表示文件f的生存周期,表示已缓存文件f的年龄,gf表示已缓存文件f的新鲜度。若用表示文件f的生成时间点,则在t时刻已缓存文件f的年龄为新鲜度可以表示成由此可知,文件f的年龄越大,该文件的新鲜度越低,且当时,该过期的缓存文件将不会被传输给请求用户。另外,还定义了二元变量yf∈{0,1}表示文件是否从缓存中获取,若基站缓存有文件f且该文件未过期,则yf=1,否则yf=0。所以,yf可以表示为:

本实施例使用用户获取请求数据的平均传输时延来反映用户的服务质量,并用变量σ表示文件传输时延。假设同一基站下的用户之间使用正交频谱信道,用户之间没有同层干扰,且所有用户被分配相同大小的频谱带宽。令b表示系统总带宽,则每个用户被分配的信道带宽为当文件f缓存在基站的高速缓存设备中且未过期时,用户直接通过回程链路从缓存中获取文件,此时用户u在t时刻获取文件f的传输时延为:

rb,u(t)表示基站到用户u的无线传输速率:

其中,pb,u(t)为用户u接入基站后基站在该信道上的无线发射功率,gb,u(t)为基站到用户u的无线信道增益,n0为噪声功率谱密度。

除此以外,当基站未缓存请求文件或者请求文件过期时,传输时延还涉及到基站从iot数据源获取请求文件的时延。此时用户u在t时刻获取文件f的传输时延为:

其中,w为网关与基站之间的回程链路带宽。

综上所述,用户u在t时刻获取文件f的传输时延σf(t)为:

其中,σu,f(t)表示用户u在t时刻获取文件f的传输时延,yf表示文件是否从缓存中获取,若基站缓存有文件f且该文件未过期,则yf=1,否则表示当文件f缓存在基站的高速缓存设备中且未过期时,用户直接通过回程链路从缓存中获取文件的传输时延;当基站未缓存请求文件或者请求文件过期时,基站从物联网数据源获取请求文件的传输时延;vf表示请求文件f的大小;rb,u(t)表示基站到用户u的无线传输速率;bu表示每个用户被分配的信道带宽。

本实施例还定义了新鲜度损失成本来表示新鲜度对物联网缓存性能的影响。当物联网数据被缓存后,不同时间点的数据都被认为具有一定程度的新鲜度。数据的新鲜度会随着时间的增长而不断降低,所以t时刻用户u获取文件f的新鲜度损失成本lu,f(t)定义为:

其中,lu,f(t)表示t时刻用户u获取文件f的新鲜度损失成本,表示表示已缓存文件f的年龄,表示文件f的生存周期。

在本实施例中,从基于边缘缓存的物联网中获取数据涉及到时延成本和新鲜度损失成本之间的权衡。如果从iot数据源获取最新数据,则新鲜性损失成本最小,而时延成本最大;如果从基站的高速缓存设备中获取数据,则新鲜度损失成本为一正值,而时延成本最小。为了在这两个相互矛盾的目标之间取得平衡,本实施例定义了t时刻用户u获取文件f的总成本函数cu,f(t)为:

cu,f(t)=α·σu,f(t)+(1-α)·lu,f(t)(7)

其中,cu,f(t)表示t时刻用户u获取文件f的总成本,α∈[0,1]是衡量时延成本重要性的相对权重系数。α越大,时延成本所占的比例越大,这表明物联网用户更看重获取文件时的时延,不喜欢频繁地从iot数据源检索数据。

综上所述,本实施例的优化目标是最小化所有用户获取文件时的总成本。所以,本章的缓存替换优化问题可以表述为一个整数线性规划(ilp)问题:

其中,s(1)是为了确保缓存中文件的总大小不会超过高速缓存设备的存储容量;s(2)是表示xf(t)、yf(t)以及gf(t)之间的关系;s(3)表示xf(t)和yf(t)都是二元变量。

基于获取文件的总成本,构建物联网场景下基于mdp的缓存替换模型;接下来,使用mdp模型对缓存替换优化问题进行建模。mdp可以用一个四元组<s,a,p,r>来定义,其中s是状态空间,a是动作空间,p是状态转移概率矩阵,r是即时奖励函数。在本章中,其具体含义分别如下所述:

状态空间s:(用户请求、文件年龄、生存周期、缓存放置向量)在执行动作之前,决策者都会观察系统的状态,而可能状态的集合则称为状态空间。在本实施例的缓存场景中,和动作选择相关的主要包括三个方面:网络状态、数据请求状态以及网络上下文信息。因此,t时刻的状态空间可以定义为其中c(t)表示t时刻的网络状态,l(t)表示t时刻的数据请求状态,b(t)表示网络上下文信息。这三个向量的定义如下:

c(t)={pb,u(t),gb,u(t)}(9)

网络状态c(t)包含用户u接入基站信道后的无线发射功率以及无线信道增益;

数据请求状态l(t)中的表示在t时刻收到第n个用户请求时基站获得的请求文件集合;

网络上下文信息b(t)包含t时刻各个数据的生命周期和文件年龄。

动作空间a:在缓存替换问题中,当数据项到达基站时,需要判断是否对其进行缓存。如果已经为该新数据做出了高速缓存决定,如果有限的高速缓存空间已满,则必须决定替换掉哪个已缓存的数据项。本实施例定义动作空间为a={a0,a1,...,av},当t时刻的动作at=a0时,这表明不缓存当前请求文件,基站的缓存状态保持不变;当at=av(1≤v≤v)时,这表明会将高速缓存中的第v个文件替换掉,且缓存当前请求文件(此处的第v个文件是指放置在缓存中的按序号从小到大排列后的第v个文件,而不是依照缓存顺序排列的第v个文件)。

状态转移概率矩阵p:当给定系统状态和所选动作后,下一个决策时间点的状态将由状态转移概率所确定,本实施例使用p(st+1|st,at)表示将时间点t的状态和动作映射到时间点t+1的状态分布的上的转移概率,其仅取决于判定时间点t、观察到的状态st和所选择的动作at,而不取决于该过程的历史。

即时奖励函数r:决策者采取行动后将获得即时奖励,本实施例使用r(st,at)来表示t时刻采取行动at后所获得的即时奖励。由公式(8)可知,本实施例的优化目标是最小化所有用户获取文件时的总成本,所以可以将r(st,at)定义为:

r(st,at)=-cu,f(t)(12)

即以降低所有用户获取文件时的总成本为优化目标。mdp的核心思想是为决策者找到最优策略,将每个状态映射到最优动作上去,以最大化所有时隙的累积奖励。本实施例使用π=π(at|st)来定义策略,而π(at|st)表示从状态st映射到选择动作at时的概率。在物联网场景下基于mdp的缓存替换模型中,基站在t时刻的处理过程如下所述:

a1、在t时刻的开始,基站观察系统并获得其当前状态st∈s,s表示状态空间;;

a2、基站在观测到当前状态st后根据策略π执行动作at;

a3、采取行动at后,物联网系统根据动态环境中的r(st,at)和p(st+1|st,at),获取累积奖励rt,并向新状态st+1进行转变;

a4、将累积奖励反馈给基站,然后进入下一个时隙t+1,并重复该过程。

累积奖励rt定义为其中,γ∈[0,1]被称为折扣因子,用来决定累积奖励rt更看重眼前的回报还是未来时刻的累积回报。较高的γ值更看重长期的累积奖励,而较低的γ值更强调即时奖励。最终,我们的目标是找到最优的缓存策略π*,使得所有状态的期望累积奖励最大化,即:

在mdp模型中,通常使用值函数来衡量策略π的优越性。值函数包括两种:状态值函数和状态-动作值函数(也称为q值)。状态值函数vπ(s)表示以状态s为起点,根据策略π选择动作后所获得的期望累积奖励,定义如下:

另外,状态-动作值函数qπ(s,a)表示以状态s为起点且选择初始动作a后,再依照策略π选择动作后所获得的期望累积奖励,定义如下:

由上述定义可以得到这两者之间的转换关系,该等式如下所示:

基于a3c深度强化学习求解物联网场景下基于mdp的缓存替换模型,以实现获取文件的传输时延和获取文件的新鲜度损失成本之间的均衡;在实际应用场景中,由于获取状态转移概率的完整信息是比较困难的,而且mdp模型的状态转移概率和即时奖励函数是无模型的,所以通常使用无模型强化学习方法来求解mdp模型。强化学习是一种基于环境进行自主学习的过程,在这个过程中,智能体可以周期性地做出决策,观察结果,然后自动调整其策略,以获得最优策略。但是,强化学习必须探索并获取整个系统相关的信息,这需要大量的时间才能收敛到最佳策略,这使得强化学习一般局限于能进行完全观测的低维状态空间的领域,而并不适用于大规模的网络结构。考虑到物联网系统的运行环境复杂多变,而且人工提取环境的所有有用特征是比较困难的,本实施例将使用一种新的突破性技术——深度强化学习(deepreinforcementlearning,drl)来求解mdp模型。

深度强化学习相关的算法大体分为三类:value-based方法、policy-based方法以及结合两种策略的actor-critic方法。

value-based方法的典型代表是深度q网络(deepqnetwork,dqn),其使用神经网络对q值进行估算:

q(s,a;θ)≈qπ*(s,a)(17)

其中,θ表示神经网络参数。神经网络通过优化该参数去更好地拟合qπ*(s,a),如果拟合后的误差很小,则可以得到最优策略:

value-based方法面临的最大挑战是如何处理具有连续动作空间的问题,解决方法通常是对动作进行量化。然而,动作离散化的精细程度也会对结果产生影响。

policy-based方法可以有效地处理连续动作空间的问题。该方法的核心思想是通过估算值函数的梯度值,然后在梯度方向上更新策略参数以最大化值函数,从而对该策略进行优化。令要想使得j(θ)值最大,则需要对j(θ)关于θ求偏导得并使用该策略梯度不断地对θ进行更新,最终使得收益的期望值最终收敛到最大。可以表示为:

然而,当该方法获取不到准确的策略梯度信息时,算法的收敛速度较慢。

actor-critic方法结合了policy-based方法和value-based方法的核心思想,使用actor网络和critic网络两个神经网络,对所选择的策略进行优化。actor-critic方法的基本思想如下:actor网络使用神经网络获取最优策略,并根据最优策略选择动作,而critic网络使用神经网络学习环境并拟合q值,然后使用自己的“标准”来评判actor网络所选择的动作得分,最后actor网络根据评分对自己的网络参数进行更新,从而达到改善策略的目的。另外,经验回放存储器通过存储历史经验来建立数据集,然后随机抽取一批数据来训练网络,以降低不同训练阶段的时间相关性。

在本实施例的物联网场景中,由于缓存替换问题的动作空间是离散的,而且与actor-critic方法相关的a3c方法十分契合基于离散动作空间的优化问题,因此使用a3c方法来设计缓存替换策略。a3c算法的全称是asynchronousadvantageactor-critic,它是一种基于actor-critic方法的异步多核执行过程。在a3c系统中,为了有效训练全局网络中的actor网络和critic网络,该系统将它复制为多个副线程(智能体),这些结构相同的智能体会在并行环境上更新全局网络中的参数。也就是说,每一个智能体由一对actor网络和critic网络组成,它们异步执行且独立地对环境进行探索并获取策略,而全局网络使用这些智能体的平均梯度来更新自已的神经网络参数,从而降低样本间的相关性,加快收敛速度,这样就形成了一种高效率的强化学习方式。

a3c相较于传统的actor-critic方法,最大的不同就是使用优势函数替代了q值来计算策略梯度,该函数的定义如下:

a(s,a)=q(s,a)-v(s)(20);

此时策略梯度可以表示为:

由定义可知,优势函数使用状态-动作值函数减去同状态下的状态值函数,表示在当前状态s下采取行动a能带来多大增益。相较于q值而言,优势函数能降低因状态基准值的变化而引起的方差,从而加快算法的收敛速度。当a(s,a)<0时,说明函数在朝着梯度正方向移动,即执行动作a获得的奖励比执行所有动作的平均奖励要好;当a(s,a)>0时,说明函数在朝着梯度负方向移动,即执行动作a后效果更差。

另外,在a3c算法中,通常使用差分时间误差(timedifferenceerror,tderror)作为该优势函数的无偏估计,即优势函数表示如下:

最终,参照图1,基于上述优化问题的发明方法流程如下所示:

b1、定义移动用户集合{u}={1,...,u,...,u},文件集合{f}={1,...,f,...,f},用户的总数为u,文件的总数为f;全局网络中actor网络和critic网络的参数分别为θ0每个智能体的actor网络和critic网络的参数分别为θm最大步数为tmax;文件缓存集合为w,初始化为φ;

b2、初始化网络参数的梯度更新量:同时用全局共享参数初始化每个线程的网络参数:

b3、令tstart=t,并获取当前系统状态空间st={c(t),l(t),b(t)},其中,st由网络状态、数据请求状态以及网络上下文信息组成,c(t)表示t时刻的网络状态,l(t)表示t时刻的数据请求状态,b(t)表示网络上下文信息,:

其中,c(t)={pb,u(t),gb,u(t)}

网络状态c(t)包含用户u接入基站信道后的无线发射功率pb,u(t)以及无线信道增益gb,u(t);

数据请求状态l(t)中的表示在t时刻收到第n个用户请求时基站获得的请求文件集合,n∈{1,2,...,n};

网络上下文信息b(t)包含t时刻文件f的生命周期和文件年龄f∈{1,2,...,f};

b4、每个智能体将st输入到actor网络和critic网络中;

b5、actor网络输出此时的策略πθ(at,st),该策略是执行不同动作的概率分布向量,πθ(at,st)表示执行动作a的概率;

b6、按照策略πθ(at,st)选取一个动作at(选取概率最大的动作),计算即时奖励r(st,at)=-cu,f(t),并转移到的下一个状态st+1;

r(st,at)=-cu,f(t)

cu,f(t)表示t时刻用户u获取文件f的总成本函数,而总成本函数由时延成本和新鲜度损失成本构成:

cu,f(t)=α·σu,f(t)+(1-α)·lu,f(t)

其中,σf(t)表示用户u在t时刻获取文件f的传输时延,lf(t)表示t时刻用户u获取文件f的新鲜度损失成本,α∈[0,1]为衡量时延成本重要性的相对权重系数;

b7、令t=t+1,若st是终止状态或者t-tstart=tmax,则执行步骤b8;否则执行步骤b4:

b8、用critic网络计算状态空间为st时的状态值函数定义如下:

rt表示截止t时刻的累积奖励:

其中,γ∈[0,1]为折扣因子,用来决定累积奖励rt更看重眼前的回报还是未来时刻的累积回报;

b9、计算t时刻的目标值函数v:

b10、fori=(t-1):tstartdo

b101、计算各个时刻的优势函数:

b102、计算梯度更新dθ0

b103、计算梯度更新

b11、每个智能体异步的更新全局共享参数θ0

θ0=θ0+λdθ0

b12、如果没有达到终止条件,转至b2执行。

综上所述,本实施例针对物联网的边缘缓存场景,引入了物联网的数据新鲜度。首先,该方法定义了获取物联网数据时的时延成本以及新鲜度损失成本,并基于权衡传输时延以及数据新鲜度的方法定义了效用函数,同时以最小化用户的总效用为目标建立了优化问题。接着,将缓存替换问题建模为mdp问题,然后采用a3c方法来对缓存替换方法进行优化,以实现传输时延和新鲜度之间的均衡,并获得更多的缓存命中。

附图3、附图4以及附图5对本实施例的缓存替换方法的性能进行分析,并与最近最少使用(lru)方法以及最不经常使用(lfu)方法进行比较。如附图3所示,本实施例的缓存替换方法的缓存命中率随用户请求速率的增加而增加,且远远优于传统的lru和lfu方法;附图4表示本实施例的缓存替换方法的平均新鲜度损失随着成本权重系数α的增加而增加,而平均时延逐渐减小;附图5表示本实施例的缓存替换方法的缓存命中率随文件总数的增加而减小,且远远优于传统的lru和lfu方法。

实施例二:

基于实施例一所述的基于深度强化学习的基站缓存替换方法,本实施例提供一种基于深度强化学习的缓存替换系统,包括处理器和存储设备,所述存储设备中存储有多条指令,用于所述处理器加载并执行实施例一所述方法的步骤。

实施例三:

基于实施例一所述的基于深度强化学习的基站缓存替换方法,本实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行实施例一所述的方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1