利索能及
我要发布
收藏
专利号: 2023113606184
申请人: 山东科技大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-10-27
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种车联网中基于先验知识驱动的主动缓存决策方法,其特征在于,包括如下步骤:步骤1、构建由车辆、用户和边缘节点组成的车联网中联合边缘缓存架构模型;

步骤2、利用基于节点聚类和语义虚拟边的动态时间图网络预测流行度和特征;

步骤3、基于请求语义信息构建缓存利益最大化的请求缓存放置策略;

所述车联网中联合边缘缓存架构模型,有L个边缘节点B皆在云服务器的覆盖范围内,每一个边缘节点内部均包含一个以内容为中心的框架和一个边缘移动计算服务器;每一个边缘节点的覆盖范围内包含多辆行驶的车辆v和多个用户u,车辆和用户合称为终端用户;

设终端用户一共产生G个请求内容g,G个请求内容g组成的总请求内容集为G={g1,g2,…,gG},G个请求内容中包含W个内容下载请求f和J个任务计算请求k;W个内容下载请求f组成的内容下载请求集为F={f1,f2,…,fW};J个任务计算请求k组成的任务计算请求集为K={k1,k2,…kJ};

内容下载请求 其中If是内容下载请求f的名字, 是内容下载请求f的容忍时延,Sf是内容下载请求f的数据大小, 是内容下载请求f需要的缓存时延;任务计算请求 其中Ik是任务计算请求k的名字,是任务计算请求k的容忍时延,Sk是任务计算请求k的数据大小,ψk是任务计算请求k需要的计算资源, 是任务计算请求k需要的缓存时延;

所述步骤2的具体过程为:

步骤2.1、设在当前时隙,第i个边缘节点Bi处的用户集为i∈[1,L], 为第i个边缘节点Bi处的第M个用户;利用相似性概念权衡两个不同的用户之间关于多个特征的相似性程度,找出D个相似程度最小的用户,将D个相似程度最小的用户作为簇的中心,然后利用K‑means算法根据每个用户的特征对 进行聚类,聚类之后的用户组为 D≤M,为第D个用户组节点;第i个边缘节点Bi提前从第j个边缘节点Bj处获取下一个时隙到达Bi的新用户集 i≠j, 为第j个边缘节点Bj处的第M个group

用户,然后根据用户特征将 聚类分组到U ;如果 里有新用户un且un的特征不符合groupU 的分组特征,则根据新用户un的特征将un聚类为新用户组 r表示新用户组的数量,r≤M;

步骤2.2、将聚类之后的用户组作为用户组节点U,将请求内容g直接作为请求节点g;用户组请求内容时,U和g之间建立一个请求边egU;计算第 个请求节点 和第 个请求节点之间的语义相似度,并预先设置语义相似度阈值,当语义相似度大于阈值时,搭建请求节点之间的语义虚拟边 最终基于用户组节点U、请求节点g、请求边egU和语义虚拟边完成请求图的构建;

步骤2.3、将请求图输入到时间图网络预测流行度,时间图网络根据语义虚拟边预测请求节点gSemantic和非邻居用户组节点UNon‑neighbours之间产生新边的流行度为p((gSemantic,UNon‑neighbours)|t),根据节点内存预测请求节点gNode和邻居用户组节点UNeighbours之间产生旧边的流行度为p((gNode,UNeighbours)|t),根据信息的新鲜度更新节点内存,新鲜度的计算公式为 t是当前时刻,是节点 最后一次被请求的时间,将新鲜度大于新鲜度阈值的节点被选中更新节点内存;对被选中的节点信息进行加权,新鲜度越大,权值越重;

同时利用时间图网络预测请求节点的特征,包括预测使用时间 预测使用次数 和预测请求次数 设请求节点内存为 其中 是请求节点g的名字,Tg是请求节点g的历史使用时间集,Ng是请求节点g的历史请求次数集,Ug是请求节点g的历史使用次数集,然后将sg输入到解码器得到请求节点的特征zg(t);

时间图网络同时输出预测流行度和预测节点特征之后,与真实值进行对比,利用损失函数进行反向传播,更新时间图网络中的参数;

所述步骤3的具体过程为:

