1.一种基于多智能体深度强化学习的车联网边缘缓存方法,其特征在于该方法包括如下步骤:
第1、系统模型与数学模型的构建:
第1.1、建立系统模型;
第1.2、建立内容缓存数学模型;
第1.3、建立内容获取数学模型;
第2、建立基于多智能体的执行者‑评价家结构的协同内容分发的边缘缓存策略:
第2.1、策略设计;
第2.2、训练分布式执行的多智能体执行者‑评价家框架;
第2.3、基于多智能体强化学习的协同内容分发的边缘缓存算法的描述,方法如下:
步骤1:初始化状态空间,每个智能体的目标策略网络,主价值网络和主策略网络的参数,智能体的个数,智能体的最大缓存容量,内容集合,采样批次大小;
步骤2:初始化一个随机过程以便进行探索,初始化接收的状态空间;
步骤3:按照Zipf分布获得内容的流行度并且按照流行度请求内容;
步骤4:每个智能体根据自己的策略网络以及过程中的噪声选择动作并执行,步骤5:执行动作后判断缓存的内容是否超出了缓存容量,若超出了,删除缓存区中流行度较低的内容,并获得环境奖励和新的观测空间,将每个智能体的当前状态、执行动作、奖励、下一状态存入到对应的经验回放池中;
步骤6:将新的环境观测空间赋值给原来的观测结果,从经验回放池P中随机选择p条数据,每个智能体根据公式更新策略网络的参数和价值网络的参数,并更新每个智能体的目标网络的参数。
2.如权利要求1所述的基于多智能体深度强化学习的车联网边缘缓存方法,其特征在于,步骤第1.1中建立的系统模型由1个宏基站(MBS)、多个路边单元(RSU)和多辆车辆组成;
车辆间可以相互通信也可以缓存部分内容,考虑在不同的RSU覆盖范围下的内容具有不同的流行度,因此需要考虑不同的RSU覆盖范围下的车辆,各个RSU覆盖范围内的车辆到相应的RSU的位置服从泊松分布,每个内容f都由3个特征来进行描述,其中sf表示内容f的大小,df表示内容f的最大容忍交付时延,ρf表示内容f的流行度;另外,为每个内容分配一个唯一的索引,并在车辆请求内容时将该索引用作内容ID;MBS中缓存了所有车辆请求的内容,并在MBS上部署一个中央控制器,充当所有边缘服务器的管理器,存储着交互和同步信息;RSU和车辆都具有边缘缓存能力,减少内容交付过程中的时延。
3.如权利要求2所述的基于多智能体深度强化学习的车联网边缘缓存方法,其特征在于,步骤第1.2中建立内容缓存数学模型的方法如下,所有内容的流行度遵循Zipf分布,内容用集合F={1,2,3,......,F}表示,所以车辆请求内容f的概率表示为:其中,ρf表示内容f的流行度,ε是控制内容相对流行的内容请求系数,该系数越大表示内容重复使用率越高;在该模型中MBS缓存了用户需要的所有内容,并且在MBS中部署有中央控制器,存储着其管理范围内的所有车辆和RSU的缓存内容,用矩阵表示为:其中,
j≠0的情况,j表示车辆的编号, 表示车辆的缓存情况:
j=0的情况,j为标签, 表示RSU的缓存情况:
当车辆发出内容请求时,如果本地没有缓存则车辆或者接受请求的RSU根据自身缓存的内容自主决策是缓存内容还是保持原状不变;其中RSU用集合R={r1,r2,r3,......,rI}表示,ri覆盖下的车辆用集合 表示,车辆 的缓存决策用cafi,j表示:另外,由于车辆和RSU具有有限的缓存容量,缓存的内容总量不能超过车辆和RSU的缓存能力, 表示车辆缓存容量, 表示RSU缓存容量,即满足下述约束条件:其中sf表示内容f的大小,当车辆或者RSU的缓存空间已满时,为了提高内容命中率并减少内容分发过程中的时延,采取的策略是删除已缓存的内容中流行度较低的内容,内容的流行度可以通过Zipf分布得到。
4.如权利要求1所述的基于多智能体深度强化学习的车联网边缘缓存方法,其特征在于,步骤第1.3中建立内容获取数学模型的方法如下:当车辆请求内容时,先检查自身是否缓存了所请求的内容,如果缓存了则直接从缓存中获得,否则车辆自主做出决策是通过V2V获得内容或通过V2R获得内容,V2V是指通过向周围车辆请求获得内容,V2R是指通过向其连接的RSU请求获得内容,车辆 的内容访问方式决策用wvi,j表示:车辆 的通信范围为TRi,j,可以通信的车辆用集合 表示;目标车
辆与内容请求车辆之间数据传输速率为:
其中, 表示车辆与车辆之间的带宽, 表示车辆 的发送功率, 是车辆与车辆之间的信道增益, 是目标车辆 与内容请求车辆 之间的距离,δ是损耗因子,高斯白噪声功率用符号N0表示,如果目标车辆缓存了内容 则请求车辆直接从目标车辆获得所请求的内容,其传输时延为:其中 表示请求内容 的大小, 目标车辆 的缓存内容变量,如果内容请求车辆的周围车辆都没有缓存请求的内容,则直接向MBS请求内容,其传输时延为:其中, 表示MBS与内容请求车辆 之间可达到的数据传输速率;将正交频分多址(OFDMA)用于MBS与车辆之间的无线传输,MBS的信道带宽为 可以分为W个正交子载波,与MBS连接的每个车辆被分配一个正交子载波,内容请求车辆 通过V2V方式获得内容f的时延表示为:当车辆 做出决策通过V2R的方式访问内容 时,车辆 向其连接的固定位置的RSU请求内容 如果RSU缓存了请求内容的副本,则直接将请求内容的副本发送给内容请求车辆如果没有相应内容,则向没有相应内容的RSU周围连接的RSU请求内容 如果周围连接的RSU缓存了该请求内容的副本,则将请求内容发送给请求内容的RSU,然后请求内容的RSU再将该请求内容发给内容请求车辆 如果周围的RSU都没有缓存请求的内容,则直接向MBS请求内容 其传输时延通过公式(12)计算;
RSU缓存了请求内容的情况,车辆在不同的位置到RSU的距离不同,车辆会受到不同的信道损伤,数据传输的速率也会不同;将车辆经过的区域划分为M个具有不同传输速率的区域,在区域m、m=1,...,M中,车辆 及其连接的RSU之间的数据传输速率 由车辆所在的区域确定,在RSU覆盖范围内的不同移动性区域,RSU到内容请求车辆的数据传输速率不同,RSU覆盖范围内的第m个区域中的内容由 表示;
内容请求车辆可以从RSU中获得内容f的所有字节数,那么需要满足:
在RSU覆盖范围内的第m+1个区域,车辆 从RSU获得内容的时延为:
则内容请求车辆从RSU获得内容f的总的时延为:
RSU没有缓存车辆请求的内容的情况,RSU向周围连接的RSU请求内容,则请求内容的RSU从拥有相应内容的RSU获得内容的时延为:其中,参数 表示从请求内容的RSU到拥有相应内容的RSU数据传输路径的平均带宽,参数 表示从RSU到RSU数据传输的最短路径长度亦即跳数;
RSU收到请求内容副本后,发送给内容请求车辆,则内容请求车辆获得请求内容的总的时延为:
则,内容请求车辆 通过V2R方式获得请求内容的时延表示为:
请求内容分发过程中,如果RSU缓存了请求内容则时延置为0,反之如果车辆缓存了请求内容且车辆通过V2V方式获取则时延使用公式(12)计算,如果车辆通过V2R方式获取则时延使用公式(18)计算;当选择时延最小的分发方式时要满足缓存内容总量不能超过车辆和RSU的缓存能力。
5.如权利要求1所述的基于多智能体深度强化学习的车联网边缘缓存方法,其特征在于,步骤第2.1中策略设计的方法如下:将多智能体强化学习的场景设置为车辆自身获取内容时间最短且不考虑其他车辆,在该系统中,每辆内容请求车辆所作出的内容访问和内容缓存的决策都是基于使自身获得内容的时延最小而做出的,而根据决策作出的动作会造成环境改变,从而会影响其他智能体获得内容的时延;强化学习将问题抽象成一个马尔科夫过程,此过程中最重要的三个元素为状态、动作和回报;动作就是每一个任务中智能体做出的选择,状态是做出选择的基础,回报则是评价这个选择好不好的基础;
提出的基于多智能体的执行者‑评价家结构的协同内容分发的边缘缓存策略是基于部分可观测的马尔可夫决策过程的;每个智能体只能观测到自身的请求内容和自身、周围车辆以及与自身连接的RSU的内容缓存情况;每个智能体根据自己的观测结果可以自主的选择是否缓存请求的内容以及获得请求内容的方式;请求内容的方式有两种,通过V2V或V2R的方式;每个智能体采取的动作都会对其他智能体的观测结果产生影响;本策略的目标是使请求的内容在交付过程中内容请求车辆获得内容的时延最小;在该策略中,智能体在时隙采取动作后会获得系统给与即时奖励;如果内容请求车辆不能在最大内容交付时延内获得请求的内容,系统会给与该智能体惩罚;智能体的回报是从某一时刻开始到计算回报时智能体获得的所有奖励的加权和,智能体的回报依赖于从这一时刻开始的所有的动作。
6.如权利要求2所述的基于多智能体深度强化学习的车联网边缘缓存方法,其特征在于,步骤第2.2中训练分布式执行的多智能体执行者‑评价家框架的方法如下:多智能体执行者‑评价家框架是基于部分可观测的马尔可夫决策过程的,每个智能体有自己的策略网络,中央控制器有G个价值网络,每个价值网络对应一个智能体,采用的学习算法结构是集中式训练‑分布式执行;
通过策略可以将智能体的观测结果映射到有效的动作空间;在每个时隙,智能体会根据自己的观测结果和策略选择合适的动作,价值网络是用来估计每个智能体的状态‑动作函数的,每一个智能体执行自己的策略网络选择的动作之后,都会把动作以及从环境的反馈、对当前环境的观测结果和获得的奖励发送给中央控制器,然后在中央控制器上训练价值网络的参数,价值网络的输出会发送给对应的智能体的策略网络,用来训练策略网络的参数;采用策略梯度算法来训练策略网络,采用TD算法训练价值网络,集中式的价值网络的参数更新方法借鉴了DQN中TD与目标网络思想,其他智能体的策略可以采用拟合逼近的方式得到,而不需要通信交互;由于智能体的个数为G个,所以每个智能体维护(G‑1)个策略逼近函数,其逼近代价为对数代价函数,并且加上策略的熵,只要最小化代价函数,就能得到其他智能体策略的逼近;在更新目标网络之前,利用经验回放池中一个批次的采样更新策略的函数逼近。