1.一种基于动态请求D2D网络中的协作编码缓存方法,其特征在于,包括以下步骤:步骤1、搭建网络架构;基于动态请求D2D网络包括两层网络,由基站构成的蜂窝网络与用户设备组成的D2D网络,其中用户对内容的请求具有动态变化的特征,基站可满足用户对内容的需求;
步骤2、建立D2D网络中的用户内容分享模型;
步骤3、将网络中的内容通过最大可分码MDS处理,得到多个内容包,MDS编码将内容fk先分成Lfk个相等内容片段再编为Gfk个互相独立、无重复的内容包;
步骤4、用户获得内容包;
步骤5、计算在D2D传输过程中、基站向用户传输过程的内容传输延时;
步骤6、分析用户的动态请求,用户请求将受内容流行度会影响有多个请求状态,该现象遵循有限状态的马尔可夫过程,为了获得用户变化的请求状态,通过观察实时内容请求来判断每个内容的受欢迎程度;
步骤7、将D2D网络中的编码缓存问题建立为马尔科夫决策过程MDP,MDP问题定义为一个元组 是网络中所有用户可能状态的集合, 是所有用户的可行缓存行为的行为集合, 代表奖励函数;
步骤8、计算缓存奖励的平均值;
步骤9、以最大化总时间缓存奖励的平均值为优化目标,建立优化问题;
步骤10、为寻找最优缓存策略,同时为应对网络中的大量用户和内容,提出基于Q‑learning的协作编码缓存算法进行求解。
2.根据权利要求1所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤2、建立D2D网络中的用户内容分享模型,具体如下:步骤2‑1、判断网络中的用户能否建立D2D通信,判断过程如下:||li‑lj||<Rd (1)其中,i表示用户ui,j表示用户uj,li表示用户ui的物理位置,lj表示用户uj的物理位置,Rd是D2D通信的最大距离;
步骤2‑2、为每个用户寻找可建立D2D通信的潜在用户集合,表示为如下:N(i)={i|i∈U,||li‑lj||<Rd} (2),其中,U表示所有用户的集合。
3.根据权利要求1所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤4、用户获得内容包过程如下:步骤4‑1、当用户ui对内容fk发出请求时,用户ui首先查看本地缓存中是否缓存了fk的内容包;
步骤4‑2、然后通过D2D网络从其他用户处获取内容包;
步骤4‑3、如果用户ui收集的内容包总数大于Lfk,则用户ui将能够恢复出完整的内容fk,否则,用户ui将从基站获取其他内容包以到达到Lfk来恢复内容。
4.根据权利要求1所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤5、计算在D2D传输过程中、基站向用户传输过程的内容传输延时,具体如下:步骤5‑1、利用信噪比来估算内容传输的传输速率,则D2D链路以及基站的信噪比分别表示为:
其中,PD2D、PBS分别是用户和基站内容传输的传输功率, 是高斯白噪声的均方差,GD2D、GBS则代表是D2D和基站的信道增益;
步骤5‑2、计算D2D和基站的信道增益,表示如下:‑ε
GD2D=κ·dD2D (5)‑ε
GBS=κ·dBS (6)其中,κ表示路径损耗常数,ε表示路径损耗指数,d表示路径距离;
步骤5‑3、计算用户通过D2D或者基站获得内容的下载速率,表示如下:RD2D=WD2Dlog2(1+SNRD2D) (7)RBS=WBSlog2(1+SNRBS) (8)其中,WD2D,WBS表示D2D链路和基站与用户间链路的分配带宽;
步骤5‑4、得到用户ui通过D2D链路或者基站获得内容包的传输延时,表示如下:其中,Sfk,g为内容fk的第g个内容包的尺寸大小;
步骤5‑5、以用户从基站获取内容的下载速率为标准,排除下载速率低于用户从基站获取内容的下载速率,筛选传输内容的用户,基于用户ui的潜在用户集合,得到用户ui的邻近用户集合N′(i),表示如下:
5.根据权利要求4所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤6为了获得用户变化的请求状态,可以通过观察实时内容请求来判断每个内容的受欢迎程度;,表示如下:
6.根据权利要求5所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤8、计算缓存奖励的平均值,过程如下:步骤8‑1、每次缓存行为带来的网络中可减少的平均传输延时作为缓存奖励,在时间周期t内用户ui请求内容fk的第g个内容包可减少的内容传输延时,表示如下:其中, 表示用户ui向基站请求内容fk的第g个内容包的传输延时, 则表示用户ui获得该内容包的实际内容传输延时;
步骤8‑2、计算用户ui恢复内容fk的可减少的内容传输延时,表示如下:表示恢复内容fk所需要内容包的最小数量;
步骤8‑3、计算用户ui多次恢复请求的内容可减少的内容传输延时,表示如下:F表示网络中所有内容的集合;
步骤8‑4、计算总时间缓存奖励,表示如下:其中,α为折扣系数;T表示总的时间周期数; 表示用户ui在时间周期t时的请求状态;
步骤8‑4、计算总时间缓存奖励的平均值,表示如下:
7.根据权利要求6所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤9、以最大化总时间缓存奖励的平均值为优化目标,建立优化问题,表示如下:其中,Gfk表示内容fk的内容包集合;Sfk,g表示内容fk的第g个内容包的大小; 表示用户ui是否缓存了内容fk的第g个内容包;π表示缓存策略;Π表示所有缓存策略的集合;
其中限制条件C1为缓存容量的限制,限制条件C2为二元缓存变量。
8.根据权利要求7所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤10、为寻找最优缓存策略,同时为应对网络中的大量用户和内容,提出基于Q‑learning的协作编码缓存算法进行求解,具体包括:步骤10‑1、设定初始参数;
设定初始时间周期,设定用户的请求初始状态、折扣参数和学习速率,设定网络内用户数量及内容数量,设定初始Q值;
步骤10‑2、通过∈‑greedy算法来选择用户的缓存行为;
步骤10‑3、缓存内容包决策;
基于用户的缓存行为,在满足用户缓存空间的限制下,寻找使优化目标可减少的延时边际值最大的和内容包,具体如下:步骤10‑4、评估每一次缓存行为获得的缓存奖励;
步骤10‑5、更新Q表以及策略;
步骤10‑6、判断迭代次数是否达到最大时间周期数,若是执行步骤10‑7,否则,返回步骤10‑2;
步骤10‑7、得到最优的缓存策略。
9.根据权利要求8所述的基于动态请求D2D网络中的协作编码缓存方法,其特征在于,所述步骤10‑2、通过∈‑greedy算法来选择用户的缓存行为;
首先选择一个随机的概率θ,将θ与网络中设定的探索概率进行比较,如果θ<ε那么系统会选择用户已有的缓存行为再次学习,反之,当(1‑θ)<ε时,系统会选择用户的一个新缓存行为进行学习。