步骤3.1、基于请求语义信息构建缓存利益函数;

步骤3.2、构建内容下载请求过程模型;

步骤3.3、构建任务计算请求过程模型;

步骤3.4、删除历史缓存的请求内容,根据真实的环境信息重新缓存;

步骤3.5、确定目标优化问题,并进行求解;

步骤3.6、利用基于DDPG的主动缓存方法为预测请求内容选择最恰当的缓存放置位置;

所述步骤3.1中,缓存利益函数具体分为以下四种情况:情况1:内容下载请求f与预测请求次数有关的内容下载请求缓存利益函数为其中,ωp是预测流行度的加权因子;pf为内容下载请求f在下一时隙的预测流行度;Tf是下载内容请求f的最小延迟;Ef是下载内容请求f的最小能耗; 是内容下载请求f的预测请求次数;ωT和ωE分别表示流量负载和延迟成本的加权因子;

情况2:内容下载请求f与预测使用时间有关的内容下载请求缓存利益函数为其中, 是内容下载请求f的预测使用时长;

情况3:任务计算请求k与预测请求次数有关的任务计算请求缓存利益函数为其中,pk为任务计算请求k在下一时隙的预测流行度; 是任务计算请求k的预测请求次数;Tk是计算任务的最小延迟;Ek是计算任务的最小能耗;

情况4:任务计算请求k与预测使用次数有关的任务计算请求缓存利益函数为其中, 是任务计算请求k的预测使用次数;

所述步骤3.2中,内容下载请求过程模型的计算过程为:步骤3.2.1、终端用户发送内容下载请求f时,先判断是否能在车辆v找到内容,若是,则车辆缓存命中决策 为1,车辆直接输出f;若否,进入步骤3.2.2进行判断;

步骤3.2.2、判断是否能在边缘节点B找到内容,若是,则边缘节点缓存命中决策 为

1,车辆v直接从边缘节点B下载f,此时边缘节点缓存命中的请求延迟为 边缘节点缓存命中的传播负载为 VBv为车辆v和边缘节点B之间的通信速率,pBv是车辆v和边缘节点B之间的传输功率,β是能耗单价;若否,进入步骤3.2.3进行判断;

步骤3.2.3、判断是否发生请求聚合,若是,则先判断是否发生车辆聚合,若发生车辆聚合,则车辆聚合决策 为1,此时车辆聚合的请求延迟为 车辆聚合的传播负载为 Vv为车辆和车辆之间的通信速率,pv是车辆v和车辆v之间的传输功率;若不发生车辆聚合,则判断是否发生边缘节点聚合,若发生边缘节点聚合,则边缘节点聚合决策 为1,此时边缘节点聚合的请求延迟为 边缘节点聚合的传播负载为 是车辆v和相邻边缘节点Bneighbour之间的通信速率; 是车辆v和Bneighbour之间的传输功率;若不发生边缘节点聚合,则转发信息for库将f转发给云服务器,转发决策h 为1,此时转发的下载延迟为TC=Sf/VC,转发的传播负载为EC=βpCTC,VC为车辆和云服务器之间的通信速率,pC为车辆v和云服务器之间的传输功率;

所述步骤3.3中,任务计算请求过程模型的计算过程为:步骤3.3.1、终端用户发送任务计算请求k,先判断是否能在车辆v中找到内容,若是,则车辆缓存命中决策 为1,车辆直接输出k;若否,进入步骤3.3.2的判断;

步骤3.3.2、判断是否能在边缘节点B找到内容,若是,则边缘节点缓存命中决策 为

1,边缘节点将结果传输给车辆;若否,该任务的大小、容忍时延等特征会被输入到DDPG,输出有关k的计算决策 和缓存决策 然后进入步骤3.3.3的判断;DDPG为深度确定性策略梯度算法;

步骤3.3.2、判断 的取值,若 k进行本地计算,本地延迟为本地能耗为 ψk为分配的计算资源,ψv是车辆v分配的计算资源;若 k被卸载到边缘节点计算,k的卸载延迟为 k的卸载能耗为Sk为任务计算请求k的数据大小,ψB是边缘节点B分配的计算资源;

