1.一种基于多用户深度强化学习的异构蜂窝网络流量卸载方法,其特征在于,所述方法包括如下步骤:
步骤1,针对下行链路异构蜂窝网络流量卸载优化问题,在考虑到优化问题的非凸性和组合特性的前提下,建立异构蜂窝网络系统模型;
步骤2,在此基础上,结合宏蜂窝满意度和运营商追求利益的条件,建立基于多智能体深度强化学习的网络流量卸载模型;
步骤3,在步骤2的基础上,建立分布执行与集中训练相结合的深度强化学习框架,以获得小型基站最优的服务热点区域和部署位置。
2.根据权利要求1所述的基于多用户深度强化学习的异构蜂窝网络流量卸载方法,其特征在于:步骤1中,建立异构蜂窝网络系统模型的实现过程包括:考虑由宏基站MBSs、小型基站SBSs和若干个随机分布的移动用户组成的两层异构蜂窝网络,假设某一个MBS信号覆盖范围内存在N个SBSs,即SBS1,...,SBSN,其中有N1个地面小基站和N2个无人机小基站组成,N1+N2=N。
3.根据权利要求2所述的基于多用户深度强化学习的异构蜂窝网络流量卸载方法,其特征在于:步骤2中,建立基于多智能体深度强化学习的网络流量卸载模型的过程包括:由于SBSs的自私性,每个SBS选择各自的流量卸载策略以获得长期奖励的最大化,考虑到每个SBS在每期仅服务一个热点区域,SBS的流量卸载策略不可避免会受到其他SBSs流量卸载策略的影响,SBS的奖励依赖于网络环境的当前状态和其他SBSs的动作,因此,将多SBSs联合流量卸载优化问题建模为随机博弈(N,S,Ai,Ri,Pss′),其中,N为SBS的数量,S为状态空间,Ai为动作空间,Ri为奖励函数,Pss′为状态转移概率;
在本方法中,每个SBS作为参与者,也就是一个智体;
状态空间:状态空间S由N个SBSs的流量卸载服务质量综合确定s(t)={s1(t),s2(t),...,sN(t)},当SBSi满足MBS提出的流量卸载需求时,si(t)=1,否则si(t)=0;
动作空间:不同类型的SBSs,其动作空间Ai存在差异,地面小基站选择服务的热点区域,其动作空间为{hotReg1,hotReg2,...,hotRegK},无人机小基站选择服务的热点区域以及部署的位置,其动作空间为{hotReg1,...,hotRegK}*{pos};
奖励函数:SBSi的奖励函数Ri为SBSs选择流量卸载策略时获得的奖励,即当SBSi满足MBS提出的流量卸载需求时,则SBSi的奖励就是其效用wi(t),否则,SBSi的奖励就是其动作的选择成本ψi;
考虑到网络信息不完全因素,提出分布式多智能体深度强化学习方法,SBSs通过消息传递告知其他SBSs其当前状态,来获得全局状态空间,并基于全局状态空间以获得满足累计奖励最大化的流量卸载策略;
第i个SBS的累计奖励定义为:
其中,E表示学习期望,它与时间t无关;γ是折扣因子,且γ∈[0,1),表示更重视长期收益;
由于马尔可夫性质,随后的状态只由当前状态决定,与之前的状态无关,于是,值函数简化为:
其中,ui(s,ai)是Ri(s,ai)的数学期望,Pss'(ai)表示在状态s采取动作ai到状态s'的转移概率;
于是,基于贝尔曼准则,最优策略 为:
于是,得到最优Q值函数
基于上述最优Q值函数 最优策略 可得:
一般来说,很难获得准确的转移概率Pss'(ai);然而,基于可用信息(s,ai,s',ui(s,πi(s))),利用多智能体深度强化学习,以递归方式获得最优策略;同时,在考虑到多个小基站联合流量卸载优化问题的非凸性和组合特性的前提下,将深度神经网络引入到多智能体深度强化学习的框架中;在这里,提出MADDPG算法,MADDPG是建立在强化学习中Actor-Critic算法之上的一种算法模型,其中,Actor部分由N个采用Policy Gradient算法的两结构相同的神经网络组成,Critic由1个采用DQN算法的两结构相同的神经网络构成,通过Q值函数和策略梯度不断更新Actor网络及Critic网络,该算法能够学习到每个智体应采取的最优策略,在每次更新网络参数时,通过Adam算法使损失函数以最快的速度收敛到最小。
4.根据权利要求3所述的基于多用户深度强化学习的异构蜂窝网络流量卸载方法,其特征在于:步骤3中,建立分布执行与集中训练相结合的深度强化学习框架的方法包括:搭建一个具有2个相同神经网络结构的宏基站作为Critic,其网络结构分别命名为OnlineNet及TargetNet;搭建若干具有2个相同神经网络结构的小型基站作为Actor,其网络结构分别命名为OnlineNet及TargetNet,其中,Actor网络中的OnlineNet的输入为实时状态,输出为供Actor执行的实时动作;Critic网络中的OnlineNet将Actor-OnlineNet输出的动作作为输入,通过输出的策略梯度调整Actor的动作;此外,在集中式训练和分布式执行策略下,在训练Critic网络的OnlineNet时,附上额外的信息,包括其他智体的状态、动作及位置,以使得每个智体在决策时不仅仅依据自己所处的情况,也将其他智体的情况考虑进来,进一步地,在经过足够地训练后,每个Actor就能够在不需要知道其他智体的情况下根据自己的状态做出合适的动作;Critic和Actor网络的TargetNet主要用于产生训练数据,Critic网络的OnlineNet及TargetNet输出的Q值将作为损失函数的输入以更新OnlineNet的参数;特别地,每隔一段时间,Critic及Actor的OnlineNet都会将自身的参数赋值给其对应的TargetNet,以更新其参数。