所述步骤3.4的具体过程为:首先计算当前时隙请求内容g的真实流行度Ng是请求内容g被用户请求的次数,G是请求内容总数量;然后将缓存空间中的缓存内容按照流行度降序排列,从最小值开始删除缓存内容,直到缓存内容的流行度true与请求内容的流行度相同为止;最后根据请求内容的真实使用时间T 、真实使用次数true trueU 、真实请求次数N 和真实流行度 基于公式(1)、公式(2)、公式(3)和公式(4)计算请求缓存利益,通过最大化请求缓存利益函数找到最佳缓存位置;缓存请求内容g产生的流量负载为 Sg是请求内容g的数据大小, 是缓存g需要的缓存延迟;

所述步骤3.5中,确定的目标优化问题为最大化效用函数P2:其中,T为回合集;T为一个回合; 为Uf或Uk择其一,当g=f时,为内容下载请求的效用函数Uf,当g=k时,为任务计算请求的效用函数Uk;

将P2分为两部分进行求解,第一部分是最大化内容下载请求的效用函数P3,第二部分是最大化任务计算请求的效用函数P6;

P3的公式如下:

将P3最终转化为等效的混合整数非线性规划优化问题P5:f

其中, 表示两种决策变量的集合;h 表示内容下载请求f的缓存命中决f

策; 表示内容下载请求f被缓存到位置m;R 为内容下载请求f被缓存命中的缓存利益值;

f

设中间变量X=ωppf;Um表示位置m的缓存效益;y为位置决策变量集合;z为内容下载请求f的解的向量集合;UIL(h)为内部函数;

f

求P5最优解的过程为:利用分支定界算法首先在根问题处将P5的所有二元变量h、 和松弛为连续变量,然后利用内点法解决分支问题的非线性连续松弛,从分支问题导出一个内点子问题,作为具有附加对数障碍函数和非负松弛变量的近似问题;然后计算内点子问题的拉格朗日表达式,利用梯度下降法得到拉格朗日乘数;最后采用共轭梯度技术最大化每个步骤中近似问题的二次逼近得到最优解; 为位置m处的内容下载请求f的决策变量;

P6的公式如下:

采用与求解P3相同的转化和求解方式获得P6的最优解;

所述步骤3.6中,基于DDPG算法进行迭代训练,每一次迭代都进行如下操作:将时间图网络的预测结果和不同位置的延迟和能耗作为状态st输入到DDPG中,生成策略μ,然后添加探索噪声选择动作at,根据at放置请求内容;执行at之后环境会返回一个奖励rt并且会得到下一时隙的新状态st+1;将st、at、rt、st+1输入DDPG进行训练;

DDPG算法网络参数的训练流程如下:首先,代理在与环境交互中得到st、at、rt、st+1,将其作为四元组存储到重放缓冲区,如果重放缓冲区已满就删除最旧的四元组经验样本;然后从重放缓冲区抽取大小为 的经验样本依次计算目标值,公式如下:μ' Q'

y=rt+γQ'(st+1,μ'(st+1|θ )|θ ) (37);

其中,y为经验样本的目标值;γ为折扣因子;Q'为目标评估神经网络;μ'为目标动作神Q′ μ′经网络;θ 为目标评估神经网络的权值;θ 为目标动作神经网络的权值;

Q

然后通过一步梯度下降更新评估网络Q(s,a|θ),公式如下:Q Q b

其中,θ为目标网络的权重;α表示评估网络的学习率; 为梯度下降;y表示从缓冲区抽取的第b个经验样本的目标值; 为从缓冲区抽取的第b个样本的评估网络;通过一步采样策略梯度上升更新动作网络,公式如下:μ μ

其中,θ为评估网络的权重,α 表示动作网络的学习率; 为从缓冲区抽取的第b个样本的状态;a为动作; 为从缓冲区抽取的第b个样本的动作;

最后,对目标网络进行更新的公式为:

Q Q Q Q Q μ μ μ μ μ

θ '→ξ θ+(1‑ξ)θ ',θ '→ξ θ+(1‑ξ)θ ' (40);

Q μ

其中,ξ 表示评估网络的更新率,ξ 表示动作网络的更新率;

经过预定次数的迭代,最终训练出了性能良好的值函数网络,从而得到最佳的缓存放置方案。